/**
 * Form Elements & 3rd Party Form Customizations
 */


button {
	position: relative;
}

input[type="button"],
input[type="submit"],
button[type="submit"] {
	color:            #283B4D;
	background-color: #FFC700;
}
input[type="button"]:hover,
input[type="button"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
button[type="submit"]:hover,
button[type="submit"]:focus {
	background-color: #FFC700 !important;
}

/*! ----- Button classes ----- */

.btn {
	visibility: visible;
	position: relative;
	padding-bottom: 12px;
	line-height: 1;
	vertical-align: middle;
}

.btn a span {
	color: #fff;
	padding: 1em 2.25em;
	border: solid 2px #fff;
	border-radius: 200px;
	transition: all 0.2s ease;
}



/*! ===== Search Form ===== */

.search-form {
	position: relative;
}

.search-form input {
	margin: 0;
}

.search-form input[type="text"] {
	padding-right: 8em !important;  /* accomodate approximate width of search button overlap */
	font-family: inherit;  /* use new theme font */
}

.search-form input[type="submit"] {
	position: absolute;
	/* inside border of text input */
	top: 1px;
	right: 1px;
	/* match search input field */
	font-size: inherit;
	line-height: 22px;
}



/*! ===== Gravity Forms ===== */

div.gf_simple_horizontal div.gform_body,
div.gf_simple_horizontal_wrapper div.gform_body {
	width: 100%;
}

.gform_wrapper form .left_label li.gfield_html_formatted,
.gform_wrapper form .right_label li.gfield_html_formatted {
	margin-left: 0 !important;
}

div.gf_simple_horizontal div.gform_body,
div.gf_simple_horizontal_wrapper div.gform_body {
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

.gform_wrapper .left_label input.small,
.gform_wrapper .left_label input.large,
.gform_wrapper .left_label select.large,
.gform_wrapper .left_label textarea.large,
.gform_wrapper .left_label textarea.medium,
.gform_wrapper .left_label textarea.small,
.gform_wrapper .right_label input.large,
.gform_wrapper .right_label select.large,
.gform_wrapper .right_label textarea.large,
.gform_wrapper .right_label textarea.medium,
.gform_wrapper .right_label textarea.small {
	width: 100%;
}

.gform_wrapper form.gf_simple_horizontal div.gform_body {
	width: 100%;
	max-width: 100%;
}

.gform_wrapper form ul:not(.top_label) li.gfield_html_formatted {
	margin-left: 0 !important;
}

.gform_wrapper .gform_footer:not(.top_label) {
	padding: 0;
	margin-left: 0;
}

@media only screen and (min-width: 641px) {

	.gform_wrapper .gform_footer:not(.top_label) {
		padding: 0 0 10px !important;
		margin-left: 0 !important;
		width: 70%;
	}

}



/**
 * Marketo Forms
 * 2020-03
 */

.mktoForm {
	font-family: inherit !important;
	color: inherit !important;
}

/* rows & columns */
body .mktoForm .mktoFormRow {
	margin-right: -1em;  /* snug right edge to content boundary */
}

body .mktoForm .mktoFormCol {
	/* keep within row bounds */
	max-width: calc( 100% - 1em);
}
body .mktoForm .mktoFormCol:nth-last-child(2) {
	/* margin-right: 0 !important;  /* remove whitespace after last column */
}
@media only screen and (max-width: 480px) {
	body .mktoForm .mktoFormCol {
		/* margin-right: 0 !important; */
	}
}

/* fields */
body .mktoForm label.mktoLabel,
body .mktoForm .mktoRequiredField label.mktoLabel,
body .mktoForm input[type=text],
body .mktoForm input[type=url],
body .mktoForm input[type=email],
body .mktoForm input[type=tel],
body .mktoForm input[type=number],
body .mktoForm input[type=date],
body .mktoForm textarea.mktoField,
body .mktoForm select.mktoField {
	color: #333;
}
/* html text containers seem to have widths coded; keep within column bounds */
body .mktoForm .mktoHtmlText {
	max-width: 100%;
}

/* buttons */
body .mktoForm .mktoButtonWrap .mktoButton[type=submit],
body .mktoForm .mktoButtonWrap .mktoButton[type=submit]:active,
body .mktoForm .mktoButtonWrap.mktoSimple .mktoButton,
body .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:active {
	color:      #283B4D;
	background: #FFC700;
	border-color: transparent;
}
body .mktoForm .mktoButtonWrap .mktoButton[type=submit]:hover,
body .mktoForm .mktoButtonWrap .mktoButton[type=submit]:focus,
body .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover,
body .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:focus {
	background: #FFC700 !important;
	border-color: transparent;
}


/*** Marketo Forms within page builder containers ***/
.wpb_row .mktoForm {
	width: 100% !important;
}


/*** Marketo Lightbox forms ***/
body .mktoModal .mktoModalMain {
	padding: 30px;
}

body .mktoModal .mktoModalContent .mktoModalClose {
	font-family: inherit;
}



/*** Request a Demo form [2020-03] ***/
#mktoForm_1045 {}

/* Disclaimer Text */
#mktoForm_1045 .mktoHtmlText {
	width: 100% !important;
	font-size: 0.9em;
	line-height: normal;
}



/**
 * DEPRECATED: Hubspot forms replaced with Marketo 2020-03
 */

/*! ===== Hubspot Forms ===== */

/* Field label */
.hbspt-form label span {
	color:#333!important;
	font-family:inherit;
	font-weight:400;
}
.col.span_12.light .hbspt-form label span {
	color: inherit !important;
}

/* Field */
div.hbspt-form .hs-form-field {
	padding-top:15px;
}

/* Field within single column [2019-06] */
form.hs-form fieldset.form-columns-1 .hs-input {
	width: 100%;  /* override 95% setting coming from Hubspot */
}

/* Checkbox */
.hs-form-checkbox {
	list-style:none!important;
}

/* Buttons */
.hbspot-form .hs-button {
	text-transform: uppercase;
}
/* DISABLED 2019-03
.hs-button.primary.large {
	background-color: #FFC700!important;
	font-weight: 700;
}
*/

/* Select Fields */
.hbspt-form .hs-fieldtype-select .input {
	padding: 14px;
	border: 1px solid #ccc;
	-webkit-transition: all 0.2s ease;
	        transition: all 0.2s ease;
}
.hbspt-form .hs-fieldtype-select .input:focus-within {
	border-color: #999;
}

/* reset select field style */
/* ref:  https://codepen.io/JustMaier/pen/oLPdWj */
.hbspt-form .hs-fieldtype-select select {
	position: relative;
	padding: 0 !important;
	font-size: 16px;
	line-height: normal;
    -webkit-box-shadow: none !important;
       -moz-box-shadow: none !important;
         -o-box-shadow: none !important;
	        box-shadow: none !important;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	/* down arrow */
	background-color: transparent;
	background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNDA1LjQ1NiA0MDUuNDU2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0MDUuNDU2IDQwNS40NTY7IiB4bWw6c3BhY2U9InByZXNlcnZlIiB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxNnB4Ij4NCjxnPg0KCTxwYXRoIGQ9Ik03NC4xMzQsNjQuMTQ3Yy00Ljk4NSwwLjA3OC05LjkxMSwyLjE2My0xMy40MzgsNS42ODhsLTU1LDU1QzIuMDk2LDEyOC40MzIsMCwxMzMuNDkyLDAsMTM4LjU4MyAgIHMyLjA5NiwxMC4xNTEsNS42OTcsMTMuNzVsMTgzLjI4MSwxODMuMjgxYzMuNTk5LDMuNjAxLDguNjU5LDUuNjk3LDEzLjc1LDUuNjk3czEwLjE1MS0yLjA5NiwxMy43NS01LjY5N2wxODMuMjgxLTE4My4yODEgICBjMy42MDEtMy41OTksNS42OTctOC42NTksNS42OTctMTMuNzVzLTIuMDk2LTEwLjE1MS01LjY5Ny0xMy43NWwtNTUtNTVjLTMuNTk4LTMuNTkxLTguNjUxLTUuNjgxLTEzLjczNC01LjY4MSAgIGMtNS4wODMsMC0xMC4xMzYsMi4wOS0xMy43MzQsNS42ODFMMjAyLjcyOCwxODQuMzk3TDg4LjE2Niw2OS44MzNDODQuNDk5LDY2LjE2OSw3OS4zMTgsNjQuMDcsNzQuMTM0LDY0LjE0N0w3NC4xMzQsNjQuMTQ3eiIgZmlsbD0iIzk2OTY5NiIvPg0KPC9nPg0KPC9zdmc+DQo=);
	background-position: right 10px top 50%;
	background-repeat: no-repeat;
}
.col.span_12.light .hbspt-form .hs-fieldtype-select .input {
	border-color: rgba(255, 255, 255, 0.6);
}
.col.span_12.light .hbspt-form .hs-fieldtype-select .input:focus-within {
	border-color: rgba(255, 255, 255, 0.8);
}
.col.span_12.light .hbspt-form .hs-fieldtype-select select {
	color: #fff;
	background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNDA1LjQ1NiA0MDUuNDU2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0MDUuNDU2IDQwNS40NTY7IiB4bWw6c3BhY2U9InByZXNlcnZlIiB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxNnB4Ij4NCjxnPg0KCTxwYXRoIGQ9Ik03NC4xMzQsNjQuMTQ3Yy00Ljk4NSwwLjA3OC05LjkxMSwyLjE2My0xMy40MzgsNS42ODhsLTU1LDU1QzIuMDk2LDEyOC40MzIsMCwxMzMuNDkyLDAsMTM4LjU4MyAgIHMyLjA5NiwxMC4xNTEsNS42OTcsMTMuNzVsMTgzLjI4MSwxODMuMjgxYzMuNTk5LDMuNjAxLDguNjU5LDUuNjk3LDEzLjc1LDUuNjk3czEwLjE1MS0yLjA5NiwxMy43NS01LjY5N2wxODMuMjgxLTE4My4yODEgICBjMy42MDEtMy41OTksNS42OTctOC42NTksNS42OTctMTMuNzVzLTIuMDk2LTEwLjE1MS01LjY5Ny0xMy43NWwtNTUtNTVjLTMuNTk4LTMuNTkxLTguNjUxLTUuNjgxLTEzLjczNC01LjY4MSAgIGMtNS4wODMsMC0xMC4xMzYsMi4wOS0xMy43MzQsNS42ODFMMjAyLjcyOCwxODQuMzk3TDg4LjE2Niw2OS44MzNDODQuNDk5LDY2LjE2OSw3OS4zMTgsNjQuMDcsNzQuMTM0LDY0LjE0N0w3NC4xMzQsNjQuMTQ3eiIgZmlsbD0iI2ZmZiIvPg0KPC9nPg0KPC9zdmc+DQo=);
}

/* Legal Consent block */
.hbspt-form .legal-consent-container {
	margin: 1em 0;
	font-size: 0.9em;
	line-height: 1.4;
}

/* Actions (submit) container */
.wpb_raw_code .hbspt-form .actions {
    padding-top: 30px;
}

/* Errors */
.hbspt-form .hs-form-field input.hs-input.error {
	border-color: #FFC700 !important;
}

.hbspt-form .hs-error-msgs {
	margin: 0;
	padding: 1em;
	color: #FFC700;
	line-height: normal;
}
.hbspt-form .hs-error-msgs li {
	margin: 0 0 1em;
	list-style: none;
}
.hbspt-form .hs-error-msgs li:last-of-type {
	margin-bottom: 0;
}

/* Other */
div.hbspt-form ul.inputs-list.multi-container {
	margin-left:0;
}
