:root {
	--nearly-black: #363030;
	--darkest-grey: #5E5855;
	--dark-grey: #797472;
	--grey: #9E9692;
	--light-grey: #CFC7C4;
	--lightest-grey: #E9E4E2;
	--most-light-grey: #F7F6F5;
	--white: #FFFFFF;
	--orange: #EE6C35;
	--light-orange: #F8A37F;
	--lighter-orange: #FBD1BF;
	--lightest-orange: #FFECE4;
	--teal: #44ACA4;
	--light-teal: #6DCAC3;
	--lighter-teal: #B6DAD7;
	--lightest-teal: #E2F5F4;
	--system: #345ABC;
	--light-system: #7993D5;
	--lighter-system: #BFCCEE;
	--lightest-system: #E2EAFF;
}

a:hover {
	cursor: pointer;
	/* stopping macOS from displaying an insertion point cursor over linked images that contain text */
}

/* #step-1, #step-2, #step-3, #error, #address-error,#step-2-campaign-share {
	display: none;
} */
#step-1, #error, #address-error {
	display: none;
}
#statesenate, #statehouse, #StateSenate, #StateHouse {
	max-height: none;
}
.heading-1 {
	margin-top: 0px;
}
.antidemocrat,.action-section.purple {
	padding-top: 44px;
}
.graph {
	margin-top: 0px;
	margin-bottom: 24px;
}
.basic-content-area {
	margin-top: 0px;
	margin-bottom: 0px;
}
.tag {
	padding: 0px 8px;
	font-size: 12px;
}
#error, #address-error {
	display: none;
}
.legislatorlookup {
	margin-top: -70px;
	padding-inline: 16px;
}
.dropdown-toggle,.dropdown-toggle.w--open {
	padding-left: 0;
}
.empty-state {
	margin: 20px 0 10px 0;
	background-color: #F4F1EF;
}
.w-form-done,.w-form-fail
{
	text-align: left;
}
div.avatar.medium img.image {
	position: relative;
	z-index: 1;
	min-height: 80px;
	min-width: 80px;
	width: auto;
	height: auto;
	object-fit: cover;
}
img.image {
	position: relative;
	z-index: 1;
	/*min-height: 80px;
	min-width: 80px;
	width: auto;
	height: auto;*/
	height: 60px;
	width: 60px;	
	object-fit: cover;
}
.w-nav-overlay {
	padding-bottom: 100%;
}
@supports (background: -webkit-named-image(i)) {
	.w-nav-overlay {
		padding-bottom: 100vh;
	}
}
.navbar {
	border-width: 0px;
	border-bottom-width: 1px;
}
#nav-icon1
{
	cursor: pointer;
}
#nav-icon1 span{
  display: block;
  margin:2px;
  height: 3px;
  width:16px;
  background: #5C5755;
  border-radius: 9px;
}

.donate-button
{
	position: relative;
	float: right;
	top: 11px;
	display: inline-block;
	padding-right: 15px;
	/*padding-left: 15px;*/
	padding-left: 0px;
	/*background-color: var(--system);*/
	background-color: var(--white);
	margin-left: 20px;
	margin-right: 0px;
	color: var(--system);
}

@media screen and (max-width: 991px)
{
	.donate-button
	{
		margin-right: 5px;
	}
	.nav-menu {
		border-bottom-style: solid;
		border-bottom-width: 1px;
		border-bottom-color: #cfc8c5;
	}
}
.nav-link {
	margin-right: auto;
	margin-left: auto;
	padding-right: auto;
	padding-left: auto;
	color: var(--nearly-black);
}
.nav-link:hover,.nav-link.w--current:hover {
	color: #5d5755;
}
.nav-link.w--current {
	color: #5d5755;
}
.button.campaign-website {
	margin-top: 8px;
}
.heading-2.candidatecard a {
	color: var(--nearly-black);
}
#wf-form-Email-Form-done, #wf-form-Email-Form-fail
{
	text-align: center; 
	padding-top: 15px; 
	padding-bottom: 25px;
}
form#wf-form-Email-Form.form-2._400px.center
{
	justify-content: center;
}
.form label
{
	text-align: left;
}
details summary::-webkit-details-marker {
  display:none;
}
form#wf-form-Email-Form.demo-form.form-2._400px.center
{
	justify-content: flex-start;
}
#wf-form-Email-Form-done-1, #wf-form-Email-Form-fail-1
{
	padding-top: 15px; 
	padding-bottom: 0px;
	white-space: nowrap;
	padding-left: 0px;
}

@media screen and (max-width: 479px)
{
	.email-sign-up {
		width: 100%;
	}
}

.basic-content-area.contact 
{
	/* until that tally form is implemented */
	margin-bottom: 0px;
}

div#w-dropdown-toggle-0.dropdown-toggle.w-dropdown-toggle div.paragraph p.link.inline
{
	white-space: nowrap;
}

.candidate-card-item {
	border: 0px;
	margin: 8px;
	border-radius: 1.2rem;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16);
}

.candidate-card-title {
	border-radius: 0 0 1.2rem 1.2rem;
}

div.position-banner.candidate-card-item {
	margin: 0px;
	border-radius: 1.2rem 1.2rem 0 0;
	padding: 10px 8px 10px 18px;
}


@media screen and (max-width: 479px)
{
	.heading-5 {
		margin-top: 6px;
	}
}

.heading-1.raceresults
{
	margin: 0px;
	line-height: 80%;
}
a#contact-guide-sen.button-2.resultcard.ga-event.w-button
{
	white-space: nowrap;
}
.collection-item
{
	border: 0px;
	margin: 8px;
	border-radius: 1.2rem;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16);
}
.collection-list.current-senator-list
{
	padding-bottom: 20px;
	border: 0px;
}
.grid {
	grid-column-gap: 0px;
}
.public-statement
{
	border-left: 12px solid;
	border-top: none;
	border-bottom: none;
	border-right: none;
	margin: 8px 7px 10px 7px;
}
.candidateresultwrapper.jetboost-list-wrapper-wzqw.jetboost-list-wrapper-m93o {
	margin-top: 0px;
}

.data.current-legislator {
	margin-top: auto;
	margin-bottom: auto;
}
.collection-item {
	margin-top: auto;
	margin-bottom: auto;
}
body.body div.hero-area.wf-section div.basic-content-area.vertical.w-container h3.heading-3
{
	text-align: left;
}
a#action-source.body-copy-small.link
{
	white-space: nowrap;
	margin-top: auto;
}
h3#beforeinstascroller
{
	margin-top: 40px;
}
.heading-3.on-dark a
{
	color: var(--white);
	text-decoration: underline;
}
.step-3 {
	padding-bottom: 20px;
}
.grid.current-legislators {
	padding-bottom: 0px;
}
.graph-background {
	background-color: #F4F1EF;
}
.action-section {
	background-color: #F4F1EF;
}
.actionscroller
{
	padding-left: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-top: 25px;
	/*margin-bottom: 25px;*/
}
body.body div.hero-area.wf-section div.action-section.actionscroller.wf-section div.basic-content-area.vertical.w-container div.dropdown-2.w-dropdown
{
	margin-bottom: 15px;
}
img.arrow-link
{
	margin-bottom: 1px;
}
.legislator-context
{
	text-align: center;
	padding-top: 0px;
}
@media screen and (max-width: 767px) {
	.legislator-hero 
	{
		-webkit-justify-content: center;
		justify-content: center;
	}
}

.legislator-context p.body-copy-large
{
	display: block;
	margin-bottom: 20px;
}
body.body div.hero-area.wf-section div.basic-content-area.vertical.w-container.legislator-context p.body-copy-large.legislator-hero
{
	text-align: center;
}
.graph-background.white {
  background-color: var(--white);
}
body.body div.graph-background.white.wf-section div.basic-content-area.graphs-2.white.w-container h3.heading-3.left{
	margin-bottom: 16px;
}
body.body div.graph-background.white.wf-section div.basic-content-area.graphs-2.w-container h3.heading-3.left
{
	margin-bottom: 16px;
}
.legislatorlookup.election-2022 {
	margin-top: 0px;
	padding-inline: 16px
}

.three-images {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 24px;
  margin-bottom: 24px;
}
.seat-holder {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: auto;
  margin-left: auto;
  padding-right: 16px;
  padding-left: 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-self: stretch;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  grid-column-gap: 8px;
  grid-row-gap: 8px;
}

.election-2022-search
{
	margin-top: -50px;
}
img.image-11,img.image-10
{
	margin-top: 19px;
}
@media screen and (max-width: 991px) 
{
	img.image-11,img.image-10
	{
		margin-top: 15px;
	}
}
@media screen and (max-width: 767px)
{
	.three-images {
		max-width: none;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		grid-column-gap: 24px;
		grid-row-gap: 24px;
	}
	.election-2022-search
	{
		margin-top: -40px;
	}
	img.image-11,img.image-10
	{
		margin-top: 0px;
	}
}
@media screen and (max-width: 479px)
{
	.three-images {
		grid-column-gap: 64px;
		grid-row-gap: 64px;
	}
	.seat-holder {
		max-width: 100%;
		padding-right: 0px;
		padding-left: 0px;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-align-self: center;
		-ms-flex-item-align: center;
		-ms-grid-row-align: center;
		align-self: center;
	}
	.election-2022-search
	{
		margin-top: -10px;
	}
}

div.seat-holder p.body-copy.no-margin
{
	text-align: center;
}
.collection-list,.collection-list.jetboost-list-wrapper-wm1w {
	grid-column-gap: 0px;
}
h3.heading-5.raceresults,h3.heading-5.modal-heading
{
	margin-bottom: 20px;
	text-align: left;
	text-decoration: none;
}
.modal {
  /* padding: 20px;
  max-width: 50ch;
  border: 0;
  border-radius: 0.5rem;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16);

  & > * {
	margin: 0 0 0.5rem 0;
  } */
  
	  background: none;
	border: none;
	padding: 0px;
}
.modal-inside
{
  padding: 20px;
  max-width: 50ch;
  border: 0;
  border-radius: 0.5rem;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16);
  background: var(--white);
}
	
#modal p.body-copy-large
{
	margin-top: 20px;
}

.modal::backdrop {
  background: rgba(54, 48, 48, 0.6);
}

.close-button {
  color: #aaa;
  float: right;
  font-size: 40px;
  cursor: pointer;
  padding: 10px;
  position: relative;
  top: -10px;
  right: -10px;
}

#voting-guide-field
{
	width: 100%;
	border: 1px solid #908A88;
	margin-top: 20px;
	margin-bottom: 0px;
	padding: 5px;
	resize: none;
	outline: none;
}
.copy-button
{
	/*float: right;*/
	/*margin: 0px;*/
	margin: 0px 0px 0px auto;
	background-color: var(--teal);
	border-color: var(--teal);
	color: var(--white);
}
.open-button
{
	margin-top: 20px;
	background-color: var(--teal);
	border-color: var(--teal);
	color: var(--white);
	padding-bottom: 28px;
}
img.button-link-arrow
{
	/*margin-top: auto;*/
	margin-bottom: 1px;
}

/* new rubric page styles */
.body-copy.no-margin {
  margin-top: 0px;
  margin-bottom: 0px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.body-copy.no-margin.grid {
	margin-bottom: 16px;
  }
  
.position-label {
  padding: 8px;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}

.position-label {
  -ms-grid-column-align: end;
  justify-self: end;
  -ms-grid-row: span 1;
  grid-row-start: span 1;
  -ms-grid-row-span: 1;
  grid-row-end: span 1;
  -ms-grid-column: span 1;
  grid-column-start: span 1;
  -ms-grid-column-span: 1;
  grid-column-end: span 1;
  -ms-grid-row-align: start;
  align-self: start;
}

.grid-2 {
  grid-column-gap: 24px;
  grid-row-gap: 32px;
  -ms-grid-columns: 0.5fr 1fr;
  grid-template-columns: 0.5fr 1fr;
  -ms-grid-rows: auto auto auto auto auto auto auto;
  grid-template-rows: auto auto auto auto auto auto auto;
}

#rubric-party
{
	padding-top: 50px;
}

@media screen and (max-width: 991px) 
{
	.grid-2 {
	-ms-grid-columns: 0.75fr 1fr;
	grid-template-columns: 0.75fr 1fr;
  }
}


  
@media screen and (max-width: 767px)
{
	.position-label {
	-ms-grid-column-align: start;
	justify-self: start;
  }
  
  .grid-2 {
	grid-column-gap: 23px;
	grid-row-gap: 8px;
	-ms-grid-columns: 1.75fr;
	grid-template-columns: 1.75fr;
  }
}
/* end new rubric page styles */

/* new footer page styles */
#footer-logo-and-socials
{
	margin-right: 40px;
}
#footer-deep-dive,#footer-our-org
{
	margin-right: 40px;
	margin-bottom: 20px;
}
#footer-deep-dive > a,#footer-our-org > a
{
	display: block;
	font-size: 16px;
	white-space: nowrap;
	margin-bottom: 10px;
	color: var(--nearly-black);
}
#footer-deep-dive > a:hover,#footer-our-org > a:hover
{
	color: var(--system);
}
#footer-deep-dive > h3,#footer-our-org > h3
{
	display: block;
	font-size: 24px;
	white-space: nowrap;
	text-decoration: none;
	font-style: normal;
	color: var(--dark-grey);
	font-weight: 400;
	margin-bottom: 10px;
}
div#footer-logo-and-socials img
{
	margin-bottom: 20px;
}
div#footer-socials img
{
	margin-bottom: 0px;
}
div#footer-socials a:first-child
{
	margin-right: 5px;
	margin-left: 0px;
}
div#footer-socials a:last-child
{
	margin-right: 0px;
	margin-left: 5px;
}
#footer-subscribe-form-div
{
	width: 410px;
	margin-left: auto;
}
#footer-organization
{
	float: left;
	font-size: 12px;
	color: var(--dark-grey);
	text-align: left;
}
#footer-terms
{
	float: right;
	font-size: 12px;
	color: var(--dark-grey);
	text-align: left;
}
#footer-terms a
{
	margin-left: 16px;
	color: var(--dark-grey);
}

#footer-wrapper-div
{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-top: 40px;
	border-top: 1px solid var(--light-grey);
}
#footer-subscribe-form-div .w-input
{
	min-width: 100%;
}
div#footer-subscribe-form-div p.paragraph-small
{
	font-size: 13px;
}
@media screen and (max-width: 991px) 
{
			
	#footer-subscribe-form-div
	{
		-webkit-box-ordinal-group: 0;
		-webkit-order: -1;
		-ms-flex-order: -1;
		order: -1;
		width: 100%;
		display: block;
		margin-left: 0px;
		min-width: 100%;
		/*padding-bottom: 15px;*/
		margin-bottom: 25px;
		/*border-bottom: 1px solid var(--light-grey);*/
	}
	body.body div.section.footer.wf-section.w-container
	{
		margin-left: auto;
		margin-right: auto;
	}
	
	#footer-wrapper-div
	{
		padding-top: 15px;
		border-top: 1px solid var(--light-grey);
	}
}
@media screen and (max-width: 767px)
{
	#footer-organization
	{
		float: none;
		font-size: 12px;
		color: var(--dark-grey);
	}
	
	#footer-terms
	{
		float: none;
		font-size: 12px;
		color: var(--dark-grey);
	}
	#footer-terms a
	{
		margin-left: 0px;
		margin-right: 16px;
		color: var(--dark-grey);
	}
	#footer-subscribe-form-div,#footer-deep-dive,#footer-our-org
	{
		text-align: left;
	}
	
}
@media screen and (max-width: 479px) 
{
	#footer-logo-and-socials
	{
		width: 100%;
		display: block;
		margin-left: 0px;
		min-width: 100%;
		/*padding-bottom: 32px;*/
		text-align: left;
		margin-bottom: 40px;
	}
	#footer-subscribe-form-div
	{
		/* padding-left: 5px; */
		/* padding-right: 5px; */
	}

}
/* end new footer page styles */

/* smaller race card UI */

div.candidate-card-title div.data.candidate-card
{
	display: flex;
	flex-direction: row;
	gap: 10px;
	text-align: left;
}

div.candidate-card-title div.data.candidate-card div.candidate-card-heading h2.heading-2.candidatecard
{
	font-size: 30px;
	line-height: 24px;
	text-align: left;
}

@media screen and (max-width: 767px) 
{
	div.candidate-card-heading div.body-copy.block.candidate-card 
	{
		text-align: left;
	}
	div.candidate-card-heading h2.heading-2.candidatecard,a#learn-candidate-sen.button-2.resultcard.ga-event.center.w-button
	{
		text-align: left;
		margin-left: 0px;
		margin-right: auto;
	}
}

a#learn-candidate-sen.button-2.resultcard.ga-event.center.w-button
{
	font-size: 20px;
	line-height: 16px;
	padding: 6px 10px;
}

.avatar.medium {
	width: 80px;
	height: 80px;
	/*max-height: 884px;*/
	max-width: 80px;
	min-height: 80px;
	min-width: 80px;
}

div.avatar.medium img.image {
	position: relative;
	z-index: 1;
	min-height: 72px;
	min-width: 72px;
	width: auto;
	height: auto;
	object-fit: cover;
}

div.data.candidate-card div.candidate-card-heading
{
	margin-top: 0px;
}
div.data.candidate-card
{
	margin-top: auto;
	margin-bottom: auto;
}

/* end smaller race card UI */

button#find-districts-2.find-districts.ga-event.w-button.spinbutton
{
	font-weight: 400;
	font-size: 24px;
	line-height: 20px;
	height: 52px;
}
span.spinbutton__text img.arrow-link
{
	position: relative;
	bottom: -1px;
}

button#find-districts-2.find-districts.ga-event.w-button.spinbutton span.spinbutton__text
{
	position: relative;
	bottom: 1px;
}
h3#beforeinstascroller.heading-3 a
{
	color: var(--nearly-black);
	text-decoration: underline;
}

#sharable-container
{
	display: flex;
	flex-direction: row;
	gap: 24px;
	margin-top: 40px;
	height: auto;
}

#sharable-demo img
{
	max-width: 320px;
	height: auto;
	/*display: none;*/
}

#sharable-demo
{
	/*min-width: 320px;*/
	/*min-height: 320px;*/
	background: url('/assets/voting-plan-loading.png') no-repeat left top;
	background-size: contain;
}

#sharable-demo-mobile img
{
	/*max-width: 214px;*/
	/*height: auto;*/
	min-height: 403px;
	min-width: 214px;
	flex: none;
	order: 1;
	flex-grow: 0;
	position: relative;
	top: -83px;
	margin-bottom: -83px;
}

#sharable-description
{
	min-width: 272px;
}

div#sharable-description p.body-copy.on-dark
{
	color: var(--white);
	margin-top: 8px;
}

div#sharable-description a.button.on-dark.w-button
{
	max-width: 100%;
	padding-left: 16px;
	padding-right: 16px;
	margin-top: 24px;
	margin-right: auto;
	margin-bottom: 24px;
}

@media screen and (max-width: 991px) 
{
	#sharable-demo-mobile img
	{
		display: none;
	}
}
@media screen and (max-width: 767px)
{
	div#step-3.step-3.graph-background.wf-section div.basic-content-area.steptitle.w-container h3.heading-3
	{
		text-align: left;
	}
	#sharable-demo
	{
		margin-right: auto;
		margin-bottom: 16px;
	}
	
	div#sharable-description a.button.on-dark.w-button
	{
		max-width: 320px;
	}
	div#sharable-description h3.heading-4.on-dark
	{
		text-align: left;
	}
	div#step-3.step-3.graph-background.wf-section div.basic-content-area.steptitle.w-container,div#step-2.step-2.graph-background.wf-section div.basic-content-area.steptitle.w-container
	{
		padding-top: 40px;
	}
}
@media screen and (max-width: 674px) 
{
	#sharable-container
	{
		flex-direction: column;
	}
	#sharable-description
	{
		max-width: 320px;
	}
	div#sharable-description a.button.on-dark.w-button
	{
		/* margin-bottom: 0px; /* 24px */ */
	}
}
@media screen and (max-width: 479px) 
{

	div#sharable-demo-mobile img
	{
		margin-left: auto;
		/*margin-right: auto;*/
	}
	#sharable-demo img
	{
		max-width: 100%;
		height: auto;
	}
	#sharable-demo
	{
		margin-right: auto;
		margin-left: auto;
	}
	#sharable-container
	{
		flex-direction: column;
	}
	#sharable-demo-mobile img
	{
		display: flex;
		position: relative;
		top: 0px;
		max-width: 301px;
		max-height: auto;
		margin-bottom: 0px;
	}
	#sharable-demo img
	{
		width: 100%;
		height: auto;
	}
	div#sharable-description a.button.on-dark.w-button
	{
		margin-bottom: 24px;
	}
}

div#sharable-description h3.heading-4.on-dark
{
	font-family: 'Koulen';
	font-style: normal;
	font-weight: 400;
	font-size: 26px;
	line-height: 24px;
	text-decoration: none;
	color: var(--white);
}

div#sharable-description a.button.on-dark.w-button img
{
	position: relative;
	top: -4px;
	margin-bottom: -8px;
}

.voting-plan-button-touch
{
	display: none;
}
.voting-plan-button-mouse
{
	display: block;
}

@media (pointer: fine) and (hover: hover)
{
	.voting-plan-button-touch
	{
		display: none;
	}
	.voting-plan-button-mouse
	{
		display: block;
	}
}
@media (any-pointer: coarse)
{
	.voting-plan-button-touch
	{
		display: block;
	}
	.voting-plan-button-mouse
	{
		display: none;
	}
}

div#senate_candidates div.basic-content-area.w-container > *,div#house_candidates div.basic-content-area.w-container > *,div#governor_candidates div.basic-content-area.w-container > *
{
	overflow: visible;
}
.step-2 .candidate-list-wrapper
{
	margin-left: -8px;
	margin-right:-7px;
}
div#w-dropdown-toggle-0.dropdown-toggle.sign-up.w-dropdown-toggle div.paragraph p.link.inline.body-copy-2
{
	white-space: normal;
}

button#submit-link.find-districts.ga-event.w-button.spinbutton.spinbuttonsmallwhiteondark
{
	white-space: nowrap;
	min-width: 120px;
}

body.body div.action-section.purple.wf-section.link-drop div.w-container > *
{
/* 	padding-left: 16px;
	padding-right: 16px; */
	margin-bottom: 16px;
	color: var(--white);
}

@media screen and (max-width: 479px) 
{
	body.body div.action-section.purple.wf-section div.w-container h2.heading-2.on-dark
	{
		font-size: 40px;
		line-height: 36px;
	}
}
.redistricting-note
{
	/*font-weight: 600;*/
	font-size: 12px;
	line-height: 16px;
	border: 2px solid #363030;
	padding: 16px;
	text-align: left;
}

div.data.candidate-card,div.body-copy.block.candidate-card
{
	margin-right: auto;
}

div.quoteblock
{
	margin-left: auto;
	margin-right: auto;
}

.election-header
{
	color: var(--darkest-grey);
	position: relative;
	top: 4px;
}

.candidate-list-wrapper.mini
{
	margin-top: 16px;
	margin-left: -8px;
	margin-right:-7px;
}

div#campaign-challenger div.candidate-list-wrapper.mini.w-dyn-list div.candidate-card-item.w-dyn-item div.candidate-card-title div.data.candidate-card div.candidate-card-heading div.body-copy.block.candidate-card
{
	margin-right: auto;
}

#campaign-wrapper
{
	display: flex;
	flex-direction: row;
	gap: 48px;
	margin-top: 48px;
}
#campaign-challenger
{
	width: auto;
	max-width: 50%;
	min-width: 50%;
}
#campaign-contact
{
	width: auto;
	max-width: 100%;
}

@media screen and (max-width: 991px) 
{
	#campaign-wrapper
	{
		flex-direction: column;
	}
	#campaign-challenger
	{
		max-width: 100%;
		min-width: 100%;
	}
	#campaign-contact
	{
		max-width: 100%;
	}
}

.contact-data.link
{
	/*margin-right: auto;*/
	text-align: left;
}

div#campaign-contact > *
{
	margin-bottom: 10px;
}

div.contact-item
{
	margin-right: 25px;
}

.mini-module-container
{
	color: var(--white);
	background: var(--system);
}

.mini-module
{
	padding-top: 24px;
	padding-bottom: 24px;
	display: flex;
	gap: 8px;
	/*flex-direction: row;*/
	padding: 24px 16px;
	flex-wrap: wrap;
	text-align: left;
}

.w-container.mini-module:before, .w-container.mini-module:after {
	/* removing the strange space character webflow is adding before and after containers ?!?!?! */
	content: none;
}

.mini-module-header
{
	font-family: 'Koulen';
	font-style: normal;
	font-weight: 400;
	font-size: 24px;
	line-height: 20px;
}
.mini-module-link
{
	font-family: 'Noto Sans';
	font-style: normal;
	font-weight: 400;
	font-size: 16px;
	line-height: 20px;
}
body.body div.action-section.wf-section div.w-container div.div-block-18
{
	display: flex;
	flex-direction: row;
	gap: 24px;
}
body.body div.action-section.wf-section div.w-container div.div-block-18 p
{
	margin-top: 0px;
	margin-bottom: 0px;
}
body.body div.action-section.wf-section div.w-container div.div-block-18 img
{
	flex: 0;
}
@media screen and (max-width: 991px) 
{
	body.body div.action-section.wf-section div.w-container div.div-block-18
	{
		margin-inline: 0px;
		padding-inline: 0px;
	}
}
@media screen and (max-width: 674px) 
{
	body.body div.action-section.wf-section div.w-container div.div-block-18
	{
		flex-direction: column;
	}
	body.body div.action-section.wf-section div.w-container div.div-block-18 img
	{
		margin-inline: auto;
	}
}
div.action-section.white
{
	background: var(--white);;
}
div.donate-mini-module-center
{
	margin-inline: auto;
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	flex-direction: row;
}

@media screen and (max-width: 479px) 
{
	div.donate-mini-module-center
	{
		flex-direction: column;
	}
	div.donate-mini-module-center p
	{
		margin-left: 0px;
		margin-right: auto;
	}
}

p.body-copy.on-dark, p.body-copy.on-dark a
{
	color: var(--white);
}
div.donate-mini-module-center a.button.on-dark.w-button
{
	margin-top: auto;
	margin-bottom: auto;
}
body.body div.homehero.w-container h1.page-headline.small
{
	font-size: 64px;
	line-height: 56px;
}
body.body div.homehero.w-container h1.page-headline.large
{
	font-size: 128px;
	line-height: 100px;
}
body.body div.homehero.w-container h1.page-headline.large.short
{
	display: none;
}

@media screen and (max-width: 991px) 
{
	
}
@media screen and (max-width: 767px)
{
	body.body div.homehero.w-container h1.page-headline.small
	{
		font-size: 50px;
		line-height: 44px;
	}
	body.body div.homehero.w-container h1.page-headline.large
	{
		font-size: 100px;
		line-height: 75px;
	}
}
@media screen and (max-width: 590px) 
{
	body.body div.homehero.w-container h1.page-headline.small
	{
		font-size: 40px;
		line-height: 34px;
	}
	body.body div.homehero.w-container h1.page-headline.large
	{
		font-size: 72px;
		line-height: 56px;
	}
}
@media screen and (max-width: 479px)
{
	body.body div.homehero.w-container h1.page-headline.small
	{
		font-size: 30px;
		line-height: 24px;
	}
	body.body div.homehero.w-container h1.page-headline.large
	{
		font-size: 64px;
		line-height: 56px;
	}
}
@media screen and (max-width: 340px)
{
	body.body div.homehero.w-container h1.page-headline.small
	{
		font-size: 24px;
		line-height: 24px;
	}
	body.body div.homehero.w-container h1.page-headline.large.long
	{
		display: none;
	}
	body.body div.homehero.w-container h1.page-headline.large.short
	{
		font-size: 64px;
		line-height: 56px;
		display: block;
	}
}

body.body div.step-2.graph-background.wf-section
{
	padding-bottom: 0px;
}
div#demo.demo.graph-background.wf-section div.basic-content-area.w-container h1.heading-1.demo
{
	margin-bottom: 0px;
}
div#demo.demo.graph-background.wf-section div.basic-content-area.w-container.allentown
{
	/*padding-bottom: 0px;*/
}
form#email-form.search-form-2.action-guide-search
{
	margin-top: 24px;
}
div#search-form.address-search.w-form.action-guide-search
{
	margin-bottom: 0px;
}
div#step-2.step-2.graph-background.wf-section div.basic-content-area.steptitle.w-container
{
	padding-top: 0px;
	/*margin-top: -40px;*/
}
#step-2,#demo
{
	max-height: 0px;
	transition: max-height 0.4s ease-out;
	overflow: hidden;
}
#step-2.expanded
{
	transition: max-height 0.8s ease-in;
	max-height: 3000px;
}
#demo.expanded
{
	transition: max-height 0.3s ease-in;
	max-height: 1000px;
}
button.button.open-button.open-button-top
{
	margin-top: 0px;
}
.modal-inside textarea
{
	font-size: 16px;
}
div#demo.demo.graph-background.wf-section
{
	margin-right: 0px;
	/* padding-right: 8px; */
}
div#statesenate.candidateresultwrapper.w-dyn-list div.collection-list.w-dyn-items
{
	margin-left: -8px;
	margin-right:-7px;
}
div.body-copy-large.empty-state
{
	padding: 0px;
	margin: 0px;
}
.section.footer.wf-section.w-container {
	padding-inline: 16px;
}
.donate-button.w-button {
	padding-inline: 16px;
	margin: 0px;
	padding-block: 20px;
	top: 0px;
}
.logo {
	margin-left: 16px;
}
@media screen and (max-width: 767px)
{
	.logo {
		margin-left: 6px;
	}
}
@media screen and (max-width: 300px)
{
	.donate-button.w-button {
		display: none;
	}
}
.navbar-content.w-container {
	min-width: 200px;
}
.heading-1.center,.heading-2.center {
	display: block;
	text-align: center;
}

.source-link.sb106 {
	font-family: 'Noto Sans';
	font-style: normal;
	font-weight: 400;
	font-size: 12px;
	line-height: 16px;
	/* identical to box height, or 133% */

	/* Nearly Black */
	color: #363030;
}

.heading-2.sb106 {
	font-family: 'Koulen';
	font-style: normal;
	font-weight: 400;
	font-size: 64px;
	line-height: 56px;
	/* identical to box height, or 88% */
	
	/* Nearly Black */
	color: #363030;
}
.heading-5.sb106 {
	font-family: 'Koulen';
	font-style: normal;
	font-weight: 400;
	font-size: 30px;
	line-height: 24px;
	/* identical to box height, or 80% */
	
	/* Dark Grey */
	color: #797472;
}

div.source-link.sb106 {
	text-align: left;
}

div.source-link.sb106.align-right {
	text-align: right;
}

.source-link.sb106 a {
	color: #363030;
	text-decoration: underline;
}

div.sb106 ul 
{
	text-align: left;
}
@media screen and (max-width: 767px)
{
	.heading-2.sb106 {
		font-size: 48px;
		line-height: 40px;
	}
	.heading-5.sb106 {
		font-size: 24px;
		line-height: 20px;
	}
}

@media screen and (max-width: 991px)
{
	body.body div.action-section.white.wf-section div.w-container div.div-block-18.sb106-opportunities,body.body div.action-section.wf-section div.w-container div.div-block-18.sb106-badpolicy
	{
		flex-direction: column;
	}
	
	body.body div.action-section.white.wf-section div.w-container div.div-block-18.sb106-opportunities img,body.body div.action-section.wf-section div.w-container div.div-block-18.sb106-badpolicy img
	{
		margin-inline: auto;
	}	
}

@media screen and (max-width: 991px)
{
	body.body div.homehero.w-container h1.page-headline.large.sb106
	{
		font-size: 100px;
		line-height: 80px;
	}
	body.body div.homehero.w-container h1.heading-1.center.sb106
	{
		font-size: 48px;
		line-height: 40px;
	}
}
@media screen and (max-width: 650px)
{
	body.body div.homehero.w-container h1.page-headline.large.sb106
	{
		font-size: 80px;
		line-height: 64px;
	}
	body.body div.homehero.w-container h1.heading-1.center.sb106
	{
		font-size: 36px;
		line-height: 30px;
	}
}
div.sb106 ul
{
	font-family: 'Noto Sans';
	font-style: normal;
	font-weight: 400;
	font-size: 16px;
	line-height: 20px;
	color: #363030;
	margin-top: -15px;
}
div.sb106 ul li
{
	margin-block: 10px;
}
body.body div.action-section.purple.wf-section.sb106 div.w-container h2.on-dark.heading-2
{
	margin-bottom: 15px;
	text-align: center;
	margin-inline: auto;
}
body.body div.step-2.graph-background.wf-section div.basic-content-area.steptitle.w-container h3.heading-3
{
	text-align: left;
}
body.body div.step-2.graph-background.wf-section.support-pro
{
	padding-top: 16px;
}
body.body div.step-2.graph-background.wf-section.support-pro div.basic-content-area.steptitle.w-container h3.heading-3.raceresults
{
	margin-bottom: 16px;
}
body > div.action-section.purple.wf-section > div
{
	padding-inline: 16px;
}
body > div.antidemocrat.wf-section > div,body > div.prorepub.wf-section > div
{
	padding-inline: 16px;
}
body.body div.action-section.wf-section div.w-container
{
	padding-inline: 16px;
}
.action-section.actionscroller.wf-section > * > *
{
	padding-inline: 0px;
}
@media screen and (max-width: 767px)
{
	body > div.action-section.purple.wf-section > div
	{
		padding-inline: 0px;
		max-width: 696px;
	}
	body > div.antidemocrat.wf-section > div,body > div.prorepub.wf-section > div
	{
		padding-inline: 0px;
	}
	body.body div.action-section.wf-section div.w-container
	{
		padding-inline: 0px;
		max-width: 696px;
	}
	.action-section.actionscroller.wf-section > * > *
	{
		padding-inline: 16px;
	}
	.mini-module
	{
		max-width:696px;    
	}
}

.position-banner-content.w-container {
	padding-inline: 16px;
}

@media screen and (max-width: 479px)
{
	.position-banner-content.w-container 
	{
		padding-inline: 0px;
	}
	.heading-1.raceresults
	{
		font-size: 48px;
		line-height: 80%;
	}
}

body.body div.hero-area.wf-section div.action-section.actionscroller.wf-section div.basic-content-area.vertical.w-container div.empty-state.w-dyn-empty
{
/* 	padding-inline: 24px; */
	background: none;
	padding-top: 0px;
}

body.body div.hero-area.wf-section div.action-section.actionscroller.wf-section div.basic-content-area.vertical.w-container div.empty-state.w-dyn-empty div.paragraph-small
{
	text-align: left;
}

.logo {
	margin-block: 1px;
}

.nav-link {
	padding-left: 15px;
}
.candidate-list {
	grid-template-rows: none;
}
div.div-block-18 div
{
	width: 100%;
}
#paginated_gallery.instascroller
{
	margin-bottom: 0px;
}
#demo > div.basic-content-area.box.w-container
{
	max-width: 908px;
	background-color: var(--lighter-grey);
}
div#step-2.step-2.graph-background.wf-section.expanded
{
	padding-bottom: 16px;
	padding-top: 0px;
}
.body-copy-small-2.subtext {
	color: var(--dark-grey);
}

#current-legislators
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
	margin-inline: auto;
}
#current-legislators > *
{
}
#current-legislators > .candidate-card-item
{
	margin: 0px;
	margin-bottom: 0px;
}
#current-legislators h3
{
	margin-bottom: 0px;
}
#current-legislators .long
{
	display: block;
}
#current-legislators .short
{
	display: none;
}
@media screen and (max-width: 991px)
{
	#current-legislators .long
	{
		display: none;
	}
	#current-legislators .short
	{
		display: block;
	}
}
@media screen and (max-width: 767px)
{
	#current-legislators
	{
		grid-template-columns: repeat(1, 1fr);
/*         gap: 0px; */
	}
	#current-legislators > *
	{
		width: 100%;
	}
	#current-senate-heading
	{
		grid-row-start: 1;
	}
	#current-house-heading
	{
		grid-row-start: 3;
	}
	#current-legislators .long
	{
		display: block;
	}
	#current-legislators .short
	{
		display: none;
	}
}
#current_legislators > .w-container,#senate_candidates > .w-container,#house_candidates > .w-container
{
	margin-block: 0px;
	padding-block: 0px;
}
#current_legislators > .w-container
{
	margin-bottom: 8px;
}

#current-senate-heading,#current-house-heading
{
	margin-bottom: 9px;
}
#senate_candidates h2.heading-1,#house_candidates h2.heading-1
{
	margin-top: 10px;
}
#senate_candidates,#house_candidates,#current_legislators
{
	padding-block:25px;
}
#current_legislators h2.heading-1
{
	margin-top: 52px;
}
div.step-2 .basic-content-area.steptitle.w-container 
{
	padding-bottom: 0px;
}
div#current_legislators
{
	padding-top: 0px;
}

@media screen and (max-width: 767px)
{
	.basic-content-area.steptitle.w-container 
	{
		padding-bottom: 24px;
	}
}
#wf-form-Email-Form-done-ag
{
	margin-top: 25px;
	padding: 0px;
	color: white;
}
div#step-2-campaign-share.step-3.on-dark.step-2-campaign-share.wf-section div.basic-content-area.steptitle.w-container
{
	text-align: left;
}
div#step-2-campaign-share input#Email-Address.text-field.small.w-input
{
	min-width: 100%;
}
#step-2-campaign-share > div > p
{
	display: block;
	margin-block: 16px;
	margin-bottom: 0px;
}
#email-sign-up-div-ag
{
	margin-bottom: 0px;
}

@media screen and (max-width: 479px)
{
	
	.legislator-context
	{
		margin-bottom: 16px;
		margin-top: -35px;
	}
	
}

div.body-copy p {
	padding-bottom: 20px;
}

div.body-copy {
	margin-block: 0px;
}

div.div-block-18 > img
{
	margin-bottom: auto;
}
.on-dark.heading-2.sb106
{
	color: var(--white); 
}