/********************************************************************************
--- Form Styling ---
*********************************************************************************/
/*-----------Standard Forms-----------*/
form { margin: 0; }
/*-----------Label Styles-----------*/
label { cursor: pointer; display: block; margin: 0; font-weight:700;}
/*-----------Required-----------*/
.req { color: var(--secondary); font-weight: 700;}
/*-----------styling on all basic form elements-----------*/
input[type="text"], 
input[type="password"], 
input[type="date"], 
input[type="datetime"], 
input[type="datetime-local"], 
input[type="month"], 
input[type="week"], 
input[type="email"], 
input[type="number"], 
input[type="search"], 
input[type="tel"], 
input[type="time"],
input[type="url"],
textarea,
select {font-size: 1.000rem; -webkit-appearance: none; background-color: #fff; border: 1px solid var(--light-gray); color: var(--near-black); display: block; margin: 0; padding: 20px !important; width: 100%; /*box-shadow:0 0 0 2px rgba(18, 18, 20, 0), inset 0 5px 1px 0 rgba(18, 18, 20, 0.05);*/ -webkit-transition: border linear 0.2s/*, box-shadow linear 0.2s*/; transition: border linear 0.2s/*, box-shadow linear 0.2s*/; border-radius: 0; font-weight:normal; border:0; height: 58px; line-height: 58px;}
/*-----------styling on all basic form focus elements-----------*/
input[type="text"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="time"]:focus,
input[type="url"]:focus,
textarea:focus,
select:focus { border-color: var(--black); outline:none;}
body.user-is-tabbing input[type="text"]:focus,
body.user-is-tabbing input[type="password"]:focus,
body.user-is-tabbing input[type="date"]:focus,
body.user-is-tabbing input[type="datetime"]:focus,
body.user-is-tabbing input[type="datetime-local"]:focus,
body.user-is-tabbing input[type="month"]:focus,
body.user-is-tabbing input[type="week"]:focus, 
body.user-is-tabbing input[type="email"]:focus,
body.user-is-tabbing input[type="number"]:focus,
body.user-is-tabbing input[type="search"]:focus,
body.user-is-tabbing input[type="tel"]:focus, 
body.user-is-tabbing input[type="time"]:focus,
body.user-is-tabbing input[type="url"]:focus,
body.user-is-tabbing textarea:focus,
body.user-is-tabbing select:focus {border: none; outline: auto; outline: 2px solid #7aacfe !important; /* for non-webkit browsers */ outline: 5px auto -webkit-focus-ring-color !important;}
/*-----------styling on all basic form disabled elements-----------*/
input[type="text"][disabled],
fieldset[disabled] input[type="text"],
input[type="password"][disabled],
fieldset[disabled] input[type="password"],
input[type="date"][disabled],
fieldset[disabled] input[type="date"],
input[type="datetime"][disabled],
fieldset[disabled] input[type="datetime"],
input[type="datetime-local"][disabled],
fieldset[disabled]
input[type="datetime-local"],
input[type="month"][disabled],
fieldset[disabled] input[type="month"],
input[type="week"][disabled],
fieldset[disabled] input[type="week"], 
input[type="email"][disabled], 
fieldset[disabled] input[type="email"], 
input[type="number"][disabled], 
fieldset[disabled] input[type="number"], 
input[type="search"][disabled], 
fieldset[disabled] input[type="search"], 
input[type="tel"][disabled], 
fieldset[disabled] input[type="tel"], 
input[type="time"][disabled], 
fieldset[disabled] input[type="time"], 
input[type="url"][disabled], 
fieldset[disabled] input[type="url"], 
textarea[disabled], 
fieldset[disabled] textarea { background-color: var(--light-gray); }
/*-----------input submit-----------*/
input[type="submit"] { -webkit-appearance: none; }
input::placeholder { color: var(--near-black) }
select .gf_placeholder { color: var(--near-black) !important }
/*-----------textarea-----------*/
textarea { min-height: 6.944em; resize: none; max-width: 100%; }
textarea[rows] { height: auto; }
/*-----------select-----------*/
select { -webkit-appearance: none !important; background-color: #fff; background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+); background-position: 100% center; background-repeat: no-repeat; line-height: normal; /*height: auto;*/ }
:-moz-any(select) {background-image:none;}
.ginput_container_multiselect select { background-image: none; }
select::-ms-expand {display: none;}
/*-----------other form elements-----------*/
input[type="checkbox"] + label, input[type="radio"] + label { display: inline-block; margin-left: 0.444em; margin-right: 0.889em; margin-bottom: 0; vertical-align: baseline; }
.input-radio, .input-checkbox {vertical-align:top; margin:0.444em 0; line-height:1.2;}
.input-radio input[type="radio"], .input-checkbox input[type="checkbox"] {width:18px; height:18px; margin:0 0.222em 0 0; padding:0;}
/*-----------Normalize file input width-----------*/
input[type="file"] { width: 100%; }
/*-----------We add basic fieldset styling-----------*/
fieldset { border: 1px solid var(--light-gray); padding: 1.111em; margin: 1.000em 0; }
fieldset legend { font-weight: 700; background: white; padding: 0 0.167em; margin: 0; margin-left: -0.167em; }
/*-----------Custom replaced checkbox, radio, switch-----------*/
.checkbox, .radio, .switch {margin: 1.000em 0; }
.checkbox label, .radio label {font-size: 1em; text-transform: none; font-weight: 400; line-height: 1;}
.checkbox *, .radio * { cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}
.checkbox input, .radio input { opacity: 0; margin: 0; outline: none;}
.checkbox span, .radio span { position: relative; display: inline-block; margin-left: -1.067em; vertical-align: middle; text-align: center; width: 1.067em; height: 1.067em; line-height: 0.8571em; background: #fff; border: 1px solid var(--light-gray); }
.checkbox span {border-radius: 2px; }
.radio span { border-radius: 1.067em; }
.checkbox:hover span, .radio:hover span { border-color: var(--primary); }
.checkbox span:before, .radio span:before {content: ""; display: inline-block;  vertical-align: middle; opacity: 0; color: var(--primary); line-height: 1; transition: var(--global-transition); }
.checkbox span:before {font-size: 0.667em; content: "\e94b"; font-family: var(--icon-family);}
.radio span:before {width: 0.6875em; height: 0.6875em; border-radius: 0.6875em; background-color: var(--primary);}
.checkbox input[type=checkbox]:checked + span, .radio input[type=radio]:checked + span { border-color: var(--primary); background-color: var(--primary); }
.radio input[type=radio]:checked + span { background-color: #fff; }
.checkbox input[type=checkbox]:checked + span:before, .radio input[type=radio]:checked + span:before { color: #fff; opacity: 1;}
.checkbox input[type=checkbox]:disabled + span, .radio input[type=radio]:disabled + span { border-color: var(--light-gray) !important; background-color: var(--light-gray) !important; }
.radio input[type=radio]:checked:focus + span:before {  background-color: var(--black);}
.radio input[type=radio]:checked:focus + span { border-color: #000000; background-color: #fff; }
.checkbox input[type=checkbox]:checked:focus + span, .switch input[type=checkbox]:checked:focus + span { background-color: var(--black);}


/* the following adds a box around the radio or checkbox group if desired. On page or within popup */
/*.main .gform_wrapper.gravity-theme fieldset { border: 1px solid var(--light-gray); padding: 1.111em; margin: 1em 0; }
.main .gform_wrapper.gravity-theme legend.gfield_label { margin-bottom: 0px; }
.mfp-content .gform_wrapper.gravity-theme fieldset { border: 1px solid var(--light-gray); padding: 1.111em; margin: 1em 0; }
.mfp-content .gform_wrapper.gravity-theme .gfield_label { margin-bottom: 0px; }*/


/* Gravity Forms Radio & Checkbox */
body .gform_wrapper.gravity-theme .ginput_container_radio .gfield_radio .gchoice,
body .gform_wrapper.gravity-theme .ginput_container_checkbox .gfield_checkbox .gchoice { display: flex; align-items: center; }
body .gform_wrapper.gravity-theme .ginput_container_radio .gfield_radio .gchoice > input,
body .gform_wrapper.gravity-theme .ginput_container_checkbox .gfield_checkbox .gchoice > input { -webkit-appearance: none;	appearance: none;	background-color: #fff;	margin: 0; font: inherit; color: currentColor; width: 1em;	height: 1em; border: 0.1em solid currentColor;	border-radius: 0;	display: grid!important; place-content: center; margin-right: 0.4rem;	cursor: pointer; }
body .gform_wrapper.gravity-theme .ginput_container_radio .gfield_radio .gchoice > input:focus,
body .gform_wrapper.gravity-theme .ginput_container_checkbox .gfield_checkbox .gchoice > input:focus { outline: 0.075rem solid currentColor; outline-offset: 0.15rem; }
body .gform_wrapper.gravity-theme .ginput_container_radio .gfield_radio .gchoice > input::before,
body .gform_wrapper.gravity-theme .ginput_container_checkbox .gfield_checkbox .gchoice > input::before { content: ""; width: 1em; height: 1em; box-shadow: inset 1em 1em currentColor; transform: scale(0); transition: 0.15s transform ease-in-out; cursor: pointer; background-color: CanvasText; }
body .gform_wrapper.gravity-theme .ginput_container_radio .gfield_radio .gchoice > input:checked::before,
body .gform_wrapper.gravity-theme .ginput_container_checkbox .gfield_checkbox .gchoice > input:checked::before { transform: scale(1); }
body .gform_wrapper.gravity-theme .ginput_container_radio .gfield_radio .gchoice > label, body .gform_wrapper.gravity-theme .ginput_container_checkbox .gfield_checkbox .gchoice > label { margin: 0.25rem 0; font-weight: 400; }

/* Gravity Forms Radio */
body .gform_wrapper.gravity-theme .ginput_container_radio .gfield_radio .gchoice > input,
body .gform_wrapper.gravity-theme .ginput_container_radio .gfield_radio .gchoice > input::before { border-radius: 50%; }

/*CTA Popup Form related*/
span.gform_description { margin-bottom: 1rem; display: block; }
.gform_confirmation_message { padding: 1rem; text-align: center; }

/*#gform_4 { position: relative; margin: 33px 0 0;}
#gform_4 input[type="text"] { border-radius: 0; border: none; padding: 10px 80px 10px 20px !important; height: 50px; line-height: 50px; }
#gform_4 .gform_footer {position: absolute;right: 0;top: 0;padding: 0 !important;margin: 0 !important;width: 60px;height: 100%;display: flex;align-items: center;background: var(--primary);justify-content: center; transition: ease background 350ms; }
#gform_4 .gform_footer input[type="image"] {clip-path: none !important;padding: 15px !important;margin: 0 !important;text-align: center;width: 100% !important;height: 100% !important;}
#gform_4 .gform_footer:hover {background: var(--secondary)}*/

/*div#validation_message_4_1 { position: absolute; left: 0; top: 100%; }*/

@media (min-width: 640px) {
	#gform_5 .gform_wrapper.gravity-theme .gform_fields {grid-column-gap: 50px !important; grid-row-gap: 20px !important; }
}
