/*
Theme Name: adonisl
Text Domain: adonisl
*/
.container {
  width: 100%;
  max-width:1240px;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
}
.d-flex {
	display:flex;
	align-content: flex-start;
	align-items: flex-start;
}
body {
	margin:0;
	font-size:18px;
	line-height:1.8;
	font-family: 'Roboto', sans-serif;
	color:#1F201F;
	background: #FCFCFC;
}
a {
	text-decoration:none;
	cursor:pointer;
	transition:all linear .25s;
}
div,a,img,button {
	outline:none;
}
ul {
	list-style:none;
	padding:0;
	margin:0;
}
p {
	margin:0;
}
.fw {
	flex-wrap:wrap;
}
.sb {
	justify-content: space-between;
}
.aligncenter {
	align-content: center;
	align-items: center;
}
.btn2 {
	display:flex;
	align-content: center;
	align-items: center;
	width:100%;
	max-width: 280px;
	height: 60px;
	border-radius: 200px;
background: #00CF80;
box-shadow: 0px 20px 20px 0px rgba(0, 207, 128, 0.25);
	color: #fff;
	font-size: 18px;
	font-family: Roboto;
	line-height: 1.2;
	justify-content: center;
	text-align: center;
	transition:all linear .25s;
	cursor:pointer;
}
.btn2:hover {
background: #2FE19D;
}
.btn2:active {
	box-shadow: none;
}
.btn {
	display:flex;
	align-content: center;
	align-items: center;
	width:100%;
	max-width: 135px;
	height: 50px;
	border-radius: 200px;
	border: 1px solid #00CF80;
	color: #00CF80;
	font-size: 16px;
	font-family: Roboto;
	line-height: 160%;
	justify-content: center;
	text-align: center;
	transition:all linear .25s;
	cursor:pointer;
}
.btn:hover {
	background: rgba(0, 207, 128, 0.10);
}
.btn:active {
	background: rgba(0, 207, 128, 0.25);
}
nav ul {
	display:flex;
}
nav ul a {
	display: block;
	color: #1F201F;
	font-size: 16px;
	font-family: Roboto;
	line-height: 160%;
	margin:0 12px;
}
nav ul a:hover {
	color:#00CF80;
}
.home-link {
	display:block;
}
.home-link img {
	display:block;
}
header {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index: 3;
	padding:25px 0;
	transition:all linear .25s;
}
header.fixed {
	background:#fff;
}
header .s1 {
	margin: 0 15px;
    width:40px;
	height:40px;
	background:url(images/g1.svg) no-repeat left center
}
.lang {
	position: relative;
}
.lang > div {
	position: absolute;
	left: 0px;
	top:99%;
	z-index: 3;
	opacity: 0;
	visibility: hidden;
	transition:all linear .25s;
	min-width: 100%;
}
.lang > p {
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.51493 4.26708C9.51685 4.16328 9.48647 4.06144 9.42797 3.97566C9.36947 3.88988 9.28576 3.8244 9.18842 3.78828C9.09108 3.75217 8.98491 3.7472 8.88462 3.77407C8.78434 3.80094 8.69488 3.85832 8.62863 3.93827L6.00942 6.99779L3.3902 3.93638C3.34943 3.88045 3.29751 3.83358 3.23772 3.79872C3.17792 3.76387 3.11155 3.74179 3.04279 3.73387C2.97403 3.72596 2.90438 3.73239 2.83823 3.75274C2.77208 3.7731 2.71086 3.80695 2.65845 3.85216C2.60604 3.89736 2.56357 3.95294 2.53372 4.01538C2.50386 4.07783 2.48728 4.14578 2.48501 4.21496C2.48274 4.28413 2.49484 4.35303 2.52053 4.41729C2.54623 4.48156 2.58496 4.5398 2.6343 4.58834L5.6258 8.08819C5.67281 8.14323 5.7312 8.18742 5.79693 8.21773C5.86267 8.24803 5.9342 8.26372 6.00658 8.26372C6.07897 8.26372 6.15049 8.24803 6.21623 8.21773C6.28197 8.18742 6.34036 8.14323 6.38737 8.08819L9.38831 4.58834C9.46727 4.49966 9.51215 4.3858 9.51493 4.26708Z' fill='%231F201F'/%3E%3C/svg%3E%0A");
	background-repeat:no-repeat;
	background-position:right center;
	padding-right: 15px !important;
	transition:all linear .25s;
}
.lang:hover > p {
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.48507 7.73291C2.48315 7.83672 2.51353 7.93856 2.57203 8.02434C2.63053 8.11012 2.71424 8.1756 2.81158 8.21171C2.90892 8.24783 3.01509 8.25279 3.11538 8.22592C3.21566 8.19905 3.30512 8.14168 3.37137 8.06173L5.99058 5.0022L8.6098 8.06362C8.65057 8.11955 8.70249 8.16642 8.76228 8.20127C8.82208 8.23613 8.88845 8.25821 8.95721 8.26612C9.02597 8.27404 9.09562 8.26761 9.16177 8.24725C9.22792 8.22689 9.28914 8.19304 9.34155 8.14784C9.39396 8.10264 9.43643 8.04706 9.46628 7.98461C9.49614 7.92217 9.51272 7.85422 9.51499 7.78504C9.51726 7.71586 9.50516 7.64697 9.47947 7.5827C9.45377 7.51844 9.41504 7.4602 9.3657 7.41165L6.3742 3.91181C6.32719 3.85677 6.2688 3.81258 6.20307 3.78227C6.13733 3.75197 6.0658 3.73628 5.99342 3.73628C5.92103 3.73628 5.84951 3.75197 5.78377 3.78227C5.71803 3.81258 5.65964 3.85677 5.61263 3.91181L2.61169 7.41165C2.53273 7.50034 2.48785 7.6142 2.48507 7.73291Z' fill='%231F201F'/%3E%3C/svg%3E%0A");
}
.lang a,
.lang > p {
	cursor: pointer;
	display: flex;
	align-items: center;
	font-weight: 400;
font-size: 16px;
line-height: 160%;
color: #1f201f;
padding: 8px 10px;
	text-transform: uppercase;
}
.lang a img,
.lang > p img {
	margin-right: 6px;
	display: block;
	width: 24px;
}
.lang a {
	padding: 10px;
	border-radius: 10px;
	background: #fff;
}
.lang:hover > div {
	opacity: 1;
	visibility: visible;
}
#banner {
	padding:210px 0 150px;
	min-height: 42.5vw;
}
#banner h1 {
	margin:0 0 30px;
font-size: 65px;
font-family: 'Montserrat', sans-serif;
font-weight: 800;
line-height: 120%;
max-width: 715px;
}
#banner h1 b {
	font-weight: 800;
	color: #00CF80;
}
#banner .sub {
	padding-left: 55px;
	background: url(images/icon1.svg) no-repeat left center;
	margin:0 0 44px;
	font-size: 18px;
	line-height: 1.6;
}
#about {
	padding:100px 0 75px;
}
.section-title {
	margin:0 0 60px;
	font-size: 56px;
font-family: 'Montserrat', sans-serif;
font-weight: 700;
line-height: 140%;
}
#about .sub {
	background:url(images/img2.png) no-repeat left center;
	font-weight: 700;
	padding:9px 0 ;
	padding-left: 106px;
	margin:0 0 35px;
}
#about .desc p {
	margin:0 0 15px;
}
#about .desc p:last-child {
	margin-block: 0;
}
#about .col1 {
	width:100%;
	max-width: calc(100% - 590px);
	padding-right: 50px;
}
#about .col2 {
	max-width: 590px;
}
#about img {
	display:block;
	width: 100%;
	border-radius: 50px;
}
#facts {

}
#facts .content {
	border-radius: 50px;
	background: linear-gradient(90deg, #C3EFCE 0%, #C9DEFF 100%);
}
#facts .content > div {
	background:url(images/icon2.svg) no-repeat left bottom;
	border-radius: 50px;
	padding:80px 100px;
}
#facts .col1 {
	width:100%;
	max-width: calc(100% - 590px);
	padding-right: 50px;
}
#facts .col2 {
	width:100%;
	max-width: 590px;
}
#facts .section-title {
	margin:0 0 35px;
}
#facts .btn2 {
	max-width: 285px;
}
.facts > div {
	margin-bottom:20px;
	border-radius: 15px;
background: #FFF;
box-shadow: 6px 300px 40px 0px rgba(75, 141, 146, 0.05);
padding:25px 5px 25px 35px;
}
.facts > div:last-child {
	margin-bottom: -115px;
}
.facts .img {
	border-radius: 100%;
	padding:15px;
background: rgba(0,132,207,0.05);
margin-right: 25px;
width:96px;
height: 96px;
min-width: 96px;
}
.facts .img > div {
	width:100%;
	height: 100%;
	border-radius: 100%;
background: rgba(0,132,207,0.1);
display:flex;
justify-content: center;
align-content: center;
align-items: center;
}
.facts .p1 {
font-size: 36px;
font-weight: 700;
line-height: 160%;
margin-right: 10px;
}
.facts .p2 {
	line-height: 1.3;
}
#exp {
	padding:170px 0 110px;
}
#exp .section-title {
	margin:0 0 70px;
	text-align: center;
}
.exp {
	margin:0 -10px;
}
.exp > div {
	margin:0 10px;
}
.exp .p1 {
	position: relative;
	margin-right: 45px;
	white-space: nowrap;
	font-size: 60px;
font-weight: 700;
line-height: 140%;
text-transform: uppercase;
}
.exp .p1 span {
	position:relative;
	z-index:2;
}
.exp .p1:before {
	content:' ';
	display:block;
	position:absolute;
	z-index: 1;
	top:calc(50% - 50px);
	width:100px;
	height: 100px;
	right:-25px;
	border-radius: 15px;
	background: linear-gradient(133deg, #2BE99E 0%, #FEDB60 100%);
}
#facts2 {
	padding:70px 0 0;
	background: linear-gradient(90deg, #C3EFCE 0%, #C9DEFF 100%);
	overflow:hidden;
}
#facts2 .content {
	width:100%;
	max-width: 795px;
	min-width: 795px;
	padding:30px 0 50px;
}
#facts2 .img2 {
	display:block;
	max-width: unset;
	margin-left: -35px;
}
.facts2 > div {
	max-width: calc(50% - 10px);
	width: 100%;
	margin-bottom: 32px;
	display:flex;
	align-items:center;
}
.facts2 .img {
	margin-right: 20px;
	min-width: 100px;
	height: 100px;
	display:flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	border-radius: 15px;
background: #FFF;
}
.facts2 .img img {
	display:block;
}
#why {
	padding:100px 0;
}
#why .section-title {
	text-align: center;
}
.why > div {
	margin:0 0 30px;
}
.why .content {
	width:100%;
	max-width: 610px;
	padding-right: 50px;
	padding-top: 40px;
}
.why .img {
	max-width: calc(100% - 610px);
	width:100%;
}
.why > div:nth-child(even) .content {
	order:2;
	padding-left: 50px;
	padding-right: 0;
}
.why img {
	display:block;
	max-width: 100%;
}
.why .p1 {
	font-weight: 700;
	margin:0 0 20px;
}
.why .p2 {

}
#why .steps {
	margin-top: 100px;
	position: relative;
	text-align:center;
}
#why .steps:before {
	content:' ';
	position: absolute;
	inset:0;
	height: calc(100% - 180px);
	background: linear-gradient(90deg, #c3efce 0%, #c9deff 100%);
	border-radius: 50px;
}
#why .steps > div {
	position: relative;
	z-index: 2;
	padding: 80px 0 0;
}
#why .steps .section-title {
	margin:0 0 10px;
}
#why .steps .sub {
	text-align: center;
	margin:0 0 40px;
	font-size: 24px;
	line-height: 1.8;
}
#why .steps .st {
	margin:0 25px;
	padding: 0 75px;
}
#why .steps .slick-slide {
	margin:0 10px;
	border-radius: 15px;
	box-shadow: 0px 10px 10px 0 rgba(75, 141, 146, 0.1);
	padding: 15px 25px;
	background: #fff;
	text-align:left;
}
#why .steps .btn2 {
	margin:10px auto 0;
}
.container-w {
	max-width: 1400px;
}
#why .steps .slick-track {
	display: flex;
}
#why .steps .slick-list {
	margin:0 -10px;
	padding: 0 0px 40px;
}
#why .steps .number {
	font-size: 18px;
	line-height: 180%;
	color: #00cf80;
}
#why .steps .img {
	display: flex;
	background: rgba(0,132,207,0.05);
	border-radius: 100%;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 96px;
	position: relative;
}
#why .steps .s3 img {
	transform:translateX(5px);
}
#why .steps .img:before {
	content:' ';
	position: absolute;
	display: block;
	border-radius: 100%;
	width: 66px;
	height: 66px;
	top:calc(50% - 33px);
	left:calc(50% - 33px);
	background: rgba(0,132,207,0.1);
}
#why .steps .img img {
	display: block;
	position: relative;
	z-index: 2;
}
#why .steps .slick-slide {
	height: auto;
}
#why .steps .slick-slide > p {
	font-size: 18px;
	line-height: 180%;
	color: #1f201f;
	margin-top: 12px;
}
.steps .slick-arrow {
	width: 60px;
	height: 60px;
	border-radius: 100%;
	border:1px solid #00cf80;
	position: absolute;
	top:105px;
	cursor: pointer;
	transition:all linear .25s;
}
.steps .slick-arrow:hover {
	background-color:#E6FBF3;
}
.steps .slick-arrow:active {
	background-color:#BFF3DF;
}
.steps .slick-prev {
	left: 0;
	background: #fff url(images/prev.svg) no-repeat center;
}
.steps .slick-next {
	right: 0;
	background: #fff url(images/next.svg) no-repeat center;
}
#why .dop {
	border-radius: 53px;
	margin-top: 100px;
	overflow: hidden;
}
#why .dop > div {
	padding:10px;
	background:url(images/w5.png) no-repeat left top;
	background-size: 100% 100%;
}
#why .dop > div > div {
	border-radius: 50px;
	border:1px solid #fff;
	padding:42px 70px 42px 365px;
}
#why.ru .dop > div > div {
	padding-left: 70px;
}
#why.ru .dop > div {
	background: linear-gradient(90deg, #c3efce 0%, #c9deff 100%) !important;
}
#why .dop p {
	margin-right: 40px;
}
#why .dop .btn2 {
	min-width: 280px;
}
#programs {
	padding:90px 0 100px;
	background: linear-gradient(90deg, #C3EFCE 0%, #C9DEFF 100%);
}
#programs .sub {
	text-align: center;
	margin:0 0 10px;
	font-size: 24px;
	line-height: 1.4;
}
#programs .section-title {
	text-align: center;
}
.programs {
	margin:0 -10px;
}
.programs > div {
	width:100%;
	max-width: calc(25% - 20px);
	margin:0 10px;
	padding:25px 22px 45px;
	text-align: center;
	background:#fff;
	border-radius: 15px;
}
.programs .p1 {
	line-height: 62px;
	background:url(images/img4.png) no-repeat center center;
	text-transform: uppercase;
	font-size: 24px;
	font-weight: 700;
	margin:0 0 22px;
}
.programs .p2 {
	margin:0 0 6px;
}
.programs .p2 b {
	color:#00CF80;
	font-weight: 400;
}
.programs .p3 {
	text-decoration: line-through;
	color: #EF1111;
	line-height: 1.6;
	margin:0 0;
}
.programs .p4 {
	margin: 0 0 15px;
	font-size: 36px;
	font-weight: 800;
	line-height: 1.6;
}
.programs .btn2 {
	max-width: 200px;
	margin:0 auto;
}
.programs2 > div {
	max-width: calc(33.33% - 20px);
}
.programs2 .p1 {
	background:url(images/img5.png) no-repeat center center;
	background-size:100% 100%;
}
.programs .desc {
	margin:0 auto 15px;
	max-width: 305px;
	font-size: 14px;
	line-height: 1.6;
}
.programs {
	margin-bottom: 80px;
}
.programs2 {
	margin-bottom: 65px;
}
#programs .sub2 {
	margin:0 0 34px;
	text-align: center;
	text-transform: uppercase;
	font-size: 24px;
	font-weight: 800;
	line-height: 1.6;
}
.programs3 {
	align-items: unset;
}
.programs3 > div {
	max-width: calc(33.33% - 20px);
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
}
.programs3 > div > * {
	width: 100%;
}
.programs3 .p3 {
	margin-top: auto;
}
.programs3 .p1 {
	background:url(images/img5.png) no-repeat center center;
}
.programs3 .p1 {
	background-size: 100% 100%;
	font-size: 20px;
}
/*.programs3 .s2 .p1 {
	background:url(images/img6.png) no-repeat center center;
	background-size: auto 100%;
}*/
.programs3 {
	margin-bottom: 40px;
}
.programs3 + .dop {
	font-weight: 400;
font-size: 14px;
line-height: 180%;
color: #1f201f;
text-align: center;
}
.programs3 + .dop a {
	display: inline-flex;
	font-weight: 800;
font-size: 14px;
line-height: 160%;
color: #1f201f;
margin-left: 10px;
align-items: center;
vertical-align: middle;
}
.programs3 + .dop a:before {
	content:url(images/wt.svg);
	display: block;
	margin-right: 6px;
	width: 25px;
	height: 25px;
}
.programs ul li {
	padding-left: 35px;
   background: url(images/ok.svg) no-repeat left 3px;
   margin: 0 0 10px;
   font-size: 18px;
line-height: 180%;
text-align: left;
}
.programs3 .desc {
	max-width: 100%;
}
.programs ul li:last-child {
	margin: 0;
}
#programs .vk {
	margin:0 0 50px;
}
#programs .vk ul {
	list-style: none;
	column-count: 3;
}
#programs .vk ul li {
	padding-left: 35px;
	break-inside: avoid;
	background:url(images/ok.svg) no-repeat left 3px;
	margin:0 0 10px;
}
#programs .vk + .btn2 {
	margin: 0 auto 80px;
	max-width: 285px;
}
#reviews {
	padding:100px 0;
}
#reviews .col1 {
	width:100%;
	max-width: 510px;
	padding-right: 20px;
	padding-top: 35px;
}
#reviews .col2 {
	width:100%;
	max-width: calc(100% - 510px);
}
#reviews .section-title {
	margin:0 0 10px;
}
#reviews .sub {
	margin:0 0 60px;
	font-size: 24px;
	line-height: 1.6;
}
.arrow {
	display:flex;
	margin-right: 20px;
	width:60px;
	height: 60px;
	border:1px solid #00CF80;
	border-radius: 100%;
	cursor:pointer;
	transition:all linear .25s;
}
.arrow.prev {
	background:url(images/prev.svg) no-repeat center center;
}
.arrow.next {
	background:url(images/next.svg) no-repeat center center;
}
.arrow.prev:hover {
	background:#E6FBF3 url(images/prev.svg) no-repeat center center;
}
.arrow.next:hover {
	background:#E6FBF3 url(images/next.svg) no-repeat center center;
}
.arrow.prev:active {
	background:#BFF3DF url(images/prev.svg) no-repeat center center;
}
.arrow.next:active {
	background:#BFF3DF url(images/next.svg) no-repeat center center;
}
#reviews {
	overflow: hidden;
}
.reviews {
	width:100vw;
}
.reviews .slick-slide {
	width:590px;
	margin-right: 20px;
	box-shadow: 6px 30px 40px rgba(75,141,146,0.05);
	padding:20px 30px 40px;
	background:#fff url(images/quote.svg) no-repeat calc(100% - 30px) 30px;
	border-radius: 15px;
}
.reviews .top {
	margin:0 0 20px;
}
.reviews .top img {
	min-width: 80px;
	max-width: 80px;
	border-radius: 100%;
	height: 80px;
	margin-right: 20px;
}
.reviews .top p {
	font-size: 24px;
	font-weight: 800;
}
.reviews .desc1 {
	margin:0 0 20px;
	padding:0 0 40px;
	border-bottom:1px solid #C9DEFF;
	min-height: 335px;
}
.reviews .desc2 {
	font-size: 14px;
	line-height: 1.6;
	padding-left: 62px;
	background:url(images/tr.svg) no-repeat left top;
	min-height: 175px;
}
.reviews {
	padding:20px;
}
.reviews .slick-list {
	margin:-20px;
}
#gallery {
	padding:0 0 100px;
}
#gallery .arrows {
	display:none !important;
}
.gallery1 {
	display:grid;
	grid-template-columns: 40.67% 23.75% 1fr;
	grid-template-rows: 205px 205px;
	grid-column-gap: 20px;
	grid-row-gap: 20px;
	margin-bottom: 20px;
}
.gallery2 img,
.gallery1 img {
	max-width: 100%;
	object-fit: cover;
	border-radius: 15px;
	height: 100%;
}
.gallery1 div:first-child {
	grid-column: 1 / 2;
  grid-row: 1 / 3;
}
.gallery1 div:nth-child(2) {
  grid-row: 1 / 3;
}
.gallery1 div:nth-child(3) {
	grid-column: 3 / 4;
  grid-row: 1 / 2;
}
.gallery1 div:nth-child(4) {
	grid-column: 3 / 4;
  grid-row: 2 / 3;
}
.gallery2 {
	display:grid;
	grid-template-columns: 32.33% 40.67% 1fr;
	grid-template-rows: 205px 205px;
	grid-column-gap: 20px;
	grid-row-gap: 20px;
}
.gallery2 div:first-child {
  grid-row: 1 / 2;
}
.gallery2 div:nth-child(2) {
  grid-row: 2 / 3;
}
.gallery2 div:nth-child(3) {
  grid-row: 1 / 3;
}
.gallery2 div:nth-child(4) {
  grid-row: 1 / 3;
}
#gallery .btn2 {
	margin:60px auto 0;
	max-width: 285px;
}
#serts {
	padding:0 0 170px;
	overflow:hidden;
}
#serts .content {
	border-radius: 50px;
background: linear-gradient(90deg, #C3EFCE 0%, #C9DEFF 100%);
padding:80px 100px 1px;
margin:0 -100px;
}
.serts > div {
	max-width: calc(33.33% - 20px);
	margin:0 10px;
	width:100%;
	display:flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	padding:20px;
	background:#fff;
	border-radius: 15px;
	box-shadow: 6px 30px 40px rgba(75,141,146,0.05);
	height: 220px;
}
.serts > div img {
	max-width: 100%;
	max-height: 100%;
}
.serts {
	margin:0 -10px -70px;
}
#serts .section-title {
	text-align: center;
}
#form {
	padding:0 0 80px;
}
#form .section-title {
	text-align: center;
	margin:0 0 10px;
}
#form .sub {
	margin:0 0 80px;
	text-align: center;
	font-size: 24px;
	line-height: 1.4;
}
.form .d-flex > p {
	display:flex;
	justify-content: space-between;
	margin:0 -10px;
}
.form .d-flex > p > * {
	max-width: calc(25% - 20px);
	margin:0 10px 30px;
}
.form input:not([type="checkbox"]) {
	font-family: 'Roboto', sans-serif;
	width:100%;
	height: 60px;
	border:1px solid #D9D9D9;
	padding:0 16px;
	color:#1F201F;
	font-size: 18px;
	background:#fff;
	border-radius: 15px;
}
.form select {
	font-family: 'Roboto', sans-serif;
	width:100%;
	height: 60px;
	border:1px solid #D9D9D9;
	padding:0 16px;
	color:#AEAEAE;
	font-size: 18px;
	background:#fff;
	border-radius: 15px;
}
.form select.active {
	color:#1F201F;
}
.form *::placeholder {
	color:#AEAEAE;
}
* {
	outline:none !important;
}
.form textarea {
	font-family: 'Roboto', sans-serif;
	width:calc(50% - 10px);
	margin:0 auto 30px;
	height: 175px;
	resize:none;
	border:1px solid #D9D9D9;
	padding:16px;
	color:#1F201F;
	font-size: 18px;
	background:#fff;
	border-radius: 15px;
	display:block;
}
.wpcf7-form-control-wrap {
	display:block;
}
.submit {
	border:0;
	max-width: 285px;
	margin:0 auto;
}
.wpcf7-acceptance label {
	width:100%;
	display:flex;
	max-width: 240px;
	margin:0 auto 30px;
	font-size: 14px;
	line-height: 1.6;
}
.wpcf7-acceptance {
	text-align: center;
	display:block;
}
.wpcf7-list-item {
	margin:0;
}
.wpcf7-acceptance input {
	display:none;
}
.wpcf7-acceptance input+span {
	display:flex;
	align-content: center;
	align-items: center;
	cursor:pointer;
}
.wpcf7-acceptance input+span:before {
	margin-right: 10px;
	background:#D9D9D9;
	min-width: 20px;
	height: 20px;
	border-radius: 4px;
	content:' ';
	display:block;
	margin-top: -3px;
	transition:all linear .25s;
}
.wpcf7-acceptance input:checked + span:before {
	background:#00CF80 !important;
}
form br {
	display:none;
}

.wpcf7 form .wpcf7-response-output {
	padding:15px;
	font-size:12px;
	line-height:1.3;
}
.wpcf7-not-valid-tip {
	text-align:left;
	font-size:12px;
}
.unaccepted .wpcf7-acceptance input+span:before {
	background:red;
}
.form input:not([type="checkbox"]).wpcf7-not-valid {
	border-color:red;
}
footer {
	padding:40px 0;
	background:#1F201F;
}
footer .social {
	display:flex;
}
footer img {
	display:block;
}
.social a {
	display:block;
	margin-left: 20px;
}
footer .d-flex .d-flex p,
footer .d-flex .d-flex a {
	margin:0 35px;
	padding-left: 50px;
	color:#fff;
	font-size: 16px;
	line-height: 1.6;
	display: flex;
	min-height: 40px;
	align-content: center;
	align-items: center;
}
footer .s1 {
	background:url(images/g1.svg) no-repeat left center;
}
footer .s2 {
	background:url(images/g2.svg) no-repeat left center;
}
footer .s3 {
	background:url(images/g3.svg) no-repeat left center;
}
#modal {
	display:none;
	width:100%;
	max-width: 610px;
	padding:40px 75px 60px;
	background:#fff;
	border-radius: 15px;
	box-shadow: 6px 30px 40px rgba(75,141,146,0.05);
	text-align: center;
}
#thanks {
	display:none;
	width:100%;
	max-width: 510px;
	padding:60px 35px 60px;
	background:#fff;
	border-radius: 15px;
	box-shadow: 6px 30px 40px rgba(75,141,146,0.05);
	text-align: center;
}
.fancybox__content>.f-button.is-close-btn {
	top:15px !important;
	opacity: 1 !important;
	right:15px !important;
	width:20px !important;
	height: 20px !important;
	background:url(images/close.svg) no-repeat center center;
	cursor:pointer;
}
.fancybox__content>.f-button.is-close-btn svg {
	display:none;
}
#thanks .p1,
#modal .p1 {
	text-align: center;
	margin:0 0 10px;
	font-size: 25px;
	line-height: 1.2;
font-family: 'Montserrat', sans-serif;
font-weight: 800;	
text-transform: uppercase;
}
#modal .p2 {
	text-align: center;
	margin:0 0 23px;
	line-height: 1.6;
}
#thanks .p2 {
	text-align: center;
	line-height: 1.6;
}
#modal .form .d-flex > p {
	display:block;
	width: 100%;
	margin:0;
}
#modal .form .d-flex > p > * {
	max-width: 100%;
	margin:0 0 20px;
}
#modal .form textarea {
	max-width: 100%;
	width:100%;
	margin:0 0 20px;
}
#modal .wpcf7-acceptance label {
	margin:0 auto 20px;
}
.open-menu {
	display:none;
}
.mobile-menu {
	display:none;
}
#page {
	padding: 120px 0 60px;
}
.content.text p {
	margin:0 0 20px;
}
.content.text p:last-child {
	margin: 0;
}
.content.text ul {
	padding: 0 0 0 20px;
	list-style: disc;
	margin:0 0 20px;
}
.content.text ol {
	padding: 0 0 0 20px;
	margin:0 0 20px;
}
.content.text table {
	border-collapse: collapse;
	margin:0 0 20px;
}
.content.text td {
	padding: 10px;
	border:1px solid #000;
}
footer .d-flex .d-flex a.s1 {
	white-space: nowrap;
}
footer .copy {
	margin:20px 0 0;
	text-align: center;
	color:#fff;
	opacity: 0.6;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
footer .copy a {
	text-decoration: underline;
	color:#fff;
	margin-top: 0px;
	margin-left: 4px;
}
@media screen and (max-width:1250px) {
	.content.text td {
		padding: 5px;
	}
	nav ul a {
		font-size: 14px;
		margin:0 7px;
	}
	#banner h1 {
		font-size: 65px;
	}
	body {
		font-size: 16px;
		line-height: 1.6;
	}
	#banner .sub {
		font-size: 20px;
	}
	#about .col1 {
		padding-right: 30px;
		max-width: calc(100% - 450px);
	}
	#about .col2 {
		max-width: 450px;
	}
	#about img {
		max-width: 100%;
	}
	.section-title {
		font-size: 45px;
		margin:0 0 40px;
	}
	#facts .content > div {
		padding:40px;
	}
	#facts .col2 {
		max-width: 480px;
	}
	#facts .col1 {
		max-width: calc(100% - 480px);
	}
	.exp .p1 {
		font-size: 45px;
	}
	.reviews {
		width: 100%;
	}
	.reviews .desc2, .reviews .desc1 {
		min-height: unset;
	}
	footer .d-flex .d-flex p, footer .d-flex .d-flex a {
		margin:0 10px;
	}
	header .s1 {
	margin-right:0;
	width:35px;
	height:35px;
	background-size:100% auto;}
	.open-menu {
		display:block;
		width:30px;
		height: 30px;
		background:url(images/menu.svg) no-repeat center center;
		cursor:pointer;
		margin-left: 20px;
	}
	header .d-flex > nav {
			display:none;
	}
	.mobile-menu {
		position: fixed;
		top:0;
		left:0;
		width:100%;
		height: 100%;
		overflow: auto;
		z-index:10;
		background:#fff;
		padding-right: 60px;
		padding-left: 20px;
		padding-bottom: 100px;
	}
	.mobile-menu nav {
		max-height: calc(100% - 70px);
		overflow: auto;
	}
	.mobile-menu .close {
		background:#546861 url(images/close2.svg) no-repeat center 25px;
		width:60px;
		height: 100%;
		position:absolute;
		right:0;
		top:0;
		cursor:pointer;
	}
	header .mobile-menu ul a {
		display:block;
		font-size: 18px;
		padding:20px 0;
		border-bottom: 1px solid #EDF3F1;
	}
	.lang p, .lang a {
		display: flex !important;
	}
	header .mobile-menu ul {
		display:block;
	}
	header .mobile-menu .btn {
		margin-top:20px;
	}
	header .d-flex > .btn {
		display:none;
	}
	header .lang {
		margin-left: auto;
	}
}
@media screen and (max-width:992px) {
	
	#banner h1 {
    font-size: 55px;
    max-width: 500px;
	}
	#banner .sub {
		font-size: 18px;
		margin:0 0 30px;
	}
	#banner {
		padding:150px 0 100px;
	}
	#about {
		padding:80px 0;
	}
	#about .d-flex {
		flex-wrap:wrap;
	}
	#about .col1 {
		max-width: 100%;
		margin:0 0 30px;
		padding:0;
	}
	#about .col2 {
		max-width: 100%;
		width:100%;
	}
	#about .col2 img {
		margin:0 auto;
		display:block;
		width:auto;
	}
	#facts .content > div {
		flex-wrap:wrap;
	}
	#facts .content > div .col1 {
		max-width: 100%;
		padding:0;
		margin:0 0 30px;
	}
	#facts .content > div .col2 {
		max-width: 100%;
	}
	.facts > div:last-child {
		margin-bottom: 0;
	}
	.section-title {
		font-size: 40px;
	}
	#exp {
		padding:80px 0 20px;
	}
	.exp {
		flex-wrap:wrap;
		margin:0 auto;
		max-width: 400px;
	}
	.exp > div {
		margin:0 0 70px;
	}
	#facts2 {
		padding:70px 0 0;
	}
	#facts2 .d-flex {
		flex-wrap:wrap;
	}
	#facts2 .content {
		max-width: 100%;
		margin:0 0 30px;
		min-width: unset;
		padding:0;
	}
	#facts2 .img2 {
		max-width: 100%;
		margin:0 auto;
	}
	#why {
		padding:70px 0 40px;
	}
	.why > div {
		flex-wrap:wrap;
	}
	.why .content {
		padding:0;
		max-width: 100%;
		margin:0 0 30px;
		order:1 !important;
	}
	.why .img {
		max-width: 100%;
		order:2 !important;
	}
	.why img {
		margin:0 auto;
	}
	#why .dop > div {
		background:url(images/map.jpg) no-repeat center center;
		background-size: cover;
	}
	#why .dop > div > div {
		padding:40px;
		padding-bottom: 200px;
		background:url(images/flag.png) no-repeat center bottom;
		background-size: auto 200px;
	}
	#why.ru .dop > div > div {
		background: none;
		padding-bottom: 40px;
		padding-left: 40px;
	}
	#programs {
		padding:80px 0;
	}
	.programs {
		margin:0 -10px 50px;
		flex-wrap:wrap;
	}
	.programs > div {
		max-width: calc(50% - 20px);
		margin:0 10px 20px;
	}
	.programs2 {
		margin:0 -10px 40px;
		flex-wrap:wrap;
		justify-content: center;
	}
	.programs2 > div {
		max-width: calc(50% - 20px);
		margin:0 10px 20px;
	}
	.programs3 {
		justify-content: center;
		margin-bottom: 20px;
	}
	#programs .vk + .btn2 {
		margin-bottom: 50px;
	}
	.programs3 > div {
		max-width: calc(50% - 20px);
		margin:0 10px 20px;
	}
	#programs .vk ul {
		column-count: 2;
	}
	#reviews {
		padding:80px 0;
	}
	#reviews .container > .d-flex {
		flex-wrap:wrap;
	}
	#reviews .col1 {
		padding:0;
		max-width: 100%;
		margin:0 0 30px;
	}
	#reviews .col2 {
		max-width: 100%;
	}
	#reviews .sub, #form .sub {
		margin:0 0 30px;
		font-size: 20px;
	}
	.gallery1, .gallery2 {
		grid-template-rows: 17vw 17vw;
	}
	#gallery {
		padding:0 0 80px;
	}
	.serts > div {
		height: 150px;
	}
	.form .d-flex > p {
		flex-wrap:wrap;
	}
	.form .d-flex > p > * {
		max-width: calc(50% - 20px);
	}
	.form textarea {
		width: 100%;
	}
	footer .container > .d-flex {
		flex-wrap:wrap;
		justify-content: center;
	}
	footer .d-flex .d-flex {
		margin:20px 0;
	}
	.social a {
		margin:0 10px;
	}
	.why > div:nth-child(even) .content {
		padding:0;
	}
	.reviews .slick-slide {
		margin:0;
	}
	#why .steps > div {
		padding-top: 60px;
	}
}
@media screen and (max-width:767px) {
	header .s1 {
		margin-left: auto;
	}
	.lang {
		display: flex;
		gap:20px;
		margin-top: 20px;
	}
	.lang > div {
		position: static;
		opacity: 1;
		visibility: visible;
		min-width: unset;
	}
	.lang a {
		background: none;
	}
	.lang p, .lang a {
		padding: 5px 0 !important;
		background: none !important;
		border:0 !important;
	}
	header .d-flex > .lang {
		display: none !important;
	}
	#page {
		padding: 90px 0 50px;
	}
	
	.gallery2,
	.gallery1 {
		display: block;
	}
	header {
		padding:20px 0;
	}
	#banner {
		background:url(images/banner2.jpg) no-repeat center bottom !important;
		background-size: cover !important;
		padding:85px 0 385px;
		text-align: center;
	}
	#banner h1 {
		max-width: 100%;
		margin:0 0 12px;
		font-size: 40px;
		line-height: 1.2;
	}
	#banner .sub {
		background-position: center top;
		padding:31px 0 0;
		font-size: 18px;
		line-height: 1.6;
		margin:0 0 15px;
	}
	.btn2 {
		height: 50px;
	}
	#banner .btn2 {
		max-width: 240px;
		margin:0 auto;
	}
	#about {
		padding:50px 0;
	}
	.section-title {
		text-align: center;
		font-size: 34px;
		line-height: 1.4;
		margin:0 0 25px;
	}
	body {
		font-size: 14px;
		line-height: 1.8;
	}
	#about .sub {
		padding-left: 90px;
		background-size: 70px auto;
		font-size: 14px;
		margin:0 0 25px;
	}
	#about .col2 img {
		border-radius: 30px;
	}
	#facts .content {
		margin:0 -20px;
		padding:50px 20px;
		border-radius: 0;
	}
	#facts .content > div {
		padding:0;
		position:relative;
		padding-bottom: 80px;
	}
	#facts .section-title {
		margin:0 0 30px;
	}
	#facts .btn2 {
		position: absolute;
		bottom:0;
		left:calc(50% - 142px);
	}
	.btn2 {
		font-size: 14px;
	}
	#facts .content > div .col1 {
		margin: 0;
	}
	.facts > div {
		padding:15px;
		margin:0 0 20px;
	}
	.facts .img {
		width:80px;
		min-width: 80px;
		height: 80px;
		margin-right: 10px;
	}
	.facts .p1 {
		font-size: 34px;
		margin-right: 15px;
	}
	.facts .p2 {
		font-size: 14px;
	}
	#exp {
		padding:50px 0 25px;
	}
	#exp .section-title {
		margin:0 0 37px;
	}
	.exp .p1:before {
		width:80px;
		height: 80px;
		top:calc(50% - 40px);
	}
	.exp .p1 {
		font-size: 48px;
		margin-right: 40px;
	}
	.exp .p2 {
		font-size: 14px;
	}
	.exp > div {
		margin:0 0 30px;
	}
	#facts2 {
		padding:50px 0 0;
	}
	.facts2 > div {
		max-width: 100%;
		margin:0 0 20px;
		font-size: 14px;
		align-content: center;
		align-items: center;
	}
	.facts2 > div:nth-child(even) {
		order:2;
	}
	.facts2 .img {
		width:80px;
		min-width: 80px;
		margin-right: 15px;
		height: 80px;
	}
	#facts2 .content {
		margin:0 0 15px;
	}
	.facts2 .img img {
		max-width: 40px;
		max-height: 40px;
	}
	#why {
		padding:50px 0 50px;
	}
	#why .dop {
		margin-top: 50px;
		border-radius: 30px;
	}
	#why .dop > div {
		border-radius: 30px;		
	}
	#why.ru .dop > div > div,
	#why .dop > div > div {
		flex-wrap:wrap;
		justify-content: center;
		padding:20px 15px 225px;
		background-size: auto 230px;
		border-radius: 30px;
	}
	#why.ru .dop > div > div {padding-bottom: 20px;}
	#why .dop p {
		margin:0 0 25px;
	}
	#why .dop .btn2 {
		max-width: 100%;
	}
	#programs {
		padding:50px 0;
	}
	#programs .sub {
		font-size: 18px;
		margin:0 0 10px;
	}
	.programs {
		margin:0 -3px 30px;
	}
	.programs > div {
		margin:0 3px 20px;
		max-width: calc(50% - 6px);
		padding:13px 15px 25px;
	}
	.programs .p1 {
		display:flex;
		height: 62px;
		font-size: 18px;
		line-height: 1.2;
		align-content: center;
		align-items: center;
		justify-content: center;
		padding:0 10px;
		background-size: 100% 100%;
		margin:0 0 15px;
	}
	.programs .p2 {
		font-size: 14px;
		margin:0 0 5px;
	}
	.programs .p4 {
		font-size: 34px;
		margin:0 0 8px;
	}
	.programs2 > div {
		max-width: 100%;
		margin:0 0 20px;
	}
	.programs2 {
		margin:0 0 30px;
	}
	.programs2 .p1 {
		max-width: 240px;
		margin:0 auto 15px;
	}
	.programs2 .p2 {
		font-weight: 700;
	}
	#programs .sub2 {
		font-size: 18px;
		margin:0 0 30px;
	}
	#programs .vk {
		margin:0 0 30px;
	}
	#programs .vk ul {
		column-count: 1;
	}
	#reviews {
		padding:50px 0;
	}
	#reviews .sub {
		text-align: center;
		margin:0 0 20px;
		font-size: 18px;
	}
	#reviews .col1 {
		margin:0;
	}
	#reviews .arrows {
		position:absolute;
		justify-content: center;
		bottom: 0;
		left:0;
		width:100%;
	}
	.arrow {
		margin:0 20px;
	}
	#reviews .container > .d-flex {
		padding-bottom: 90px;
		position:relative;
	}
	.reviews .slick-slide {
		padding:30px 20px;
	}
	.reviews {
		padding:0;
		margin:0 -20px;
		width:calc(100% + 40px);
	}
	.reviews .slick-list {
		margin:0;
	}
	.reviews .top img {
		width:60px;
		min-width: 60px;
		height: 60px;
	}
	.reviews .top p {
		font-size: 18px;
	}
	.reviews .top {
		margin:0 0 20px;
	}
	.reviews .desc1 {
		margin:0 0 20px;
		padding:0 0 30px;
	}
	.reviews .desc2 {
		padding:57px 0 0;
	}
	#gallery .arrows {
		display:flex !important;
		justify-content: center;
		margin:0 0 30px;
	}
	.gallery1 {
		margin:0 0 30px;
	}
	.gallery2 img, .gallery1 img {
		height: auto;
		max-width: 100%;
	}
	.gallery2 {
		display:none;
	}
	#gallery .btn2 {
		margin:0 auto;
	}
	#gallery {
		padding:0 0 50px;
	}
	#serts .content {
		padding:50px 20px 30px;
		margin:0 -20px;
		border-radius: 0;
	}
	.serts {
		margin:0;
		flex-wrap:wrap;
	}
	.serts > div {
		max-width: 100%;
		margin:0 0 20px;
		padding:35px;
		height: 190px;
	}
	#serts {
		padding:0 0 50px;
	}
	.form .d-flex > p > * {
		max-width: 100%;
		margin:0 0 20px;
		width: 100%;
	}
	.form .d-flex > p {
		margin:0;
	}
	.form input:not([type="checkbox"]) {
		border-radius: 10px;
		font-size: 16px;
		height: 50px;
	}
	
	.form select {
		border-radius: 10px;
		font-size: 16px;
		height: 50px;
	}
	.form textarea {
		border-radius: 10px;
		height: 175px;
		font-size: 16px;
	}
	#form {
		padding:0 0 50px;
	}
	footer .container > .d-flex {
		justify-content: space-between;
		align-content: center;
		align-items: center;
	}
	footer .d-flex .d-flex {
		margin:30px auto 0;
		padding:25px 0 0;
		border-top: 1px solid #353635;
		width:100%;
		order:3;
		flex-wrap:wrap;
		display:block;
		text-align: center;
	}
	.social a {
		margin-left: 15px;
		margin-right: 0;
	}
	.social a img {
		max-width: 30px;
	}
	footer .d-flex .d-flex p, footer .d-flex .d-flex a {
		width:100%;
		margin:0 0 25px;
		font-size: 14px;
		height: 30px;
		background-size: auto 30px;
		padding-left: 40px;
		text-align: left;
	}
	footer {
		padding:50px 0 25px;
	}
	#thanks, #modal {
		border-radius: 0;
		padding:50px 20px;
	}
	#thanks .p1, #modal .p1 {
		margin:0 0 10px;
		line-height: 1.2;
	}
	#modal .p2 {
		margin:0 0 30px;
	}
	#why .steps {
		padding-bottom: 50px;
		margin-top: 50px;
	}
	#why .steps > div {
		padding-top: 50px;
	}
	#why .steps:before {
		left: -20px;
		right: -20px;
		top:0;
		border-radius: 0;
		height: 100%;
	}
	#why .steps .sub {
		font-size: 18px;
		margin:0 0 25px;
	}
	#why .steps .slick-slide {
		padding: 15px 20px;
	}
	#why .steps .st {
		padding:0 0 90px;
		margin: 0 ;
	}
	#why .steps .btn2 {
		margin-top: 30px;
	}
	#why .slick-arrow {
		top:auto;
		bottom: 0;
		width: 60px;
		height: 60px;
	}
	#why .slick-prev {
		left: calc(50% - 80px);
	}
	#why .slick-next {
		right: calc(50% - 80px);
	}
	.programs2 > div {
		max-width: 100%;
		margin:0 0 20px;
	}
	.programs2 {
		justify-content: center;
		margin-bottom: 20px;
	}
	.programs3 > div {
		max-width: 100%;
		margin:0 0 20px;
	}
	.programs3 .p4 {
		margin: 0 0 3px;
	}
	.programs3 .desc {
		margin-bottom: 0;
	}
	.programs3 {
		justify-content: center;
		margin-bottom: 10px;
	}
	.programs ul li {
		font-size: 14px;
		background-position: left center;
	}
	.programs3 + .dop a {
		display: flex;
		margin:10px 0 0;
		justify-content: center;
	}
	.programs3 .p1 {
		max-width: 240px;
		margin-left: auto;
		margin-right: auto;
	}
	.programs3 .s2 .p1 {
		background-size: 100% 100%;
	}
	#why .steps .slick-slide > p {
		font-size: 14px;
	}
}
@media screen and (max-width:550px) {
	footer .d-flex .d-flex {
		margin:30px auto 0;
		padding:25px 0 0;
		border-top: 1px solid #353635;
		width:100%;
		order:3;
		flex-wrap:wrap;
		display:block;
		text-align: center;
		max-width: 265px;
	}
}