/*@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&subset=cyrillic');*/
@import url(fonts/fonts.css);

* {box-sizing:border-box; margin:0; padding:0; outline:none;}

body {font:14px/1.5 "Inter", serif; background:#EDEDED;}

.width {width:1660px; max-width:90%; margin:0 auto;}
.center {text-align:center;}
.flex {display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center;}
.button {
	display:inline-block; background:#FFD91F; padding:21px; border:0; border-radius:10px; max-width:100%; 
	font-size:20px; font-weight:700; line-height:1; text-decoration:none; text-align:center; cursor:pointer; transition:0.25s all;
	&:hover {box-shadow:0 0 7px #FFFCED inset;}
	&.small {font-size:16px;}
	&.green {background:#0D4D2A; color:#FFF;}
}

.header {
	position:sticky; top:0; padding:1rem 0; background:#FFF; z-index:3; transition:0.5s all;
	&.out {transform:translateY(-100%);}
	.top {
		align-content:center;
		.logo {
			text-decoration:none; color:#000;
			img {height:50px; width:auto; margin-right:1rem;}
			span {width:150px;font-size:1.6rem; font-weight:700; line-height:1;}
			@media (max-width:769px) {
				img {height:38px;}
				span {width:120px;font-size:1.2rem; line-height:15px;}
			}
		}
		.links {
			a {
				color:#0D4D2A; font-size:24px; font-weight:700; margin-left:1.25rem; text-decoration:none;
				img {width:30px; height:30px;}
				&.tel {display:none;}
			}
			@media (max-width:769px) {
				a {
					margin-left:1rem;
					&.phone {display:none;}
					&.tel {display:flex;}
				}
			}
		}
		ul {
			display:flex; justify-content:space-between; align-content:center; gap:20px; list-style:none; margin:0; padding:0;
			@media (max-width:769px) {flex-direction:column;}
			a {
				display:block; text-decoration:none; font-size:16px; font-weight:500; color:#0D4D2A;
				&:hover {text-decoration:underline;}
			}
		}
	}
}

.zayavka {
	background:#AED444; color:#0D4D2A; padding:64px 0;
	.grid {
		display:grid; grid-template-columns:1fr 1fr; align-content:flex-start;
		@media (max-width:769px) {grid-template-columns:1fr;}
	}
	.r_side {
		width:700px; max-width:100%;
		@media (max-width:769px) {width:auto;}
	}
	.title {
		width:550px; max-width:100%; font-size:32px; font-weight:700; line-height:1.2; text-transform:uppercase; margin-bottom:2rem;
		@media (max-width:769px) {width:auto; font-size:28px; margin-bottom:1rem;}
	}
	.text {
		width:450px; max-width:100%; font-size:22px; font-weight:500; line-height:1.25;
		@media (max-width:769px) {width:auto; font-size:16px; font-weight:400; margin-bottom:1rem;}
	}
	.form {
		display:grid; grid-template-columns:repeat(2, 1fr); gap:20px; margin-bottom:1rem;
		@media (max-width:769px) {grid-template-columns:1fr; gap:12px;}
		input, button, textarea {
			display:block; border:1px solid transparent; border-radius:10px; padding:1.25em 1em 1.25em 3em; 
			text-align:left; font-weight:400;
		}
	}
	.opd {
		line-height:1.2; opacity:0.75; font-size:0.87rem;
		a {color:inherit;}
	}
	&.dark {
		background:#0D4D2A; color:#FFF;
		.title {color:#FFD91F;}
	}
}
.s1 {
	position:relative; background:rgba(13,77,42,0.75); z-index:inherit;
	&:before {
		position:absolute; inset:0; content:""; background:url(../images/bg1.webp) no-repeat fixed center center / cover; z-index:-1;
	}
	.slogan {
		position:relative; flex-direction:column; justify-content:center; text-align:center; padding:200px 0; z-index:2;
		@media (max-width:769px) {padding:80px 0;}
		h1 {
			color:#FFF; font-size:64px; font-weight:700; line-height:1.25; text-transform:uppercase;
			span {display:block; color:#FFD91F; background:#0D4D2A; padding:8px 20px; border-radius:8px;}
			@media (max-width:769px) {
				font-size:28px;
				span {margin-top:1rem; font-size:24px;}
			}
		}
		h2 {
			width:650px; max-width:100%; font-size:24px; font-weight:400; line-height:1.25; color:#FFF; margin:2rem auto;
			@media (max-width:769px) {font-size:16px;}
		}
		.button {
			width:434px; max-width:80%;
			@media (max-width:769px) {font-size:16px; font-weight:400;}
		}
	}
}

.s2 {
	padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	.top {
		margin-bottom:20px; padding:30px 60px; background:#AED444; border-radius:12px; color:#0D4D2A; line-height:1.2;
		display:grid; grid-template-columns:repeat(3, 1fr); align-items:center; gap:30px;
		@media (max-width:769px) {
			grid-template-columns:1fr; padding:24px;
			.button {
				font-size:16px; font-weight:400;
				span {display:none;}
			}
		}
		.title {
			width:400px; max-width:100%; font-size:32px; font-weight:700; text-transform:uppercase;
			@media (max-width:769px) {width:auto; font-size:28px;}
		}
		.text {
			font-size:20px; font-weight:400;
			@media (max-width:769px) {font-size:16px;}
		}
	}
	.items {
		display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;
		@media (max-width:769px) {grid-template-columns:1fr;}
		.item {
			overflow:hidden; border-radius:10px;
			img {display:block; width:100%; height:230px; object-fit:cover;}
			.card {
				background:#FFF; padding:1.5rem;
				.title {
					font-size:36px; font-weight:700; color:#DCEFA4; line-height:1; margin-bottom:1rem;
					@media (max-width:769px) {font-size:24px;}
					span {color:#AED444;}
				}
				.text {font-size:16px;}
			}
		}
	}
}

.s3 {
	position:relative; z-index:inherit; background:rgba(13,77,42,0.3); z-index:inherit; padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	&:before {
		position:absolute; inset:0; content:""; background:url(../images/bg2.webp) no-repeat fixed center center / cover; z-index:-1;
	}
	.items {
		display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; font-size:16px; font-weight:600; line-height:1.4;
		@media (max-width:769px) {grid-template-columns:1fr;}
		img {display:block; width:100%; border-radius:12px;}
		.item {
			display:grid; grid-template-columns:repeat(1, 1fr); gap:20px; border-radius:12px;
			&.yandex .text {
				background:#FFF; padding:44px; border-radius:12px;
				@media (max-width:769px) {padding:24px;}
			}
			&.avito {
				background:#AED444; padding:44px;
				@media (max-width:769px) {padding:24px;}
			}
			&.offline {
				.card {
					background:#0D4D2A; color:#FFF; padding:30px; border-radius:12px; line-height:1.25;
					@media (max-width:769px) {padding:24px;}
					.title {
						font-size:32px; font-weight:700; line-height:1.2; color:#AED444; margin-bottom:1.5rem;
						@media (max-width:769px) {font-size:24px;}
						span {
							display:block; font-size:64px;
							@media (max-width:769px) {font-size:48px;}
						}
					}
					.text {font-weight:400;}
				}
			}
		}
	}
}

.s4 {
	padding:100px 0; background:#EDEDED;
	@media (max-width:769px) {padding:52px 0;}
	.s_title {
		color:#0D4D2A; font-size:32px; font-weight:700; line-height:1.2; text-transform:uppercase; 
		margin-bottom:44px; width:380px; max-width:100%;
		@media (max-width:769px) {font-size:28px;}
	}
	.items {
		display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;
		@media (max-width:769px) {grid-template-columns:1fr;}
		.item {
			background:#0D4D2A; color:#FFF; padding:44px; border-radius:12px; 
			display:flex; flex-flow:column wrap; justify-content:space-between;
			@media (max-width:769px) {padding:24px;}
			.title {
				font-size:64px; font-weight:500; line-height:1; margin-bottom:2rem;
				@media (max-width:769px) {font-size:32px; margin-bottom:1em;}
			}
			ul {
				list-style:none; margin:0; font-size:20px;
				@media (max-width:769px) {font-size:16px;}
				li {background:url(../images/check.webp) no-repeat left center / 20px; padding:15px 0 15px 30px;}
			}
			&.money {
				background:none; color:#0D4D2A; padding:0; display:grid; grid-template-columns:repeat(1, 1fr); gap:20px;
				.one, .two {border-radius:12px; padding:30px;}
				.one {background:#DCEFA4;}
				.two {background:#AED444;}
				span {
					display:block; font-size:50px; font-weight:700;
					@media (max-width:769px) {font-size:36px;}
				}
				i {font-size:20px;}
			}
		}
	}
}

.s5 {
	position:relative; z-index:inherit; background:rgba(0,0,0,0.6); z-index:inherit; padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	&:before {
		position:absolute; inset:0; content:""; background:url(../images/bg3.webp) no-repeat fixed center center / cover; z-index:-1;
	}
	.grid {
		display:grid; grid-template-columns:1.25fr 1fr; gap:20px;
		@media (max-width:769px) {grid-template-columns:1fr;}
		.l_side {
			display:grid; grid-template-columns:repeat(2, 1fr); gap:20px;
			@media (max-width:769px) {grid-template-columns:1fr;}
			.s_title {
				grid-column:1 / -1; font-size:32px; font-weight:700; text-transform:uppercase; line-height:1.2; color:#FFF; margin-bottom:44px;
				@media (max-width:769px) {font-size:28px; margin-bottom:24px;}
			}
			.item {
				background:#FFF; border-radius:12px; padding:44px;
				@media (max-width:769px) {padding:24px;}
				.title {
					font-size:64px; font-weight:700; color:#0D4D2A; line-height:1; margin-bottom:1rem;
					@media (max-width:769px) {font-size:36px;}
				}
				.text {
					font-size:18px; font-style:italic; line-height:1;
					@media (max-width:769px) {font-size:16px;}
				}
			}
		}
		.r_side {
			background:#FFF url(../images/quote.webp) no-repeat bottom center / 100%; border-radius:12px; overflow:hidden;
			.img {
				height:auto; object-fit:contain; overflow:hidden;
				img {display:block; width:100%;}
			}
			.text {
				padding:44px; color:#0D4D2A;
				@media (max-width:769px) {padding:32px;}
				.title {
					font-size:24px; line-height:1.2; margin-bottom:2rem;
					@media (max-width:769px) {font-size:20px;}
					b {display:block; font-weight:700;}
				}
				p {
					margin-bottom:1rem; font-size:18px; line-height:1.2;
					@media (max-width:769px) {font-size:16px;}
				}
			}
		}
	}
}

.s6 {
	padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	.title {
		font-size:32px; font-weight:700; text-transform:uppercase; line-height:1.2; color:#0D4D2A;
		margin:0 0 44px; width:300px; max-width:100%;
		@media (max-width:769px) {font-size:28px;}
	}
	.items {
		display:grid; grid-template-columns:repeat(4, 1fr); gap:20px;
		@media (max-width:769px) {/*grid-template-columns:1fr;*/ display:block;}
		.item {
			background:#0D4D2A; color:#FFF; border-radius:12px; padding:64px 44px;
			@media (max-width:769px) {padding:48px 24px;}
			img {display:block; width:310px; max-width:100%; margin-bottom:44px;}
			.text {font-size:20px; line-height:1.2; text-align:center;}
		}
	}	
}

.s7 {
	padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	.title {
		font-size:32px; font-weight:700; text-transform:uppercase; line-height:1.2; color:#0D4D2A; margin-bottom:44px;
		@media (max-width:769px) {font-size:28px;}
	}
	.items {
		display:grid; grid-template-columns:repeat(3, 1fr); grid-template-rows:repeat(2, 1fr); gap:20px; list-style:none;
		@media (max-width:769px) {display:block;}
		.item {
			&.im1 {grid-row:span 2 / span 2;}
			&.im3 {grid-column-start:2; grid-row-start:2;}
			&.im4 {grid-row:span 2 / span 2; grid-column-start:3; grid-row-start:1;}
			img {display:block; width:100%; height:760px; object-fit:cover; border-radius:12px;}
			&.im2, &.im3 {img {height:370px;}}
			@media (max-width:769px) {
				display:block; margin-bottom:20px;
				img {height:480px !important;}
			}			
		}
	}	
}

.s8 {
	padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	.title {
		font-size:32px; font-weight:700; line-height:1.2; color:#0D4D2A; margin-bottom:44px; text-transform:uppercase;
		@media (max-width:769px) {font-size:28px;}
	}
	.items {
		display:grid; grid-template-columns:repeat(4, 1fr); gap:20px;
		@media (max-width:769px) {display:block;}
		.item {
			img {display:block; max-width:100%; height:auto; border:1px solid #D9D9D9; border-radius:12px;}
			@media (max-width:769px) {margin-bottom:20px;}
		}
	}	
}

.s9 {
	padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	.title {
		margin-bottom:44px; font-size:32px; font-weight:700; text-transform:uppercase; line-height:1.2; color:#0D4D2A;
		@media (max-width:769px) {font-size:28px;}
	}
	.items {
		display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;
		@media (max-width:769px) {display:block;}
		.item {			
			@media (max-width:769px) {margin-bottom:20px;}
			img {display:block; width:100%; height:auto; margin-bottom:20px; border-radius:30px;}
			.text {font-size:24px; line-height:1.2; color:#000;}
		}
	}	
}

.s10 {
	padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	.title {
		margin:0 auto 44px; text-align:center; width:750px; max-width:100%;
		font-size:32px; font-weight:700; text-transform:uppercase; line-height:1.2; color:#0D4D2A;
		@media (max-width:769px) {width:auto; font-size:28px;}
	}
	.items {
		display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; margin-bottom:2rem;
		@media (max-width:769px) {display:block;}
		.item {
			border-radius:12px; text-align:center;
			@media (max-width:769px) {margin-bottom:20px;}
		}
		&.plan {
			margin-bottom:66px;
			.item {
				background:#FFF; padding:36px; font-size:24px; font-style:italic; line-height:1.2; color:#000;
				b {display:block; font-size:32px; font-style:normal; font-weight:700; margin-top:1rem;}
			}
		}
		&.formats {
			.item {
				display:flex; flex-direction:column; justify-content:space-between; background:#0D4D2A; color:#FFF; padding:60px;
				@media (max-width:769px) {padding:36px;}
				.big {
					font-size:32px; font-weight:700; text-transform:uppercase; line-height:1.2; margin-bottom:2rem;
					@media (max-width:769px) {font-size:24px;}
				}
				.text {
					font-size:20px; font-weight:300; line-height:1.2; color:rgba(255,255,255,0.7); margin-bottom:1rem;
					b {
						display:block; font-size:32px; line-height:2; font-weight:500; color:#FFF;
						@media (max-width:769px) {font-size:24px;}
					}
				}
				.button {
					width:100%; background:#AED444; font-weight:400;
					@media (max-width:769px) {font-size:16px;}
				}
			}
		}
	}
	.spec {
		background:#DCEFA4; padding:32px; border-radius:12px; text-align:center; font-size:24px; font-weight:700; color:#0D4D2A;
		@media (max-width:769px) {max-width:100%; padding:28px; font-size:20px; line-height:1.2; text-align:left;}
	}
}

.s11 {
	padding:100px 0; background:#0D4D2A; color:#FFF;
	@media (max-width:769px) {padding:52px 0;}
	.title {
		padding-bottom:44px; font-size:32px; font-weight:700; text-transform:uppercase; line-height:1.2;
		@media (max-width:769px) {font-size:28px;}
	}
	.items {
		display:grid; grid-template-columns:repeat(3, 1fr);
		@media (max-width:769px) {grid-template-columns:1fr;}
		.item {
			position:relative; padding-top:44px; border-top:10px solid transparent;
			@media (max-width:769px) {
				border-top:0; border-left:10px solid transparent; padding-left:40px; margin-left:30px;
			}
			&.sp1 {border-color:#DCEFA4;}
			&.sp2 {border-color:#AED444;}				
			&.sp3 {border-color:#00A34A;}
			.round {
				display:inline; border-radius:50%; background:#FFF; position:absolute;
				&.r1 {width:20px; height:20px; top:-15px; left:-1px;}
				&.r2 {width:33px; height:33px; top:-23px; left:-1px;}
				&.r3 {width:40px; height:40px; top:-27.5px; left:-20px;}
				&.r4 {width:48px; height:48px; top:-33px; right:-1px;}
				@media (max-width:769px) {
					&.r1 {width:20px; height:20px; top:-1px; left:-15px;}
					&.r2 {width:33px; height:33px; top:-1px; left:-21px;}
					&.r3 {width:40px; height:40px; top:-1px; left:-25px;}
					&.r4 {width:48px; height:48px; top:auto; bottom:-1px; left:-28px;}
				}
			}
			img {
				display:block; width:200px; max-width:100%; margin-bottom:2rem;
				@media (max-width:769px) {width:150px;}
			}
			.text {
				font-size:20px; line-height:1.2; width:450px; max-width:100%;
				b {display:block; font-size:24px; font-weight:500; margin-bottom:1rem;}
				@media (max-width:769px) {width:auto; font-size:16px;}
			}
		}
	}	
}

.s12 {
	padding:100px 0;
	@media (max-width:769px) {padding:52px 0;}
	.title {
		margin-bottom:44px;	font-size:32px; font-weight:700; text-transform:uppercase; line-height:1.2;
		@media (max-width:769px) {font-size:28px;}
	}
	.items {
		display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; font-size:16px; font-weight:600; line-height:1.4;
		@media (max-width:769px) {display:block;}
		.item {
			border-radius:12px; overflow:hidden; background:#FFF;
			@media (max-width:769px) {margin-bottom:20px;}
			img {display:block; width:100%;}
			.text {
				padding:60px; font-size:20px; font-weight:400; color:#000; line-height:1.2;
				b {display:block; font-size:32px; font-weight:700; color:#0D4D2A; margin-bottom:1rem;}
				@media (max-width:769px) {
					padding:24px; font-size:16px;
					b {font-size:20px;}
				}
			}
		}
	}
}

.footer {
	padding:100px 0; background:#0D4D2A; color:#FFF;
	@media (max-width:769px) {padding:52px 0; text-align:center;}
	hr {display:block; height:1px; background:#FFF; margin:44px auto; opacity:0.85;}
	.flex {
		justify-content:space-between;
		@media (max-width:769px) {
			&.top {flex-direction:column;}
			&.bottom {flex-direction:column-reverse;}
		}
	}
	.logo {
		text-decoration:none; color:#FFF; display:flex;
		img {height:55px; width:auto; margin-right:1rem;}
		span {width:150px; font-size:1.8rem; font-weight:700; line-height:1; text-align:left;}
		@media (max-width:769px) {
			justify-content:center; margin-bottom:1rem;
			span {width:150px; font-size:1.6rem;}
		}
	}
	.links {
		@media (max-width:769px) {width:100%;}
		img {height:30px;}
		a {
			color:#FFF; font-size:24px; font-weight:700; margin-left:1.25rem; text-decoration:none;
			@media (max-width:769px) {
				margin:0 0.5rem;
				&.phone {display:block; margin:1rem auto;}
			}
		}
		.button {
			width:340px; max-width:100%; background:#FFF; font-size:16px; font-weight:400;
			@media (max-width:769px) {display:block; width:100%;}
		}
	}
	.bottom {
		ul {
			display:flex; justify-content:space-between; align-content:center; gap:20px; list-style:none; margin:0; padding:0;
			@media (max-width:769px) {flex-direction:column;}
		}
		a {
			display:block; text-decoration:none; font-size:16px; font-weight:500; color:#FFF;
			&.opd {
				font-size:14px; font-weight:300; opacity:0.85;
				@media (max-width:769px) {margin-top:2rem;}
			}
			&:hover {text-decoration:underline;}
		}
	}
}

/* Модальные окна */
.mwrap, .modal {display:none;}
.mwrap {
	perspective:1300px; position:fixed; inset:0; overflow-y:auto; padding:1rem 0; background:linear-gradient(rgba(30,30,30,.9),#000 1810%);
	&.nobg {background:none;}
}
.modal {
	position:relative; width:min(450px, 95%); margin:0 auto; background:#EDEDED; color:#000; overflow:hidden;
	transform:rotateX(-90deg); transition:0.75s all; border-radius:10px;
	&.open {transform:none;}
	.mheader {
		padding:0.5rem 1rem; background:rgba(0,0,0,0.2);
		display:flex; justify-content:space-between; align-items:center;
	}
	.mclose {font-size:2rem; line-height:1em; color:rgba(0,0,0,0.7); cursor:pointer;}
	.mtext {}
	.mtext {
		display:grid; grid-template-columns:1fr; gap:10px; padding:2rem;
		input, button, textarea {
		border:1px solid transparent; border-radius:10px; padding:21px 21px 21px 42px; font-weight:400;
		}
	}
	&.wide {
		width:min(1100px, 95%);
		transform:none;
		.mtext {display:block;}
	}
	.opd {font-size:0.85rem; line-height:1; opacity:0.5; padding-top:1rem;}
}

/* Слайдер */
.bxslider {list-style:none; -webkit-perspective:1000;}
.bx-wrapper {	
	position:relative; padding:0; -ms-touch-action:pan-y; touch-action:pan-y; overflow:hidden;
	img {max-width:100%; display:block;}
	.bx-pager, .bx-controls-auto {width:100%;}
	.bx-loading {display:none;}
	.bx-pager {
		position:relative; margin:1rem auto; z-index:inherit; text-align:center;
		display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
		&.bx-default-pager a {
			background:rgba(13,77,42,0.25); text-indent:-9999px; transition:0.25s all;
			display:block; width:25px; height:3px; margin:0 5px; outline:0;
			&:hover, &.active, &:focus {background:#0D4D2A;}
		}
	}
	.bx-controls {
		.bx-pager-item, .bx-controls-auto .bx-controls-auto-item {display:inline-block;}
		.bx-pager-item {font-size:0; line-height:0;}
	}
	.bx-prev, .bx-next {
		border-radius:50%; transition:0.5s all; opacity:0.5; z-index:inherit;
		&:hover, &:focus {opacity:1;}
	}
	.bx-prev {left:10px; background:rgba(0,0,0,0.5) url(prev.svg) no-repeat center center / 80%;}
	.bx-next {right:10px; background:rgba(0,0,0,0.5) url(next.svg) no-repeat center center / 80%;}
	.bx-controls-direction a {
		position:absolute; top:50%; margin-top:-16px; outline:0; width:32px; height:32px; text-indent:-9999px; z-index:inherit;
		&.disabled {display:none;}
	}
	.bx-caption {
		position:absolute; bottom:0; left:0; background:#666; background:rgba(80, 80, 80, 0.75); width:100%;
		span {color:#fff; font-family:Arial; display:block; font-size:.85em; padding:10px;}
	}
}
.sw-app .swiper-wrapper {
	@media (min-width: 480px) {
		display:grid; grid-template-columns:repeat(4, 1fr); fap:20px;
		.sw-review-item {margin-right:0 !important; width:25% !important;}
	}
} 
.sw-review-bottom > div {margin:0 !important; transition:0.5s all;}
.swiper-pagination + a, .sw-swiper-button-next + a {transform:scale(0) !important; position:absolute !important;}
.sw-review-bottom {
	margin:2rem auto !important;
	.swiper-pagination > span {
		height:4px !important; transform:scaleX(0.9); opacity:0.25 !important; max-width:25px;
		&.swiper-pagination-bullet-active {opacity:1 !important;}
		@media (max-width: 480px) {display: flex !important;}
	}
}

.politic {
	h1 {text-align:center; margin-bottom:1rem;}
	p {margin-bottom:1rem;}
}