@import url("fonts.css");


html,
body {
	min-height: 100%;
}

html {
	height: 100%;
}

body {
	background: url("../images/pattern.png");
	background-color: #fff;
	margin: 0px;
	padding: 0px;
	font-family: "Roboto", Arial, Helvetica, sans-serif;
	/* color: #474747; */
	color: #0A1B3C;
	font-size: 14px;
	height: 100%;
}


*,
*:after,
*:before {
	box-sizing: border-box;

}


* {
	text-size-adjust: none;
	-moz-text-size-adjust: none;
	-webkit-text-size-adjust: none;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

p {
	margin-top: 0;
}

p + p {
	margin-top: 14px;
}

img {
	border: 0;
	max-width: 100%;
	height: auto;
}

a img {
	border: 0;
}

a {
	outline: 0 none;
	transition: color .25s;
	color: #3788DD;
}

*:focus {
	outline: 0 none;
}


a,
a:link,
a:visited {
	/* color: #3788DD; */
	text-decoration: none;
}
a:hover {

}
a:active {

} 

h1, 
h2, 
h3, 
h4, 
h5, 
h6 {
	color: #000;
	font-family: "Roboto", Arial, sans-serif;
	margin: 0;
}

button,
input[type=submit],
input[type=button] {
	cursor: pointer;
}



input[type=text],
input[type=password],
input[type=email],
textarea,
select {
	background: #FFF;
	border: 1px solid #b1b1b1;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 1em;
	padding: 7px;
	width: 100%;
	color: #444;
	height: 35px;
}

a.button.button-primary,
button {
	border-radius: 5px;
	background: #3788DD;
	border: 0;
	padding: 7px 20px;
	color: #FFF;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 1em;
	/* border: 1px solid #153676; */

	transition: background-color .25s;
}

a.button.button-primary {
	border-radius: 0;
	box-shadow: none;
}

a.button.button-primary:hover,
button:hover {
	background: #153676;
}

.contract-files button {
	/* padding-left: 10px;
	padding-right: 10px; */
}

.contracts-list .contracts .contract {
	display: flex;
	align-items: center;
}

.columns:after {
  content: "";
  display: table;
  clear: both;
}

.left {
	float: left;
}

.right {
	float: right;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

.text-justify {
	text-align: justify;
}

.inline-block {
	display: inline-block;
	margin-right: -0.25em;

}

.overflow-hidden {
	overflow: hidden;
}

[data-scrollbar-width="17"].overflow-hidden {
	padding-right: 17px;
}

.container {
	max-width: 1024px;
	width: 100%;
	padding: 20px 0;
	margin: auto;

}

.col-1 {
	width: 10%;
}

.col-015 {
	width: 15%;

}

.col-2 {
	width: 20%;
}

.col-3 {
	width: 30%;
}

.col-4 {
	width: 40%;
}

.col-5 {
	width: 50%;
}

.col-6 {
	width: 60%;
}

.col-7 {
	width: 70%;
}

.col-8 {
	width: 80%;
}

.col-9 {
	width: 90%;
}

.col-10 {
	width: 100%;
}


#nav {
	text-align: right;
	line-height: 60px;
}

#nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

#nav ul li {
	display: inline-block;
}

#nav a {
	vertical-align: middle;
	color: #474747;
	display: inline-block;
	line-height: 1;
	padding: 10px;
}

#nav a:hover {
	color: #3788DD;
}

#nav ul li.profile_group a {
	background: #3788DD;
	color: #FFF;

	border-radius: 5px;

	transition: background .25s;
}

#nav ul li.profile_group_left a {
	background: #3788DD;
	color: #FFF;

	border-radius: 5px 0 0 5px;

	transition: background .25s;
}

#nav ul li.profile_group_right a  {
background: #3788DD;
	color: #FFF;

	border-radius: 0 5px 5px 0;

	border-left: 1px solid rgba(0, 0, 0, 0.3);
	transition: background .25s;
	background: rgb(11, 101, 164);
}

#nav ul li.profile_group_right {
	margin-left: -5px;
}

#nav ul li.profile_group_left a:hover,
#nav ul li.profile_group_right a:hover,
#nav ul li.profile_group a:hover {
	background: rgb(11, 101, 164);
}

.energo-pro-icon:before {
	width: 36px;
	height: 10px;
	background: url("../images/energo-pro-icon.png") no-repeat center top;
	margin-right: 5px;
	content: "";
	display: inline-block;
}

#nav a.energo-pro-icon:hover:before {
	background-position: center bottom;
}

.container.full-width {
	padding-right: 0;
	padding-left: 0;
}

.search-highlight {
	background: #3788DD;
	color: #FFF;
	padding: 2px;
}

.product-price-view {
	/* background: #eeeeee; */
	background: linear-gradient(90deg, #0A1B3C 0%, #2151A1 100%);
	padding: 20px;
	text-align: center;
	color: #fff;
	border-bottom-left-radius: 22px;
  	border-bottom-right-radius: 22px;
}

.product-price-view-title {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 1.3em;
}

.product-price-view-subtitle {
	margin-bottom: 25px;
}

.product-price-view .price {
	font-weight: bold;
	font-size: 1.3em !important;
}

.product-price-view .price span {
	font-weight: normal;
	font-size: 14px;
}

@media screen and (max-width: 1024px) {
	.full-width {
		width: 984px;
	}
}

.container + .container {
	padding-top: 0;
}

.nav-boxes {
	height: 256px;
	/* overflow: hidden; */
	margin-top: 20px;
	margin-bottom: 20px;
}

.nav-boxes .box {
	height: 100%;
	float: left;
	width: 33%;
}

.nav-boxes .box-left {
	padding-right: 20px;
}

.nav-boxes .box-middle {
	padding-left: 10px;
	padding-right: 10px;
	margin-left: 0.5%;
	margin-right: 0.5%;	
}

.nav-boxes .box-right {
	padding-left: 20px;
}

.nav-boxes .text-content h3 {
	background:#3788DD;
	border-radius: 50px;
	line-height: 54px;
	height: 60px;
	color: #FFF;
	font-weight: 300;
	font-size: 20px;
	text-align: center;
}

.nav-boxes .text-content h3 strong {
	font-weight: 500;
}

.nav-boxes .img-content {
	height: 196px;
}

.nav-boxes .img-content img {
	display: block;
	width: 100%;
}

.nav-boxes .box-title {
	line-height: 1;
	display: inline-block;
	vertical-align: middle;
}

.nav-boxes .calculator-box h3:before,
.nav-boxes .additional-box h3:before,
.nav-boxes .information-box h3:before,
.nav-boxes .questions-box h3:before,
.nav-boxes .library-box h3:before,
.nav-boxes .contract-box h3:before,
.nav-boxes .individual-offer-box h3:before  {
	display: inline-block;
	height: 57px;
	vertical-align: top;
	width: 30px;
	content: "";
}

.nav-boxes .questions-box h3:before {
	background: url("../images/questions-icon.png") no-repeat left center;

}

.nav-boxes .library-box h3:before {
	background: url("../images/library-icon.png") no-repeat left center;

}

.nav-boxes .contract-box h3:before {
	background: url("../images/contract-icon.png") no-repeat left center;
}

.nav-boxes .individual-offer-box h3:before {
	content: "\f095";
	font: normal normal normal 14px/1 FontAwesome;
		font-size: 14px;
	font-size: 30px;
	width: 30px;
	height: 30px;
	/* transform: rotate3d(0, 0, 1, 45deg); */
	top: 10px;
	position: relative;
	/* border: 1px solid #fff; */
	display: inline-block;
	border-radius: 100%;
	padding: 4px 5px;
	left: 12px;
}


.nav-boxes .calculator-box h3:before {
	background: url("../images/calculator-icon.png") no-repeat left center;
}

.nav-boxes .additional-box h3:before {
	background: url("../images/additional-icon.png") no-repeat left center;
}

.nav-boxes .information-box h3:before {
	background: url("../images/actual-info-icon.png") no-repeat left center;
}



.nav-boxes .box .text-content {
	/* background: #3788DD; */
	color: #FFF;
	transition: -webkit-transform .40s;
	transition: transform .40s;
	left: -20px;
	top: -30px;
	position: relative;
	width: 75%;
	/* height: 100%; */
}

.ie-8 .nav-boxes .box .text-content {
	/*visibility: hidden;*/
	/*position: absolute;*/
	background: #3788DD;
}

.ie-8 .nav-boxes .box:hover .text-content {
	position: absolute;
	visibility: visible;
	top: 0;
	left: 0;
	right: 0;
	bottom: auto;
}

.representer-group + .representer-group {
	margin-top: 20px !important;
	padding-top: 20px !important;
	border-top: 2px solid #AAA !important;
}

/* .nav-boxes .box:hover .text-content {
	-webkit-transform: translate3d(0, -196px, 0);
	        transform: translate3d(0, -196px, 0);
} */

.ie-8 .nav-boxes .description{
	position: absolute;
	top: 100px;
	visibility: hidden;
}


.nav-boxes .description {
	height: 196px;
	line-height: 166px;
	vertical-align: middle;
	text-align: center;

	padding: 15px;
	opacity: 0;
	-webkit-transform: translate3d(0, 100px, 0);
	        transform: translate3d(0, 100px, 0);
	transition: opacity .20s,
				-webkit-transform .55s;
	transition: opacity .20s,
				transform .55s;
}

.nav-boxes .description-inner {
	line-height: 1.3;
	vertical-align: middle;
	display: inline-block;
}

.ie-8 .nav-boxes .box:hover .description {
	top: 0;
	visibility: visible;

	height: 100%;
}

.nav-boxes .box:hover .description {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
}

#footer {
	background: #eeeeee;
	color: #797979;
}

#footer nav ul {
	padding: 0;
	margin: 0;
	list-style: none;
}

#footer nav ul li {
	display: inline;
	float: left;
}


#footer nav ul li + li {
	margin-left: 10px;
}

#footer nav ul li a {
	padding-left: 5px;
	padding-right: 5px;
}

#footer nav ul li a:hover {
	text-decoration: underline;
}

#copyright {
	margin-left: 30px;
}

#footer .col-10 + .col-10 {
	margin-top: 10px;
}

#cover { 
	position: relative;
	background: #efefef;
	color: #292929;
	padding: 0;
	margin-bottom: 40px;
}

#cover:before {
	width: 0; 
	height: 0; 
	border-bottom: 12px solid #b1b1b1; 
	border-left: 12px solid transparent;
	content: "";

	top: -12px;
	left: 0;
	position: absolute;
}

#cover h1 {
	margin: 0;
	padding: 0 20px;
	line-height: 90px;
	vertical-align: middle;
}

#cover .cover-title {
	font-weight: 300;
	font-size: 20px;
	vertical-align: middle;
	line-height: 1;
	display: inline-block;
}

#cover .cover-title strong {
	font-size: 25px;
}

#cover img {
	display: block;
}

/*#cover .survey-btn {
position: absolute;
top: -15px;
right: 20px;
background-image: url("../images/survey-btn.png");
background-size: 600px 250px;
background-position: center;
background-repeat: no-repeat;
padding: 20px 20px;

z-index: 5;


}*/

#cover .survey-switch {
color: #FFF;
position: absolute;
top: -12px;
right: 20px;
background-image: url("../images/survey-btn.png");
background-size: 250px 50px;
background-position: center;
background-repeat: no-repeat;
padding: 0 20px;
height: 50px;
width: 250px;
z-index: 5;
margin: auto;
text-align: center;
line-height: 50px;

}

.survey-label {
	display: inline-block;
}

.survey-row {
	

}


.box .box-caption {
	background: #3788DD;
	color: #FFF;
	padding: 20px;
}

.box .box-image img {
	display: block;
}

.box h2 {
	color: #FFF;
	line-height: 1;
	font-weight: 300;

	margin-bottom: 10px;
}

.box h2 strong {
	font-weight: 600;
}


.button {
	background: #FFF;
	/*border-radius: 5px;*/
	display: inline-block;
	padding: 7px 15px;
	box-shadow: 0 2px rgba(0, 0, 0, 0.2);

	transition: background-color .25s;
	font-weight: 600;
}

.button .fa {
	-webkit-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
	transition: -webkit-transform .25s;
	transition: transform .25s;
}

.button.animated-icon:hover > .fa {
	-webkit-transform: translate3d(5px, 0, 0);
	        transform: translate3d(5px, 0, 0);
}



.button:hover {
	background: #EFEFEF;
}


#products #login > .left:first-child {
	padding-right: 10px;
}

#products #login > .left + .left {
	padding-left: 10px;
}

#products #login .logo {
	margin-bottom: 30px;
	padding-left: 12px;
}

#products #login .login-title-wrapper {
	background: #efefef;
	position: relative;
	color: #153676;
	line-height: 38px;
	vertical-align: top;
	overflow: hidden;
	
}

#products #login .login-title {
	position: relative;
	max-width: 85%;
}

#products #login .login-title:before {
	width: 0; 
	height: 0; 
	border-top: 8px solid #153676; 
	border-left: 8px solid transparent;
	content: "";

	bottom: -8px;
	left: 0;
	position: absolute;
}


#products #login .login-title .primary {
	background: #3788DD;
	color: #FFF;
	text-transform: uppercase;
	display: inline-block;
	font-size: 18px;
	padding: 0 15px;
	line-height: 41px;
	position: relative;
	z-index: 4;
}

#products #login .login-title .primary:after {
	content: "";
	width: 30px;
	height: 90px;
	background: #3788DD;
	position: absolute;
	right: -10px;
	top: -33px;
	z-index: -1;
	-webkit-transform: rotate3d(1, 1, 1, 35deg);
	        transform: rotate3d(1, 1, 1, 35deg);
}


#products #login .login-title .secondary {
	display: inline-block;
	line-height: 1;
	font-weight: 600;
	vertical-align: middle;
	margin-top: -7px;
	padding-left: 15px;
	text-align: right;
	font-size:13px;
}

#products #login .form-title {
	margin-top: 53px;
	margin-bottom: 10px;
	text-transform: uppercase;
	font-size: 16px;
	padding-left: 12px;
}

#products #login .form {
	padding-left: 12px;
}

.form-err {
	color: red;
	min-height: 20px;
}

.form-row {

}

.form-row label {
	display: block;
}

.form-row + .form-row {
	margin-top: 10px;
}

.form-row.form-action {
	margin-top: 20px;
}

.form-row .form-description {
	color: #868686;
	font-size: 12px;
}

#products #login .register {
	margin-top: 39px;
	padding-left: 12px;
}

#products #login .register a {
	text-decoration: underline;
}

#products #login input[type=text],
#products #login input[type=password] {
	max-width: 300px;
}

#products-bottom {
	margin-top: 20px;
	margin-bottom: 10px;
	/* border-top: 1px solid #bfbfbf; */

	/* background: url("../images/top-left-shadow.png") no-repeat left top; */

	padding-top: 20px;
	padding-bottom: 20px;
}

.products-boxes .box {
	display: inline-block;
	width: 20%;
	padding: 10px 10px;
	vertical-align: top;
	margin-right: -.25rem;
}

.products-boxes.products-boxes-four {
	padding-left: 10%;
	padding-right: 10%;
}

.products-boxes.products-boxes-four .box {
	width: 25%;
}

.products-boxes {
	text-align: center;
	margin-left: -10px;
	margin-right: -10px;

	margin-bottom: 20px;
}

.products-boxes .box-inner {
	background: #CCE0F5;
    border-bottom: 5px solid #3788DD;
	height: 100%;
	position: relative;
	padding: 10px 20px;
	border-radius: 20px;
}

/*.products-boxes .box-inner:after {
	width: 0; 
	height: 0; 
	border-top: 18px solid #3788DD; 
	border-left: 18px solid transparent;
	content: "";

	top: 0;
	right: 0;
	position: absolute;
}*/

.products-boxes .product-title .secondary {

}

.products-boxes .product-price-value {
	font-size: 22px;
	font-weight: 900;

	text-transform: uppercase;
	color: #000;
	/*white-space: nowrap;*/
}

.products-boxes .product-price-unit {
	margin-bottom: 10px;
	display: block;
}

.products-boxes .box .product-description {
	margin-bottom: 120px;
}

.products-boxes.products-boxes-individual .product-description {
	margin-bottom: 61px;
}

.products-boxes.products-boxes-individual .product-action {
	height: 61px;
}

.products-boxes .product-action {
	position: absolute;
	bottom: 0;
	height: 120px;
	padding-top: 10px;
	text-align: center;
	display: block;
	left: 0;
	right: 0;
}


.products-boxes .product-action .button {
	transition: color .25s,
				background-color .25s;
}

.products-boxes .product-action .button:hover {
	background: #3788DD;
	color: #FFF;
}

.products-boxes .product-title {
	margin-top: 20px;
	text-align: center;
	height:80px;
}

.products-boxes-individual .product-title {
	height:auto !important;
}

.products-boxes .product-title .secondary {

}

.products-boxes .product-title .primary {
	font-size: 22px;
	font-weight: 900;

	text-transform: uppercase;
	color: #000;
	/*white-space: nowrap;*/
}

.products-boxes .product-icon {
	width: 130px;
	height: 130px;
	margin: 20px auto;
	border-radius: 130px;
	border-bottom: 3px solid rgba(0, 0, 0, 0.3);
	box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
	background-repeat: repeat-y;
	background-position: center 0;
	
	background-color: #3788DD;

	transition: background .40s;
}

.products-boxes .product-icon  a {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 100px;
}

.products-boxes .box:hover .product-icon {
	

	background-position: center 130px;
}

.products-boxes .product-description {
	color: #000;
	text-align: center;
}

.products-boxes .product-description ul {
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
	font-size: 12px;
}

.products-boxes .product-description ul li {
	display: block;
	font-weight: 500;
}

.products-boxes .product-description ul li p {
	margin: 0;
	padding: 0;
	display: inline;
}

.products-boxes .product-description ul li + li {
	margin-top: 10px;
}

.products-boxes .product-description ul li:before {
	background: url("../images/list-bullet.png") no-repeat top left;
	margin-right: 10px;

	display: inline-block;
	vertical-align: middle;
	width: 18px;
	height: 18px;
	content: "";
}

#products .footer {
	color: #bfbfbf;
	font-size: 12px;
}

span.required {
	color: red;
}

.overlay {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;

	background: rgba(0, 0, 0, 0.5);
	z-index: 1000;

	opacity: 0;
	visibility: hidden;


	transition: opacity .25s,
				visibility .25s;
}

.ie-8 .overlay {
	background: url("/images/overlay_fix.png");
}

.overlay.visible {
	opacity: 1;
	visibility: visible;

	transition: opacity .25s,
				visibility 0;
}

.footer-text {
	/*padding-left: 100px;*/
	text-align: center;

}

.popup {
	position: fixed;

	top: 0;
	left: 0;
	right: 0;
	bottom: 0;

	z-index: 10001;

	vertical-align: middle;
	text-align: center;

	overflow-y: auto;

	padding: 20px;

	opacity: 0;
	visibility: hidden;

	-webkit-transform: translate3d(0, 30px, 0);

	        transform: translate3d(0, 30px, 0);

	transition: opacity .25s,
				visibility .25s,
				-webkit-transform .25s;

	transition: opacity .25s,
				visibility .25s,
				transform .25s;

}

.popup.visible, .popup-popupimg.visible {
	opacity: 1;
	visibility: visible;
	-webkit-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);

	transition: opacty .25s,
				visibility 0s,	
				-webkit-transform .25s;

	transition: opacty .25s,
				visibility 0s,	
				transform .25s;
}

.popup-inner {
	display: inline-block;
	width: 70%;
	position: absolute;
	line-height: 500px;
	vertical-align: middle;
	top: 50%;
	margin-top: -250px;

	margin-bottom: 20px;

	margin-left: auto;
	margin-right: auto;
	left: 0;
	right: 0;
}

.popup-inner-2 {
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
	background-color: #FFF;
	padding: 10px;
	position: relative;
	text-align: left;
}

.popup-popupimg .popup-inner-2 {
	padding:0 !important;
	line-height: 0 !important;
	background:none !important;
}

.popup-popupimg .popup-content {
	background:none !important;
	padding:0 !important;
}

.popup-popupimg .close-popup {
	margin:0 !important;
}

.popup-popupimg .close-popup a {
	color: #fff;
	/*background-color: #3788DD;*/
	padding: 10px 0 0px 20px;
	width: auto;
	font-size:50px;
}
.popup-popupimg .fa-times:before {
	content: "×" !important;
}
.popup-popupimg {

	position: fixed;

	top: 0;
	left: 0;
	right: 0;
	bottom: 0;

	z-index: 10001;

	vertical-align: middle;
	text-align: center;

	overflow-y: auto;

	padding: 20px;

	opacity: 0;
	visibility: hidden;

	-webkit-transform: translate3d(0, 30px, 0);

	        transform: translate3d(0, 30px, 0);

	transition: opacity .25s,
				visibility .25s,
				-webkit-transform .25s;

	transition: opacity .25s,
				visibility .25s,
				transform .25s;

}

.close-popup {
	margin-bottom: 20px;
}

.close-popup a {
	color: #3788DD;
	/*background-color: #3788DD;*/
	padding: 10px 20px;
	display: inline-block;
	float: right;
	width: auto;
}

.popup-content {
	padding: 10px;
}

.popup-title {
	padding: 10px;
	padding-top: 0;
}

.form-row.checkbox-row {
	position: relative;
}

.form-row.checkbox-row .form-input {
	position: absolute;
	left: 0;
	margin: 0 !important;
}

.form-row.checkbox-row .form-label {
	padding: 0 0 0 40px;
}

.form-row .form-description.left {
	line-height: 30px;
	padding-left: 20px;
	margin: 1rem 0;

}

.form-row > .columns > .left {
	padding-right: 10px;
}

.form-row > .columns > .left + .left {
	padding-left: 10px;
	/*padding-right: 0;*/
}

.form-row > .columns > .left:last-child {
	padding-right: 0;
}

.form-row > .columns > .left:first-child {
	padding-right: 10px;
}

.contract .title {
	text-align: center;
}

.contract .text-block + .text-block {
	margin-top: 15px;
}

.contract .signatures {
	margin-top: 25px;
}

.form-group + .form-row {
	margin-top: 10px;
}

.form-header {
	/*font-weight: bold;*/
}


.form-group {
	/* padding: 20px; */
	background-color: #CCE0F5;
	/* border: 1px solid #CCC; */
	border-radius: 12px;
}

.form-group-wrapper {
	padding: 20px;
}

.form-group.blue {
	background-color: #c6d9f1;
	border: 1px solid #c6d9f1;
}

.form-row .hidden {
	display: none;
	margin-top: 10px !important;
}

.form-group-header .arrow-right:after {
	display: block;
	content: "";
	width: 100% !important;
	/* height: 95px; */
	height: 75px !important;
	background: url(/images/long-right.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}

.form-group-header .about-content h2 {
	font-size: 20px;
	margin-top: 1.5rem !important;
 	margin-bottom: 1rem !important;
}

.hidden {
	display: none;
}

a.btn-primary.hidden {
	display: none;
}

.half-margin-top {
	margin-top: 10px;
}

a.button + a.button {
	margin-left: 10px;
}

a.button.hidden {
	display: none;
}

/*
* AFTER UPLOAD
*/
.form-group.hidden {
	display: none;
}

#product .product-cover {
	width: 100%;
	height: 250px;
	background-repeat: none;
	background-position: center center;
	background-size: cover;
	position: relative;
}


#product .product-title {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 4em;
	line-height: 5em;
	padding: 0 20px;
	color: #FFF;

	font-size: 2em; /* FF3.6+ */ /* Chrome,Safari4+ */ /* Chrome10+,Safari5.1+ */ /* Opera 11.10+ */ /* IE10+ */
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.01) 1%,rgba(0,0,0,0.7) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#b3000000',GradientType=0 ); /* IE6-9 */

}

#product .product-description {
	background: #FFF;
	color: #444;
	padding: 30px;
	margin: 30px 0;
	line-height: 1.5;
	text-align: justify;
}

#product .product-description p {
	margin: 10px 0;
}

#product .product-description h2 {
	font-weight: 300;
	font-size: 1.5em;
	margin: 10px 0;
}

#product .product-description ul {
	padding: 0;
	list-style: none;
	margin: 0;
	margin-left: 15px;
}

#product .product-description ul li {
	position: relative;
	padding-left: 20px;
}

#product .product-description ul li strong {
	font-size: 1.3em;
}

#product .product-description ul li strong + p {
	margin-top: 0;
}

#product .product-description ul li + li {
	margin-top: 10px;
}

#product .product-description ul li:before {
	position: absolute;
	top: 4px;
	left: 0;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\f00c";
    font-size: 0.8em;
	color: #3788DD;
}

#product .product-price {
	margin-top: 20px;
	font-size: 1.2em;
	vertical-align: middle;
}

#product .product-price {
	font-size: 16px;
}

#product .product-price span {
	margin-top: 13px;
	display: inline-block;
}

#product .product-price:after {
	clear: both;
	display: block;
	content: "";
}

#product a.calc-btn {
	float: right;
	padding: 10px;
	display: inline-block;
	vertical-align: middle;
	color: #FFF;
	border-radius: 5px;
	margin-left: 10px;
	line-height: 1;
	color: #3788DD;

	background: url("../images/calculator-icon-blue.png") no-repeat scroll 7px center;
	background-color: #FFF;
	padding-left: 40px;
	font-size: 14px;
	border: 1px solid #3788DD;
	margin-left: 20px;
}

#product a.calc-btn:hover {
	background-color: #EEE;
}

#product .product-price .price {
	background-color: #3788DD;
	padding: 10px;
	display: inline-block;
	vertical-align: middle;
	color: #FFF;
	border-radius: 5px;
	margin-left: 10px;
	padding-top: 14px;
	padding-bottom: 14px;
	float: right;
}


#product .product-action {
	margin-top: 20px;
	text-align:center;
}

#product .product-action .button {
	width: 50%;
	padding: 20px;
	box-shadow: none;
	background: #2ecc71;
	border: 1px solid #27ae60;
	color: #FFF;
	font-size: 1.3em;
	text-align: center;
	border-radius:5px;
}

#product .product-action .button:hover {
	background-color: #27ae60;
}

#product .product-cover {
	/*border-radius: 5px 5px 0 0;*/
}

#product .product-description {
	/*border-radius: 0 0 5px 5px;*/
}

/*Contracts*/


.text-block ol {
	padding: 0;
	margin: 0;
	list-style-position: inside;
}


.text-block ol li + li {
	margin-top: 10px;
}

.subheading {
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;

	margin-top: 20px;
	margin-bottom: 10px;
	font-size: 18px;
	color: #000;
	font-weight: 900;
}

.contract {
	text-align: justify;
	color: #222;
	line-height: 1.5;
}

#search_text.contract img,
.info-text img {
	width: 100% !important;
	height: auto !important;
	margin: 10px 0 !important;
}

.text-part {
	padding-left: 50px;
}

.part-number {
	margin-left: -50px;
	display: inline-block;
	width: 50px;
}

.contract strong {
	font-weight: 900;
	color: #000;
}

.contract .text-part br + strong {
	margin-top: 7px;
	display: inline-block;
}

.padding-left {
	padding-left: 30px;
}

.contract br + ol {
	margin-top: 15px;
}

.tab {
	margin-right: 10px;
	margin-left: 10px;
}

.objects-table table {
	border: 1px solid #CCC;
	border-spacing: 0px;
	border-collapse: collapse;
}

.objects-table tr {
	border: 1px solid #CCC;
	page-break-inside: avoid;
}



.objects-table td {
	border: 1px solid #CCC;
	padding: 10px;
}

.objects-table thead td {
	background-color: #EFEFEF;
}


.objects-table .number {
	width: 5%;
}

.objects-table .object-name {
	width: 23%;
}

.objects-table .admin-address {
	width: 26%;
}

.objects-table .erp {
	width: 18%;
}

.objects-table .client-num {
	width: 12%;
}

.objects-table .id-num {
	width: 16%;
}

.margin-top {
	margin-top: 20px;
}
.margin-top-30 {
	margin-top: 30px;
}

.no-pb {
	page-break-inside: avoid;
}


@media print {
table { page-break-before: auto;
page-break-after: auto; }
td,tr    { page-break-inside:avoid; page-break-after:auto }

}


.products-boxes > .box + .box + .box + .box + .box {
	/*margin-top: 20px;*/
}


.tabs .tab-title {
	display: inline-block;
	background: #3788DD;
	color: #FFF;
	padding: 10px 20px;

	transition: background-color .25s;
}

.tab-titles a .tab-title.active,
.tab-titles a:hover .tab-title {
	background: #153676;
}

.tabs .tab-title h3 {
	color: #FFF;
	
}

.tab-titles {
	position: relative;
	margin-bottom: 20px;
}

.tab-titles:after {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0px;
	content: "";
	border-bottom: 2px solid #3788DD;
}

.tabs .tab {
	display: none;
}

.tabs .tab[data-tab="1"] {
	display: block;
}

.contracts-list .contract-header {
	font-weight: bold;
	border-bottom: 1px solid #CCC;
}

.contracts-list .left {
	padding: 10px;
}

.contracts-list .contracts > .contract:nth-child(even) {
	background: #EFEFEF;
}

.contracts a:hover {
	text-decoration: underline;
}

#select-form-type {
	margin-bottom: 20px;
}

#select-form-type > .left:first-child {
	padding-right: 10px;
}

#select-form-type > .left:last-child {
	padding-left: 10px;
}

a.form-type-button {
	background: #FFF;
	display: block;
	/*color: #;*/
	border: 1px solid #b6b6b6;
	padding: 20px;
	padding-left: 0;
	color: #3788DD;
	line-height: 1.2;
	transition: background-color .25s;
	border-radius: 50px;
}

a.form-type-button.active,
a.form-type-button:hover {
	background: #3788DD;
	color: #FFF;
	border: 1px solid #3788DD;
	border-radius: 50px;
}

#select-form-type .fa {
	text-align: center;
	width: 100%;
	font-size: 3em;
}

#select-form-type strong {
	font-size: 1.5em;
	font-weight: 900;
}

#nav ul li + li {
	/*margin-left: 20px;*/
}




.form-group > .form-description {
	margin-bottom: 10px;
	font-size: 0.9em;
	color: #868686;
}

.form-info {
	text-align: right;
	font-size: 1.5em;
	color: #3788DD;
	padding-top: 20px;
	text-align: center;
}

.tooltip {
	display: none;
	position: absolute;
	/* background: #000; */
	background: #0A1B3C;
	color: #FFF;
	padding: 10px;
	
	margin-left: -5px;

	visibility: hidden;
	-webkit-transform: translate3d(0, 10px, 0);
	        transform: translate3d(0, 10px, 0);
	opacity: 0;

	transition: visibility .25s,
				-webkit-transform .25s,
				opacity .25s;

	transition: visibility .25s,
				transform .25s,
				opacity .25s;
}

.tooltip.visible {
	display: block;
	opacity: 1;
	visibility: visible;
	-webkit-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
}

.tooltip:before {
	position: absolute;
	content: "";
	width: 0; 
	height: 0; 
	border-left: 5px solid transparent; 
	border-right: 5px solid transparent; 
	border-bottom: 5px solid #000;
	top: -5px;
}


/****
*/

#nav .phone {
	margin-right: 30px;
}

#cover {
	margin-bottom: 10px;
}

#nav .phone strong {
	color: #3788DD;
	font-weight: 900;
}


.disabled-btn {
	
	background: #CCC;
	border-color: #CCC;
	/*border: none;*/

}

input.disabled-text {
	background-color: #CCC;
	opacity: 0.4;

}

.hidden-text-input {
	display: none;
	

}

.hidden-error-label-right {
	color: #888;
	padding-left: 10px;


}

.hidden-element {
	display: none;

}

.disabled-btn:hover {
	cursor: not-allowed;
	background: #CCC;

}

.trailer-label {
	padding-left: 10px;


}



.survey-window {
	display: none; 
	padding: 20px 0;
    position: fixed; 
    z-index: 9999;
    left: 0;
    right: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);

}

.survey-window-content {
	position: relative;
 	background-color: #FFF;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    width: 100%;
    height: calc(100vh - 40px);
    max-width: 840px;
    counter-reset: question;
    overflow: auto;

}

.survey-window-content {
	margin-bottom: 20px;
}

.survey-title {
	margin: 20px 0;
	font-size: 20px;
	color: #3788DD;


}

.survey-text {
	resize: none;
	height: 6em;

}

.survey-ans {
	

}

.survey-label {
	display: inline-block;
	margin: auto;

}

.survey-question-title {
	font-weight: bold;
	/*padding-left: 25px;*/
	margin-bottom: 10px;
	display: block;
}

.survey-question input[type=checkbox] {
	margin-right: 10px;
}

.survey-question-title:before {
	position: relative;
	/*right: 20px;*/
	counter-increment: question;
	content: counter(question) ". ";
	font-weight: bold;
	margin-right: 5px;
	min-width: 20px;
	display: inline-block;
}

.remove-index:before {
	display: none;

}

.survey-bottom-sentence {
	font-weight: bold;
	color: #3788DD;
	display: block;
	padding-bottom: 8px;



}

.close-survey-btn {
	position: absolute;
	top: 0;
	right: 15px;
	font-size: 30px;
	color: #000;

}


.survey-hint {
	position: absolute;
	top: 0;
	bottom: 0;
	height: 30px;
	margin: auto;
	left: 120px;
	/*border: solid 1px #BBB;*/
	background: #888;
	color: #FFF;
	padding: 0 10px;
	font-size: 12px;
	border-radius: 3px;
	line-height: 30px;
	display: none;	
}

.submit-survey-btn {
	transition: all .25s !important;
}

/*.submit-survey-btn.disabled-btn:hover ~ .survey-hint {
	display: block;
}*/

.survey-hint:before {
	content: "";
	position: absolute;
	left: -4px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-right: 5px solid #888;
	border-bottom: 5px solid transparent;

}


.survey-question {
	margin: 15px 0;
}

.survey-question input[type=radio],
.survey-question input[type=checkbox] {
	margin: 0;
	margin-right: 10px;
	display: inline-block;
	margin-top: 2px;
}

.survey-question .form-row + .form-row {
	margin-top: 3px;
}

.extra-text {
	padding-top: 10px;

}

.submit-survey-container {
	position: relative;
	margin-top: 10px;
	margin-bottom: 20px;

}

.survey-card-content {
	counter-reset: survcard-question;

}

.survcard-info-label {
	margin-top: 10px;
	margin-bottom: 5px;

}

.survcard-region-select {


}

.survcard-title {
	display: block;
	font-size: 20px;
	margin-bottom: 3px;
	letter-spacing: 1px;
	color: #3788DD;


}

.survcard-top {
	margin-bottom: 30px;
	



}

.survcard-top:after {
	content: "";
	clear: both;
	display: block;

}

.survcard-top-right {
	text-align: right;
	padding: 10px 0;


}

.survcard-subtitle {
	display: block;
	font-size: 16px;
	font-weight: normal;

	


}

.survcard-question-dropdown {
	

}

 
.survcard-question-title,
.survcard-question-title {
	position: relative;
	font-size: 14px;
	margin: 0;
	margin-bottom: 10px;
	font-weight: normal;
	display: block;
}

.survcard-question-title:before {
	counter-increment: survcard-question;
	content: counter(survcard-question) ". ";
	position: relative;
	/*right: 20px;*/
	font-weight: bold;
	margin-right: 5px;
	min-width: 20px;
	display: inline-block;

}

#city-text-input {
	padding-left: 30px;

}

/*.popup-close {
    width:30px;
    height:30px;
    padding-top:4px;
    display:inline-block;
    position:absolute;
    top:0px;
    right:0px;
    transition:ease 0.25s all;
    -webkit-transform:translate(50%, -50%);
    transform:translate(50%, -50%);
    border-radius:1000px;
    background:rgba(0,0,0,0.8);
    font-family:Arial, Sans-Serif;
    font-size:20px;
    text-align:center;
    line-height:100%;
    color:#fff;
}*/


#content-wrapper {
	position: relative;
	min-height: 100%;
}

#content-wrapper-inner {
	padding-bottom: 60px;
}


#footer {
	position: absolute;
	bottom: 0;
	height: 60px;
	/*left: 0;*/
	/*right: 0;*/
	min-width: 100%;
	overflow: hidden;
}



.form-input.has-help	{
	position: relative;
}

.form-help {
	position: absolute;
	right: 8px;
	top: 0;
	bottom: 0;
	width: 20px;
}

.form-help a {
	background: #0491d0;
	color: #FFF;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;
	text-align: center;
}

.lightbox {
	display: none;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	position: fixed;
	background: rgba(0, 0, 0, 0.5);
	color: #FFF;
	padding: 10px;
	z-index: 10000;
	
	visibility: hidden;
	/*transform: translate3d(0, 10px, 0);*/
	opacity: 0;

	overflow: auto;

	/*transition: visibility .25s,*/
				/*transform .25s,*/
				/*opacity .25s;*/
}

.ie-8 .lightbox {
	background: url("/images/overlay_fix.png");
}

.lightbox.visible {
	display: block;
	opacity: 1;
	visibility: visible;
	/*transform: translate3d(0, 0, 0);*/
}

.lightbox-inner {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	padding: 20px;
}

.form-group .button {
	box-shadow: none;
	border: 1px solid rgba(0, 0, 0, 0.2);
}

.form-group .button:hover {
	background: #EEE;
}

button {
	font-weight: bold;
	/* border-radius: 0px !important; */
}

button:focus {
	
	background: #153676;
}

button.positive,
a.positive {
	background: #2ecc71;
	/* border: 1px solid #27ae60; */
}

button.positive:hover,
a.positive:hover {
	background: #27ae60;
}

button.negative {
	background: #e74c3c;
	/* border: 1px solid #c0392b; */
}

button.negative:hover {
	background: #c0392b;
}

button.neutral {
	/* border: 1px solid #bababa; */
	background: #FFF;
	color: #3788DD;
}

button.neutral:hover {
	background: #EFEFEF;
}

.box {
	position: relative;
}

.box-tag {

	position: absolute;
	text-indent: -10000px;
	left: 0;
	top: 0;
	background: url("../images/online.png") no-repeat center center;
	width: 73px;
	height: 73px;

}

.status-column .fa {
	color: #868686;
	cursor: pointer;
}

#search-box {
	margin-bottom: 20px;
}

#search-box {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 999;

	display: none;
}


#search-toggle {
	width: 3em;
	height: 3em;
	line-height: 3em;
	text-align: center;
	display: block;
	background: rgb(0, 144, 208);
	color: #FFF;

	position: fixed;
	bottom: 0;
	top: 0;
	left: 0;
	margin: auto;
	z-index: 9999;
}


.products-title {
	/*text-align: center;*/
	margin-bottom: 20px;
	color: #222;
	margin-top: 0;
	padding-left: 0;
	padding-right: 0;
}

.contract.ready {
	border-top: 1px solid #CCC;
	margin-top: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #CCC;
}

.progress-box {
	display: inline-block;
	color: #FFF !important;
	margin-right: 0 !important;
	vertical-align: middle;
}

.progress-outer {
	display: inline-block;
	vertical-align: top;
	text-align: center;
	font-size: 12px;
	margin-right: -10px;
}

.progress-box .progress-inner {
	height: 30px;
	background: #0491d0;
	display: inline-block;
	vertical-align: top;
	font-size: 11px;
	padding: 5px;
	line-height: 20px;
	padding-left: 8px;
}

.progress-outer .progress-box:before {
	content: "";
	display: inline-block;
	height: 30px;
	width: 9px;
	background: url("../images/p_sprite.png") no-repeat;
	background-position: 0 0;
}

.progress-outer .progress-box:after {
	content: "";
	display: inline-block;
	width: 11px;
	height: 30px;
	background: url("../images/p_sprite.png") no-repeat;
	background-position: -13px 0;
}

.progress-outer.progres_inactive .progress-box:before {
	content: "";
	display: inline-block;
	width: 11px;
	height: 30px;
	background: url("../images/steps_sprite.png") no-repeat;
	background-position: 0 -14px;
}

.progress-outer.progres_inactive .progress-box:after {
	content: "";
	display: inline-block;
	width: 11px;
	height: 30px;

	background: url("../images/steps_sprite.png") no-repeat;
	background-position: -13px -14px;

}

.progress-outer.progres_inactive.progres_inactive_end .progress-box:before {
	background-position: 0 -197px;
}

.progress-outer.progres_inactive.progres_inactive_end .progress-box:after {
	background-position: -13px -197px;
}

.progress-outer .progress-inner {
	background: #bebebe;
}

.progress-outer.progres_inactive.progres_inactive_end .progress-inner {
	background: #036b9a;
}

.progress-outer.progres_inactive .progress-inner {
	background: #0491d0;
}

.progress-outer.progres_inactive + .progress-outer:not(.progress_inactive) {
	margin-left: 3px;
}

.progress-outer.progres_inactive {
	margin-left: 0 !important;
}

.progress-outer.progres_alert .progress-box:before {
	content: "";
	display: inline-block;
	height: 30px;
	width: 9px;
	background: url("../images/p_sprite.png") no-repeat;
	background-position: 0 -31px;
}


.progress-outer.progres_alert .progress-inner {
	background: #d44f4f;
}

.status-column > .progress-outer:last-child .progress-box:after {
	background: #BEBEBE;
	width: 7px;
}

.progress-outer.progres_alert .progress-box:after {
	content: "";
	display: inline-block;
	width: 7px;
	height: 30px;
	/*background: url("../images/p_sprite.png") no-repeat;*/
	/*background-position: -13px -31px;*/
	background: #d44f4f !important;
}

.status-column > .progress-outer.progres_inactive:last-child .progress-box:after {
	background: #0491d0;
	width: 7px;
}

.status-column > .progress-outer.progres_inactive.progres_inactive_end:last-child .progress-box:after {
	background: #036b9a;
	width: 7px;
}

.info-box:after {
	clear: both;
	display: block;

	content: "";
}

.info-box {
	background: #CCE0F5;
	margin-top: 0;
	padding: 10px;
	border-bottom: 5px solid #3788DD;
}

#search-box {
	padding: 20px;
	margin-top: 20px;

}

.phone_icon:before {
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 14px;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\f095";
	margin-right: 5px;
	vertical-align: middle;
	/*padding: 3px;*/
	border: 1px solid rgb(0, 144, 208);
	border-radius: 100%;
	display: inline-block;
	width: 18px;
	height: 18px;
	text-align: center;
	line-height: 18px;
	vertical-align: middle;
	color: rgb(0, 144, 208);
	margin-top: -3px;
	transform: rotate3d(0, 0, 1, 45deg);
}

#copyright .phone_icon:before {
	color: #888;
	border-color: #888;
}

/*.lightbox:before {
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\f00d";
	vertical-align: middle;
	position: fixed;
	top: 10px;
	right: 30px;
	color: #fff;
	font-size: 32px;
}*/

.info-box > .left.col-8:first-child {
	font-style: italic;
}

.profile_phone {
	float: right;
	margin-top: 10px;
}

.profile_phone,
.info-box .left + .left {
	color: #3788DD;
	font-weight: bold;
	text-align: right;
	font-size: 16px;
}

#map-canvas {
	margin-bottom: 20px;
}

.contacts-background {
	background: url('../images/mapbg.png') no-repeat center 220px;
  	background-attachment: fixed;
}

.contacts {
	margin-left: -10px;
	margin-right: -10px;
}

.contacts .contact-box {
	/* width: 33%; */
	float: left;
	/* padding: 10px; */
}

.contacts .contact-box-inner {
	overflow: hidden;
	background: #3788DD !important;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}

.contacts > .contact-box:nth-child(3n-1) {
	margin-left: 0.5%;
	margin-right: 0.5%;
}

.contacts > .contact-box:nth-child(3n+1) {
	clear: both;
}

.merchants {
	margin: 2rem 0 4rem;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 2rem;
}

.contacts.merchants .contact-box {
	width: 100%;
	/* float: left; */
	/* padding: 10px; */
}

.contacts.merchants .news-item-content span.large {
	margin-left: 0.75rem !important;
}


/* .contacts.merchants > .contact-box:nth-child(3n-1) {
	margin: 0;
}

.contacts.merchants > .contact-box:nth-child(3n+1) {
	clear: none;
}

.contacts.merchants > .contact-box:nth-child(4n+1) {
	clear: both;
} */


.contacts:after {
	clear: both;
	display: block;
	content: "";
}

.contact-image {
	display: block;
	position: relative;
}

.contact-image img {
	width: 100%;
	height: auto;
	display: block;
}

.contact-description {
	margin-left: 0.75rem;
	background: #CCE0F5;
}
.contact-description p {
padding:10px 0;
margin:0;
}

.contacts.merchants .contact-description p {
	font-size: 12px;
}

.contact-image h2 {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 20px;
	color: #FFF;
	font-size: 20px;
}

.merchants .contact-image h2 {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 20px;
	color: #FFF;
	font-size: 20px;
	font-weight: normal;
}

.contacts.merchants .contact-image {
	/* background: #CCC; */
}

.contacts.merchants .contact-image h2 {
	position: static;
}

.info-text h1 {
	margin: 20px 0px 30px 0px;
	font-weight: 300;
}

.info-text p {
	line-height: 1.5;
	margin: 15px 0;
}

.info-text h2 {
	margin: 15px 0;
}

.container .info-text ul {
	list-style-type: disc;
	margin-left: 35px;
}

.container .info-text ul li::marker{
	color: #3788DD;
	font-size: 1.2em;
}

#inner-survey-card {
	max-width: 800px;
	padding: 20px;
	margin: auto;
}

input.input-disabled-state[disabled] {
	background: #EEE;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	background: #FFF !important;
	border: 1px solid #b1b1b1 !important;
	font-family: "Roboto", Arial, sans-serif !important;
	font-size: 1em !important;
	padding: 0 8px !important;
	width: 100% !important;
	color: #444 !important;
	height: 35px !important;
	line-height: 35px !important;
}

.select2-container .select2-selection--single {
	height: 35px !important;
	border: 0 none !important;
}

.select2-container--open .select2-dropdown {
	/* border-radius: 0 !important; */
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 41px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	right: 5px !important;
}

.select2-results__option {
	padding: 10px 16px !important;
}

.city-name,
.remove-city-select .city-select-wrapper {
	display: none;
}

.remove-city-select .city-name,
.city-select-wrapper {
	display: block;
}

.select2-container[dir] {
	width: 100% !important;
}

input[type=text][readonly],
input[type=password][readonly],
input[type=email][readonly],
textarea[readonly],
select[readonly] {
	background: #F8F8F8;
}


.form-prepend[disabled],
.input-disable-state[disabled] {
	/* opacity: .6;
	background-color: #EEE; */
}

.form-wrap {
	color: #444;
	display: table !important;
	width: 100% !important;
	border-collapse: separate !important;
}

.form-wrap-prepend input {
	text-indent: 30px;
}


.form-wrap > * {
	display: table-cell;
}

.form-wrap > input {
	width: 100%;
}

.form-wrap > * + input  {
	border-left: 0 none;
}

.form-wrap > input:first-child {
	border-right: 0 none;
}

.form-wrap .form-append,
.form-wrap .form-prepend {
	/* background: #F3F3F3; */
	/* border: 1px solid #b1b1b1; */
	font-family: "Roboto", Arial, sans-serif;
	font-size: 1em;
	padding: 8px;
	/* color: #444; */
	/* width: 1%; */
	line-height: 17px;
	white-space: nowrap;
	height: 35px;
	/* border-radius: 20px; */
	font-weight: normal;
}

.form-prepend {
	/* border-right: 2px solid #3788DD !important; */
	margin-left: 3px;
	color: #0A1B3C;
}

.form-append {
	/* border-left: 2px solid #3788DD !important; */
	margin-right: 3px;
	color: #0A1B3C;
}

.objects-container .form-group > .form-row + .form-row {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 2px solid #3788DD;
}

input[class*="city-"][type=text][readonly],
input[class*="city-"][type=password][readonly],
input[class*="city-"][type=email][readonly],
textarea[class*="city-"][readonly],
select[class*="city-"][readonly] {
	background: #EEE;
}

.select2-hidden-accessible {
	display: none !important;
}

@media (max-width: 1000px) {
	
	html {
		min-width: 1024px;
	}

}


/*
 New styles
*/

.header-content-logo-line span::after {
	background: linear-gradient(90deg, rgba(2, 0, 36, 0) 0%, #F5F9FD 100%);
	content: "";
	width: 500px;
	height: 70px;
	left: 0;
	top: 0;
	position: absolute;
}

.header.scroll .header-content-logo-line span::after {
	background: linear-gradient(90deg, rgba(2, 0, 36, 0) 0%, #fff 100%);
}

.middle-banner {
	border: 1px solid #CCE0F5;
	background: none;
	border-radius: 20px;
	box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.1);
	margin: 3rem 0;
}

.middle-banner .middle-banner-text {
	padding: 20px;
	display: flex;
	flex-direction: row;
	align-items: center;
}

.middle-banner .middle-banner-inner h3 {
	font-size: 3rem;
	color: #0A1B3C;
	font-weight: 400;
	line-height: 1.2;
	text-transform: uppercase;
	width: 50%;
  	text-align: center;
}

.middle-banner .middle-banner-inner h4 {
	font-size: 1.2rem;
	color: #3788DD;
	font-weight: 400;
	text-transform: uppercase;
	text-align: justify;
	width: 50%;
	letter-spacing: 1px;
}
.form-input select,
.form-input input[type=text], 
.form-input input[type=number], 
.form-input input[type=password], 
.form-input input[type=date], 
.form-input input[type=file], 
.form-input input[type=email], 
.select2-container--default .select2-selection--single .select2-selection__rendered, 
.form-input textarea {
  background: rgba(255, 255, 255, 1) !important;
  outline: none !important;
  padding: 1.2rem 1rem !important;
  color: #0A1B3C !important;
  border: 2px solid #3788DD !important;
  border-radius: 20px !important;
}

.form-input select {
	box-sizing: content-box;
    -moz-box-sizing:content-box;
    -webkit-box-sizing:content-box;
	padding: 0.10rem 0 !important;
	text-indent: 0.5rem;
	width: inherit;
}

.select2-container--default .select2-search--dropdown {
	text-align: center;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
	border: 0 !important;
	border-bottom: 1px solid #3788DD !important;
	width: 96% !important;
}

.select2-container--open .select2-selection--single .select2-selection__rendered {
	border-radius: 20px 20px 0 0 !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 2px !important;
}

.select2-container--default .select2-selection--single {
  background: none !important;
}

.select2-dropdown {
	background-color: white;
	border: 2px solid #3788DD;
	box-sizing: border-box;
	display: block;
	position: absolute;
	left: -100000px;
	width: 100%;
	z-index: 1051;
	border-radius: 0 0 20px 20px !important;
}

input::placeholder,
textarea::placeholder,
select::placeholder,
.select2-container--default .select2-selection--single .select2-selection__placeholder {
	color: #868686 !important;
	opacity: 0.5;
}

/* Checkbox styles */

.checkbox-wrapper {
	--borderColor: #3788DD ;
	--borderWidth: .1em;
	--checkMarkWidth: .125em;
	color: #3788DD;
}

.checkbox-wrapper label {
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

.checkbox-wrapper input[type=checkbox] {
    -webkit-appearance: none;
    appearance: none;
    vertical-align: middle;
    background: #fff;
    font-size: 1.6em;
    border-radius: 0.125em;
    display: inline-block;
    border: var(--borderWidth) solid var(--borderColor);
    width: 1em;
    height: 1em;
    position: relative;
	margin-right: 0.5em;
}

.checkbox-wrapper input[type=checkbox]:before,
.checkbox-wrapper input[type=checkbox]:after {
    content: "";
    position: absolute;
    background: var(--borderColor);
    width: calc(var(--checkMarkWidth) * 3);
    height: var(--checkMarkWidth);
    top: 50%;
    left: 10%;
    transform-origin: left center;
}

.checkbox-wrapper input[type=checkbox]:before {
    transform: rotate(45deg) translate(calc(var(--checkMarkWidth) / -2), calc(var(--checkMarkWidth) / -2)) scaleX(0);
    transition: transform 50ms ease-in 50ms;
}

.checkbox-wrapper input[type=checkbox]:after {
    width: calc(var(--checkMarkWidth) * 5);
    transform: rotate(-45deg) translateY(calc(var(--checkMarkWidth) * 2)) scaleX(0);
    transform-origin: left center;
    transition: transform 50ms ease-in;
}

.checkbox-wrapper input[type=checkbox]:checked:before {
    transform: rotate(45deg) translate(calc(var(--checkMarkWidth) / -2), calc(var(--checkMarkWidth) / -2)) scaleX(1);
    transition: transform 50ms ease-in;
}

.checkbox-wrapper input[type=checkbox]:checked:after {
    width: calc(var(--checkMarkWidth) * 5);
    transform: rotate(-45deg) translateY(calc(var(--checkMarkWidth) * 2)) scaleX(1);
    transition: transform 50ms ease-out 50ms;
}

.checkbox-wrapper input[type=checkbox]:focus {
	outline: calc(var(--checkMarkWidth) / 2) dotted rgba(0, 0, 0, 0.25);
}

/* Radio button styles */

label:has(.radio-wrapper) {
	padding: 3px 0;
}

label:has(.radio-wrapper) .form-label {
	line-height: normal !important;
}

.radio-wrapper input[type=radio] {
    display: none;
    appearance: none;
}
.radio-wrapper input[type=radio] + span:before {
    content: "";
    background: #fff;
    border-radius: 100%;
    border: 2px solid #3788DD;
    display: inline-block;
    width: 1.4em;
    height: 1.4em;
    position: relative;
    top: -0.1em;
    margin-right: .6em;
    vertical-align: middle;
    cursor: pointer;
    text-align: center;
    transition: all 250ms ease;
}
.radio-wrapper input[type=radio]:checked + span:before {
	background-color: #3788DD;
	box-shadow: inset 0 0 0 3px #fff;
}
.radio-wrapper input[type=radio]:focus + span:before {
	outline: none;
	border-color: #3788DD;
}
.radio-wrapper input[type=radio]:disabled + span:before {
	box-shadow: inset 0 0 0 3px #fff;
	border-color: #3788DD;
	background: #3788DD;
}
.radio-wrapper input[type=radio] + label:empty:before {
	margin-right: 0;
}

.auth-box h2 {
	color: #fff;
}
.auth-box input {
	max-width: 100% !important;
}

.auth-box .form-input {
	background: rgba(55, 136, 221, 0.1019607843);
	display: flex;
	flex-direction: column;
	padding: 1rem;
	border-top-right-radius: 12px;
	border-top-left-radius: 12px;
	grid-gap: 0.25rem;
	border-bottom: 1px solid #F5F9FD;
	margin: 1.5rem 0;
}
.auth-box .form-input label {
	color: #F5F9FD;
	font-size: 1rem;
	font-weight: 500;
}
.auth-box .form-input input[type=text], .auth-box .form-input input[type=number], .auth-box .form-input input[type=password], .auth-box .form-input input[type=date], .auth-box .form-input input[type=file], .auth-box .form-input input[type=email], .auth-box .form-input textarea {
	border: none !important;
	background: none !important;
	outline: none;
	color: #868686;
}
  
.auth-box .checkbox-input {
	margin-bottom: 2rem;
	height: 35px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.auth-box .checkbox-input input {
	display: none;
}
.auth-box .checkbox-input input:checked ~ label:after {
	display: block;
}
.auth-box .checkbox-input label {
	color: white;
	position: relative;
	padding-left: 40px;
	font-weight: 500;
	height: 35px;
	display: flex;
	align-items: center;
	cursor: pointer;
	gap: 0.25rem;
}
.auth-box .checkbox-input label a {
	color: white;
	text-decoration: underline;
	font-weight: 500;
}
.auth-box .checkbox-input label:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 2px;
	width: 30px;
	height: 30px;
	border: 2px solid #CCE0F5;
	border-radius: 4px;
}
.auth-box .checkbox-input label:after {
	content: "";
	display: none;
	position: absolute;
	left: 4px;
	top: 6px;
	width: 22px;
	height: 22px;
	background: #CCE0F5;
	border-radius: 1px;
}
  
.auth-box .gap-5 {
	gap: 0.5rem;
}
  
.auth-box.success-message {
	background: #65C728;
	color: white;
	padding: 1rem;
	border-radius: 16px;
	font-weight: 500;
}
  
.auth-box.error-message {
	background: #7030A0;
	color: white;
	padding: 1rem;
	border-radius: 16px;
	font-weight: 500;
}
  
.auth-box.btn {
	text-decoration: none;
}
.auth-box.btn-header {
	border-radius: 50px;
	border: 1px solid #868686;
	color: #0A1B3C;
	font-size: 0.75rem;
	background: none;
	font-weight: 500;
	padding: 0.5rem 1rem;
}
.auth-box.btn-header:hover {
	background: #CCE0F5;
	border-color: #3788DD;
}
.auth-box.btn-primary {
	background: #3788DD;
	padding: 0.75rem 1.875rem;
	color: white;
	display: flex;
	max-width: fit-content;
	font-size: 1rem;
	border-radius: 50px;
	gap: 1.5rem;
	align-items: center;
}
.auth-box .btn-primary svg path {
	stroke: white;
}
.auth-box .btn-primary:hover {
	background: #0A1B3C;
	color: white;
}
.auth-box .btn-primary-long {
	max-width: 100%;
	width: 100%;
	justify-content: center;
	position: relative;
}
.auth-box .btn-primary-long svg {
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
}
.auth-box .btn-primary-small {
	background: #3788DD;
	padding: 0.5rem 2.5rem;
	color: white;
	display: flex;
	max-width: fit-content;
	font-size: 1rem;
	border-radius: 50px;
	line-height: 1.15;
}
.auth-box .btn-primary-small:hover {
	background: #0A1B3C;
	color: white;
}
.auth-box .btn.inactive {
	background: #868686;
	border-color: #868686;
}
.auth-box .btn.inactive:hover {
	background: #0A1B3C;
	color: white;
}

input:-webkit-autofill,
input:-webkit-autofill:focus{
   -webkit-transition-delay: 9999s;
   transition-delay: 9999s;
}


input:-webkit-autofill:hover,
input:-webkit-autofill:active {
   -webkit-text-fill-color: #fff !important;
}

.captcha-wrapper {
	padding: 8px 0 0 0;
    background: #fff;
    text-align: center;
}


/* Reset <select> defaults */
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  outline: 0;
  background: none;
  color: inherit;
  box-shadow: none;
}

select::-ms-expand {
  display: none;
}

/* Custom Select wrapper */
.select {
  position: relative;
  display: flex;
  background: var(--background-select);
  border-radius: 0.25rem;
  overflow: hidden;
  flex-direction: inherit !important;
}

.select select {
  flex: 1;
  padding: 10px 15px !important;
  cursor: pointer;
  height: initial !important;
}

.select::after {
  content: "▼";
  position: absolute;
  right: 1rem;
  top: 0.955rem;
  transition: 0.25s all ease;
  pointer-events: none;
}

.select:hover::after {
  color: #3788DD;
  -webkit-animation: bounce 0.5s infinite;
          animation: bounce 0.5s infinite;
}

.btn--blue {
	background: #153676 !important;
}

.form-row .columns .form-input {
	margin: 0.5rem 0 !important;
}

/* Step wizard styles */

.step-wizard {
    /* background-color: #3788DD; */
    /* background-image: linear-gradient(19deg, #3788DD 0%, #b721ff 100%); */
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
	margin: 10px 0 40px 0;
}
.step-wizard-list{
    /* background: #fff;
    box-shadow: 0 15px 25px rgba(0,0,0,0.1); */
    color: #333;
    list-style-type: none;
    border-radius: 10px;
    display: flex;
    /* padding: 20px 10px; */
    position: relative;
    z-index: 10;
}

.step-wizard-item{
    padding: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive:1;
    flex-grow: 1;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    text-align: center;
    /* min-width: 170px; */
    min-width: 189px;
    position: relative;
}
.step-wizard-item + .step-wizard-item:after{
    content: "";
    position: absolute;
    left: 0;
    top: 19px;
    background: #3788DD;
    width: 100%;
    height: 2px;
    transform: translateX(-50%);
    z-index: -10;
}
.step-wizard-item.step a {
	color: #000 !important;
	line-height: 11px;
}
.step-wizard-item.step a span.progress-label {
	position: relative;
	top: 9px;
}
.progress-count{
    height: 40px;
    width:40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-weight: 600;
    margin: 0 auto;
    position: relative;
    z-index:10;
    color: transparent;
}
.progress-count:after{
    content: "";
    height: 40px;
    width: 40px;
    background: #3788DD;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: -10;
}
.step-wizard-item.step a:hover .progress-count:after{
    background: #0A1B3C;
}
.progress-count:before{
    content: "";
    height: 10px;
    width: 20px;
    border-left: 3px solid #fff;
    border-bottom: 3px solid #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -60%) rotate(-45deg);
    transform-origin: center center;
}
.progress-label{
    font-size: 12px;
    font-weight: 600;
    margin-top: 10px;
	text-transform: uppercase;
}
.progress-text{
    font-size: 12px;
}
.active .progress-count:before,
.active ~ .step-wizard-item .progress-count:before{
    display: none;
}
.active ~ .step-wizard-item .progress-count:after{
    height: 16px;
    width: 16px;
}
.active ~ .step-wizard-item .progress-label{
    opacity: 0.5;
}
.active .progress-count:after{
    background: #fff;
    border: 2px solid #3788DD;
}
.active .progress-count{
    color: #3788DD;
}

.contracts-status .progress-count::after {
	height: 16px;
  	width: 16px;
	/* display: none; */
}

.contracts-status .active .progress-count::after {
	content: "";
	height: 40px;
	width: 40px;
	background: #3788DD;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	z-index: -10;
}

.contracts-status .progress-count::before {
	display: none;
}

.contracts-status .active .progress-count::before {
	display: block;
	content: "";
    height: 10px;
    width: 20px;
    border-left: 3px solid #fff;
    border-bottom: 3px solid #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -60%) rotate(-45deg);
    transform-origin: center center;
}

.contracts-status .progres_alert .progress-count::before {
	display: block;
	content: "✕";
	height: auto !important;
	width: auto !important;
    border-left: none;
    border-bottom: none;
	color: #fff;
    /* position: absolute; */
    left: inherit;
    top: inherit;
    transform: inherit;
    transform-origin: center center;
}

.contracts-status .progres_alert .progress-count::after {
	height: 40px;
	width: 40px;
	background: #d44f4f;
}

.contracts-status .progres_alert .progress-count::after {
	height: 40px;
	width: 40px;
	background: #d44f4f;
}

.contracts-status .active .progress-label {
	opacity: 1;
}

/* Alternative stepper styles */

.stepper-wrapper {
	margin-top: auto;
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}

.stepper-item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1;

	@media (max-width: 768px) {
		font-size: 12px;
	}
}
  
.stepper-item::before {
	position: absolute;
	content: "";
	border-bottom: 2px solid #ccc;
	width: 100%;
	top: 20px;
	left: -50%;
	z-index: 2;
}
  
.stepper-item::after {
	position: absolute;
	content: "";
	border-bottom: 2px solid #fff;
	width: 100%;
	top: 20px;
	left: 50%;
	z-index: 2;
}
  
.stepper-item .step-counter {
	position: relative;
	z-index: 5;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	margin-bottom: 6px;
}
  
.stepper-item.active {
	font-weight: bold;
}
  
.stepper-item.completed .step-counter {
	background-color: #3788DD;
	color: #fff;
}
  
.stepper-item.completed::after {
	position: absolute;
	color: #fff;
	content: "";
	border-bottom: 2px solid #3788DD;
	width: 100%;
	top: 20px;
	left: 50%;
	z-index: 3;
}
  
.stepper-item:first-child::before {
	content: none;
}

.stepper-item:last-child::after {
	content: none;
}

.step-name {
	text-align: center;
	font-weight: 600;
	font-size: 14px;
	text-transform: uppercase;
}

.contracts-list .contracts .contract .step-wizard {
	margin: 20px 0 !important;
}

.btn-large {
	padding: 2rem 4rem !important;
}

/* News section styles */


.news-item {
	margin: 20px 0;
}

.mt-1 {
	margin-top: 10px;
}

.mt-2 {
	margin-top: 20px;
}

.mt-3 {
	margin-top: 30px;
}

.contacts-catalog-grid {
	margin: 2rem 0 4rem;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 2rem;
}

.contacts-catalog-grid .cover-box {
	padding: 1rem 0;
}

.contacts-catalog-grid .cover-box img {
	width: 100%;
}

.contacts-catalog-grid .cover-box-content {
	color: #fff;
	padding: 3rem 2rem 1rem 2rem !important;
}

.contacts-catalog-grid .cover-box-image {
	height: 200px;
	padding: 0;
}

.contacts-catalog-grid .cover-box-image h2 {
	background: #3788DD;
	padding: 1rem;
	border-radius: 50px;
	left: -20px;
	position: relative;
	top: 102px;
	height: 60px;
	line-height: 30px;
	font-size: 20px;
	width: 75%;
	text-align: center;
}

.document-item-content-right .fa {
	font-size: 38px;
	color: #2151A1;
}

.document-item-content-left {
	margin-right: 20px;
}

a.document-item {
	margin: 20px 0;
	width: 50% !important;
}

.info-text.documents-header h1 {
	margin: 100px 0px 0px 0px;
}

.document-header-element.arrow-right.heading-large, 
.document-header-element.arrow-left.heading-large {
	margin-bottom: -0.25rem !important;
}

.info-text h1.page-title {
	margin: 20px 0px 0 0px;
	font-size: 3.5rem;
}

.form .auth-box-content input {
	color: #fff !important;
}

.objects-help {
	display: flex;
	justify-content: end;
	gap: 1rem;
	align-items: center;
}

.objects-help span {
	color: #3788DD !important;
	font-size: 16px;
}

.objects-help i {
	font-size: 28px;
}