@import "https://www.heritage.org/electionscorecard/assets/css/heritage-fonts.css";
@import "https://www.heritage.org/electionscorecard/assets/css/heritage-icons.css";

@charset "UTF-8";

/* COLOR CODES */

/*
# White #fff, rgb(255,255,255)
# Black #111d22, rgb(17,29,34)
# XLight Gray #f3f5f8, rgb(243,245,248)
# Light Gray #c5d1d8, rgb(197,209,216)
# Dark Gray #464646, rgb(70,70,70)
# Red Web #da181a, rgb(218,24,26)
# Navy Blue Web #061d46, rgb(6,29,70)
# Bluemine Light Web #386274, rgb(56,98,116)
# Bluemine Dark Web #264a59, rgb(38,74,89)
# Glacier Blue Web #75a5c0, rgb(117,165,192)
# Sail Blue Web #bee7f9, rgb(190,231,249)
# Cyan Web #0093d0, rgb(0,147,208)
# Lime Web #c4d82d, rgb(196,216,45)
# Indicator #ee28c0, rgb(238,40,192)
*/

/* COMMON STYLES */

:root {
    --white: #fff;
    --black: #111d22;
    --xlightgray: #f3f5f8;
    --lightgray: #c5d1d8;
    --darkgray: #464646;
    --red-web: #da181a;
    --navyblue-web: #061d46;
    --bluemine-light-web: #386274;
    --bluemine-dark-web: #264a59;
    --glacierblue-web: #75a5c0;
    --sailblue-web: #bee7f9;
    --cyan-web: #0093d0;
    --lime-web: #c4d82d;
    --indicator: #ee28c0;
    --font-family-sans-serif: 'gotham a', 'gotham b', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    --font-family-sans-serif-alt: 'gotham narrow a', 'gotham narrow b', arial, sans-serif;
    --font-family-serif: 'chronicle display a', 'chronicle display b', 'TimesNewRoman', 'Times New Roman', 'Times', 'Baskerville', 'Georgia', serif;
    --font-family-heritage-icons: 'heritage-icons';
}

/* PAGE STYLES */

@media (prefers-reduced-motion: no-preference) {
    html {
        scroll-behavior: smooth;
    }
}

body {
    margin: 0;
    padding: 0;
    font-family: var(--font-family-sans-serif);
    font-size: 1rem;
    font-weight: 300;
    line-height: 1;
    color: var(--darkgray);
    text-align: left;
    background-color: var(--white);
}

a {
    -webkit-text-decoration-skip: objects;
    color: var(--cyan-web);
    text-decoration: none;
    transition: color .3s ease
}

a:focus,
a:active,
a:hover {
    color: var(--cyan-web);
    text-decoration: underline
}

ul,
li {
    list-style: none;
}

li {
    margin: 0;
    padding: 0;
}

strong, .bold {
    font-weight: 700;
}

textarea:focus,
select:focus,
input:focus,
button:focus {
    outline: none;
}

/* NORMALIZE BUTTONS */
/*
    1. Change the font styles in all browsers.
    2. Remove the margin and padding in Firefox and Safari.
    Show the overflow in IE.
    3. Show the overflow in Edge.
    Remove the inheritance of text transform in Edge, Firefox, and IE.
    4. Remove the inheritance of text transform in Firefox.
    5. Correct the inability to style clickable types in iOS and Safari.
*/

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */
    padding: 0;
    /* 2 */
}

button,
input {
    /* 3 */
    overflow: visible;
}

button,
select {
    /* 4 */
    text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
    /* 5 */
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

input[type="button"] {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

hr {
    width: 100%;
    border-top: .0625rem rgba(0, 0, 0, .2);
}

hr.solid {
    border-top-style: solid;
}

hr.dashed {
    border-top-style: dashed;
}

hr.dotted {
    border-top-style: dotted;
}

.hr_text_center {
    display: flex;
    align-items: center;
    width: 100%;
}

.hr_text_center::before, .hr_text_center::after {
    flex: 1;
    background: rgba(0, 0, 0, .2);
    content: "";
    height: 1px;
}

.hr_text_center span {
    padding: 0 .5rem;
}

.shadow_effect-1 {
    position: relative;
}

.shadow_effect-1::before,
.shadow_effect-1::after {
    z-index: -1;
    position: absolute;
    content: "";
    bottom: 15px;
    left: 10px;
    width: 50%;
    top: 80%;
    max-width: 300px;
    background: #aaa;
    box-shadow: 0 15px 10px #aaa;
    transform: rotate(-3deg);
}

.shadow_effect-1::after {
    transform: rotate(3deg);
    right: 10px;
    left: auto;
}

.shadow_effect-2::before {
    position: absolute;
    content: "";
    z-index: -1;
    bottom: 5px;
    left: 30px;
    right: 30px;
    top: 80%;
    background: #aaa;
    box-shadow: 0 0 25px 17px #aaa;
    border-radius: 100px/10px;
}

.shadow_effect-3 {
    position: relative;
}

.shadow_effect-3::before {
    z-index: -1;
    position: absolute;
    content: "";
    bottom: 15px;
    left: 10px;
    width: 50%;
    top: 80%;
    max-width: 300px;
    background: #aaa;
    box-shadow: 0 15px 10px #aaa;
    transform: rotate(-3deg);
}

.shadow_effect-4 {
    position: relative;
}

.shadow_effect-4::before {
    z-index: -1;
    position: absolute;
    content: "";
    bottom: 15px;
    right: 10px;
    left: auto;
    width: 50%;
    top: 80%;
    max-width: 300px;
    background: #aaa;
    box-shadow: 0 15px 10px #aaa;
    transform: rotate(3deg);
}

.shadow_effect-5::before {
    position: absolute;
    content: "";
    z-index: -1;
    bottom: 20px;
    left: 8px;
    right: 8px;
    top: 20px;
    background: #aaa;
    box-shadow: 0 0 25px 10px #aaa;
    border-radius: 10px/40px;
}

.shadow_effect-5::after {
    position: absolute;
    content: "";
    z-index: -1;
    bottom: 14px;
    left: 30px;
    right: 30px;
    top: 14px;
    background: #aaa;
    box-shadow: 0 0 25px 17px #aaa;
    border-radius: 100px/10px;
}

.shadow_effect-6 {
    position: relative;
}

.shadow_effect-6::before {
    position: absolute;
    content: "";
    z-index: -1;
    top: 26px;
    left: 12px;
    bottom: 50px;
    width: 20%;
    transform: rotate(-10deg);
    box-shadow: 0 10px 25px 10px #aaa;
}

.shadow_effect-6::after {
    position: absolute;
    content: "";
    z-index: -1;
    top: 26px;
    right: 10px;
    bottom: 50px;
    width: 20%;
    transform: rotate(8deg);
    box-shadow: 0 10px 25px 10px #aaa;
}

/* SCROLLTOP */

.scrollTop {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    z-index: 90;
    background-color: rgba(243, 245, 248, .5);
    border: 0.09375rem solid rgba(6, 29, 70, .4);
    border-radius: .125rem;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.scrollTop::before {
    content: "\e901";
    font-family: var(--font-family-heritage-icons);
    font-weight: 500;
    font-size: .75rem;
    color: var(--navyblue-web);
    display: inline-block;
    -webkit-transform: rotate(270deg);
    -moz-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    transform: rotate(270deg);
}

/* .scrollTop:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: 1;
    right: -.2rem;
    bottom: -.2rem;
    border: 1px solid var(--navyblue-web);
    border-radius: .375rem;
} */

.scrollTop:hover, 
.scrollTop:active {
    background-color: var(--xlightgray);
    border: 0.09375rem solid var(--navyblue-web);
}

.scrollTop:focus {
    color: var(--navyblue-web);
    background-color: var(--white);
    text-decoration: none;
    -webkit-box-shadow: 0px 0px 3px 1px rgb(0 147 208 / 70%);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    box-shadow: 0px 0px 3px 1px rgb(0 147 208 / 70%);
    outline: none;
}

/* MAIN NAV */

.main-nav {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    font-family: var(--font-family-sans-serif);
    font-weight: 500;
    font-size: 1rem;
    color: var(--white);
    background-color: rgba(0, 0, 0, .8);
    height: 4.375rem;
}

.logo-cell {
    background-color: rgba(0, 0, 0, .5);
}

.logo-cell:focus,
.logo-cell:hover {
    color: var(--lime-web);
    text-decoration: none;
    transition: color .3s ease;
}

.heritage-brand {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    font-size: 1.3125rem;
    line-height: 1rem;
    height: auto;
    background-color: transparent;
}

.heritage-brand span {
    font-size: 1rem;
    margin-left: 1rem;
}

.page-title {
    background-color: transparent;
}

.page-title a {
    color: var(--white);
    text-decoration: none;
}

.page-title a:hover {
    border-bottom: 2px solid var(--lime-web);
    transition: color .3s ease;
}

.trigger-drawer {
    background-color: var(--bluemine-light-web);
    border: none !important;
    border-radius: 0 !important;
    transition: background .3s ease;
}

.trigger-drawer:hover {
    background-color: var(--bluemine-dark-web);
}

.heritage-hamburger-menu {
    background-color: transparent;
    font-size: 1.25rem;
}

.page-content {
    font-family: var(--font-family-sans-serif);
    font-size: 1.4375rem;
    color: var(--black);
}

/* NAV SIDEBAR */

#sidebar {
    font-family: var(--font-family-sans-serif);
    font-weight: 500;
    color: var(--white);
    position: fixed;
    width: 20.9375rem;
    right: -20.9375rem;
    height: 100vh;
    z-index: 9999;
    padding: 1.25rem 3.125rem 3.4375rem 1.25rem;
    background: #252a2f;
    transition: all 0.3s;
    overflow-y: scroll;
}

#sidebar.active {
    right: 0;
    -moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
}

#dismiss {
    color: var(--lime-web);
    font-size: 1.5rem;
    text-align: right;
    margin-bottom: 1.75rem;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

#dismiss:hover {
    color: var(--white);
}

#sidebar .components {
    border-bottom: 2px solid rgba(97, 100, 105, .3);
    margin-bottom: 1.25rem;
    padding-bottom: .3125rem;
}

#sidebar .sidebar-header {
    font-size: .875rem;
    letter-spacing: -.00625rem;
    color: var(--lime-web);
    margin-bottom: 1.25rem;
    padding-top: .625rem;
}

#sidebar ul li a {
    display: block;
    font-weight: 500;
    font-size: 1rem;
    color: var(--white);
    list-style: none;
    margin-bottom: 1.5625rem;
}

#sidebar ul li a:hover,
#sidebar ul li a:active,
#sidebar ul li a.active {
    color: var(--lime-web);
    text-decoration: none;
}

#sidebar .microsite ul li a {
    display: block;
    font-weight: 500;
    font-size: .875rem;
    letter-spacing: -.00625rem;
    color: var(--sailblue-web);
    list-style: none;
    margin-bottom: 1.5625rem;
}

#sidebar .microsite ul li a:hover {
    color: var(--lime-web);
    text-decoration: none;
}

#sidebar .homelink {
    margin: 1.5625rem 0;
}

#sidebar .homelink a {
    color: var(--white);
}

#sidebar .homelink a:hover,
#sidebar .homelink a:active,
#sidebar .homelink a.active {
    border-bottom: 2px solid var(--lime-web);
    text-decoration: none;
    transition: color .3s ease;
}

#sidebar .homelink-circle {
    border: .09375rem solid rgba(229, 231, 232, .2);
    border-radius: 50%;
    text-align: center;
    width: 2.25rem;
    height: 2.25rem;
    line-height: 2.05;
    display: inline-block;
}

#sidebar .homelink i {
    margin-right: .9375rem;
}

.overlay {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    z-index: 9998;
    opacity: 0;
    transition: all 0.5s ease-in-out;
}

.overlay.active {
    display: block;
    opacity: 1;
}

/* ARTICLE STYLES */

.article_text-section {}

.article_dataviz-section {}

.article_dataviz-section p.dataviz_body-copy {
    font-family: var(--font-family-sans-serif);
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5;
}

.article_dataviz-section.xlightgray-bg {
    background-color: var(--xlightgray);
}

.article_eyebrow {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    align-items: baseline;
    justify-content: flex-start;
    width: auto;
    font-family: var(--font-family-sans-serif);
    font-weight: 500;
    font-size: .6875rem;
    text-transform: uppercase;
    padding: 1.0625rem 0 0;
    color: rgba(38, 74, 89, 1);
}

.article_eyebrow::before {
    content: '';
    position: absolute;
    display: block;
    width: 13.125rem;
    height: .125rem;
    background-color: var(--red-web);
    top: 0;
    left: 0;
    transition: background .3s ease;
}

.article_eyebrow a {
    text-transform: capitalize;
    font-size: .875rem;
    color: var(--cyan-web);
    letter-spacing: -.0125rem;
}

.article_eyebrow a::before {
    content: '';
    position: absolute;
    display: block;
    width: 13.125rem;
    height: .125rem;
    background-color: var(--red-web);
    top: 0;
    left: 0;
    transition: background .3s ease;
}

.article_eyebrow a:focus,
.article_eyebrow a:hover {
    text-decoration: none;
    color: var(--cyan-web);
    cursor: pointer
}

.article_eyebrow a:hover::before {
    background-color: var(--cyan-web);
}

.article_headline {
    font-family: var(--font-family-sans-serif);
    font-weight: 500;
    font-size: 3.25rem;
    line-height: 3.75rem;
    color: var(--navyblue-web);
}

.article_headline.highlight {
    padding: 0 15px;
}

.article_headline h2 {
    font-size: 2.5rem;
    line-height: 2.5rem;
    margin: 0;
}

.article_headline h2.highlight {
    line-height: 1.2;
}

.article_byline {
    font-family: var(--font-family-serif);
    font-style: italic;
    font-weight: 400;
    font-size: 1.375rem;
    line-height: 1.25;
    color: var(--navyblue-web);
}

.article_headline.white,
.article_byline.white {
    color: var(--white);
}

.article_headline.cyan,
.article_byline.cyan {
    color: var(--cyan-web);
}

.article_headline.navy,
.article_byline.navy {
    color: var(--navyblue-web);
}

.article_headline span.highlight-white {
    display: inline;
    -webkit-box-shadow: 8px 0 0 7px var(--white), -8px 0 0 7px var(--white);
    -moz-box-shadow: 8px 0 0 7px var(--white), -8px 0 0 7px var(--white);
    box-shadow: 8px 0 0 7px var(--white), -8px 0 0 7px var(--white);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--white);
    opacity: .95;
}

.article_headline span.highlight-lightgray {
    display: inline;
    -webkit-box-shadow: 8px 0 0 7px var(--lightgray), -8px 0 0 7px var(--lightgray);
    -moz-box-shadow: 8px 0 0 7px var(--lightgray), -8px 0 0 7px var(--lightgray);
    box-shadow: 8px 0 0 7px var(--lightgray), -8px 0 0 7px var(--lightgray);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--lightgray);
}

.article_headline span.highlight-lime {
    display: inline;
    -webkit-box-shadow: 8px 0 0 7px var(--lime-web), -8px 0 0 7px var(--lime-web);
    -moz-box-shadow: 8px 0 0 7px var(--lime-web), -8px 0 0 7px var(--lime-web);
    box-shadow: 8px 0 0 7px var(--lime-web), -8px 0 0 7px var(--lime-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--lime-web);
}

.article_headline span.highlight-sailblue {
    display: inline;
    -webkit-box-shadow: 8px 0 0 7px var(--sailblue-web), -8px 0 0 7px var(--sailblue-web);
    -moz-box-shadow: 8px 0 0 7px var(--sailblue-web), -8px 0 0 7px var(--sailblue-web);
    box-shadow: 8px 0 0 7px var(--sailblue-web), -8px 0 0 7px var(--sailblue-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--sailblue-web);
}

.article_headline span.highlight-glacierblue {
    display: inline;
    -webkit-box-shadow: 8px 0 0 7px var(--glacierblue-web), -8px 0 0 7px var(--glacierblue-web);
    -moz-box-shadow: 8px 0 0 7px var(--glacierblue-web), -8px 0 0 7px var(--glacierblue-web);
    box-shadow: 8px 0 0 7px var(--glacierblue-web), -8px 0 0 7px var(--glacierblue-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--glacierblue-web);
}

.article_headline span.highlight-bluemine-light {
    display: inline;
    -webkit-box-shadow: 8px 0 0 7px var(--bluemine-light-web), -8px 0 0 7px var(--bluemine-light-web);
    -moz-box-shadow: 8px 0 0 7px var(--bluemine-light-web), -8px 0 0 7px var(--bluemine-light-web);
    box-shadow: 8px 0 0 7px var(--bluemine-light-web), -8px 0 0 7px var(--bluemine-light-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--bluemine-light-web);
}

.article_headline span.highlight-bluemine-dark {
    display: inline;
    -webkit-box-shadow: 8px 0 0 7px var(--bluemine-dark-web), -8px 0 0 7px var(--bluemine-dark-web);
    -moz-box-shadow: 8px 0 0 7px var(--bluemine-dark-web), -8px 0 0 7px var(--bluemine-dark-web);
    box-shadow: 8px 0 0 7px var(--bluemine-dark-web), -8px 0 0 7px var(--bluemine-dark-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--bluemine-dark-web);
}

.article_headline span.highlight-navy {
    display: inline;
    -webkit-box-shadow: 8px 0 0 7px var(--navyblue-web), -8px 0 0 7px var(--navyblue-web);
    -moz-box-shadow: 8px 0 0 7px var(--navyblue-web), -8px 0 0 7px var(--navyblue-web);
    box-shadow: 8px 0 0 7px var(--navyblue-web), -8px 0 0 7px var(--navyblue-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--navyblue-web);
}

.article_headline h2 > span.highlight-white {
    display: inline;
    -webkit-box-shadow: 13px 0 0 2px var(--white), -13px 0 0 2px var(--white);
    -moz-box-shadow: 13px 0 0 2px var(--white), -13px 0 0 2px var(--white);
    box-shadow: 13px 0 0 2px var(--white), -13px 0 0 2px var(--white);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--white);
    opacity: .95;
}

.article_headline h2 > span.highlight-lime {
    display: inline;
    -webkit-box-shadow: 13px 0 0 2px var(--lime-web), -13px 0 0 2px var(--lime-web);
    -moz-box-shadow: 13px 0 0 2px var(--lime-web), -13px 0 0 2px var(--lime-web);
    box-shadow: 13px 0 0 2px var(--lime-web), -13px 0 0 2px var(--lime-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--lime-web);
}

.article_headline h2 > span.highlight-sailblue {
    display: inline;
    -webkit-box-shadow: 13px 0 0 2px var(--sailblue-web), -13px 0 0 2px var(--sailblue-web);
    -moz-box-shadow: 13px 0 0 2px var(--sailblue-web), -13px 0 0 2px var(--sailblue-web);
    box-shadow: 13px 0 0 2px var(--sailblue-web), -13px 0 0 2px var(--sailblue-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--sailblue-web);
}

.article_headline h2 > span.highlight-glacierblue {
    display: inline;
    -webkit-box-shadow: 13px 0 0 2px var(--glacierblue-web), -13px 0 0 2px var(--glacierblue-web);
    -moz-box-shadow: 13px 0 0 2px var(--glacierblue-web), -13px 0 0 2px var(--glacierblue-web);
    box-shadow: 13px 0 0 2px var(--glacierblue-web), -13px 0 0 2px var(--glacierblue-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--glacierblue-web);
}

.article_headline h2 > span.highlight-bluemine-light {
    display: inline;
    -webkit-box-shadow: 13px 0 0 2px var(--bluemine-light-web), -13px 0 0 2px var(--bluemine-light-web);
    -moz-box-shadow: 13px 0 0 2px var(--bluemine-light-web), -13px 0 0 2px var(--bluemine-light-web);
    box-shadow: 13px 0 0 2px var(--bluemine-light-web), -13px 0 0 2px var(--bluemine-light-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--bluemine-light-web);
}

.article_headline h2 > span.highlight-bluemine-dark {
    display: inline;
    -webkit-box-shadow: 13px 0 0 2px var(--bluemine-dark-web), -13px 0 0 2px var(--bluemine-dark-web);
    -moz-box-shadow: 13px 0 0 2px var(--bluemine-dark-web), -13px 0 0 2px var(--bluemine-dark-web);
    box-shadow: 13px 0 0 2px var(--bluemine-dark-web), -13px 0 0 2px var(--bluemine-dark-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--bluemine-dark-web);
}

.article_headline h2 > span.highlight-navy {
    display: inline;
    -webkit-box-shadow: 13px 0 0 2px var(--navyblue-web), -13px 0 0 2px var(--navyblue-web);
    -moz-box-shadow: 13px 0 0 2px var(--navyblue-web), -13px 0 0 2px var(--navyblue-web);
    box-shadow: 13px 0 0 2px var(--navyblue-web), -13px 0 0 2px var(--navyblue-web);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    background: var(--navyblue-web);
}

.article_general-info {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: auto;
    font-family: var(--font-family-sans-serif);
    font-weight: 500;
    font-size: .75rem;
    line-height: 1.25rem;
    letter-spacing: -.1px;
    margin: 1rem 0 1.4375rem;
    color: var(--bluemine-dark-web);
}

.article_general-info a {
    color: var(--glacierblue-web);
    transition: color .3s ease;
}

.article_general-info a:hover {
    text-decoration: none;
    color: var(--cyan-web);
}

.article_icon-container {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    width: auto;
}

.article_icon-container.highlight {
    padding: 0 15px;
}

.article_icon-container span.highlight-white {
    display: inline;
    box-shadow: 8px 0 0 7px var(--white), -8px 0 0 7px var(--white);
    background: var(--white);
    opacity: 1;
}

.article_icon-container span.highlight-lime {
    display: inline;
    box-shadow: 8px 0 0 7px var(--lime-web), -8px 0 0 7px var(--lime-web);
    background: var(--lime-web);
    opacity: 1;
}

.article_icon-container  span.highlight-bluemine-light {
    display: inline;
    box-shadow: 8px 0 0 7px var(--bluemine-light-web), -8px 0 0 7px var(--bluemine-light-web);
    background: var(--bluemine-light-web);
    opacity: 1;
}

.article_icon-container  span.highlight-bluemine-dark {
    display: inline;
    box-shadow: 8px 0 0 7px var(--bluemine-dark-web), -8px 0 0 7px var(--bluemine-dark-web);
    background: var(--bluemine-dark-web);
    opacity: 1;
}

.article_icon-container  span.highlight-navy {
    display: inline;
    box-shadow: 8px 0 0 7px var(--navyblue-web), -8px 0 0 7px var(--navyblue-web);
    background: var(--navyblue-web);
    opacity: 1;
}

.article_icon {
    position: relative;
    display: inline-block;
    height: 3.125rem;
    width: 3.125rem;
    background-color: transparent;
    border: .09375rem solid #ebeff3;
    border-radius: 50%;
    font-size: 1.25rem;
    line-height: 1;
    color: var(--glacierblue-web);
    text-align: center;
    transition: border-color .3s ease;
    cursor: pointer;
    z-index: 999;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.article_icon.mobile {
    height: 2.8125rem;
    width: 2.8125rem;
    font-size: 1.15rem;
}

.article_icon:hover,
.article_icon.mobile:hover {
    text-decoration: none;
    color: var(--cyan-web);
    transition: color .3s ease;
}

.article_icon:active,
.article_icon.mobile:active {
    animation: gradient 100ms;
    background: var(--lime-web);
    color: var(--white);
}

.article_icon.xlightgray-bg, 
.article_icon.mobile.xlightgray-bg {
    background-color: rgba(243, 245, 248, .5); /* XLight Gray #f3f5f8, rgb(243,245,248) @50% opacity */
}

.article_icon.xlightgray-bg:hover, 
.article_icon.mobile.xlightgray-bg:hover {
    background-color: var(--xlightgray);
}

@keyframes gradient {
    0% {
        background: radial-gradient(circle at center, rgba(196, 216, 45, 0) 0%, var(--white) 0%, var(--white) 100%);
    }

    25% {
        background: radial-gradient(circle at center, rgba(196, 216, 45, 0.3) 24%, var(--white) 25%, var(--white) 100%);
    }

    50% {
        background: radial-gradient(circle at center, rgba(196, 216, 45, 0.5) 49%, var(--white) 50%, var(--white) 100%);
    }

    75% {
        background: radial-gradient(circle at center, rgba(196, 216, 45, 0.8) 74%, var(--white) 75%, var(--white) 100%);
    }

    100% {
        color: var(--white);
        background: radial-gradient(circle at center, rgba(196, 216, 45, 1) 99%, var(--white) 100%, var(--white) 100%);
    }
}

.article_icon.lime,
.article_icon.lime.mobile {
    border: .09375rem solid rgba(196,216, 45, .4);
    color: var(--lime-web);
    transition: border-color .3s ease;
}

.article_icon.lime:hover,
.article_icon.lime.mobile:hover {
    border-color: var(--lime-web);
    text-decoration: none;
}

.article_icon.lime:active,
.article_icon.lime.mobile:active {
    animation: gradient 25ms;
    background: var(--lime-web);
}

.article_icon.navy,
.article_icon.navy.mobile {
    border: .09375rem solid rgba(6, 29, 70, .4);
    color: var(--navyblue-web);
    transition: border-color .3s ease;
}

.article_icon.navy:hover,
.article_icon.navy.mobile:hover {
    border-color: var(--navyblue-web);
    text-decoration: none;
}

.article_icon.navy:active,
.article_icon.navy.mobile:active {
    animation: gradient 25ms;
    background: var(--lime-web);
}

.article_body-copy {
    width: auto;
    font-family: var(--font-family-sans-serif);
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.75;
}

.article_body-copy p,
.article_body-copy li {
    list-style: disc;
    margin-bottom: 1.25rem;
}

.article_body-copy ol.mb-none li, 
.article_body-copy ul.mb-none li {
    margin-bottom: 0;
}

.article_body-copy a {
    color: var(--cyan-web);
}

.article_body-copy a:active,
.article_body-copy a:focus,
.article_body-copy a:hover {
    color: var(--cyan-web);
}

.article_body-copy a.contributors {
    font-weight: 500;
    color: var(--bluemine-light-web);
    border-bottom: 2px solid var(--lime-web);
    transition: all .3s ease;
}

.article_body-copy a.contributors:active, 
.article_body-copy a.contributors:focus, 
.article_body-copy a.contributors:hover {
    color: var(--cyan-web);
    text-decoration: none;
}

.article_body-copy h3 {
    font-weight: 500;
    font-size: 1.3125rem;
}

.article_body-copy .dropcap {
    font-family: var(--font-family-serif);
    font-size: 3.675rem;
    font-weight: 300;
    line-height: .9;
    letter-spacing: .075em;
    text-transform: uppercase;
    float: left;
    color: var(--bluemine-dark-web);
    margin: 2.5px 2.5px 0 0;
    padding: 0;
}

.article_body-copy blockquote > p {
    font-size: 1rem;
    line-height: 1.875rem;
    color: var(--bluemine-dark-web);
    margin: 3.125rem 0;
    margin-left: 15%;
    border-left: 1px solid var(--lightgray);
    padding-left: 2.5rem;
}

.article_body-copy .pullquote {
    position: relative;
    font-family: var(--font-family-serif);
    font-style: italic;
    font-weight: 600;
    font-size: 1.75rem;
    line-height: 1.35;
    color: var(--bluemine-dark-web);
    border: none;
    background: 0 0;
    margin: 1em 0;
    padding: 0;
}

.article_body-copy .pullquote:before {
    display: block;
    position: absolute;
    content: "\201C";
    font-family: var(--font-family-serif);
    font-style: normal;
    font-size: 9.375rem;
    font-weight: 300;
    left: -30px;
    top: -50px;
    color: var(--sailblue-web);
    opacity: 1;
    z-index: -10;
}

.article_body-copy .pullquote footer {
    font-family: var(--font-family-sans-serif);
    font-style: normal;
    font-size: 1.375rem;
    font-weight: 400;
    text-align: right;
}

.article_body-copy .axis-label {
    font-family: var(--font-family-sans-serif-alt);
    font-size: 1.25rem;
}

.article_body-copy .note {
    font-family: var(--font-family-sans-serif-alt);
    color: rgba(38, 74, 89, .75);
}

.article_body-copy .note span {
    text-transform: uppercase;
    font-weight: 700;
}

.article_body-copy .annotation_highlight {
    font-weight: 400;
    font-size: .6875rem;
    line-height: .6875rem;
    color: var(--cyan-web);
    vertical-align: super;
    text-decoration: none;
}

.article_body-copy .annotation_highlight:before {
    content: '[';
}

.article_body-copy .annotation_highlight:after {
    content: ']';
}

.article_body-copy .accordion .card {
    background: none;
    border: none;
    border-bottom: 1px solid var(--lightgray);
}

.article_body-copy .accordion .card:last-of-type {
    border-bottom: none;
}

.article_body-copy .accordion .card .card-header {
    background: none;
    border: none;
    padding: 1rem 0;
}

.article_body-copy .accordion .card .card-header a {
    text-decoration: none;
}

.article_body-copy .accordion .card-header .btn {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.25;
    text-align: left;
    color: var(--bluemine-light-web);
    padding: 0;
}

.article_body-copy .accordion .card-header .btn span {
    font-family: var(--font-family-sans-serif-alt);  
    text-transform: uppercase;
    font-size: .875rem;
    font-weight: 700;
    white-space: nowrap;
}

.article_body-copy .accordion .card-header .btn div.methodology-score {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 120px;
    max-width: 120px;
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 500;
    font-size: .875rem;
    line-height: 1.25;
    letter-spacing: .05rem;
    text-transform: uppercase;
    text-align: center;
    vertical-align: middle;
    color: var(--navyblue-web);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: rgba(243, 245, 248, .5); /* XLight Gray #f3f5f8, rgb(243,245,248) @50% opacity */
    border: .09375rem solid rgba(6, 29, 70, .4);
    border-radius: .125rem;
    padding: .65rem .75rem;
    background-position: center;
    transition: all .3s ease;
}

.article_body-copy .accordion .card-header .btn div.methodology-score.small {
    min-width: 70px;
    max-width: 70px;
    font-size: .875rem;
    line-height: 1.25;
    letter-spacing: .05rem;
    padding: .5rem;
}

.article_body-copy .accordion .card-header i {
    font-size: 1.5rem;
    line-height: 1.5;
    color: var(--cyan-web);
    transition: all .3s ease;
}

.article_body-copy .accordion .card-header .btn:hover {
    color: var(--cyan-web);
    text-decoration: none;
}

.article_body-copy .accordion .btn div.methodology-score:active, .article_body-copy .accordion .btn div.methodology-score:hover, a.article_body-copy .accordion .btn div.methodology-score:active, a.article_body-copy .accordion .btn div.methodology-score:hover {
    color: var(--navyblue-web);
    background-color: var(--xlightgray);
    border: .09375rem solid var(--navyblue-web);
    text-decoration: none;
}

.article_body-copy .accordion .btn div.methodology-score:focus {
    color: var(--navyblue-web);
    background-color: var(--white);
    text-decoration: none;
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    outline: none;
}

.article_body-copy .accordion .card-body {
    color: var(--black);
    max-height: 460px;
    overflow: scroll;
    padding: 0 3.3rem;
}

.article_body-copy .accordion .card-body p:last-child {
    margin-bottom: 0;
}

.article_body-copy .accordion .highlight .btn div.methodology-score {
    color: var(--navyblue-web);
    background-color: var(--lime-web);
    border: .09375rem solid var(--navyblue-web);
    text-decoration: none;
}

.article_body-copy .accordion .highlight i {
    transform: rotate(180deg);
    color: var(--lime-web);
}

.article_body-copy .accordion .card-header div.download {
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 150px;
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 400;
    font-size: .875rem;
    letter-spacing: .05rem;
    text-transform: uppercase;
    text-align: center;
    vertical-align: middle;
    color: var(--white);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: var(--bluemine-light-web);
    border: .09375rem solid var(--white);
    border-radius: 0.125rem;
    padding: 0.375rem 0.75rem;
    background-position: center;
    transition: all .3s ease;
}

.article_body-copy .accordion .card-header div.download.round {
    height: 2.8125rem;
    width: 2.8125rem;
    letter-spacing: 0;
    border-radius: 50%;
}

.article_body-copy .accordion .card-header div.download:hover, .article_body-copy .accordion .card-header div.download:active, a.article_body-copy .accordion .card-header div.download:hover, a.article_body-copy .accordion .card-header div.download:active {
    color: var(--white);
    background-color: var(--cyan-web);
    text-decoration: none;
}

.article_body-copy .accordion .card-header div.download:focus {
    color: var(--white);    
    border-color: var(--cyan-web);
    text-decoration: none;
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    outline: none;
}

.article_body-copy .accordion .card-header .download i {
    font-size: 1.5rem;
    line-height: 0;
    color: var(--white);
    transition: all .3s ease;
}

.article_body-copy .accordion .card-header .download.round i {
    font-size: 1.75rem;
}

.article_body-copy .accordion .highlight .download i {
    transform: none;
    color: var(--lime-web);
}

.article_body-copy .accordion .card .card-body.model-legislation p.indent {
    padding-left: 2.5rem;
}

.article_body-copy .accordion .card .card-body.model-legislation ol {
    margin-bottom: 1.25rem;
    padding-inline-start: 0;
}

.article_body-copy .accordion .card .card-body.model-legislation ol.level-one {
    padding-left: 1.375rem;
}

.article_body-copy .accordion .card .card-body.model-legislation ol.level-two {
    padding-left: 3.75rem;
}

.article_body-copy .accordion .card .card-body.model-legislation ol.level-three {
    padding-left: 6.125rem;
}

.article_body-copy .accordion .card .card-body.model-legislation ol.decimal li {list-style-type: decimal;}
.article_body-copy .accordion .card .card-body.model-legislation ol.lower-alpha li {list-style-type: lower-alpha;}
.article_body-copy .accordion .card .card-body.model-legislation ol.upper-alpha li {list-style-type: upper-alpha;}
.article_body-copy .accordion .card .card-body.model-legislation ol.lower-roman li {list-style-type: lower-roman;}
.article_body-copy .accordion .card .card-body.model-legislation ol.upper-roman li {list-style-type: upper-roman;}
.article_body-copy .accordion .card .card-body.model-legislation ol.none li {list-style-type: none;}

/* FOOTER */

.global-footer {
    font-family: var(--font-family-sans-serif);
    font-size: 1.4375rem;
    color: var(--white);
    background-color: #2a2f36;
}

.global-footer .secondary-navigation {
    font-weight: 400;
    font-size: 1.125rem;
    line-height: 2rem;
}

.global-footer .subscribe-title {
    font-family: var(--font-family-serif);
    font-style: italic;
    font-size: 1.25rem;
    font-weight: 200;
    line-height: 2rem;
    color: var(--lime-web);
}

.global-footer .subscribe-button {
    font-family: var(--font-family-sans-serif);
    font-size: .875rem;
    font-weight: 400;
    color: var(--white);
    background-color: var(--bluemine-light-web);
    height: 3.125rem;
    border-radius: 0;
    border-style: none;
    transition: background-color .3s ease;
}

.global-footer #Email,
.global-footer .subscribe-email-input {
    font-family: var(--font-family-sans-serif);
    font-size: .875rem;
    font-weight: 400;
    line-height: 50px;
    color: var(--white);
    background-color: transparent;
    height: 50px;
    border-radius: 0;
    border-style: none;
    border-bottom: .125rem Solid var(--bluemine-light-web);
    transition: border-color .3s ease;
}

.subscribe-email-input::placeholder {
    color: var(--lightgray);
}

.global-footer .subscribe-button:hover {
    background-color: #2e647b;
}

.global-footer .privacy-copyright {
    font-size: .6875rem;
    font-weight: 500;
    line-height: 1.5rem;
    padding-right: .75rem;
}

.global-footer .privacy-copyright .copyright-text {
    font-weight: 100;
    color: var(--lightgray);
}

* .secondary-navigation a,
.privacy-copyright a,
a.global-footer:before,
a.secondary-navigation:before,
a.privacy-copyright:before,
a.social-circle:before,
a.heritage-icon-social_twitter:before,
a.heritage-icon-social_facebook:before,
a.twitter-x-icon-social_twitter-x:before,
a.social-circle:focus,
a.heritage-icon-social_twitter:focus,
a.heritage-icon-social_facebook:focus,
a.twitter-x-icon-social_twitter-x:focus,
a.social-circle:hover,
a.heritage-icon-social_twitter:hover,
a.heritage-icon-social_facebook:hover,
a.twitter-x-icon-social_twitter-x:hover {
    color: var(--white);
    text-decoration: none;
}

.secondary-navigation a:focus,
.secondary-navigation a:hover,
.privacy-copyright a:focus,
.privacy-copyright a:hover {
    color: var(--lime-web);
    text-decoration: none;
    transition: color .3s ease;
}

.global-footer .social-circle {
    font-size: 1.25rem;
    line-height: 3rem;
    text-align: center;
    height: 50px;
    width: 50px;
    background-color: transparent;
    border: .09375rem solid rgba(229, 231, 232, .4);
    border-radius: 50%;
    text-decoration: none;
    transition: border-color .3s ease-in-out;
}

.global-footer .social-circle:focus,
.global-footer .social-circle:hover {
    border-color: var(--white);
    text-decoration: none;
    transition: color .3s ease-in-out;
}

.global-footer .heritage-bell {
    font-size: 1.875rem;
    line-height: 3.25rem;
    color: var(--white);
}

/* COLLECTION PAGE STYLES */

.main-nav.collection {
    background-color: rgba(37, 42, 47, .95);
}

.logo-cell.collection {
    background-color: rgba(37, 42, 47, 1);
}

.trigger-drawer.collection {
    background-color: rgba(37, 42, 47, 1);
    transition: color .3s ease;
}

.trigger-drawer.collection:hover {
    color: var(--lime-web);
}

.article_general-info.collection a {
    color: rgba(255, 255, 255, 1);
    transition: color .3s ease;
}

.article_general-info.collection a:hover {
    text-decoration: none;
    color: rgba(255, 255, 255, .6);
}

.article_icon.collection,
.article_icon.collection.mobile {
    border: .09375rem solid rgba(229, 231, 232, .4);
    color: var(--white);
    transition: border-color .3s ease;
}

.article_icon.collection:hover,
.article_icon.collection.mobile:hover {
    border-color: var(--white);
    text-decoration: none;
}

.article_icon.collection:active,
.article_icon.collection.mobile:active {
    animation: gradient 25ms;
    background: var(--lime-web);
}

.collection-wrapper {}

.collection-headline {}

.column-heading {
    border-bottom: 1px solid rgba(0, 0, 0, .2);
    vertical-align: baseline;
}

.column-heading h3 {
    font-family: var(--font-family-sans-serif);
    font-weight: 700;
    font-size: .75rem;
    line-height: 1;
    letter-spacing: 1px;
    color: rgba(38, 74, 89, .75);
    text-transform: uppercase;
    margin: 0;
}

.collection-card-wrapper {
    border-bottom: 1px dotted rgba(0, 0, 0, .2);
    vertical-align: baseline;
    align-items: center;
}

.collection-card-image {}

.collection-card-image img {
    border: 1px solid rgba(0, 0, 0, .1);
    border-radius: 5px;
}

.collection-card-image a {
    text-decoration: none;
    color: var(--white);
}

.collection-card-image-hover {
    position: relative;
    display: inline-block;
    overflow: hidden;
    max-width: 100%;
    height: auto;
}

.collection-card-image-hover .collection-card-image-hover-overlay {
    position: absolute;
    opacity: 0;
    /*RESET TO 0*/
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .5);
    -moz-transition: all 0.3s ease-in-out 0s;
    -webkit-transition: all 0.3s ease-in-out 0s;
    -ms-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
}

.collection-card-image-hover:hover .collection-card-image-hover-overlay,
.collection-card-image-hover.active .collection-card-image-hover-overlay {
    opacity: 1;
}

.collection-card-image-hover .collection-card-image-hover-label-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.collection-card-image-hover-label {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .2);
}

.collection-card-image-hover-label i,
.collection-card-image-hover-label p {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    height: 1.5rem;
    margin: 0;
}

.collection-card-image-hover-label i {
    font-size: 1.5rem;
    background-color: var(--lime-web);
    border-radius: 2px 0 0 2px;
    -moz-border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
    padding: 0 5px;
}

.collection-card-image-hover-label p {
    font-family: var(--font-family-sans-serif);
    font-weight: 500;
    font-size: .75rem;
    text-transform: uppercase;
    letter-spacing: .0625rem;
    background-color: rgba(38, 74, 89, 1);
    border-radius: 2px 0 0 2px;
    -moz-border-radius: 2px 0 0 2px;
    -webkit-border-radius: 0 2px 2px 0;
    padding: 0 10px;
}

.collection-card-description {
    text-align: left;
}

.collection-card-description h3 {
    font-family: var(--font-family-serif);
    font-weight: 600;
}

.collection-card-description_highlight {}

.collection-card-description p {
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5;
    margin: 0;
}

.collection-card-description a {
    color: var(--navyblue-web);
    text-decoration: none;
    background-size: 0 3px;
    background-image: linear-gradient(90deg, var(--lime-web) 0, var(--lime-web) 50%, var(--lime-web));
    background-repeat: no-repeat;
    transition: background-size .2s ease-in-out;
    background-position: 50% calc(100% - 1px);
}

.collection-card-description a:hover {
    background-size: 100% 3px;
    text-shadow: -1px -1px 0 var(--white),
        1px -1px 0 var(--white),
        -1px 1px 0 var(--white),
        1px 1px 0 var(--white);
}

.bg-cover {
    background-size: cover !important;
    margin-bottom: 4.125rem;
    padding: 6rem 0 0;
}

.bg-element {
    background-color: var(--sailblue-web);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 580'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bisolation:isolate;%7D.cls-10,.cls-2%7Bfill:none;%7D.cls-3,.cls-6%7Bmix-blend-mode:multiply;%7D.cls-3%7Bopacity:0.25;%7D.cls-4%7Bfill:%23464646;%7D.cls-5%7Bfill:%23fff;%7D.cls-6%7Bopacity:0.05;%7D.cls-7%7Bfill:%23c5d1d8;%7D.cls-8%7Bfill:%23c4d82e;%7D.cls-9%7Bfill:%23f3f5f8;%7D.cls-10%7Bstroke:%23c5d1d8;stroke-miterlimit:10;stroke-width:2.51px;%7D%3C/style%3E%3C/defs%3E%3Cg class='cls-1'%3E%3Cg id='Ballot_Box' data-name='Ballot Box'%3E%3Crect class='cls-2' width='1000' height='580'/%3E%3Cg class='cls-3'%3E%3Cpolygon class='cls-4' points='982.86 439.5 948.72 439.5 948.72 458.42 880.61 458.42 880.61 439.5 846.84 439.5 829.33 474.78 829.33 580 1000 580 1000 473.21 982.86 439.5'/%3E%3C/g%3E%3Crect class='cls-5' x='880.63' y='386.2' width='68.07' height='72.22'/%3E%3Cg class='cls-6'%3E%3Cpath d='M942.54,385.47v32.68a33.39,33.39,0,0,1-33.39,33.39H880.63v6.16H948.7V385.47Z' transform='translate(0 0.72)'/%3E%3C/g%3E%3Crect class='cls-7' x='825.41' y='469.59' width='170.93' height='2.91'/%3E%3Cpolygon class='cls-7' points='946.43 454.68 943.52 454.68 943.52 383.91 878.32 383.91 878.32 454.68 875.42 454.68 875.42 381 946.43 381 946.43 454.68'/%3E%3Crect class='cls-7' x='863.42' y='453.23' width='95.01' height='2.91'/%3E%3Cpolygon class='cls-7' points='997.51 577.71 824.34 577.71 824.34 470.7 842.34 434.31 878.32 434.31 878.32 437.22 844.14 437.22 827.25 471.38 827.25 574.81 994.6 574.81 994.6 471.38 977.7 437.22 943.52 437.22 943.52 434.31 979.51 434.31 997.51 470.7 997.51 577.71'/%3E%3Cpath class='cls-7' d='M911.7,434.63a17.51,17.51,0,1,1,17.51-17.51A17.53,17.53,0,0,1,911.7,434.63Zm0-32.76A15.25,15.25,0,1,0,927,417.12,15.27,15.27,0,0,0,911.7,401.87Z' transform='translate(0 0.72)'/%3E%3Cpolygon class='cls-8' points='908.45 425.95 900.33 417.84 901.93 416.24 908.45 422.76 921.48 409.73 923.07 411.33 908.45 425.95'/%3E%3Cpath class='cls-9' d='M859.15,484.29a.61.61,0,0,1,.34-.33,2.06,2.06,0,0,1,1.2.06c8.48,2.22,17,4.36,25.59,6q6.54,1.27,13.15,2.13a62.92,62.92,0,0,0,16.51-.32,6.3,6.3,0,0,1,2.41,0c1.29.33,1.78,1.75,2.91,2.26,1.39.62,3.79,0,5.28,0a2.48,2.48,0,0,1,1.38.21c3,1.82-3.95,3-4.26,3.31-1.27,1.19-.64,2,.66,2.08,2.34.18,4.63-2.59,6.89-2.28,1.31.18,2.17,1.44,3.49,1.63s5.24-2.58,5.55,0c.12,1.05-1.16,1.6-2.14,2a8.8,8.8,0,0,0-5.17,6.48c-.38,2-.55,6.5,1.85,7.43,4,1.54,1.56-9.38,2-10.79,1.65-5.95,9.91.68,8.31,5.48-.52,1.56-1.83,3.22-.27,4.55,1.35,1.15,3.24.4,4.52-.48,1.74-1.2,2.77-3,4-4.69a9.73,9.73,0,0,1,2.16-2.32c.93-.59,2-.48,2.93-1.08a3,3,0,0,0,1.17-1.93c.21-1.1-.1-2,.49-3a4.21,4.21,0,0,1,2.24-1.71c1.87-.7,4-.57,5.79-1.46,2.5-1.22,2.09-3.74,2.2-6.07a4.67,4.67,0,0,1,.82-2.7c3.27-4.23,4,4,5.23,5,4.23,3.27-1.5,4.13-3.06,6.68a5.8,5.8,0,0,0-.59,4.72c.5,1.6,1.28,3.1-.82,3.89-.86.32-1.81.36-2.65.73a5.37,5.37,0,0,0-2.62,3.32c-.73,2.11-.82,4-2.31,5.82-1.77,2.14-2.82,3.55-1.12,6,1.15,1.67,3,3.4,2.21,5.63-.57,1.56-2.26,3-3.31,4.21l-4.34,5.11c-3,3.54-5.67,7.54-3.18,12.19a53.73,53.73,0,0,0,3.42,4.85c1.06,1.54,4.28,8.3.48,8.66a4.05,4.05,0,0,1-2.62-.9,10.31,10.31,0,0,1-4.14-6.31c-.23-1.16-.26-2.35-.54-3.49a4.38,4.38,0,0,0-1.89-2.86c-2.62-1.48-4.12,2.66-6.72.07-2-2-5.24-1.42-7.52-.16-2,1.09-3.4,4.45-5.66,4.47s-4.48-1.22-6.9-1.15c-4,.12-9,2-10.86,5.82-.8,1.62-.2,3.86-1.42,5.27-2.29,2.66-5.13-1.32-6.13-3.21-1.26-2.42-2-5.19-4-7.19-2.59-2.67-3.68.1-6.46.14-2.25,0-2.49-2.74-3.39-4.38-1-1.92-3.21-5-5.43-5.74-2.37-.75-4.76,1.47-7.06,1.7-5,.49-8.55-2.53-12.28-5.28-1.61-1.19-3.88-1.55-5.52-2.8-2-1.48-1.21-4.29-3.16-5.55-.65-.42-1.39-.69-2.06-1.07-2.48-1.4-3.77-4.25-4.38-7a66.29,66.29,0,0,1-1.82-11.51,43.25,43.25,0,0,1,3-17.61,46.12,46.12,0,0,0,2.41-7.17c.13-.61.92-5,2.17-4.32,1.61.85.35,3.38,1.83,4C860.63,490.46,858.5,485.68,859.15,484.29Z' transform='translate(0 0.72)'/%3E%3Cpath class='cls-10' d='M856.14,481.28a.61.61,0,0,1,.34-.33,2.06,2.06,0,0,1,1.2.06c8.48,2.22,17,4.36,25.59,6q6.54,1.27,13.15,2.13a62.91,62.91,0,0,0,16.51-.32,6.3,6.3,0,0,1,2.41,0c1.29.33,1.78,1.75,2.92,2.26,1.38.62,3.79,0,5.27,0a2.4,2.4,0,0,1,1.38.22c3,1.81-3.95,3-4.26,3.3-1.27,1.19-.64,2,.66,2.08,2.35.18,4.64-2.59,6.89-2.28,1.31.18,2.17,1.44,3.49,1.63s5.24-2.58,5.55,0c.12,1.05-1.16,1.6-2.14,2a8.8,8.8,0,0,0-5.17,6.48c-.38,2-.54,6.5,1.86,7.43,3.94,1.54,1.55-9.38,1.94-10.79,1.65-5.95,9.91.68,8.31,5.48-.52,1.57-1.83,3.22-.27,4.55,1.35,1.15,3.24.4,4.52-.48,1.74-1.2,2.77-3.05,4-4.69a9.94,9.94,0,0,1,2.16-2.32c.93-.59,2-.48,2.93-1.08a3,3,0,0,0,1.17-1.93c.21-1.1-.09-2,.49-3a4.21,4.21,0,0,1,2.24-1.71c1.87-.7,4-.57,5.79-1.45,2.5-1.23,2.09-3.75,2.2-6.08a4.67,4.67,0,0,1,.82-2.7c3.27-4.23,4,4,5.23,5,4.23,3.27-1.5,4.13-3.06,6.68a5.8,5.8,0,0,0-.59,4.72c.5,1.6,1.28,3.1-.82,3.89-.86.32-1.81.36-2.65.73a5.37,5.37,0,0,0-2.62,3.32c-.73,2.11-.82,4-2.31,5.82-1.77,2.14-2.82,3.55-1.11,6,1.15,1.67,3,3.4,2.2,5.63-.57,1.56-2.26,3-3.31,4.21l-4.34,5.11c-3,3.54-5.67,7.54-3.18,12.19a55.81,55.81,0,0,0,3.42,4.85c1.06,1.54,4.28,8.3.48,8.66a4.05,4.05,0,0,1-2.62-.9,10.31,10.31,0,0,1-4.14-6.31c-.23-1.16-.26-2.35-.54-3.49a4.4,4.4,0,0,0-1.89-2.86c-2.62-1.48-4.12,2.66-6.72.07-2-2-5.24-1.42-7.52-.16-2,1.09-3.4,4.45-5.66,4.47s-4.48-1.22-6.9-1.15c-4,.12-9,2-10.86,5.82-.8,1.62-.2,3.86-1.42,5.27-2.29,2.66-5.13-1.32-6.12-3.21-1.27-2.41-2-5.19-4-7.19-2.59-2.67-3.68.1-6.46.14-2.25,0-2.49-2.74-3.39-4.37-1-1.93-3.21-5-5.43-5.75-2.37-.75-4.76,1.48-7.06,1.7-5,.49-8.55-2.53-12.28-5.28-1.61-1.19-3.88-1.54-5.52-2.8-2-1.48-1.21-4.29-3.16-5.55-.65-.42-1.39-.69-2.06-1.07-2.48-1.4-3.77-4.25-4.38-7a67.26,67.26,0,0,1-1.82-11.51,43.25,43.25,0,0,1,3-17.61,46.12,46.12,0,0,0,2.41-7.17c.13-.6.92-5,2.17-4.32,1.61.85.35,3.39,1.83,4C857.62,487.45,855.49,482.67,856.14,481.28Z' transform='translate(0 0.72)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"), linear-gradient(160deg, #bee7f9, #0093d0);
    background-size: cover;
    background-position: bottom right;
}

.bg-icon-cover {
    position: relative;
    overflow: hidden;
    background-size: cover !important;
    background: linear-gradient(160deg, #bee7f9, #0093d0);
    margin-bottom: 4.125rem;
    padding: 6rem 0 0;
}

.bg-icon-container {
    position: absolute;
    overflow: hidden;
    bottom: -10px;
    right: -30px;
}

.bg-icon {
    display: block;
    background-position: center center;
    background-repeat: no-repeat;
    width: 325px;
    height: 325px;
}

.bg-icon-container.small {
    bottom: -7px;
    right: -23px;
}

.bg-icon.small {
    width: 280px;
    height: 280px;
}

.bg-icon.ballotbox {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 500'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bisolation:isolate;%7D.cls-2,.cls-5%7Bmix-blend-mode:multiply;%7D.cls-2%7Bopacity:0.25;%7D.cls-3%7Bfill:%23464646;%7D.cls-4%7Bfill:%23fff;%7D.cls-5%7Bopacity:0.05;%7D.cls-6%7Bfill:%23c5d1d8;%7D.cls-7%7Bfill:%23c4d82e;%7D.cls-8%7Bfill:%23f3f5f8;%7D.cls-9%7Bfill:none;stroke:%23c5d1d8;stroke-miterlimit:10;stroke-width:6.3px;%7D%3C/style%3E%3C/defs%3E%3Cg class='cls-1'%3E%3Cg id='Ballot_Box' data-name='Ballot Box'%3E%3Cg class='cls-2'%3E%3Cpolygon class='cls-3' points='451.21 146.99 341.8 146.99 341.8 194.52 170.74 194.52 170.74 146.99 64.04 146.99 14.2 235.63 14.2 500 500 500 500 231.69 451.21 146.99'/%3E%3C/g%3E%3Crect class='cls-4' x='170.74' y='13.05' width='171.06' height='181.47'/%3E%3Cg class='cls-5'%3E%3Cpath d='M576.32,53.05v82.1A83.9,83.9,0,0,1,492.41,219H420.74v15.48H591.8V53.05Z' transform='translate(-250 -40)'/%3E%3C/g%3E%3Cpolygon class='cls-6' points='336.09 185.13 328.78 185.13 328.78 7.31 164.96 7.31 164.96 185.13 157.65 185.13 157.65 0 336.09 0 336.09 185.13'/%3E%3Crect class='cls-6' x='127.5' y='181.48' width='238.74' height='7.31'/%3E%3Crect class='cls-6' x='3.05' y='222.57' width='486.54' height='7.31'/%3E%3Cpolygon class='cls-6' points='492.91 494.26 0 494.26 0 225.37 51.24 133.94 157.65 133.94 157.65 141.25 56.38 141.25 8.28 227.08 8.28 486.95 484.63 486.95 484.63 227.08 436.53 141.25 341.8 141.25 341.8 133.94 441.67 133.94 492.91 225.37 492.91 494.26'/%3E%3Cpath class='cls-6' d='M498.83,185.14a52.58,52.58,0,1,1,52.58-52.58A52.64,52.64,0,0,1,498.83,185.14Zm0-98.38a45.8,45.8,0,1,0,45.8,45.8A45.86,45.86,0,0,0,498.83,86.76Z' transform='translate(-250 -40)'/%3E%3Cpolygon class='cls-7' points='271.97 70.04 279.4 77.47 279.4 77.47 239.78 117.09 239.78 117.09 216.25 93.56 223.68 86.13 223.68 86.13 239.78 102.23 271.97 70.04 271.97 70.04'/%3E%3Cpath class='cls-8' d='M366.78,301.33a1.5,1.5,0,0,1,.84-.82,5.13,5.13,0,0,1,3,.15C392,306.22,413.33,311.6,435,315.81Q451.39,319,468,321.16c14,1.83,27.62,1,41.48-.81a16.15,16.15,0,0,1,6,0c3.26.83,4.49,4.4,7.34,5.67,3.47,1.56,9.52.09,13.26-.06a6.15,6.15,0,0,1,3.46.53c7.47,4.57-9.92,7.57-10.71,8.31-3.18,3-1.61,5,1.66,5.23,5.89.44,11.65-6.51,17.32-5.74,3.3.45,5.46,3.63,8.78,4.11,2.94.43,13.16-6.48,13.92-.05.31,2.63-2.91,4-5.37,5a22,22,0,0,0-13,16.27c-1,5.1-1.38,16.33,4.66,18.67,9.91,3.86,3.9-23.56,4.89-27.12,4.13-14.93,24.88,1.71,20.87,13.79-1.31,3.92-4.6,8.08-.68,11.42,3.4,2.9,8.15,1,11.36-1.21,4.37-3,7-7.65,10.13-11.77,1.55-2,3.26-4.45,5.43-5.83,2.34-1.48,5-1.21,7.36-2.73a7.36,7.36,0,0,0,2.94-4.84c.53-2.77-.24-5,1.23-7.53a10.37,10.37,0,0,1,5.63-4.29c4.69-1.77,10-1.45,14.54-3.67,6.3-3.08,5.26-9.41,5.53-15.26a11.92,11.92,0,0,1,2.06-6.78c8.22-10.63,9.94,10,13.14,12.44,10.64,8.23-3.76,10.39-7.68,16.79a14.66,14.66,0,0,0-1.49,11.86c1.25,4,3.22,7.8-2,9.78-2.16.81-4.56.89-6.66,1.83-3.33,1.49-5.42,4.89-6.6,8.34-1.82,5.3-2.07,10.1-5.8,14.62-4.45,5.4-7.08,8.93-2.8,15.14,2.89,4.2,7.61,8.54,5.54,14.15-1.44,3.92-5.68,7.44-8.33,10.56l-10.89,12.86c-7.53,8.89-14.26,18.93-8,30.61,2.35,4.38,5.75,8.1,8.57,12.19,2.66,3.86,10.77,20.87,1.22,21.77-2.36.22-4.65-.9-6.59-2.26a25.83,25.83,0,0,1-10.39-15.87c-.59-2.9-.67-5.89-1.37-8.76s-2.17-5.74-4.75-7.2c-6.57-3.71-10.35,6.69-16.89.19-5.12-5.09-13.16-3.57-18.88-.4-4.94,2.73-8.54,11.17-14.23,11.23s-11.26-3.06-17.34-2.88c-9.95.29-22.61,5.06-27.29,14.6-2,4.08-.5,9.7-3.56,13.25-5.76,6.68-12.9-3.31-15.4-8.07-3.19-6.06-5.07-13-10-18.06-6.49-6.71-9.23.26-16.23.36-5.65.09-6.24-6.89-8.5-11-2.65-4.83-8.07-12.68-13.66-14.44-5.95-1.88-12,3.71-17.74,4.28-12.45,1.22-21.47-6.36-30.84-13.28-4.05-3-9.75-3.87-13.89-7-4.89-3.71-3-10.78-7.92-13.95-1.64-1.07-3.5-1.72-5.19-2.68-6.23-3.53-9.47-10.7-11-17.68-2.07-9.33-4.19-19.36-4.57-28.9a108.72,108.72,0,0,1,7.51-44.27c2.5-6.28,4.58-11.45,6.05-18,.35-1.52,2.33-12.49,5.46-10.85,4.06,2.13.88,8.5,4.6,10.15C370.49,316.85,365.14,304.83,366.78,301.33Z' transform='translate(-250 -40)'/%3E%3Cpath class='cls-9' d='M359.22,293.77a1.5,1.5,0,0,1,.84-.82,5,5,0,0,1,3,.15c21.31,5.56,42.68,10.94,64.31,15.15q16.44,3.21,33.05,5.35c14,1.83,27.62,1,41.48-.81a15.74,15.74,0,0,1,6,0c3.26.83,4.49,4.4,7.33,5.67,3.48,1.56,9.53.09,13.27-.07a6.07,6.07,0,0,1,3.46.54c7.47,4.57-9.92,7.57-10.71,8.31-3.18,3-1.61,5,1.66,5.23,5.89.44,11.65-6.52,17.32-5.74,3.3.45,5.46,3.63,8.78,4.11,2.94.43,13.15-6.48,13.92-.05.31,2.62-2.91,4-5.37,5a22,22,0,0,0-13,16.27c-.95,5.1-1.38,16.33,4.65,18.67,9.92,3.86,3.91-23.56,4.89-27.12,4.14-14.93,24.89,1.71,20.88,13.79-1.31,3.92-4.6,8.08-.68,11.42,3.4,2.9,8.15,1,11.36-1.22,4.37-3,7-7.65,10.13-11.76,1.54-2,3.26-4.45,5.43-5.83,2.34-1.49,5-1.21,7.36-2.73a7.39,7.39,0,0,0,2.94-4.84c.53-2.77-.24-5,1.23-7.53a10.37,10.37,0,0,1,5.63-4.29c4.69-1.77,10-1.45,14.54-3.67,6.3-3.08,5.26-9.41,5.53-15.26a11.84,11.84,0,0,1,2.06-6.78c8.22-10.63,9.94,10,13.14,12.44,10.64,8.23-3.76,10.39-7.69,16.79A14.7,14.7,0,0,0,644.56,346c1.25,4,3.21,7.8-2,9.78-2.15.81-4.55.89-6.65,1.83-3.34,1.49-5.43,4.89-6.61,8.34-1.81,5.3-2.06,10.09-5.79,14.62-4.45,5.4-7.08,8.93-2.8,15.14,2.89,4.19,7.61,8.54,5.54,14.15-1.45,3.92-5.68,7.43-8.33,10.56L607,433.26c-7.53,8.89-14.26,18.93-8,30.61,2.36,4.38,5.76,8.1,8.58,12.19,2.66,3.86,10.77,20.87,1.22,21.77-2.36.22-4.65-.9-6.59-2.26a25.88,25.88,0,0,1-10.4-15.87c-.58-2.9-.66-5.89-1.36-8.76s-2.18-5.74-4.75-7.2c-6.58-3.71-10.35,6.68-16.89.19-5.13-5.09-13.16-3.57-18.88-.4-4.94,2.73-8.55,11.17-14.23,11.23s-11.26-3.06-17.34-2.88c-10,.29-22.61,5.06-27.29,14.6-2,4.07-.51,9.7-3.57,13.25-5.75,6.68-12.89-3.31-15.39-8.07-3.19-6.06-5.07-13-10-18.06-6.5-6.71-9.23.26-16.23.36-5.66.09-6.25-6.9-8.5-11-2.65-4.83-8.07-12.68-13.66-14.44-5.95-1.88-12,3.71-17.74,4.28-12.46,1.22-21.47-6.36-30.84-13.28-4.06-3-9.75-3.87-13.89-7-4.89-3.72-3.05-10.78-7.92-13.95-1.64-1.07-3.5-1.72-5.19-2.68-6.23-3.53-9.47-10.7-11-17.68-2.06-9.33-4.19-19.36-4.56-28.91A108.71,108.71,0,0,1,340.11,325c2.5-6.28,4.57-11.45,6.05-18,.35-1.52,2.33-12.5,5.46-10.85,4.05,2.13.88,8.5,4.6,10.15C362.93,309.29,357.58,297.27,359.22,293.77Z' transform='translate(-250 -40)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.bg-overlay {
    position: absolute;
    overflow: hidden;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}

.bg-overlay.noise-texture_01 {
    background-image: url("https://www.heritage.org/electionscorecard/assets/images/backgrounds/noisy-texture-01.png");
    opacity: .6;
}

.bg-overlay.noise-texture_02 {
    background-image: url("https://www.heritage.org/electionscorecard/assets/images/backgrounds/noisy-texture-02.png");
    opacity: .5;
}

@media all and (max-width: 1200px) {}

@media all and (max-width: 992px) {

    .bg-cover {
        padding: 5rem 0 0;
    }

    .bg-icon-cover {
        padding: 5rem 0 0;
    }

    .bg-icon-container {
        bottom: -8px;
        right: -25px;
    }

    .bg-icon-container.small {
        bottom: -6px;
        right: -18px;
    }
    
    .bg-icon.small {
        width: 240px;
        height: 240px;
    }

}

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

    .bg-cover {
        margin-bottom: 3.75rem;
        padding: 4rem 0 0;
    }

    .bg-icon-cover {
        margin-bottom: 3.75rem;
        padding: 4rem 0 0;
    }
    
    .bg-icon-container {
        bottom: -8px;
        right: -18px;
    }

    .bg-icon {
        width: 225px;
        height: 225px;
    }

    .bg-icon-container.small {
        bottom: -6px;
        right: -16px;
    }
    
    .bg-icon.small {
        width: 210px;
        height: 210px;
    }

}

@media all and (max-width: 576px) {

    .bg-cover {
        margin-bottom: 1.75rem;
        padding: 3rem 0 0;
    }

    .bg-icon-cover {
        margin-bottom: 1.75rem;
        padding: 3rem 0 0;
    }

    .bg-icon-container {
        bottom: -5px;
        right: -15px;
    }

    .bg-icon {
        width: 165px;
        height: 165px;
    }

    .bg-icon-container.small {
        bottom: -5px;
        right: -14px;
    }
    
    .bg-icon.small {
        width: 190px;
        height: 190px;
    }

}

/* SOURCE */

.dataviz-source {
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 400;
    font-size: .875rem;
    line-height: 1.25;
    color: rgba(38, 74, 89, .75);
    background-color: transparent;
}

.dataviz-source p {
    margin-bottom: .5rem;
}

.dataviz-source span {
    text-transform: uppercase;
    font-weight: 700;
}

.dataviz-source span#pubdate {
    text-transform: none;
    font-weight: 400;
}

.dataviz-source a {
    color: var(--cyan-web);
}

.dataviz-source a.ednref {
    color: rgba(38, 74, 89, .75);
    text-decoration: none;
}

.dataviz-source a:focus,
.dataviz-source a:hover {
    color: var(--cyan-web);
}

/* BUTTONS */

.THF_button {
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: auto;
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 400;
    font-size: .875rem;
    line-height: 1.25;
    letter-spacing: .05rem;
    text-transform: uppercase;
    text-align: center;
    vertical-align: middle;
    color: var(--white);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: var(--bluemine-light-web);
    border: .09375rem solid var(--white);
    border-radius: 0.125rem;
    padding: 0.65rem 0.75rem;
    background-position: center;
    transition: all .3s ease;
}

.THF_button:hover, .THF_button:active, a.THF_button:hover, a.THF_button:active {
    color: var(--white);
    background-color: var(--cyan-web);
    text-decoration: none;
}

.THF_button:focus {
    color: var(--white);    
    border-color: var(--cyan-web);
    text-decoration: none;
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    outline: none;
}

.THF_button.outline {
    font-weight: 500;
    color: var(--navyblue-web);
    background-color: var(--white);
    border: .09375rem solid rgba(6, 29, 70, .4);
    transition: all .3s ease;
}

.THF_button.outline:hover, .THF_button.outline:active, a.THF_button.outline:hover, a.THF_button.outline:active {
    color: var(--navyblue-web);
    background-color: var(--white);
    border: .09375rem solid var(--navyblue-web);
    text-decoration: none;
}

.THF_button.outline:focus {
    color: var(--navyblue-web);
    background-color: var(--white);
    text-decoration: none;
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    outline: none;
}

.THF_button.outline.xlightgray-bg {
    background-color: rgba(243, 245, 248, .5); /* XLight Gray #f3f5f8, rgb(243,245,248) @50% opacity */
}

.THF_button.outline.xlightgray-bg:hover, .THF_button.outline.xlightgray-bg:active, a.THF_button.outline.xlightgray-bg:hover, a.THF_button.outline.xlightgray-bg:active {
    background-color: var(--xlightgray);
}

/* CHECKBOXES */

#checkboxOptions {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.heritage-icon-copy_clipboard {
    color: var(--white);
}

.heritage-checkbox * {
    box-sizing: border-box;
}

.heritage-checkbox input:not([type=checkbox]):not([type=radio]) {
    display: none;
}

.heritage-checkbox {
    position: relative;
    display: inline-block;
    font-size: 1rem;
    line-height: 1;
    white-space: nowrap;
}

.heritage-checkbox input {
    position: absolute;
    left: 0;
    top: 0;
    min-width: 1em;
    width: 100%;
    height: 100%;
    z-index: 2;
    opacity: 0;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.heritage-checkbox .state label {
    position: initial;
    display: inline-block;
    font-weight: 500;
    letter-spacing: .05rem;
    text-transform: uppercase;
    vertical-align: baseline;
    margin: 0;
    text-indent: 1.75em;
    min-width: calc(1em + 2px);
    color: var(--black);
}

.heritage-checkbox .state label:after,
.heritage-checkbox .state label:before {
    content: '';
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    display: block;
    box-sizing: border-box;
    border-radius: 0;
    border: .109375rem solid transparent;
    z-index: 0;
    position: absolute;
    left: 0;
    top: calc((0% - (100% - 1em)) - 8%);
    background-color: transparent;
}

.heritage-checkbox .state label:before {
    border-color: rgba(38, 74, 89, .4);
}

.heritage-checkbox .incidents label {
    position: initial;
    display: inline-block;
    font-weight: 500;
    letter-spacing: .05rem;
    text-transform: uppercase;
    vertical-align: baseline;
    margin: 0;
    min-width: calc(1em + 2px);
    color: var(--black);
}

.heritage-checkbox .state.thf-is-hover,
.heritage-checkbox .state.thf-is-indeterminate {
    display: none;
}

.heritage-checkbox.thf-icon .state .icon {
    position: absolute;
    font-size: 1em;
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    left: 0;
    z-index: 1;
    text-align: center;
    line-height: normal;
    top: calc((0% - (100% - 1em)) - 8%);
    border: 1px solid transparent;
    background-color: var(--lime-web);
    opacity: 0;
}

.heritage-checkbox.thf-icon .state .icon:before {
    margin: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: .7rem;
    line-height: 1;
}

.heritage-checkbox.thf-icon input:checked ~ .state .icon {
    opacity: 1;
}

.heritage-checkbox.thf-icon input:checked ~ .state label:before {
    border-color: rgba(38, 74, 89, .4);
}

.heritage-checkbox.thf-plain.thf-plain .icon {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

.heritage-checkbox.thf-round .state label:after,
.heritage-checkbox.thf-round .state label:before {
    border-radius: 100%;
}

.heritage-checkbox.thf-round.thf-icon .state .icon {
    border-radius: 100%;
    overflow: hidden;
}

.heritage-checkbox.thf-round.thf-icon .state .icon:before {
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
}

.heritage-checkbox.thf-smooth .icon,
.heritage-checkbox.thf-smooth label:after,
.heritage-checkbox.thf-smooth label:before {
    transition: all .5s ease;
}

.heritage-checkbox.thf-smooth input:checked + .state label:after {
    transition: all .3s ease;
}

.heritage-checkbox.thf-smooth input:checked + .state .icon {
    -webkit-animation: zoom .2s ease;
    animation: zoom .2s ease;
}

.heritage-checkbox.thf-smooth.thf-default input:checked + .state label:after {
    -webkit-animation: zoom .2s ease;
    animation: zoom .2s ease;
}

.heritage-checkbox.thf-smooth.thf-plain input:checked + .state label:before {
    content: '';
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    transition: all .5s ease;
}

/* SELECT BOX */

/* id applies to select element itself, not a wrapper element */
.selectState,
#chart1dropdownPeriod, 
#chart1dropdownMetric,
#chart2dropdownState,
#chart2metricMain {
    display: block;
    font-family: var(--font-family-sans-serif);
    font-weight: 400;
    font-size: 1rem;
    color: var(--black);
    line-height: 1.3;
    padding: .6em 1.4em .5em .8em;
    width: 100%;
    max-width: 100%; /* useful when width is set to anything other than 100% */
    box-sizing: border-box;
    margin: 0;
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-radius: .125em;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    user-select: none;
    background-color: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 0.5) 47%, rgba(237, 237, 237, 0.5) 100%);
    /* note: bg image below uses 2 urls. The first is an svg data uri for the arrow icon, and the second is the gradient. for the icon, if you want to change the color, be sure to use `%23` instead of `#`, since it's a url. You can also swap in a different svg icon or an external image reference */
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23c4d82d%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 0.5) 47%, rgba(237, 237, 237, 0.5) 100%);
    background-repeat: no-repeat, repeat;
    /* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
    background-position: right .7em top 50%, 0 0;
    /* icon size, then gradient */
    background-size: .65em auto, 100%;
    transition: all .3s ease-in-out;
}

/* Hide arrow icon in IE browsers */
.selectState::-ms-expand,
#chart1dropdownPeriod::-ms-expand,
#chart1dropdownPeriod::-ms-expand,
#chart1dropdownPeriod::-ms-expand,
#chart1dropdownPeriod::-ms-expand {
    display: none;
}

/* Hover style */
.selectState:hover,
#chart1dropdownPeriod:hover,
#chart1dropdownPeriod:hover,
#chart1dropdownPeriod:hover,
#chart1dropdownPeriod:hover {
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23111d22%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

/* Focus style */
.selectState:focus,
#chart1dropdownPeriod:focus,
#chart1dropdownPeriod:focus,
#chart1dropdownPeriod:focus,
#chart1dropdownPeriod:focus {
    border-color: rgba(0, 0, 0, .25);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    outline: none;
}

/* Set options to normal weight */
.selectState option,
#chart1dropdownPeriod option,
#chart1dropdownPeriod option,
#chart1dropdownPeriod option,
#chart1dropdownPeriod option {
    font-weight: normal;
}

/* Support for rtl text, explicit support for Arabic and Hebrew */
*[dir="rtl"] .selectState,
:root:lang(ar) .selectState,
:root:lang(iw) .selectState,
*[dir="rtl"] #chart1dropdownPeriod,
:root:lang(ar) #chart1dropdownPeriod,
:root:lang(iw) #chart1dropdownPeriod,
*[dir="rtl"] #chart1dropdownPeriod,
:root:lang(ar) #chart1dropdownPeriod,
:root:lang(iw) #chart1dropdownPeriod,
*[dir="rtl"] #chart1dropdownPeriod,
:root:lang(ar) #chart1dropdownPeriod,
:root:lang(iw) #chart1dropdownPeriod,
*[dir="rtl"] #chart1dropdownPeriod,
:root:lang(ar) #chart1dropdownPeriod,
:root:lang(iw) #chart1dropdownPeriod {
    background-position: left .7em top 50%, 0 0;
    padding: .6em .8em .5em 1.4em;
}

/* Disabled styles */
.selectState:disabled,
.selectState[aria-disabled=true],
#chart1dropdownPeriod:disabled,
#chart1dropdownPeriod[aria-disabled=true],
#chart1dropdownPeriod:disabled,
#chart1dropdownPeriod[aria-disabled=true],
#chart1dropdownPeriod:disabled,
#chart1dropdownPeriod[aria-disabled=true],
#chart1dropdownPeriod:disabled,
#chart1dropdownPeriod[aria-disabled=true] {
    color: graytext;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22graytext%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
        linear-gradient(to bottom, rgba(38, 74, 89, .1) 0%, rgba(38, 74, 89, .1) 100%);
}

.selectState:disabled:hover,
.selectState[aria-disabled=true],
#chart1dropdownPeriod:disabled:hover,
#chart1dropdownPeriod[aria-disabled=true],
#chart1dropdownPeriod:disabled:hover,
#chart1dropdownPeriod[aria-disabled=true],
#chart1dropdownPeriod:disabled:hover,
#chart1dropdownPeriod[aria-disabled=true],
#chart1dropdownPeriod:disabled:hover,
#chart1dropdownPeriod[aria-disabled=true] {
    border-color: #aaa;
}

.selectLabel {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.2;
    margin-bottom: .5rem;
}

/* FORM */

.formInput {
    display: block;
    width: 100%;
    max-width: 100%; /* useful when width is set to anything other than 100% */
    height: calc(1.5em + 0.75rem + 2px);
    font-size: 1rem;
    line-height: 1.25;
    color: var(--black);
    background-color: var(--white);
    background-clip: padding-box;
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-radius: .125em;
    padding: .375rem .75rem;
    box-sizing: border-box;
    margin: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 0.5) 47%, rgba(237, 237, 237, 0.5) 100%);
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 0.5) 47%, rgba(237, 237, 237, 0.5) 100%);
    background-repeat: repeat;
    background-position: 0 0;
    background-size: 100%;
    transition: all .3s ease-in-out;
}

.formInput:hover {
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.formInput:focus {
    border-color: rgba(0, 0, 0, .25);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    outline: none;
}

.formButton {
    width: auto;
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 400;
    font-size: .625rem;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
    color: var(--black);
    background-color: rgba(38, 74, 89, .1);
    border: .09375rem solid rgba(0, 147, 208, .25);
    border-radius: .125rem;
    padding: .535rem 0.75rem;
    background-position: center;
    transition: background 0.8s;
}

.formButton:hover, .formButton button:hover {
    background: rgba(38, 74, 89, .075) radial-gradient(circle, transparent 1%, rgba(38, 74, 89, .075) 1%) center/15000%;
}

.formButton:active, .formButton button:active {
    color: rgba(17, 29, 34, .8);
    background-color: var(--lime-web);
    background-size: 100%;
    transition: background 0s;
}

.formButton:disabled, .formButton button:active {
    background-color: rgba(38, 74, 89, .1);
    background-size: 100%;
    opacity: .5;
}

/* RANGE SLIDERS */

input[type=range] {
    height: 25px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    background-color: transparent;
}

input[type=range]:focus {
    outline: none;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 5px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: 0px 0px 0px #000;
    background: var(--lightgray);
    border-radius: 5px;
    border: .0625rem solid rgba(0, 0, 0, .25);
}

input[type=range]::-webkit-slider-thumb {
    box-shadow: 0px 0px 0px var(--black);
    border: .0625rem solid var(--red-web);
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: rgba(237, 237, 237, 1);
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin-top: -7.5px;
}

input[type=range]::-webkit-slider-thumb:hover {
    background: var(--white);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    transition: all .1s ease-in-out;
}

input[type=range]::-webkit-slider-thumb:active {
    background: var(--lime-web);
    border-color: rgba(0, 0, 0, .25);
}

input[type=range]:focus::-webkit-slider-runnable-track {
    background: var(--lightgray);
}

input[type=range]::-moz-range-track {
    width: 100%;
    height: 5px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: 0px 0px 0px #000;
    background: var(--lightgray);
    border-radius: 5px;
    border: .0625rem solid rgba(0, 0, 0, .25);
}

input[type=range]::-moz-range-thumb {
    box-shadow: 0px 0px 0px var(--black);
    border: .0625rem solid var(--red-web);
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: rgba(237, 237, 237, 1);
    cursor: pointer;
}

input[type=range]::-moz-range-thumb:hover {
    background: var(--white);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    transition: all .1s ease-in-out;
}

input[type=range]::-moz-range-thumb:active {
    background: var(--lime-web);
    border-color: rgba(0, 0, 0, .25);
}

input[type=range]::-ms-track {
    width: 100%;
    height: 5px;
    cursor: pointer;
    animate: 0.2s;
    background: transparent;
    border-color: transparent;
    color: transparent;
}

input[type=range]::-ms-fill-lower {
    background: var(--lightgray);
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-radius: 10px;
    box-shadow: 0px 0px 0px #000;
}

input[type=range]::-ms-fill-upper {
    background: var(--lightgray);
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-radius: 10px;
    box-shadow: 0px 0px 0px #000;
}

input[type=range]::-ms-thumb {
    margin-top: 1px;
    box-shadow: 0px 0px 0px var(--black);
    border: 1px solid var(--red-web);
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: rgba(237, 237, 237, 1);
    cursor: pointer;
}

input[type=range]::-ms-thumb:hover {
    background: var(--white);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    transition: all .1s ease-in-out;
}

input[type=range]::-ms-thumb:active {
    background: var(--lime-web);
    border-color: rgba(0, 0, 0, .25);
}

input[type=range]:focus::-ms-fill-lower {
    background: var(--lightgray);
}

input[type=range]:focus::-ms-fill-upper {
    background: var(--lightgray);
}

/* TABLE STYLES THF */

.THFtable {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family-sans-serif);
    text-align: center;
}

.THFtable-cell {
    box-sizing: border-box;
    -webkit-box-flex: 1;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    flex-grow: 1;
    width: 100%;
    min-height: 3.5rem;
    padding: 0.75em .75em;
    overflow: hidden;
    list-style: none;
}

.THFtable-cell.source {
    display: block;
    margin: 0;
    padding: 0;
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 400;
    font-size: .875rem;
    line-height: 1.25;
    color: rgba(38, 74, 89, .75);
    background-color: transparent;
}

.THFtable-cell.source p {
    margin-bottom: .5rem;
}

.THFtable-cell.source span {
    text-transform: uppercase;
    font-weight: 700;
}

.THFtable-cell.source a {
    color: var(--cyan-web);
}

.THFtable-cell.source a:focus,
.THFtable-cell.source a:hover {
    color: var(--cyan-web);
}

/* TABLE COLUMN SIZING */

.THFtable-1col > .THFtable-cell {
    width: 100%;
}

.THFtable-2cols > .THFtable-cell {
    width: 50%;
}

.THFtable-3cols > .THFtable-cell {
    width: 33.33%;
}

.THFtable-4cols > .THFtable-cell {
    width: 25%;
}

.THFtable-5cols > .THFtable-cell {
    width: 20%;
}

.THFtable-6cols > .THFtable-cell {
    width: 16.6%;
}

.THFtable-7cols > .THFtable-cell {
    width: 14.29%;
}

.THFtable-8cols > .THFtable-cell {
    width: 12.5%;
}

/* TABLE ORDER */

.THFtable-cell.order-0 {
    order: 0;
}

.THFtable-cell.order-1 {
    order: 1;
}

.THFtable-cell.order-2 {
    order: 2;
}

.THFtable-cell.order-3 {
    order: 3;
}

/* ELECTION INTEGRITY SCORECARD */

/* These colors are used on Score Over Time AND ALL State page(s) */
:root {
        
    --change-pos: #509a44;
    --change-neg: #ce2131;
    --change-none: #868686;
    --chart1-black: #111d22;
    --chart2-state-color-1: #246eb7;
    --chart2-state-color-2: #ea7c24;
    --chart2-state-color-3: #509a44;
    --chart2-state-color-4: #a84e9d;
    
}

.rank1-10{fill:#008242; color:#008242;}
.rank11-20{fill:#bfd730; color:#bfd730;}
.rank21-30{fill:#fff200; color:#fff200;}
.rank31-40{fill:#f7941d; color:#f7941d;}
.rank41-51{fill:#c4161c; color:#c4161c;}

html,
body {
    height: 100%;
}

body {
    display: flex;
    flex-direction: column;
}

.page-content {
    flex: 1 0 auto;
}

footer {
    flex-shrink: 0;
}

/* Style names beginning with 'tgm_' are for the tile grid map */
/* Style names beginning with 'state_' are for state pages */
/* Style names beginning with 'stateVstate_' are for the state-v-state page */

/* Tile Grid Map */

.disposableBox {height: 900px;}

#tooltip_tgm {
    position: absolute;
    text-align: center;
    pointer-events: none;
    visibility: hidden;
    color: var(--black);
    background: var(--white);
    border: .03125rem solid rgba(0, 0, 0, .25);
    border-radius: .1875rem;
    width: 180px;
    height: auto;
    padding: .75rem;
    z-index: 9999;
    -webkit-box-shadow: 0 10px 6px -6px rgba(0, 0, 0, .25);
    -moz-box-shadow: 0 10px 6px -6px rgba(0, 0, 0, .25);
    box-shadow: 0 10px 6px -6px rgba(0, 0, 0, .25);
}

#tooltip_tgm p {
    line-height: 1;
    margin-bottom: 0;
}

#tootip_tgm span {
    display: inline-block;
}

.toolTip_tgm_stateName {
    font-weight: 700;
    font-size: 1.25rem;
    color: var(--bluemine-dark-web);
}

.toolTip_tgm_values {
    display: inline-block;
    font-size: 1rem;
    margin-top: .5rem;
    line-height: 1.25;
    color: var(--darkgray);
}

.tgm_stateAbbrev {
    pointer-events: none;
    user-select: none;
    font-weight: 500;
    font-size: .75rem;
    text-anchor: middle;
}

.tgm_legend_wrapper {
    position: absolute;
    display: -ms-flexbox;
    display: flex;
    background-color: var(--white);
    background-clip: border-box;
    border: 1px solid rgba(0, 0, 0, .2);
    border-radius: 0.125rem;
    padding: .5rem;
}

.tgm_legend_wrapper.stacked {
    bottom: 16px;
    right: 16px;
}

.tgm_legend_wrapper.horizontal {
    position: relative;
}

.tgm_legend {
    display: -ms-flexbox;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    font-size: .875rem;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
    vertical-align: middle;
    color: var(--black);
    width: auto;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
}

.tgm_legend .rank1-10, .tgm_legend .rank11-20, .tgm_legend .rank21-30, .tgm_legend .rank31-40, .tgm_legend .rank41-51 {
    width: 50px;
    padding: 0.125rem 0.25rem;
}

.tgm_legend .rank1-10.stacked, .tgm_legend .rank11-20.stacked, .tgm_legend .rank21-30.stacked, .tgm_legend .rank31-40.stacked, .tgm_legend .rank41-51.stacked {
    width: 60px;
    padding: .25rem .5rem;
}

.tgm_legend .rank1-10 {
    color: var(--white);
    background-color: #008242;
}

.tgm_legend .rank11-20 {
    color: var(--black);
    background-color: #bfd730;
}

.tgm_legend .rank21-30 {
    color: var(--black);
    background-color: #fff200;
}

.tgm_legend .rank31-40 {
    color: var(--black);
    background-color: #f7941d;
}

.tgm_legend .rank41-51 {
    color: var(--white);
    background-color: #c4161c;
}

.tgm_legend_header {
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 600;
    font-size: .875rem;
    line-height: 1.25;
    text-transform: uppercase;
    color: var(--bluemine-light-web);
}

/* State Scorecard */

.state2LetterCode {display: none;}

#state_flag img {
    /*height: 120px;*/
    min-width: 250px;
    max-width: 250px;
    border: .03125rem solid var(--lightgray);
    border-radius: .5rem;
}

.state_name, .state_grade {
    font-size: 2rem;
    font-weight: 500;
}

.state_scoreAndRank {
    font-size: 1.125rem;
}

/* This style defines the gap between "Score:" and "Rank:". */
.state_scoreAndRankInlineSpacing {
    padding-left: 1.25em;
}

/* Score and Rank Display */
        
.state_topDisplayBox {
    text-align: center;
    background: rgba(243, 245, 248, .5);                    
    border-right: 1px solid rgba(0,0,0,.2);
    width: 150px;
    transition: background .3s ease;
}

.state_topDisplayBox:last-child {
    border-right: none;
}

.state_topDisplayBox:first-child:hover, 
.state_topDisplayBox:last-child:hover {
    background: var(--xlightgray);
}

.state_topDisplayLabel {
    font-size: .75rem;
    text-transform: uppercase;
    color: var(--darkgray);
}

.state_topDisplayValue {
    font-family: var(--font-family-serif);
    font-weight: 600;
    font-size: 4rem;
    color: var(--navyblue-web);
}

.state_topDisplayBox:last-of-type #state_rank.state_topDisplayValue:before {
    content: '#';
    font-size: 2.5rem;
    vertical-align: text-top;
}

.state_topDisplayValue:last-child {
    font-family: var(--font-family-sans-serif);
    font-weight: 400;
    font-size: 2.5rem;
}

.state_table_wrapper table {
    font-size: .875rem;
    line-height: 1.35;
    color: var(--black);
    width: 100%;
    border-collapse: collapse;
}

.state_table_headerRow td {
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 600;
    font-size: .875rem;
    line-height: 1.25;
    text-transform: uppercase;
    color: var(--bluemine-light-web);
    border-top: 9px solid var(--white);
}

/* This is for the table row that opens the accordion when clicked. It's a button with a table inside it. */
.state_table_sectionColl {
    width: 100%;
    cursor: pointer;
    background-color: rgba(243, 245, 248, .5); /* XLight Gray #f3f5f8, rgb(243,245,248) @50% opacity */
    border: none;
    padding: 0;
}

/* Accordion content */
.state_table_sectionContent {
    max-height: 0;
    overflow: hidden;
    background-color: var(--white);
    transition: max-height .3s ease;
}

.state_table_wrapper td {
    padding: .875em 0;
}

.state_table_sectionContent td.state_table_columnPlusMinus, 
.state_table_sectionContent td.state_table_columnCategory, 
.state_table_sectionContent td.state_table_columnScore {
    border-bottom: 1px solid var(--lightgray);
}

/* Info icon circle-'i' */
.state_table_sourcesAndNotesInfo {
    color: var(--bluemine-light-web);
    cursor: pointer;
    padding-left: .25em;
    font-size: .8125rem;
    font-weight: 600;
    transition: all .3s ease;
}

.state_table_sourcesAndNotesInfo:hover {
    color: var(--cyan-web);
}

/* This tooltip appears when a user cursors over the circle-'i' */
#state_tooltip {
    position: absolute;
    text-align: center;
    pointer-events: none;
    visibility: hidden;
    color: var(--black);
    background: var(--white);
    border: .03125rem solid rgba(0, 0, 0, .25);
    border-radius: .1875rem;
    max-width: 220px;
    height: auto;
    padding: .5em;
    z-index: 9999;
    -webkit-box-shadow: 0 10px 6px -6px rgba(0, 0, 0, .25);
    -moz-box-shadow: 0 10px 6px -6px rgba(0, 0, 0, .25);
    box-shadow: 0 10px 6px -6px rgba(0, 0, 0, .25);
}

#state_tooltip p {
    font-size: .875rem;
    line-height: 1.25;
    margin: 0;
}

/* Width and text alignment % of table columns */
.state_table_columnPlusMinus {
    text-align: center;
    width: 10%;
}

.state_table_columnCategory {
    text-align: left;
    width: 70%;
}

.state_table_columnScore {
    font-weight: 600;
    text-align: center;
    width: 20%;
}

.boldBluemine-dark-web {
    font-weight: 600;
    color: var(--bluemine-dark-web);
}

/* Historical Data Table */
        
#scoresOverTimeMainDIV {
    font-size: 1rem;
    max-height: 0;
    overflow: hidden;
    transition: max-height 1s ease-out;
}

#scoresOverTimeMainDIV table {
    font-size: .875rem;
    text-align: center;
    border-collapse: collapse;
    width: 100%;
}

#scoresOverTimeMainDIV tr {
    line-height: 1.35;
}

#scoresOverTimeMainDIV tr th {
    font-weight: 600;
    color: var(--bluemine-dark-web);
    width: 33.333%;
}

#scoresOverTimeMainDIV tr td {
    color: var(--darkgray);
}

#scoresOverTimeMainDIV tr:hover:not(:first-child) {
    background: var(--xlightgray);
    transition: background .3s ease;
}

.scoresOverTimeCategoryDIV {
    margin: 2rem 0 1rem 0;
}

.scoresOverTimeCategoryHeader,
.scoresOverTimeChangesPos,
.scoresOverTimeChangesNeg {
    font-weight: 600;
}

.scoresOverTimeMaxScoreLabel {
    font-style: italic;
    font-size: .875rem;
    color: var(--darkgray);
    margin: 0 0 .875rem 0;
    padding: .25rem 0 .5rem 0;
    border-bottom: 1px solid rgba(0,0,0,.2);
}

.scoresOverTimeChangesPos {
    color: var(--change-pos)!important;
}

.scoresOverTimeChangesNeg {
    color: var(--change-neg)!important;
}

/* Modal */

.modal {
    display: none;
    position: fixed; 
    z-index: 1050;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
}

.modal-header {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: end;
    padding: .625rem 1.25rem;
    background-color: var(--bluemine-light-web);
    color: var(--white);
    border-bottom: 1px solid var(--bluemine-light-web);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.modal-header h2 {
    margin: 0;
}

.modal-content {
    position: relative;
    background-color: #fefefe;
    margin: auto;
    padding: 0;
    border: .0625rem solid var(--bluemine-light-web);
    width: 60%;
    border-radius: 0;
    border-bottom-left-radius: .25rem;
    border-bottom-right-radius: .25rem;
    animation-name: animatetop;
    animation-duration: 0.4s;
    -moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
}

.modal-body {
    font-size: 1rem;
    line-height: 1.5;
    margin: 2rem 0;
    padding: 0 1.25rem;
}

.modal-body p:last-child {
    margin-bottom: 0;
}

.modalBold{
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 600;
    text-transform: uppercase;
    color: var(--bluemine-light-web);
}

.modalCloseX {
    color: var(--white);
    font-size: 2rem;
    margin-right: 1.25rem;
}

.modalCloseX:hover, .modalCloseX:focus {
    cursor: pointer;
    color: var(--lime-web);
    text-decoration: none;
    transition: color .3s ease
}

@keyframes animatetop {
    from {top: -300px; opacity: 0}
    to {top: 0; opacity: 1}
}

/* State v. State Comparison */

.stateVstate_wrapper table {
    display: block;
    width: 100%;
    overflow-x: auto;
    font-size: .875rem;
    line-height: 1.35;
    color: var(--black);
    border-collapse: collapse;
}

.stateVstate_wrapper td {
    padding: .5em 1em;
}

.stateVstate_wrapper tr {
    border-bottom: 6px solid var(--white);
}

.stateVstate_wrapper tr td > a {
    font-size: 1.5rem;
    line-height: 1;
    color: var(--bluemine-light-web);
    text-decoration: none;
    transition: color .3s ease;
}

.stateVstate_wrapper tr td > a:active, 
.stateVstate_wrapper tr td > a:hover {
    color: var(--cyan-web);
    text-decoration: none;
}

.stateVstate_tableContent {
    background-color: rgba(243, 245, 248, .5); /* XLight Gray #f3f5f8, rgb(243,245,248) @50% opacity */
}

.state_table_row_active,
.state_table_sectionColl:hover,
.stateVstate_tableContent:hover {
    background-color: var(--xlightgray);
    transition: background .3s ease;
}

.state_table_row_active {
    border-bottom: 1px solid var(--lightgray);
}

.stateVstate_flag {
    text-align: center;
}

.stateVstate_flag img {
    height: 145px;
    min-width: 245px;
    max-width: 245px;
    object-fit: cover;
    border: .03125rem solid var(--lightgray);
    border-radius: .5rem;
}

/* Width and text alignment % of table columns */
.stateVstate_columnCategory {
    width: 50%;
    /*position: -webkit-sticky;
    position: sticky;
    left: 0px;*/
}

.stateVstate_columnState {
    font-weight: 500;
    text-align: center;
    width: 25%;
}

/* All State Scores */

/* Recommend having 'height' and 'width' settings leave clean breaks between rows and columns */
.table-container {
    display: block;
    width: 100%;
    height: 684px;
    overflow: auto;
    -ms-overflow-style: none;  /* Hide scrollbar for IE and Edge */
    scrollbar-width: none;  /* Hide scrollbar for Firefox */
    -webkit-box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
    box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
}

.table-container::-webkit-scrollbar {
    display: none; /* Hide scrollbar for Chrome, Safari and Opera */
}

.tablescrollButton {
    display: inline-block;
    line-height: 0;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: manipulation;
    color: var(--white);
    fill: var(--white);
    background-color: var(--bluemine-light-web);
    border: .09375rem solid var(--bluemine-light-web);
    border-radius: 0.125rem;
    padding: .625rem;
    background-position: center;
    transition: all .3s ease;
}

.tablescrollButton svg.tablescrollButton-caret {
    width: 20px;
    height: 20px;
}

.tablescrollButton:hover, a.tablescrollButton:hover {
    color: var(--white);
    fill: var(--white);
    background-color: var(--cyan-web);
    border: .09375rem solid var(--cyan-web);
    text-decoration: none;
}

.tablescrollButton:active, a.tablescrollButton:active, .tablescrollButton:active i, a.tablescrollButton:active i {
    color: var(--lime-web);
    fill: var(--lime-web);
    text-decoration: none;
}

.tablescrollButton:focus {
    color: var(--white);    
    border-color: var(--cyan-web);
    text-decoration: none;
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    box-shadow: 0px 0px 3px 1px rgba(0, 147, 208, .7);
    outline: none;
}

.allstatescores table {
    border-collapse: separate !important;
    border-spacing: 0;
}

.allstatescores thead tr {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 2;
    -webkit-box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
    box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
}

.allstatescores thead tr:first-child {
    left: 0;
    z-index: 3;
}

.allstatescores thead td {
    font-size: .875rem;
    font-weight: 600;
    text-align: center;
    vertical-align: bottom;
    background-color: var(--white);
    border-bottom: 3px solid var(--lightgray);
    padding: .875rem 1rem .5rem 1rem;
}

.allstatescores thead td:hover {
    user-select: none;
    background-color: var(--xlightgray);
    cursor: pointer;
}

.allstatescores thead td:nth-child(1), 
.allstatescores thead td:nth-child(2), 
.allstatescores thead td:nth-child(3) {
    font-weight: 600;
}

.allstatescores tbody td {
    font-size: .875rem;
    text-align: center;
    background-color: var(--white);
    border-bottom: 1px solid var(--lightgray);
    padding: .625rem 1rem;
}

.allstatescores tbody td:nth-child(1), 
.allstatescores tbody td:nth-child(2), 
.allstatescores tbody td:nth-child(3) {
    font-weight: 500;
}

.allstatescores tbody tr td > a {
    color: var(--bluemine-light-web);
    text-decoration: none;
    transition: color .3s ease;
}

.allstatescores tbody tr td > a:active, 
.allstatescores tbody tr td > a:hover {
    color: var(--cyan-web);
    text-decoration: none;
}

.allstatescores thead td:nth-child(1), 
.allstatescores tbody td:nth-child(1) {
    min-width: 100px;
}
.allstatescores thead td:nth-child(2), 
.allstatescores tbody td:nth-child(2) {
    min-width: 160px;
    text-align: left;
}
.allstatescores thead td:nth-child(3), 
.allstatescores tbody td:nth-child(3) {
    min-width: 110px;
    border-right: 2px solid var(--lightgray);
}
.allstatescores thead td:nth-child(4), 
.allstatescores tbody td:nth-child(4) {
    padding-left: 1.3125rem;
}

.allstatescores thead tr > :nth-child(1), 
.allstatescores tbody tr > :nth-child(1),
.allstatescores thead tr > :nth-child(2), 
.allstatescores tbody tr > :nth-child(2),
.allstatescores thead tr > :nth-child(3), 
.allstatescores tbody tr > :nth-child(3) {
    position: -webkit-sticky;
    position: sticky;
}

.allstatescores thead tr > :nth-child(1), 
.allstatescores tbody tr > :nth-child(1) {
    left: 0px;
}
.allstatescores thead tr > :nth-child(2), 
.allstatescores tbody tr > :nth-child(2) {
    left: 100px;
}
.allstatescores thead tr > :nth-child(3), 
.allstatescores tbody tr > :nth-child(3) {
    left: 260px;
}

.allstatescores .selectedColumn {
    background-color: var(--xlightgray);
}

.allstatescores .nonSelectedColumn {
    background-color: var(--white);
}

.upDownArrows, 
.maxValues {
    font-family: var(--font-family-sans-serif);
    font-size: .75rem;
    font-weight: 400;
    margin: 0;
    padding: 0;
    margin-top: .375rem;
}

.upDownArrows {
    color: var(--bluemine-light-web);
    letter-spacing: -2px;
    transition: color .3s ease;
}

.upDownArrows:hover {
    color: var(--cyan-web);
}

/* Scrollbar */

.table-container::-webkit-scrollbar, .accordion .card-body::-webkit-scrollbar {
    width: 6px;
    height: 6px;
    transition: all .3s ease;
}

.table-container::-webkit-scrollbar-track, .accordion .card-body::-webkit-scrollbar-track
{
	/*-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    -moz-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    box-shadow: inset 0 0 6px rgba(0,0,0,.3);
	background: rgba(38, 74, 89, .1);*/
}

.table-container::-webkit-scrollbar-thumb, .accordion .card-body::-webkit-scrollbar-thumb
{
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    -moz-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    border-radius: 10px;
	background: var(--bluemine-light-web);
    transition: all .3s ease;
}

.table-container::-webkit-scrollbar-thumb:hover, .accordion .card-body::-webkit-scrollbar-thumb:hover {
    background: var(--cyan-web);
}

/* Interactive Charts */

.chart1labels {
    font-size: .75rem;
    alignment-baseline: middle;
    user-select: none;
}

.chart1labelsStates {
    line-height: 1.5;
    transition: all .3s ease;
}

.chart1labelsStates:hover {
    fill: var(--cyan-web);
    cursor: pointer;
}

.chart1labelsValuesNeg,
.chart1labelsValuesPos,
.chart1headers {
    font-weight: 600;
}

.chart1labelsValuesNeg {
    text-anchor: end;
    fill: var(--change-neg);
}

.chart1labelsValuesPos {
    text-anchor: start;
    fill: var(--change-pos);
}

.chart1headers {
    font-size: .75rem;
    color: var(--bluemine-dark-web);
    alignment-baseline: hanging;
    text-anchor: middle;
    text-transform: uppercase;
}

.chart1headerLine {
    stroke: var(--black);
    stroke-width: 0.25;
}

.chart2selectedStatesDiv {
    font-size: .875rem;
    background-color: var(--white);
    padding: .5rem;                
    margin: 0;
    display: inline-block;
    cursor: crosshair;
    user-select: none;
}

.chart2selectedStatesDiv:hover {
    background-color: var(--xlightgray);
}

.chart2selectStatesLegendGap {
    margin-right: .375rem;
}

.axisLabels,
.tickMarkLabels {
    font-family: var(--font-family-sans-serif);
    font-size: .875rem;
    text-transform: uppercase;
    user-select: none;
}

.chart2plotLine {
    fill: none;
    stroke-width: 4;
}

/* Value set to zero in order to hide a few elements */
.domain {
    stroke-width: 0;
}

.tick line {
    stroke-width: 0.5;
    opacity: 0.2;
}

.chart2tooltipLabel {
    font-size: 1rem;
    font-weight: 600;
    text-anchor: middle;
    alignment-baseline: middle;
    fill: white;
    user-select: none;
    pointer-events: none;
}

.chart2zeroBaseline {
    stroke: var(--black);
    stroke-width: 0.25;
}

.chart2plotBackground {
    fill: rgba(243, 245, 248, .5);
}

/* Currently unused; the next four styles are related to 'sub-category tables' */
#chart2metricSubTable {
    max-width: 700px;
    max-height: 300px;
    overflow: scroll;
}

.chart2metricSubTableDIVs {
    padding: 12px;
    margin: 6px;
    background-color: rgba(243, 245, 248, .5);
    border: 1px solid var(--darkgray);
    user-select: none;
    cursor: pointer;
}

.chart2metricSubTableDIVsSelected {
    padding: 12px;
    margin: 6px;
    background-color: lightgreen;
    border: 1px solid var(--darkgray);
    user-select: none;
    cursor: pointer;
}

.chart2metricSubTableDIVs:hover {
    background-color: yellow;
}

/* PRINT STYLESHEET */

@media print {

    /* Remove unneeded page elements */
    nav, footer, .navbar, .main-nav, .article_icon-container, .selectState, #chart1dropdownPeriod, #chart1dropdownMetric, #chart2dropdownState, #chart2metricMain, .THF_button, .state_table_columnPlusMinus {
        display: none;
    }

    .article_headline h2 > span.highlight-sailblue {
        -webkit-box-shadow: none;
        box-shadow: none;
        background: transparent;
    }

    /* Set page width & margins */
    @page {
        size: Letter;
        margin: .5in .75in; 
        /* Use centimeters or inches, not pixels */
    }

    html, body {
        width: 216mm;
        height: 279mm;
    }

    .article_text-section .my-5 {
        margin-bottom: 1rem!important;
        margin-top: 1rem!important;
    }

    .state_scoreAndRank {
        font-size: 1.125rem;
        font-weight: 500;
    }

    .state_table_sectionWrapper {
        padding-bottom: .5in;
    }

    .state_table_sectionColl {
        font-weight: 500;
        border: 1px solid var(--lightgray);
    }

    .state_table_sectionContent td.state_table_columnCategory, .state_table_sectionContent td.state_table_columnScore {
        border-bottom: none;
    }

    td.state_table_columnCategory {
        width: 90%;
        padding: .125in .25in;
    }

    td.state_table_columnScore {
        width: 10%;
        padding: .125in .25in;
    }

    .state_table_headerRow td {
        font-size: 1.125rem;
        padding-bottom: 0;
    }

    /* Make color changes explicit and set page width & margins */
    body {
        background: #fff;
        color: #000;
        width: 100%;
        margin: 0;
        padding: 0;
    }

    /* Avoid odd page breaks */
    h1, h2, h3, h4, h5, h6 {
        page-break-after: avoid;
        /* Prevent headings from being printed at the bottom of the page */
    }

    article {
        page-break-before: always;
        /* Always start new articles on a new page */
    }

    /* Stlye text for print */
    .article_headline {
        font-size: 2rem;
        line-height: normal;
    }

    .article_body-copy h3 {
        margin-top: 1rem;
    }

    .article_body-copy p {
        /*font-family: var(--font-family-sans-serif);*/
        font-size: .875rem;
        line-height: normal;
        margin-bottom: .5rem;
    }

    img {
        page-break-inside: avoid;
        /* Prevent images from being split up */
    }

    /* Force background images & colors */
    @media print and (color) {
        * {
            -webkit-print-color-adjust: exact;
            print-color-adjust: exact;
        }
    }

    /* Display link URLs */                                
    .article_body-copy ul li a:after {
        content: " [" attr(href) "] "; /* Displays the URL after each anchor text */
        font-size: 80%;
    }

    .article_body-copy ul li a[href^="http://"]:after, a[href^="https://"]:after {
        content: " [" attr(href) "] "; /* Show only the URLs of external links */
        font-size: 80%;
        color: #0093d0;
    }

    .article_body-copy ul li a[href^="#"]:after {
        display: none; /* Hide internal links */
    }

    .article_body-copy ul li a {
        word-wrap: break-word; /* Break long URLs */
    }

    .article_body-copy ul li a {
        color: var(--black);
        text-decoration: none;
    }

    a.THF_button {
        text-decoration: none;
    }

}

@media all and (max-width: 1200px) {

    /* ELECTION INTEGRITY SCORECARD */

    .tgm_legend_wrapper.stacked {
        bottom: 15px;
        right: 15px;
    }

    .stateVstate_flag img {
        height: 120px;
        min-width: 200px;
        max-width: 200px;
    }

    .allstatescores thead td:nth-child(1), 
    .allstatescores tbody td:nth-child(1) {
        min-width: 90px;
    }
    .allstatescores thead td:nth-child(2), 
    .allstatescores tbody td:nth-child(2) {
        min-width: 145px;
    }
    .allstatescores thead td:nth-child(3), 
    .allstatescores tbody td:nth-child(3) {
        min-width: 85px;
    }
    .allstatescores thead td:nth-child(4), 
    .allstatescores tbody td:nth-child(4) {
        padding-left: 1rem;
    }

    .allstatescores thead tr > :nth-child(1), 
    .allstatescores tbody tr > :nth-child(1) {
        left: 0px;
    }
    .allstatescores thead tr > :nth-child(2), 
    .allstatescores tbody tr > :nth-child(2) {
        left: 90px;
    }
    .allstatescores thead tr > :nth-child(3), 
    .allstatescores tbody tr > :nth-child(3) {
        left: 235px;
    }

}

@media all and (max-width: 1024px) {

    .article_body-copy h3 {
        font-size: 1.125rem;
    }

    .modal-content {
        width: 70%;
    }

    .allstatescores thead tr > :nth-child(1), 
    .allstatescores tbody tr > :nth-child(1),
    .allstatescores thead tr > :nth-child(2), 
    .allstatescores tbody tr > :nth-child(2),
    .allstatescores thead tr > :nth-child(3), 
    .allstatescores tbody tr > :nth-child(3) {
        position: static;
    }

}

@media all and (max-width: 992px) {

    /* ELECTION INTEGRITY SCORECARD */

    .tgm_legend_wrapper.stacked {
        bottom: 10px;
        right: 10px;
    }

    .tgm_legend {
        font-size: .75rem;
    }

    .tgm_legend .rank1-10.stacked, .tgm_legend .rank11-20.stacked, .tgm_legend .rank21-30.stacked, .tgm_legend .rank31-40.stacked, .tgm_legend .rank41-51.stacked {
        width: 50px;
        padding: .1875rem .375rem;
    }

    .stateVstate_flag img {
        height: 90px;
        min-width: 150px;
        max-width: 150px;
    }

    .allstatescores thead td:nth-child(1), 
    .allstatescores tbody td:nth-child(1) {
        min-width: 85px;
    }
    .allstatescores thead td:nth-child(2), 
    .allstatescores tbody td:nth-child(2) {
        min-width: 145px;
    }
    .allstatescores thead td:nth-child(3), 
    .allstatescores tbody td:nth-child(3) {
        min-width: 75px;
    }

    .allstatescores thead tr > :nth-child(1), 
    .allstatescores tbody tr > :nth-child(1) {
        left: 0px;
    }
    .allstatescores thead tr > :nth-child(2), 
    .allstatescores tbody tr > :nth-child(2) {
        left: 85px;
    }
    .allstatescores thead tr > :nth-child(3), 
    .allstatescores tbody tr > :nth-child(3) {
        left: 230px;
    }
    
}

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

    /* TEMPLATE */

    .main-nav {
        height: 3.125rem;
    }

    .main-nav .heritage-brand span {
        display: none !important;
    }

    .main-nav .heritage-hamburger-menu {
        font-size: 1rem;
    }

    .global-footer .heritage-bell {
        font-size: 1.4375rem;
    }

    .article_headline {
        font-size: 3rem;
        line-height: 3.25rem;
    }

    .article_headline h2 {
        font-size: 2.25rem;
        line-height: 2.25rem;
    }

    .article_byline {
        font-size: 1.25rem;
    }

    .article_body-copy .pullquote {
        font-size: 1.5rem;
        line-height: 1.125;
    }
    
    .article_body-copy .pullquote:before {
        font-size: 9rem;
        left: -30px;
        top: -37px;
    }
    
    .article_body-copy .pullquote footer {
        font-size: 1.1875rem;
    }

    .collection-card-description h3 {
        font-size: 1.5rem;
    }

    /* ELECTION INTEGRITY SCORECARD */

    .tgm_legend_wrapper.stacked {
        bottom: 8px;
        right: 8px;
        padding: .25rem;
    }

    .tgm_legend {
        font-size: .6875rem;
    }

    .tgm_legend .rank1-10.stacked, .tgm_legend .rank11-20.stacked, .tgm_legend .rank21-30.stacked, .tgm_legend .rank31-40.stacked, .tgm_legend .rank41-51.stacked {
        width: 45px;
        padding: .125rem .375rem;
    }

    .tgm_legend_header {
        font-size: .75rem;
    }

    #state_flag img {
        min-width: 200px;
        max-width: 200px;
    }

    .state_table_columnPlusMinus {
        width: 15%;
    }

    .state_table_columnCategory {
        width: 65%;
    }

    .stateVstate_flag img {
        height: 80px;
        min-width: 135px;
        max-width: 135px;
    }

    .stateVstate_wrapper tr td > a {
        font-size: 1.125rem;
        line-height: 1;
    }

    .table-container {
        height: 640px;
    }

    .modal-content {
        width: 80%;
    }

    .allstatescores thead td {
        font-size: .75rem;
        padding: .875rem 1rem .5rem 1rem;
    }

    .allstatescores tbody td {
        font-size: .75rem;
        padding: .625rem 1rem;
    }

    .allstatescores thead td:nth-child(1), 
    .allstatescores tbody td:nth-child(1) {
        min-width: 70px;
    }
    .allstatescores thead td:nth-child(2), 
    .allstatescores tbody td:nth-child(2) {
        min-width: 130px;
    }
    .allstatescores thead td:nth-child(3), 
    .allstatescores tbody td:nth-child(3) {
        min-width: 60px;
    }

    .allstatescores thead tr > :nth-child(1), 
    .allstatescores tbody tr > :nth-child(1) {
        left: 0px;
    }
    .allstatescores thead tr > :nth-child(2), 
    .allstatescores tbody tr > :nth-child(2) {
        left: 75px;
    }
    .allstatescores thead tr > :nth-child(3), 
    .allstatescores tbody tr > :nth-child(3) {
        left: 205px;
    }

    .upDownArrows {
        margin-top: .5rem;
    }

    .maxValues {
        font-size: .625rem;
        font-weight: 400;
        margin-top: .375rem;
    }

}

@media all and (max-width: 576px) {

    /* TEMPLATE */

    .global-footer .privacy-copyright {
        line-height: 1.15rem;
    }

    .article_headline {
        font-size: 2.5rem;
        line-height: 2.5rem;
    }

    .article_headline h2 {
        font-size: 2rem;
        line-height: 2rem;
    }

    .article_byline {
        font-size: 1.125rem;
    }

    .article_body-copy .pullquote {
        margin: .25em 0 0 0;
    }

    .article_body-copy .accordion .card-body {
        padding: 0 1.9375rem;
    }

    .collection-card-description h3 {
        font-size: 1.5rem;
    }

    .heritage-checkbox {
        font-size: .75rem;
    }

    .heritage-checkbox .state label {
        font-weight: 500;
        letter-spacing: normal;
        text-indent: 1.25rem;
        min-width: calc(1em + 2px);
    }

    .heritage-checkbox .state label:after,
    .heritage-checkbox .state label:before {
        border: 2 solid transparent;
    }

    .heritage-checkbox.thf-icon .state .icon {
        font-size: 1em;
        width: calc(1em + 2px);
        height: calc(1em + 2px);
        text-align: center;
        line-height: normal;
        top: calc((0% - (100% - 1em)) - 8%);
    }

    .heritage-checkbox.thf-icon .state .icon:before {
        width: 100%;
        height: 100%;
    }

    .heritage-checkbox.thf-round.thf-icon .state .icon:before {
        -webkit-transform: scale(.6);
        -ms-transform: scale(.6);
        transform: scale(.6);
    }

    .THFtable-cell.order-0 {
        max-width: 35%;
    }

    .THFtable-cell.order-1 {
        order: 0;
        min-width: 65%;
    }

    .THFtable-4cols > .THFtable-cell {
        width: 50% !important;
    }

    .THFtable-cell {
        min-height: 3rem;
        padding: .25rem;
        max-width: 50;
    }

    .THFtable-cell.source {
        font-weight: 400;
        font-size: .75rem;
        line-height: 1.25;
    }

    .THFtable-cell.source p {
        margin-bottom: .25rem;
    }

    .dataviz-source {
        font-size: .75rem;
    }

    .dataviz-source p {
        margin-bottom: .25rem;
    }

    /* ELECTION INTEGRITY SCORECARD */

    #tooltip_tgm {
        width: 150px;
        padding: .5rem;
    }
    
    .toolTip_tgm_stateName {
        font-size: 1rem;
    }
    
    .toolTip_tgm_values {
        font-size: .875rem;
        margin-top: .375rem;
    }

    .state_table_columnPlusMinus {
        width: 20%;
    }

    .state_table_columnCategory {
        width: 60%;
    }

    .stateVstate_columnCategory {
        min-width: 170px;
    }

    .table-container {
        height: 380px;
    }

    .allstatescores thead td {
        font-size: .625rem;
        padding: .875rem .6875rem .5rem .6875rem;
    }

    .allstatescores tbody td {
        font-size: .625rem;
        padding: .4375rem .6875rem;
    }

    .allstatescores thead td:nth-child(1), 
    .allstatescores tbody td:nth-child(1) {
        min-width: 60px;
    }
    .allstatescores thead td:nth-child(2), 
    .allstatescores tbody td:nth-child(2) {
        min-width: 115px;
    }
    .allstatescores thead td:nth-child(3), 
    .allstatescores tbody td:nth-child(3) {
        min-width: 60px;
    }

    .allstatescores thead tr > :nth-child(1), 
    .allstatescores tbody tr > :nth-child(1) {
        left: 0px;
    }
    .allstatescores thead tr > :nth-child(2), 
    .allstatescores tbody tr > :nth-child(2) {
        left: 60px;
    }
    .allstatescores thead tr > :nth-child(3), 
    .allstatescores tbody tr > :nth-child(3) {
        left: 175px;
    }

    .maxValues {
        font-size: .5625rem;
    }

}

@media all and (max-width: 365px){

    .page-title {
        font-size: .8125rem;
    }

}