*::-webkit-input-placeholder {
	color: #666;
	opacity: 1;
}
*:-moz-placeholder {
	color: #666;
	opacity: 1;
}
*::-moz-placeholder {
	color: #666;
	opacity: 1;
}
*:-ms-input-placeholder {
	color: #666;
	opacity: 1;
}
.no-padding {
    padding-left: 0px;
    padding-right: 0px;
}
body input:focus:required:invalid,
body textarea:focus:required:invalid {
	
}
body input:required:valid,
body textarea:required:valid {
	
}
body {
   font-family:'Open Sans', sans-serif;
	font-size: 14px;
    overflow-x: hidden
}
body, html {
    overflow-x: hidden
}
a{
	color:#000;
}
a:hover{
	text-decoration: none;
}
a:active{
	background: transparent;
}
#recall{
	z-index:9999;
	display: none;
	position: fixed;
	bottom:24px;
	left:3%;
	color: #fff;
	width:45%;
	height:45px;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	padding-top: 0px;
	text-transform: uppercase;
	background: #EE2C2C;
	border-radius:3px;
	border:1px solid #EE2C2C;
	-webkit-transition: all .4s ease-in-out;
	-o-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}
#recall:hover:after {
    z-index: -1
}
#recall:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    background: linear-gradient(135deg, transparent 40px, rgba(255, 255, 255, 0.4) 60px, transparent 65px) no-repeat;
    background-position: -100px 0px;
    transform-origin: center;
    animation-name: but;
    animation-duration: 4s;
    animation-timing-function: cubic-bezier( .2, .2, .3, .4); 
    animation-iteration-count: infinite;
}
@keyframes but {
    from {background-position: -100px 0px;}
    to {background-position: 500px 0px;}
}
#rewrite{
	z-index:9999;
	display: none;
	position: fixed;
	bottom:24px;
	right:3%;
	color: #fff;
	width:45%;
	height:45px;
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	background: #EE2C2C;
	border-radius:3px;
	border:1px solid #EE2C2C;
	-webkit-transition: all .4s ease-in-out;
	-o-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}
#rewrite:hover, #recall:hover{
	border:1px solid rgba(246,0,20,1);
	box-shadow: inset 300px 0 0 0 rgba(246,0,20,1);
}
#rewrite i, #recall i{
    font-size: 21px;
    position: relative;
    left: -10px;
    top: 2px;
}
#rewrite i {
    top: 0px;
}
body{
	max-width:100%;
}
.container.wrapper{
	max-width:1050px;
	position: relative;
}
.fixed-menu {
    position: fixed;
    left: 0px;
    width: 250px; 
    height: 360px;
    top: 37%;
    background: rgba(255, 255, 255, .8);
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    transform: translateX(-187px);
    transition: all linear .15s;
    z-index: 2;
}
.fixed-menu:before {
    position: fixed;
    width: 10px;
    height: 100%;
    content: "";
    background: #1FB32C;
    transform: translateX(187px);
}
.fixed-menu ul {
    padding-left: 20px;
    margin-top: 15px;
    display: none;
}
.fixed-menu li {
    list-style: none;
    margin-left: 0px;
    line-height: 17px;
}
.fixed-menu li a {
    font-size: 12px;
    padding: 1px 0px;
}
.fixed-menu li a:hover {
    color: #1FB32C;
    text-decoration: underline;
}
.fixed-menu .indicator {
    font-size: 12px;
    color: #1FB32C;
    margin-top: 20px;
    text-align: right;
    padding-right: 47px;
    margin-bottom: 5px;
    position: relative;
    height: 17px;
    opacity: 0;
}
.fixed-menu .icon-op:hover {
    cursor: pointer;
}
.icon-op {
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    background: #1FB32C url(../img/icon/nav-close.png) no-repeat 50% 50%;
    right: 12px;
    top: 14px;
    border-radius: 5px;
}
.vert-text {
    font-size: 18px;
    text-transform: uppercase;
    -webkit-writing-mode: vertical-rl; 
    writing-mode:tb-rl;
/*    margin: 87px 0px 0px 23px;*/
    transform: rotate(180deg);
    position: absolute;
    right: 15px;
    top: 120px;
}

.open {
/*    width: 250px;*/
    transform: translateX(0px);
}
.open:before {
    transform: translateX(0px);
}
.open .vert-text {
    display: none;
}
.open .indicator {
    opacity: 1;
}
.open ul {
    display: block;
}
.open .icon-op {
    transform: rotate(180deg);
}

nav.navbar{
	position: relative;
}
#checkbox-toggle{
    display: none;
}
#logo-top-line{
	display: none;
}
#mobile-bar{
	display: none;
	font-size: 38px;
	color: #fff;
	z-index:999;
	cursor: pointer;
}
.navbar{
	padding-top: 6px;
	padding-left: 60px;
}
.navbar-nav {
    z-index: 0;
}
.navbar li a{
	text-transform: uppercase;
	font-weight: bold;
	padding: 5px 20px 5px 20px;
	background: #1fb32c;
}
.navbar li:first-child{
	padding-left: 5px;
}
.navbar li{
	-webkit-box-shadow: 0px 2px  3px 0 #1fb32c;
	box-shadow: 0px 2px 3px 0 #1fb32c;
	padding: 9px 0 10px 0;
	background: #1fb32c;
    z-index: 0;
}
.navbar li a:hover{
	background: #1fb32c;
	color: #FFB800;
}
.navbar li a.active{
	color: #FFB800;
}
.navbar li a{
	color: #fff;
	border-left:1px solid #fff;
}
.navbar li a.first{
	border-left: none;
}
.navbar li.first:after {
    content: '';
    position: absolute;
    left: -30px;
    top: 0;
    border-bottom: 49px solid transparent;
    border-right: 30px solid #1fb32c;
}
#phone-head img{
    margin-right: 10px;
    margin-top: -3px;
    padding: 0;
}
#phone-head{
	font-size: 24px;
	font-weight: bold;
	position: relative;
	left:0%;
	top: 0px;
    padding: 6px 0 3px 20px;
    background: rgba(255, 255, 255, .5);
    border-right: solid 4px #1fb32c;
}
.navbar-nav li{
	z-index:999;
} 


body {
    font-family:'Open Sans';
    overflow-x: hidden;
}
.no-padding {
    padding-left: 0px;
    padding-right: 0px;
}
.container {
/*    width: 960px;*/
}
h2 {
    font-size: 26px;
    text-transform: uppercase;
    text-align: center;
    position: relative;
    margin: 10px auto 30px;
}
h2:after {
    position: absolute;
    content: "";
    width: 60px;
    height: 2px;
    background: #1FB32C;
    top: 45px;
    left: calc(50% - 30px);
}
header {
    position: relative;
    background: url(../img/bg-main.jpg) no-repeat 50% 50%;
    height: 655px;
    padding: 10px 0px 0px;
}
header img{
    position: absolute;
    z-index: 1;
}
header h1 {
    width: 80%;
    margin-left: 20%;
    font-size: 24px;
    text-transform: uppercase;
    background: rgba(255, 255, 255, .8);
    padding: 11px 0px 11px 70px;
    box-sizing: border-box;
    position: relative;
    border: 2px solid #1FB32C;
    border-left: 6px solid #1FB32C;
    margin-top: 25px;
}
header h1:before {
    position: absolute;
    content: "";
    width: 50px;
    height: 100%;
    display: block;
    background: url(../img/icon/head-sp.png) no-repeat;
    background-position: 0px 0px;
    left: 15px;
    top: 10px;
}
header h1:after {
    position: absolute;
    content: "";
    width: 80px;
    height: 4px;
    display: block;
    left: -80px;
    top: 35px;
    background: #1FB32C;
}
header h3 {
    width: 80%;
    margin-left: 20%;
    font-size: 18px;
    text-transform: uppercase;
    background: rgba(255, 255, 255, .8);
    padding: 16px 0px 16px 70px;
    box-sizing: border-box;
    position: relative;
    border: 2px solid #1FB32C;
    border-left: 6px solid #1FB32C;
}
header h3:before {
    position: absolute;
    content: "";
    width: 50px;
    height: 100%;
    display: block;
    background: url(../img/icon/head-sp.png) no-repeat;
    background-position: 0px -70px;
    left: 15px;
    top: 0px;
}
header h3:nth-of-type(2):before {
    position: absolute;
    content: "";
    width: 50px;
    height: 100%;
    display: block;
    background: url(../img/icon/head-sp.png) no-repeat;
    background-position: 0px -135px;
    left: 15px;
    top: 0px;
}
header .phone {
    font-size: 24px;
	font-weight: bold;
    padding: 8px 0 8px 70px;
    background: rgba(255, 255, 255, .8);
    border-left: 4px solid #1FB32C;
    border-right: 4px solid #1FB32C;
    box-sizing: border-box;
    position: relative;
    margin: 25px auto 20px;
}
header .phone:before {
    position: absolute;
    content: "";
    width: 50px;
    height: 100%;
    background: url(../img/icon/phone.png) no-repeat 50% 50%;
    top: 0px;
    left: 15px;
}
header span {
    color: #F82E2E;
    font-weight: bold;
}
header .to-tips{
	z-index:1;
	display: block;
    margin-top: 15px;
	padding: 6px 0px 6px 70px;
	color: #fff;
	background: linear-gradient(#F82E2E 50%, #de0000 50%);
	border: 1px solid #cc0000;
/*    width: 100%;*/
    position: relative;
    font-size: 14px;
}
header .to-tips:hover {
    background: #EE0000;
    color: #fff;
    text-decoration: none;
}
header .to-tips:before {
    position: absolute;
    content: "?";
    left: 15px;
    top: 4px;
    border: 1px solid #fff;
    padding: 0px 15px;
    border-radius: 50%;
    font-size: 30px;
    font-weight: 100;
}
#to-calc {
    margin-top: 25px;
    display: block;
    background: #1FB32C;
    color: #fff;
    text-transform: uppercase;
    font-size: 20px;
    padding: 13px 20px;
    border: 1px solid #ff8900;
    font-weight: bold;
    text-align: center;
}
#to-calc img {
    display: inline-block;
    margin-right: 10px;
}
header a p {
    font-size: 14px;
	font-weight: bold;
	text-transform: uppercase;
    color: #fff200;
    text-align: left;
    margin-bottom: 0px;
    padding: 0;
}
header a span {
    font-size: 12px;
    padding: 0px;
    margin-top: 0px;
    color: #fff;
    font-weight: normal;
}
/* ----------Advantages----------------- */
#advantages{
	background: #fff;
/*    padding-bottom: 25px;*/
    padding: 30px 0px 0px;
}
.service {
    padding: 0px 0px 5px;
    border: 1px solid #cccccc;
    margin-top: 20px;
    margin-bottom: 0px;
}
.service:nth-of-type(2n+1) {
    margin-right: 15px;
}
.service:nth-of-type(2n) {
    margin-left: 0px;
}
.service:nth-of-type(n+3) {
    padding-bottom: 15px;
}
.service h2{
    font-size: 16px;
    text-align: center;
    font-weight: 700;
    padding: 10px 0px;
    border-bottom: 1px solid #cccccc;
    margin-top: 0px;
}
.service h2:after {
    display: none
}
.service h2.large-h {
    padding: 2px;
}
.service img {
    width: 100%;
    height: 260px;
    padding: 10px 30px;
    border-bottom: 1px solid #cccccc;
}
.service p {
    float: left;
    padding-left: 15px;
    font-size: 14px;
    margin-top: 15px;
}
.service div p span {
/*    color: red;*/
    font-weight: 700;
}
.service .price-p {
    color: red;
    font-weight: 700;
    margin-top: 10px;
    float: none;
}
.service a:not(.notbut){
    float: right;
    background: #F82E2E;
    border: none;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    padding: 10px 45px;
    font-size: 16px;
    margin-top: 15px;
    margin-right: 15px;
}
.service a:hover:not(.notbut){
    background: red;
}
#advantages .aten-block {
    text-align: center;
    padding: 15px 70px;
    font-size: 16px;
    margin: 45px auto 20px;
    border: 1px dashed #1FB32C;
}
#advantages .aten-block span {
    color: red;
}
.line-girl {
    padding: 90px 0px 30px;
    background: #F1F1F1;
}
#advantages .girl {
    margin: 10px auto -71px;
    display: block;
}
#advantages button {
	font-size: 18px;
	font-weight: bold;
	text-transform: uppercase;
	display: block;
	margin: 0px auto 0;
	padding: 10px 25px;
	color: #fff;
	background: linear-gradient(#F82E2E 50%, #de0000 50%);
	border: 1px solid #cc0000;
}
#callback-btn:hover{
	background: #EE0000;
}

#tips{
	background: #d2e8c3;
	padding: 40px 0px;
}
#tips h2 {
    margin: 0px;
}
#tips h2:after {
    top: 75px;
}
#tips .container{
	padding-top: 60px;
}
#tips .tips{
	position: relative;
	width:90%;
	margin: 0 auto;
}
#tips .tips img{
	position: absolute;
	top:15px;
	left:0;
}
#tips .tips p{
	margin-left: 95px;
	padding:15px 0 0 20px;
}
#tips span{
	font-weight: bold;
}
p.tipes-atention {
    text-align: center;
    margin-top: 30px;
    font-size: 16px;
    padding: 15px;
    background: #1FB32C;
    color: #fff;
}
.show-text, .show-text1 {
    color: #fff;;
    font-weight: 600;
    margin-top: 0px;
    background: #ff3636;
    padding: 4px 17px;
    border-radius: 5px;
    box-shadow: 0px 0px 4px 2px #ccc;
    margin-bottom: 5px;
    display: inline-block;
}
.pad-p {
    margin-top: 25px;
}
.show-text:hover, .show-text1:hover {
    cursor: pointer;
    background: red;
}
.hide-text, .hide-text1 {
    display: none;
}
.block {
    display: block;
}


#calculator {
    background: #d2e8c3;
	padding: 40px 0 0;
    position: relative;
}
#calculator button {
    background: #de0000;
    border: none;
    margin: 30px auto 30px;
    display: block;
    padding: 13px 50px;
    color: #fff;
    text-transform: uppercase;
    font-size: 18px;
}
#calculator .container {
    overflow: visible;
    padding-bottom: 40px
}
#calculator p {
    font-size: 19px;
    font-weight: bold;
    margin-bottom: 20px
}
.calculator-bl {
    margin-top: 50px;
    display: flex;
    justify-content: space-between;
}
.calculator-bl>div {
    width: 23%;
}
.radio-but {
    display: none;
}
.radio-but+label {
    font-size: 16px;
    font-weight: normal;
    display: block;
    position: relative;
    margin-bottom: 25px;
    padding-left: 50px;
    cursor: pointer
}
.radio-but+label:before {
    position: absolute;
    content: '';
    width: 35px;
    height: 35px;
    background: #fff;
    left: 0;
    top: -5px
}
.radio-but:checked+label:before {
    background: #fff url(../img/icon/check1.png) center no-repeat;
}
.range {
    -webkit-appearance: none;
    width: 100% !important;
    margin: 20px 0 0px;
}

.range-label {
    width: 100%;
    display: block;
}

.output {
    background: #fff;
    font-size: 16px;
    padding: 7px;
    margin: 0 5px
}

input[type=range]::-moz-range-track {
    border-radius: 5px;
    height: 5px;
    outline: none;
    background: #1fb32c;
}

input[type=range]::-webkit-slider-runnable-track {
    border-radius: 5px;
    height: 5px;
    outline: none;
    background: #1fb32c;
}

.range::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 50%;
    cursor: pointer;
    margin-top: -12px;
    border: 1px solid #1fb32c
}

.range::-ms-slider-thumb {
    -webkit-appearance: none;
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 50%;
    cursor: pointer;
    margin-top: -12px;
    border: 1px solid #1fb32c
}

.range::-moz-slider-thumb {
    -webkit-appearance: none;
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 50%;
    cursor: pointer;
    margin-top: -12px;
    border: 1px solid #1fb32c
}

input[type=range]:focus {
    outline: none;
}

.range-label {
    position: relative;
}

.range-label span:nth-of-type(1) {
    position: absolute;
    bottom: -30px;
    left: 0;
    font-size: 15px;
}

.range-label span:nth-of-type(2) {
    position: absolute;
    bottom: -30px;
    right: 0;
    font-size: 15px;
}
.calc-map {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
.calc-map+p{
    text-align: center;
    margin: 20px 0 0;
    color: #EE2C2C
}
#cp_km {
    width: 100px;
    margin-right: 20px;
    padding: 5px;
    font-size: 16px;
    border: none;
    margin-bottom: 20px
}
#long {
    font-weight: bold;
    font-size: 18px;
}
#map {
    width: 550px;
    height: 380px;
}
.calc-map-in {
    margin-left: 50px;
    margin-top: 90px;
    width: 100%
}
.calc-input {
    width: 70%;
    border: none;
    margin-bottom: 30px;
    padding: 15px;
    font-size: 16px;
    outline: none
}
textarea.calc-input {
    resize: none;
    height: 210px
}
.calc-men {
    right:-12%;
    bottom: 0;
    position: absolute;
}
#whattodo {
    padding: 40px 0px;
}
#whattodo h2 {
    margin: 0px auto 50px;
}
#whattodo h2:after {
    top: 75px;
}
#whattodo p {
    position: relative;
    width:80%;
	margin: 12px auto;
    padding: 10px 0 10px 60px;
    border: 1px solid #1FB32C;
}
#whattodo p:before {
    position: absolute;
    content: "";
    width: 47px;
    height: 35px;
    background: url(../img/icon/sprite-todo.png) no-repeat;
    left: 7px;
    top: 2px;
    background-position: 0px 7px;
/*    border: 1px solid*/
}
#whattodo p:nth-child(2):before {
    background-position: 0px -43px;
}
#whattodo p:nth-child(3):before {
    background-position: 0px -92px;
}
#whattodo p:nth-child(4):before {
    background-position: 0px -142px;
}
#whattodo p:nth-child(5):before {
    background-position: 0px -193px;
}
#whattodo p:nth-child(6):before {
    background-position: 0px -243px;
}
#whattodo p:nth-child(7):before {
    background-position: 0px -293px;
}
#whattodo p:nth-child(8):before {
    background-position: 0px -344px;
}
#whattodo p:nth-child(9):before {
    background-position: 0px -394px;
}
#whattodo p:nth-child(10):before {
    background-position: 0px -444px;
}
#whattodo p:nth-child(11):before {
    background-position: 0px -495px;
}
#whattodo p:nth-child(12):before {
    background-position: 0px -545px;
}
#whattodo p:nth-child(13):before {
    background-position: 0px -595px;
}
#whattodo p:nth-child(14):before {
    background-position: 0px -645px;
}
/*----------------Influence---------------*/
#arenda {
    padding: 40px 0px;
    background: #F1F1F1;
}
#arenda h2:after {
    top: 75px;
}
#arenda img {
    margin: 20px auto;
}
#arenda .block-zakaz {
    padding: 30px;
    margin: 30px auto;
    background: #d1e9c3
}
#arenda button{
    font-size: 14px;
	font-weight: bold;
	text-transform: uppercase;
	display: block;
	margin: 0px auto 0;
	padding: 10px 25px;
	color: #fff;
	background: linear-gradient(#F82E2E 50%, #de0000 50%);
	border: 1px solid #cc0000;
}
#arenda h5 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}
#arenda .aten-block {
    padding: 30px 40px;
    margin: 30px auto;
    border: 1px dashed #1FB32C;
}
#bytovka {
    padding: 40px 0px;
}
#bytovka h2:after {
    top: 75px;
}
#bytovka img {
    margin: 20px auto;
}
.byt-p p {
    padding: 12px 0px 12px 90px;
    position: relative;
}
.byt-p p:before {
    position: absolute;
    width: 50px;
    height: 40px;
    content: "";
    background: url(../img/icon/company.png) no-repeat;
    top: 7px;
    left: 35px;
}
.byt-p p:nth-of-type(2):before {
    background-position: 0px -42px;
    top: 0px;
}
.byt-p p:nth-of-type(3):before {
    background-position: 0px -95px;
    top: 0px;
}
.byt-p p:nth-of-type(4):before {
    background-position: 0px -154px;
}
.byt-p p:nth-of-type(5):before {
    background-position: 0px -219px;
}
.uslugi {
    background: #d1e9c3;
    padding: 30px 120px;
    margin: 30px auto 0px;
} 
.uslugi h4 {
    text-align: center;
    text-transform: uppercase;
    font-size: 18px;
    margin-bottom: 30px;
}
.uslugi p {
    margin: 30px 0px 30px 70px;
    position: relative;
}
.uslugi p:before {
    position: absolute;
    content: "";
    width: 50px;
    height: 50px;
    background: url(../img/icon/sprite1.png) no-repeat;
    left: -60px;
    top: -5px
}
.uslugi p:nth-of-type(2):before {
    background-position: 0px -77px;
    top: 5px;
}
.uslugi p:nth-of-type(3):before {
    background-position: 0px -171px;
    top: 5px;
}
.uslugi p:nth-of-type(4):before {
    background-position: 0px -279px;
    top: 15px;
}
.vigody {
/*    background: #d1e9c3;*/
    margin: 30px auto;
    padding: 30px 0px;
    border: 1px dashed #1FB32C;
}
.vigody h4 {
    text-align: center;
    color: red;
    margin-bottom: 30px;
}
.vigody p {
    padding-left: 60px;
    position: relative;
    margin: 20px 0px;
}
.vigody p:before {
    position: absolute;
    width: 43px;
    height: 43px;
    content: "";
    background: url(../img/icon/list-icon.png) no-repeat;
    top: 0px;
    left: 10px;
}
.vigody button{
    font-size: 14px;
	font-weight: bold;
	display: block;
	margin: 10px auto 0;
	padding: 10px 35px;
	color: #fff;
	background: linear-gradient(#F82E2E 50%, #de0000 50%);
	border: 1px solid #cc0000;
}
.vigody button:hover {
    background: #F82E2E;
}
#tech-block {
    padding: 40px 0px;
    background: #F1F1F1;
}
#tech-block img {
    margin: 20px auto 20px;
    display: block;
}
#tech-block h5 {
    font-size: 16px;
    text-align: center;
    color: #1FB32C;
    margin: 20px auto 20px;
    width: 100%;
}
#acordeon {
    padding: 40px 0px;
}
#acordeon h2:after {
    top: 75px;
}
#acordeon h5 {
    text-align: center;
    text-transform: uppercase;
    font-size: 18px;
    padding: 10px 0px;
    border: 1px solid #1FB32C;
    margin: 0px auto 0px;
    position: relative;
}
#acordeon h5:after {
    position: absolute;
    width: 20px;
    height: 12px;
    content: "";
    background: url(../img/icon/arow.png) no-repeat;
    right: 40px;
    top: 15px;
}
#acordeon h5:hover {
    cursor: pointer;
}
.acord-item img {
    display: block;
    margin: 30px auto;
}
.acord-item h6 {
    font-size: 18px;
    color: #fff;
    background: #1FB32C;
    padding: 7px 10px
}
.acord-item table {
    width: 100%;
    margin: 15px auto;
}
.acord-item table tr td {
    padding: 5px 15px;
}
.acord-item table tr td:first-child {
    font-weight: bold;
    padding-right: 40px;
    padding-left: 30px;
}
.acord-item table tr td:last-child {
    padding-left: 0px;
}
.acord-item iframe {
    width: 100%;
    border: none;
    height: 220px;
    margin: 20px auto;
}
.acord-item button {
    font-size: 14px;
	font-weight: bold;
	text-transform: uppercase;
	display: block;
	margin: 25px auto 0;
	padding: 10px 35px;
	color: #fff;
	background: #F82E2E;
	border: 1px solid #cc0000;
    width: 100%;
}
.acord-item .open:after {
    transform: rotate(180deg);
    top: 10px;
}
.charact {
    display: none;
    margin-top: 20px;
}
.active-table {
    display: block;
}
/* --------------Contacts---------------------- */
#contacts{
	background: #d2e8c3;
	padding: 30px 0px 0px;
}
#contacts h1 {
    margin: 0px auto;
}
#contacts .container.wrapper{
	padding-top: 40px;
}
#bottom-map{
	width:80%;
}
#bottom-txt{
	width:80%;
	margin: 0 auto;
}
#contacts h5{
	color: #000;
	font-size: 18px;
	font-weight: 600;
}
#contacts p{
	color: #000;
	font-size: 16px;
	padding-bottom: 20px;
}
#bottom-btn{
	width:240px;
	font-size: 18px;
	font-weight: bold;
	text-transform: uppercase;
	padding: 8px;
	color: #fff;
	background: #F82E2E;
	margin-bottom: 30px;
    background: linear-gradient(#F82E2E 50%, #de0000 50%);
	border: 1px solid #cc0000;
}
#bottom-btn:hover{
	background: #EE0000;
}
#contacts .footer p{
    display: inline-block;
    padding: 0px;
    text-indent: 20px;
    border-bottom: 1px solid #000;
    position: relative;
    
}
#contacts .footer p:hover {
    cursor: pointer;
}
#contacts .footer p a:hover {
    color: #000;
}
#contacts .footer p:first-child {
    margin-right: 15px;
    margin-top: 60px;
}
#contacts .footer p:first-child:after {
    position: absolute;
    width: 1px;
    height: 30px;
    content: "";
    background: #000;
    top: -1px;
    right: -10px
}
#contacts .footer p:nth-of-type(1):before {
    position: absolute;
    content: "";
    width: 15px;
    height: 15px;
    background: url(../img/icon/inf.jpg) no-repeat;
    bottom: 2px;
    left: 0px;
}
#contacts .footer p:nth-of-type(2) {
    text-indent: 0px
}
#myModal a {
    display: block;
    padding: 5px 0px;
}
#modal-container{
   background: rgba(198,198,198, .8);
	display: none;
}
#modal-container, #agreement{
    position: fixed;
    top: 0px;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 99999;
    -webkit-transition: opacity 400ms ease-in;
    -moz-transition: opacity 400ms ease-in;
    transition: opacity 400ms ease-in;
    display: none; 
}
#contact-form{
    width: 400px;
    height:440px;
    z-index:1;
    position: relative;
    margin: 0 auto;
    padding: 5px 0px 13px 0px;
    border-radius: 22px;
    background: #999;
    background: url('../img/bg-modal.png')no-repeat;
    -webkit-background-size: 100% 100%;
    background-size: 100%;
    box-shadow: inset 0px 0px 0px 5px #1FB32C;
    border: 5px solid #d1e9c3;
 }
#contact-form input:focus{
	border:2px solid rgba(1,15,44,.8);
}
#contact-form input{
	text-transform: uppercase;
	width:80%;
	font-size: 20px;
	background: #eee;
	font-family: "Open Sans";
	height:40px;
	color: rgba(2,31,77,1);
	margin: 0 auto;
	padding-left: 20px;
	-webkit-box-shadow: 1px 0px 2px 0 rgba(198,198,198,.8);
	border:1px solid rgba(198,198,198,.8);
    border-radius: 0px;
}    
#contact-form h3{
	text-align: center;
	display: block;
	margin: 0 auto 10px auto;
	color: #fff;
	font-size: 24px;
	text-transform: uppercase;
    background: url(../img/bg-head-modal.png) no-repeat center;
    background-size: 100%;
    padding: 65px 0px 20px;
    position: relative;
}
#contact-form h3:before {
    position: absolute;
    content: "";
    width: 50px;
    height: 50px;
    background: url(../img/icon/modal-icon.png) no-repeat;
    top: 10px;
    left: 170px;;
}
#contact-form .close{
    color: #eee;
    opacity:.5;
    position: absolute;
    right:12px;
    text-align: center;
    top: 10px;
    text-decoration: none;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    font-size: 30px;
    z-index: 1;
}
#contact-form .close:hover{
	opacity:1;
	-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=4)";
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
}
#modal-btn{
	width:80%;
	display: block;
	margin: 155px auto 0 auto;
	font-size: 26px;
	background: #EE2C2C;
	border:1px solid #EE2C2C;
	-webkit-transition: all .4s ease-in-out;
	-o-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
    border-radius: 0px;
    padding: 3px 0px;
}
#modal-btn:hover{
	border:1px solid rgba(246,0,20,1);
	background: rgba(246,0,20,1);
}
form label {
    position: relative;
    margin-top: 5px;
    width: 100%;
    padding-left: 30px;
/*    text-align: center;*/
}
form input[type="checkbox"] {
    width: 1px  !important;
    height: 1px !important;
    position: relative;
    top: 1px;
    left: 7px;
    z-index: -1;
}
form label .chekc-text {
    margin-top: 0px;
    padding-top: 0px;
    display: inline-block;
    position: relative;
    top: -2px;
    font-size: 10px;
}
.chekc-text {
    top: 5px;
    width: 90%;
/*    float: right;*/
}
form label .checked-style {
    width: 15px;
    display: inline-block;
    height: 15px;
    background: #ffffff;
    margin-right: 8px;
    border-radius: 3px;
    padding: 0px;
    margin-top: 2px;
    border: 1px solid;
    
/*    float: left;*/
}
form input[type=checkbox]:checked ~ .checked-style {
    background: url(../img/check.png) no-repeat;
}
#agreement #agree-text {
    width: 400px;
    margin: 100px auto 0;
    z-index: 2;
    background: #fff;
    padding: 10px 0px;
}
#agreement  .text-agree {
    height: 210px;
    width: 100%;
    overflow-y: scroll;
    margin: 20px auto 10px;
    text-align: justify;
    padding: 10px;
    border: 1px solid #000;
}
#agreement  .text-agree h4 {
    font-size: 14px;
}
#agreement  .text-agree ul {
    padding-left: 10px;
}
#agreement  button{
    display: inline-block;
    font-size: 20px;
    padding: 5px 20px;
    margin: 10px;
}
#agreement button#agree {
    background: #77ff5e;
    border: 0px;
}
#agreement button#not-agree {
    background: #bababa;
    border: 0px;
}
#thx.callback .modal-dialog {
    width: 260px;
    border: none;
    margin: 50px auto 0;
}
#thx.callback .modal-body {
    background: #1FB32C;
}
#thx.callback .modal-dialog h5 {
    padding: 0px;
    color: #fff;
    font-size: 18px;
}
#thx.callback .modal-dialog button {
    position: absolute;
    top: 0px;
    right: 5px;
}
.modal .close {
    color: #000000;
    text-shadow: none;
    filter: none;
    font-size: 28px;
    font-weight: normal;
    opacity: 1;
}

#scroll-to span{
	width:55px;
	height:54px;
	font-size: 45px;
	padding: 0 0 0 10px;
	border:3px solid #1FB32C;
	border-radius:100%;
	color: rgba(38,30,83,.5);
}
#scroll-to{
	cursor: pointer;
	position: fixed;
	bottom:15%;
	right:35px;
	z-index:999;
/*	display: none;*/
}
#scroll-to:hover span{
	background: #1FB32C;
	color: rgba(38,30,83,1);
	border:3px solid #0dd41e;
}


#slider{
	background: #F1F1F1;
	padding: 30px 0;
}

#slider .item img {
    height: 300px;
    width: 100%;
}
#carousel-slider1 {
    margin-top: 60px;
}
#carousel-slider1 .item>div {
    display: flex;
    justify-content: space-between;
}
#carousel-slider1 .item img {
    height: 400px;
    width: 49%;
    border: 2px solid #1FB32C
}
#carousel-slider1 .carousel-control {
    top: 45%
}
#slider-itself{
	margin: 50px auto 0 auto;
}
#slider a{
	top:45%;
	font-size: 30px;
}
.carousel-control.right, .carousel-control.left {
  background-image: none;
  opacity: 1;
    width: 5%;
}
#slider iframe {
    width: 100%;
    margin: 0px auto;
    border: 1px solid #ccc;
    height: 300px;
    border-radius: 0;
}

#otzyv{
	background: #fff;
	padding: 30px 0;
}
#otzyv .otstup {
    margin-top: 0;
}
#otzyv .carousel-inner {
    padding: 0px 0px;
}
#otzyv .otz-block {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 35px;
    border: 4px solid #1FB32C;
    height: 300px;
}
#otzyv .item img {
/*    height: 300px;*/
    width: 30%;
    margin-right: 20px;
}
#slider-otzyv{
	margin: 40px auto 0 auto;
}
#slider-otzyv .row>p {
    margin-bottom: 15px;
    font-size: 15px;
    text-align: center;
}
#otzyv .text-otzyv {
    font-size: 16px;
}
#otzyv .text-otzyv span {
    display: block;
    margin: 5px 0;
}
#otzyv .text-otzyv span:nth-of-type(1) {
    font-weight: bold;
    color: #00710a;
    font-size: 20px;
}
#otzyv .text-otzyv span:nth-of-type(2) {
    font-weight: bold;
    font-size: 18px;
}
#otzyv a{
	top:45%;
	font-size: 30px;
}
#otzyv .carousel-control.right {
    right: 0px;
}
.carousel-control.right, .carousel-control.left {
  background-image: none;
  opacity: 1;
    width: 5%;
}

#calc img.bottom-line{
	z-index:9;
	position: relative;
	top:0px;
    width: 60%;
}
#calc .container {
    padding: 15px 0;
}
.calc-block {
    border: 3px solid #d6d6d6; 
    padding: 15px 10px 0;
}
.calc-block h4 {
    font-size: 18px;
    color: #2c3e50;
    margin-left: 10px;
    position: relative;
    font-weight: bold;
}
.calc-block h4:before {
    position: absolute;
    content: "1";
    padding: 5px 10px;
    border-radius: 50%;
    background: #2c3e50;
    color: #fff;
    left: -40px;
    top: -5px;
}
.calc-block .city-calc h4 {
    display: inline-block;
    margin-right: 50px;
    margin-left: 20px;
} 
.calc-block .city-calc h4:before {
    content: "2";
}
.calc-block .city-calc h5 {
    font-size: 18px;
    color: #2c3e50;
    position: relative;
    padding: 0px 10px;
    background: #fff;
    display: inline-block;
    font-weight: bold;
}
.calc-block .city-calc h5:after {
/*
    position: absolute;
    content: "";
    height: 2px;
    width: 200px;
    background: #2c3e50;
    top: 11px;
    left: 100px;
*/
}
.calc-block .city-calc h5:before {
    positi0on: absolute;
    content: "";
    height: 2px;
    width: 20px;
    background: #2c3e50;
    top: 9px;
    left: -20px;
}
.select {
    padding-left: 50px;
}
.select-uslug {
    width: 180px;
    text-align: center;
    padding: 5px 0 0px;
    border: 1px solid #c0c9c9;
    border-radius: 5px;
    margin: 25px 0 10px;
    box-shadow: 0px 0px 7px 1px #00ff16;
}
.select-uslug img {
    width: 100%;
    height: 110px;
}
.select-uslug p {
    margin-top: 5px;
}
.select .checkbox {
  vertical-align: top;
  margin: 0 3px 0 0;
  width: 17px;
  height: 17px;
}
.select .checkbox + label {
  cursor: pointer;
    display: block;
}
.select .checkbox:not(checked) {
  position: absolute;
  opacity: 0;
}
.select .checkbox:not(checked) + label {
  position: relative;
  padding: 0 0 0 25px;
}
.select .checkbox:not(checked) + label:before {
  content: '';
  position: absolute;
  top: 1px;
  left: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
    border: 2px solid #1FB32C;
}
.select .checkbox:checked + label:before {
  background: url(/img/icon/check.png) no-repeat center;
}
.select .but {
    background: #fff;
    color: #1FB32C;
    box-shadow: none;
    border: 2px solid #37843e;
    font-weight: bold;
    font-size: 24px;
    margin-top: 5px;
}
.city-calc p{
    color: #207928;
    font-weight: bold;
    margin-top: 10px;
}
#map1 {
    width: 100% !important;
    height: 300px !important;
    overflow: hidden !important;
}
.girl-ban {
    padding-left: 40px;
}
.girl-ban img {
    display: block;
    margin: 75px auto 0;
}
.but-block {
    text-align: center;
    background: rgba(31, 179, 44, 0.36);
    padding: 35px 5px 10px 5px;
    margin-top: -16px;
}
.but-block .but {
    font-weight: bold;
    padding: 10px 35px;
}
#but-zvon {
    background: rgba(246,0,20,1);
    color: #fff;
    border: none;
}
#but-zvon:hover {
    background: rgb(255, 54, 70);
}
.but-block p {
    font-weight: bold;
    margin-top: 5px;
    font-size: 14px;
}
.but-block p span {
    text-transform: uppercase;
}
.range {
    margin-top: 25px;
    background: url(../img/range-bg.png) no-repeat center;
    background-size: contain;
}
.range img {
    position: relative;
/*    transition: all linear 3s;*/
    left: 5%;
    width: 90px;
    top: -27px;
}
.time {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    padding: 0px;
}
.time p {
    margin: 0;
}
.bot-but-calc {
    
}
.bot-but-calc div {
    text-align: center;
    padding: 15px 0;
    background: #f9cd6d;
    margin-bottom: 10px;
}
.bot-but-calc a{
    display: inline-block;
    margin: 5px auto;
    background: rgba(246,0,20,1);
    color: #fff;
    border: none;
    padding: 8px 15px;
    font-weight: bold;
}

#popup .modal-dialog  {
   width: 520px;
    margin-top: 60px
}
#popup .modal-body {
    padding: 40px 30px
}
#popup h3 {
    font-size: 24px;
    display: flex;
    align-items: center;
    margin: 0 0 20px;
    text-transform: uppercase;
    justify-content: center;
    font-weight: 700
}
#popup h3 img {
    margin-right: 10px;
    width: 60px
}
#popup h3+p>a {
    font-size: 32px;
    color: #e30002;
    border-bottom: 1px solid #feff29;
    padding-bottom: 10px;
    font-weight: 600
}
#popup .head-p {
    font-size: 30px;
    margin: 25px 0 15px
}
.opros {
    width: 190px;
    margin: 10px;
    background: #fff;
    color: #fff;
    border: 1px solid #fff;
    background: #1FB32C;
    text-transform: uppercase;
    padding: 8px 0
}
.opros:hover {
    background: #e30002;
    color: #fff;
}
#popup .but-opros {
    background: rgba(246,0,20,1);
    border: none;
    height: 50px;
    width: 300px !important;
    color: #fff;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 10px
}
.opros-block, .opros-form {
    padding: 0px 0 0;
    display: none;
}
#popup .opros-block>p {
    text-align: left;
    margin-bottom: 25px;
    font-size: 30px;
}
.get-opros {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#popup .label-control {
    width: 0;
    height: 0;
    opacity: 0;
    margin: 0;
    display: none
}
.label-control+label {
    position: relative;
    font-size: 14px;
    font-weight: normal;
    padding-left: 35px;
    width: auto;
    margin-bottom: 10px;
    text-align: left;
    cursor: pointer;
    width: 50%
}
.label-control+label a {
    text-decoration: underline
}
.label-control+label:before {
    position: absolute;
    content: '';
    width: 22px;
    height: 22px;
    left: 0px;
    top: 5px;
    cursor: pointer;
    border: 1px solid #e30002
}
.label-control:checked+label:before {
    background: #fff url(../img/icon/check.png) center no-repeat;;
}
/* ---radio-custom-- */
.radio-opros {
    vertical-align: top;
    width: 17px;
    height: 17px;
    margin: 0 3px 0 0;
}

.radio-opros + label {
    cursor: pointer;
    margin-bottom: 25px
}

.radio-opros:not(checked) {
    position: absolute;
    opacity: 0;
}

.radio-opros + label {
    position: relative;
    padding-left: 70px;
    display: flex;
    align-items: center;
    color: #565555;
    font-size: 20px;
    font-weight: normal;
    padding-top: 5px
}

.radio-opros:not(checked) + label:before {
    content: '';
    position: absolute;
    top: 0;
    left: 5px;
    width: 38px;
    height: 38px;
    background: #FFF;
    box-shadow: 0px 0px 5px 0px #afafaf
}

.radio-opros:checked + label:before {
    background: #ff0000;
    box-shadow: 0px 0px 5px 0px #afafaf, inset 0px 0px 0px 10px #fff
}
.set-date {
    padding: 10px;
    width: 300px;
    margin-bottom: 20px;
    font-size: 17px;
    border: 1px solid #1FB32C
}
#popup .close {
    top: 0px;
    position: absolute;
    right: 5px
}

.extr {
    width: auto;
    position: fixed;
    top: 35%;
    right: 30px;
    background: #62e81c;
    text-align: center;
    padding: 20px;
    border-radius: 5px;
    z-index: 999;
    font-weight: bold;
    font-size: 16px;
}
.extr>img {
    position: absolute;
    z-index: 9;
    top: -110px;
    left: -10px;
}
.extr .but, #ext .but {
    margin: 0 auto;
    width: 220px;
    border-radius: 10px;
    background: #f8c243;
    height: 50px;
    text-decoration: none;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
}
#ext .but {
    font-weight: bold;
    text-transform: uppercase;
}
#ext input{
	text-transform: uppercase;
	width:300px;
	font-size: 20px;
	background: #fff;
	font-family: "Open Sans";
	height:40px;
	color: rgba(2,31,77,1);
	margin: 0 auto;
	padding-left: 20px;
	-webkit-box-shadow: 1px 0px 2px 0 rgba(198,198,198,.8);
	border:1px solid rgba(198,198,198,.8);
    border-radius: 0px;
    margin: 20px 0
}  
.extr-close {
    position: absolute;
    top: -40px;
    cursor: pointer;
    right: -20px;
    z-index: 99;
}
.extr p {
    text-transform: uppercase;
    font-size: 20px;
}
#ext p {
    font-weight: bold;
    margin: 10px 0 0;
    font-size: 18px;
}


.navigation {
    margin-bottom: 15px;
}
.navigation__row p, .navigation__row a {
    display: block;
    margin-bottom: 0;
}
.navigation__descr {
    margin-bottom: 5px;
}
.navigation__row {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}
.navigation__row span {
    transform: translateY(-5%);
    display: block;
    margin-left: 10px;
    margin-right: 10px;
}

.calculator-footer {
    margin-top: 70px
}

.calculator-footer>div,
.contact-main_text-mod>div h4 {
    width: 40%
}

.calculator-footer .calculator-footer_map {
    width: 48%
}

.calculator-footer .input {
    text-align: left;
    font-size: 18px;
    font-weight: 400;
    height: 55px;
    border: 3px solid var(--bg);
    background: 0 0
}

.calculator-footer textarea.input {
    height: 220px
}

footer {
    background: #202020;
    color: #fff;
    font-size: 18px;
    margin-top:20px;
    padding-top:20px;
}

footer a {
    font-weight: 700;
    margin-bottom: 20px;
    color: #fff
}
.sectitle {
    font-size: 24px;
    font-weight: 700
}
.botom_nav>div:not(:last-child) {
    margin-right: 30px
}
.botom_nav {
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 40px
}
.botom_nav_item:not(:last-child) {
    margin-bottom: 50px;
}

.botom_nav a {
    display: block;
    font-size: 20px
}

.flex-b,
.get-opros {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 768px){
.botom_nav {
    align-items: flex-start;
    margin-top: 30px;
    flex-wrap: wrap;
}
.botom_nav>div{
    width: 100%;
}
}


.error h4{
    text-transform: uppercase
}
.error{
    text-align: center
}
.error {
    width: 100%;
    height: 100vh;
    background: url(../img/not-found.jpg) center/cover;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    color: #000
}
.error>div {
    margin-bottom: 9%
}

.error h4 {
    font-size: 30px;
    font-weight: 700;
    margin: 0 0 20px
}

.error p{
    font-size: 20px;
    font-weight: 700
}

.error .but {
    margin: 0 auto;
    background: #4ddd22;
    color: #fff
}
.my-404 {
    margin: 0;
}

.rewiev-bl {
    flex-wrap: wrap;
    font-size: 14px;
    align-items: flex-start
}

.rewiev-it {
    width: 48.5%;
    margin: 30px 0;
    padding-bottom: 30px;
    border-bottom: 1px solid #b2b2b2
}

.rewiev_row-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px
}

.rewiev_head-us span {
    font-weight: 400
}

.rate {
    text-align: right;
    flex-shrink: 0
}

.star {
    display: block;
    background: url(../img/icon/star.svg);
    height: 14px;
    margin-bottom: 15px
}

.rewiev-info,
.rewiev_row,
.rewiev_row-asn {
    margin-bottom: 10px
}

.rate .date {
    font-size: 16px;
    padding-right: 5px;
    display: block
}

.rewiev-info {
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.rewiev-info p {
    width: 28%;
    display: flex;
    justify-content: space-between;
    margin-right: 1%;
    flex-wrap: wrap;
    margin-bottom: 30px
}

.rewiev-info p span {
    font-weight: 700
}

.rewiev-info .name {
    max-width: 90%;
    font-size: 14px;
    height: 50px
}

.rewiev_progr {
    display: block;
    width: 100%;
    height: 5px;
    margin-top: 5px;
    border-radius: 5px
}

.rewiev_bot {
    border-radius: 30px;
    padding: 24px;
    background-color: #ECECEC;
}

.rewiev_img {
    max-width: 100%;
    width: 100%;
    border-radius: 30px;
}
