@import url('https://fonts.googleapis.com/css2?family=Dosis:wght@200..800&display=swap');
html{
	height: 100%;
	width: 100%;
	margin: 0;
	-webkit-overflow-scrolling:touch;
}
body{
	margin: 0;
	color: #000000;
	font-size: 14px;
	line-height: 1.2;
	font-family: "Dosis", sans-serif;
	position: relative;
	width: 100%;
	-webkit-overflow-scrolling: touch;
	background: #fff;
	min-height: 100%;
	min-width: 320px;
}
body.active{
	overflow: hidden;
}
h1, h2, h3, h4, h5, h6{
	margin: 0 0 30px 0;
	font-weight: 700;
	color: #040404;
	line-height: 1.2;
}
h1{
	font-weight: 700;
	font-size: 72px;
}
h2{
	font-size: 48px;
}
h3{
	font-size: 30px;
}
h4{
	font-size: 24px;
}
h5{
	font-size: 20px;
}
h6{
	font-size: 16px;
}
p {
	font-weight: 500;
	font-size: 16px;
	color: #010101;
	margin: 0 0 20px 0;
}
p b{
	font-weight: 700;
}
p a{
	text-decoration: none;
	text-decoration-skip-ink: none;
	font-weight: 700;
	color: #010101;
}
p a:hover{
	text-decoration: underline;
}
p:last-child{
	margin-bottom: 0px;
}
img{
	display: block;
	max-width: 100%;
}
a {
	outline: none;
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
}
ul{
	padding: 0;
	margin: 0;
}
li{
	list-style: none;
}
/*== buttons
---------------------------------*/
button{
	margin:0;
	padding:0;
	border:none;
	background:none;
	cursor:pointer;
	overflow:visible;
	width:auto;
	outline: none;
	box-shadow: none;
	font-family: inherit;
}
button:hover , button:focus , button:active{
	outline: none;
	text-decoration: none;
}
/*== inputs
---------------------------------*/
input{
	outline: none;
	border: none;
}

textarea{
	height: 80px;
	outline: none;
}
.b-input-text{
	width: 100%;
	height: 52px;
	background: rgba(255, 255, 255, 0.42);
	mix-blend-mode: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	color: #333333;
	transition: 0.3s;
	padding: 0 15px 0 33px;

}
.b-input-text::-webkit-input-placeholder{
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	color: #A7A7A7;
}
.b-input-text:-moz-placeholder{
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	color: #A7A7A7;
}
.b-input-text.error{
	border-color: #EF4231;
}
textarea{
	height: 80px;
	outline: none;
	resize: none;
}
.b-textarea{
	width: 100%;
	height: 180px;
	background: #FFFFFF;
	border: 1px solid #CAD1D7;

	border-radius: 10px;
	padding: 20px 30px;
	font-weight: 400;
	font-size: 16px;
	line-height: 18px;
	color: #888888;	
}
.b-textarea::-webkit-input-placeholder{
	font-weight: 400;
	font-size: 16px;
	line-height: 18px;
	color: #888888;	
}
.b-textarea:-moz-placeholder{
	font-weight: 400;
	font-size: 16px;
	line-height: 18px;
	color: #888888;		
}
/*== checkbox , raido
---------------------------------*/
.b-checkbox{

}
.b-checkbox input[type="checkbox"]{
    display: none;
}
.b-checkbox input[type="checkbox"] + label{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0;
}
.b-checkbox input[type="checkbox"] + label span{
	background: #fff;
	border: 1px solid #cad1d7;
	border-radius: 3px;
	width: 20px;
	height: 20px;
	position: relative;
	margin: 0 11px 0 0;
	flex-shrink: 0;
	cursor: pointer;
}
.b-checkbox input[type="checkbox"]:checked + label span{
	background: #fff url("../images/check.svg") center no-repeat;
}
.b-checkbox input[type="checkbox"] + label i{
	padding: 1px 0 0 0;
	font-weight: 500;
	font-size: 16px;
	color: #6b6b6b;
	font-style: normal;
	cursor: pointer;
}
.b-checkbox input[type="checkbox"] + label i a{
	font-weight: 600;
	font-size: 13px;
	line-height: 1.66667;
	color: #24192c;
	text-decoration: underline;
	margin: 0 0 0 5px;
}
.b-checkbox input[type="checkbox"] + label i a:hover , .b-checkbox input[type="checkbox"] + label i a:focus , .b-checkbox input[type="checkbox"] + label i a:active{
	text-decoration: none;
	opacity: 0.8;
	transition: 0.3s;
}
.b-check{
	margin: 10px 0 0 0;
}
.b-check input[type="checkbox"]{
    display: none;
}
.b-check input[type="checkbox"] + label span{
	width: 11px;
	height: 11px;
	color: rgba(36, 39, 52, 0.35);
	font-size: 11px;
	flex-shrink: 0;
	margin: 2px 4px 0 0;
	cursor: pointer;
}
.b-check input[type="checkbox"] + label{
    cursor: pointer;
    margin: 0;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}
.b-check input[type="checkbox"]:checked + label span{
	width: 11px;
	height: 11px;
	color: #333333;
}
.b-check input[type="checkbox"] + label i{
	font-style: italic;
	font-weight: 400;
	font-size: 13px;
	line-height: 1;
	text-align: right;
    color: rgba(36, 39, 52, 0.35);
	cursor: pointer;
}
.b-check input[type="checkbox"]:checked + label i{
	color: #333333;
}
/*== raido
---------------------------------*/
.b-radio{
	margin: 0 0 8px 0;
}
.b-radio input[type="radio"]{
    display: none;
}
.b-radio input[type="radio"] + label{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0;
}
.b-radio input[type="radio"] + label span{
	width: 24px;
	height: 24px;
	background: transparent;
	border: 1px solid #8b7ba5;
	border-radius: 100%;
	transition: 0.3s;
	position: relative;
	margin: 0 11px 0 0;
	flex-shrink: 0;
	cursor: pointer;
}
.b-radio input[type="radio"] + label span:after{
	position: absolute;
	top: 50%;
	left: 50%;
	content: "";
	width: 14px;
	height: 14px;
	background: #037a24;
	border-radius: 100%;
	transform: translate(-50% , -50%);
	opacity: 0;
	visibility: hidden;
	transition: 0.3s;
}
.b-radio input[type="radio"]:checked + label span{
	border-radius: 100%;
	transition: 0.3s;
}
.b-radio input[type="radio"]:checked + label span:after{
	opacity: 1;
	visibility: visible;
	transition: 0.3s;
}
.b-radio input[type="radio"] + label i{
	font-weight: 500;
	font-size: 16px;
	color: #010101;
	padding: 2px 0 0 0;
	font-style: normal;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
}
select{
	outline: none;
	font-family: inherit;
}
.b-select{
	border: 1px solid #8b7ba5;
	border-radius: 4px;
	width: 100%;
	height: 46px;
	padding: 0 14px;
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	color: #6b6b6b;
	cursor: pointer;
	background: #ffffff url(../images/select-arrow.svg);
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 15px;
	-webkit-appearance: none;
	-moz-appearance: none;
	text-indent: 0.01px;
	text-overflow: '';
	-ms-appearance: none;
	appearance: none !important;
}
/* End Total css ====*/
.container{
	max-width: 1010px;
	margin: 0 auto 0;
	padding: 0 15px;

}
*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.b-container{
	position: relative;
}
.main_page{
	min-height: 100vh;
}
.b-mobile{
	display: none;
}
/* -------------- page index -------------- */
.header{
	box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.03);
	background: #fff;
	position: relative;
}
.header:before{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: "";
	width: 100%;
	height: 4px;
	backdrop-filter: blur(25px);
	box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.03);
	background: #138f35;
}
.header .container{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.logo{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	text-decoration: none;
	gap: 0 10px;
}
.logo svg{
	width: 62px;
	flex-shrink: 0;
}
.logo__text{
	font-weight: 700;
	font-size: 11px;
	line-height: 1;
	letter-spacing: 0.29em;
	text-transform: uppercase;
	color: #1d1d1d;
}
.logo__text b{
	display: block;
	font-family: "Monolog", sans-serif;
	font-weight: 700;
	font-size: 20px;
	line-height: 0.92;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1d1d1d;
	margin-bottom: 5px;
}
.logo:hover svg .circle1{
	fill: #0FA939;
}
.logo:hover .logo__text, .logo:hover .logo__text b{
	color: #037a24;
}

.header__right{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.nav ul{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 25px;
}
.nav ul li a{
	display: block;
	font-weight: 700;
	font-size: 18px;
	line-height: 1;
	text-transform: uppercase;
	text-align: center;
	text-decoration: none;
	position: relative;
	color: #010101;
	padding: 39px 0;
}
.nav ul li a:after{
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 1px;
	background: #F7F7F7;
	transition: 0.3s;
}
.nav ul li a:hover{
	color: #037a24;
}
.nav ul li a.active{
	color: #6a477a;
}
.nav ul li a.active:after{
	border-radius: 3px 3px 0 0;
	height: 6px;
	background: #d3ade4;
}
.nav__xs{
	display: none;
}

.header__contacts{
	text-align: right;
	margin-right: 21px;
}
.header__contacts-item{
	display: block;
	font-weight: 600;
	font-size: 12px;
	line-height: 1;
	color: #010101;
	text-decoration: none;
}
.header__contacts-item:not(:last-child){
	margin-bottom: 2px;
}
.header__contacts-item:hover{
	color: #138f35;
}
.header__btn{
	border-radius: 30px;
	width: 130px;
	height: 36px;
	background: #138f35;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 9px;
	font-family: "Monolog", sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
	color: #fff;
	transition: 0.3s;
}
.header__btn svg path{
	transition: 0.3s;
}
.header__btn:hover{
	background: #6a477a;
}
.header__btn:hover svg path{
	fill: #fff;
}
/* -------------- main -------------- */
.main{
	background: radial-gradient(21.04% 100% at 66.08% 100%, #ffedb7 0%, #ffdfaf 100%);
	padding: 105px 0 127px 0;
	position: relative;
}
.main:after{
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	background: url("../images/main_bg.svg") center bottom no-repeat;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.main__text{
	max-width: 486px;
	position: relative;
	z-index: 2;
}
.main__title{
	font-family: "Monolog", sans-serif;
	font-weight: 500;
	font-size: 36px;
	line-height: 1.27778;
	color: #000;
}
.main__title:not(:last-child){
	margin-bottom: 22px;
}
/* -------------- info -------------- */
.info{
	background: #f0ead9;
	padding: 114px 0;
}
.info .container{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.info__img{
	max-width: 423px;
	padding: 17px 0 0 0;
	flex-shrink: 0;
}
.info__text{
	max-width: 453px;
}
.title{
	font-family: "Monolog", sans-serif;
	font-weight: 500;
	font-size: 30px;
	line-height: 1.26667;
	color: #000;
}
.title b{
	font-weight: 700;
}
.title:not(:last-child){
	margin-bottom: 30px;
}
/* -------------- desc -------------- */
.desc{
	backdrop-filter: blur(25px);
	box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.03);
	background: #FFF8EA;
	padding: 104px 0;
}
.desc .container{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.desc__text{
	max-width: 446px;
}
.desc__text .title{
	max-width: 365px;
}
.desc__img{
	max-width: 447px;
	flex-shrink: 0;
}

/* ============== footer ============== */
.footer{
	background: #178034;
	padding: 16px 0;
}
.copyright{
	font-weight: 700;
	font-size: 15px;
	text-align: center;
	color: #fff;
}
/* -------------- mainAbout -------------- */
.mainAbout{
	padding: 80px 0;
	background: #ffdfaf;
}
.mainAbout .main__text{
	max-width: 610px;
}
.mainAbout:after{
	display: none;
}
.about{
	background: #FFF8EA;
	padding: 70px 0 86px 0;
}
.about__row{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.about__row:nth-child(even){
	flex-direction: row-reverse;
}
.about__row:not(:last-child){
	margin-bottom: 45px;
}
.about__img{
	flex-shrink: 0;
	max-width: 408px;
}
.about__text{
	max-width: 380px;
}
.about__text p{
	line-height: 1.375;
}

.aboutInfo{
	padding: 101px 0;
	background: #F0EAD9;
}
.aboutInfo .container{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.aboutInfo__text{
	max-width: 446px;
}
.aboutInfo__text .title{
	max-width: 300px;
}
.aboutInfo__img{
	flex-shrink: 0;
	max-width: 367px;
}

/* -------------- contacts -------------- */
.contactsMain{
	background: #FFDFAF;
	padding: 60px 0;
}
.contactsMain .container{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 150px;
}
.contactsMain__text{
	max-width: 380px;
}
.contactsMain__text p{
	line-height: 1.375;
}
.contactsMain__img{
	max-width: 259px;
}

.contactsInfo{
	background: #f0ead9;
	padding: 55px 0;
}
.contactsInfo .container{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0 150px;
}
.contactsInfo > .container > div{
	max-width: 380px;
}

.contactsForm{
	background: #FFF8EA;
	padding: 60px 0;
}
.contactsForm .container{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0 149px;
}
.contactsForm__text{
	max-width: 380px;
}

.contactsForm__form{
	width: 100%;
	max-width: 313px;
}
.contactsForm__input{
	border: 1px solid #8b7ba5;
	border-radius: 4px;
	width: 100%;
	height: 46px;
	padding: 0 12px;
	font-weight: 600;
	font-size: 16px;
	line-height: 18px;
	color: #010101;
}
.contactsForm__input::-webkit-input-placeholder{
	font-weight: 600;
	font-size: 16px;
	line-height: 18px;
	color: #010101;
}
.contactsForm__input:-moz-placeholder{
	font-weight: 600;
	font-size: 16px;
	line-height: 18px;
	color: #010101;
}
.contactsForm__item:not(:last-child){
	margin-bottom: 15px;
}
.contactsForm__btn{
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 30px;
	width: 313px;
	height: 50px;
	background: #138f35;
	font-weight: 700;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	text-align: center;
	color: #fff;
	font-family: "Monolog", sans-serif;
	transition: 0.3s;
}
.contactsForm__btn:hover{
	background: #6a477a;
}

.bottom{
	padding: 60px 0;
	background: #d8f0c0;
	text-align: center;
}
.bottom svg{
	margin: 0 auto 23px;
}

/* Absolute Center Spinner */
.loading {
	position: fixed;
	z-index: 999;
	height: 2em;
	width: 2em;
	overflow: show;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

/* Absolute Center Spinner */
.loading {
	position: fixed;
	z-index: 999;
	height: 2em;
	width: 2em;
	overflow: show;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

/* Transparent Overlay */
.loading:before {
	content: '';
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(rgba(20, 20, 20, .8), rgba(0, 0, 0, .8));

	background: -webkit-radial-gradient(rgba(20, 20, 20, .8), rgba(0, 0, 0, .8));
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
	/* hide "loading..." text */
	font: 0/0 a;
	color: transparent;
	text-shadow: none;
	background-color: transparent;
	border: 0;
}

.loading:not(:required):after {
	content: '';
	display: block;
	font-size: 10px;
	width: 1em;
	height: 1em;
	margin-top: -0.5em;
	-webkit-animation: spinner 1000ms infinite linear;
	-moz-animation: spinner 1000ms infinite linear;
	-ms-animation: spinner 1000ms infinite linear;
	-o-animation: spinner 1000ms infinite linear;
	animation: spinner 1000ms infinite linear;
	border-radius: 0.5em;
	-webkit-box-shadow: rgba(255, 255, 255, 0.75) 1.5em 0 0 0, rgba(255, 255, 255, 0.75) 1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) 0 1.5em 0 0, rgba(255, 255, 255, 0.75) -1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) -1.5em 0 0 0, rgba(255, 255, 255, 0.75) -1.1em -1.1em 0 0, rgba(255, 255, 255, 0.75) 0 -1.5em 0 0, rgba(255, 255, 255, 0.75) 1.1em -1.1em 0 0;
	box-shadow: rgba(255, 255, 255, 0.75) 1.5em 0 0 0, rgba(255, 255, 255, 0.75) 1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) 0 1.5em 0 0, rgba(255, 255, 255, 0.75) -1.1em 1.1em 0 0, rgba(255, 255, 255, 0.75) -1.5em 0 0 0, rgba(255, 255, 255, 0.75) -1.1em -1.1em 0 0, rgba(255, 255, 255, 0.75) 0 -1.5em 0 0, rgba(255, 255, 255, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */

@-webkit-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@-moz-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@-o-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.blur {
	filter: blur(10px);
}

.have-order, .no-order {
	display: none;
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-default-outline:focus {
	box-shadow: none !important;
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-cancel {
	color: #666 !important;
}

button:disabled {
	pointer-events: none;
	opacity: 0.5;
}

.btn-live-chat {
	text-decoration: none;
}

.b-order-top__cancelled {
	margin: 0 0 63px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}