/*
000d05 - dark
003f19 - mid
001206 - bg-logan
397649 - light
*/

*, *:before, *:after {
  box-sizing: border-box;
}

body {
  font-family: 'Open Sans', sans-serif;/**/
  background: #1d89c6 url(images/bg_cr_darken.jpg) no-repeat center top;
  /*background: #1d89c6 url(images/201512-newyear-bg.jpg) no-repeat center top;*/
  background-size: cover;
  background-attachment: fixed;
}



/*---layout---*/
.outer {
  position:relative;
  width:100%;
  min-width:320px;
  max-width:980px;
  padding: 2em;
  margin:0 auto;
  background:rgba(255,255,255,0.9);
}


.header {
  height:230px;
}
.contacts {
  float:right;
  padding-top:0.5em;
  color: #003f7f;
  text-align:right;
}
    .contacts span.phone {
      font-size:1.8em;
      line-height:1em;
    }
    .contacts span.address,
    .contacts span.email {
    }
	  .mobile-contacts {
      display:none;
      position:absolute;
      width:100%;
      bottom:70px;
      text-align:center;
    }
      .mobile-contacts span.phone a,
       .mobile-contacts span.email a {
        display:inline-block;
        width:50px;
        height:50px;
        font-size:34px;
        font-weight:bold;
        line-height:40px;
        background: #fff;
        border:1px solid #90b0e6;
        border-radius:100%;
      }
      .mobile-contacts span.phone a {
        background: #fff url(images/icon-phone.png) no-repeat center center;
        background-size: 60% 60%;
      }

      .social-icon a {
        display:inline-block;
        width:50px;
        height:50px;
        font-size:34px;
        font-weight:bold;
        line-height:40px;
        background: #fff;
        border:1px solid #fff;
        border-radius:100%;
      }
	.social-icon-vk a {
		background: url("images/social-icons-48x48.png") no-repeat 0 center;
		background-size: cover;
	}
	.social-icon-ok a {
		background: url("images/social-icons-48x48.png") no-repeat -96px center;
		background-size: cover;
	}
	.social-icon-insta a {
		background: url("images/social-icons-48x48.png") no-repeat -48px center;
		background-size: cover;
	}


.header-social-icons-wrap {
	margin:20px 0;
}
.header-social-icons-wrap .social-icon a {
    width: 40px;
    height: 40px;
}
.header-social-icons-wrap .social-icon-ok a {
    background-position: -76px center;
    background-size: cover;
}
.header-social-icons-wrap .social-icon-insta a {
    background-position: -38px center;
    background-size: cover;
}

.header-social-icons-wrap > p {
    width: 150px;
    display: inline-block;
    margin: 0;
    padding: 0;
    font-size: 0.9em;
    line-height: 1em;
}

.content {
  margin:0 0 2em 0;
}

#header-slideshow-wrap {
  margin-top:0px;
}
  .cycle-slide {
    width:100%;
  }
  #header-slideshow-cyclepager {
    position:absolute;
    z-index:101;
    bottom:0;
    width:100%;
    text-align:center;
  }
  #header-slideshow-cyclepager span {
    display:inline-block;
    background:#fff;
    font-size:0px;
    line-height:0px;
    width:40px;
    height:12px;
    margin:10px 5px;
    cursor:pointer;
    transition: all 1s;
  }
  #header-slideshow-cyclepager .cycle-pager-active {
    background:#9cd9ff;
    transition: all 1s;
  }


.nav {
  position:absolute;
  top:170px;
  margin:0;
  width:100%;
  font-family: 'Lobster';
  font-size: 1.4em;
  padding-left:0.5em;
  background: #003f7f;
  background-image: linear-gradient(to top, #003f7f 0%, #005f9f 70%);
  z-index:199;
  opacity:0.95;
}
  .sf-menu {
      display:block;
      margin: 0;
  }
    .sf-menu ul {
    	z-index: 199;
    }
    .sf-menu li {
        background: transparent;
        white-space: normal;
    }
    .sf-menu a {
        color: #fff;
        border:0;
        padding: 0.75em 1em;
    }

.mobile-menu {
  display:none;
}

.menu-toggle {
    display:none;
    color: #fff;
    padding: 0.75em 1em;
}
.mob-menu-button {
  float:left;
  display:block;
  cursor:pointer;
}
    .mob-menu-button span {
        background-attachment: scroll;
        background-clip: border-box;
        background-color: white;
        background-image: none;
        background-origin: padding-box;
        background-position: 0 0;
        background-repeat: repeat;
        background-size: auto auto;
        display: block;
        height: 3px;
        margin-top: 6px;
        margin-right:10px;
        width: 30px;
    }


.footer {
  font-size:0.8em;
  color:#fff;
  background: #003f7f;
  background: rgba(0,63,127,0.95);
}
.footer a {
  text-decoration:underline;
  color:#fff;
}



.cols-row {
  display:table;
  width:100%;
}
.cols-col {
  display:table-cell;
  vertical-align:top;
  padding:0 1em;
}
.col-50 {
  width:50%;
}
.col-40 {
  width:40%;
}
.col-30 {
  width:30%;
}
.col-25 {
  width:25%;
}
.col-20 {
  width:20%;
}
.cols-col:first-child {
  padding-left:0;
}
.cols-col:last-child {
  padding-right:0;
}


.order-btn-wrap {
    position: absolute;
    bottom: 115px;
    right: 185px;
    z-index: 200;
}
.order-btn {
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:170px;
  height:170px;
  padding-top:44px;
  font-family: 'Lobster', cursive;
  font-size:32px;
  text-align:center;
  line-height:1em;
  background: #1d89c6;
  background-image: linear-gradient(to top, #0069a6 0%, #1d89c6 70%);
  color:#fff;
  border:8px solid rgba(255,255,255,1);
  border-radius:100%;
  z-index:200;
  cursor:pointer;
}
.order-btn:hover {
color:#fff;
transform: scale(1.05);
background-image: linear-gradient(to top, #005996 0%, #2d99d6 70%);
}




/*---elements---*/
a {
  color:#1d89c6;
  text-decoration: none; /*underline;*/
}
  a:hover {
    color:#1d89c6;
  }

#logo {
  float:left;
  display:block;
  width:6em;
  font-family: 'Lobster', cursive;
  font-size: 4em;
  line-height: 0.75em;
  text-shadow:-3px -3px 0 #fff, 0px -3px 0 #fff, 3px -3px 0 #fff;
  color: #1d89c6;
}
#logo img {
  float:left;
  margin:0.1em 0.2em 0 0;
  height:1.4em;
  width:auto;
}
h1 {
  font-family: 'Lobster', cursive;
  font-size:2.3em;
  color: #1d89c6;
  font-weight: normal;
  line-height: 1.1em;
}
h2 {
  font-family: 'Lobster', cursive;
  font-size:1.7em;
  color: #003f7f;
  font-weight: normal;
  line-height: 1.1em;
}

ul {
  padding: 0;
  list-style: inside;
}
li {
  margin:0 0 0.5em 0;
}


.doc-privacy-policy h1,
.doc-privacy-policy h2 {
  font-family: 'Open Sans', sans-serif;
}

.text-left {
	text-align:left;
}
.text-right {
	text-align:right;
}

/*---галерея ---*/
.gallery-wrap {
  margin: 2em 0;
}
.gallery-wrap .item {
  float:left;
  width:32%;
  overflow:hidden;
  margin:0 2% 2% 0;
  opacity:0.9;
}
  .gallery-wrap .item:nth-child(3n) {
    margin-right:0;
  }
  .gallery-wrap .item a {
    display:block;
  }
  .gallery-wrap .item img {
    width:100%;
  }
  .gallery-wrap .item:hover {
    opacity:1;
  }
  .gallery-wrap .dirname h2 {
    font-size:1.5em;
    margin: 0.5em 0 0 0;
    text-align:center;
  }




.rel {
  position: relative;
}

#scrollTop {
opacity:0.75;
display: block;
position: fixed;
bottom: 1em;
right: 1em;
z-index: 99;
font-size: 40px;
height: 65px;
width: 65px;
line-height: 1.2em;
padding: 0.2em;
color: #fff;
text-decoration: none;
text-align: center;
border: 5px solid #fff;
border-radius: 100%;
background-image: linear-gradient(to top, #003f7f 0%, #1d89c6 100%);
cursor: pointer;
}
#scrollTop:hover {
  opacity:1;
}


.popup {
  display:none;
  position:absolute;
  top:0;
  margin:0 auto;
  width:400px;
  max-width:1000px;
  box-shadow:0 0 50px rgba(0,0,0,0.5);
  z-index:210;
}
.popup-close {
  position:absolute;
  width:30px;
  height:30px;
  top:0px;
  right:0px;
  padding-top:6px;
  color:#1d89c6;
  background:#fff;
  z-index:211;
  border-radius:100%;
  font-size:13px;
  text-align:center;
  cursor:pointer;
}
#overlay {
  display:none;
  position:absolute;
  top:0;
  min-height:100%;
  width:100%;
  background: #024;
  background: rgba(0,0,0,0.7);
  z-index:209;
}


#popup-get {
  padding: 0 1em 1em 1em;
  background-image: linear-gradient(to top, #003f7f 0%, #1d89c6 100%);
  border: 10px solid #fff;
  border-radius: 1em;
  text-align: center;
}
  #popup-get p {
    color:#fff;
  }


#contactform-wrap {
  min-width:240px;
  max-width:420px;
  padding:1em;
  background-image: linear-gradient(to top, #003f7f 0%, #1d89c6 100%);
  border-radius:4px;
}

/*--- forms ---*/
.form-wrap,
.form-wrap h2 {
	color:#fff;
}
input,
button,
select,
textarea {
  width:100%;
  padding:10px;
  margin-bottom:0.5em;
  border:0;
  border-radius:4px;
  color:#444;
}
button,
.button {
  display: inline-block;
  padding:10px 1em;
  margin-bottom:0.5em;
  font-family: 'Lobster', cursive;
  font-size:1.4em;
  color:#fff;
	text-align: center;
	text-decoration:none;
	touch-action: manipulation;
	vertical-align: middle;
	white-space: nowrap;
  background: #003f7f;
  background-image: linear-gradient(to top, #003f7f 0%, #005f9f 70%);
  background:orange;
  border-radius:4px;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
  transition:all 0.3s;
}
button:hover,
.button:hover {
	background:orangered;
    color: #fff;
    transition:all 0.3s;
}

input[type="checkbox"],
.jspopup input[type="checkbox"] {
    box-shadow: none;
    margin: 0.3em 0.3em 0 0;
    outline: none;
    transition: none 0s ease 0s ;
    vertical-align: top;
    width: auto;
}
label {
	margin-bottom:0.3em;
	display:block;
	text-align:left;
}
form a {
	color:#8de0ef;
	text-decoration:underline;
}
button[disabled], button[disabled]:hover {
	background:#ccc;
}

.form-errors {
  font-size:1em;
  line-height:1em;
  margin:0.5em 0 1em 0;
}
.field-required-error {
  border:2px solid red;
}



/*-- mfp --*/
.popup-form-wrap {
  max-width:400px;
  box-shadow:0 0 50px rgba(0,0,0,0.5);
  position:relative;
  margin:50px auto 0;
  padding: 0 1em 1em 1em;
  margin:50px auto 0 auto;
  background-image: linear-gradient(to top, #003f7f 0%, #1d89c6 100%);
  border: 10px solid #fff;
  border-radius: 1em;
  text-align: center;
}
.popup-form-wrap .mfp-close {
  position:absolute;
  top:-10px;
  right:-10px;
  width:30px;
  height:30px;
  color:#1d89c6;
  font-size:20px;
	line-height:1em;
  background:#fff;
  border-radius:100%;
text-shadow:none;
opacity:1;
}
.popup-form-wrap p {
    color:#fff;
}





/*--- 2gis ------*/
#map-2gis #DGWidgetIframe0 {
  width:100%;
}





/*--- anim ---*/
#order-btn-circle-one {
    animation-delay: 2s !important;
    animation-direction: normal !important;
    animation-duration: 8s !important;
    animation-fill-mode: none !important;
    animation-iteration-count: infinite !important; /*infinite*/
    animation-name: order-btn-circle-one-anim !important;
    animation-play-state: running !important;
    animation-timing-function: linear;
    background-color: transparent;
    border: 10px solid #1d89c6;
    border-radius:100%;
    opacity:0;
    position:absolute;
    left:0px;
    top:0px;
    height: 170px;
    width: 170px;
}

@keyframes order-btn-circle-one-anim {
  0% {
      opacity: 0;
      transform: rotate(0deg) scale(1) skew(0deg);
  }
  2% {
      opacity: 0.3;
      transform: rotate(0deg) scale(1.1) skew(0deg);
  }
  7% {
      opacity: 0;
      transform: rotate(0deg) scale(1.5) skew(0deg);
  }
  8% {
      opacity: 0;
      transform: rotate(0deg) scale(1) skew(0deg);
  }
  100% {
      opacity: 0;
      transform: rotate(0deg) scale(1) skew(0deg);
  }
}


#logo-img-anim {
    animation-delay: 6s !important;
    animation-direction: normal !important;
    animation-duration: 20s !important;
    animation-fill-mode: none !important;
    animation-iteration-count: infinite !important; /*infinite*/
    animation-name: wheel-rotation-anim !important;
    animation-play-state: running !important;
    animation-timing-function: ease-in-out !important;
}
@keyframes wheel-rotation-anim {
  0% {
      transform: rotate(0deg) scale(1) skew(0deg);
  }
  5% {
      transform: rotate(-10deg) scale(1) skew(0deg);
  }
  20% {
      transform: rotate(365deg) scale(1) skew(0deg);
  }
  30% {
      transform: rotate(360deg) scale(1) skew(0deg);
  }
  100% {
      transform: rotate(360deg) scale(1) skew(0deg);
  }
}




/*------ media queries ------------------------*/
/* Large desktop */
@media (min-width: 1200px) {
}
@media (max-width: 1200px) {
}

/* Portrait tablet to landscape and desktop */
/*@media (max-width: 979px) {
}*/


/* Landscape phone to portrait tablet */
@media (max-width: 767px) {
  .outer {
    padding: 1em;
  }
  .header {
    height:135px;
  }
	.header-social-icons-wrap {
		margin: 10px 0;
	}	
  .nav {
    top:150px;
    padding-left:0;
  }
  /*--- vertical menu ---*/
  .sf-menu {
    display:none;
    width: 100%;
  }
      .sf-menu ul {
      	left:	100%;
      	top: 0;
      }
      .sf-menu > li {
        float: none;
      }
      .sf-menu li {
        width: 100%;
      }
  .menu-toggle {
      display:block;
  }

  #header-slideshow-wrap {
    margin-top:0;
  }
  .order-btn-wrap {
    bottom: 30px;
    right: 160px;
  }
  .order-btn {
    width:150px;
    height:150px;
    padding-top:40px;
    font-size:28px;
  }
  #order-btn-circle-one {
    border: 10px solid #1d89c6;
    height: 150px;
    width: 150px;
  }

#logo {
  float:left;
  display:block;
  width:4.5em;
  font-size: 3.2em;
  line-height: 0.75em;
}
#logo img {
  display:none;
}

.contacts {
}
    .contacts span.phone {
      font-size:1.5em;
    }

  .cols-col,
  .cols-col50,
  .cols-col30 {
    display:block;
    width:100%;
    padding:0;
    margin-bottom:1em;
  }


}

/* Landscape phones and down */
@media (max-width: 480px) {
  #order-btn-circle-one {
    display: none;
  }
  .outer {
    padding: 0.5em;
  }

  .header {
    height:190px;
  }
  .nav {
    top:125px;
    padding-left:0;
  }
  .contacts {
    display:none;
  }
.header-social-icons-wrap {
    display:none;
}
  .mobile-contacts {
    display:block;
    bottom:80px;
    text-align:center;
  }
  #logo {
    float:none;
    width:100%;
    text-align:center;
	font-size: 2.7em;
  }

  .order-btn-wrap {
      bottom: 0px;
      right: 0;
      z-index: 200;
      font-size:1.4em;
  }
  .order-btn {
    position:static;
    top:0;
    left:0;
    width:auto;
    height:65px;
    padding:6px 30px;
    font-size:24px;
    border:0;
    border-left:1px solid #fff;
    border-radius:0px;
  }


  .cols-col,
  .cols-col50,
  .cols-col30 {
    display:block;
    width:100%;
    padding:0;
    margin-bottom:1em;
  }

  .gallery-wrap .item {
    float:left;
    width:100%;
    overflow:hidden;
    opacity:0.9;
  }
  .gallery-wrap .item:nth-child(2n) {
    margin-right:0;
  }


  .popup {
    width:300px;
  }
  #popup-get {
    padding: 0 1em 1em 1em;
    border: 4px solid #fff;
  }

}



.browserupgrade {
position:absolute;
top:0;
width:100%;
padding: 0.5em 0;
background: yellow;
border-bottom: 1px solid #333;
text-align: center;
}


