@import url("font/Calibri/stylesheet.css");
@import url("font/CyrillicUniversity3/stylesheet.css");




:root{
    --extralight: #d5d6c9; /*old  #cfcebe;*/
    --light:#BAB9A7; /* rgb(197 195 176) */
    --brown:#326667;
    --green:rgb(91 121 95);
    --dark_green:#304130; /* rgb(46 40 32) */
    --yellow:#E9DEA3;
    --light_red:rgb(234 216 200 / 30%);
    --light_green:rgb(179 209 184 / 30%);
}
HTML{}

BODY{line-height:1.3;font-size:16px;font-family: 'Calibri', sans-serif; font-weight: normal; background: #eee}

.__wrapper{ max-width: none; background: #fff }

.__container{ max-width: none; margin:0  auto; }

.font-university { font-family: "CyrillicUniversity3", 'Calibri';  }
.welcome-banner .font-university{text-shadow:0px 3px rgb(0 0 0 / 69%)}

    /***/
h1{ font-size:28px; font-weight: bold; line-height: 1.3em; margin: 0}
h2{font-size: 18px;line-height: 1.4em;font-weight: bold;text-transform: uppercase;}
a{ color: inherit}

.title-wrap { margin: 30px 0; }
.title-wrap .title{text-align: center;  font-weight: bold;  text-transform: uppercase;  font-size: 18px; margin: 10px 0}
.title-wrap h2{ text-align: center}
.title-wrap .subtitle{ text-align: center;    font-size: 22px;font-weight:bold;}

.title-wrap .text{ text-align: center; max-width: 960px; margin: auto; font-size: 18px;}
.title-wrap .text p{ margin-bottom: 10px}

.title-wrap .icon{ background-position: center; background-repeat: no-repeat; background-size: 100px; height: 50px; background-image: url(/images/title-olive.svg); margin-bottom: 20px}


.button{ font-size: 15px; text-transform: uppercase; font-weight: normal; letter-spacing: 1px; color: var(--dark_green); background-color: var(--yellow); width: 220px; line-height: 42px; text-align: center; border-radius: 30px; box-shadow: 3px 3px 10px rgba(13, 38, 79, 0.3); display: block;   text-decoration: none; border: none; cursor: pointer; transition: all 0.3s ease; max-width: 100%  }
.button:hover{ box-shadow: 3px 5px 13px rgba(66, 58, 46, 0.5);   transform: scale(1.05)}

/***/
.__header{position: fixed; top: 0; left: 0; width: 100%; z-index: 100; padding: 10px 0; background: var(--dark_green); color: var(--light) }
header{ }
header .__side-padding{ padding: 0 15px !important }
header .header-item-logo{ width: 140px; height: 40px; z-index: 10}
header .header-item-menu{ display: none}
header .header-logo{display: inline-block; height: 100%; width: 100%; background-image: url(../images/logo-row.svg); background-size: contain; background-position: left center; background-repeat: no-repeat;}
header .header-item-button{ display: none}
header .header-item-phone{}
header .header-item-phone a{background-size: 16px; background-repeat: no-repeat; background-position: 0 center; display: block; font-weight: bold; font-size: 14px; background-image: url(../images/phone-ico.svg);     padding-left: 24px;}

._inner header{ box-shadow: 0px 0px 10px rgb(13 38 79 / 16%);}
.is-scroll header{}


/***/
.menu-button{ display:block; width: 22px; height:22px; z-index: 7100;  -webkit-transition: all 0.5s ease; transition: all 0.5s ease; right: 0; }
.menu-button .menu-icon{ display:block; width:22px;position:absolute; height:2px;  top:0; bottom:0; left:0; right:0; margin:auto;
    background: var(--light);border-radius: 2px;}
.menu-button .menu-icon:before,
.menu-button .menu-icon:after{ display:block; content:""; position:absolute; height:2px; width:100%; left:0;
    margin:auto; background: var(--light); -webkit-transition: all .3s ease; transition: all 0.3s ease; border-radius: 2px;}
.menu-button .menu-icon:before{ top:7px;}
.menu-button .menu-icon:after{ bottom:7px;}
.menu-button.is_open .menu-icon, .menu-button.is_open .menu-icon:before, .menu-button.is_open .menu-icon:after{  background: var(--dark_green);}
.menu-button.is_open { -webkit-transform: rotate(-180deg)}
.menu-button.is_open .menu-icon{ height:0; }
.menu-button.is_open .menu-icon:before{-webkit-transform: rotate(-45deg);    transform: rotate(-45deg);      width: 100%;   top: 0; bottom:0;}
.menu-button.is_open .menu-icon:after{-webkit-transform: rotate(45deg);    transform: rotate(45deg);      width: 100%;   top: 0; bottom:0;}

.over-content nav:before{ display: block; content:""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image:url(../images/menu-gb.jpg);}
.over-content nav{ padding:30px; -webkit-flex-direction: column; flex-direction: column;  -webkit-justify-content: flex-start; justify-content: flex-start; position: relative; -webkit-align-items: flex-start !important; align-items: flex-start !important; box-sizing: border-box; min-height: 100% }
.over-content nav li{ margin: 10px;}
.over-content nav a{ display: block; padding: 5px 0; margin: 5px 0; font-size: 18px; color: var(--dark_green);}

/***/
.acms_popup_wrapper .form{ max-width: 420px; box-sizing: border-box; padding: 0 15px;}
.acms_popup_wrapper {background-color: #E7EEE8; border-radius: 10px; background-image: url(../images/form-bg-v2.png); background-position: right top; background-size: 200%}
.acms_popup_wrapper .title-wrap .text{ font-size: 16px; }
.acms_popup_wrapper .title-wrap .icon{ height: 30px; background-size: 70px; }
.acms_popup_wrapper .form_row{ max-width: 340px; margin: auto; margin-bottom: 15px;}
.acms_popup_wrapper .form_row input{ width: 100%; background: #fff; border: none; border-radius:30px; padding: 10px 20px; box-shadow: 0 3px 6px 0 rgb( 0 0 0 /15%) }
.acms_popup_wrapper  .form-description{    font-size: 12px;text-align: center;margin-top: 30px}
.acms_popup_wrapper .form_row .button{ line-height: 1}
.acms_popup_wrapper .form_row .field-error{position: absolute; font-size: 12px;background: #ff7171;color: #fff;padding: 2px 10px;border-radius: 10px;top: calc(100% - 14px);right: 0; display: none}
.acms_popup_wrapper .form_row.checkbox .field-error{position: relative; background: none}
.acms_popup_wrapper .form_row .field-error.is-show{display: block}
.acms_popup_wrapper .result-message{ text-align: center; padding: 0 20px; max-width: 380px }
.acms_popup_wrapper .result-message .title{ font-weight: bold}
.acms_popup_wrapper .result-message p{ padding: 10px 0;}


/***/
.form-wrapper .__form-row{ padding: 10px 0}
.form-wrapper .__form-input input{ display: block; box-sizing: border-box; border: none; padding: 10px 20px; width: 100%}
.form-wrapper .__form-input input:focus{ background-color: var(--extralight)}

/***/
.textarea{ font-size: 16px; padding-bottom: 30px; max-width: 960px;  margin: auto}
.textarea p{ margin-bottom:10px; }
.textarea ol li, .page ul li, .page .ol .li, .page .ul .li { margin-bottom:7px; }

.develop .textarea {padding-bottom: 0}

section.page{ margin-bottom: 30px;}
/***/
section.welcome{ height: 100vh; min-height: 450px; padding-top: 60px; box-sizing: border-box; overflow: hidden}
.welcome-banner{ height: 100%;  background-repeat: no-repeat; background-size: cover; background-position: center;
    background-image: url(../images/welcome-mob-v2.jpg)}
.welcome-banner:after{ content: ""; position: absolute; top:0; left: 0; width: 100%; height: 100%; background: rgba(44, 39, 32, 0.65)}
.welcome-content{ height: 100%; z-index: 10; color: var(--extralight); padding-bottom:20%; box-sizing: border-box}
.welcome-subtitle{ font-size: 28px; margin-bottom: 10px; text-align: center}
.welcome-title{ margin-bottom: 10px}
.welcome-title h1{ font-size: 48px; line-height: 1; font-weight: normal; text-align: center}

.welcome-content .button-wrap{ margin-top: 20px;}
.welcome-banner.location{background-image: url(../images/banner-location-mob.jpg)}
.welcome-banner.archt{background-image: url(../images/baner-archt-mob.jpg)}
 
.welcome-section{ padding-top: 60px;}
.welcome-section .title{font-size: 42px; text-transform: none; color: var(--green)}

/***/
.benefits .title-wrap{ margin: 50px 0}
.benefits .benefits-items{ margin: 50px 0 40px 0;}
.benefits .benefits-item{ width: 180px; margin: auto }
.benefits .benefits-icon{width: 130px; height: 130px; margin: auto; line-height: 130px; text-align: center; border-radius: 50%; font-size: 68px; font-weight: bold;  color: var(--dark_green); background: var(--light_red)}
.benefits .benefits-title{text-align: center;font-size: 20px; line-height: 1; font-weight: bold; margin: 15px 0;}
.benefits .benefits-description{text-align: center;font-size: 14px; }
.benefits .benefits-description span{ display: block; position: relative; font-size: 13px; padding-bottom: 5px;  }
/**/
.benefits .embla__slide{opacity: 0.3; transition: opacity 0.8s ease; padding:0 10px !important}
.benefits .embla__slide.is-selected{opacity: 1}
/**/
.benefits.develop .benefits-icon{width: 150px; height: 150px;line-height: 150px; }
.benefits.develop .benefits-icon span{ display: block;font-size: 18px;height: 20px;line-height: 20px;position: absolute;width: 100%;top:23px; }
.benefits.develop .benefits-icon span:last-child{bottom: 23px;top:auto }

/***/
.content-box{}
.content-box .box-item.content{ background: var(--light_red)}
.content-box .box-content{ padding: 40px 15px}
.content-box .box-content-icon{ width: 40px; height: 40px;  background-repeat: no-repeat;
    background-position: left top; background-size: auto 100%; position: absolute; top:0; left: 0}
.content-box .box-content-title h2{ font-size: 28px; font-weight: bold; text-transform: uppercase; padding-left: 45px; line-height: 40px; margin: 0}
.content-box .box-content-text{ padding: 20px 0}
.content-box .button{ background: transparent; border: 1px solid var(--dark_green);  font-size: 15px; text-transform: none; width: 180px; border-radius: 4px; box-shadow: none}
.content-box .box-item.content.-green{ background: var(--light_green)}
/**/
._inner .content-box .box-content-text { padding-bottom: 0px;}
._inner .content-box .box-content-text p{ margin-bottom: 10px}
._inner .content-box .box-content-text p:last-child{ margin-bottom: 0px}


/***/
.area{ margin-bottom: 20px}
.area-galery{ max-width: 420px; margin: auto }
.box-galery-image{ background-repeat: no-repeat; background-position: center; background-size: cover; padding-top: 80%; margin-bottom: 20px;cursor: pointer}
.box-galery-image:before{ content: ''; position: absolute; display: block; top:0; left: 0; height: 100%; width: 100%;
    background: rgb(12 17 12); opacity: 0.60;    transition: opacity 0.6s ease;}
.box-galery-content{ position: absolute; left: 0; bottom: 20px; width: 100%; margin: auto; overflow: hidden; padding: 0 20px;
    color: var(--extralight); padding-right: 80px;     box-sizing: border-box; text-shadow: 0px 1px 2px #212d20}
.box-galery-title{  font-size: 20px; font-weight: bold; text-transform: uppercase}
.box-galery-text{ font-size: 15px; line-height: 1.1; text-shadow: 1px 0 2px black, 0px 1px 2px black, -1px 0 2px black, 0px -1px 2px black  }
.box-galery-count{ display: block; position: absolute; bottom: 0; right: 0; padding: 15px; background: var(--green);
    color: var(--extralight); font-weight: bold; cursor: pointer}


.zoom{ display: block; position: absolute; z-index: 100; width: 25px; height: 25px; top:15px; right: 15px; cursor: pointer;
    background-image: url(../images/fullscreen-icon.svg); background-position: center; background-size: 20px; background-repeat: no-repeat;}


.box-image-slider{height: 100%}
.box-image-slider .embla__viewport{ height: 100%}
.box-image-slider .embla__container{ height: 100%}
.box-image-slider .box-slider-item{ width: 100%; background-size: contain; background-repeat: no-repeat;background-position: center; flex: 0 0 100%;}
.box-image-slider .box-slider-item.cover{ background-size: cover;}
.box-image-slider .box-slider-item:after{ content: ''; position: absolute; display: block; top:0; left: 0; height: 100%;
    width: 100%; background: rgb(12 17 12); opacity: 0.20; transition: opacity 0.6s ease;}

.gallery-plans .box-galery-content{    z-index: 10;background: var(--dark_green); bottom: 0;right: auto;width: auto;padding: 20px;}
.gallery-plans .embla_navbutton{ position: absolute; width: 35px; height: 35px; top:50%; transform: translateY(-50%); transition: opacity 0.6s ease;
    border-radius: 50%;background: #e8f1eaad;box-shadow: 0 0 40px 0 #3041304f;cursor: pointer;}
.gallery-plans .embla_navbutton.hide{opacity: 0;}
.gallery-plans .embla__prev{ left: 20px; transform: rotate(180deg)}
.gallery-plans .embla__next{ right: 20px; }
.gallery-plans .zoom{ width: 40px; height: 40px; top:30px; right: 30px; background-size: 30px}

.gllery-plans {display: flex; flex-wrap: wrap; }
.gllery-plans .box-galery-image{ width: calc(50% - 10px); margin: 5px; padding-top: 50%;}
.gllery-plans .box-galery-image:before{   }

/**/
.simple-galery{ display: flex; flex-wrap: wrap; justify-content: space-between;}
.simple-galery .box-galery-image{ width: calc(50% - 7px); padding-top: 33%; margin-bottom: 15px}

/***/
.objects{}
.objects .object-item{ margin-bottom: 40px; max-width: 420px}
.objects .object-title{ font-weight: bold; font-size: 16px; padding: 10px; color: var(--extralight); background: var(--dark_green)}
.objects .object-title a{display: block; position: absolute;top: 0;bottom: 0;right: 10px; background: var(--yellow); color: var(--green); height: 26px;width: 26px; text-align: center;border-radius: 5px;margin: auto; font-size: 26px; line-height: 22px; transition: all 0.3s ease;}
.objects .object-title a:hover{ transform: scale3d(1.1, 1.1, 1)}

/***/
.docs{ max-width: 420px; margin:auto; margin-bottom: 40px; }
.docs .docs-content{ text-align: center; font-size: 18px}
.docs .box-content-button{ margin: 20px 0}
.docs .button{ margin: auto;}
.docs img{border: 1px solid #eee; width: 100%; max-width: 100%; height: auto}

/***/
.contacts .content-box{    border-top: 1px solid #5b795f;  padding-top: 40px;}
.contacts .contacts-content{ text-align: center; font-size: 18px; padding-bottom: 20px}
/***/
.scroll-screen{ position: absolute; bottom: 15px; left: 0; right: 0; margin: auto; width: 20px; z-index: 10 }
.scroll-screen svg{ display: block; width: 100%; height: auto}



.tpl_consult form .form_row input.value{ padding: 12px 15px }
.tpl_consult form .form_row.checkbox input{display: block; border: 1px solid #fff;background: rgb(255 255 255 / 20%);
    width: 22px;height: 22px;box-sizing: border-box;border-radius: 4px;flex-shrink: 0;flex-grow: 0; margin: 0 15px 0 0;padding: 0; position: relative; cursor: pointer}
.tpl_consult form .form_row.checkbox input:checked:after{ display: block; content: ""; position: absolute; height: 14px; width: 14px; background: #fff;border-radius: 2px; top: 0;left: 0;bottom: 0;right: 0;margin: auto;}
.tpl_consult form .form_row.checkbox label{ color: #fff}
.tpl_consult form .form_row.checkbox label a{ text-decoration: underline}
.tpl_consult form .form_row{ margin-bottom: 20px;}
.tpl_consult form .form_row .error{position: absolute;bottom: -9px;right: 0;left: auto}
.tpl_consult form .form_row .error span{padding: 2px 10px;background: #ff383b;color: #fff;border-radius: 4px;font-size: 12px;}



/***/
section.contact-form{background-color: var(--green);/* background-image: url(../images/form-bg.jpg);*/ background-repeat: no-repeat; background-size: cover; background-position: center; padding: 40px 0; color: var(--extralight)}
section.contact-form:before{content: ""; position: absolute; top:0; left: 0; width: 100%; height: 100%; background-image: url(../images/form-bg-v2.png);
    background-repeat: no-repeat; background-size: cover; background-position: right bottom;opacity: 0.3;}
.contact-form .__container{ max-width: 360px;}
.contact-form .contact-form-title{ font-size: 32px; font-weight: bold; line-height: 1}
.contact-form .contact-form-desc {  margin: 20px 0}
.contact-form .contact-form-desc p{ font-size: 16px; padding: 0; margin: 0}
.contact-form .form-description{margin-top: 20px; font-size: 11px; line-height: 1.2; opacity: 0.7;  border-top:1px solid var(--light); padding-top: 10px;}
.contact-form .form-description a{font-weight: bold; text-decoration: underline}
.contact-form .__form-input input{ border-radius: 30px; box-shadow: 0 0 4px -2px rgb(46 40 32)}
.contact-form .button{ width: 50%}


.acms_popup_wrapper .form_row.checkbox{ display: flex; flex-wrap: wrap}
.acms_popup_wrapper .form_row.checkbox input{display: block; border: 1px solid #fff;background: rgb(255 255 255 / 20%);
    width: 22px;height: 22px;box-sizing: border-box;border-radius: 4px;flex-shrink: 0;flex-grow: 0; margin: 0 15px 0 0;padding: 0; position: relative; cursor: pointer}
.acms_popup_wrapper .form_row.checkbox input:checked:after{ display: block; content: ""; position: absolute; height: 14px; width: 14px; background: #98ae8b;border-radius: 2px; top: 0;left: 0;bottom: 0;right: 0;margin: auto;}
.acms_popup_wrapper .form_row.checkbox label{ font-size: 12px; flex: 1;}
.acms_popup_wrapper .form_row.checkbox label a{text-decoration: underline}
.acms_popup_wrapper .form_row.checkbox  .error{ flex-basis: 100%; text-align: right}
.acms_popup_wrapper .form_row.checkbox  .error span{ display: inline-block;padding: 2px 10px; background: #ff7171;color: #fff;border-radius: 10px;font-size: 12px;}


.form-row  .error{ color: #ff9595; text-align: right}
.form-row.checkbox .error{ flex-basis: 100%}

.__form-row.checkbox{ display: flex; flex-wrap: wrap}
.__form-row.checkbox input{display: block; border: 1px solid #fff;background: rgb(255 255 255 / 20%);
    width: 22px;height: 22px;box-sizing: border-box;border-radius: 4px;flex-shrink: 0;flex-grow: 0; margin: 0 15px 0 0;padding: 0; position: relative; cursor: pointer}
.__form-row.checkbox input:checked:after{ display: block; content: ""; position: absolute; height: 14px; width: 14px; background: #fff;border-radius: 2px; top: 0;left: 0;bottom: 0;right: 0;margin: auto;}
.__form-row.checkbox label{ font-size: 12px; flex: 1;}

.__form-row  .error{ color: #ff9595; text-align: right}
.__form-row.checkbox .error{ flex-basis: 100%}



.__form-row.checkbox label{ color: #fff}
.__form-row.checkbox label a{ text-decoration: underline}





.__image-bg.map{ padding-top: 65%; }

/***/
.__footer{ background-color: #212D20;  }
.__footer .__container{ padding: 20px 0}
.__footer * {color:var(--light); text-align: center;  }
.__footer p { margin: 5px; }
.footer-logo{display:block; height: 50px; width: 120px; background-image: url(../images/ssk-logo.svg);   background-position: center; background-repeat: no-repeat; background-size: contain}
.footer-item{ margin: 10px 0;}
.footer-item-links{   text-align: center; padding: 10px 0;}
.footer-item-links a{ display: inline-block; width: 26px; height: 26px; background-repeat: no-repeat; background-position: center; background-size: 24px; margin:  0 10px; }
.footer-item-links .telegram{ background-image: url(../images/telegram-icon.svg)}
.footer-item-links .pdf{ background-image: url(../images/pdf-icon.svg)}

.privacy-info{ margin-top: 10px; padding-top: 10px; border-top: 1px solid rgb(197 195 176 /30%);
    font-size: 11px;line-height: 1.3;text-align: justify; opacity: 0.7}
.privacy-info a{ font-weight: bold; text-decoration: underline}

/***/
.embla {position: relative;   margin-right: auto;}
.embla__viewport {overflow: hidden;width: 100%;}
.embla__viewport.is-draggable {cursor: move;cursor: grab;}
.embla__viewport.is-dragging {cursor: grabbing;}
.embla__container {display: flex;user-select: none;-webkit-touch-callout: none; -khtml-user-select: none;-webkit-tap-highlight-color: transparent; }
.embla__slide {position: relative; padding-left: 10px;}
.events-slide-wrap:first-child { padding-left: 15px}
.events-slide-wrap:last-child { padding-right: 15px}
.embla__slide__inner {position: relative;overflow: hidden; }


/***/
.b24-widget-button-icon-container{ background: var(--green)}

.map{ height: 300px;filter: saturate(0.7);}

.privacy-links{ display: flex; justify-content:center;   flex-wrap: wrap; margin: 20px 0}
.privacy-links a{ display: block; text-decoration: underline; margin-right: 20px; line-height: 2}

.text p{ margin-bottom: 7px;}
.form-description  a{ text-decoration: underline; }


@media only screen and (min-width: 480px) {

    .benefits .benefits-item {width: 240px;}

    .textarea{ text-align: justify }
}

@media only screen and (min-width: 600px) {

    header .header-item-logo {width: 150px; height: 50px;}
    header .header-item-phone {flex: 1;justify-content: flex-end;display: flex;margin-right: 40px;}
    header .header-item-phone a {background-size: 18px;font-size: 18px;}

    /***/
    .welcome-content{ padding-bottom: 10%  }
    .welcome-subtitle{ font-size: 32px}
    .welcome-title{ margin-bottom: 40px}
    .welcome-title h1{ font-size:56px; }


}


@media only screen and (min-width: 768px) {

    .__side-padding{ padding: 0 20px;}


    /***/
    .title-wrap .text{ font-size: 20px; padding: 0 30px;}
    .title-wrap .subtitle {font-size: 26px;}

    /***/
    .welcome-section{ padding-top: 70px;}
    .welcome-section .title{font-size: 56px; }

    /***/
    .benefits .benefits-items{ margin: 70px 0 50px 0;}
    .benefits .benefits-item {width: 160px;}
    .benefits .embla__container{ max-width: 770px; margin: auto}
    .benefits .embla__slide{ flex: 1; opacity: 1}

    /***/
    .content-box .box-content{ padding-top: 20px}
    .content-box .box-item{ width: 50%}
    .content-box .box-content-icon{ position: relative; margin-bottom: 20px}
    .content-box .box-content-title h2{ padding-left: 0}
    .content-box .box-item .__image-bg{ height: 100%; padding-top: 0}
    .content-box .-revers .box-item.content{ order: 2 }

    ._inner .content-box .box-content { padding-top: 40px; padding-bottom: 60px }
    ._inner .content-box.map .box-content { padding-top: 10px; padding-bottom: 10px}


    /***/
    .area-galery{ max-width:none;  }
    .box-galery-image{ padding-top: 0; height: 300px;   }
    .area-galery .__adapt > div:first-child{ padding-right: 20px; box-sizing: border-box}
    .box-galery-title{  font-size: 22px; margin-bottom: 5px}
    .box-galery-text{ font-size: 16px; }
    .box-galery-text.subtitle{ font-size: 18px; }

    /**/
    .gllery-plans .box-galery-image{ width: calc(33.33% - 20px); margin: 10px; height: 0;
        padding-top: 33%;}

    /**/
    .simple-galery{ display: flex; flex-wrap: wrap; justify-content: space-between;}
    .simple-galery .box-galery-image{ height: 0; width: calc(33.33% - 10px); padding-top: 22%; margin-bottom: 20px}

    /***/
    .textarea{  font-size: 18px }

    /***/
    .objects-wrap{ max-width: 960px; margin: auto}
    .objects .object-item{ margin-bottom: 40px; max-width: none; width: calc(50% - 20px)}

    /***/
    .docs{ max-width: 1160px;}
    .docs .docs-content{ height: 100%; display: flex; flex-direction: column; justify-content: center; text-align: left;  padding-right: 10px }
    .docs .button{ margin: 0;}

    /***/
    .contacts .contacts-content{ text-align:left; font-size: 20px; padding-bottom: 20px}
    .contacts .content-box{ padding-bottom: 40px}


    /***/
    .__footer .footer-item * {text-align: left; }
    .footer-logo{ margin-right: 30px;}
    .footer-item-text{ margin-right: 30px; flex: 1}
    .footer-item-text-about p{ max-width: 360px}
    .footer-item-social{ position: absolute; right: 0;bottom: 0}
    .footer-copyright{ margin: auto; text-align: center;  }
    .__footer p{ text-align: left}
    /***/
    section.contact-form:before{left: -200px;}
    .contact-form .contact-form-text{ flex: 1}
    .contact-form .contact-form-title {font-size: 36px;}
    .contact-form .contact-form-desc p {font-size: 18px;}
    .contact-form .__container{ max-width: none}
    .contact-form .form-wrapper{ width: 320px;}
    .contact-form .form-description{ font-size: 13px; text-align: center}
    .contact-form .contact-form-desc { margin-bottom: 0;}

    .map{ height: 100%;}


    .privacy-links{ justify-content:flex-start;}

}

@media only screen and (min-width: 1024px) {

    .__side-padding{ padding: 0 30px;}
    .__viewport{ margin-left: 220px;}

    .__header{ width: 220px; bottom: 0; margin:0; overflow:auto; box-shadow: 0 4px 6px 0px rgb(38 32 24);scrollbar-width: thin;
        scrollbar-color: rgb(0 0 0 / 30%) transparent;}
    .__header::-webkit-scrollbar {height: 10px;width: 10px;background-color: transparent ;}
    .__header::-webkit-scrollbar-track {background: transparent;}
    .__header::-webkit-scrollbar-thumb {background-color: rgb(0 0 0 / 30%)  ;border-radius: 20px;border: 1px solid transparent;width: 3px;}
    /*
    main{ display: flex}
    .__header{ position: relative}
    .__viewport{ margin-left: 0px; flex: 1}
*/
    /***/
    .title-wrap .text{ font-size: 22px; }
    .title-wrap .text p{ margin-bottom: 15px}



    header,
    header .header,
    header .__container,
    header .__side-padding,
    header .header-items{ height: 100%}

    /***/
    header .header-items{ flex-direction: column}
    header .header-item-logo {width: auto; height: auto;}
    header .header-logo{ background-image: url(../images/logo-light.svg); margin: auto;width: 100px;display: block;background-position: center;height: 180px;}
    header .header-item-button{ display: block; margin: auto; padding-bottom: 20px; flex: 0; order: 3}
    header .header-item-button .button{ width: 180px; background: var(--yellow); color: #000}
    header .header-item-phone{ margin: auto; padding-bottom: 20px; flex: 0; order: 2}
    header .header-item-phone a{ background-image: url(../images/phone-ico.svg); padding-left: 30px; font-size: 16px; font-weight: bold}
    header .header-item-menu{display: block; flex: 1; }
    header .menu-items{ list-style: none; padding: 0; margin: 0; display: flex; align-items: center; flex-direction: column; flex:1}
    header nav{margin: 15px 0; position: relative}

    header nav:before { display: block; content: ""; position: absolute; height: 1px; width: 80px; left: 0; right: 0;
        margin: auto; top:-7px; background: var(--light); opacity: 0.3 }
    header nav:after{ top: auto; bottom: -7px}
    header .menu-items a{ color: var(--light); font-size: 14px;   text-decoration: none; cursor: pointer; position: relative; line-height: 1.2;
        text-align: center;  display: inline-block; padding: 5px 10px; margin:  auto; border: 1px solid rgb(233 222 163 / 0%); border-radius: 30px;
        transition: all 0.3s ease;}

    header .menu-items a:after { display: block; content: ""; bottom: 1px; left: 50%; width: 0; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; position: absolute; height: 1px; background-color: var(--light); opacity: 0;  margin: auto; left: 0;right: 0;}
   /* header .menu-items a:hover:after {width: calc(100% - 20px);opacity: 1;}*/

    header .menu-items a.current{border: 1px solid rgb(233 222 163 / 20%); }

    header .menu-items a:hover{border: 1px solid rgb(233 222 163 / 50%);}


    /***/
    section.welcome{ padding-top: 0px;}
    .welcome-banner{ background-image: url(../images/banner-home-mob.jpg)}
    .welcome-banner.location{background-image: url(../images/banner-location.jpg)}
    .welcome-banner.archt{background-image: url(../images/baner-archt.jpg)}

    .welcome-section{ padding-top: 20px;}

    /***/
    .content-box .box-content{ padding: 30px;}
    /***/
    .contact-form-wrapper{ max-width: 960px; margin: auto}

    /***/
    .__footer .__container{ padding: 30px 0}
    .privacy-info{ font-size: 13px;}

    .acms_popup_wrapper .form_row{ padding: 0 !important;}

}

@media only screen and (min-width: 1280px) {
    .__side-padding{ padding: 0 60px;}
    .__viewport{ margin-left: 240px;}
    .__header{ width: 240px;}

    .title-wrap .subtitle {font-size: 32px;}

    .textarea p { padding-bottom: 15px }

    /***/
    header .header-logo{ width: 140px;height: 220px;}
    header .header-item-phone a{  font-size: 18px; }
    header .menu-items a{font-size: 16px; margin: 3px auto}

    /***/
    .welcome-subtitle{ font-size: 42px}
    .welcome-title h1{ font-size:72px; }

    .welcome-section .title{font-size: 72px; }

    /***/
    .benefits .benefits-items{ margin: 70px 0 70px 0;}
    .benefits .benefits-item { width: auto; padding: 0 15px; }
    .benefits .benefits-icon{width: 180px; height: 180px; line-height: 180px; font-size: 80px; }

    .benefits .embla__container{ max-width: 80%; }
    .benefits .benefits-title{font-size: 22px;}
    .benefits .benefits-description{font-size: 16px; }

    .benefits.develop .embla__container {max-width: 1100px;}
    .benefits.develop .benefits-icon{width: 180px; height: 180px;line-height: 180px; }
    .benefits.develop .benefits-icon span{top:30px; font-size: 20px }
    .benefits.develop .benefits-icon span:last-child{bottom: 30px;}



    /***/

    .content-box .box-content{ padding: 20px 40px; min-height: 420px; display: flex; justify-content: center; flex-direction: column; padding-left: 60px;}
    .content-box .box-content-title h2{ font-size: 32px;}
    .content-box .box-content-text {font-size: 18px;}



    /***/
    .box-galery-content { bottom: 40px}
    .box-galery-text.subtitle{ font-size: 20px; }
    .box-galery-image:hover:before{ opacity: 0.2;}

    .gllery-plans .box-galery-image{ width: calc(25% - 20px); margin: 10px; height: 0;padding-top: 25%;}
    .gllery-plans .box-galery-content {bottom: 30px;}
    .gllery-plans .box-galery-text.subtitle {font-size: 18px;}


    /***/
    section.contact-form{ padding: 60px 0}
    section.contact-form:before{left: -300px;background-size: 960px; background-position: left center}
    .contact-form .contact-form-title {font-size: 42px;}
    .contact-form .contact-form-desc p {font-size: 22px;}
    .contact-form .form-wrapper{ width: 360px;}
    .contact-form .form-description{margin-top: 30px; padding-top: 20px}


    .textarea {padding-bottom: 50px}
    .develop .textarea {padding-bottom: 0}

    /***/
    .docs .docs-content{ font-size: 22px; padding-right: 20px }

    /***/
    .objects .object-title{ font-size: 20px; padding: 13px}
    .objects .object-title a { right: 13px; height: 30px; width: 30px; line-height: 27px}

    .__image-bg.map{   background-size: 100% auto; background-color: #e6e7e9}


    /***/
    .__footer .__container{ padding: 40px 0}

}


@media only screen and (min-width: 1600px) {
    .__side-padding{ padding: 0 100px;}
    .__viewport{ margin-left: 300px;}
    .__header{ width: 300px;}

    .title-wrap{ margin: 60px 0}

    /***/
    header .header-item-button .button{ width: 210px; }
    header .header-item-phone a{  font-size: 20px; }
    header .menu-items a{font-size: 18px; margin: 3px auto}

    /***/
    .welcome-subtitle{ font-size: 56px}
    .welcome-title h1{ font-size:96px; }

    /***/
    .content-box .box-content{min-height: 500px; padding-left: 100px; padding-right: 80px}
    .content-box .box-content-title h2{ font-size: 48px; line-height: 1}

    /***/
    .area{ margin-bottom: 60px}
    .box-galery-image{margin-bottom: 30px}
    .area-galery .__adapt > div:first-child{ padding-right: 30px;}
    .box-galery-title{  font-size: 24px; margin-bottom: 10px}
    .box-galery-text{ font-size: 16px; }

    /***/
    section.contact-form:before{left: -100px; }

    .textarea {padding-bottom: 70px}

}

@media only screen and (min-width: 2000px) {

    main{ display: flex}
    .__viewport{ margin-left: 0px; flex: 1}
    .__header{ position: relative; overflow: unset;}

    header{ position: sticky; top:0; height: auto}

}



/*** animate ***/
.__animate{
    -webkit-transition:  all  0.5s  ease, opacity 1s  ease;
    transition:  all  0.5s  ease, opacity 1s  ease;
}
.__animate.fadeIn{
    opacity:0;
}

.__animate.slideUp {
    transform:translateY(40px);
    -webkit-transform:translateY(40px);
}
.__animate.slideLeft {
    transform:translateX(-60px);
    -webkit-transform:translateX(-60px);
}
.__animate.slideRight {
    transform:translateX(60px);
    -webkit-transform:translateX(60px);
}



.__animate.fadeIn.run{
    opacity:1;
}

.__animate.slideUp.run{
    transform:translateY(0px);
    -webkit-transform:translateY(0px);
}


.__animate.slideLeft.run{
    transform:translateX(0px);
    -webkit-transform:translateX(0px);
}
.__animate.slideRight.run {
    transform:translateX(0px);
    -webkit-transform:translateX(0px);
}

@media only screen and (min-width: 1280px) {

    .__animate.slideUp {
        transform:translateY(80px);
        -webkit-transform:translateY(80px);
    }
}

@media only screen and (max-width: 1023px) {
    .__animate.fadeIn-before1024{
        opacity:0;
        transform:translateY(150px);
        -webkit-transform:translateY(150px);
    }

    .__animate.slideUp-before1024 {
        transform:translateY(150px);
        -webkit-transform:translateY(150px);
    }

    .__animate.fadeIn-before1024.run{
        opacity:1;
    }

    .__animate.slideUp-before1024.run{
        transform:translateY(0px);
        -webkit-transform:translateY(0px);
    }
}

@media only screen and (min-width: 1024px) {
    .__animate.fadeIn-from1024{
        opacity:0;
        transform:translateY(150px);
        -webkit-transform:translateY(150px);
    }

    .__animate.slideUp-from1024 {
        transform:translateY(150px);
        -webkit-transform:translateY(150px);
    }

    .__animate.fadeIn-from1024.run{
        opacity:1;
    }

    .__animate.slideUp-from1024.run{
        transform:translateY(0px);
        -webkit-transform:translateY(0px);
    }
}

/**********/
/*
.anibg{position: absolute;top: 50%;left:50%;width:3000px; height: 3000px; transition: all 0.8s ease-out; border-radius: 50%;

    transform: translate3d(-50%, -50%, 0); z-index: 1000;
    animation: flash 1.5s forwards ease-in-out; animation-delay: .5s;
    background: rgb(20 13 6 / 0%);
    opacity: 1;
    box-shadow: inset 0px 0 50px 1500px rgb(33 45 33 / 100%);
    will-change: box-shadow;
}
*/

.anibg{position: absolute;top:0%;left:0%;width:100%; height: 100%; transition: all 0.8s ease-out;
background:  rgb(33 45 33 / 100%);
    animation: flash 1s forwards ease-in-out; animation-delay: .5s;
    opacity: 1;
    z-index: 10;

}

@keyframes flash {
    from {  /*box-shadow: inset 0px 0 50px 1500px  rgb(33 45 33 / 100%)*/ opacity: 1; }
    to { /*box-shadow: inset 0px 0 50px 0px rgb(33 45 33 / 40%); z-index: 0; */ opacity: 0; z-index: 0;}
}


.fancybox__nav{ position: static !important}


@media only screen and (min-width: 2300px) {

}

.b24-window-panel-pos-right > div{ position: static }