/*@font-face{
font-family: Font;
src: url(../fonts/font.woff), url(../fonts/font.ttf), url(../fonts/font.woff2);
}*/

body {
padding: 0;
margin: 0;
width: 100%;
min-width: 1170px;
}

html {
font-family: 'Exo 2', sans-serif;
font-size: 100%;
font-weight: normal;
line-height: 1.4;
	color: #222;
}

ul, li {
margin: 0;
padding: 0;
    list-style-type: none;
}

img {
max-width: 100%;
}

p {
margin: 0 0 5px;
}

h1{
font-size: 150%;
text-align: left;
margin: 5px 0 15px;
  font-weight: normal;
	  	line-height: 1;
}
.home h1 {

}
h2, h3 {

}
h3 {
font-size: 105%;
  margin: 10px 0 5px;
  font-weight: bold;
}
.moduletable h3, .partners_title {
font-size: 150%;
  margin: 5px 0 25px;
  font-weight: normal;
        text-align: center;
}
h4 {
  margin: 10px 0 5px;
  font-weight: bold;
  font-size: 110%;
}
a {
    text-decoration: underline;
    color: #000;
}
a:hover {
    text-decoration: none;
	color: #912044;
}

::selection{background:#f7f7f7}

* {
box-sizing: border-box;
}

.wrap {
width: 1170px;
  margin: 0 auto;
}

.home .header {
position: relative;
  background: #fff;
}

.top_block {
  clear: both;
}

.home .logo {
  float: left;
margin: 15px 10px 5px;
}
.default .logo {
  float: left;
margin: 15px 10px 5px;
}
.logo img {
	    display: block;
    margin: 0 auto 5px;
    width: 50px;
}
.logo a {
text-decoration: none;
  color: #000;
  font-size: 200%;
  line-height: 1;
}

.top_info {
float: right;
  padding: 15px 5px 0;
  text-align: right;
  line-height: 1;
}
.top_phone {
font-size: 125%;
  text-align: right;
  display: inline-block;
margin: 0 0 0 10px;
}
.top_phone a {
  text-decoration: none;
  color: #000;
}
.top_phone a:hover {
border-bottom: 1px solid #000;
}
.top_address {
margin: 15px 0 0;
}

.top_email {
text-align: right;
margin: 0 10px 0 0;
  font-size: 110%;
  display: inline-block;
}
.top_email a {
  text-decoration: none;
  color: #000;
}
.top_email a:hover {
border-bottom: 1px solid #000;
}

.home .top_menu {
clear: right;
  margin: 0;
  float: right;
  background: #fff;
  position: relative;
  top: 30px;
  height: 75px;
  z-index: 11;
  border-top: 1px solid #e8e8e8;
}
.default .top_menu {
padding: 0;
  clear: right;
  margin: 0;
  float: right;
  background: #fff;
  position: relative;
  top: 30px;
  height: 55px;
  z-index: 11;
  border-top: 1px solid #e8e8e8;
}
.home .top_menu ul {
padding: 25px;
}
.default .top_menu ul {
  padding: 15px;
}
.top_menu li {
display: inline-block;
padding: 0 7.5px;
  position: relative;
}
.top_menu li:last-child:after {
display: none;
}
.top_menu li:after {
content: '|';
  display: inline-block;
padding: 0 0 0 15px;
  line-height: 1;
  color: #912044;
}
.top_menu li.active a {
color: #888;
}
.top_menu li a {
  color: #000;
  text-decoration: none;
  font-size: 110%;
}
.default .top_menu li a {
  font-size: 105%;
}
.top_menu li a:hover {
border-bottom: 1px solid #912044;
  text-decoration: none;
color: #912044;
}

.before {
clear: both;
  background: #f2f2f2;
}
.before img{
display: block;
}
.before p{
margin: 0;
}

.video {
position: relative;
overflow: hidden;
clear: both;
}
.video:before {
content: '';
  background: rgba(51,51,51,0.5);
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 9;
}
.video video {
width: 105%;
  display: block;
}
.video span {
  position: absolute;
  color: #fff;
  z-index: 10;
  left: 25%;
  top: 30%;
  width: 50%;
  font-size: 250%;
  line-height: 1;
  text-align: center;
}
.video span a {
  background: #fff;
  text-decoration: none;
  margin: 50px 0 0;
  display: inline-block;
  padding: 10px 25px 15px;
  line-height: 1;
  font-size: 50%;
}
.video span a:hover {
outline: 1px solid #222;
  outline-offset: -2.5px;
}

.for_price {
border-bottom: 1px solid #e8e8e8;
    padding: 25px 15px 15px 35px;
  position: relative;
}
.for_price:before {
  content: '';
  background: #e8e8e8;
  width: 50%;
  height: 1px;
  display: inline-block;
  position: absolute;
  right: 0;
}
.for_price .moduletable {
  padding: 15px 0 0;
  font-weight: bold;
  font-size: 95%;
}
.for_price .moduletable  p {
  margin: 0;
}

.overlay.show {
position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.75);
  z-index: 100;
    transition: bottom 500ms;
}

@-webkit-keyframes blink {
	0% {
		background: #912044;
		background: -moz-linear-gradient(left, #912044 0%, #6D2D42 100%);
		background: -webkit-linear-gradient(left, #912044 0%, #6D2D42 100%);
		background: linear-gradient(to right, #912044 0%, #6D2D42 100%);
	}
	50% {
		background: #6D2D42;
		background: -moz-linear-gradient(left, #6D2D42 0%, #912044 100%);
		background: -webkit-linear-gradient(left, #6D2D42 0%, #912044 100%);
		background: linear-gradient(to right, #6D2D42 0%, #912044 100%);
	}
	100% {
		background: #912044;
		background: -moz-linear-gradient(left, #912044 0%, #6D2D42 100%);
		background: -webkit-linear-gradient(left, #912044 0%, #6D2D42 100%);
		background: linear-gradient(to right, #912044 0%, #6D2D42 100%);
	}
}
@keyframes blink {
	0% {
		background: #912044;
		background: -moz-linear-gradient(left, #912044 0%, #6D2D42 100%);
		background: -webkit-linear-gradient(left, #912044 0%, #6D2D42 100%);
		background: linear-gradient(to right, #912044 0%, #6D2D42 100%);
	}
	50% {
		background: #6D2D42;
		background: -moz-linear-gradient(left, #6D2D42 0%, #912044 100%);
		background: -webkit-linear-gradient(left, #6D2D42 0%, #912044 100%);
		background: linear-gradient(to right, #6D2D42 0%, #912044 100%);
	}
	100% {
		background: #912044;
		background: -moz-linear-gradient(left, #912044 0%, #6D2D42 100%);
		background: -webkit-linear-gradient(left, #912044 0%, #6D2D42 100%);
		background: linear-gradient(to right, #912044 0%, #6D2D42 100%);
	}
}

.order_button {
float: right;
padding: 10px 15px 35px 0;
}
.order_button span {
background: #912044;
  display: block;
  color: #fff;
  line-height: 1;
  padding: 15px 25px 20px;
  font-size: 125%;
  webkit-animation: blink 2s linear 2s infinite;
  animation: blink 2s linear 2s infinite;
}
.order_button span:hover {
cursor: pointer;
outline: 1px solid #fff;
  outline-offset: -2.5px;
}
.order {
background: #fff;
  padding: 50px 0;
  position: fixed;
  z-index: 999;
  bottom: -1000%;
  transition: bottom 500ms;
  outline: 10px solid #e8e8e8;
}
.order.move {
  position: fixed;
  bottom: 0;
  transition: bottom 250ms;
}
.order form {
width: 85%;
  margin: 0 auto;
overflow: hidden;
}
.fast_close {
  position: absolute;
  right: 15px;
  top: 15px;
  font-size: 150%;
  font-family: Tahoma;
  line-height: 1;
}
.fast_close:hover {
cursor: pointer;
color: #912044;
}

.order form img {
	display: block;
    margin: 0 auto 50px;
}
.control_group  {
width: 45%;
  float: left;
  margin: 0 2.5% 35px;
  display: block;
}
.control_group.width{
  width: 95%;
  float: none;
  clear: both;
  margin: 0 auto 35px;
}
.control_label {
color: #000;
  padding: 0 0 7px;
}
.control_group.end  {
  width: 97.5%;
  margin: 0;
  text-align: right;
}
input, select, textarea{
  padding: 10px;
  background: none;
  border: 1px solid #000;
  color: #000;
	font-size: 90%;
	width: 100%;
}
textarea {
resize: vertical;
  height: 85px;
}
select > option {
  color: #000;
}
button {
	border: 0;
background: #912044;
  display: inline-block;
  color: #fff;
  line-height: 1;
  padding: 10px 15px;
  font-size: 120%;
  webkit-animation: blink 2s linear 2s infinite;
  animation: blink 2s linear 2s infinite;
}
button:hover {
cursor: pointer;
outline: 1px solid #fff;
  outline-offset: -2.5px;
}
.done {
  text-align: center;
  color: #fff;
  font-size: 150%;
  padding: 50px 0;
}
.sf2Shade.sf2Message {
display: none!important;
}
.sf2-body p {
text-align: center;
  font-size: 250%;
  margin: 0 0 25px;
  font-family: Font;
  clear: both;
  color: #000;
}

::-webkit-input-placeholder {color:#000;}
::-moz-placeholder          {color:#000;}
:-ms-input-placeholder      {color:#000;}


.home .page {
padding: 25px 15px;
}
.home .item-page, .default .blog{
border-left: 1px solid #e8e8e8;
  padding: 5px 35px;
}
.default .page{
    overflow: hidden;
  padding: 25px 0;
}
.default .item-page, .default .blog{
border-left: 1px solid #e8e8e8;
  padding: 5px 35px;
}

.page.showright, .page.showleft {
width: calc(100% - 300px);
  float: left;
}
.left {
  float: left;
  width: 300px;
  padding: 25px 30px;
  overflow: hidden;
  top: -50px;
  position: relative;
  background: #fff;
}
.left p {
font-weight: bold;
}
.home .left {
top: 0;
}
.right {
  float: left;
  width: calc(30% - 15px);
  margin: 0 5px 0 10px;
  padding: 15px 20px;
  overflow: hidden;
}

.left .moduletable{
  padding: 0 0 25px;
}

.left ul {
margin: 0 0 0 5px;
  padding: 0 0 0 10px;
}
.left ul li {
  list-style-type: square;
}
.left ul li a {
margin: 0 0 15px;
  border-bottom: 1px solid #e8e8e8;
  padding: 10px 15px;
  text-decoration: none;
  display: block;
}
.left ul li.active {
  list-style-type: none;
}
.left ul li.active a {
  background: #f7f7f7!important;
  border-bottom: 1px solid transparent;
  cursor: default;
}
.left ul li a:hover {
background: #f2f2f2;
}

.right .moduletable{
  padding: 0 0 25px;
}
.right .moduletable:last-child {
  padding: 0;
}
.right_title {
font-weight: bold;
  font-size: 90%;
}

.map {
padding: 5px 0;
}
.map iframe {
width: 100%;
  height: 300px;
  border: 0;
}

div[itemprop="articleBody"] {
font-size: 95%;
}

div[itemprop="articleBody"] video{
width: 100%;
  margin: 15px 0;
}

p.bold {
font-weight: bold;
margin: 10px 0 5px;
}
p.center {
text-align: center;
margin: 10px 0;
}
p.left {
text-align: left;
margin: 10px 0;
}

p.one_img {
text-align: left;
margin: 10px 0;
}
p.two_img {
text-align: center;
margin: 10px 0;
}
p.two_img img {
width: 48%;
  display: inline-block;
  margin: 0 1%;
}
p.one_img img {
width: 70%;
  display: inline-block;
  margin: 0 1%;
}

.steps {
  overflow: hidden;
}
.step {
display: block;
  width: 25%;
  float: left;
  text-align: center;
  height: 220px;
  position: relative;
  margin: 25px 0;
}
.step.odd:after {
position: absolute;
  content: "";
  top: 0;
  width: 231px;
  height: 23px;
  background: url(../images/arrow-top.png) no-repeat center;
  left: 170px;
}
.step.odd.five:before {
position: absolute;
  content: "";
  width: 231px;
  height: 23px;
  background: url(../images/arrow-bottom.png) no-repeat center;
  top: 74px;
  left: -115px;
}
.step.even:after {
position: absolute;
  content: "";
  width: 231px;
  height: 23px;
  background: url(../images/arrow-bottom.png) no-repeat center;
  top: 74px;
  left: 170px;
}
.number {
  display: inline-block;
  border: 1px solid #828282;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  font-size: 50px;
  text-align: center;
  line-height: 100px;
    font-family: sans-serif;
}
.step:hover .number {
background: #f7f7f7;
}
.step .text {
display: block;
  padding: 10px 15px;
}
.text span {
font-size: 125%;
}
.text a {
text-decoration: none;
color: #00a0e3;
}
.text a:hover {
border-bottom: 1px solid #000;
}

.uslugi {
overflow: hidden;
}
.uslugi ul {
padding: 5px 0 25px;
  overflow: hidden;
}
.uslugi li.u {
width: 47%;
  float: left;
  padding: 15px;
  margin: 0 1.5% 35px;
  position: relative;
  background: #fff;
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
  -pie-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
}
.uslugi li a {
text-decoration: none;
}
.uslugi li img {
  display: block;
}
.uslugi li a span {
display: block;
  position: absolute;
  bottom: 15px;
  background: rgba(255, 255, 255, 0.8);
  font-size: 125%;
  text-align: center;
  padding: 10px 0;
  width: 100%;
  left: 0;
}
.uslugi li.u:hover {
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
  -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
  -pie-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
}

.right .moduletable li.u {
position: relative;
  margin: 0 0 15px;
  border: 1px solid #ccc;
}
.right .moduletable li.u a {
  text-decoration: none;
}
.right .moduletable li.u img {
  display: block;
}
.right .moduletable li.u a span {
  display: block;
  position: absolute;
  bottom: 0;
  background: rgba(255, 255, 255, 0.8);
  font-size: 100%;
  text-align: center;
  padding: 10px 0;
  width: 100%;
  left: 0;
}
.right .moduletable li.u:hover span {
  background: rgba(255, 255, 255, 1);
}
 
table.tech {
width: 70%;
  border-collapse: collapse;
    margin: 10px 0 15px;
}
table.tech td {
border: 1px solid #ddd;
  padding: 5px 15px;
}

.blog {
overflow: hidden;
}
.span6 .page-headers a {
text-decoration: none;
  display: block;
  padding: 0 14px;
}

.uslugi_page .span6 {
width: 48.5%;
  float: left;
  padding: 15px;
  position: relative;
  background: #fff;
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
  -pie-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
}
.uslugi_page .span6:first-child {
  margin: 0 1.5% 35px 0;
}
.uslugi_page .span6:last-child {
  margin: 0 0 35px 1.5% ;
}
.items-row_fix.uslugi_page .items-row .span6:last-child {
  margin: 0 0 35px 0 ;
}
.uslugi_page .span6 .page-headers {
  display: block;
  position: absolute;
  bottom: 20px;
  background: rgba(255, 255, 255, 0.8);
  font-size: 110%;
  text-align: center;
  padding: 10px 0;
  width: 100%;
  left: 0;
}
.uslugi_page .span6:hover {
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
  -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
  -pie-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
}


.moduletable.navi {
padding: 0 0 25px 5px;
  clear: both;
  float: left;
  width: 50%;
  font-size: 95%;
}
.moduletable.navi li {
    display: inline-block;
}
.moduletable.navi li a, .moduletable.navi li.active span {
color: #000;
  font-size: 95%;
}
.moduletable.navi li a:hover{
  text-decoration: none;
}
.divider {
  display: inline-block;
}

.pagination {
    clear: both;
    text-align: center;
    font-size: 110%;
}
.pagination li{
    display: inline-block;
    padding: 0 1px;
}
.pagination li a{
    padding: 3px;
}
.pagination li a:hover{

}
.pagination li.active a {
    text-decoration: none;
	cursor: default;
}

.clients {
clear: both;
padding: 5px 5px 25px;
}

p.moduletable {
font-weight: bold;
  text-align: center;
  margin: 0 0 15px;
}

/*
.item-page {
position: relative;
}
.page-header {
position: absolute;
  top: 10px;
  left: 20px;
}
.page-header h1 {
color: #fff;
}
*/

.pc {
	    clear: both;
    text-align: center;
    line-height: 1.1;
    padding: 5px 5px 25px;
    font-size: 90%;
}

.app {
	position: fixed;
    bottom: 5px;
    width: 95%;
    left: 2.5%;
    background: #f7f7f7;
    border: 1px solid #d7d7d7;
    padding: 10px 15px;
	z-index: 101;
}
#setCookie_close {
	    display: inline-block;
    float: right;
    cursor: pointer;
    padding: 2.5px;
    line-height: 1;
	font-weight: bold;
}
@media (max-width: 768px) {
	.app {
		    bottom: 100px;
	}
}
@media (max-width: 480px) {
	.app {
		    bottom: 160px;
	}
}

.control_group.agree div {
    display: inline-block;
}
.control_group.agree {
	font-size: 90%;
}

p.for_video {
max-height: 400px;
  overflow: hidden;
  margin: 0 0 10px;
}
video.video {
  width: 100%;
  display: block;
  margin: 0 0 15px;
}

.footer {
padding: 25px 0 0;
  overflow: hidden;
  clear: both;
  background: #232323;
  color: #fff;
  border-top: 10px solid #646464;
}
.footer_title{
  color: #fff;
  font-size: 110%;
  margin: 0 0 10px;
}
.footer a {
color: #fff;
}
.footer_menu {
float: left;
  padding: 0 25px 25px;
    width: 25%;
}
.footer_menu ul {
font-size: 90%;
padding: 0 0 0 20px;
}
.footer_menu li {
list-style-type: disc;
  padding: 0 0 10px;
  color: #fff;
  line-height: 1;
}
.footer_menu a {
  text-decoration: none;
}
.footer_menu a:hover, .footer_menu li.active a {
border-bottom: 1px solid #fff;
}
.footer_menu.info {
text-align: right;
padding: 50px 25px 0;
}
.footer_menu.info .moduletable {
clear: both;
}
.footer_phone {
font-size: 105%;
  margin: 0 0 10px;
}
.footer_phone span {
display: block;
  font-size: 80%;
}
.footer_email {
font-size: 100%;
  margin: 0;
padding: 10px 0 15px;
}

.copy {
  padding: 0 0 5px;
  clear: both;
background: #000;
    overflow: hidden;
color: #ccc;
  text-align: center;
    font-size: 70%;
}
.copy .wrap {
	  border-top: 1px solid #868686;
	  padding: 10px 0 0;
}
.copy a {
  color: #fff;
}

.up {
  float: right;
  font-size: 150%;
  line-height: 1;
  padding: 0 50px 0 0;
  cursor: pointer;
}


.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }
  .owl-carousel .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-lazy[src^=""], .owl-carousel .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel  img.owl-lazy {
    transform-style: preserve-3d; }
/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

 .owl-nav {
  position: absolute;
  bottom: 25px;
  width: 100%;
  z-index: 99;
 }
 .owl-nav button {
 opacity: 0.9;
 -webkit-transition: 0.5s;
 }
  .owl-nav button:hover {
 opacity: 1;
 }
 .owl-prev {
    float: left;
  margin: 0 0 0 25px;
 }
 .owl-next {
   float: right;
  margin: 0 25px 0 0;
}