/*
Theme Name: Nc-rusi
Text Domain: Nc-rusi
Description: Тема для сайта спортивно-оздоровительного комплекса
Author: Nicoman
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
@font-face {
    font-family: 'Georgia';
    src: local('Georgia'), local('Georgia'),
        url('fonts/georgia.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display:swap;
}
@font-face {
	font-family:'Russian Land';
	font-style:normal;
	font-weight:normal;
	font-display:swap;
	src: url('fonts/Russian-Land-Regular.eot');
	src: url('fonts/Russian-Land-Regular.eot?#iefix') format('embedded-opentype'),
		url('fonts/Russian-Land.woff') format('woff'),
		url('fonts/russianlandcyrillic.ttf') format('truetype'),
		url('fonts/Russian-Land-Regular.svg#RussianLand') format('svg');
}
@font-face {
    font-family: 'HeadingPro';
    src: url('fonts/HeadingPro-Regular.eot');
    src: local('HeadingPro'), local('HeadingPro'),
        url('fonts/HeadingPro-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/HeadingPro-Regular.woff2') format('woff2'),
        url('fonts/HeadingPro-Regular.woff') format('woff'),
        url('fonts/HeadingPro-Regular-trial.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display:swap;
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}
body {
  margin: 0;
}
main {
  display: block;
}

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
a {
  background-color: transparent;
  text-decoration:none;
}
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}
b,
strong {
  font-weight: bolder;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}
button,
input { /* 1 */
  overflow: visible;
}
button,
select { /* 1 */
  text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
[hidden] {
  display: none;
}
p{
    margin:0;
}
/*------*/

*{
    box-sizing:border-box;
}
a,button,input{
    outline:0;
}
body{
    font-size:20px;
    line-height:1.7;
    font-weight:400;
    font-family:'Georgia';
    color:#262626;
    background:#F0ECE1;
    padding-top:111px;
}
body.home{
    background:#fff;
}
.container{
    width:100%;
    padding:0;
    margin:0 auto;
}
header{
    padding:30px 0;
    position:fixed;
    left:0;
    top:0;
    width:100%;
    z-index:99;
    background:#143D02;
}
.admin-bar header{
    top:32px;
}
header .container{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.custom-logo-link{
    line-height:0;
}
#main-menu{
    width:45.5%;
    max-width:531px;
}
.main-menu{
    list-style:none;
    padding:0;
    margin:0;
    display:flex;
    justify-content:space-between;
    align-items:center;
    width:100%;
}
.main-menu li{
    position:relative;
}
.main-menu li:not(:nth-last-child(2)):after{
    content:'|';
    position:absolute;
    right:-35px;
    top:50%;
    height:16px;
    width:auto;
    color:#fff;
    transform:translate(0,-50%);
    overflow:hidden;
    display:flex;
    align-items:center;
}
.main-menu li a{
    font-family:'HeadingPro';
    font-size:17px;
    line-height:1;
    color:#fff;
    vertical-align:middle;
    font-weight:400;
    text-transform:uppercase;
}
.main-menu li.current-menu-item a,
.main-menu a:hover{
    color:#BE8E0C;
    position:relative;
}
.main-menu li.current-menu-item a:before,
.main-menu a:hover:before{
    content:'';
    position:absolute;
    left:0;
    bottom:-12px;
    height:4px;
    width:100%;
    background:#BE8E0C;
}
.sub-menu{
    display:none;
    list-style:none;
    padding:20px 17px 6px;
    background:#BE8E0C;
    position:absolute;
    left:-35px;
    top:calc(100% + 38px);
    width:272px;
}
.menu-item-has-children{
    position:relative;
}
.menu-item-has-children:before{
    content:'';
    position:absolute;
    top:100%;
    left:-35px;
    width:calc(100% + 70px);
    height:40px;
}
.menu-item-has-children:hover .sub-menu{
    display:block;
}
.menu-item-has-children .sub-menu li{
    line-height:0;
}
.menu-item-has-children .sub-menu li:not(:last-child){
    margin-bottom:10px;
}
.menu-item-has-children .sub-menu a{
    line-height:1;
}
.menu-item-has-children .sub-menu a:hover:before{
    content:none;
}
.main-menu li.menu-item-has-children .sub-menu a{
    color:#F0ECE1;
}
.main-menu li.menu-item-has-children .sub-menu li:before,
.main-menu li.menu-item-has-children .sub-menu li:after,
.main-menu li.menu-item-has-children .sub-menu a:before,
.main-menu li.menu-item-has-children .sub-menu a:after{
    content:none!important;
}
.main-menu li.menu-item-has-children .sub-menu a:hover{
    color:#143D02;
}
.header_right{
    width:19.5%;
    max-width:225px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}
a.phone{
    font-family:'HeadingPro';
    display:block;
    text-align:center;
    font-weight:400;
    font-size:28px;
    line-height:34px;
    color:#BE8E0C;
    transition:.5s all ease;
}
a.phone:hover{
    text-decoration:underline;
}
#bron{
    display:inline-block;
    width:42px;
    height:40px;
    display:flex;
    border:none;
    background:#BE8E0C;
    transition:.3s all ease;
    cursor:pointer;
}
#bron svg{
    margin:auto;
}
#bron:hover{
    background:#F0ECE1;
}
#bron:hover svg path{
    fill:#BE8E0C;
}
.main-wrap{
    width:100%;
    overflow:hidden;
    min-height:500px;
}
.slider_item{
    position:relative;
}
.slider_item:before{
    content:'';
    position:absolute;
    display:block;
    width:54%;
    right:0;
    top:0;
    height:100%;
    z-index:1;
    background:#F0ECE1;
}
.slider_item .container{
    position:absolute;
    left:50%;
    top:0;
    transform:translate(-50%,0);
    padding-top:80px;
    z-index:2;
}
.slick-slide.slider_item img{
    width:46%;
}
.slider_cont{
    padding-left:100px;
    margin-left:43.5%;
    /*color:#fff;*/
}
.slider_text{
    margin-bottom:65px;
}
.slider_cont h1,
.slider_cont h2{
    font-family:'Russian Land';
    font-size:76px;
    line-height:84px;
	letter-spacing:.05em;
    margin:0 0 15px;
    font-weight:400;
	color:#143D02;
}
.slider_cont h3{
	font-family:'HeadingPro';
	color:#BE8E0C;
	text-transform:uppercase;
	font-size:24px;
	line-height:1;
	font-weight:400;
	margin:0 0 25px;
}
.slider_cont p{
    font-size:22px;
    line-height:34px;
    margin:0;
}
.slider_bt{
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.bron{
    display:flex;
    align-items:center;
    background:#BE8E0C;
    cursor:pointer;
    padding:20px 28px 20px 24px;
    color:#fff;
    text-transform:uppercase;
    font-family:'HeadingPro';
    font-size:18px;
    line-height:1;
    border:none;
}
.bron svg{
    margin-right:15px;
}
.bron:hover{
    background:#F0ECE1;
    color:#BE8E0C;
}
.slider_cont .bron:hover{
	background:#143D02;
}
.bron:hover svg path{
    fill:#BE8E0C;
}
.slider_price{
    font-family:'HeadingPro';
    font-size:16px;
    line-height:1;   
}
.slider_price span{
    font-size:50px;
}
#main-slider .slick-dotted.slick-slider{
    margin:0;
}
#main-slider .slick-dots{
    bottom:70px;
    left:50%;
    transform:translate(-50%,0);
    text-align:right;
}
#main-slider .slick-dots li{
    margin:0 6px;
    width:19px;
    height:19px;
}
#main-slider .slick-dots li button{
    padding:0;
    width:100%;
    height:100%;
    background:#262626;
    border-radius:50%;
}
#main-slider .slick-dots li.slick-active button{
    background:#BE8E0C;
}
#main-slider .slick-dots li button::before {
    content:none;
}
button.prev,
button.next{
    position:absolute;
    width:43px;
    height:43px;
    background:#143D02;
    display:flex;
    bottom:58px;
    right:46.5%;
    cursor:pointer;
    border:none;
    z-index:9;
}
button.prev svg,
button.next svg{
    margin:auto;
    fill:#F0ECE1;
}
button.next{
    right:43%;
    transform:rotate(180deg);
}
button.prev:hover,
button.next:hover{
    background:#BE8E0C;
}
.prom-block{
    margin-top:30px;
}
.prom-block .container{
    display:flex;
}
.prom-block .container > div{
    width:55%;
}
img{
    max-width:100%;
    height:auto;
}
.prom_img{
    position:relative;
    overflow:hidden;
    max-width:600px;
}
.prom_img img{
    display:block;
    position:absolute;
    width:100%;
    height:100%;
    object-fit:cover;
}
.prom_text{
    color:#fff;
    background:#BE8E0C;
    padding:29px 16px 18px 25px;
    max-width:570px;
}
.prom_text h2{
    font-family:'HeadingPro';
    font-size:55px;
    line-height:1;
    margin:0 0 11px;
    text-transform:uppercase;
    letter-spacing:-0.03em;
    font-weight:400;
}
.prom_text p{
    font-size:22px;
    line-height:30px;
}
.text-image{
    background-position:center;
    background-size:cover;
    padding:56px 0 60px;
}
.text-image .container{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.ti_img{
    position:relative;
    width:50%;
    margin-left:-24%;
}
.ti_img img{
    max-width:unset;
    width:auto;
}
.ti_cont{
    width:50%;
    padding-left:53px;
}
.ti_cont h2{
    font-family:'Russian Land';
    font-size:96px;
    line-height:115px;
    letter-spacing:0.1em;
    margin:0 0 62px;
    position:relative;
    display:inline-block;
    font-weight:500;
}
.ti_cont h2:before{
    content:'';
    position:absolute;
    left:0;
    bottom:-25px;
    width:100%;
    height:2px;
    background:#BE8E0C;
}
.ti_text p{
    margin:0 0 40px
}
.btn{
    display:inline-block;
    color:#fff;
    text-transform:uppercase;
    font-family:'HeadingPro';
    font-size:18px;
    line-height:1;
    letter-spacing:.1em;
    padding:25px 61px 22px;
    background:#BE8E0C;
}
.btn:hover{
    background:#143D02;
}
#yandex-map{
    margin-bottom:80px;
}
.page-id-27 #yandex-map{
    margin:0;
}
.text-block{
    padding:60px 0;
}
.text-block[style]{
    color:#fff;
}
.text-block.center{
    text-align:center;
}
.text-block.left{
    text-align:left;
}
.text-block.right{
    text-align:right;
}
.text-block h2{
    font-family:'Russian Land';
    font-size:86px;
    line-height:104px;
    letter-spacing:.1em;
    margin:0 0 45px;
    font-weight:400;
}
.text-block p{
    margin:0 0 45px;
    font-size:18px;
    line-height:34px;
}
.text-block p:last-child{
    margin:0;
}
#contact-block{
    text-align:center;
    margin:0 0 60px;
}
.page-id-27 #contact-block{
    margin:0;
}
.contacts_wrap{
    padding:55px 0 50px;
    border-top:2px solid #917D3A;
    border-bottom:2px solid #917D3A;
    max-width:970px;
    margin:0 auto;
    font-family:'HeadingPro';
}
.page-id-27 .contacts_wrap{
    border:none
}
.phone_text{
    font-size:70px;
    line-height:85px;
    margin:0 0 25px;
    color:#BE8E0C;
}
.page-id-27 .phone_text{
    font-size:82px;
    line-height:99px;
}
.adr_text{
    font-size:32px;
    line-height:46px;
    letter-spacing:.035em;
    margin:0 auto 35px;
    text-transform:uppercase;
    max-width:565px;
}
#contact-block .email{
    color:#858585;
    font-size:26px;
    line-height:38px;
    letter-spacing:.035em;
    margin:0;
    text-transform:uppercase;
}
.page-id-27 #contact-block .email{
    font-size:41px;
    line-height:60px;
    color:#143D02;
}
#contact-block .email:hover,
.page-id-27 #contact-block .email:hover{
    color:#BE8E0C;
}
.contacts_wrap .socseti{
    justify-content:center;
    margin-top:40px;
}
.contacts_wrap .soc_item{
    width:47.5px;
    height:47.5px;
    background:#143D02;
}
.contacts_wrap .soc_item img{
    margin:auto;
}
.contacts_wrap .socseti + p{
    text-transform:uppercase;
    margin:18px 0 0;
    font-size:26px;
    line-height:38px;
    letter-spacing:.035em;
    font-family:'HeadingPro';
}
#photo-slider{
    padding-bottom:100px;
}
.heading{
    max-width:830px;
    margin:-80px auto 120px;
    position:relative;
    padding:85px 0 63px;
    background:url(img/heading.png) center/100% 100%;
    text-align:center;
}
.heading h2{
    font-family:'Russian Land';
    font-size:65px;
    line-height:1;
    font-weight:400;
    letter-spacing:.1em;
    color:#F0ECE1;
    text-transform:uppercase;
    margin:0;
}
.heading .link{
    position:absolute;
    left:-60px;
    bottom:-20px;
    display:inline-block;
    font-family:'HeadingPro';
    font-size:29px;
    line-height:1;
    letter-spacing:.035em;
    color:#F0ECE1;
    background:#143D02;
    padding:19px 32px 17px;
    text-transform:uppercase;
}
#photo-slider .slick-list{
    margin:0 -15px;
}
.pslider_item{
    margin:0 15px;
}
.pslider_item img{
    width:100%;
}
#photo-slider .slick-dots{
    bottom:-52px;
}
#photo-slider .slick-dots li{
    width:19px;
    height:19px;
    margin:0 6px;
}
#photo-slider .slick-dots li button{
    width:19px;
    height:19px;
    border-radius:50%;
    padding:0;
    background:#858585;
}
#photo-slider .slick-dots li.slick-active button{
    background:#BE8E0C;
}
#photo-slider .slick-dots li button:before{
    content:none;
}
#services{
    padding-top:45px;
}
#services .container{
    position:relative;
}
#services .heading{
    background-image:url(img/serv_heading.png);
    padding:65px 0 100px;
    margin:0 auto -100px;
    max-width:790px;
}
#services .heading h2{
    font-size:86px;
    letter-spacing:.05em;
}
.service_wrap[style]{
    padding:175px 0 230px;
    position:relative;
    background-position:center;
    background-size:100% 100%;
}
.service_wrap{
    padding:45px 0 25px;
}
.service_text{
    text-align:center;
    margin:0 0 75px;
    font-size:22px;
}
.page-id-23 .service_text{
    font-size:20px;
    line-height:34px;
}
.service_wrap[style] .service_text{
    color:#F0ECE1;
}
.services{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    flex-direction:row-reverse;
}
.service_item{
    width:49%;
    max-width:570px;
    margin-bottom:70px;
}
.service_top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:0 0 27px;
}
.service_top h3{
    font-family:'HeadingPro';
    text-transform:uppercase;
    font-size:24px;
    line-height:1;
    letter-spacing:.035em;
    font-weight:800;
    color:#143D02;
    margin:0;
}
.service_wrap[style] .service_top h3{
    color:#BE8E0C;
}
.service_top h3 span{
    font-weight:400;
}
.service_price{
    color:#143D02;
    font-family:'HeadingPro';
    font-weight:800;
    font-size:12px;
    letter-spacing:.1em;
    line-height:1;
    text-transform:uppercase;
}
.service_wrap[style] .service_price{
    color:#F0ECE1;
}
.service_price span{
    font-size:24px;
    letter-spacing:-0.031em;
}
.service_item > p{
    color:#143D02;
}
.service_wrap[style] .service_item > p{
    color:#F0ECE1;
}
#about{
    margin-top:75px;
}
.about_top > div{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.about_top > div:not(:last-child){
    margin-bottom:50px;
}
.about_img{
    width:43%;
    max-width:500px;
}
.about_text{
    width:47%;
    max-width:550px;
}
.about_text h2{
    font-family:'HeadingPro';
    font-size:28px;
    line-height:1;
    letter-spacing:.035em;
    color:#BE8E0C;
    margin:0 0 28px;
    text-transform:uppercase;
}
.about_text ul{
    margin:0 0 15px;
    list-style-image:url(img/li.svg);
    font-size:20px;
    padding-left:22px;
}
.about_text ul li{
    margin:0;
}
.about_text ul + p{
    font-family:'HeadingPro';
    font-size:20px;
    line-height:24px;
    letter-spacing:.035em;
    text-transform:uppercase;
    color:#143D02;
    margin:0;
    padding-left:22px;
}
.about_bt{
    position:relative;
    color:#F0ECE1;
    padding:145px 0 78px;
    margin-top:-50px;
}
.about_bt:before{
    content:'';
    position:absolute;
    left:-50vw;
    right:-50vw;
    top:0;
    bottom:0;
    margin:0 50%;
    z-index:-1;
    background:url(img/aboutbg.png) center/100% 100% no-repeat;
}
.about_bt1{
    margin:0 0 50px;
}
.about_bt1 h2{
    font-family:'HeadingPro';
    text-transform:uppercase;
    margin:0 0 32px;
    font-size:28px;
    line-height:39px;
    letter-spacing:.035em;
    font-weight:800;
    color:#BE8E0C;
}
.about_bt1 .text{
    font-size:20px;
}
.about_bt1 .text p{
    margin:0 0 45px;
}
.about_bt1 .text p:last-child{
    margin:0;
}
.about_bt2{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.about_bt2 .about_img{
    width:52%;
    max-width:600px;
}
.about_bt2 .about_text{
    width:40.5%;
    max-width:470px;
}
.icons{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:30px 0 25px;
}
.icon_bt{
    font-family:'HeadingPro';
    font-weight:600;
    line-height:31px;
    letter-spacing:.035em;
    color:#BE8E0C;
    margin:0;
    text-transform:uppercase;
}
.separator{
    padding:45px 0;
    margin-bottom:83px;
}
.separator .container{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.separator p{
    font-size:28px;
    line-height:39px;
    letter-spacing:.035em;
    font-weight:800;
    font-family:'HeadingPro';
    color:#143D02;
    text-transform:uppercase;
}
.separator .btn{
    background:#143D02;
    padding:23px 28px 22px;
}
.separator .btn:hover{
    color:#143D02;
    background:#F0ECE1;
}
#houses{
    margin-bottom:125px;
}
.house{
    display:flex;
    justify-content:space-between;
    padding:100px 0;
}
.house.green{
    position:relative;
}
.house.green:before{
    content:'';
    position:absolute;
    left:-50vw;
    right:-50vw;
    bottom:0;
    top:0;
    margin:0 50%;
    z-index:-1;
    background:#143D02;
}
.house_text{
    width:49%;
    max-width:570px;
}
.house_text h2{
    text-transform:uppercase;
    font-family:'Russian Land';
    font-weight:400;
    font-size:77px;
    line-height:92px;
    letter-spacing:.05em;
    margin:0 0 10px;
    color:#143D02;
}
.green .house_text h2{
    color:#BE8E0C;
}
.house_descr{
    font-family:'HeadingPro';
    font-size:24px;
    line-height:1;
    letter-spacing:.1em;
    text-transform:uppercase;
    margin:0 0 27px;
}
.green .house_descr{
    color:#F0ECE1;
}
.house_about{
    padding-top:25px;
    border-top:2px solid #BE8E0C;
    margin-bottom:35px;
}
.green .house_about{
    color:#F0ECE1;
}
.house_about p:not(:last-child){
    margin-bottom:40px;
}
.house_price{
    font-family:'HeadingPro';
    font-size:20px;
    line-height:1;
    letter-spacing:.1em;
    font-weight:800;
    text-transform:uppercase;
    margin:0 0 20px
}
.green .house_price{
    color:#F0ECE1;
}
.house_price span{
    font-weight:400;
    letter-spacing:-0.03em;
    font-size:50px;
    line-height:1;
}
.house_text .bron:hover{
    background:#143D02;
    color:#F0ECE1;
}
.green .house_text .bron:hover{
    background:#F0ECE1;
    color:#BE8E0C;
}
.green .house_text .bron:hover svg path{
    fill:#BE8E0C;
}
.house_text .bron:hover svg path{
    fill:#F0ECE1;
}
.house_img{
    width:49%;
    max-width:570px;
}
.big_slider{
    margin-bottom:37.5px;
}
.bslider_item img{
	margin:auto;
}
.mini_slider .slick-list{
    margin:0 -15px;
}
.mslider_item{
    margin:0 15px;
}
.house_img button.prev,
.house_img button.next{
    width:57px;
    height:57px;
    background:#BE8E0C;
    top:50%;
    transform:translate(0,-50%);
}
.house_img button.prev:hover,
.house_img button.next:hover{
    background:#143D02;
}
.green .house_img button.prev:hover,
.green .house_img button.next:hover{
    background:#F0ECE1;
}
.house_img button.prev{
    right:unset;
    left:0;
}
.house_img button.next{
    right:0;
}
.house_img button.next svg{
    transform:rotate(180deg);
}
.house_img button.prev svg path,
.house_img button.next svg path{
    fill:#F0ECE1;
}
.green .house_img button.prev:hover svg path,
.green .house_img button.next:hover svg path{
    fill:#143D02;
}
form .wpcf7-spinner{
    display:none;
}
body .wpcf7 .ajax-loader{
    display:none;
}

footer{
    padding:30px 0;
    background:#262626;
}
.footer_top{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
#footer-menu{
    width:46.5%;
    max-width:546px;
}
#footer-menu .sub-menu{
    display:none!important;
}
footer .main-menu li a{
    font-size:13px;
}
footer .main-menu li.current-menu-item a:before,
footer .main-menu a:hover:before{
    height:2px;
    bottom:-10px;
}
.pay_logo{
    background:#fff;
    border-radius:22px;
    width:190px;
    height:45px;
    display:flex;
}
.pay_logo img{
    margin:auto;
    max-height:100%;
}
.footer_bt{
    margin-top:35px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.addr{
    margin:0;
    font-size:16px;
    line-height:1.5;
    color:#fff;
    font-family:'HeadingPro';
    text-transform:uppercase;
}
.socseti{
    display:flex;
    align-items:center;
}
.soc_item{
    display:flex;
}
.soc_item:not(:last-child){
    margin-right:25px;
}
.soc_item img,
.soc_item svg{
    margin:auto;
}
.soc_item:hover svg path{
	fill:#BE8E0C;
}
.develop{
    line-height:0;
}

input,textarea{
    outline:none;
}
body .blocker{
    z-index:999;
}
#form.modal{
    padding:25px 25px;
    background:#143D02;
    max-width:320px;
    border:none;
    border-radius:0;
}
#form .form_title{
    font-family:'HeadingPro';
    font-size:22px;
    line-height:1;
    margin:0 0 23px;
    text-transform:uppercase;
    letter-spacing:.1em;
    color:#BE8E0C;
}
#form .wpcf7-form-control-wrap{
    width:100%;
    display:block;
}
.form_item{
    margin-bottom:14px;
}
.form_item p{
	color:#F0ECE1;
	font-family: 'Arial';
}
.form_item select,
.form_item input{
    width:100%;
    font-family:'HeadingPro';
    font-size:16px;
    letter-spacing:.1em;
    line-height:17px;
    color:#262626;
    padding:23px 12px 18px;
    text-transform:uppercase;
    background:#F0ECE1;
    font-weight:400;
    border:none;
    height:56px;
}
.form_item label{
    color:#A9A9A9;
    font-family:'Arial';
    font-size:14px;
    line-height:1;
    margin-top:6px;
    display:block;
}
.form_item.full label{
    display:none;
}
#form input[type="submit"]{
    display:flex;
    align-items:center;
    margin:40px 0 0;
    position:relative;
    background:url(img/bell.svg) 26px center/32px 24px no-repeat, #BE8E0C;
    text-transform:uppercase;
    font-family:'HeadingPro';
    font-size:18px;
    line-height:1;
    letter-spacing:.1em;
    color:#F0ECE1;
    padding:25px 26px 22px 67px;
    cursor:pointer;
    border:none;
}
#form input[type="text"]::-moz-placeholder,
#form input[type="tel"]::-moz-placeholder{
    opacity:1;
    color:#262626;
}
#form input[type="text"]::-webkit-input-placeholder,
#form input[type="tel"]::-webkit-input-placeholder{
    color:#262626;
}
#form input[type="text"]:-ms-input-placeholder,
#form input[type="tel"]:-ms-input-placeholder{
    color:#262626;
}
#form input[type="text"]::-ms-input-placeholder,
#form input[type="tel"]::-ms-input-placeholder{
    color:#262626;
}
#form input[type="text"]::placeholder,
#form input[type="tel"]::placeholder{
    color:#262626;
}
#form input[type="submit"]:hover{
    background:url(img/bell.svg) 26px center/32px 24px no-repeat, #858585;
}
#form .selectize-input{
    border:none;
    box-shadow:none;
    border:none;
    font-family:'HeadingPro';
    font-size:16px;
    line-height:17px;
    letter-spacing:.1em;
    color:#262626;
    text-transform:uppercase;
    background:#F0ECE1;
    padding: 23px 12px 18px;
    height:56px;
    border-radius:0;
}
#form .selectize-input input{
    height:auto;
    font-size:16px;
    line-height:17px;
    color:#262626;
}
#form .selectize-dropdown{
    border:none;
    font-size:16px;
    line-height:17px;
    color:#F0ECE1!important;
    font-family:'HeadingPro';
    text-transform:uppercase
}
#form .selectize-dropdown-content{
    max-height:unset;
    padding:25px 37px 5px 12px;
    background:#858585;
    
}
#form .selectize-dropdown .option{
	padding:12px 8px;
}
#form .selectize-control.single .selectize-input::after {
    content:none;
}
.form_text{
    color:#F0ECE1;
    font-family:'Arial';
    font-size:12px;
    line-height:18px;
    font-weight:400;
    margin:35px 0 0;
}
.form_text a{
    color:#BE8E0C;
}
.xdsoft_timepicker{
    display:none!important;;
}
body .xdsoft_datetimepicker{
    border:none;
    width:272px;
    box-shadow:none;
    font-family:'HeadingPro';
    font-size:16px;
    line-height:17px;
    letter-spacing:.1em;
    color:#F0ECE1;
    background:#858585;
}
.xdsoft_today_button{
    display:none!important;
}
#dataz,
#datav{
    background:url(img/picker.svg) 97% center/18px 20px no-repeat, #F0ECE1;
	position:relative;
}
input[type=date]::-webkit-calendar-picker-indicator {
  opacity: 0;
}
input[type="date"]::-webkit-calendar-picker-indicator {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
  color: transparent;
  background: transparent
}
#form.modal a.close-modal,
#success a.close-modal{
    width:13px;
    height:13px;
    top:28px;
    right:24px;
    background:url(img/close1.svg) center/contain no-repeat;
}
#success{
    background:#FBB03B;
    border-radius:0;
    text-align:center;
    padding:30px 15px;
    font-style:normal;
    max-width:300px;
    box-shadow:none;
    background:#143D02;
    color:#F0ECE1;
}
#success .form_title{
    font-weight:400;
    font-size:50px;
    line-height:1.2;
    font-family:'Russian Land';
    color:#BE8E0C;
    margin:0 0 30px;
}
.mmenu{
    display:none;
}
.main-menu .close{
    display:none;
}
.heading-page{
    text-align:center;
}
.heading-page h1{
    font-family:'Russian Land';
    font-size:96px;
    line-height:115px;
    letter-spacing:.1em;
    font-weight:400;
    margin:55px 0 0;
}
#gallery{
    padding-bottom:100px;
}
.gal-block{
    margin-top:87px;
}
.gal-block h2{
    text-align:center;
    font-family:'HeadingPro';
    font-size:24px;
    line-height:1;
    margin:0 0 24px;
    text-transform:uppercase;
    letter-spacing:.1em;
}
.gal-list{
    display:grid;
    grid-template-columns:1fr 1fr 1fr 1fr;
    grid-column-gap:30px;
    grid-row-gap:32px;
}
.gal-item{
    display:block;
    line-height:0;
}
.error404 .main-wrap{
    display:flex;
    flex-direction:column;
    align-items:center;
}
.error404 h1{
    font-family:'Russian Land';
    font-size:223px;
    line-height:268px;
    letter-spacing:.1em;
    color:#BE8E0C;
    font-weight:400;
    margin:105px 0 23px;
}
.error404 .main-wrap p{
    font-family:'HeadingPro';
    text-transform:uppercase;
    font-size:37px;
    line-height:53px;
    letter-spacing:.035em;
    margin:0 0 35px;
}
.error404 .btn{
    background:#143D02;
    color:#F0ECE1;
}
.error404 .btn:hover{
    background:#BE8E0C;
}
.wpcf7-response-output{
	display:none!important;
}

@media all and (min-width:576px){
    .container{
        max-width:540px;
    }
}
@media all and (min-width:768px){
    .container{
        max-width:720px;
    }
}
@media all and (min-width:992px){
    .container{
        max-width:960px;
    }
}
@media all and (min-width:1200px){
    .container{
        max-width:1170px;
    }
}

@media all and (max-width:1799px){
    button.prev,
    button.next{
        bottom:15px;
    }
    button.prev{
        right:51.5%
    }
    button.next{
        right:46%;
    }
    #main-slider .slick-dots {
        bottom:25px;
    }
    .slider_cont {
        margin-left:35%;
    }
    .slider_item:before{
        width:60%;
    }
    .text-image{
        background-size:100% 100%;
        padding:100px 0;
    }
    .ti_img{
        margin-left:0;
    }
    .ti_img img{
        max-width:100%;
    }
}

@media all and (max-width:1599px){
    .slider_cont h1 br,
    .slider_cont h2 br{
        display:none;
    }
}
@media all and (max-width:1399px){
    .slider_item:before {
        width: 70%;
		background:rgba(240, 236, 225,.8);
    }
    .slider_cont{
        margin-left:25%''
    }
    .slider_cont h1,
    .slider_cont h2{
        font-weight:400;
    }
    .slider_text {
        margin-bottom: 35px;
    }
    button.prev{
        right: 61%;
    }
    button.next {
        right: 53%;
    }
}

@media all and (max-width:1199px){
    #main-menu{
        width:48%;
    }
    .header_right{
        width:21.5%;
    }
    .slider_item .container{
        padding-top:30px;
		padding-bottom:100px;
		position:relative;
		left:0;
		transform:none;
		height:600px;
    }
	.slick-slide.slider_item img{
		height:100%;
		width:auto;
		min-width:100%;
		position:absolute;
	}
    .slider_cont{
        margin-left:0;
        padding-left:0;
    }
    .slider_item:before{
        width: 100%;
    }
    .slider_text{
        text-align:center;
    }
	.slider_bt{
		margin-top:150px;
	}
    button.prev{
        right: 55%;
    }
    button.next{
        right: 45%;
    }
    .prom_text h2{
        font-size:45px;
    }
    .prom_text p {
        font-size:20px;
        line-height:1.4;
    }
    .ti_cont h2{
        font-size:75px;
        line-height:1.2;
    }
    #services .heading {
        margin-bottom:-120px;
    }
    .about_bt:before{
        top:-45px;
    }
    .separator .btn{
        min-width:212px;
    }
    .house_text{
        width:56%;
    }
    .house_img{
        width:40%;
    }
    .house_img button.prev,
    .house_img button.next{
        width:30px;
        height:30px;
    }
}

@media all and (max-width:992px){
    body{
        padding-top:81px;
    }
    .main-menu .close{
        display:inline-block;
        position:absolute;
        right:15px;
        top:15px;
        width:30px;
        height:30px;
        background:url(img/close.svg) center/contain no-repeat;
    }
    body.overflow{
        overflow:hidden;
        padding-top:0;
    }
    .mmenu{
        display:flex;
        flex-direction:column;
        justify-content:space-between;
        align-items:center;
        width:30px;
        height:30px;
        position:relative;
        padding:0;
        border:none;
        background:none;
        cursor:pointer;
    }
    .mmenu:before,
    .mmenu:after,
    .mmenu span{
        content:'';
        width:100%;
        height:3px;
        border-radius:2px;
        background:#BE8E0C;
    }
    #main-menu{
        visibility:hidden;
        opacity:0;
        position:fixed;
        left:-350px;
        top:0;
        background:#BE8E0C;
        padding:50px 30px;
        width:0;
        min-height:100vh;
        transition:all .7s ease;
    }
    #main-menu.open{
        visibility:visible;
        opacity:1;
        left:0;
        width:350px;
        z-index:9999;
    }
    .main-menu{
        flex-direction:column;
        align-items:flex-start;
    }
    header .main-menu li.current-menu-item a{
        color:#fff;
    }
    .sub-menu{
        position:static;
        background:none;
        padding:0 0 0 30px;
        display:block;
        width:auto;
        margin-top:15px;
    }
    .main-menu li .sub-menu a{
        font-size:20px;
    }
    .menu-item-has-children .sub-menu li:not(:last-child) {
        margin-bottom: 20px;
    }
    .overflow header{
        position:relative;
    }
    .overflow header:after{
        content:'';
        position:fixed;
        left:0;
        top:0;
        width:100%;
        height:100%;
        min-height:100vh;
        background:rgba(0,0,0,.7);
        z-index:100;
    }
    header{
        padding:15px 0;
    }
    .header_right{
        width:auto;
    }
    a.phone{
        margin-right:20px;
    }
    .main-menu li:not(:last-child){
        margin-bottom:20px;
    }
    .main-menu li a{
        font-size:24px;
    }
	header .main-menu li.current-menu-item a,
	header .main-menu a:hover{
		color:#143D02;
	}
    .main-menu li:not(:nth-last-child(2)):after{
        content:none;
    }
    /*#main-slider .slick-slide img{
        min-height:450px;
    }*/
	.slider_item .container{
		height:550px;
		padding-bottom:50px;
	}
	.slider_bt{
		margin-top:100px;
	}
    .prom_text h2{
        font-size:35px;
        letter-spacing:0;
        font-weight:400;
        text-align:center;
    }
    .prom_text p br{
        display:none;
    }
    .ti_img{
        width:40%;
    }
    .ti_cont{
        width:60%;
        padding-left:30px;
    }
    .ti_cont h2 {
        font-size:70px;
    }
    #services .heading {
        max-width:100%;
        padding:35px 0 80px;
        margin-bottom:-135px;
    }
    #services .heading h2 {
        font-size:70px;
    }
    .service_text{
        font-size:20px;
        line-height:1.4;
    }
    .service_top{
        height:48px;
    }
    .service_item > p{
        font-size:17px;
        line-height:1.4;
    }
    .heading{
        padding:45px 0 33px;
    }
    .heading h2{
        font-size:50px;
    }
    .heading .link{
        left:50%;
        transform:translate(-50%,0);
        padding:12px 15px;
        font-size:22px;
    }
    .phone_text,
    .page-id-27 .phone_text{
        font-size:50px;
        line-height:1;
    }
    .text-block h2{
        font-size:65px;
        line-height:1.4;
        margin-bottom:30px;
    }
    
    .footer_top{
        flex-wrap:wrap;
    }
    #footer-menu{
        width:100%;
        max-width:unset;
        order:1;
        margin-top:25px;
    }
    footer .main-menu{
        flex-direction:row;
    }
    footer .main-menu li:not(:nth-last-child(2)):after{
        content:'|';
        right:-65px;
    }
    footer .main-menu li:not(:last-child){
        margin:0;
    }
    .footer_bt{
        flex-wrap:wrap;
        margin-top:25px;
    }
    .addr{
        width:100%;
        text-align:center;
        margin-bottom:25px;
    }
    footer .main-menu .close{
        display:none;
    }
    .about_img,
    .about_bt2 .about_img{
        width:30%;
    }
    .about_text,
    .about_bt2 .about_text{
        width:65%;
    }
    .separator{
        margin-bottom:0;
    }
    .house{
        padding:50px 0;
        align-items:center;
    }
    .house_text h2{
        font-size:60px;
        line-height:1.3;
    }
}

@media all and (max-width:768px){
    body{
        padding-top:70px;
    }
    .custom-logo-link{
        width:150px;
    }
    .slider_cont h1,
    .slider_cont h2{
        font-size:70px;
    }
    .slider_cont p {
        font-size:18px;
        line-height:1.6;
    }
	.slider_bt {
		margin-top: 0;
	}
    /*.slick-slide img{
        min-height:400px;
    }*/
    .prom-block .container{
        flex-wrap:wrap;
    }
    .prom-block .container > div{
        width:100%;
        text-align:center;
    }
    .prom_img{
        height:200px;
    }
    .text-image .container{
        flex-wrap:wrap;
        justify-content:center;
    }
    .ti_img{
        width:200px;
        margin-bottom:30px;
    }
    .ti_cont{
        width:100%;
        padding:0;
        text-align:center;
    }
    .ti_text{
        text-align:left;
        font-size:18px;
        line-height:1.4;
    }
    .ti_text p{
        margin-bottom:25px;
    }
    #services .heading {
        padding-bottom:90px;
    }
    .service_wrap[style]{
        padding-bottom:100px;
		position:static;
		background:#143D02!important;
    }
    .service_wrap:not([style]){
        padding-top:0;
    }
    .page-id-23 .service_text{
        font-size:18px;
        line-height:1.4;
        margin-bottom:30px;
    }
    .service_item {
        width:46%;
        margin-bottom:30px;
    }
    .service_top{
        flex-direction:column;
        height:79px;
    }
    .service_top h3{
        text-align:center;
        font-size:20px;
        margin:0 0 15px;
    }
    .heading{
        margin-bottom:50px;
    }
    .slick-slide img{
        min-height:unset;
    }
    .contacts_wrap{
        padding:30px 0;
    }
    .phone_text,
    .page-id-27 .phone_text{
        font-size:40px;
    }
    .adr_text{
        font-size:26px;
        line-height:1.4;
    }
    .text-block h2{
        font-size:50px;
    }
    .text-block p{
        margin-bottom:25px;
        font-size:16px;
        line-height:1.4;
    }
    footer .main-menu li:not(:nth-last-child(2)):after{
        right:-45px;
    }
    .heading-page h1{
        font-size:70px;
        line-height:1.2;
    }
    .heading-page h1 + img{
        width:300px;
    }
    #gallery{
        padding-bottom:30px;
    }
    .gal-block{
        margin-top:30px;
    }
    #about{
        margin-top:0;
    }
    .about_top{
        padding:30px 0;
    }
    .about_top > div{
        flex-direction:column;
    }
    .about_img,
    .about_bt2 .about_img{
        width:300px;
        margin-bottom:20px;
    }
    .about_text,
    .about_bt2 .about_text{
        width:100%;
    }
    .about_bt{
        padding:30px 0;
        margin-top:0;
    }
    .about_bt:before{
        background:#143D02;
        top:0;
    }
    .about_bt2{
        flex-direction:column;
    }
    #houses{
        margin-bottom:0;
    }
    .house{
        flex-wrap:wrap;
        justify-content:center;
    }
    .house_text{
        width:100%;
        margin-bottom:20px;
    }
    .house_img{
        width:100%;
    }
    .big_slider{
        margin-bottom:15px;
    }
    .house_about p:not(:last-child){
        margin-bottom:20px;
    }
    .mini_slider .slick-list{
        margin:0 -5px;
    }
    .mslider_item{
        margin:0 5px;
    }
	.error404 h1{
		font-size:100px;
		line-height:1.4;
		margin:30px 0;
	}
	.error404 .main-wrap p{
		font-size:24px;
		line-height:1;
		text-align:center;
	}
}

@media all and (max-width:575px){
    .container{
        padding:0 15px;
    }
    .slider_text{
        margin-bottom:15px;
    }
    .slider_bt{
        flex-direction:column;
    }
    .slider_bt .bron{
        order:1;
    }
    .bron{
        padding:15px 18px 15px 14px;
    }
    button.prev{
        right: 60%;
    }
    button.next{
        right: 40%;
    }
	.slider_cont h1, .slider_cont h2 {
		font-size: 60px;
	}
    /*#main-slider .slick-slide img{
        height:500px;
        max-width:unset;
        margin:0 auto;
    }*/
    .slick-slide.slider_item img{
        width:auto;
    }
    .btn {
        padding:15px 30px;
    }
    #services .heading {
        padding:35px 0;
    }
    #services .heading h2 {
        font-size:50px;
    }
    .service_wrap{
        position:static;
        padding-bottom:400px;
        background-size:cover;
        margin-bottom:-300px;
    }
    .service_text{
        font-size:18px;
        margin-bottom:35px;
    }
    .service_item{
        width:100%;
    }
    .service_top{
        height:auto;
    }
	.service_wrap[style]{
		background-size:cover;
		padding-bottom:350px;
	}
    .phone_text,
    .page-id-27 .phone_text{
        font-size:35px;
    }
    .adr_text{
        margin-bottom:20px;
    }
    .text-block{
        padding:30px 0;
    }
    #myYandexMap{
        height:400px!important;
    }
    .gal-list{
        grid-template-columns:1fr 1fr 1fr;
    }
    .about_bt1 .text p{
        margin-bottom:15px;
    }
    .separator .container{
        flex-direction:column;
    }
    .separator p{
        text-align:center;
        margin-bottom:15px;
    }
    .house_about{
        font-size:16px;
    }
    .house_text h2{
        font-size:50px;
    }
}

@media all and (max-width:480px){
    .custom-logo-link {
        width:120px;
    }
    a.phone{
        font-size:22px;
    }
    .mmenu{
        width:30px;
        height:30px;
    }
    .mmenu:before,
    .mmenu:after,
    .mmenu span{
        height:3px;
    }
    .slider_cont p {
        font-size:16px;
    }
	.slider_cont h1, .slider_cont h2 {
		font-size: 50px;
	}
    #main-slider .slick-dots li {
        width:10px;
        height:10px;
        margin:0 5px;
    }
    #main-slider .slick-dots {
        text-align:center;
        bottom:15px;
    }
    button.prev,
    button.next{
        bottom:40px;
        width:30px;
        height:30px;
    }
    button.next{
        right:calc(40% - 30px);
    }
    .ti_cont h2{
        font-size:60px;
    }
    .ti_text{
        font-size:16px;
    }
    .phone_text,
    .page-id-27 .phone_text{
        font-size:30px;
    }
    .adr_text {
        font-size:24px;
    }
    .page-id-27 #contact-block .email{
        font-size:26px;
        line-height:1.4;
    }
    .text-block h2{
        font-size:40px;
    }
    footer .main-menu li:not(:nth-last-child(2)):after{
        content:none;
    }
    .footer_bt > * {
        width:100%;
        justify-content:center;
    }
    footer a.phone{
        margin:0 0 20px;
    }
    .develop{
        text-align:center;
        margin-top:20px;
    }
    .heading-page h1{
        margin-top:30px;
        font-size:60px;
    }
    .gal-block h2 {
        font-size:21px;
    }
    .gal-list{
        grid-gap:15px;
    }
	.bslider_item.slick-slide{
		height:250px;
	}
	.bslider_item.slick-slide img{
		height:100%;
		width:auto;
		margin:auto;
	}
}

@media all and (max-width:420px){
    .slider_cont h1,
    .slider_cont h2{
        font-size:45px;
		line-height:1.2;
    }
	.slider_cont h3{
		font-size:20px;
	}
    button.prev{
        right:unset;
        left:calc(40% - 30px);
    }
    .prom_text {
        padding:15px;
    }
    .service_wrap{
        padding-bottom:450px;
        margin-bottom:-350px;
    }
    .heading-page h1 {
        font-size:50px;
    }
    .gal-list{
        grid-template-columns:1fr 1fr;
    }
    .house_text h2{
        font-size:40px;
    }
    .house_descr {
        font-size:22px;
        margin-bottom:15px;
    }
    #form input[type="submit"]{
        padding:20px 20px 20px 50px;
        font-size:16px;
        background: url(img/bell.svg) 16px center/24px 18px no-repeat, #BE8E0C;
    }
	.big_slider{
		display:none!important;
	}
	.service_wrap[style]{
		padding-bottom:450px;
	}
}

@media all and (max-width:380px){
    body{
        padding-top:60px;
    }
    .custom-logo-link {
        width:110px;
    }
    a.phone{
        font-size:20px;
        margin-right:10px;
        line-height:1;
    }
    #bron {
        width:31px;
        height:30px;
    }
    #main-menu.open{
        width:100%;
    }
	.slider_price span {
		font-size: 30px;
	}
    .ti_cont h2{
        font-size:50px;
    }
    .phone_text,
    .page-id-27 .phone_text{
        font-size:25px;
    }
}
@media all and (max-width:350px){
    .custom-logo-link {
        width:90px;
    }
}
/* скрыть баннер именинники (удалить, если нужно вернть)*/
#main-prom {
    display: none;
}
@media all and (min-width:950px){
#main-slider {
    margin-bottom: 60px;
	}}
/* */