div.tooltip{
	display: none;
	z-index: 20;
	text-align: center;
}
.tooltip.visible{
	display: block;
}
.tooltip p{
	margin: 2px;
	font: 900 14px/14px "HaasText";
	letter-spacing: -0.04em;
}
.tooltip h3{
	padding: 0;
	margin: 2px 0 6px;
	font: 900 24px/24px "HaasTextBold";
}
.tooltip h3.dI{
	color: rgb(51, 102, 255);
}
.tooltip h3.dO{
	color: rgb(17, 68, 162);
}
.tooltip h3.rI{
	color: rgb(230, 28, 27);
}
.tooltip h3.rO{
	color: rgb(145, 28, 27);
}

.table{
	width: 100%;
	position: relative;
}

	#stateTable{
		margin-bottom: 1760px;
	}
	#issueTable{
		margin-bottom: 3280px;
	}


.t-row{
	position: absolute;
	width: 100%;
	background-color: rgba(255, 255, 255, .1);
	font-size: 12px;
	border-bottom: lightgray solid 1px;
}

.name{
	width: 20%;
	float: left;
	font: 900 16px/16px "HaasText";
	color: #46505A;
	padding-bottom: 8px;
}

.number{
	width: 10%;
	margin-right: 4%;
	font: 500 21px/21px "HaasTextBold";
	float: left;
	text-align: right;
	right: 0px;
	color: #000;
}

.bar-container{
	width: 64%;/*calc(100% - 255px);*/
	float: left;
	padding-top: 0px;
}

.dem-container{
	float: left;
	width: 50%;
	height: 10px
}
.dem-container div{
	float: left;
}

.gop-container{
	float: left;
	width: 50%;
	height: 10px
}
.dem-container div{
	float: right;
}
.bar{
	height: 18px;
	float: left;
}    


.row{
	width: 100%;
	position: relative;
	overflow: hidden;
	font: 100 12px/12px "HaasText";
	color: #87919B;
	margin-bottom: 8px;
}

.namenumber{
	float: left;
	width: 30%;
	min-height: 20px;
	margin-right: 4%;
	margin-bottom: 20px;
}
.namenumber li{
	width: 42%;
	float: left;
	margin-right: 6px;
	margin-bottom: 6px;
}
.namenumber li.thinner{
	width: 34%;
}
.namenumber span.abv{
	display: inline-block;
	float: left;
	width: 20px; height: 20px;
	color: #fff;
	margin: 4px 2px 0 0;
}
.namenumber a{
	position: relative;
	float: left;
	left: 6px;
	top: 2px;
}
span.dI{
	background-color: rgb(51, 102, 255);
}
span.dO{
	background-color: rgb(17, 68, 162);
}
span.rI{
	background-color: rgb(230, 28, 27);
}
span.rO{
	background-color: rgb(145, 28, 27);
}

.newkey{
	text-align: center;
	display: block;
}
.newkey a{
	margin-right: 20px;
	display: inline-block;
}
.newkey span.abv{
	float: left;
	text-align: center;
	display: inline-block;
	width: 24px;
	height: 16px;
}
.newkey span.typeof{
	float: left;
	margin-left: 10px;
	font-family: HaasText;
	font-size: 12px;
	font-style: normal;
	font-variant: normal;
	font-weight: 100;
	line-height: 18px;
	color: rgb(135, 145, 155);
}


.row .bar-container{
	min-height: 40px;
	position: relative;
	margin-left: 34%;
}  
.row .bar-container li.titleli{
	display: block;
	text-align: center;
	margin-bottom: 3px;
}
.row .bar-container li.tick{
	text-align: center;
	position: absolute;
	display: inline-block;
	width: 1px;
	overflow: visible;
	font-size: 11px;
}
.row .bar-container li.tick p{
	text-align: center;
	position: absolute;
	left: -100%;
	margin: 0;
}
.row .bar-container li.tick:after{
	content: "|";
	display: block;
	text-align: center;
	margin-top: 14px;
}




.row .bar-container li.tick.partie{
	top: 30px;
	position: absolute;
	width: 49%;
}
.row .bar-container li.tick.partie.dem{
	color: rgb(51, 102, 255);
	text-align: right;
	left: 0%;
}
.row .bar-container li.tick.partie.rep{
	color: rgb(230, 28, 27);
	text-align: left;
	left: 51.25%;
}






.title{
	color: black; 
	font-weight: bold;
	text-align: center;
	margin-top: 0.6em;  
	margin-bottom: 0.6em;  
	font: 900 24px/24px "HaasText";          
}

.table-buttons{
	clear: both;
	text-align: center;
	margin-bottom: 8px;
}

.sort-options{
	background-color: #DCE6F0;
	color: #646E78;
	padding: 10px;
	cursor: pointer;
	display: inline-block;
	margin-bottom: 10px;	
	font: 900 14px/14px "HaasText";    
}
.sort-options:hover{
	color: white;
	background-color: #5c42ab;
	
}
.sort-options.selected{
	color: white;
	background-color: #5c42ab;
	
}

#infographic-xl{
	width: 90%;
	margin: 0 auto;
}

.cta{
	text-align: center;
	margin: 0 0 20px;
	color: #646E78;
	letter-spacing: -0.02em;
	font: 900 13px/13px "HaasText";
}
.mobile{
	display: none;
}

.related_block{
	text-align: center;
	margin-bottom: 60px;
}
.related_link{
	text-decoration: none;
	font: 900 18px/24px "HaasTextBold";  
	color: rgb(0, 231, 180);;
	padding: 8px 16px 8px;
	background-color: rgb(92, 66, 171);
}
.related_link:hover{
	color: #fff;
}


.mainkey{
	width: 64%;
	position: relative;
	margin: 2px auto 20px;
	overflow: hidden;
	font: 900 13px/13px "HaasText";
}
.split{
	height: 16px;
	width: 1%
}
.mainkey li{
	float: left;
	display: inline-block;
	text-align: center;
	margin-bottom: 6px;
}
.mainkey .partie{
	width: 50%;
	float: left;
}
.mainkey .ptitle{
	width: 100%;
	font: 900 13px/13px "HaasTextBold";
}
.mainkey .specblock{
	float: left;
	width: 50%;
}
.mainkey .adtype{
	width: 100%;
	height: 20px;
	font-size: 10px;
	letter-spacing: -0.06em;
	line-height: 9px;
}
.mainkey .adtype.keyblock{
	height: 16px;
}
.mainkey .dI{
	background-color: rgb(51, 102, 255);
}
.mainkey .dO{
	background-color: rgb(17, 68, 162);
}
.mainkey .rI{
	background-color: rgb(230, 28, 27);
}
.mainkey .rO{
	background-color: rgb(145, 28, 27);
}


/* XL  */
@media only screen and (min-width: 1300px){
	#infographic-xl{
		width: 100%;
	}
}

@media only screen and (min-width: 1100px) and (max-width: 1302px){
	.namenumber li{
		width: 100%;
		float: none;
	}
	.namenumber li.thinner {
		width: 100%;
		display: inline-block;
	}
}


/* FULL-SIZE  */
@media only screen and (min-width: 769px) and (max-width: 1100px){
	.name{
		padding-bottom: 4px;
	  font-size: 15px;
	  line-height: 15px;
	  width: 100%;
	}
	.number{
	  margin-right: 4%;
		font-size: 17px;
		line-height: 13px;
		width: 22%;
		margin-right: 0%;
		text-align: left;
	}
	.namenumber{
	  width: 100%;
	}
	.bar-container{
		width: 66%;
		margin: 0 0 14px;
	}
	.bar{
		height: 16px;
	}
	.row .bar-container{
		width: 66%;
		margin-left: 22%;
	}

	.namenumber li{
		width: inherit;
		float: left;
	}
	.namenumber li.thinner {
		width: inherit;
		margin-right: 36px;
		display: inline-block;
		float: left;
	}
}

/* TABLET window less than 768px wide */
@media only screen and (min-width: 569px) and (max-width: 768px)  {
	.name{
		padding-bottom: 4px;
	  font-size: 15px;
	  line-height: 15px;
	  width: 100%;
	}
	.number{
	  margin-right: 4%;
		font-size: 17px;
		line-height: 13px;
		width: 22%;
		margin-right: 0%;
		text-align: left;
	}
	.namenumber{
	  width: 100%;
	}
	.bar-container{
		width: 66%;
		margin: 0 0 14px;
	}
	.bar{
		height: 16px;
	}
	.row .bar-container{
		width: 66%;
		margin-left: 22%;
	}

	.cta.mobile{
		display: block;
	}
	.cta.desktop{
		display: none;
	}

	.namenumber li{
		width: inherit;
		float: left;
	}
	.namenumber li.thinner {
		width: inherit;
		margin-right: 36px;
		display: inline-block;
	}
	.mainkey .adtype{
		height: 32px;
	}
}


/* MOBILE window less than 568px wide */
@media only screen and (max-width: 568px)  {
	.name{
		padding-bottom: 4px;
	  font-size: 15px;
	  line-height: 15px;
	  width: 100%;
	}
	.number{
	  margin-right: 4%;
		font-size: 15px;
		line-height: 15px;
		width: 22%;
		margin-right: 0%;
		text-align: left;
	}
	.namenumber{
	  width: 100%;
	}
	.bar-container{
		width: 66%;
		margin: 0 0 14px;
	}
	.bar{
		height: 16px;
	}
	.row .bar-container{
		width: 66%;
		margin-left: 22%;
	}
	.row .bar-container li.tick.partie {
		top: 42px;
	}
  #inner-content {
    margin-top: 30px;
  }

	.namenumber li{
		width: inherit;
		float: left;
	}
	.namenumber li.thinner{
		width: inherit;
		margin-right: 20px;
		display: inline-block;
	}
	.cta.mobile{
		display: block;
	}
	.cta.desktop{
		display: none;
	}

  .article-title, .video-title, .cta-text {
    font-size: 34px;
    line-height: 38px;
  }
  .dek, .byline-name, .module-description {
    font-size: 16px;
    line-height: 20px;
  }
  .tophat .tophat__links a {
    font-size: 0.55rem;
  }
  	.mainkey li{
		float: none;
		display: inline-block;
		text-align: center;
		margin-bottom: 6px;
	}
	.mainkey .partie{
		width: 100%;
	}
	.mainkey .ptitle{
		width: 100%;
		font: 900 13px/13px "HaasTextBold";
	}
	.mainkey .specblock{
		width: 100%;
	}
	.mainkey .adtype{
		width: 100%;
		height: 20px;
		font-size: 10px;
		letter-spacing: -0.05em;
		line-height: 9px;
	}
	.mainkey .adtype.shorty{
		line-height: 22px;
	}
	.sort-options {
		font: 900 12px/12px "HaasText";
	}
	.newkey a {
		display: inline-block;
		width: 100%;
	}
}




/* Mobile header below 768px wide */
@media only screen and (max-width: 1024px)  {
  #header-message {
    display: none;
  }
 
}
@media only screen and (max-width: 768px)  {
	.tophat__links {
		margin: 0px 0px;
	}
  #header-message {
    display: none;
  }
  #header-divider-right {
    display: none;
  }
  #header-icon-twitter {
    display: none;
  }
  #header-icon-fb {
    display: none;
  }
  #header-rule {
    display: none;
  }
  #header-logo {
    display: none;
  }
  #header-logo-mobile {
    display: block;
  }
}
