@charset "utf-8";
/*--------------------------------------------------------------
# Forms
# Review Questions & Redirect
# Mobile Styles
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
fieldset.hidden-fields-container {
	display: 										none;
}

.wpcf7 form {	
	position:										relative;
	display: 										grid;
	grid-template-columns: 							1fr;
	gap: 											var(--measure-small) 0;
    text-align: 									left;
	width:											100%;
	max-width: 										850px;
	margin: 										var(--measure-base) auto;
}

.wpcf7 form ul li:not(.menu-item):not(:last-child) {
	margin-bottom: 									var(--measure-small);
}

#primary .wpcf7 form {
	margin: 										var(--measure-large) auto;
}

.wpcf7 form .flex,
.wpcf7 form > .form-input {
	grid-column: 									1 / -1;
	gap: 											var(--measure-base);
}

.wpcf7 form .form-input {
	position:										relative;
	display: 										grid;
	grid-template-columns: 							max-content 1fr;
	gap: 											0.15em var(--measure-base);
}

body.form-stacked .wpcf7 form .form-input,
.wpcf7 form.form-stacked .form-input,
.wpcf7 form .form-stacked .form-input,
.wpcf7 form .form-input.width-none {
	grid-template-columns: 							1fr !important;
}

/*@media (min-width: 577px) {*/
	.wpcf7 form .flex.grid-3-3-2 .form-input {
		grid-template-columns: 						1fr !important;
	}
/*}*/

.wpcf7 form .form-input.width-full,
.wpcf7 form label.width-full,
.wpcf7 form label.width-full + span {
	grid-column: 									1 / -1;	
}

label {
	font-family: 									var(--font-text);
	font-weight: 									bold;
	text-align: 									right;
}

#secondary .wpcf7 form.width-full {
	margin-top: 									0.3em;
}

#secondary .wpcf7 form label.width-full,
.wpcf7 form label.width-full,
body.form-stacked .wpcf7 form label,
.wpcf7 form.form-stacked label,
.wpcf7 form .flex.grid-3-3-2 label,
.wpcf7 form .form-stacked label,
.wpcf7 form span.wpcf7-form-control-wrap {
	text-align: 									left;
	align-self: 									end;
}

.wpcf7 form label.label-baseline {
	align-self: 									end;
}

.wpcf7 form label.label-center {
	align-self: 									center;
}

.wpcf7 form label.label-top {
	align-self: 									start;
}

.label-pos-after {
	grid-template-columns: 							70px 1fr !important;
}

.label-pos-after label {
	text-align: 									left !important;
	transform: 										translateX(-50px); /* move label closer to the check box */
}

.wpcf7 form .label-pos-after span.wpcf7-form-control-wrap {
	align-self: 									start;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
select {
    width: 											100%;
	padding: 										var(--input-padding);
	font-size:										var(--input-font-size);
	font-weight: 									var(--input-font-weight);
	color: 											var(--input-color);
	background:										var(--input-background);
	border-top: 									var(--input-border-top);
	border-right: 									var(--input-border-right);
	border-bottom:									var(--input-border-bottom);
	border-left: 									var(--input-border-left);
	box-shadow:										var(--input-box-shadow);
	border-radius:									var(--input-border-radius);
	text-shadow: 									var(--input-text-shadow);
	transform: 										var(--input-transform);
	filter: 										var(--input-filter);	
	backdrop-filter:								var(--input-filter);
	min-height: 									32px; /* date picker form field on iPad 10-22-2020 */
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus,
select:focus,
.wpcf7 form .wpcf7-response-output {
	padding: 										var(--input-padding);
	color: 											var(--input-color-focus);
	font-size:										var(--input-font-size-focus);
	font-weight: 									var(--input-font-weight-focus);
	background:										var(--input-background-focus);
	border-top: 									var(--input-border-top-focus);
	border-right: 									var(--input-border-right-focus);
	border-bottom:									var(--input-border-bottom-focus);
	border-left: 									var(--input-border-left-focus);
	box-shadow:										var(--input-box-shadow-focus);
	border-radius:									var(--input-border-radius-focus);	
	text-shadow: 									var(--input-text-shadow-focus);
	transform: 										var(--input-transform-focus);
	filter: 										var(--input-filter-focus);
	backdrop-filter:								var(--input-backdrop-filter-focus);
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}

.style-alt input[type="text"],
.style-alt input[type="email"],
.style-alt input[type="url"],
.style-alt input[type="password"],
.style-alt input[type="search"],
.style-alt input[type="number"],
.style-alt input[type="tel"],
.style-alt input[type="range"],
.style-alt input[type="date"],
.style-alt input[type="month"],
.style-alt input[type="week"],
.style-alt input[type="time"],
.style-alt input[type="datetime"],
.style-alt input[type="datetime-local"],
.style-alt input[type="color"],
.style-alt textarea,
.style-alt select {
	padding: 										var(--input-padding-alt);
	color: 											var(--input-color-alt);
	font-size:										var(--input-font-size-alt);
	font-weight: 									var(--input-font-weight-alt);
	background:										var(--input-background-alt);
	border-top: 									var(--input-border-top-alt);
	border-right: 									var(--input-border-right-alt);
	border-bottom:									var(--input-border-bottom-alt);
	border-left: 									var(--input-border-left-alt);
	box-shadow:										var(--input-box-shadow-alt);
	border-radius:									var(--input-border-radius-alt);	
	text-shadow: 									var(--input-text-shadow-alt);
	transform: 										var(--input-transform-alt);
	filter: 										var(--input-filter-alt);
	backdrop-filter:								var(--input-backdrop-filter-alt);
}

.style-alt input[type="text"]:focus,
.style-alt input[type="email"]:focus,
.style-alt input[type="url"]:focus,
.style-alt input[type="password"]:focus,
.style-alt input[type="search"]:focus,
.style-alt input[type="number"]:focus,
.style-alt input[type="tel"]:focus,
.style-alt input[type="range"]:focus,
.style-alt input[type="date"]:focus,
.style-alt input[type="month"]:focus,
.style-alt input[type="week"]:focus,
.style-alt input[type="time"]:focus,
.style-alt input[type="datetime"]:focus,
.style-alt input[type="datetime-local"]:focus,
.style-alt input[type="color"]:focus,
.style-alt textarea:focus,
.style-alt select:focus,
.style-alt .wpcf7 form .wpcf7-response-output {
	padding: 										var(--input-padding-alt);
	color: 											var(--input-color-focus-alt);
	font-size:										var(--input-font-size-focus-alt);
	font-weight: 									var(--input-font-weight-focus-alt);
	background:										var(--input-background-focus-alt);
	border-top: 									var(--input-border-top-focus-alt);
	border-right: 									var(--input-border-right-focus-alt);
	border-bottom:									var(--input-border-bottom-focus-alt);
	border-left: 									var(--input-border-left-focus-alt);
	box-shadow:										var(--input-box-shadow-focus-alt);
	border-radius:									var(--input-border-radius-focus-alt);	
	text-shadow: 									var(--input-text-shadow-focus-alt);
	transform: 										var(--input-transform-focus-alt);
	filter: 										var(--input-filter-focus-alt);
	backdrop-filter:								var(--input-backdrop-filter-focus-alt);
}

.style-alt2 input[type="text"],
.style-alt2 input[type="email"],
.style-alt2 input[type="url"],
.style-alt2 input[type="password"],
.style-alt2 input[type="search"],
.style-alt2 input[type="number"],
.style-alt2 input[type="tel"],
.style-alt2 input[type="range"],
.style-alt2 input[type="date"],
.style-alt2 input[type="month"],
.style-alt2 input[type="week"],
.style-alt2 input[type="time"],
.style-alt2 input[type="datetime"],
.style-alt2 input[type="datetime-local"],
.style-alt2 input[type="color"],
.style-alt2 textarea,
.style-alt2 select {
	padding: 										var(--input-padding-alt);
	color: 											var(--input-color-alt2);
	font-size:										var(--input-font-size-alt2);
	font-weight: 									var(--input-font-weight-alt2);
	background:										var(--input-background-alt2);
	border-top: 									var(--input-border-top-alt2);
	border-right: 									var(--input-border-right-alt2);
	border-bottom:									var(--input-border-bottom-alt2);
	border-left: 									var(--input-border-left-alt2);
	box-shadow:										var(--input-box-shadow-alt2);
	border-radius:									var(--input-border-radius-alt2);	
	text-shadow: 									var(--input-text-shadow-alt2);
	transform: 										var(--input-transform-alt2);
	filter: 										var(--input-filter-alt2);
	backdrop-filter:								var(--input-backdrop-filter-alt2);
}

.style-alt2 input[type="text"]:focus,
.style-alt2 input[type="email"]:focus,
.style-alt2 input[type="url"]:focus,
.style-alt2 input[type="password"]:focus,
.style-alt2 input[type="search"]:focus,
.style-alt2 input[type="number"]:focus,
.style-alt2 input[type="tel"]:focus,
.style-alt2 input[type="range"]:focus,
.style-alt2 input[type="date"]:focus,
.style-alt2 input[type="month"]:focus,
.style-alt2 input[type="week"]:focus,
.style-alt2 input[type="time"]:focus,
.style-alt2 input[type="datetime"]:focus,
.style-alt2 input[type="datetime-local"]:focus,
.style-alt2 input[type="color"]:focus,
.style-alt2 textarea:focus,
.style-alt2 select:focus,
.style-alt2 .wpcf7 form .wpcf7-response-output {
	padding: 										var(--input-padding-alt2);
	color: 											var(--input-color-focus-alt2);
	font-size:										var(--input-font-size-focus-alt2);
	font-weight: 									var(--input-font-weight-focus-alt2);
	background:										var(--input-background-focus-alt2);
	border-top: 									var(--input-border-top-focus-alt2);
	border-right: 									var(--input-border-right-focus-alt2);
	border-bottom:									var(--input-border-bottom-focus-alt2);
	border-left: 									var(--input-border-left-focus-alt2);
	box-shadow:										var(--input-box-shadow-focus-alt2);
	border-radius:									var(--input-border-radius-focus-alt2);	
	text-shadow: 									var(--input-text-shadow-focus-alt2);
	transform: 										var(--input-transform-focus-alt2);
	filter: 										var(--input-filter-focus-alt2);
	backdrop-filter:								var(--input-backdrop-filter-focus-alt2);
}

select {
    width: 											100%;
}

textarea {
    width: 											100%;
	height:											30vh;
	resize: 										none;
	border-radius: 									calc(var(--input-border-radius) * 2);
}

textarea:focus {
	border-radius: 									calc(var(--input-border-radius-focus) * 2);
}

optgroup {
    width: 											100%;
}

::placeholder { 
	color:											var(--black-med);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  	-webkit-appearance: 							none;
  	margin: 										0;
}

input[type=number] {
  	-moz-appearance: 								textfield;
}

.wpcf7 form .form-input.width-none input {
	padding-right: 									30px;
}

.wpcf7 form .wpcf7-list-item {
	display: 										inline-block; /* added 6/12/23 to keep checkboxes and labels from splitting at end of line */
	margin-left: 									0;
	margin-right: 									20px;
}

.wpcf7 form .wpcf7-checkbox > .wpcf7-list-item > label,
.wpcf7 form .wpcf7-list-item label,
.wpcf7 form .wpcf7-list-item span {
	display: 										inline-block;
}

.wpcf7 form .accept-this {
	width: 											auto;
	position: 										relative;
	display: 										inline-block;
}

.wpcf7 form .wpcf7-acceptance .wpcf7-list-item {
	margin-left: 									0;
	margin-right: 									0;
}

.required {
	display: 										inline-block;
	width: 											0;
	color:											var(--warning);
}

.width-none .required {
    position: 										absolute;
	right: 											0;
	margin-right: 									28px;
}

.required::after {
	display: 										inline-block;
    content: 										"\e0f6";
	font-family: 									var(--font-icons);
	font-size:										12px;
	color:											var(--warning);
	margin-left:									5px;
	transform:										translateY(-35%);
} 

.width-none .required::after {
	transform:										translateY(-2px);
}

form.hide-labels ::placeholder { 
	color:											var(--black);
	font-weight:									bold;
}

a.button,
a.page-numbers,
span.page-numbers,
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.file-upload-btn,
ul.tabs li,
a.button:visited,
a.page-numbers:visited {
	display:										inline-block;
	font-family: 									var(--button-font-family);
	font-weight: 									var(--button-font-weight);
	font-size: 										var(--button-font-size);
	line-height: 									1;
	color: 											var(--button-color);
	background: 									var(--button-background);
	border:											var(--button-border);	
	border-top: 									var(--button-border-top);
	border-right: 									var(--button-border-right);
	border-bottom:									var(--button-border-bottom);
	border-left: 									var(--button-border-left);
	border-radius:									var(--button-border-radius);
	box-shadow:										var(--button-box-shadow);
	cursor:											pointer;
	text-decoration:								none;
	padding: 										var(--button-padding);
	text-shadow: 									var(--button-text-shadow);
  	outline: 										var(--button-outline);
  	filter: 										var(--button-filter);
  	text-transform: 								var(--button-text-transform);
	font-variant: 									var(--button-font-variant);
	letter-spacing: 								var(--button-letter-spacing);
	transform: 										var(--button-transform);
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}

a.button:hover,
a.page-numbers:hover,
span.page-numbers.current,
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.file-upload-btn:hover,
ul.tabs li:hover,
a.button.tab-focus,
a.page-numbers.tab-focus,
button.tab-focus,
input[type="button"].tab-focus,
input[type="reset"].tab-focus,
input[type="submit"].tab-focus,
.file-upload-btn.tab-focus,
ul.tabs li.tab-focus,
a.button:active,
a.page-numbers:active,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active,
.file-upload-btn:active,
ul.tabs li:active,
ul.tabs li.current {
	color: 											var(--button-color-hover);
	background: 									var(--button-background-hover);
	border:											var(--button-border-hover);
	border-top: 									var(--button-border-top-hover);
	border-right: 									var(--button-border-right-hover);
	border-bottom:									var(--button-border-bottom-hover);
	border-left: 									var(--button-border-left-hover);
	border-radius:									var(--button-border-radius-hover);
	box-shadow:										var(--button-box-shadow-hover);
	text-decoration:								none;
	padding: 										var(--button-padding-hover);	
	text-shadow: 									var(--button-text-shadow-hover);
  	outline: 										var(--button-outline-hover);
  	filter: 										var(--button-filter-hover);
  	text-transform: 								var(--button-text-transform-hover);	
	font-variant: 									var(--button-font-variant-hover);
	letter-spacing: 								var(--button-letter-spacing-hover);
	transform: 										var(--button-transform-hover);
	transition:										all var(--main-trans-speed) var(--main-trans-easing);
}

.style-alt a.button,
.style-alt a.page-numbers,
.style-alt span.page-numbers,


.style-alt button,
.style-alt input[type="button"],
.style-alt input[type="reset"],
.style-alt input[type="submit"],
.style-alt .file-upload-btn,
.style-alt ul.tabs li,
.style-alt a.button:visited,


.style-alt a.page-numbers:visited,
a.button.style-alt,
a.page-numbers.style-alt,
span.page-numbers.style-alt,
button.style-alt,
input[type="button"].style-alt,
input[type="reset"].style-alt,
input[type="submit"].style-alt,
.file-upload-btn.style-alt,
ul.tabs li.style-alt,
a.button.style-alt:visited,
a.page-numbers.style-alt:visited{
	font-family: 									var(--button-font-family-alt);
	font-weight: 									var(--button-font-weight-alt);
	font-size: 										var(--button-font-size-alt);
	color: 											var(--button-color-alt);
	background: 									var(--button-background-alt);
	border:											var(--button-border-alt);
	border-top: 									var(--button-border-top-alt);
	border-right: 									var(--button-border-right-alt);
	border-bottom:									var(--button-border-bottom-alt);
	border-left: 									var(--button-border-left-alt);
	border-radius:									var(--button-border-radius-alt);
	box-shadow:										var(--button-box-shadow-alt);
	padding: 										var(--button-padding-alt);
	text-shadow: 									var(--button-text-shadow-alt);
  	outline: 										var(--button-outline-alt);
  	filter: 										var(--button-filter-alt);
  	text-transform: 								var(--button-text-transform-alt);
	font-variant: 									var(--button-font-variant-alt);
	letter-spacing: 								var(--button-letter-spacing-alt);
	transform: 										var(--button-transform-alt);
}

.style-alt a.button:hover,
.style-alt a.page-numbers:hover,
.style-alt span.page-numbers.current,
.style-alt button:hover,
.style-alt input[type="button"]:hover,
.style-alt input[type="reset"]:hover,
.style-alt input[type="submit"]:hover,
.style-alt .file-upload-btn:hover,
.style-alt ul.tabs li:hover,
.style-alt a.button.tab-focus,
.style-alt a.page-numbers.tab-focus,
.style-alt button.tab-focus,
.style-alt input[type="button"].tab-focus,
.style-alt input[type="reset"].tab-focus,
.style-alt input[type="submit"].tab-focus,
.style-alt .file-upload-btn.tab-focus,
.style-alt ul.tabs li.tab-focus,
.style-alt a.button:active,
.style-alt a.page-numbers:active,
.style-alt button:active,
.style-alt input[type="button"]:active,
.style-alt input[type="reset"]:active,
.style-alt input[type="submit"]:active,
.style-alt .file-upload-btn:active,
.style-alt ul.tabs li:active,
.style-alt ul.tabs li.current,
a.button.style-alt:hover,
a.page-numbers.style-alt:hover,
span.page-numbers.current.style-alt ,
button.style-alt:hover,
input[type="button"].style-alt:hover,
input[type="reset"].style-alt:hover,
input[type="submit"].style-alt:hover,
.file-upload-btn.style-alt:hover,
ul.tabs li.style-alt:hover,
a.button.style-alt.tab-focus,
a.page-numbers.style-alt.tab-focus,
button.style-alt.tab-focus,
input[type="button"].style-alt.tab-focus,
input[type="reset"].style-alt.tab-focus,
input[type="submit"].style-alt.tab-focus,
.file-upload-btn.style-alt.tab-focus,
ul.tabs li.style-alt.tab-focus,
a.button.style-alt:active,
a.page-numbers.style-alt:active,
button.style-alt:active,
input[type="button"].style-alt:active,
input[type="reset"].style-alt:active,
input[type="submit"].style-alt:active,
.file-upload-btn.style-alt:active,
ul.tabs li.style-alt:active,
ul.tabs li.style-alt.current {
	color: 											var(--button-color-hover-alt);
	background: 									var(--button-background-hover-alt);
	border:											var(--button-border-hover-alt);
	border-top: 									var(--button-border-top-hover-alt);
	border-right: 									var(--button-border-right-hover-alt);
	border-bottom:									var(--button-border-bottom-hover-alt);
	border-left: 									var(--button-border-left-hover-alt);
	border-radius:									var(--button-border-radius-hover-alt);
	box-shadow:										var(--button-box-shadow-hover-alt);
	padding: 										var(--button-padding-hover-alt);	
	text-shadow: 									var(--button-text-shadow-hover-alt);
  	outline: 										var(--button-outline-hover-alt);
  	filter: 										var(--button-filter-hover-alt);
  	text-transform: 								var(--button-text-transform-hover-alt);
	font-variant: 									var(--button-font-variant-hover-alt);
	letter-spacing: 								var(--button-letter-spacing-hover-alt);
	transform: 										var(--button-transform-hover-alt);
}

.style-alt2 a.button,
.style-alt2 a.page-numbers,
.style-alt2 span.page-numbers,
.style-alt2 button,
.style-alt2 input[type="button"],
.style-alt2 input[type="reset"],
.style-alt2 input[type="submit"],
.style-alt2 .file-upload-btn,
.style-alt2 ul.tabs li,
.style-alt2 a.button:visited,
.style-alt2 a.page-numbers:visited,
a.button.style-alt2,
a.page-numbers.style-alt2,
span.page-numbers.style-alt2,
button.style-alt2,
input[type="button"].style-alt2,
input[type="reset"].style-alt2,
input[type="submit"].style-alt2,
.file-upload-btn.style-alt2,
ul.tabs li.style-alt2,
a.button.style-alt2:visited,
a.page-numbers.style-alt2:visited{
	font-family: 									var(--button-font-family-alt2);
	font-weight: 									var(--button-font-weight-alt2);
	font-size: 										var(--button-font-size-alt2);
	color: 											var(--button-color-alt2);
	background: 									var(--button-background-alt2);
	border:											var(--button-border-alt2);
	border-top: 									var(--button-border-top-alt2);
	border-right: 									var(--button-border-right-alt2);
	border-bottom:									var(--button-border-bottom-alt2);
	border-left: 									var(--button-border-left-alt2);
	border-radius:									var(--button-border-radius-alt2);
	box-shadow:										var(--button-box-shadow-alt2);
	padding: 										var(--button-padding-alt2);
	text-shadow: 									var(--button-text-shadow-alt2);
  	outline: 										var(--button-outline-alt2);
  	filter: 										var(--button-filter-alt2);
  	text-transform: 								var(--button-text-transform-alt2);
	font-variant: 									var(--button-font-variant-alt2);
	letter-spacing: 								var(--button-letter-spacing-alt2);
	transform: 										var(--button-transform-alt2);
}

.style-alt2 a.button:hover,
.style-alt2 a.page-numbers:hover,
.style-alt2 span.page-numbers.current,
.style-alt2 button:hover,
.style-alt2 input[type="button"]:hover,
.style-alt2 input[type="reset"]:hover,
.style-alt2 input[type="submit"]:hover,
.style-alt2 .file-upload-btn:hover,
.style-alt2 ul.tabs li:hover,
.style-alt2 a.button.tab-focus,
.style-alt2 a.page-numbers.tab-focus,
.style-alt2 button.tab-focus,
.style-alt2 input[type="button"].tab-focus,
.style-alt2 input[type="reset"].tab-focus,
.style-alt2 input[type="submit"].tab-focus,
.style-alt2 .file-upload-btn.tab-focus,
.style-alt2 ul.tabs li.tab-focus,
.style-alt2 a.button:active,
.style-alt2 a.page-numbers:active,
.style-alt2 button:active,
.style-alt2 input[type="button"]:active,
.style-alt2 input[type="reset"]:active,
.style-alt2 input[type="submit"]:active,
.style-alt2 .file-upload-btn:active,
.style-alt2 ul.tabs li:active,
.style-alt2 ul.tabs li.current,
a.button.style-alt2:hover,
a.page-numbers.style-alt2:hover,
span.page-numbers.current.style-alt2,
button.style-alt2:hover,
input[type="button"].style-alt2:hover,
input[type="reset"].style-alt2:hover,
input[type="submit"].style-alt2:hover,
.file-upload-btn.style-alt2:hover,
ul.tabs li.style-alt2:hover,
a.button.style-alt2.tab-focus,
a.page-numbers.style-alt2.tab-focus,
button.style-alt2.tab-focus,
input[type="button"].style-alt2.tab-focus,
input[type="reset"].style-alt2.tab-focus,
input[type="submit"].style-alt2.tab-focus,
.file-upload-btn.style-alt2.tab-focus,
ul.tabs li.style-alt2.tab-focus,
a.button.style-alt2:active,
a.page-numbers.style-alt2:active,
button.style-alt2:active,
input[type="button"].style-alt2:active,
input[type="reset"].style-alt2:active,
input[type="submit"].style-alt2:active,
.file-upload-btn.style-alt2:active,
ul.tabs li.style-alt2:active,
ul.tabs li.style-alt2.current {
	color: 											var(--button-color-hover-alt2);
	background: 									var(--button-background-hover-alt2);
	border:											var(--button-border-hover-alt2);
	border-top: 									var(--button-border-top-hover-alt2);
	border-right: 									var(--button-border-right-hover-alt2);
	border-bottom:									var(--button-border-bottom-hover-alt2);
	border-left: 									var(--button-border-left-hover-alt2);
	border-radius:									var(--button-border-radius-hover-alt2);
	box-shadow:										var(--button-box-shadow-hover-alt2);
	padding: 										var(--button-padding-hover-alt2);	
	text-shadow: 									var(--button-text-shadow-hover-alt2);
  	outline: 										var(--button-outline-hover-alt2);
  	filter: 										var(--button-filter-hover-alt2);
  	text-transform: 								var(--button-text-transform-hover-alt2);
	font-variant: 									var(--button-font-variant-hover-alt2);
	letter-spacing: 								var(--button-letter-spacing-hover-alt2);
	transform: 										var(--button-transform-hover-alt2);
}


a.button.disabled,
button.disabled,
input[type="button"].disabled,
input[type="reset"].disabled,
input[type="submit"].disabled,
ul.tabs li.disabled {
	opacity:										0.5;
	pointer-events:									none;
}

.wpcf7 input[type="file"] {
	cursor: 										pointer;
	width: 											100%;
	overflow: 										hidden;
}

.wpcf7 input[type="file"]:disabled {
	cursor: 										default;
}

.wpcf7 .wpcf7-submit:disabled {
	cursor: 										not-allowed;
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
	direction: 										ltr;
}

span.wpcf7-form-control {
	line-height: 									1.7em;
}

input[type="checkbox"], 
input[type="radio"] {
	position: 										relative;
	cursor: 										pointer;	
	display:										inline-block;
	width: 											20px !important;
	height: 										20px !important;
	transform: 										translateY(3px);
	appearance:										none;
	-webkit-appearance: 							none;
	background-color:								var(--input-background);
	border-top: 									var(--input-border-top);
	border-right: 									var(--input-border-right);
	border-bottom:									var(--input-border-bottom);
	border-left: 									var(--input-border-left);
	box-shadow:										var(--input-box-shadow);
	border-radius: 									0;
	font-size: 										var(--font-size-text);
	margin-right:									10px !important;
}

input[type="radio"] {
	border-radius: 									100%;
}

span.wpcf7-list-item-label + input[type="checkbox"],
span.wpcf7-list-item-label + input[type="radio"] {
  	margin-left: 									10px !important;
	margin-right: 									0 !important;
}

input[type="checkbox"]::before, 
input[type="checkbox"]:checked::after,
input[type="radio"]::before, 
input[type="radio"]:checked::after {
	content: 										" ";
	position: 										absolute;
	display: 										block;
	width: 											100%;
	height: 										100%;
	top: 											0;
	left: 											0;
	background-color:								transparent;
}

input[type="checkbox"]::before, 
input[type="checkbox"]:checked::after {
	border: 										none;
}

input[type="radio"]::before, 
input[type="radio"]:checked::after {
	border-radius: 									100%;
}

input[type="checkbox"]:checked::after { 
	content: 										"\e13e";
	transform: 										translate(0, 0);
	font-size: 										93%;
	font-family: 									var(--font-icons);
	color: 											var(--input-color);
	text-align: 									center;
	line-height: 									1;
}

.exes input[type="checkbox"]:checked::after { 
	content: 										"\e139";
	font-size: 										93%;
	transform: 										translate(0, 0);
}

.crosses input[type="checkbox"]:checked::after { 
	transform: 										translate(5px, -2px) rotate(45deg);
	font-size: 										93%;
}

.checkmarks input[type="checkbox"]:checked::after { 
	content: 										"\e13e";
	transform: 										translate(1px, -3px);
	font-size: 										80%;
}

input[type="radio"]:checked::after {
	background-color: 								var(--input-color);
	border: 										3px solid var(--white);
}

.application .flex {
	border-bottom:									1px solid var(--black);
	padding: 										0 0 var(--measure-small);
} 

.application .form-input:not(.input-user-message) {
	padding: 										0.7em 0 0.9em;
} 

@media (min-width: 861px) {
	.application .form-input:not(:last-of-type):not(.input-user-message) {
		border-right:									1px solid var(--black);
		padding-right: 									var(--measure-base);
	} 
}
 
form .block-button,
.wpcf7-response-output {
	grid-column: 									1 / -1;
	margin-top: 									0.5em;
}

.wpcf7 form .wpcf7-response-output {
	margin: 										0.6em 10% 0;
	padding: 										0.5em var(--measure-small);
	font-size: 										90%;
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.validating .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
	display: 										none;
    border-color: 									unset;
}

.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: 									var(--warning);
}

.wpcf7-not-valid-tip {
	display: 										block;
    font-size: 										90%;
	font-weight: 									normal;
	padding: 										0.5em var(--measure-small);
	background: 									var(--input-background) !important;
	border: 										var(--input-border) !important;
	color: 											red !important;
}

input + .wpcf7-not-valid-tip {
	display: 										none !important;
}

.wpcf7-not-valid {
    box-shadow: 									inset 0 0 20px var(--warning);
	animation-name: 								headShake; 
    animation-duration: 							2s; 
	animation-delay: 								0.5s;
    animation-iteration-count: 						1;
    animation-timing-function: 						var(--main-trans-easing);
}

.wpcf7-form .wpcf7-spinner {
	display: 										inline-block;
	width: 											0;
	transform: 										translate(12px, 1px);
	opacity: 										0;
	transition: 									all 0.1s var(--main-trans-easing);
}

.wpcf7-form.submitting .wpcf7-spinner {
	opacity: 										1;
	transition: 									all 0.1s var(--main-trans-easing);
}

/* Keyframes for the spin animation */
@keyframes spin {
    from {
        transform: 									rotate(0deg);
    }
    to {
        transform: 									rotate(360deg);
    }
}

span.wpcf7-spinner::before {
	display:										inline-block;
	font-family: 									var(--font-icons);
	content:   										"\e1f9";
	font-size:										20px;
	color: 											var(--input-background);
	animation-name: 								spin; 
    animation-duration: 							1s; 
    animation-iteration-count: 						infinite;
	animation-timing-function: 						linear;
}

/* Review Questions & Redirect
--------------------------------------------- */
.review-form {
	text-align:									center;
	opacity:									0;
	transition:									all var(--main-trans-speed) var(--main-trans-easing);
}

.review-form.active {
	opacity:									1;
	transition:									all var(--main-trans-speed) var(--main-trans-easing);
}

.review-form .question {
	font-weight:								bold;
	font-size:									150%;
	margin-bottom:								10px;
}

.review-form button {
	margin:										0 5px;
}


/*--------------------------------------------------------------
# Mobile Styles
--------------------------------------------------------------*/

/* 2: Phones (landscape) + Tablets (portrait) */
@media (max-width: 860px) {	
	#request-quote-modal textarea {
		height: 										20vh;
	}
}

/* 1: Phones (portrait) */
@media (max-width: 576px) {	
	body .wpcf7 form .flex {
		grid-template-columns: 							1fr !important;
	}
		
	body .wpcf7 form label {
		text-align: 									center;
	}
}