/* 
bla#20272E
Blu#006EFF
BluHov#338BFF
Gre#35D32F
GrayText#798895
BG#1e252c
Tea#5cf6dd;
Ora#FF540D
text-size1: h1 extended 500 2.5rem/1.25em (40/50)
text-size2: h2 extended 600 1.75rem / 1.375em (28/38)
text-size3: hX extended 600 1.438rem / 1.435 (23/33)
text-size4: h3 400  1.25rem/1.5em (20/30) letteer spacing
text-size5: h4 700 1.125rem / 1.444em (18/26) letter spacing 
text-size6: h5 700 0.9375rem / 1.533em (15/23)
body 400 1rem / 1.625em (16/26)
*/

::-webkit-input-placeholder {color: #54595c;}
::-moz-placeholder {color: #54595c;}
:-ms-input-placeholder {color: #54595c;}
:-moz-placeholder {color: #54595c;}

input:focus::-webkit-input-placeholder { opacity: 0.2; }
input:focus:-moz-placeholder { opacity: 0.2; }
input:focus::-moz-placeholder { opacity: 0.2; }
input:focus:-ms-input-placeholder { opacity: 0.2; }
textarea:focus::-webkit-input-placeholder { opacity: 0.2; }
textarea:focus:-moz-placeholder { opacity: 0.2; }
textarea:focus::-moz-placeholder { opacity: 0.2; }
textarea:focus:-ms-input-placeholder { opacity: 0.2; }

.gform_wrapper {
	margin-top: 0 !important;
	position: relative;
}

body .gform_wrapper .top_label .gfield_label,
body .gform_wrapper legend.gfield_label {
	font-weight: 700;
	font-size: 0.8125rem;
	line-height: 1.533;
	letter-spacing: .1em;
	text-transform: uppercase;
	margin-bottom: 0;
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

body .gform_fields input,
body .gform_fields select,
body .gform_fields textarea {
	background: #f1f6f3;
	border-color: transparent;
	border-width: 1px;
	padding: .75em .5em !important;
}

body .gform_fields select {
	min-height: 2.65rem;
	-webkit-appearance: none;
	appearance: none;
}

body .gform_wrapper .gfield_required {
	color: inherit;
}

/* errors */
body .gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
body .gform_wrapper li.gfield_error textarea {
	border: 1px solid #FF540D;
}

body .gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container,
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {
	margin-top: 0;
	color: #20272E;
}

body .gform_wrapper div.validation_error {
	color: #FF540D;
	border: none;
}

body .gform_wrapper li.gfield.gfield_error,
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
	border: none;
	background: none;
	color: #FF540D;
	padding: 0;
}

body .gform_wrapper .validation_message {
	color: #FF540D;
}

body .gform_wrapper .field_description_below .gfield_description {
	padding-top: 5px;
}

body .gform_wrapper li.gfield.gfield_error,
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {}

body .gform_wrapper ul.gform_fields li.gfield.gfield_error+li.gfield.gfield_error {
	margin-top: 16px;
}

html body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html:first-child {
	margin-top: 0 !important;
}

/* end errors */

.ginput_container_select,
.ginput_address_state {
	position: relative;
}

.ginput_container_select:before,
.ginput_address_state:before {
	content: "";
	position: absolute;
	background-color: #f1f6f3;
	right: 2px;
	top: 2px;
	bottom: 4px;
	width: 35px;
	border: none;
	pointer-events: none;
	background-image: url(../images/drop-down.svg);
	background-size: .9em auto;
	background-repeat: no-repeat;
	background-position: center;
	cursor: pointer;
}

.ginput_address_state:before {
	bottom: auto;
	height: 43px;
}

.recaptcha--terms a,
.recaptcha--terms-absolute a {
	color: #006EFF;
}

body .gform_wrapper.gravity-theme .gfield_repeater_wrapper input {
	border: none;
}

body .gform_wrapper.gravity-theme .gfield_repeater_cell legend,
body .gform_wrapper.gravity-theme .gfield_repeater_cell label {
	color: #20272E;
	font-size: .7em;
	font-weight: 700;
}

body .gform_wrapper.gravity-theme .ginput_complex label {
	padding-top: 2px;
	padding-left: 7px;
}

@media (min-width: 641px) {
	html body .recaptcha--terms-absolute {
		position: absolute;
		bottom: 18px;
		left: 280px;
		max-width: 350px !important;
	}
}

html body .gform_wrapper ul li.field_description_below div.ginput_container_checkbox, 
html body .gform_wrapper ul li.field_description_below div.ginput_container_radio{
	padding-top: 16px;
	padding-bottom: 16px;
}

body .gform_wrapper ul.gfield_checkbox li {
	position: relative;
	padding-left: 2rem !important;
}

body .gform_wrapper ul.gfield_checkbox li input[type="checkbox"] {
	position: absolute;
	left: 0;
	top: 0;
	vertical-align: top !important;
	opacity: .05;
	z-index: 1;
}

body .gchoice_select_all,
body .gform_wrapper ul.gfield_checkbox li input[type=checkbox]+label,
body .gform_wrapper ul.gfield_radio li input[type=radio]+label,
body .gform_wrapper ul.gfield_checkbox li input[type=checkbox]:checked+label,
body .gform_wrapper ul.gfield_radio li input[type=radio]:checked+label {
	font-weight: 300;
	font-size: 1rem;
}


body .gform_wrapper ul.gfield_checkbox li input[type=checkbox]+label:before {
	content: "";
	background: #f1f6f3;
	border: 1px solid #f1f6f3;
	position: absolute;
	top: 0px;
	left: 0;
	height: 1.5rem;
	width: 1.5rem;
	border-radius: 0;
}

body .gform_wrapper ul.gfield_checkbox li input[type=checkbox]:checked+label:after {
	content: "";
	background-image: url(../images/blue-check.svg);
	background-size: 1rem auto;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	height: 1.5rem;
	width: 1.5rem;
}

.full-width-button .button {
	min-width: 100%;
}

.green-button .button {
	background-color: #00d700;
	border-color: #00d700;
	color: #181e23;
}

.green-button .button:hover {
	background-color: #181e23;
	border-color: #00d700;
	color: #fff;
}

body .gform_wrapper input[type="submit"] {
	padding: .75em 1em;
	font-size: 0.875rem !important;
}

.gfield_repeater_item .gfield_repeater_cell:nth-child(5) legend {
	display: none;
}

/* .gform_fields li,
.gform_fields li * {
	margin: 0 !important;
	padding: 0 !important;
}



.gform_fields select {
	border: none;
}

.gform_fields input:focus,
.gform_fields select:focus,
.gform_fields textarea:focus {
	outline: none;
	box-shadow: 0 0 9px rgba(0,0,0,0.3);
}

.gform_fields select {
	padding-right: 33px !important;
}

.gform_wrapper input[type="submit"] {
	background-color: transparent;
	-webkit-appearance: none;
	min-width: 180px;
	cursor: pointer;
	padding: 1em 2em !important;
}

.gform_wrapper input[type="submit"]:hover {
	color: #f27040;
}

.gform_fields textarea {
	max-height: 100px;
}

body .ginput_container {
	margin-bottom: 15px !important;
}

.ginput_container_select {
	position: relative;
}

.select-wrap,
.ginput_container_select {
	position: relative;
	border: 1px solid rgba(125, 133, 138, 0.25);
}

.select-wrap:before,
.ginput_container_select:before {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 40px;
	background-color: #fff;
	border: none;
	border-left: 0;
	pointer-events: none;
	background-image: url(images/drop-down-icon.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto 13px;
}

select {
	width: 100%;
	border: 0;
	border-radius: 0;
	height: 40px;
	padding: 5px;
	outline: none;
}

select::-ms-expand {
    display: none;
}

body .validation_error,
body .gfield_description,
body .validation_message {
	border-color: #f27040 !important;
	font-size: 16px !important;
	font-weight: 300 !important;
	border-top-width: 1px !important;
	border-bottom-width: 1px !important;
	color: #f27040 !important;
}

body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
	max-width: 100% !important;
}

body .gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
body .gform_wrapper li.gfield_error textarea {
	border-color: #f27040 !important;
}

body .gform_wrapper li.gfield.gfield_error,
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
	border-color: transparent !important;
	background-color: rgba(2, 114, 182, 0.1) !important;
	border-top: none !important;
	border-radius: 8px !important;
}

body .gform_wrapper ul.gfield_checkbox li input[type=checkbox]+label,
body .gform_wrapper ul.gfield_radio li input[type=radio]+label {
	font-weight: 300 !important;
	padding-left: 10px !important;
	position: relative;
}

body .gfield_checkbox li input[type=checkbox] {
	vertical-align: top !important;
	margin: 0 0 0 -37px !important;
	position: relative;
	opacity: 0;
	padding-left: 0 !important;
}

body .gform_wrapper ul.gfield_checkbox li input[type=checkbox]+label:before {
	content: "";
	background: #fff;
	border: 1px solid #203597;
	position: absolute;
	top: 0px;
	left: -20px;
	height: 22px;
	width: 22px;
	border-radius: 6px;
}

body .gform_wrapper ul.gfield_checkbox li input[type=checkbox]:checked+label:after {
	content: "";
	background: #f27040;
	position: absolute;
	top: 4px;
	left: -16px;
	height: 14px;
	width: 14px;
	border-radius: 4px;
}

body .gform_wrapper ul.gfield_checkbox li,
.gform_wrapper ul.gfield_radio li {
	overflow: visible !important;
	margin-left: 38px !important;
}

@media (min-width: 641px) {
	
	body .gform_wrapper.gform_validation_error .top_label li.gfield.gfield_error.gf_left_half,
	body .gform_wrapper.gform_validation_error .top_label li.gfield.gfield_error.gf_right_half {
		max-width: 50%;
	}
	
	.gf_left_half .ginput_container {
		padding-right: 15px !important;
	}
	
	
	.gf_right_half .ginput_container {
		padding-left: 15px !important;
	}
} */

body .gform_validation_errors {
	color: #FF540D !important;
	border-color: #FF540D;
	margin-bottom: 15px;
}

body .gform_validation_errors>h2 {
	color: #FF540D !important;
}

body .gform_validation_errors>h2:before {
	content: none;
}

@media (min-width: 641px) {
	body .gform_wrapper ul.gform_fields {
		margin-right: -16px !important;
	}
	
	body .gform_wrapper .gf_progressbar {
		width: 100%;
		border-radius: 14px;
	}
}
.gform_wrapper .gf_progressbar:after {
	display: none !important;
}

.gf_progressbar {
	padding: 7px !important;
	background: rgb(204,208,206);
	background: linear-gradient(rgba(204,208,206,1) 0%, rgba(237,242,239,1) 100%);	
}

.gf_progressbar_percentage {
	background: #006EFF !important;
	border-radius: 20px !important;
	height: 18px !important;
}

.gf_progressbar_percentage > span {
	display: none !important;
}

body .gform_wrapper .gf_progressbar_wrapper h3.gf_progressbar_title {
	opacity: 1;
	margin: 0 0 15px 0 !important;
	font-family: MaisonNeueExtended, sans-serif;
	font-weight: 600;
	font-size: 1.125rem;
	color: #006EFF;
}

.progress-bar--steps {
	display: block;
	margin-bottom: .4em;
	color: #000;
}

.progress-bar--dash {
	display: none;
}

body .gform_wrapper .gf_progressbar_wrapper { 
	border-bottom: 1px solid #ccc;
	padding-bottom: 45px;
	margin-bottom: 45px;
}

@media (min-width: 767px) {
	.gf_progressbar_wrapper {
		display: flex;
	}
	
	body .gform_wrapper .gf_progressbar_wrapper h3.gf_progressbar_title {
		min-width: 270px;
		margin-bottom: 0 !important;
	}
	
	.gf_progressbar {
		align-self: flex-end;
	}
}

body .gform_wrapper .gform_page_footer {
	margin-top: 45px;
	padding-top: 45px;
	border-top-style: solid;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
}

body .gform_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container input[type=text] {
	margin-bottom: 0;
}

@media  (min-width: 641px) {
	body .gform_wrapper .gform_page_footer .button.gform_next_button {
		margin-right: 0;
	}
}

.gform_previous_button {
	background: transparent;
	color: #006EFF;
}

@media (max-width: 991px) {
	.gfmc-column {
		width: 100% !important;
	}
}

@media (min-width: 992px) {
	.gf-columns-one-third {
		width: 33% !important;
		padding-right: 30px;
	}
	
	.gf-columns-two-third {
		width: 67% !important;
	}
}

#calculator-optimization-step-graph {
	margin-top: 0;
	max-width: 400px;
}