body {
	--primary-color: #214EBE;
	--secondary-color: #D7E3FF;
}

/* GENERAL */

.site {
	font-size: 18px;
	line-height: 1.6em;
}

a {
	text-decoration: underline;
}

a:hover {
	text-decoration: underline;
}

button:hover, input[type=submit]:hover {
	text-decoration: inherit;
}

body.custom a {
	font-weight: initial;
	color: initial;
}

h1 {
	font-weight: 700;
	font-size: 30px;
}

h2 {
	font-weight: 700;
	font-size: 22px;
}

h3 {
	font-weight: 700;
	font-size: 20px;
}

.main-navigation .button a {
	border-radius: 0;
}

.wp-block-tfc-blocks-actblue .components-button.amount,.wp-block-tfc-blocks-actblue a.button {
	font-weight: bold;
	font-family: inherit;
}

.wp-block-button a {
	padding: 16px 24px;
}

input.wpcf7-not-valid {
	border: 2px solid #9E0000;
}

.yoast-faq {
	display: none;
}

/* HEADER */
#masthead {
	font-family: 'PT Serif';
}

#masthead .custom-logo {
	max-height: 60px;
}

body #masthead .main-navigation a {
	font-weight: bold;
	text-decoration: none;
}

body #masthead .main-navigation li {
	padding: 0;
	margin: 0 0 0 2em;
}

.main-navigation .current_page_item {
	border-bottom: 2px solid black;
}

#masthead .button a {
	font-family: "Rubik";
	font-weight: normal !important;
}

@media screen and (min-width: 900px) {
	.main-navigation ul {
		padding: .75em 0;
	}
	
	#masthead {
		padding: 1em 0;
		box-shadow: 0px 0px 5px 2px rgb(0 0 0 / 20%);
	}
}

/* HERO IMAGE */

.page .entry-content .hero .alignfull {
	width: 100%;
	max-width: unset;
}

@media screen and (min-width: 900px) {
	.hero .wp-block-stackable-column:first-child {
		margin-left: 0;
		min-width: 600px;
		max-width: 700px;
	}
}

.hero .wp-block-stackable-column:first-child .stk-column-wrapper {
	margin-left: 0;
}

/* NEWSLETTER SIGNUP */

#newsletter-signup {
	color: white;
}

.ngp-form.at {
	max-width: unset;
}

.ngp-form .at-inner {
	background-color: transparent;
}

.ngp-form fieldset legend {
	display: none;
}

.ngp-form.at label {
	color: white;
}
.ngp-form.at input[type=submit] {
	background-color: var(--secondary-color);
	border-radius: 0 !important;
	color: var(--primary-color) !important;
	height: 50px;
	font-weight: bold;
	text-transform: uppercase;
}

.ngp-form .at-fields {
	display: flex;
	flex-wrap: wrap;
}

.ngp-form .at-row.FirstName.LastName {
	width: 100%;
}

.ngp-form .at-row.PostalCode {
	flex-grow: 1
}

.ngp-form .at-row.EmailAddress {
	flex-grow: 4;
}

/* VOTE PAGE */

.vote-columns {
	justify-content: center;
}

.vote-columns .wp-block-column {
	max-width: 470px;
}

/* Contact Form */

@media screen and (min-width: 900px) {
	.response-form {
		width: 50%;
		min-width: 500px;
	}
}

.response-form p {
	margin: 0 0 10px 0;
}

.response-form .row {
	display: flex;
	gap: 0 10px;
}

@media screen and (max-width: 512px) {
	.response-form .row {
		flex-wrap: wrap;
	}
}

.response-form input[type=text], .response-form input[type=email], .response-form textarea {
	width: 100%;
	border-radius: 0;
	border: 2px solid black;
}

.response-form textarea {
	resize: vertical;
}

.response-form input[type=submit] {
	background-color: var(--secondary-color);
	border-radius: 0;
	color: var(--primary-color);
	height: 50px;
	text-transform: uppercase;
	font-weight: bold;
}

/* FOOTER */

#pre-footer {
	text-align: left;
	background-color: var(--primary-color);
}

#pre-footer section {
	width: 92%;
	max-width: 1170px;
	margin: 0 auto;
}

#pre-footer .wp-block-tfc-blocks-actblue .buttons {
	gap: 20px;
}

#pre-footer .wp-block-tfc-blocks-actblue .buttons .button {
	background-color: var(--secondary-color);
	margin: 0;
	flex-basis: 30% !important;
}

footer#colophon {
	background-color: #214ebe;
	color: white;
	padding-top: 0;
}

footer .footer-widgets {
	gap: 50px;
}

footer#colophon .footer-widgets .widget-column {
	margin: 0;
}

footer#colophon h1, footer#colophon h2, footer#colophon h3 {
	margin-top: 0;
}

footer#colophon #menu-footer {
	text-align: center;
}

/* MORE INFO PAGES */

.wp-container-2.more-info-header {
	gap: 30px;
	align-items: flex-start;
	margin-top: 24px;
}

.more-info-header h1, .more-info-header h2, .more-info-header h3 {
	margin: 0 0 20px 0
}