/* Настройки шаблона */
:root, body {font-size: 14px;}
/* @media screen and (min-width: 576px) {
	:root, body {font-size: 14px;}
}
@media screen and (min-width: 768px) {
	:root, body {font-size: 14px;}
} */
@media screen and (min-width: 992px) {
	:root, body {font-size: 16px;}
}
@media screen and (min-width: 1200px) {
	:root, body {font-size: 18px;}
}

/* Элементы */
html {width: calc(100% + calc(100vw - 100%)); overflow-x: hidden;}
body {display: flex; flex-direction: column; margin: 0 auto; max-width: 1920px; font-family: 'Montserrat', sans-serif; color: #000; outline: 1px solid #ddd; overflow-x: hidden; scroll-behavior: smooth;}
#middle main  {overflow: inherit;}
*::before {pointer-events: none;}
@media (min-width: 1820px) {.container {max-width: 1820px;}}
@media (min-width: 1920px) {.bg-color::before {margin-left: -960px;}}

h1, .h1 {font-weight: 500; font-size: 5.5rem; line-height: 117%; margin: 0;}
h2, .h2 {font-weight: 500; font-size: 1.833rem; line-height: 56px; margin: 0; text-transform: uppercase;}
h3, .h3 {font-weight: 400; font-size: 1.333rem; line-height: 150%; margin: 0;}
h3.s1, .h3.s1 {font-weight: 600; font-size: 1.333rem; line-height: 150%; margin: 0;}
h4, .h4 {font-weight: 500; font-size: 1.166rem; line-height: 150%; margin: 0;}
h5, .h5 {font-weight: 500; font-size: 0.777rem; line-height: 150%; margin: 0;}
p, .p {font-weight: 400; font-size: 1rem; line-height: 150%; margin: 0;}
p.s1, .p.s1 {font-weight: 500; font-size: 1rem; line-height: 150%; margin: 0;}
p.s2, .p.s2 {font-weight: 600; font-size: 1rem; line-height: 150%; margin: 0;}

a {text-decoration: none; margin: 0;}

.scroll-up {display: flex; justify-content: center; align-items: center; z-index: 100;}

@media (max-width: 576px) {
	#logo {width: 70px;}
	.container {padding: 0 15px;}
	.mod-for-whom {margin-bottom: 42px;}
	.mod-for-whom .title,
	.mod-service .title {text-align: center;}
	.mod-fos .btn {width: 100%;}
}

/* * {outline: 1px solid red;} */

/* Общие классы */
.modal-title {font-size: 22px;}
.modal-body input {border: none; outline: none; border-radius: 0; border-bottom: 1px solid #163818; padding: 10px; margin-bottom: 22px;}
.modal-body input:focus {box-shadow: none; border-color: #163818;}
.modal-body input::placeholder {color: #000}
.modal-body .btn {width: 100%; margin-top: 20px;}

#more .modal-dialog .modal-content .modal-header {display: none !important;}
#more .fulltext {display: block !important;}
#more .modal-body {padding: 2rem 1rem !important;}
#more .modal-content {border-radius: 35px !important;}
.lightbox {display: flex; flex-direction: column-reverse;}

#price .modal-dialog .modal-content .modal-header {display: none !important;}
#price .fulltext {display: block !important;}
#price .modal-content {border-radius: 35px !important;}
#price .modal-body {padding: 2rem 1rem !important;}
#price .modal-body ul {list-style-type: none;}

/* Переопределения Bootstrap */
.btn {font-weight: 600; font-size: 1rem; line-height: 100%;}
.btn-primary {color: #fff; transition: .3s; background: #163818; border-color: #163818; padding: 21px 32px; border-radius: 30px;}
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {background: #163818; transition: .3s; opacity: .8; border-color: #163818; box-shadow: none;}
.btn-outline-primary {border: 2px solid #163818; border-radius: 30px; color: #163818 !important; padding: 21px 32px;}
.btn-outline-primary:hover {background: transparent; opacity: .8; border-color: #163818;}
.btn-light {padding: 21px 32px; color: #577759; border-radius: 30px;}
.text-primary {color: #163818 !important}

/* Шапка */
header {background: #E2EEE3;}
header #top_menu {align-items: center; justify-content: space-between; width: 100%; flex-wrap: wrap;}
header ul.mod-list {margin: 0 auto;}
header ul.mod-list li {font-weight: 500; font-size: 0.777rem; line-height: 150%;}
header ul.mod-list li a {color: #163818}
header ul.mod-list li:not(:last-child) {margin-right: 40px;}
header .wrap-info-header {margin-top: -6px;}
header .wrap-info-header a {font-weight: 600; font-size: 1rem; line-height: 100%; color: #163818; margin-right: 22px; font-family: sans-serif;}
@media screen and (max-width: 1820px) {
	header #top_menu .moduletable {margin: 20px auto;}
}
@media (max-width: 1400px) {
	header ul.mod-list {justify-self: center;}
	header ul.mod-list li {margin: 10px auto;}
}
@media (max-width: 1200px) {
	header {position: fixed!important; top: 0; width: 100%;}
	#center {padding: 158px 15px 0;}
}
@media (max-width: 768px) {
	header ul.mod-list {flex-direction: column;}
	header ul.mod-list li:not(:last-child) {margin-right: 0;}
	header ul.mod-list li {margin: 10px; text-align: center;}
}
@media (max-width: 576px) {
	#center {padding: 77px 15px 0;}
}


/* Подвал */ 
footer .footer_items {padding-top: 40px;}
footer .footer_items svg {margin-right: 16px;}
@media (max-width: 992px) {
	footer .footer_items .col-lg-3 {text-align: center;}
	footer .footer_items .col-lg-3 .d-flex {justify-content: center;}
}

@media (max-width: 576px) {
	footer .footer_items .col-lg-3 {text-align: start;}
	footer .footer_items .col-lg-3 .d-flex {justify-content: start;}
}

#author {padding: 16px 0; border-top: 1px solid #000; margin-top: 50px;}
#author a {transition: .4s;}
#author a:hover {color: #dc3545 !important}
@media (max-width: 992px) {
	#author  .d-flex {flex-wrap: wrap;}
	#author  .d-flex div {margin: 20px auto; text-align: center;}
}

/* Модули */
.mod-bugh {position: relative;}
.mod-bugh::before {background: #E2EEE3;}
.mod-bugh .images {position: absolute; right: 50%; margin-right: -980px; width: max-content; bottom: -20px;}
.mod-bugh .wrap-title {margin-bottom: 72px; color: #4F4F4F; padding-top: 40px;}
.mod-bugh .wrap-title-h2 {margin-bottom: 80px; margin-top: auto; color: #4F4F4F}
@media screen and (max-width: 1820px) {
	.mod-bugh .h1 {font-size: 4rem;}
	.mod-bugh .images {width: 720px; margin-right: -890px;}
}
@media screen and (max-width: 1620px) {   
	.mod-bugh .images { width: 630px; bottom: -20px; }
} 
@media screen and (max-width: 1500px) {
	.mod-bugh .images { width: 590px; bottom: -20px; margin-right: -790px; }
}
@media screen and (max-width: 1400px) {
	.mod-bugh .images {width: 600px;bottom: -20px;margin-right: -590px;}
}
@media screen and (max-width: 1200px) {
	.mod-bugh .h1 {font-size: 3rem;}
	.mod-bugh .images2 {width: 200px; height: 200px;}
}
@media screen and (max-width: 992px) {
	.mod-bugh .images {width: 520px; margin-right: -510px;}
} 

@media screen and (max-width: 768px) {
	.mod-bugh .images { position: static; width: 100%; }
	.mod-bugh .wrap-title .h1 {font-family: 'Raleway'; font-style: normal; font-weight: 500; font-size: 16.1286px; line-height: 117%; text-transform: uppercase; color: #333333;}
	.mod-bugh .wrap-title-h2 .h2 {font-family: 'Raleway'; font-style: normal; font-weight: 500; font-size: 14px; line-height: 150%; text-transform: uppercase; color: #333333;}
	.btn-green {font-family: 'Raleway'; font-style: normal; font-weight: 600; font-size: 13px; line-height: 130%; color: #FFFFFF; background: #577759; text-align: center; border-radius: 300px; padding: 18px 60px 18px 45px; margin-top: 50px; margin-bottom: 40px; }
	.btn-green .text {position: relative; width: max-content; margin: auto;}
	.btn-green .text::after {content: url('/images/modules/mod-bugh/004.svg'); width: 15px; height: 15px;right: -20px; top: 0; bottom: 0;margin: auto; position: absolute; }
} 

.mod-service {padding-top: 133px; padding-bottom: 100px;}
.mod-service .h2 {margin-bottom: 40px;}
.mod-service .wrap {background: #F2F2F2; border-radius: 30px; padding: 24px; min-height: 366px;}
.mod-service .wrap .title {color: #163818; margin-bottom: 8px;}
.mod-service .wrap .introtext {color: #828282;}
.mod-service .wrap .btn {margin-top: auto; width: max-content;}
.mod-service .service-title {position: relative; margin-bottom: 40px;}
.mod-service .service-title::before {position: absolute; content: ''; bottom: -10px; left: 0; right: 0; height: 20px; background: #E2EEE3; border-radius: 15px; left: 50%; transform: translateX(-50%); width: 65%}
@media screen and (max-width: 576px) {
	.mod-service .service-title::before { width: 100%; }
	.mod-service .h1 {width: max-content; font-size: 3rem; margin: auto; margin-bottom: 40px;}
}
@media screen and (max-width: 576px) {

}
@media screen and (max-width: 992px) {
	.mod-service .h2 {margin-bottom: 40px; line-height: unset; text-align: center;font-family: 'Raleway'; font-style: normal; font-weight: 500; font-size: 16px; line-height: 150%; text-transform: uppercase;}	
	.mod-service .wrap {min-height: max-content;}
	.mod-service .wrap .btn {margin-top: 40px; width: 100%;}
}

.mod-for-whom .title {margin-bottom: 40px;}
@media screen and (max-width: 1200px) {
	.mod-for-whom {margin-bottom: 124px;}
	.mod-for-whom .row {justify-content: center;}
	.mod-for-whom .wrap {text-align: center;}
}

.mod-consultation {padding-top: 80px; padding-bottom: 80px; position: relative; z-index: 0; margin-bottom: 180px;}
.mod-consultation::before {background: url('/images/modules/mod-consultation/001.jpg') center no-repeat; background-size: cover;}
.mod-consultation .title {margin-bottom: 40px;}
.mod-consultation .introtext {margin-bottom: 38px;}
.mod-consultation .btn {width: max-content;}
.mod-consultation .images {position: absolute; right: 50%; bottom: 0; margin-right: -50vw; width: max-content; z-index: 2; pointer-events: none;}
.mod-consultation .images2 {position: absolute; right: 50%; margin-right: -50vw; z-index: 1; top: 25%; transform: translateY(-50%); max-width: unset; width: 100vw; pointer-events: none;}

@media screen and (max-width: 1820px) {
	.mod-consultation .images2 {top: 30%;}
}
@media screen and (max-width: 1620px) {
	.mod-consultation .images2 {top: 35%;}	
	.mod-consultation .text {position: relative; z-index: 2;}	
}
@media screen and (max-width: 1400px) {
	
}
@media screen and (max-width: 1200px) {
	.mod-consultation .images {width: 70%;}	
	
}
@media screen and (max-width: 576px) {
	.mod-consultation .title {white-space: nowrap;}	
	.mod-consultation .images {width: 90%;}	
	.mod-consultation {margin-bottom: 40px; padding-top: 40px; padding-bottom: 60px;}
	.mod-consultation ~ button {margin-bottom: 100px;}
	.mod-consultation .images { margin-right: -62vw; }
	.mod-consultation .title {font-family: 'Raleway'; font-style: normal; font-weight: 600; font-size: 14px; line-height: 150%; text-transform: uppercase; color: #333333; margin-bottom: 16px;}
	.mod-consultation .images2 {top: 50%;width: 100%;}
}
@media screen and (max-width: 350px) {
	.mod-consultation .images2 {top: 50%;width: 200%;}
}

.mod-stoks {margin-bottom: 177px;}
.mod-stoks .wrap {padding: 53px; background: linear-gradient(253.1deg, #709D73 30.85%, rgba(112, 157, 115, 0.52) 137.03%); border-radius: 15px; color: #fff; transition: .3s;}
.mod-stoks .wrap .title {margin-bottom: 62px; text-transform: none;}
.mod-stoks .wrap .introtext {margin-bottom: 40px; padding-bottom: 40px; position: relative;}
.mod-stoks .wrap .introtext::before {content: ''; position: absolute; width: 80%; height: 1px; background:#688B6A; bottom: 0; left: 50%; transform: translateX(-50%);}
@media screen and (max-width: 576px) {
	.mod-stoks {margin-bottom: 82px;}
}

.mod-calc {margin-bottom: 160px;}
/* .mod-calc .title {margin-bottom: 44px;} */
.mod-calc .wrap {background: #709D73; border-radius: 30px; padding: 74px 62px 56px 40px; position: relative;}
.mod-calc .wrap .images {position: absolute; bottom: -30%; width: max-content; pointer-events: none; left: 40%;}
.mod-calc .wrap ul {list-style: none; color: #fff; padding: 0;} 
.mod-calc .wrap ul li {margin-bottom: 24px; position: relative; padding-left: 60px;}
.mod-calc .wrap ul li::before {content: url('/images/modules/mod-calc/001.png'); position: absolute; top: 50%; transform: translateY(-50%); left: 0;}
#price .table td {padding: 0 10px 0 0;}

@media (max-width: 992px) {
	.mod-calc .row {flex-direction: column-reverse;}
	.mod-calc .rangeSliderFirst {margin-top: 40px;}
	.mod-calc .wrap .images { position: absolute; bottom: -15%; width: 40%; pointer-events: none; left: unset; right: -10%; }
	.mod-calc .h2 {color: #fff; line-height: unset;}
	.mod-calc .wrap {padding: 34px 30px 16px 30px;}
	.mod-calc .btn-primary {font-size: 18px; margin-top: 70px;}
}

.mod-reviews {margin-bottom: 100px;}
.mod-reviews .main-title {margin-bottom: 39px;}
.mod-reviews .item .wrap-title {margin-bottom: -60px;}
.mod-reviews .item .wrap-title .title {margin-left: 33px;}
.mod-reviews .item .wrap-title img {margin-right: 21px; width: 115px; height: 115px; object-fit: contain;}
.mod-reviews .item .fulltext {background: #FFFFFF; box-shadow: 5px 6px 40px rgba(103, 103, 103, 0.09); border-radius: 15px; padding: 75px 32px 20px 33px;}

.mod-help {margin-bottom: 155px;}
@media (max-width: 1200px) {
	.mod-help {flex-direction: column-reverse; margin-bottom: 16px;}
	.mod-help img {margin-top: 32px;margin-bottom: 32px; width: 100%;}
}

.mod-diplom {margin-bottom: 150px;}
.mod-diplom .main-title {margin-bottom: 39px;}
.mod-diplom .owl-stage {display: flex; align-items: center;}
.mod-diplom .item img {max-width: 420px; max-height: 548px; filter: grayscale(1); transition: .4s;}
.mod-diplom .item img:hover {filter: grayscale(0);}

.mod-provide {position: relative; padding-bottom: 100px;}
.mod-provide::before {background: url('/images/modules/mod-provide/001.jpg'); background-size: cover;}
.mod-provide .fulltext {background: #FFFFFF; border-radius: 30px; padding: 48px 24px;}
.mod-provide .images {position: absolute; right: 50%; bottom: 0; margin-right: -50vw; width: max-content; pointer-events: none;}
.mod-provide .images2 {position: absolute; left: 50%; bottom: 0; margin-left: -50vw; width: max-content; pointer-events: none; top: 0;}
.mod-provide video {border-radius: 30px; position: relative; z-index: 1;}
@media (max-width: 1650px) {
	.mod-provide .images { margin-right: -60vw; }
}
@media (max-width: 1400px) {
	.mod-provide .images { margin-right: -70vw; bottom: -70px;}
}
@media (max-width: 1200px) {
	.mod-provide .images { margin-right: -75vw; }
	.mod-provide .images2 {display: none;}
}
@media (max-width: 992px) {
	.mod-provide .images {display: none;}
	.mod-provide .h2 {line-height: unset;}
	.mod-provide .fulltext {background: none; padding: 0;}
}

@media (max-width: 576px) {
	.mod-provide video {width: 100%;}
	.mod-stoks .wrap {padding: 32px 15px;}
}

@media (max-width: 425px) {
	.mod-reviews .item .wrap-title {margin-bottom: -20px;}
	.mod-reviews .item .fulltext {padding: 40px 16px;}
}

.mod-map {position: relative;}
.mod-map .wrap {background: #FFFFFF; border-radius: 30px; padding: 24px 32px; position: absolute; top: 50%; transform: translateY(-50%); right: 5%;}
.mod-map .wrap a {color: #000 !important}
@media (max-width: 1200px) {
	.mod-map .wrap{position: static; top: unset; transform: unset; right: unset; border-radius: unset;}
	.mod-map iframe {pointer-events: none;}
	.mod-map {flex-direction: column-reverse; display: flex;}
}

.mod-fos {padding-bottom: 60px; margin-top: -20px;}
.mod-fos::before {background: url('/images/modules/mod-fos/001.jpg') center no-repeat;}
.mod-fos .wrap {background: #709D73; border-radius: 30px; padding: 48px; margin-top: -60px;}
.mod-fos .wrap-input {display: flex; flex-direction: column; max-width: 376px;}
.mod-fos .wrap-input input {background: #FFFFFF; border-radius: 30px; padding: 17px 24px; outline: none; border: none;}
.mod-fos .wrap-input label {margin-bottom: 10px; font-weight: 500; font-size: 16px; line-height: 150%}
@media (max-width: 1400px) {
	.mod-fos::before { margin-right: -54vw; }
}
@media (max-width: 1200px) {
	.mod-fos::before { display: none; }
}
@media (max-width: 576px) {
	.mod-fos .wrap {padding: 32px 18px;}
}

/* Адаптация */

.irs-single, .irs-min, .irs-max {display: none !important;}
.irs--flat .irs-bar {background-color: #577759 !important;}
.irs--flat .irs-handle>i:first-child {position: absolute; display: block; top: -10px !important; left: 50%; width: 38px !important; height: 38px !important; margin-left: -18px !important; background-color: #fff !important; border: 1px solid #B9D4BB !important; border-radius: 50% !important;}
.irs--flat .irs-handle:hover>i:first-child {background-color: #709D73 !important}
.irs--flat .irs-line {height: 14px !important;}
.rangeSliderFirst .irs-grid-text.js-grid-text-0 {left: 2% !important;}
.rangeSliderFirst .irs-grid-text.js-grid-text-2 {left: 98% !important;}
.rangeSliderSecond .irs-grid-text.js-grid-text-0 {left: 2% !important;}
.rangeSliderSecond .irs-grid-text.js-grid-text-7 {left: 98% !important;}
.irs-grid-text {font-weight: 600 !important; font-size: 1rem !important; line-height: 150% !important; bottom: -25px !important;}

/* Анимации */

.delay-1 {-webkit-animation-delay:200ms;animation-delay:200ms}
.delay-2 {-webkit-animation-delay:400ms;animation-delay:400ms}
.delay-3 {-webkit-animation-delay:600ms;animation-delay:600ms}
.delay-4 {-webkit-animation-delay:800ms;animation-delay:800ms}
.delay-5 {-webkit-animation-delay:1000ms;animation-delay:1000ms}
.delay-6 {-webkit-animation-delay:1200ms;animation-delay:1200ms}
.delay-7 {-webkit-animation-delay:1400ms;animation-delay:1400ms}
.delay-8 {-webkit-animation-delay:1600ms;animation-delay:1600ms}
.delay-9 {-webkit-animation-delay:1800ms;animation-delay:1800ms}
.delay-10 {-webkit-animation-delay:2000ms;animation-delay:2000ms}

@keyframes opacity {
	0% {opacity: 0;}
	50% {opacity: 0.5;}
	100% {opacity: 1;}
} 