

@media screen and (max-width: 1239px){
	.container,header .container,#promo .container{max-width: 100%; padding: 0 32px;}

	#breadcrumbs .container.container__max,#mission .container.container__max,#contacts .container.container__max{padding: 0 32px;}


	.bt{font-size: 32px; line-height: 1.2;}


	header nav{display: none; position: absolute; top: 100%; left: 0; width: 100%; z-index: 300; background: #fff; box-sizing: border-box;}
	header nav ul{display: block; border-bottom: 1px solid rgba(0, 0, 0, 0.2);}
	header nav ul li{width: 100%;}
	header nav ul li a{display: block; padding: 20px 32px; border-top: 1px solid rgba(0, 0, 0, 0.2);}
	header ul li .text span{display: none;}
	header ul li a:hover .text{transform: translateY(0);}
	header ul li .text span:first-child{display: block;}
	header .phone{display: flex; align-items: center; justify-content: center; gap: 30px;}
	header .pull{display: flex; width: 30px; height: 30px; background: url("../img/pull.svg") 50% 50% no-repeat; background-size: 100%; transform: rotate(180deg);}
	header .pull.open{background: url("../img/close.svg") 50% 50% no-repeat; background-size: 20px;}


	#breadcrumbs .gallery{position: relative;}
	#breadcrumbs .gallery .left{width: 100%; margin-bottom: 16px;}
	#breadcrumbs .gallery .right{width: 100%; position: relative;
	overflow: hidden;}
	#breadcrumbs .gallery .right img{display: flex; width: calc(25% - 16px)}
	#breadcrumbs .gallery .right .slide-video .video-thumb {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.slide-video .play-icon {
		width: 48px;
		height: 38px;
	}
	/* Стрілки на основному слайдері, не на мініатюрах */
	#breadcrumbs .gallery .right .swiper-button-prev,
	#breadcrumbs .gallery .right .swiper-button-next{
		position: absolute !important;
		top: 20% !important;
		margin: 0 !important;
		transform: translateY(-50%) !important;
	}
	#breadcrumbs .gallery .right .swiper-button-prev{left: 15px !important; right: auto !important;}
	#breadcrumbs .gallery .right .swiper-button-next{right: 15px !important; left: auto !important;}


	#promo{padding-left: 32px; padding-right: 32px;}
	#promo .container{padding: 0}
	#promo .video{height: 950px;}
	#promo.promo__home .video{height: 100%;}
	#promo .data{padding: 48px;}
	#promo .data .text h1{font-size: 64px; line-height: 1;}
	#promo .data .text p{max-width: 420px; font-size: 22px}
	#promo .reviews .stars{margin: 0}


	#contact__rooms .container{padding: 0 80px}
	#contact__rooms .data{width: 100%; margin-bottom: 48px}
	#contact__rooms .image{width: 100%;}
	.home #contact__rooms .image {
		display: none;
	}
 #contact__rooms .container {gap: 0px; }
	.home #contact__rooms .gallery-mobile .slider-sw .swiper-button-prev,	.home #contact__rooms .gallery-mobile .slider-sw .swiper-button-next{display: none;}
	#contact__rooms .data .title{font-size: 24px;}



	#services .container{padding: 0 80px}
	#services .list__services .steps{width: 100%; display: block; height: auto;}
	#services .step{display: block; width: 100%; margin-bottom: 96px;}
	#services .step:last-child{margin: 0}
	#services .step:after{display: none;}
	#services .step .content{position: relative;}
	#services .step .title__step{transform: none; color: #C7C7C7!important}
	#services .step .image{opacity: 1; height: 300px}
	#services .step .image img{width: 100%; height: 300px;}
	#services .step .title__step:after{position: absolute; top: -40px; left: calc(100% - 40px); width: 40px; height: 40px; background: url("../img/arrt.svg") 100% 100% no-repeat; content: ''; transform: rotate(180deg);}
	#services .step .title__step:before{position: absolute; bottom: 0; left: -40px; width: 40px; height: 40px; background: url("../img/arrt.svg") 100% 100% no-repeat; content: ''; transform: rotate(180deg);}
	#services .step .title__step{transform: none; color: var(--black); text-transform: none; position: absolute; bottom: 0; right: 0; background: #fff; border-radius: 32px 0 0 0; display: block; gap: 0; padding: 0 0 0 24px; border: none;}
	#services .step .title__step span{width: 100%; line-height: normal;}
	#services .step .title__step .title{font-weight: 600; text-transform: none; font-size: 18px;}
	#services .list__services .step .service__description{position: relative!important; width: 100%; transform: none; margin-top: 24px; display: none;}

	#services .list__services .step .service__description .icon{position: absolute; top: 0; left: 0; margin: 0}
	#services .list__services .step .service__description .title__s{padding-left: 64px; display: flex; min-height: 48px; align-items: center; justify-content: flex-start; margin-bottom: 12px;}
	#services .list__services .step .service__description p{font-size: 16px;}
	#services .step .title__step span{line-height: 1!important; padding-top: 15px!important; display: block!important;}





	#stations .slider-sw{width: calc(100% - 440px); border-radius: 20px;}
	#stations .data{width: 400px; padding: 0}
	#stations .image img{height: 210px;}


	#partners:after,#partners:before,#consultation:before,#consultation:after,#certificates:after,#consultation__bg.bg__white__top:before,#quiz:before,#quiz:after{background-position: 0 100%}

	#consultation__bg.bg__white__top {
		margin-top: 50px;
	}


	.home #consultation__bg.bg__white__top,
	.page-template-page-about-us #consultation__bg.bg__white__top,
	.post-type-archive-project #consultation__bg.bg__white__top,
	.page-template-page-services #consultation__bg.bg__white__top
	 {
		margin-top: -13rem;
	}

	.page-template-page-service-single #quiz {
		margin-bottom: 4rem;
	}

	#stations .bt{max-width: 90%;}


#consultation__bg .container{padding: 0 80px;}
	#consultation .form,#consultation__bg .form{width: 330px;}
	#consultation .text, #consultation__bg .text{max-width: calc(100% - 380px)}

.home #solutions {
	margin-top: -50px;
}
	#solutions .grid.grid-3{grid-template-columns: repeat(2, 1fr);}
	.item__solution a{padding: 80px 24px 32px}
	.item__solution .title{font-size: 20px; left: 24px; top: 24px; width: calc(100% - 48px)}
	.item__solution .image{height: 180px}


	.item__solution.item__solution__service .item-s .image{
		height: auto;
	}
	#reviews .bt{max-width: 100%; width: 100%; margin-bottom: 48px}
	#reviews .list__reviews{width: 100%;}


	#certificates{padding: 24px 0;}


	.bt__large{font-size: 60px; line-height: 60px;}


	#mission .grid{gap: 40px;}


	#mission .container.container__max,#contacts .container.container__max{padding: 0 32px}
	#mission .video{height: 470px;}


	#socials a{padding: 24px 24px 24px 134px; height: 100%;}

	#socials .items .item {
		width: calc(100% - var(--space-3));
	}
	#generation{overflow: hidden;}
	#generation .slider-sw{padding: 0}
	/* #generation .slider-sw .swiper-button-prev,#generation .slider-sw .swiper-button-next{display: none;} */
	#generation .swiper{overflow-x: inherit;}
	.item__generation .title{font-size: 20px; line-height: 24px;}


	#contact__rooms .gallery .grid,.blog__items.grid.grid-3{grid-template-columns: repeat(2, 1fr);}


	#advantages .bt{width: 100%; margin-bottom: 48px; max-width: 100%;}
	#advantages .items{width: 100%;}
	#advantages .item{font-size: 24px;}


	#credit .flex{justify-content: center;}

	#promo .data.flex .text,#promo .data.flex .form{width: 100%;}


	#stations.ss__full .data{width: 100%; max-width: 100%; position: relative; bottom: 0; left: 0; color: var(--black); padding-top: 32px;}
	#stations.ss__full .image img{height: 500px}


	#article .project__tth,#contact__rooms .project__tth{display: flex; justify-content: space-between; flex-wrap: wrap; gap: 0!important}
	#article .project__tth .item,#contact__rooms .project__tth .item{width: 48%;}
	#article .project__tth .item.ct,#contact__rooms .project__tth .item.ct{width: 100%; margin-top: 16px;}
	#article .project__tth .item.ct,#contact__rooms .project__tth .item.ct{padding: 35px 35px 35px 84px; background-position: 30px 50%}
	#article .project__tth .item.ct .title,#contact__rooms .project__tth .item.ct .title{font-size: 20px; margin-bottom: 5px;}


	#contacts .data{width: 100%;}
	#contacts .form{width: 100%; margin-top: 16px;}


	#address .item{width: 100%; margin-bottom: 24px;}
	#address .item:last-child{margin: 0}

	#gallery .left, #gallery .right{width: 100%;}


	#blog .search__form{padding-bottom: 40px}



	#quiz .items{grid-template-columns: repeat(2, 1fr);}

	#contacts .project__tth{width: 100%; max-width: 100%;}
	#contacts .project__tth .item{width: 100%; max-width: 100%;}


	#promo.page__about .video{height: 100%;}


	.swiper__project__thumbnails .swiper-slide{width: 25%!important; height: 200px!important}
	.swiper__project__thumbnails .swiper-slide img{width: 100%!important;}
	
	#breadcrumbs{overflow: hidden;}
	#breadcrumbs .swiper-button-prev{left: 75%; margin: -24px; transform: none; top: 90%!important}
	#breadcrumbs .swiper-button-next{right: 30px; margin: -24px; transform: none; top: 90%!important}
	.swiper__project__thumbnails{height: auto; overflow-x: visible;}

	.thumbnails .swiper-button-prev,
	.thumbnails .swiper-button-next {
			display: none;
	}

	footer .col.col__logo{max-width: calc(100% - 540px)}
	footer .col.col__logo p{font-size: 14px; line-height: normal;}
	footer .col .it{max-width: 160px}
	footer .col .it li a{font-size: 12px;}
}



@media screen and (max-width: 809px){
	#our__advantages .items,#quiz .items{grid-template-columns: repeat(1, 1fr);}
	#our__advantages .item{padding: 24px 32px;}
	#our__advantages .item .title{font-size: 18px;}
	#quiz .form{max-width: 100%;}
}
/* Скрыть стрелки на основном слайдере на десктопе */
@media (min-width: 1239px) {
    .project-template-default .slider-sw:not(.thumbnails) .swiper-button-prev,
    .project-template-default .slider-sw:not(.thumbnails) .swiper-button-next {
        display: none;
    }
}



@media screen and (max-width: 767px){
	.container,header .container,#promo .container,#breadcrumbs .container.container__max, #mission .container.container__max,#contacts .container.container__max{max-width: 100%; padding: 0 16px;}

	body{font-size: 16px; padding: 60px 0 0;}


	.section{padding: 40px 0;}
	.page-template-page-services #services{padding-bottom: 40px;}
	.section__bottom{padding: 0 0 40px;}


	.bt{font-size: 22px; line-height: 26px; text-align: center; margin-bottom: 30px;}
	.bt__note{text-align: center; font-size: 16px;}
	.bt__large{font-size: 36px; line-height: 36px;}


	.btn-orange{padding: 0 20px; font-size: 16px;}


	header{padding: 5px 0}
	header .logo{max-width: 135px}
	header .phone{gap: 15px}
	header .phone a{font-size: 16px}
	header .pull{display: 20px; height: 20px; background-size: auto 100%;}


	#breadcrumbs a,#breadcrumbs span{display: inline;}
	#breadcrumbs a.home{display: inline-block;}


	#promo{padding: 0 16px; margin-bottom: 0px; min-height: 0; height: calc(100dvh - 70px);}
	#promo.page__about{height: calc(100vh - 120px)}
	#promo .container{padding: 0; min-height: 0;}
	#promo .video{min-height: 200px; height: 100%; text-align: center;}
	#promo .data{padding: 0 24px 24px; max-width: 100%;}
	#promo .data .text h1.nm {
		margin-bottom: 50px;
	}
	#promo .data .text h1{font-size: 36px; line-height: 36px; max-width: 100%}
	#promo .data .text p{font-size: 18px; line-height: 20px; max-width: 100%}
	#promo .data .btn{width: 100%;}
	#promo .reviews{justify-content: flex-end; height: auto; width: 156px; padding: 10px 0 0; gap: 0}
	#promo .reviews .images{width: 100%; justify-content: flex-end;}
	#promo .reviews img{width: 44px; height: 44px;}
	#promo .reviews .rating{font-size: 14px; text-align: right; justify-content: flex-end; padding-right: 8px;}
	#promo .reviews .rating .stars{justify-content: flex-end;}
	#promo .year{height: 54px; margin: 0 auto; font-size: 22px;}
	#promo .data.align__end{align-items: flex-end;}


	#contact__rooms .container{padding: 0 16px;}
	#contact__rooms .data{padding: 36px 24px 36px 85px; background-position: 32px 30px; background-size: 24px; margin-bottom: 20px;}
	#contact__rooms .data .title{font-size: 18px;}
	#contact__rooms .gallery{ display: none;}
	#contact__rooms .image img{display: none;}
	#contact__rooms .gallery-mobile{display: block;}
	#contact__rooms .gallery .grid img{height: 240px;}


	#services .container{padding: 0 16px;}
	#services .list__services{display: block;}
	#services .list__services .step{margin-bottom: 70px;}
	#services .step.active .content .image{display: block;}
	#services .list__services .step .service__description{display: none; transition: none;visibility: initial !important;opacity: 1;}

	#services .list__services .step .service__description .icon{top: 10px;}
	#services .list__services .service__description img{width: 32px; height: 32px;}
	#services .list__services .step .service__description .title__s{padding-left: 48px;}
	#services .list__services .step:last-child{margin: 0}


	#stations .bt{max-width: 100%;}
	#stations .slider-sw{width: 100%; margin-bottom: 20px;}
	#stations .data{width: 100%;}
	#stations.ss__full .data{padding-top: 0}
	#stations .data .title {
		color: #2c2c2c;
	}
	#consultation {
		padding: 125px 0;
	}
	#consultation .container, #consultation__bg .container{padding: 40px 32px;}
	#consultation .text, #consultation__bg .text{max-width: 100%; width: 100%; margin-bottom: 32px;}
	#consultation .bt, #consultation__bg .bt,#consultation .bt__note, #consultation__bg .bt__note{text-align: left;}
	#consultation .form, #consultation__bg .form{width: 100%; padding: 24px;}

	#partners:after, #partners:before, #consultation:before, #consultation:after, #certificates:after{background-position: 0 101%;}



	#solutions .bt{max-width: 100%;}
	#solutions .grid.grid-3{grid-template-columns: repeat(1, 1fr);}
	.item__solution .title{font-size: 18px; line-height: 24px;}


	#reviews .bt{text-align: left; margin-bottom: 40px;}
	.item__review{width: 100%;}
	.item__review .text{font-size: 14px; margin-bottom: 15px; line-height: 21px;}
	.item__review .user .status,.item__review .user .name{font-size: 14px;}
	#reviews .flex__center{padding: 32px 0 0;}


	#consultation__bg{padding: 160px 0;}


	#mission .grid{grid-template-columns: repeat(1, 1fr); gap: 60px; text-align: center;}
	#mission .grid .item{text-align: center; padding: 0 40px;}
	#mission .grid .icon{margin: 0 auto 40px;}
	#mission .video{height: 260px;}
	#mission .item .count{font-size: 18px;}
	#mission .item .count span{font-size: 36px;}


	#socials .grid.grid-2,.blog__items.grid.grid-3{grid-template-columns: repeat(1, 1fr);}
	#socials .title{font-size: 18px; margin: 0 0 4px}



	#blog .bt{text-align: left;}


	#advantages .bt{width: 100%; margin-bottom: 48px; max-width: 100%;}
	#advantages .items{width: 100%;}
	#advantages .item{font-size: 24px;}


	#credit .flex{justify-content: center;}
	#credit .item{width: 100%;}
	#credit .top{height: auto; font-size: 18px; line-height: normal;}
	#credit .top span{font-size: 22px;}


	#address .item .ct span{display: block;}


	#advantages .item{padding: 24px; display: block; height: auto; font-size: 18px;}
	#advantages .item span{position: relative; width: 100%; text-align: center; top: 0; left: 0; display: block; font-size: 36px; margin-bottom: 5px;}


	#promo .data .text h1.small{font-size: 22px;}

	.page-template-page-service-single #promo .data {
		height: 90%;
	}

	#promo.page__about.page__services .video{height: auto;}
	#promo.page__about.page__services .video{height: 100%; padding: 50px 0}


	#breadcrumbs .container.container__max h1{text-align: left;}

	#breadcrumbs img{height: 240px;}
	.content .bt{text-align: left; margin-bottom: 15px;}
	.content{font-size: 16px; line-height: normal;}
	.content h2,.content h3,.content h4,.content h5,.content h6{}

	.content iframe {
		height: 280px;
}
	#stations.ss__full .image img{height: 300px}


	#promo .data .note{font-size: 18px;}


	#contacts .bt{text-align: left;}
	#contacts .note{font-size: 18px;}


	#address .item img{height: 220px;}
	#address .item .data{padding: 24px;}
	#address .item .title{font-size: 20px;}


	#gallery a{width: 100%!important; height: 300px!important}
	#gallery .gallery-pc{display: none;}
	#gallery .gallery-mobile{display: block;}


	#our__advantages .bt{text-align: left;}


	#certificates::before{background-position: 50% 100%;}


	#services .step{margin-bottom: 0!important; border-bottom: 1px solid #C7C7C7;}
	#services .step .content:after{position: absolute; width: 40px; height: 40px; top: 15px; right: 0; content: ''; background: url("../img/arrow-left.svg") 50% 50% no-repeat; transform: rotate(90deg);}
	#services .step .content .image{position: relative; width: 100%; display: none; height: 220px; overflow: hidden; border-radius: var(--radius-xl, 16px);}
	#services .step.active .content:after{display: none;}
	#services .step.active .content .image{display: block;}
	#services .step .content .image img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 0.45s ease-out;}
	#services .step.active .content .image img.loaded{opacity: 1;}
	#services .step .title__step{position: relative!important; width: 100%!important; padding: 0 0 10px!important; display: flex!important; align-items: center!important; justify-content: flex-start!important;}
	#services .step .title__step span{width: 60px!important;}
	#services .step .title__step .title{text-transform: uppercase; top: 8px!important; position: relative!important; text-transform: uppercase!important;}


	#services .step.active{padding-bottom: 20px;}
	#services .step.active{margin-top: 20px!important}
	#services .step.active .content .image{display: block;}
	#services .step.active .title__step{width: auto!important; transform: none!important; color: var(--black)!important; text-transform: none!important; position: absolute!important; bottom: 0!important; right: 0!important; background: #fff!important; border-radius: 32px 0 0 0!important; display: block!important; gap: 0!important; padding: 0 0 0 24px!important; border: none!important;}
	#services .step.active .title__step span{width: 100%!important; line-height: normal!important;}
	#services .step.active .title__step .title{font-weight: 600!important; text-transform: none!important; font-size: 18px!important; top: 0!important}
	#services .step .title__step .title{font-size: 26px!important; font-weight: 700!important; text-transform: uppercase!important;}
	#services .step .title__step span{font-size: 44px!important; font-weight: normal!important;}


	#generation.generation__article{padding-bottom: 50px}
	#generation.generation__article .bt{text-align: left;}

	#quiz .checkbox__locations {
		display: grid;
		grid-template-columns: 150px 1fr;
		gap: 16px;
		border-radius: 18px;
	}
	#quiz .checkbox__locations .btn {
		margin: 0 auto 0;
		width: 32px;
		height: 32px;
	}
	#quiz .checkbox__locations img {
		width: 100%;
		height: 100%;
		object-fit: contain;
	}
	#quiz .checkbox__locations .data {
		padding: 12px;
		display: flex;
		align-items: center;
	}
	#quiz .checkbox__locations .title{font-size: 18px; line-height: 22px;}
	#quiz .bt{text-align: left;}
	#quiz .actions{gap: 16px;padding: 30px 0 0;}
	#quiz .actions .btn-prev {
		order: 2;
	}

	#quiz .actions .btn{width: 100%;}
	#quiz .bt__note{text-align: left;}
	#quiz .quiz__img img{max-width: 100%; width: 100%;}


	#reviews .list__reviews{display: block;}
	#reviews .list__reviews .it{width: 100%;}


	.swiper__project__thumbnails .swiper-slide{width: 31.5%!important; height: 100px!important}
	.swiper__project__thumbnails .swiper-slide img{height: 100%!important; border-radius: 20px!important;}


	#breadcrumbs .gallery .left img {
		height: 300px;
	}

	footer{padding-bottom: 40px;}
	footer .col.col__logo{max-width: 100%; width: 100%; order: 0; text-align: left; margin-bottom: 40px;}
	footer .col.col__logo img{margin: 0 auto;}
	footer .phone{margin-bottom: 10px;}
	footer .phone a{font-size: 32px;}
	footer .col.col__nav{width: 100%; order: 1; text-align: left;}
	footer .col.col__nav .it{width: 100%; max-width: 100%; margin-bottom: 40px;}
	footer .copyright{order: 2; text-align: left; justify-content: flex-start; padding-top: 0;}

	.page-404{padding: 60px 0 80px;}
	.page-404 p{font-size: 18px;}

	.wave-top svg {
		min-width: 1920px;
	}
	.wave-bottom svg {
		min-width: 1920px;
	}
	#promo .image__promo.mobile{display: block;}
	#promo .image__promo.desktop{display: none;}
	.home #seo-content, .page-template-page-services #seo-content, .page-template-page-service-single #seo-content {
    margin-bottom: 11rem;
}
.content  img{
	max-width: 100%;
	width: 100%;
}
#banner-article {
	margin-bottom: 3rem;
}
#banner-article .b-mobile {
	display: block;
	}
	#banner-article .b-pc {
	display: none;
	}
}