/**
* Forms
*/
:root {
	--input-background: #e9e9e9;
}
.is-root-container input[type="text"],
.is-root-container input[type="email"],
.is-root-container input[type="tel"],
.is-root-container input[type="number"],
.is-root-container input[type="password"],
.is-root-container input[type="date"],
.is-root-container input[type="datetime-local"],
.is-root-container input[type="month"],
.is-root-container input[type="week"],
.is-root-container input[type="url"],
.is-root-container input[type="search"] {
	max-width: 100%;
	min-height: 36px;
	margin:0;
	width: 100%;
	background-color: var(--color_2);
	background-color:var(--input-background);
	padding:5px 15px;
	border-radius: 0;
	border:unset;
	font-size: 16px;
}

.is-root-container textarea {
	outline: unset;
	border:unset;
    border-radius: 0;
    padding:15px;
	background-color: var(--color_2);
	background-color:var(--input-background);
	width: 100%;
}

.is-root-container input[type="checkbox"] { 
	display: none;
}

.is-root-container input[type="checkbox"] + * { 
	padding-left: 20px;
	position: relative;
	display: inline-block;
	cursor: pointer;
}

.is-root-container input[type="checkbox"] + *:before {
	content: '';
	position: absolute;
	left: 0;
	top: 3px;
	height: 12px;
	width: 12px;
	border:1px solid var(--color_3);
	border:1px solid var(--color_8-8);
	background-color:var(--input-background);
}

.is-root-container input[type="checkbox"]:checked + *:before { 
	background-color: transparent;
	background-image: linear-gradient(var(--color_3),var(--color_3));
	background-image: linear-gradient(var(--page-color-background),var(--page-color-background));
	background-size: 8px 8px;
	background-position: center;
	background-repeat: no-repeat;
}

.is-root-container input[type="radio"] {
	display: none;
} 

.is-root-container input[type="radio"] + * {
	position: relative;
	display: inline-block;
	cursor: pointer;
}

.is-root-container input[type="radio"] + *:before {
    content: '';
    position: relative;
	display: inline-block;
    height: 12px;
    width: 12px;
	border-radius: 100%;
    border: 1px solid var(--color_3);
    border: 1px solid var(--color_8-8);
    background-color: var(--input-background);
	margin-right: 5px;
}

.is-root-container input[type="radio"]:checked + *:before {
    background-color: transparent;
    background-image: radial-gradient(circle at 50% 50%, var(--color_3) 60%,var(--color_2) 60%);
    background-image: radial-gradient(circle at 50% 50%, var(--page-color-background) 60%,var(--color_2) 60%);
    background-size: 8px 8px;
    background-position: center;
    background-repeat: no-repeat;
}

.is-root-container select {
	max-width: 100%;
	min-height: 36px;
	margin:0;
	width: 100%;
	background-color: var(--color_2);
	background-color:var(--input-background);
	padding:5px 15px;
	border-radius: 0;
	border-color:var(--color_8-2);
	cursor: pointer;
	font-size: 16px;
}
/**
* Placeholder
*/
.is-root-container ::placeholder {
	color: var(--color_1);
	opacity: 1;
}

.is-root-container :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: var(--color_1)!important;
}

.is-root-container ::-ms-input-placeholder { /* Microsoft Edge */
  color: var(--color_1)!important;
}

input:active {
	outline: none;
}
	
input:focus {
	outline:0;
}

.is-root-container input[type="reset"] {
	background-image: url('../img/refresh.svg');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 20px;
	padding-left: 25px;
 }

/**
* Forms > Contact form 7
*/
body .wpcf7-not-valid-tip {
    color: var(--color_2);
    font-size: 12px;
    background: var(--color_8);
    padding: 3px 5px;
    z-index: 2;
	top:-22px;
	opacity: .9;
    position: absolute;
    font-weight: normal;
	pointer-events: none;
}

body .wpcf7 form.invalid .wpcf7-response-output, 
body .wpcf7 form.unaccepted .wpcf7-response-output, 
body .wpcf7 form.payment-required .wpcf7-response-output,
body .wpcf7 form.sent .wpcf7-response-output {
    background: var(--color_8);
    border: unset;
    width: auto;
    padding:10px 15px;
    margin: 0 auto;
    font-size: 12px;
	color: var(--color_2);
	min-height: 42px;
	display: flex;
	max-width: 300px;
	justify-content: center;
	align-items: center;
}

body .wpcf7-submit[disabled],
body .wpcf7-submit[disabled]:hover {
    background-color: #cecece!important;
	transform: unset!important;
}

/**
* Search Form
*/
#main-search {
	padding-right:15px;
}
.search-form {
	display: flex;
}
.search-form,
.search-form label {
	position: relative;
}

.search-form label {
	width: calc(100% - 25px);
}


/**
* Search Form > Input field > Reset Chrome styles
*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px var(--color_3_background-5) inset !important;
}

input[type="search"]::-webkit-search-cancel-button {
	-webkit-appearance: none;
	height: 1em;
	width: 1em;
	border-radius: 50em;
	background: url('../img/close.svg') no-repeat 50% 50%;
	background-size: contain;
	opacity: 0;
	pointer-events: none;
}

input[type="search"]:focus::-webkit-search-cancel-button {
	opacity: 1;
	pointer-events: all;
	cursor: pointer;
}


/**
* Search Form > Input field
*/
.search-form input[type="search"] {
	border: 1px solid var(--color_3);
	background: var(--input-background);
	border-bottom-left-radius: 5px;
	border-top-left-radius: 5px;
	font-size: 14px;
	line-height: 19px;
	letter-spacing: .02em;
	font-family: var(--title-font);
	padding:10px 15px;
	width: 100%;
	height:40px;
	position: relative;
}

.search-form input[type="search"]:focus {
	outline: none!important;
}


/**
* Search Form > Submit button
*/
.search-form input[type="submit"] {
	border: 1px solid var(--color_3);
	background-color: var(--color_3);
	padding: 0;
	background-image: url('../img/search-white.svg');
	background-repeat: no-repeat;
	background-size: 20px 20px;
	background-position: center;
	min-height: auto;
	font-size: 0;
	line-height: 0;
	display: block;
	height: 40px;
	width: 40px;
	border-bottom-right-radius: 5px;
	border-top-right-radius: 5px;
}

/**
* Search Form > Mobile
*/
@media (max-width:992px) {
	/**
	* Search Form
	*/
	/**
	* Search Form > Input field
	*/
	.search-form input[type="search"] {
		font-size: 12px;
		line-height: 12px;
		height:36px;
	}

	/**
	* Search Form > Submit button
	*/
	.search-form input[type="submit"] {
		height: 36px;
		width: 36px;
	}

}

/**
* Gravity Form
*/
.is-root-container .gform_wrapper.gravity-theme .gform_fields {
	display: block!important;
}

.acseo-modal .gform_title {
	display: none;
}

.is-root-container .ginput_container {
	margin-bottom: 15px;
}

.is-root-container .gfield {
	padding:0;
}

.is-root-container .gform-field-label {
	font-weight: 700;
	font-size: 18px;
	line-height: 22px;
	margin-bottom: 8px;
}

/**
* Gravity Form > Validation messages
*/
.gform_required_legend {
	font-size: 14px;
	line-height: 16px;
	font-family: var(--title-font);
	color:var(--color_3);
	display: inline-block;
	margin-bottom: 10px;
}

.gform_required_legend {
	color:var(--color_3);
}

.is-root-container .gform_validation_errors {
	padding:15px;
	border:1px solid;
}

.is-root-container .gform_validation_errors,
.is-root-container .gform_validation_errors *,
.is-root-container .gfield_validation_message {
	color:var(--color_9-6)!important;
	font-size: 14px!important;
	line-height: 16px!important;
}

.is-root-container .gfield_validation_message {
	transform: translateY(-10px);
}

.gfield_required {
	color:var(--color_3-7);
}

/**
* Gravity Form > Multiple inputs container
*/
.ginput_complex {
	display: flex;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px;
	width: auto;
	margin-bottom:10px;
}

.gform-grid-col {
	padding-left:15px;
	padding-right:15px;
}

.gf_name_has_2 .gform-grid-col {
	flex-basis: 50%;
	max-width: 50%;
	width: 50%;
}
/**
* Gravity Form > Multiple inputs container
*/
.is-root-container .gfield_radio {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.is-root-container .gform_wrapper .gfield-choice-input {
	display: none!important;
} 

.is-root-container .gform_wrapper .gfield-choice-input+label {
	max-width: unset!important;
	margin-right: 15px;
	position: relative;
	display: block;
}

/**
* Gravity Form > Label
*/
.is-root-container .gform_wrapper label {
	margin-bottom: 8px;
	cursor: pointer;
}

.is-root-container .gform-field-label--type-sub,
.is-root-container .gform-field-label--type-inline {
	margin-bottom: 0!important;
	font-size: 14px;
	font-weight: 400;
}

/**
* Gravity Form > Section title
*/
.is-root-container .gform_wrapper.gravity-theme .gsection {
	padding: 0;
	border-bottom: unset;
}

.is-root-container .gsection_title {
    font-size: 25px;
    line-height: 30px;
    font-family: var(--title-font);
    font-weight: 700;
    position: relative;
	padding-top: 20px;
}

.is-root-container .gsection_title:after {
    display: block;
    margin-top: 20px;
    margin-bottom: 20px;
    content: '';
    height: 7px;
    border-radius: 10px;
    width: 50px;
    background-color: var(--color_3);
    background-color: var(--page-color-background);
}

/**
* Gravity Form > Submit
*/
.is-root-container .gform_wrapper #field_submit, 
.is-root-container .gform_wrapper.gravity-theme .gform_footer {
    display: flex;
    justify-content: center;
}

.is-root-container .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
	min-width: 160px;
}

/**
* Modal > Gravity Form > Submit
*/
.is-root-container .acseo-modal .gform_footer.top_label {
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 30px;
	width: 100%;
	text-align: center;
	background: var(--color_2);
}

.form-selector input[type="submit"] {
	display: none!important;
}
