/*
 * Global Styles
 * Classes: .content-text for ul li lists
 * ------------------------------------------------------------------------------------------------
*/

/* Colors:
#0E3C4D -- Deep Blue
#F8F8F8 -- Light gray
#F4620E -- Orange
#028BBD -- Blue

#162330 -- Gray100
#2D3944 -- Gray90
#454F59 -- Gray80
#5B656E -- Gray70
#737B83 -- Gray60
#8A9197 -- Gray50
#A2A7AC -- Gray40
#B9BDC0 -- Gray30
#D0D3D6 -- Gray20
#E7E9EA -- Gray10
#FFFFFF -- Gray00


background-image: linear-gradient(180deg, #FF7C1F 0%, #FF541C 100%);
background-image: linear-gradient(180deg, #FF541C 0%, #FF7C1F 100%);

Old Colors:
#171717 -- Black
#FD6801 -- Orange
#0287BF -- Blue
#E9F7FC -- Blue bg
#83898B -- Gray
#32CD32 -- LimeGreen
#FF4F4F -- Red
*/



body {
	color: #162330;
	font-family: Montserrat, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: normal;
	line-height: 26px;
	word-break: break-word;
}

img,
svg  {
	max-width: 100%;
	height: auto;
}

iframe {
	max-width: 100%;
}

p {
	margin-bottom: 15px;
}
p:only-child,
p:last-child {
	margin-bottom: 0;
}
p:empty {
	display: none;
}
p:blank {
	display: none;
}
p:-moz-only-whitespace {
	display: none;
}

ul:last-child {
	margin-bottom: 0;
}
ul:last-of-type li:last-child {
	margin-bottom: 0;
}

ol li {
	margin-bottom: 10px;
}
ol li ol {
	margin-top: 10px;
	margin-bottom: 15px;
}







/*
 * Color
 * ------------------------------------------------------------------------------------------------
*/
.color-green {
	color: #F4620E;
}
.color-gold {
	color: #f6921e;
}
.color-orange {
	color: #F4620E;
}
.color-red {
	color: #D22727;
}
.color-blue {
	color: #008ac9;
}
.color-dark {
	color: #002130;
}
.color-black {
	color: #000;
}







/*
 * Text
 * ------------------------------------------------------------------------------------------------
*/
.text-small {
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
}
.text-small-medium {
	font-size: 14px;
	font-weight: 500;
	line-height: 22px;
}
.text-normal {
	font-size: 18px;
	font-weight: 400;
	line-height: 145%;
}
.text-medium {
	font-size: 18px;
	font-weight: 500;
	line-height: 145%;
}
.text-caption {
	font-size: 10px;
	font-weight: 400;
	line-height: 14px;
}






/*
 * Typography
 * ------------------------------------------------------------------------------------------------
*/
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
	font-family: inherit;
}

.h1_big,
.section-top .page-title {
	font-size: 46px;
	font-weight: bold;
	line-height: 120%;
}
.h2_big,
.section-title {
	font-size: 36px;
	font-weight: 600;
	line-height: 120%;
}

h1, .h1 {
	font-size: 46px;
	font-weight: bold;
	line-height: 120%;
}
h2, .h2 {
	font-size: 36px;
	font-weight: 600;
	line-height: 120%;
}
h3, .h3 {
	font-size: 28px;
	font-weight: 600;
	line-height: 120%;
}
h4, .h4 {
	font-size: 24px;
	font-weight: 600;
	line-height: 140%;
	line-height: 33px;
}
h5, .h5 {
	font-size: 20px;
	font-weight: 600;
	line-height: 135%;
}
h6, .h6 {
	font-size: 16px;
	font-weight: 600;
	line-height: 135%;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	margin-top: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-bottom: 15px;
}

@media (max-width: 767px) {
	.h1_big,
	.section-top-title,
	.section-top .page-title {
		font-size: 32px;
	}
	.h2_big,
	.section-title {
		font-size: 28px;
	}
	
	h1, .h1 {
		font-size: 32px;
	}
	h2, .h2 {
		font-size: 28px;
	}
	h3, .h3 {
		font-size: 24px;
	}
	h4, .h4 {
		font-size: 20px;
	}
	h5, .h5 {
		font-size: 18px;
	}
}





/*
 * Typography Content
 * ------------------------------------------------------------------------------------------------
*/
.entry-content blockquote + h2,
.entry-content blockquote + h3,
.entry-content blockquote + h4,
.entry-content blockquote + header h2,
.entry-content form + h2,
.entry-content form + h3,
.entry-content form + h4,
.entry-content form + header h2,
.entry-content ol + h2,
.entry-content ol + h3,
.entry-content ol + h4,
.entry-content ol + header h2,
.entry-content p + h2,
.entry-content p + h3,
.entry-content p + h4,
.entry-content p + header h2,
.entry-content table + h2,
.entry-content table + h3,
.entry-content table + h4,
.entry-content table + header h2,
.entry-content ul + h2,
.entry-content ul + h3,
.entry-content ul + h4,
.entry-content ul + header h2 {
	margin-top: 1.5em;
}





/*
 * List Items
 * str_replace('<ul>', '<ul class="list_items">', $fields['key'])
 * ------------------------------------------------------------------------------------------------
*/
ul.list_style_disc {
	list-style: none;
	padding-left: 18px;
}
ul.list_style_disc li::before {
	content: '\2022';
	display: inline-block;
	color: inherit;
	font-size: 18px;
	font-weight: bold;
	width: 18px;
	margin-left: -18px;
}

ul.list_items {
	padding-left: 20px;
}
ul.list_items li {
	list-style: none;
	list-style-image: url('data:image/svg+xml,%3Csvg width="14" height="11" viewBox="0 0 14 11" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M1 4.87097L5.08511 9L13 1" stroke="%23058753" stroke-width="2"/%3E%3C/svg%3E');
	
	position: relative;
	list-style-type: none;
	padding-left: 5px;
	margin-left: 0;
	margin-bottom: 10px;
}

ul.list_items_middle {
	padding-left: 0;
}
ul.list_items_middle li {
	position: relative;
	list-style-type: none;
	padding-left: 25px;
	margin-left: 0;
	margin-bottom: 10px;
}
ul.list_items_middle li:before {
	content: '';
	display: inline-block;
	background-image: url('data:image/svg+xml,%3Csvg width="14" height="11" viewBox="0 0 14 11" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M1 4.87097L5.08511 9L13 1" stroke="%23058753" stroke-width="2"/%3E%3C/svg%3E');
	background-repeat: no-repeat;
	background-size: contain;
	width: 14px;
	height: 11px;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

ul.check_list_items {
	padding-left: 0;
}
ul.check_list_items li {
	position: relative;
	list-style-type: none;
	padding-left: 30px;
	margin-left: 0;
	margin-bottom: 10px;
}
ul.check_list_items li:before {
	content: '';
	display: inline-block;
	background-image: url('data:image/svg+xml,%3Csvg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Ccircle cx="10" cy="10" r="8" fill="%23F4620E"/%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M10.002 0C15.5255 0 20.0039 4.47837 20.0039 10.002C20.0039 15.5255 15.5216 20 10.002 20C4.48229 20 0 15.5216 0 10.002C0 4.48229 4.47837 0 10.002 0ZM15.6469 7.35173L8.77667 14.218L4.93022 10.5698L6.5 9L8.78058 11.0785L14.081 5.77804L15.6469 7.35173Z" fill="white"/%3E%3C/svg%3E');
	background-repeat: no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	position: absolute;
	left: 0;
	top: 0;
}






/*
 * Form
 * ------------------------------------------------------------------------------------------------
*
label {
	
}
.input-text,
input[type=email],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=url],
select {
	font-size: 16px;
	font-weight: normal;
	background-color: #FBFBFD;
	border: 1px solid #DBDBDB;
	border-radius: 4px;
	height: 42px;
	line-height: 40px;
	padding: 7px 14px 8px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: 0;
}
select {
	background-image: url("data:image/svg+xml,%3Csvg width='13' height='8' viewBox='0 0 13 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6.5 6L12 1' stroke='%23000000' stroke-width='1.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center right;
	background-position-x: calc(100% - 15px);
	padding: 8px 40px 8px 22px;
	line-height: normal;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
select::-ms-expand {
	display: none;
}
textarea {
	background-color: #FBFBFD;
	border: 1px solid #DBDBDB;
	border-radius: 4px;
	padding: 10px 14px;
	width: 100%;
	height: 100px;
	min-width: 100%;
	max-width: 100%;
	min-height: 100px;
	max-height: 900px;
	outline: 0;
	
	background-image: url('data:image/svg+xml,%3Csvg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Ccircle cx="9" cy="9" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="5" cy="9" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="1" cy="9" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="9" cy="5" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="5" cy="5" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="9" cy="1" r="1" fill="%23C4C4C4"/%3E%3C/svg%3E');
	background-repeat: no-repeat;
	background-size: 10px;
	background-position: right bottom;
	background-position-x: calc(100% - 5px);
	background-position-y: calc(100% - 5px);
	resize: vertical !important;
}
textarea::-webkit-resizer {
	display: none;
}

.input-text:hover,
input[type=email]:hover,
input[type=number]:hover,
input[type=password]:hover,
input[type=search]:hover,
input[type=tel]:hover,
input[type=text]:hover,
input[type=url]:hover,
textarea:hover {
	border-color: #1E1E1E;
}

.input-text:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=url]:focus,
textarea:focus {
	border-color: #0287BF;
	box-shadow: 0 0 0 1px #0287BF;
}

input:valid {
	
}

input:invalid {
	border-color: #FF4F4F;
	box-shadow: 0 0 0 1px #FF4F4F;
}

input:disabled {
	border-color: #DBDBDB;
	background-color: #DBDBDB;
	box-shadow: none;
	pointer-events: none;
	cursor: default;
}

input[type=password] {
	padding-right: 45px;
}
*/

input::-webkit-input-placeholder { color: #8A9197; }
input::-moz-placeholder          { color: #8A9197; }
input:-moz-placeholder           { color: #8A9197; }
input:-ms-input-placeholder      { color: #8A9197; }
input::placeholder               { color: #8A9197; }
input::-ms-expand                { color: #8A9197; }

textarea::-webkit-input-placeholder { color: #8A9197; }
textarea::-moz-placeholder          { color: #8A9197; }
textarea:-moz-placeholder           { color: #8A9197; }
textarea:-ms-input-placeholder      { color: #8A9197; }
textarea::placeholder               { color: #8A9197; }
textarea::-ms-expand                { color: #8A9197; }

input:focus::-webkit-input-placeholder { color: transparent; }
input:focus::-moz-placeholder          { color: transparent; }
input:focus:-moz-placeholder           { color: transparent; }
input:focus:-ms-input-placeholder      { color: transparent; }
input:focus::placeholder               { color: transparent; }
input:focus::-ms-expand                { color: transparent; }

@media (max-width: 767px) {
	.input-text,
	input:not([type=submit]),
	input[type=email],
	input[type=number],
	input[type=password],
	input[type=search],
	input[type=tel],
	input[type=text],
	input[type=url],
	select,
	textarea {
		font-size: 16px;
	}
}






/*
 * Form CheckBox
 * ------------------------------------------------------------------------------------------------
*
label.label-checkbox {
	cursor: pointer;
}
input[type="checkbox"] {
	padding: 0 10px 0 0;
	margin: 0;
	cursor: pointer;
}
input[type="checkbox"]:disabled {
	cursor: default;
}

input[type="checkbox"] {
	display: inline-block;
	background-color: #fff;
	border: 2px solid #bbb;
	border-radius: 2px;
	position: relative;
	color: #555;
	clear: none;
	line-height: 0;
	margin: -4px 5px 0 0;
	outline: 0;
	padding: 0;
	text-align: center;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	min-width: 20px;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
	transition: .1s border-color ease-in-out;
	box-shadow: none;
	cursor: pointer;
}
input[type="checkbox"]:hover {
	border-color: #0287BF;
}
input[type=checkbox]:checked:before {
	content: '';
	display: inline-block;
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.5' y='0.5' width='19' height='19' rx='1.5' fill='%230287BF' stroke='%230287BF'/%3E%3Cpath d='M6 10L9 13L15 7' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 20px;
	height: 20px;
	border-radius: 2px;
	position: absolute;
	left: -2px;
	top: -2px;
	cursor: pointer;
}
*/






/*
 * Form Radio
 * ------------------------------------------------------------------------------------------------
*
label.label-radio {
	cursor: pointer;
}
input[type="radio"] {
	padding: 0 10px 0 0;
	margin: 0;
	cursor: pointer;
}
input[type="radio"]:disabled {
	cursor: default;
}

input[type="radio"] {
	display: inline-block;
	background-color: #fff;
	border: 2px solid #DDD;
	border-radius: 100%;
	position: relative;
	color: #555;
	clear: none;
	line-height: 0;
	margin: -4px 5px 0 0;
	outline: 0;
	padding: 0;
	text-align: center;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	min-width: 20px;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
	transition: .1s border-color ease-in-out;
	box-shadow: none;
	cursor: pointer;
}
input[type="radio"]:hover {
	border-color: #0287BF;
}
input[type=radio]:checked:before {
	content: '';
	display: inline-block;
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='10' cy='10' r='9' stroke='%230287BF' stroke-width='2'/%3E%3Ccircle cx='10' cy='10' r='4' fill='%230287BF' stroke='%230287BF' stroke-width='2'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 20px;
	height: 20px;
	border-radius: 100%;
	position: absolute;
	left: -2px;
	top: -2px;
	cursor: pointer;
}
*/







/*
 * Global Buttons
 * ------------------------------------------------------------------------------------------------
*/
.site_btn {
	display: inline-block;
	background: linear-gradient(269.56deg, #FF7C1F 0.38%, #FF541C 99.68%);
	border: none;
	position: relative;
	min-width: 160px;
	height: 55px;
	border-radius: 30px;
	padding: 0 25px;
	color: #fff;
	font-family: inherit;
	font-size: 20px;
	font-weight: 600;
	font-style: normal;
	line-height: 55px;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
}
.site_btn:focus {
	color: #fff;
	outline: 0;
	text-decoration: none;
}
.site_btn:hover {
	background: linear-gradient(270.19deg, #FF541C 0.13%, #FF7C1F 99.81%);
	color: #fff;
	text-decoration: none;
}
.site_btn.pressed,
.site_btn.loading:hover {
	background: linear-gradient(270.19deg, #ff4102 0.13%, #ff6d05 99.81%);
	color: #fff;
}
.site_btn.disabled,
.site_btn:disabled {
	background: linear-gradient(180deg, #FF7C1F 0%, #FF541C 100%), linear-gradient(89.6deg, #FFD0AE 0.29%, #FF835A 99.66%);
	color: #fff;
	pointer-events: none;
}
.site_btn[href^="tel:"] {
	font-size: 16px;
}
.site_btn[href^="tel:"]:before {
	content: '';
	display: inline-block;
	background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="24" height="25" viewBox="0 0 24 25" fill="none"%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M5.94531 2.53918C4.92969 2.53918 4.34375 2.53918 3.32813 2.50012C3.01563 2.50012 2 2.3048 2 3.98449C2.03906 9.60949 4.10938 13.7501 7.50781 16.9923C10.75 20.3907 14.8906 22.4611 20.5156 22.5001C22.1953 22.5001 22 21.4845 22 21.172C21.9609 20.1564 21.9609 19.5314 21.9609 18.5157C21.9609 17.4611 21.6094 17.0704 20.6328 16.6017C20.0859 16.3282 19.8516 16.2501 19.4609 16.0548C18.0938 15.4298 17.7031 15.7814 16.6875 16.8361C16.5313 16.9923 16.4141 17.1095 16.3359 17.1876C15.6328 17.9298 15.4375 17.8126 14.8516 17.6173C12.9766 16.9923 11.3359 15.8986 9.96875 14.5314C8.60156 13.1642 7.50781 11.5236 6.88281 9.64855C6.6875 9.06262 6.57031 8.86731 7.3125 8.16418C7.39063 8.08606 7.50781 7.96887 7.66406 7.81262C8.71875 6.79699 9.07031 6.40637 8.44531 5.03918C8.25 4.60949 8.13281 4.41418 7.89844 3.8673C7.42969 2.85168 7.03906 2.53918 5.94531 2.53918Z" fill="white"/%3E%3C/svg%3E');
	background-repeat: no-repeat;
	background-size: contain;
	width: 24px;
	height: 25px;
	position: relative;
	top: -1px;
	margin-right: 10px;
	vertical-align: middle;
}





.site_small_btn {
	display: inline-block;
	background: linear-gradient(269.56deg, #FF7C1F 0.38%, #FF541C 99.68%);
	border: none;
	position: relative;
	min-width: 160px;
	height: 30px;
	border-radius: 15px;
	padding: 0 25px;
	color: #fff;
	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	font-style: normal;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
}
.site_small_btn:focus {
	color: #fff;
	outline: 0;
	text-decoration: none;
}
.site_small_btn:hover {
	background: linear-gradient(270.19deg, #FF541C 0.13%, #FF7C1F 99.81%);
	color: #fff;
	text-decoration: none;
}
.site_small_btn.pressed,
.site_small_btn.loading:hover {
	background: linear-gradient(270.19deg, #ff4102 0.13%, #ff6d05 99.81%);
	color: #fff;
}
.site_small_btn.disabled,
.site_small_btn:disabled {
	background: linear-gradient(180deg, #FF7C1F 0%, #FF541C 100%), linear-gradient(89.6deg, #FFD0AE 0.29%, #FF835A 99.66%);
	color: #fff;
	pointer-events: none;
}





.site_outline_btn {
	display: inline-block;
	background-color: #fff;
	border: 1px solid #162330;
	position: relative;
	min-width: 160px;
	height: 30px;
	border-radius: 15px;
	padding: 0 20px;
	color: #162330;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	font-style: normal;
	line-height: 28px;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
}
.site_outline_btn:focus {
	color: #162330;
	outline: 0;
	text-decoration: none;
}
.site_outline_btn:hover {
	background-color: #D0D3D6;
	color: #162330;
	text-decoration: none;
}
.site_outline_btn.pressed,
.site_outline_btn.loading:hover {
	background-color: #b5babe;
	border-color: #162330;
	color: #fff;
}
.site_outline_btn.disabled,
.site_outline_btn:disabled {
	background-color: #fff;
	color: #B9BDC0;
	border-color: #B9BDC0;
	pointer-events: none;
}






/*
 * Button Animation
 * ------------------------------------------------------------------------------------------------
*/
.pulsingButton {
	box-shadow: 0 0 0 0 rgba(227, 34, 35, 0.75);
	-webkit-animation: pulsing 1.5s infinite cubic-bezier(0.66, 0, 0, 1);
	-moz-animation: pulsing 1.5s infinite cubic-bezier(0.66, 0, 0, 1);
	-ms-animation: pulsing 1.5s infinite cubic-bezier(0.66, 0, 0, 1);
	animation: pulsing 1.5s infinite cubic-bezier(0.66, 0, 0, 1);
	transition: all 300ms ease-in-out;
}

a.pulsingButton:hover {
	-webkit-animation: none;
	-moz-animation: none;
	-ms-animation: none;
	animation: none;
}

.pulsingButton:before {
	animation: shake 1.5s infinite cubic-bezier(0.66, 0, 0, 1);
	animation-delay: 0.75s;
}

@-webkit-keyframes pulsing {
  to {
    box-shadow: 0 0 0 15px rgba(227, 34, 35, 0);
  }
}

@-moz-keyframes pulsing {
  to {
    box-shadow: 0 0 0 15px rgba(227, 34, 35, 0);
  }
}

@-ms-keyframes pulsing {
  to {
    box-shadow: 0 0 0 15px rgba(227, 34, 35, 0);
  }
}

@keyframes pulsing {
  to {
    box-shadow: 0 0 0 15px rgba(227, 34, 35, 0);
  }
}

@keyframes shake {
  0%, 50%, 60%, 70%, 80%, 90%, 100% {
    transform: rotate(0deg);
  }
  5%, 15%, 35%, 45% {
    transform: rotate(-5deg);
  }
  10%, 20%, 30%, 40% {
    transform: rotate(5deg);
  }
}



















/*
 * Global Link
 * --------------------------------------------------
*/
.right-angle-btn:after {
	content: '';
	display: inline-block;
	background-image: url('data:image/svg+xml,%3Csvg width="7" height="11" viewBox="0 0 7 11" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M1 1L5.5 5.5L1 10" stroke="%230287BF" stroke-width="1.5"/%3E%3C/svg%3E');
	background-repeat: no-repeat;
	background-size: contain;
	width: 7px;
	height: 11px;
	margin-left: 5px;
	position: relative;
	top: -1px;
	vertical-align: middle;
}






/*
 * Contact Form 7
 * --------------------------------------------------
*/
.wpcf7-form {
	margin-bottom: 0;
}
.wpcf7-form label {
	color: #212121;
	width: 100%;
	margin-bottom: 15px;
}
.wpcf7-form p {
	margin-bottom: 0;
}
.wpcf7-form input[type=email],
.wpcf7-form input[type=number],
.wpcf7-form input[type=password],
.wpcf7-form input[type=search],
.wpcf7-form input[type=tel],
.wpcf7-form input[type=text],
.wpcf7-form input[type=url] {
	width: 100%;
	max-width: 100%;
	margin-top: 1px;
}
.wpcf7-form select {
	width: 100%;
}
.wpcf7-form .select2 {
	width: 100% !important;
	max-width: 100%;
	margin-top: 1px;
}
.wpcf7-form textarea {
	width: 100%;
	height: 100px;
	min-width: 100%;
	max-width: 100%;
	min-height: 100px;
	max-height: 900px;
	margin-top: 1px;
	
	display: inline-block;
	background-image: url('data:image/svg+xml,%3Csvg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Ccircle cx="9" cy="9" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="5" cy="9" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="1" cy="9" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="9" cy="5" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="5" cy="5" r="1" fill="%23C4C4C4"/%3E%3Ccircle cx="9" cy="1" r="1" fill="%23C4C4C4"/%3E%3C/svg%3E');
	background-repeat: no-repeat;
	background-size: 10px;
	background-position: right bottom;
	background-position-x: calc(100% - 5px);
	background-position-y: calc(100% - 5px);
	resize: vertical !important;
}
.wpcf7-form textarea::-webkit-resizer {
	display: none;
}
.wpcf7-form .wpcf7-not-valid,
.wpcf7-form .wpcf7-not-valid:hover,
.wpcf7-form .wpcf7-not-valid:focus {
	border-color: #FF0000;
}
.wpcf7-form .submit_wrap {
	position: relative;
	text-align: right;
	margin-top: 35px;
}
.wpcf7-form .wpcf7-submit {
	width: 330px;
	max-width: 100%;
	cursor: pointer;
}
.wpcf7 form.submitting .wpcf7-submit {
	pointer-events: none;
	cursor: default;
}
.wpcf7-form .submit_wrap .ajax-loader,
.wpcf7-form .submit_wrap .wpcf7-spinner {
	position: absolute;
	top: calc(50% - 12px);
	right: 350px;
	margin: 0;
}
.wpcf7-not-valid-tip {
	color: #F44336;
	font-size: 14px;
	line-height: 20px;
	font-weight: normal;
	display: block;
	margin-top: 3px;
}
.wpcf7 form .wpcf7-response-output {
	padding: 10px 15px 10px;
	border-radius: 4px;
	margin: 30px 0 0;
}
@media (max-width: 767px) {
	.wpcf7-form .submit_wrap {
		text-align: center;
		margin-top: 0;
	}
	.wpcf7-form .wpcf7-submit {
		width: 100%;
		max-width: 400px;
		margin-top: 25px;
	}
}







/*
 * Modal
 * --------------------------------------------------
*/
.modal .modal-header {
	border-bottom: none;
	padding: 23px 40px 10px;
}
.modal .modal-header .close {
	display: inline-block;
	background-image: url(../img/icons/close-circle.html);
	background-repeat: no-repeat;
	background-size: contain;
	width: 37px;
	height: 37px;
	opacity: 1;
	padding: 0;
	margin: 0;
	border-radius: 55px;
	position: absolute;
	top: 0;
	right: 0;
	
	backface-visibility: hidden;
	-webkit-font-smoothing: subpixel-antialiased;
	
	-webkit-transform: translate(50%, -50%);
	-ms-transform: translate(50%, -50%);
	transform: translate(50%, -50%);
}
.modal .modal-header .close span {
	display: none;
}
.modal .modal-header .modal-title {
	color: #000;
	margin: 0;
}
.modal .modal-body {
	padding: 15px 40px 40px;
}

.modal .modal-body::-webkit-scrollbar {
    width: 7px;
    height: 7px;
}
.modal .modal-body::-webkit-scrollbar-track-piece  {
    background-color: #FAFAFA;
}
.modal .modal-body::-webkit-scrollbar-thumb:vertical {
    height: 30px;
    background-color: #C0C0C0;
}
.modal .modal-body::-webkit-scrollbar-track  {
	box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
	border-radius: 7px;
}
.modal .modal-body::-webkit-scrollbar-thumb {
	background-color: darkgrey;
	border-radius: 7px;
}

.modal-backdrop {
	background-color: #000;
}
.modal-backdrop.in {
	filter: alpha(opacity=50);
	opacity: 0.5;
}

.modal-dialog-centered {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: calc(100% - (0.5rem * 2));
}
.modal-dialog-centered .modal-content {
	width: 100%;
}
@media (min-width: 576px) {
	.modal-dialog-centered {
		min-height: calc(100% - (1.75rem * 2));
	}
}

@media (min-width: 768px) {
	.modal .modal-dialog {
		width: 650px;
		max-width: 96%;
		max-width: calc(100% - 30px);
	}
}
@media (max-width: 767px) {
	.modal .modal-dialog {
		width: 600px;
		max-width: calc(100% - 60px);
		margin-left: auto;
		margin-right: auto;
	}
	body:not(.logged-in) .modal-dialog {
		margin-top: 24px;
	}
	.modal .modal-header {
		padding: 23px 15px 10px;
	}
	.modal .modal-header .close {
		right: 33px;
	}
	.modal .modal-body {
		padding: 15px 15px 25px;
	}
}
@media (max-width: 500px) {
	.modal .modal-dialog {
		max-width: calc(100% - 30px);
	}
}







/*
 * Contacts
 * ------------------------------------------------------------------------------------------------
*/
.contacts {
	
}
.contacts a.phone:before {
	content: '';
	background-image: url('data:image/svg+xml,%3Csvg width="20" height="20" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M16.138 12.26c-.65-.642-1.462-.642-2.109 0-.493.49-.986.978-1.47 1.475-.133.137-.245.166-.407.075-.319-.174-.659-.315-.965-.506-1.43-.899-2.627-2.055-3.688-3.356-.526-.646-.994-1.338-1.322-2.117-.066-.157-.054-.261.075-.39.493-.476.974-.965 1.458-1.454.676-.68.676-1.475-.004-2.159-.385-.39-.77-.77-1.156-1.16-.398-.398-.791-.8-1.193-1.193-.65-.634-1.463-.634-2.11.004-.496.489-.973.99-1.478 1.471-.469.443-.705.986-.755 1.62-.078 1.032.174 2.005.53 2.954.73 1.964 1.84 3.709 3.187 5.308a19.717 19.717 0 0 0 6.53 5.109c1.144.555 2.33.982 3.618 1.052.886.05 1.657-.174 2.275-.866.422-.472.899-.903 1.346-1.354.663-.672.667-1.484.009-2.147a636.95 636.95 0 0 0-2.37-2.366z" stroke="%23000000" stroke-width="1.5"/%3E%3C/svg%3E');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 21px;
	height: 21px;
	display: inline-block;
	position: relative;
	top: -1px;
	margin-right: 10px;
	vertical-align: middle;
}
.contacts a.email:before {
	content: '';
	background-image: url('data:image/svg+xml,%3Csvg width="22" height="17" viewBox="0 0 22 17" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M3.1998 0.799805H17.8998C19.1998 0.799805 20.2998 1.8998 20.2998 3.1998V13.5998C20.2998 14.8998 19.1998 15.9998 17.8998 15.9998H3.1998C1.8998 15.9998 0.799805 14.8998 0.799805 13.5998V3.1998C0.799805 1.8998 1.8998 0.799805 3.1998 0.799805Z" stroke="%23000000" stroke-width="1.5" stroke-miterlimit="10"/%3E%3Cpath d="M19 3L11.241 8.85678C10.8051 9.06228 10.1077 9.06228 9.6718 8.75403L2 3" stroke="%23000000" stroke-width="1.5" stroke-miterlimit="10"/%3E%3C/svg%3E');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 22px;
	height: 17px;
	display: inline-block;
	position: relative;
	top: -1px;
	margin-right: 10px;
	vertical-align: middle;
}







/*
 * Social Icons
 * ------------------------------------------------------------------------------------------------
*/
.social_icons {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.social_icons .social-link {
	display: inline-block;
}
.social_icons .social-link + .social-link {
	margin-left: 15px;
}
.social_icons .social-link img,
.social_icons .social-link svg {
	display: block;
	width: 40px;
	height: 40px;
}
.social_icons .social-link:hover svg path {
	fill: --color_link_hover;
}







/*
 * Scroll Styles
 * --------------------------------------------------
*/
@media (min-width: 768px) {
	.scroll_css {
		scrollbar-width: thin;
		scrollbar-color: #CDCDCD #F0F0F0; /* Fire Fox */
	}
	.scroll_css::-webkit-scrollbar {
		width: 5px;
	}
	.scroll_css::-webkit-scrollbar-track {
		background-color: #F0F0F0;
		box-shadow: inset 0 0 6px rgba(0, 0, 0, 0);
		border-radius: 5px;
	}
	.scroll_css::-webkit-scrollbar-track-piece {
		background-color: #F0F0F0;
	}
	.scroll_css::-webkit-scrollbar-thumb {
		background-color: #CDCDCD;
		border-radius: 5px;
	}
}







/*
 * Animation
 * --------------------------------------------------
*/
.ajax_btn_loader {
	position: relative;
	pointer-events: none;
	cursor: default;
}
.ajax_btn_loader:after {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	margin: 0;
	border-radius: 100%;
	border: 3px solid #FFF;
	border-style: dotted;
	animation: animate_spinner 1.2s linear infinite;
	position: absolute;
	top: calc(50% - 10px);
	right: 15px;
}

@keyframes animate_spinner {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}







/*
 * Flex
 * --------------------------------------------------
*/
.flex {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
.flex.container:before,
.flex.container:after {
   display: none;
}
@media (min-width: 768px) {
	.flex_of_sm {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}
	.flex_of_sm.container:before,
	.flex_of_sm.container:after {
	   display: none;
	}
}







/*
 * Sticky
 * --------------------------------------------------
*/
.sticky {
	position: sticky;
	top: 35px;
}
@media (max-width: 767px) {
	.sticky {
		position: static;
	}
}









