

@font-face {
	font-family: 'Open Sans';
	src: url('/_fonts/open-sans/400-normal.woff') format('woff');
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: 'Open Sans';
	src: url('/_fonts/open-sans/400-italic.woff') format('woff');
	font-weight: 400;
	font-style: italic;
}

@font-face {
	font-family: 'Open Sans';
	src: url('/_fonts/open-sans/700-normal.woff') format('woff');
	font-weight: 700;
	font-style: normal;
}

@font-face {
	font-family: 'Open Sans';
	src: url('/_fonts/open-sans/700-italic.woff') format('woff');
	font-weight: 700;
	font-style: italic;
}

@font-face {
	font-family: 'Open Sans';
	src: url('/_fonts/open-sans/800-normal.woff') format('woff');
	font-weight: 800;
	font-style: normal;
}

@font-face {
	font-family: 'Open Sans';
	src: url('/_fonts/open-sans/800-italic.woff') format('woff');
	font-weight: 800;
	font-style: italic;
}


body {
	font-family: 'Open Sans', sans-serif;
	font-size: 18px;
	line-height: 1.55555555556;
	margin: 0;
}

@media (max-width: 360px) {
	body {
		font-size: 5vw;
	}
}

.site-section {
	max-width: 60em;
	margin: 0 auto;
	padding: 0 1em;
}

.site-section.inset {
	max-width: 55em;
}


body {
	min-height: calc(100vh);
	display: flex;
	flex-direction: column;
	justify-content: stretch;
}

body:after {
	content: '';
	flex: 1 1 auto;
	order: 9998;
}

.site-footer {
	background: #E6EBF1;
	color: #003875;
	bottom: 0;
	order: 9999;
	line-height: 1.55555555556;
}

.site-footer .site-section {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.site-footer .logo {
	margin: 0;
}

.site-footer .logo img {
	display: block;
	height: 2em;
	margin-top: -.22222222222em;
}

@media (max-width: 960px) {
	.site-footer span.vr:first-of-type {
		display: block;
		height: 0;
		overflow: hidden;
	}
}

@media (max-width: 580px) {
	.site-footer .site-section {
		flex-direction: column;
		text-align: center;
		padding-bottom: 1em;
	}
}

@media (max-width: 400px) {
	.site-footer .nav {
		font-size: 4.5vw;
	}
}

.site-footer a {
	color: inherit;
	text-decoration: none;
}

.site-footer a:hover {
	text-decoration: underline;
}


nobr {
	display: inline;
	white-space: nowrap;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.25;
	margin-bottom: 0;
}

h1 {
	font-weight: 800;
}

.nav .vr {
	display: inline-block;
	width: 0;
	overflow: hidden;
	margin: 0 .2777777778em;
}

.nav a {
	white-space: nowrap;
}

h1 a.back {
	font-weight: normal;
	text-decoration: none;
	line-height: 1;
	width: 1em;
	font-size: 75%;
	text-align: center;
	display: inline-block;
	color: inherit;
}

h1 a.back:hover {
	background: #DDD;
}

a.external {
	background: no-repeat 100% 75%/.8888888889em url(/_images/icons/external-DB9928.svg);
	padding-right: 1.1111111111em;
}

.colored-links a,
.resolution-history .colored-links a,
.resolution-history .colored-links a:hover,
.resolution-history .colored-links a:focus {
	color: #003875;
	text-decoration: underline;
	text-decoration-color: #DB9928;
	text-underline-offset: 0.125em;
}

.colored-links a:visited,
.resolution-history .colored-links a:visited {
	color: #2A6A93;
}

.colored-links a:active,
.resolution-history .colored-links a:active {
	color: #900027;
}


.success {
	color: #007F69;
}

.failure {
	color: #900027;
}

.postponed {
	color: #003875;
}


.site-header {
	background: #003875;
	color: white;
}

.site-header .site-section {
	display: flex;
	align-items: center;
	height: 4.5em;
}

.site-header h2 {
	position: absolute;
	top: 1.25em;
	left: 50%;
	margin: 0;
	margin-left: -6.1em;
	font-size: 100%;
	background: no-repeat top center/100% url(/_images/logo-white.svg);
}

.site-header h2 a {
	display: block;
}

.site-header h2 img {
	visibility: hidden;
	display: block;
	height: 2em;
}

.site-header .nav {
	flex: 1 1 auto;
	justify-content: space-between;
	display: flex;
	font-weight: 800;
	margin: 0;
	padding-top: .35em;
}

.site-header .nav a {
	text-decoration: underline;
	text-decoration-color: #DB9928;
	text-underline-offset: .125em;
	color: inherit;
}

.site-header .nav .vr {
	display: none;
}

.site-header .nav > * {
	flex: 1 0 0;
	min-width: 0;
	text-align: center;
	margin: 0;
}

.site-header .nav > .nav-about {
	order: 1;
	flex-grow: 0.75;
	text-align: right;
}

.site-header .nav > .nav-subscribe {
	order: 2;
	flex-grow: 1.25;
}

.site-header .nav:after {
	order: 3;
	content: '';
	flex: 0 0 12.2em;
}

.site-header .nav > .nav-donate {
	order: 4;
}

.site-header .nav > .nav-search {
	order: 5;
	display: flex;
	background: white;
	border-radius: .25em;
}

.site-header .nav > .nav-search > * {
	padding: 0;
	border: none;
	border-radius: .25em;
	font: inherit;
	font-weight: normal;
}

.site-header .nav > .nav-search input {
	flex: 1 1 0;
	min-width: 0;
	padding-left: .5em;
	background: none;
}

.site-header .nav > .nav-search input::placeholder {
	color: #003875;
	opacity: 1;
}

.site-header .nav > .nav-search input:focus::placeholder {
	color: #999;
}

.site-header .nav > .nav-search button {
	flex: 0 0 2em;
	height: 1.55555555556em;
	text-indent: -9999%;
	overflow: hidden;
	background: no-repeat center/1em url(/_images/icons/magnifying-glass-003875.svg);
	cursor: pointer;
}

@media (max-width: 720px) {
	.site-header h2 {
		position: static;
		margin: 0;
	}

	.site-header .nav {
		flex-direction: column;
		justify-content: start;
		position: fixed;
		z-index: 20;
		background: #003875;
		top: 0;
		bottom: 0;
		left: -17em;
		width: 17em;
		transition: transform .2s;
		box-sizing: border-box;
		padding: 1em;
	}

	.site-header #menu-visible:checked ~ .nav,
	.site-header .nav:focus-within {
		transform: translateX(17em);
	}

	.site-header .nav a {
		font-size: 155.555555556%;
	}

	.site-header .nav > .nav-search {
		order: 1;
		flex-grow: 0;
		margin: 1.5em 0;
	}
	
	.site-header .nav > .nav-about,
	.site-header .nav > .nav-subscribe,
	.site-header .nav > .nav-donate {
		margin-top: 1em;
		flex-grow: 0;
		text-align: left;
	}

	.site-header .nav > .nav-about {
		order: 2;
	}

	.site-header .nav > .nav-subscribe {
		order: 3;
	}

	.site-header .nav > .nav-donate {
		order: 4;
	}

	.site-header .nav:after {
		display: none;
	}

	.site-header .site-section {
		justify-content: space-between;
	}

	.site-header .site-section > [for="menu-visible"] {
		display: block;
		width: 1.5em;
		height: 1.5em;
		cursor: pointer;
		background: no-repeat center right/100% url(/_images/icons/hamburger-menu-white.svg);
	}
	
	.site-header #menu-visible:checked ~ [for="menu-visible"]:after,
	.site-header .nav:focus-within ~ [for="menu-visible"]:after {
		content: '';
		position: fixed;
		z-index: 10;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		background: black;
		opacity: .5;
		cursor: default;
	}
}


.search-nav {
	background: #E6EBF1;
	padding: 1.6666666667em 0;
}

.search-nav .nav {
	display: flex;
	border-radius: .5555555556em;
	overflow: hidden;
}

.search-nav .nav span {
	flex: 1 0 0;
	min-width: 0;
}

.search-nav .nav .vr {
	flex: 0 0 .11111111111em;
	margin: 0;
	visibility: hidden;
}

.search-nav .nav a {
	display: block;
	text-align: center;
	color: white;
	background: no-repeat center/auto 5em #4E5D71;
	background-blend-mode: soft-light;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 800;
	font-size: 133.333333333%;
	line-height: 4em;
	transition: background-size .1s;
}

.search-nav .nav .nav-legislators a {
	background-image: url(/_images/search-nav/legislators@2x.jpg?v=2);
}

.search-nav .nav .nav-bills a {
	background-image: url(/_images/search-nav/bills@2x.jpg?v=2);
}

.search-nav .nav .nav-votes a {
	background-image: url(/_images/search-nav/votes@2x.jpg?v=2);
}

.search-nav .nav .nav-laws a {
	background-image: url(/_images/search-nav/laws@2x.jpg?v=2);
}

@media (-webkit-max-device-pixel-ratio: 1), (max-resolution: 96dpi)
{
	.search-nav .nav .nav-legislators a {
		background-image: url(/_images/search-nav/legislators.jpg?v=2);
	}

	.search-nav .nav .nav-bills a {
		background-image: url(/_images/search-nav/bills.jpg?v=2);
	}

	.search-nav .nav .nav-votes a {
		background-image: url(/_images/search-nav/votes.jpg?v=2);
	}

	.search-nav .nav .nav-laws a {
		background-image: url(/_images/search-nav/laws.jpg?v=2);
	}
}

.search-nav .nav a:hover,
.search-nav .nav a:focus {
	background-size: auto 5.2222222222em;
	outline: none;
}

.search-nav .nav .selected.nav-legislators a,
.search-nav .nav .nav-legislators a:hover,
.search-nav .nav .nav-legislators a:focus,
.home-search-nav .nav .nav-legislators a {
	background-color: #DB9928;
	background-blend-mode: multiply;
}

.search-nav .nav .selected.nav-bills a,
.search-nav .nav .nav-bills a:hover,
.search-nav .nav .nav-bills a:focus,
.home-search-nav .nav .nav-bills a {
	background-color: #003875;
	background-blend-mode: multiply;
}

.search-nav .nav .selected.nav-votes a,
.search-nav .nav .nav-votes a:hover,
.search-nav .nav .nav-votes a:focus,
.home-search-nav .nav .nav-votes a {
	background-color: #900027;
	background-blend-mode: multiply;
}

.search-nav .nav .selected.nav-laws a,
.search-nav .nav .nav-laws a:hover,
.search-nav .nav .nav-laws a:focus,
.home-search-nav .nav .nav-laws a {
	background-color: #006A62;
	background-blend-mode: multiply;
}

@media (max-width: 860px) {
	.search-nav .nav {
		max-width: 27.4444444444em;
		margin: 0 auto;
		flex-wrap: wrap;
	}

	.search-nav .nav span {
		flex: 1 1 40%;
	}

	.search-nav .nav-bills + .vr {
		flex-basis: 100%;
		height: .11111111111em;
	}
}

@media (max-width: 400px) {
	.search-nav .nav a {
		font-size: 6vw;
	}
}


.official-title {
	background: #E6EBF1;
	padding: .6666666667em 0 0;
}

.official-title h1 {
	margin-top: 0;
}

.official-title .nav {
	display: flex;
	margin-bottom: 0;
}

.official-title .nav > * {
	border-radius: .5555555556em;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	transition: color .1s, background .1s;
	background: #8693A6;
	color: white;
	text-decoration: none;
	text-transform: uppercase;
	text-align: center;
	font-weight: 800;
	line-height: 2em;
	margin: 0.1111111111em 0.05555555556em 0;
	width: 9.05555555556em;
}

@media (max-width: 720px) {
	.official-title .nav {
		flex-wrap: wrap;
		justify-content: start;
	}

	.official-title .nav > * {
		width: auto;
		padding: 0 .5555555556em;
		flex: 0 0 auto;
	}
}

.official-title .nav > a:hover,
.official-title .nav > a:focus {
	background: #003875;
}

.official-title .nav > a:active {
	background: #900027;
}

.official-title .nav > b {
	background: white;
	color: #003875;
}

.official-title .vr {
	display: none;
}


.resolution-title {
	margin-bottom: 2em;
}

.resolution-title h2,
.resolution-title details > summary {
	margin: .5em 0 0;
	font-size: 100%;
	font-weight: bold;
}


.resolution-analysis {
	margin: 2em 0;
	border-radius: .20833333333em;
	padding: 1.2222222222em;
	overflow: hidden;
	background: #E6EBF1;
}

.resolution-analysis h3,
.resolution-analysis h4 {
	color: #003875;
	margin-top: 0;
	font-weight: 800;
	padding-left: 1.6666666667em;
	margin-left: -.0555555556em;
	background: no-repeat left center/1.25em url(/_images/icons/analysis.svg);
}

.resolution-analysis h3 {
	font-size: 125%;
}

.resolution-analysis p {
	margin: .5em 0;
}

.resolution-analysis p:last-child {
	margin-bottom: 0;
}


details > summary {
	list-style: none;
	cursor: pointer;
	position: relative;
	display: inline-block;
}

details > summary::-webkit-details-marker {
	display: none;
}

details > summary::before {
    content: '';
	 position: absolute;
	 top: 0;
	 left: -1em;
	 width: .5555555555em;
	 height: 1.5555555555em;
	 background: no-repeat center/100% url(/_images/icons/arrow-head-right-black.svg);
	 transition: transform .1s;
}

details[open] > summary:before {
	transform: rotate(90deg);
}


.resolution-history {
	margin: 2em 0 2em 10em;
	position: relative;
}

.resolution-history * {
	margin: 0;
}

.resolution-history a {
	color: inherit;
	text-decoration: none;
}

.resolution-history a:hover,
.resolution-history a:focus {
	text-decoration: underline;
}

.resolution-history .links {
	font-weight: normal;
}

.resolution-history input.show-analysis:not(:checked) ~ .analysis {
	display: none;
}

.resolution-history h2,
.resolution-history h3 {
	line-height: 1.5em;
}

.resolution-history h2 {
	background: #003875;
	color: white;
	margin-top: 0.33333333333em;
	margin-left: -6em;
	padding-left: 6em;
	padding-right: .25em;
	font-size: 166.66666666666%;
	font-weight: 800;
	border-radius: .125em;
}

.resolution-history h3 {
	position: absolute;
	width: 7.5em;
	text-align: right;
	right: 100%;
	font-size: inherit;
	margin-top: .5em;
	margin-right: 1.25em;
}

.resolution-history h3.for-result {
	margin-top: 0;
}

.resolution-history h2 + h3 {
	color: white;
	margin-top: -1.95em;
}

.resolution-history h2.success {
	background: #006A62;
}

.resolution-history h2.failure {
	background: #900027;
}

.resolution-history .analysis,
.resolution-history details > summary ~ * {
	color: #555;
	font-weight: normal;
}

.resolution-history .action
{
	font-weight: bold;
}

.resolution-history .action {
	margin-top: .5em;
}

.resolution-history .action .success,
.resolution-history .action .failure,
.resolution-history .action .postponed {
	font-weight: bold;
}

@media (max-width: 640px) {
	.resolution-history {
		margin-left: 0;
	}

	.resolution-history h2 {
		margin-left: 0;
		padding-left: .25em;
	}

	.resolution-history h3 {
		font-style: italic;
		font-weight: normal;
		position: static;
		width: auto;
		text-align: left;
		margin-right: 0;
	}

	.resolution-history h3:after {
		content: ':';
	}

	.resolution-history h3:last-child:after {
		content: none;
	}
	
	.resolution-history h3,
	.resolution-history h3.for-result,
	.resolution-history h2 + h3 {
		margin-top: .5em;
	}
	
	.resolution-history h3 + .action {
		margin-top: 0;
	}
}


table.roll-call {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	margin: 1em 0;
}

table.roll-call th,
table.roll-call td {
	padding: 0;
}

table.roll-call th .vr {
	font-weight: normal;
	margin: 0 .25em;
}

table.roll-call td {
	vertical-align: top;
}

table.roll-call td + td {
	border-left: .25em solid #DDD;
	padding-left: 1em;
}

table.roll-call td.yeas {
	color: #007F69;
}

table.roll-call td.nays {
	color: #900027;
}

table.roll-call td.not-voting {
	color: #003875;
}

table.roll-call a {
	color: inherit;
	text-decoration: none;
}

table.roll-call a:hover {
	text-decoration: underline;
}

table.roll-call svg {
	height: .5em;
	display: block;
	margin: .5em 0;
}

table.roll-call ul {
	list-style: none;
	padding: 0;
	margin: 0;
	column-gap: 0;
}

table.roll-call ul li {
	margin-right: .5em;
}

table.roll-call._5_1 col:first-child,
table.roll-call._1_5 col:last-child {
	width: 83.333333333%;
}

table.roll-call._4_2 col:first-child,
table.roll-call._2_4 col:last-child {
	width: 66.666666666%;
}

table.roll-call._3_3 col {
	width: 50%;
}

table.roll-call td ul {
	column-count: 6;
}

table.roll-call._5_1 td:first-child ul,
table.roll-call._1_5 td:last-child ul {
	column-count: 5;
}

table.roll-call._4_2 td:first-child ul,
table.roll-call._2_4 td:last-child ul {
	column-count: 4;
}

table.roll-call._3_3 td ul {
	column-count: 3;
}

table.roll-call._2_4 td:first-child ul,
table.roll-call._4_2 td:last-child ul {
	column-count: 2;
}

table.roll-call._1_5 td:first-child ul,
table.roll-call._5_1 td:last-child ul {
	column-count: 1;
}

@media (max-width: 1116px) {
	table.roll-call._4_1 col:first-child,
	table.roll-call._1_4 col:last-child {
		width: 80%;
	}

	table.roll-call._3_2 col:first-child,
	table.roll-call._2_3 col:last-child {
		width: 60%;
	}

	table.roll-call td ul {
		column-count: 5;
	}

	table.roll-call._4_1 td:first-child ul,
	table.roll-call._1_4 td:last-child ul {
		column-count: 4;
	}

	table.roll-call._3_2 td:first-child ul,
	table.roll-call._2_3 td:last-child ul {
		column-count: 3;
	}

	table.roll-call._2_3 td:first-child ul,
	table.roll-call._3_2 td:last-child ul {
		column-count: 2;
	}

	table.roll-call._1_4 td:first-child ul,
	table.roll-call._4_1 td:last-child ul {
		column-count: 1;
	}
}

@media (max-width: 936px) {
	table.roll-call._3_1 col:first-child,
	table.roll-call._1_3 col:last-child {
		width: 75%;
	}

	table.roll-call._2_2 col:first-child,
	table.roll-call._2_2 col:last-child {
		width: 50%;
	}

	table.roll-call td ul {
		column-count: 4;
	}

	table.roll-call._3_1 td:first-child ul,
	table.roll-call._1_3 td:last-child ul {
		column-count: 3;
	}

	table.roll-call._2_2 td:first-child ul,
	table.roll-call._2_2 td:last-child ul {
		column-count: 2;
	}

	table.roll-call._1_3 td:first-child ul,
	table.roll-call._3_1 td:last-child ul {
		column-count: 1;
	}
}

@media (max-width: 756px) {
	table.roll-call._2_1 col:first-child,
	table.roll-call._1_2 col:last-child {
		width: 66.666666666%;
	}

	table.roll-call td ul {
		column-count: 3;
	}

	table.roll-call._2_1 td:first-child ul,
	table.roll-call._1_2 td:last-child ul {
		column-count: 2;
	}

	table.roll-call._1_2 td:first-child ul,
	table.roll-call._2_1 td:last-child ul {
		column-count: 1;
	}
}

@media (max-width: 576px) {
	table.roll-call._1_1 col:first-child,
	table.roll-call._1_1 col:last-child {
		width: 50%;
	}

	table.roll-call td ul {
		column-count: 2;
	}

	table.roll-call._1_1 td:first-child ul,
	table.roll-call._1_1 td:last-child ul {
		column-count: 1;
	}
}

