@font-face {
	font-family: 'Inter';
	src: url('../fonts/Inter-SemiBold.woff2') format('woff2'),
		url('../fonts/Inter-SemiBold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Inter Tight';
	src: url('../fonts/InterTight-Medium.woff2') format('woff2'),
		url('../fonts/InterTight-Medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Inter Tight';
	src: url('../fonts/InterTight-Regular.woff2') format('woff2'),
		url('../fonts/InterTight-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Inter Tight';
	src: url('../fonts/InterTight-SemiBold.woff2') format('woff2'),
		url('../fonts/InterTight-SemiBold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Inter Tight';
	src: url('../fonts/InterTight-Bold.woff2') format('woff2'),
		url('../fonts/InterTight-Bold.woff') format('woff');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Inter';
	src: url('../fonts/Inter-Medium.woff2') format('woff2'),
		url('../fonts/Inter-Medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Inter';
	src: url('../fonts/Inter-Regular.woff2') format('woff2'),
		url('../fonts/Inter-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

:root{
	--font-family: 'Inter Tight';
	--theme-color: var(--akcentnyy);
	--text-color: var(--chernyy);
	--background-color: var(--fon);
	accent-color: var(--theme-color);
	--akcentnyy: #5dc7c3;
	--chernyy: #192020;
	--fon2: #1e242b;
	--belyy: #fdfdfd;
	--fon: #f2f4f7;
	--krasnyy: #ed5a2e;
	--belyy: #fff;
	--wrapper-size: 100%;
	--wrapper-padding: 7rem;
	--section-margin: 4rem;
	--radius: 2rem;
}

html{
	font-size: 0.521vw;
	height: 100%;
	scroll-behavior: smooth;
}

section{
	padding: var(--section-margin) 0px;
}

section:not(.no-border) + section:not(.no-border) .wrapper:first-child{
	padding-top: calc(var(--section-margin) + var(--section-margin));
	border-top: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.intro{
	padding-top: 0rem;
	padding-bottom: 0rem;
}

/* @media (min-width: 1470px) {
	html{
		font-size: 10px;
	}
} */
@media (max-width: 1470px) {
	html{
			font-size: 0.621vw;
	}
}

@media (min-width: 1920px) {
	html{
		font-size: 0.521vw;
	}
}

body{
	font-family: var(--font-family);
	display: flex;
	flex-direction: column;
	min-height: 100%;
	font-size: 1.8rem;
	min-width: 320px;
	font-weight: 400;
	background-color: var(--background-color);
	color: var(--text-color);
	transition: opacity 0.25s ease;
}

html.fonts-loading body{
	opacity: 0;
}

body::-webkit-scrollbar{
	width: 0.8rem;
}

body::-webkit-scrollbar-thumb{
	background-color: var(--theme-color);
}

::selection{
	background-color: var(--theme-color);
	color: #FFF;
}


body.scroll-lock, body.menu-open{
	overflow: hidden;
}

.mob-tel{
	display: none;
}

.mob-mini-tel{
	display: none;
}

.main{
	flex-grow: 1;
}

.wrapper{
	width: min(var(--wrapper-size), calc(100% - (var(--wrapper-padding) + var(--wrapper-padding))));
	margin-inline:auto;
}

.wrapper-padding{
	padding-left: max(var(--wrapper-padding), calc((100% - var(--wrapper-size)) / 2));
	padding-right: max(var(--wrapper-padding), calc((100% - var(--wrapper-size)) / 2));
}

.wrapper-padding.scroll-table::-webkit-scrollbar, .wrapper-padding.scroll-phone{
	display: none;
}

.menu-burger{
	display: none;
}

.button, a.button{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	text-align: center;
	padding: 0.5rem 3rem;
	font-weight: 500;
	min-height: 6rem;
	font-size: 1.6rem;
	line-height: 1.2;
	color: var(--belyy);
	background-color: var(--theme-color);
	border-radius: 1rem;
	cursor: pointer;
	transition: 0.2s ease 0s;
}

header, footer, main{
width: 100% !important;
}

.header .button, .header .button-border{
	min-height: 5rem;
}

.button:hover{
	opacity: 0.85;
}

.button-border, a.button-border{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	text-align: center;
	padding: 0.5rem 3rem;
	font-weight: 500;
	min-height: 6rem;
	font-size: 1.6rem;
	line-height: 1.2;
	background-color: transparent;
	border: 0.1rem solid rgba(25, 32, 32, 0.30);
	border-radius: 1rem;
	cursor: pointer;
	transition: 0.2s ease 0s;
}

.button-border:hover{
	background-color: var(--theme-color);
	color: var(--belyy);
		border: 0.1rem solid var(--theme-color);
}

.button_black, a.button_black{
	color: var(--belyy);
	background-color: var(--fon2);
}

[data-modal]{
	cursor: pointer;
}

.modal {
	display: none;
}
.pp-animate .modal__body{
	opacity: 1;
	translate: 0px 0px;
}

.pp-animate .modal__fade{
	background-color: rgba(24, 24, 27, 0.88);
}

.modal-close::before{
	transform: rotate(-45deg);
	top: calc(50% - 0.3rem);
}

.modal-close::after{
	transform: rotate(45deg);
	bottom: calc(50% - 0.1rem);
}

.pp-unanimate .modal__body{
	opacity: 0;
	translate: 0px 2rem;
}

.modal-close{
	padding: 0.7rem 0.7rem;
	display: flex;
	position: relative;
	align-self: center;
	background-color: #ffffff00;
	width: 3.5rem;
	height: 3.5rem;
	z-index: 12;
	cursor: pointer;
}

.modal-close{
	position: absolute;
	right: 0.5rem;
	top: 0.5rem;
	transition: 0.2s ease 0s;
}

.modal-close:hover{
	opacity: 0.8;
}

.modal-close::before,
.modal-close::after{
	content: "";
	transition: all 0.3s ease 0s;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
	position: absolute;
	width: calc(100% - 1.5rem);
	height: 0.4rem;
	background-color: var(--theme-color);
	border-radius: 0.2rem;
	animation: fadeIn 1s ease 0.5s forwards;
}

@keyframes fadeIn {
	0%{
		opacity: 0;
		translate: 0px 1rem;
	}

	100%{
		opacity: 1;
		translate: 0px 0px;
	}
}

.scroll-up {
	opacity: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	width: 6rem;
	position: fixed;
	right: 3rem;
	bottom: 3rem;
	height: 6rem;
	border-radius: 50%;
	background-color: var(--theme-color);
	transition: 0.3s ease 0s;
	z-index: 100;
}

.scroll-up  img, .scroll-up svg{
	width: 40%;
}

.scroll-up.active {
	opacity: 1;
	pointer-events: all;
}

.scroll-up svg, .scroll-up img{
	transition: 0.2s ease 0s;
}

.scroll-up:hover img,  .scroll-up:hover svg{
	transform: translate(0px, -0.2rem);
}

.swiper-button-next, .swiper-button-prev{
	margin-top: 0px;
	top: 50%;
	translate: 0px -50%;
}

.swiper-slide{
	height: auto;
}

.swiper-button-next svg, .swiper-button-next img, .swiper-button-prev svg, .swiper-button-prev img{
	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
}

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

.slider-arrow{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 5rem;
	height: 5rem;
	background-color: transparent;
	border: 0.1rem solid rgba(25, 32, 32, 0.15);
	border-radius: 0.8rem;
	cursor: pointer;
	transition: 0.2s ease 0s;
}

.slider-arrow img{
	height: 1.8rem;
	width: auto;
}

.slider-arrow--prev img{
	transform: rotate(180deg);
}

.slider-arrow:hover{
	background-color: var(--theme-color);
	border-color: var(--theme-color);
}

.slider-arrow:hover img{
	filter: brightness(0) invert(1);
}

.slider-arrow.swiper-button-disabled{
	opacity: 0.4;
	pointer-events: none;
}

.drop-menu {
	position: relative;
}

.drop-menu ul{
	padding: 1rem 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.drop-menu ul a{
	border-bottom: none !important;
}

.drop-menu span{
	position: relative;
	transition: 0.2s ease 0s;
	cursor: pointer;
	margin-right: 1.4rem;
	border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.drop-menu span::after{
	content: '';
	height: 0.4rem;
	background: url(../img/icons/arrow.svg) center / contain no-repeat;
	position: absolute;
	width: 0.7rem;
	left: calc(100% + 0.8rem);
	transition: 0.2s ease 0s;
	top: 0.6rem;
}

.drop-menu ul::-webkit-scrollbar{
	width: 0.4rem;
}

.drop-menu ul::-webkit-scrollbar-thumb{
	background-color: var(--theme-color);
}

.modal-cookie{
	position: fixed;
	pointer-events: none;
	bottom: 0;
	width: 100%;
	left: 0;
	padding: 0px 1.5rem;
	translate: 0px calc(100% + 3.5rem);
	z-index: 200;
	animation: cookieVisible 1s ease 2s forwards;
}

.modal-cookie .wrapper{
	display: flex;
	justify-content: flex-end;
}

.modal-cookie__body{
	pointer-events: all;
	box-shadow: 0 1.6rem 2.9rem -1.6rem rgba(2, 54, 113, 0.3);
	background: #fff;
	translate: 0px calc(0% - 3rem);
	overflow: hidden;
	padding: 2.4rem;
	max-width: 45rem;
	text-align: center;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 150%;
	text-align: center;
	color: var(--dark);
	transition: 0.4s ease 0s;
}

.modal-cookie__body button{
	flex-grow: 1;
	width: calc((100% - 1.6rem) / 2);
	font-size: 1.4rem;
	padding: 1rem !important;
}


@keyframes cookieVisible {
	0%{
		translate: 0px 20rem;
	}

	100%{
		translate: 0px 0px;
	}
}

.modal-cookie.hidden-modal .modal-cookie__body{
	opacity: 0;
}

.modal-cookie__bottom{
	display: flex;
	gap: 1.6rem;
}

.modal-cookie a{
	color: var(--theme-color);
}

.modal-cookie__text{
	margin-bottom: 1.5rem;
}

.burger-menu{
	display: none;
}

.header{
	padding-bottom: 2rem;
	position: relative;
	z-index: 120;
}

.header__top-inner{
	display: flex;
	align-items: center;
	gap: 5rem;
	padding: 2rem 0 0.8rem 0rem;
}

.header__bottom-inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 3rem;
}

.header__logo{
	flex-shrink: 0;
}

.header__panel{
	margin-left: auto;
	max-width: 104.8rem;
	flex-grow: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2.4rem;
}

.header__search{
	flex-shrink: 0;
}

.logo{
	display: inline-flex;
	align-items: center;
	gap: 2rem;
}

.logo__icon{
	width: 4.9rem;
	height: auto;
	flex-shrink: 0;
}

.logo__text{
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	max-width: 26rem;
}

.logo__name{
	font-weight: 600;
	font-size: 2rem;
	line-height: 1.1;
	color: var(--text-color);
}

.logo__desc{
	font-size: 1.4rem;
	line-height: 1.3;
	color: #192020;
	opacity: 0.5;
}

.header__address{
	display: flex;
	align-items: center;
	text-align: center;
	flex-direction: column;
	gap: 0.2rem;
}

.header__address-city{
	font-size: 1.8rem;
	font-weight: 500;
	color: var(--text-color);
}

.header__address-link, a.header__address-link{
	font-size: 1.6rem;
	color: var(--krasnyy);
	text-decoration: underline;
	text-underline-offset: 0.3rem;
	transition: 0.2s ease 0s;
	text-decoration-line: underline;
	font-weight: 500;
		text-decoration-style: solid;
		text-decoration-skip-ink: none;
		text-decoration-thickness: auto;
		text-underline-offset: auto;
		text-underline-position: from-font;
}

.header__address-link:hover{
	opacity: 0.75;
}

.header__phone{
	display: flex;
	align-items: center;
	text-align: center;
	flex-direction: column;
	gap: 0.4rem;
}

.header__phone-num{
	font-size: 1.8rem;
	font-weight: 400;
	white-space: nowrap;
	color: var(--text-color);
	transition: 0.2s ease 0s;
}

.header__phone-num:hover{
	color: var(--theme-color);
}

.header__phone-time{
	font-size: 1.6rem;
	opacity: 0.3;
}

.header__actions{
	display: flex;
	align-items: center;
	gap: 6rem;
}

.socials{
	display: flex;
	align-items: center;
	gap: 1rem;
}

.socials__link{
	display: block;
	transition: 0.2s ease 0s;
}

.socials__link img{
	width: 5rem;
	height: 5rem;
	display: block;
}

.socials__link:hover{
	transform: translateY(-0.2rem);
}

.header__callback{
	white-space: nowrap;
}

.menu__list{
	display: flex;
	align-items: center;
	gap: 4em;
}

.menu__item--has-drop{
	position: relative;
}

.menu__link{
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.2;
	color: var(--text-color);
	transition: 0.2s ease 0s;
	cursor: pointer;
}

.menu__link:hover{
	color: var(--theme-color);
}

.menu__link--active{
	color: var(--theme-color);
}

.menu__arrow{
	width: 1.2rem;
	height: auto;
	transition: 0.25s ease 0s;
}

.menu__drop{
	position: absolute;
	top: 100%;
	left: -1.2rem;
	padding-top: 1.4rem;
	opacity: 0;
	visibility: hidden;
	transform: translateY(1rem);
	transition: 0.25s ease 0s;
	z-index: 60;
}

.menu__item--has-drop:hover .menu__drop,
.menu__item--has-drop:focus-within .menu__drop{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.menu__item--has-drop:hover .menu__arrow,
.menu__item--has-drop:focus-within .menu__arrow{
	transform: rotate(180deg);
}

.menu__sublist{
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 24rem;
	padding: 1.5rem;
	border-radius: 1rem;
	gap: 1.5rem;
background:#FDFDFD;
box-shadow: 0 1rem 3.2rem -0.4rem rgba(24, 39, 75, 0.10);
}

.menu__sublink{
	display: flex;
	align-items: center;
	gap: 1.5rem;
	font-size: 1.6rem;
	padding: 0.5rem 1rem;
	min-height: 3.4rem;
	font-weight: 500;
	white-space: nowrap;
	color: var(--text-color);
	border-radius: 0.5rem;
	transition: 0.2s ease 0s;
}

.menu__sublink:hover{
	background-color: var(--fon);
}

.menu__subicon{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.4rem;
	height: 2.4rem;
	flex-shrink: 0;
	transition: 0.2s ease 0s;
}



.menu__subicon img{
	width: 2.2rem;
	height: 2.2rem;
}

.search{
	position: relative;
	display: flex;
	align-items: center;
}

.search__input{
	width: 25.7rem;
	height: 5rem;
	padding: 0.5rem 5rem 0.5rem 3rem; 
	font-size: 1.6rem;
	color: var(--text-color);
	background-color: #FDFDFD;
	border-radius: 1rem;
}

.search__input::placeholder{
	color: rgba(25, 32, 32, 0.5);
}

.search__input::-webkit-search-cancel-button{
	display: none;
}

.search__btn{
	position: absolute;
	right: 3rem;
	opacity: 0.8;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
}

.search__btn img{
	width: 1.6rem;
	height: 1.6rem;
}

.intro{
	margin-bottom: 5rem;
}

.intro__inner{
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.intro__top{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
}

.intro__content{
	display: flex;
	flex-direction: column;
	padding: 6rem;
	min-height: 47rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
}

h1, .h1{
	font-size: 5.5rem;
	font-style: normal;
	font-weight: 600;
	line-height: 110%;
}

h1 span, .h1 span{
	color: var(--theme-color);
}

.intro .sub-title{
	margin-top: 2.5rem;
		max-width: 100%;
}

.sub-title{
	font-size: 2.5rem;
	line-height: 1.5;
	opacity: 0.7;
}

.intro__buttons{
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	padding-top: 4rem;
	margin-top: auto;
}

.intro__media{
	position: relative;
	overflow: hidden;
	border-radius: var(--radius);
}

.intro__img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.intro__cards{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
}

.card{
	display: flex;
	flex-direction: column;
	padding: 3rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
}
.advantages .card__text{
	margin-top: 2rem;
}

.advantages .card{
		min-height: 30rem;
}

.card__icon{
	display: inline-flex;
	align-self: flex-start;
	width: 3.2rem;
	height: 3.2rem;
	justify-content: center;
	align-items: center;
}

.card__icon img{
	display: block;
	width: 100%;
	object-fit: contain;
}

.card__tag{
	display: inline-flex;
	align-self: flex-start;
	align-items: center;
	gap: 1.5rem;
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.7);
}

.card__tag::before{
	content: "";
	width: 1rem;
	height: 1rem;
	border-radius: 0.2rem;
	background-color: var(--theme-color);
}

.card__stars{
	display: flex;
	align-self: flex-start;
	align-items: center;
	gap: 0.5rem;
}

.card__stars img{
	width: 1.5rem;
	height: 1.5rem;
}

.card__title:first-child{
	margin-top: 0rem !important;
}

.card__title{
	margin-top: 2rem;
}

.card__title, .h3, h3{
		font-size: 3rem;
	font-weight: 600;
	line-height: 1.1;
}

.card__text{
	margin-top: 0.7rem;
	font-size: 1.8rem;
	line-height: 1.45;
	color: #192020;
	opacity: 0.5;
}

.card__socials{
	align-self: flex-start;
	margin-top: auto;
	padding-top: 2rem;
}


.link, a.link{
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--krasnyy);
	text-decoration: underline;
	text-underline-offset: 0.3rem;
	transition: 0.2s ease 0s;
	text-decoration-line: underline;
text-decoration-style: solid;
text-decoration-skip-ink: none;
text-decoration-thickness: auto;
text-underline-offset: auto;
text-underline-position: from-font;
}

.link:hover{
	opacity: 0.75;
}

.card .link{
	align-self: flex-start;
	margin-top: auto;
	padding-top: 1rem;
}

.advantages{
	margin: var(--section-margin) 0rem;
	background-color: var(--fon2);
	padding: calc(var(--section-margin) + var(--section-margin)) 0rem;
}


.advantages__list{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
}

.section-head{
	max-width: 88rem;
	margin: 0 auto 5rem;
	text-align: center;
}

.section-head__label{
	display: inline-block;
	font-size: 1.8rem;
	letter-spacing: 0.5rem;
	text-transform: uppercase;
	margin-bottom: 0.5rem;
	color: rgba(25, 32, 32, 0.4);
}

h2, .h2{
	font-size: 4rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--text-color);
}

.h2 span, h2 span{
	color: var(--theme-color);
}

.section-head .sub-title{
	margin-top: 1.5rem;
}

.brands{
	margin-bottom: var(--section-margin);
}

.brands__list{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
}

.brand{
	display: flex;
	align-items: stretch;
	overflow: hidden;
	background-color: #FDFDFD;
	border-radius: 3rem;
}

.brand__image{
	position: relative;
	display: flex;
	flex-shrink: 0;
	align-items: center;
	height: 28rem;
	justify-content: center;
	width: 43rem;
}

.brand__image img{
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	object-fit: cover;
}

.brand__info{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	flex-grow: 1;
	padding: 4rem;
}

/* Кликабельная карточка бренда: обёртка-ссылка прозрачна для лейаута,
   поэтому все правила .brand (в т.ч. адаптивные) продолжают работать. */
.brand__link{
	display: contents;
	color: inherit;
	text-decoration: none;
}

.section-head h2, .section-head .h2{
	text-align: center;
}

.section-head .section-head__label{
	text-align: center;
}

.breadcrumbs .wrapper{
	padding-top: 2rem;
	border-top: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.breadcrumbs ul{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.8rem;
	font-size: 1.4rem;
	line-height: 1.2;
	color: rgba(25, 32, 32, 0.3);
}

.breadcrumbs li{
	display: flex;
	align-items: center;
	gap: 0.8rem;
}

.breadcrumbs li:not(:last-child)::after{
	content: '';
	flex-shrink: 0;
	width: 0.4rem;
	height: 0.4rem;
	border-radius: 50%;
	background-color: var(--theme-color);
}

.breadcrumbs a{
	color: inherit;
	transition: color 0.2s ease;
}

.breadcrumbs a:hover{
	color: var(--theme-color);
}

.breadcrumbs li:last-child a{
	color: var(--chernyy);
	font-weight: 500;
	pointer-events: none;
}



.portfolio__head{
	margin-bottom: 5rem;
}

.portfolio__sub{
	margin-top: 1.5rem;
}

.portfolio__filters{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 2rem;
	margin-bottom: 3rem;
}

.portfolio__filter{
	display: flex;
	flex-direction: column;
	gap: 1rem;
	width: 24rem;
}

.portfolio__filter--wide{
	width: 38rem;
}

.portfolio__filter-label{
	color: rgba(25, 32, 32, 0.5);
}

.portfolio__filter .select{
	width: 100%;
}

.portfolio__filter .select__value{
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.portfolio__check{
	align-items: center;
	padding-bottom: 1.4rem;
}

.portfolio__check .checkbox__box{
	width: 2.4rem;
	border-radius: 0.5rem;
	height: 2.4rem;
	margin-top: 0rem;
}

.portfolio__check .checkbox__text{
	font-size: 1.8rem;
	color: var(--text-color);
}

.portfolio__grid{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
}

.pagination{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	margin-top: 4rem;
}

.pagination__list{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
}

.pagination__item a,
.pagination__dots{
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 5rem;
	height: 5rem;
	padding: 0 1rem;
	font-size: 1.6rem;
	color: var(--text-color);
	border-radius: 1rem;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.pagination__item a{
	background-color: var(--belyy);
}

.pagination__item a:hover{
	background-color: var(--theme-color);
	color: var(--belyy);
}

.pagination__item--active a{
	background-color: #5DC7C3;
	color: var(--belyy);
}

.pagination__dots{
	color: #192020;
}

.pagination__nav{
	display: flex;
	gap: 1rem;
}

.pagination__nav .pagination__btn{
	min-height: 5rem;
}

.journal__head{
	margin-bottom: 5rem;
}

.journal__sub{
	margin-top: 1.5rem;
}

.journal__search{
	margin-top: 3rem;
	width: 100%;
}

.journal__search .search__input{
	width: auto;
	flex-grow: 1;
	height: 6rem;
}

.journal__filters{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 3rem;
	margin-bottom: 3rem;
}

.journal__tags{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
}

.journal__tag{
	padding: 1rem 3rem;
	color: rgba(25, 32, 32, 0.5);
	background-color: var(--belyy);
	border-radius: 10rem;
	line-height: 1.5;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.journal__tag:hover{
	color: var(--theme-color);
}

a.journal__tag--active, .journal__tag--active,
.journal__tag--active:hover{
	color: var(--belyy);
	background-color: var(--theme-color);
}

.journal__selects{
	display: flex;
	flex-shrink: 0;
	gap: 2rem;
}

.journal__selects .portfolio__filter{
	width: 24rem;
}

.promo__head{
	margin-bottom: 4rem;
}

.promo__sub{
	margin-top: 1.5rem;
}

.thanks{
	padding-top: 0rem;
	text-align: center;
}

.thanks__inner{
	padding-top: 10rem;
	padding-bottom: 2rem;
	border-top: 0.1rem solid rgba(25, 32, 32, 0.1);
	margin-inline: auto;
}

.thanks__label{
	display: block;
	margin-bottom: 2.5rem;
	letter-spacing: 0.5rem;
	text-transform: uppercase;
	color: rgba(25, 32, 32, 0.3);
}

.thanks__sub{
	margin-top: 2.5rem;
	margin-inline: auto;
}

.error-page{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	min-height: 118rem;
	padding: 10rem 0rem 6rem;
	margin: 0;
	overflow: hidden;
	background-color: #0a0d0d;
}

.error-page__video{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

.error-page::before{
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.15) 35%, rgba(0, 0, 0, 0.25) 100%);
}

.error-page__inner{
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.error-page__title{
	color: var(--belyy);
}

.error-page__text{
	margin-top: 2rem;
	line-height: 1.5;
	color: rgba(253, 253, 253, 0.5);
}

.error-page__btn{
	margin-top: 3.5rem;
}

.error-page{
	margin-bottom: var(--section-margin);
}

.error-page__code{
	position: absolute;
	right: 4rem;
	bottom: 4rem;
	z-index: 2;
	letter-spacing: 0.5rem;
	color: var(--krasnyy);
}

.error-page + section .wrapper{
	border: none !important;
	padding-top: 0rem !important;
}

.doc__head{
	margin-bottom: 4rem;
}

.doc__title{
	margin-bottom: 1.5rem;
	font-size: 4rem;
	font-weight: 600;
	line-height: 1.2;
}

.doc__meta{
	display: block;
	font-size: 1.6rem;
	color: rgba(25, 32, 32, 0.4);
}

.doc__lead{
	margin-bottom: 2.5rem;
	font-size: 2rem;
	max-width: 100rem;
	line-height: 1.6;
	color: var(--text-color);
}

.doc__h2{
	margin-top: 3.5rem;
	margin-bottom: 1.2rem;
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1.3;
}

.doc__h2:first-child{
	margin-top: 0;
}

.doc__text{
	margin-bottom: 1.2rem;
	line-height: 1.6;
	color: rgba(25, 32, 32, 0.8);
}

.doc__text:last-child{
	margin-bottom: 0;
}

.doc__list{
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	margin-bottom: 1.2rem;
}


.doc__item{
	position: relative;
	padding-left: 2rem;
	line-height: 1.6;
	color: rgba(25, 32, 32, 0.8);
}

.doc__item::before{
	content: '';
	position: absolute;
	left: 0;
	top: 1.2rem;
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 50%;
	background-color: var(--theme-color);
}

.doc__link{
	color: var(--theme-color);
	text-decoration: underline;
}

.post{
	padding: 3rem 0;
}

.post__inner{
	display: flex;
	gap: 2rem;
	align-items: start;
}
.post__body{
	width: 88rem;
	margin-left: auto;
}

/* Контент статьи из редактора (the_content): обычные теги под стиль сайта */
.post__title{
	margin-bottom: 3rem;
	font-size: 4rem;
	font-weight: 600;
	line-height: 1.15;
	color: var(--text-color);
}

.post__body--article{
	font-size: 1.8rem;
	line-height: 1.6;
	color: var(--text-color);
}

.post__body--article p{
	margin: 0 0 2rem;
}

.post__body--article h2,
.post__body--article h3,
.post__body--article h4{
	font-weight: 600;
	line-height: 1.2;
	color: var(--text-color);
}

.post__body--article h2{
	margin: 5rem 0 2rem;
	font-size: 3.2rem;
}

.post__body--article h3{
	margin: 4rem 0 1.5rem;
	font-size: 2.4rem;
}

.post__body--article h4{
	margin: 3rem 0 1rem;
	font-size: 2rem;
}

.post__body--article .post__title + h2,
.post__body--article .post__title + h3,
.post__body--article .post__title + h4,
.post__body--article .post__title + p{
	margin-top: 0;
}

.post__body--article ul,
.post__body--article ol{
	margin: 0 0 2.5rem;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.post__body--article ol{
	counter-reset: cs-ol;
}

.post__body--article li{
	position: relative;
	padding-left: 2.8rem;
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.8);
}

.post__body--article ul > li::before{
	content: '';
	position: absolute;
	left: 0.4rem;
	top: 0.85rem;
	width: 0.7rem;
	height: 0.7rem;
	border-radius: 50%;
	background-color: var(--theme-color);
}

.post__body--article ol > li{
	counter-increment: cs-ol;
}

.post__body--article ol > li::before{
	content: counter(cs-ol) '.';
	position: absolute;
	left: 0;
	top: 0;
	font-weight: 600;
	color: var(--theme-color);
}

.post__body--article a{
	color: var(--krasnyy);
	text-decoration: underline;
	text-underline-offset: 0.3rem;
	transition: opacity 0.2s ease;
}

.post__body--article a:hover{
	opacity: 0.65;
}

.post__body--article strong,
.post__body--article b{
	font-weight: 600;
}

.post__body--article img{
	max-width: 100%;
	height: auto;
	border-radius: var(--radius);
}

.post__body--article figure{
	margin: 3rem 0;
}

.post__body--article figcaption{
	margin-top: 1rem;
	font-size: 1.5rem;
	color: rgba(25, 32, 32, 0.5);
}

.post__body--article blockquote{
	margin: 3rem 0;
	padding: 2.5rem 3rem;
	border-left: 0.3rem solid var(--theme-color);
	border-radius: var(--radius);
	background-color: var(--fon);
	font-size: 2rem;
	line-height: 1.5;
}

.post__body--article blockquote p:last-child{
	margin-bottom: 0;
}

.post__body--article hr{
	margin: 4rem 0;
	border: 0;
	border-top: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.post__body--article > *:last-child{
	margin-bottom: 0;
}

.post__toc{
	width: 28rem;
	flex-shrink: 0;
}

.post__side{
	width: 43rem;
}

.post__toc{
		position: sticky;
	top: 3rem;
	align-self: start;
}

.post__side{
	align-self: start;
}

.post__toc-title{
	margin-bottom: 2rem;
	color: rgba(25, 32, 32, 0.3);
}

.post__toc-list{
	display: flex;
	flex-direction: column;
	gap: 1.4rem;
	margin-bottom: 2.5rem;
	padding-bottom: 2.5rem;
	border-bottom: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.post__toc-item a{
	display: flex;
	gap: 2rem;
	font-size: 2rem;
	transition: color 0.2s ease;
}

.post__toc-num{
	color: var(--akcentnyy);
}

.post__toc-item a:hover{
	color: var(--text-color);
}

.post__toc-item--active a{
	color: var(--text-color);
	font-weight: 500;
}

.post__toc-item--active .post__toc-num{
	color: var(--theme-color);
}

.post__share-title{
	display: block;
	margin-bottom: 3.5rem;
	color: rgba(25, 32, 32, 0.3);
}

.post__share-socials{
	margin-bottom: 3.5rem;
}

.post__copy{
	font-size: 2rem;
	color: rgba(25, 32, 32, 0.5) !important;
	cursor: pointer;
}

.post__copy.is-copied{
	color: var(--theme-color) !important;
}

.post__lead{
	margin-bottom: 6rem;
	line-height: 1.5;
	color: var(--text-color);
}

.post__label{
	display: block;
	margin-top: 6rem;
	margin-bottom: 1rem;
	color: var(--theme-color);
}

.post__label + h3, .post__label + .h3{
	margin-top: 1rem;
}

.post__h2{
	margin-bottom: 2rem;
	font-weight: 600;
	line-height: 1.2;
}

.post__h3{
	margin-top: 6rem;
	margin-bottom: 1rem;
}

.post__item{
	color: #192020 !important;
}

.post .post__item::before{
	content: '';
	background: #192020;
}

.post__h4{
	margin-top: 2.5rem;
	margin-bottom: 0.8rem;
	font-size: 2rem;
	font-weight: 600;
}

.post__text{
	margin-bottom: 2rem;
	line-height: 1.6;
	color: #192020;
}

.post__note{
	margin-bottom: 2rem;
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.5);
}

.post__list{
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
	margin-bottom: 2.5rem;
}

.post__list--rich{
	gap: 2rem;
}

.post__item{
	position: relative;
	padding-left: 2rem;
	font-size: 1.7rem;
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.7);
}

.post__item::before{
	content: '';
	position: absolute;
	left: 0;
	top: 0.9rem;
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 50%;
	background-color: rgba(25, 32, 32, 0.3);
}

.post__item-title{
	display: block;
	margin-bottom: 0.4rem;
	color: var(--text-color);
}

.post__item-desc{
	display: block;
	font-size: 1.6rem;
	color: rgba(25, 32, 32, 0.5);
}

.post__media{
	margin: 3rem 0;
}

.post__media picture{
	display: block;
	position: relative;
	padding-top: 60%;
	border-radius: var(--radius);
	overflow: hidden;
	background-color: #1e242b;
}

.post__media img{
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.post__caption{
	margin-top: 1.2rem;
	font-size: 1.4rem;
	font-style: italic;
	color: rgba(25, 32, 32, 0.45);
}

.post__side-block + .post__side-block{
	margin-top: 6rem;
}

.post__side-title{
	margin-bottom: 4rem;
	text-align: center;

}

.post__related{
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.post-rel{
	display: flex;
	align-items: center;
	gap: 2.5rem;
	padding: 3rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
	transition: background-color 0.2s ease;
}

.post-rel:hover{
	background-color: var(--theme-color);
	color: var(--belyy);
}

.post-rel:hover .post-rel__label{
	color: var(--belyy);
}

.post-rel--active{
	background-color: var(--theme-color);
}

.post-rel__image{
	flex-shrink: 0;
	width: 12rem;
	height: 12rem;
	border-radius: var(--radius);
	overflow: hidden;
	background-color: var(--fon2);
}

.post-rel__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.post-rel__body{
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}

.post-rel__label{
	font-size: 1.4rem;
	text-transform: uppercase;
	color: #5DC7C3;
}

.post-rel__title{
	line-height: 1.5;
}

.post-rel--active .post-rel__label{
	color: rgba(255, 255, 255, 0.7);
}

.post-rel--active .post-rel__title{
	color: var(--belyy);
}

.post__services{
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.post__service{
	display: block;
	padding: 3rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
	font-size: 2rem;
	color: var(--text-color);
	transition: background-color 0.2s ease, color 0.2s ease;
}

.post__service:hover{
		background-color: var(--theme-color);
	color: var(--belyy) !important;
}

.post__service--active{
	background-color: var(--theme-color);
	color: var(--belyy) !important;
}

.post__body--article{
	margin-left: 0rem;
}

.post__title{
	margin-bottom: 3rem;
	font-size: 4.6rem;
	font-weight: 600;
	line-height: 1.15;
}

.post__title + .post__lead{
	margin-top: 0;
}

.also__title{
	margin-bottom: 4rem;
}

.also__grid{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
}

.also-card{
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 3rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
	transition: 0.2s ease;
}

.also-card:hover{
	color: var(--belyy);
	background: var(--theme-color);
}

.also-card__media{
	position: relative;
	padding-top: 64%;
	margin-bottom: 3rem;
	border-radius: var(--radius);
	overflow: hidden;
	background-color: var(--fon);
}

.also-card__media img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.also-card__tag{
	align-self: flex-start;
	margin-bottom: 1.5rem;
	padding: 0.5rem 2rem;
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.5);
	background-color: var(--fon);
	border-radius: 10rem;
}

.also-card__title{
	margin-bottom: 2rem;
	font-size: 2.5rem;
	font-weight: 600;
	line-height: 1.3;
}

.also-card__text{
	margin-bottom: 3rem;
	line-height: 1.5;
	opacity: 0.5;
}

.also-card__footer{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: auto;
	font-size: 1.6rem;
	color: rgba(25, 32, 32, 0.5);
}

.also-card:hover .also-card__footer{
	color: rgba(253, 253, 253, 0.5);
}

.also-card__views{
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.also-card__views-icon{
	width: 2.2rem;
	height: 1.5rem !important;
	height: auto;
	fill: currentColor;
}


.otzyvy__head{
	margin-bottom: 3.5rem;
}

.otzyvy__sub{
	margin-top: 1.5rem;
}

.otzyvy__stats{
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	margin-bottom: 4rem;
}

.otzyvy__stats .review-stat{
	max-width: 28rem !important;
}

.otzyvy__grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.otzyvy__item{
	display: none;
}

.otzyvy__more{
	display: block;
	margin: 4rem auto 0;
}

.brand__models{
	margin-top: 2rem;
	opacity: 0.5;
}


.lineup__inner{
	overflow: hidden;
	padding: calc(var(--section-margin) + var(--section-margin)) 0rem;
	background-color: var(--fon2);
	border-radius: 4rem;
}

.lineup .section-head{
	max-width: 100%;
	margin-bottom: 4rem;
	padding: 0rem 2rem;
}

.lineup .section-head__label{
	color: rgba(255, 255, 255, 0.45);
}

.lineup  .sub-title{
	font-size: 1.8rem;
}

.lineup .section-head h2,
.lineup .sub-title{
	color: var(--belyy);
}

.lineup__marquee{
	position: relative;
	overflow: hidden;
}

.lineup__marquee::before,
.lineup__marquee::after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 2;
	width: 11.7rem;
	pointer-events: none;
}

.lineup__marquee::before{
	left: 0;
	background: linear-gradient(91deg, rgba(30, 36, 43, 0.7) 0.8%, rgba(30, 36, 43, 0) 99.29%);
}

.lineup__marquee::after{
	right: 0;
	background: linear-gradient(271deg, rgba(30, 36, 43, 0.7) 0.8%, rgba(30, 36, 43, 0) 99.29%);
}

.lineup__track{
	display: flex;
	width: max-content;
	animation: lineup-scroll 45s linear infinite;
}

.lineup__marquee:hover .lineup__track{
	animation-play-state: paused;
}

.lineup__tag{
	flex-shrink: 0;
	margin-right: 1.5rem;
	padding: 2rem 5rem;
	font-size: 2rem;
	font-weight: 600;
	transition: 0.3s ease 0s;
	white-space: nowrap;
	color: rgba(253, 253, 253, 0.7);
	background-color: #2A3A3E;
	border-radius: 10rem;
}

.lineup__tag:hover{
	background: #FDFDFD;
	color: var(--text-color);
}

@keyframes lineup-scroll{
	from{
		transform: translateX(0);
	}
	to{
		transform: translateX(-50%);
	}
}

.services__list{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
}

.service{
	display: flex;
	flex-direction: column;
	padding: 4rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
}

.service__top{
	display: flex;
	gap: 3rem;
	padding-bottom: 6rem;
}

.service__image{
	flex-shrink: 0;
	width: 20rem;
	height: 20rem;
	overflow: hidden;
	border-radius: 3rem;
	background-color: var(--fon);
}

.service__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.service__body{
	display: flex;
	flex-direction: column;
}

.service__title{
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--text-color);
}

.service__desc{
	margin-top: 1.5rem;
	line-height: 1.45;
	color: #192020;
	opacity: 0.7;
}

.service__tags{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 2.5rem;
}

.service__tag{
	padding: 0.5rem 2rem;
	font-size: 1.4rem;
	line-height: 1.3;
	color: rgba(25, 32, 32, 0.6);
	background-color:#F2F4F7;
	border-radius: 10rem;
}

.service__footer{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 5rem;
	margin-top: auto;
	padding-top: 3rem;
	border-top: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.service__meta{
	display: flex;
	gap: 5rem;
}

.service__meta-item{
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.service__meta-label{
	font-size: 1.8rem;
	color: rgba(25, 32, 32, 0.5);
}

.service__meta-value{
	font-size: 2rem;
	font-weight: 500;
	color: var(--text-color);
}

.service__btn{
	flex-shrink: 0;
}

.services__more{
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}

.offers__grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.offers .bg{
	pointer-events: none;
}

.offers .bg::after{
		    background-color: rgba(0, 0, 0, 0.7);
}



.offer{
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 25rem;
	padding: 3.5rem;
	background-color: var(--belyy);
	border-radius: 3rem;
	overflow: hidden;
}

.offer--feature{
	grid-row: 1 / span 2;
	min-height: 44rem;
	background-color: var(--fon2);
}

.offer--feature > *:not(.bg){
	position: relative;
	z-index: 1;
}

.offer__head{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.5rem;
}


.offer__title{
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--text-color);
}


.offer--feature {
	color: #FDFDFD;
	padding: 3.5rem;
}

.offer__badge{
	flex-shrink: 0;
	padding: 0.6rem 2rem;
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.5);
	border: 0.1rem solid rgba(25, 32, 32, 0.15);
	border-radius: 10rem;
}

.offer__badge--dark{
	color:  #FDFDFD;
	background: rgba(242, 244, 247, 0.10);
	border: none;
}

.offer__text{
	margin-top: 1rem;
	max-width: 39.5rem;
	line-height: 1.5;
	opacity: 0.7;
}

.offer--feature .offer__text{
	max-width: 35rem;
	opacity: 1;
}

.button_white.button{
	background: #FDFDFD;
	color: var(--text-color);
}

.offer__link{
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	align-self: flex-start;
	margin-top: auto;
	padding-top: 2rem;
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--text-color);
	transition: 0.2s ease 0s;
}

.offer__link--accent{
	color: var(--theme-color);
}

.offer__link:hover{
	color: var(--theme-color);
}

.offer__link::after,
.offer__btn::after{
	content: "";
	width: 0.7rem;
	height: 1.2rem;
	background-color: currentColor;
	-webkit-mask: url(../img/icons/chevron.svg) center / contain no-repeat;
	mask: url(../img/icons/chevron.svg) center / contain no-repeat;
}

.offer__btn{
	align-self: flex-start;
	margin-top: auto;
	color: var(--text-color);
	background-color: var(--belyy);
}

.offers__more{
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}

.blog .section-head{
	max-width: none;
	margin: 0 0 5rem;
	text-align: left;
}

.blog:not(body) h2, .blog:not(body) .h2{
	text-align: left;
}

.blog__tiles{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	margin-bottom: 2rem;
}

.blog-tile{
	padding: 3.5rem;
	background-color: var(--belyy);
	border-radius: 3rem;
}

.blog-tile__meta{
	color: rgba(25, 32, 32, 0.3);
}

.blog-tile__title{
	margin-top: 1rem;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.3;
}

.blog__posts{
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 2rem;
}

.blog-post{
	display: flex;
	flex-direction: column;
}

.blog-post .blog-post__link{
	height: 100%;
}

.blog-post .blog-post__main{
	flex-grow: 1;
}

.blog-post__link{
	display: flex;
	flex-direction: column;
	color: var(--text-color);
	text-decoration: none;
}

.blog-post__media{
	position: relative;
	display: block;
	padding-top: 125%;
	background-color: rgba(30, 36, 43, 0.1);
	border-radius: var(--radius) var(--radius) 0rem 0rem;
	overflow: hidden;
}

.blog-post__main{
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 3rem;
	border-radius: 0 0 var(--radius) var(--radius);
background: #FDFDFD;
}

.blog-post__img img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.blog-post__play{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 6rem;
	height: 6rem;
	border-radius: 50%;
	background-color: var(--belyy);
	transition: 0.2s ease 0s;
}

.blog-post__play img{
	width: 1.1rem;
	margin-left: 0.4rem;
	transition: 0.2s ease 0s;
}

.blog-post__link:hover .blog-post__play{
	background-color: var(--theme-color);
}

.blog-post__link:hover .blog-post__play img{
	filter: brightness(0) invert(1);
}

.blog-post__tag{
	font-size: 1.6rem;
	color: rgba(25, 32, 32, 0.3);
}

.blog-post__title{
	margin-top: 0.5rem;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.3;
}

.blog__more{
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}

.articles__head{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 4rem;
	margin-bottom: 4rem;
}

.section-head.left{
	align-items: flex-start;
	margin-left: 0rem;
	margin-right: 0rem;
	text-align: left;
}

.left .section-head__title{
	text-align: left;
}

.articles__head--second{
	margin-top: calc((var(--section-margin)) + var(--section-margin));
}

.articles__head h2,
.articles__head .section-head__label{
	text-align: left;
}

.articles__nav{
	display: flex;
	flex-shrink: 0;
	gap: 1rem;
}

.articles__slider{
	overflow: hidden;
}

.articles__more{
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}

.seo__inner{
	display: grid;
	grid-template-columns: 1fr 1.5fr;
	gap: 6rem;
	align-items: start;
}

.seo__aside{
	position: sticky;
	top: 3rem;
	align-self: start;
}

.seo__title{
	max-width: 58rem;
}

.seo__lead{
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	font-size: 2.5rem;
	line-height: 1.6;
	color: var(--text-color);

opacity: 0.7;
}

.seo__block{
	margin-top: 4rem;
	padding-top: 4rem;
	border-top: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.seo__label{
	display: inline-block;
	margin-bottom: 1rem;
	letter-spacing: 0.5rem;
	text-transform: uppercase;
	opacity: 0.3;
}

.seo__heading{
	margin-bottom: 3rem;
}

.seo__text{
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.7);
}

.seo__text + .seo__text{
	margin-top: 1rem;
}

.cases__top{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 4rem;
	margin-bottom: 5rem;
}

.cases__top h2{
	text-align: left;
}

.section-head--row{
	max-width: none;
	margin: 0;
	text-align: left;
}

.cases__more{
	flex-shrink: 0;
}

.cases__list{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
}

.cases__pagination{
	display: none;
	--swiper-pagination-color: var(--theme-color);
	--swiper-pagination-bullet-inactive-color: var(--chernyy);
	--swiper-pagination-bullet-inactive-opacity: 0.2;
	--swiper-pagination-bullet-size: 0.9rem;
	--swiper-pagination-bullet-horizontal-gap: 0.4rem;
}

.cases__pagination .swiper-pagination-bullet{
	transition: width 0.3s ease 0s, background-color 0.3s ease 0s, opacity 0.3s ease 0s;
}

.cases__pagination .swiper-pagination-bullet-active{
	width: 2.6rem;
	border-radius: 0.5rem;
}

.case{
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 3rem;
	color: var(--text-color);
	text-decoration: none;
	background-color: var(--belyy);
	border-radius: var(--radius);
	transition: 0.2s ease 0s;
}

.case__image{
	position: relative;
	width: 100%;
	padding-top: 66%;
	border-radius: var(--radius);
	overflow: hidden;
}

.case__image img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.case__title{
	margin-top: 3rem;
	font-weight: 600;
line-height: 110%;
	font-size: 2.5rem;
}

.case__meta{
	margin-top: 1rem;
opacity: 0.7;

}

.case__text{
	margin-top: 2rem;
	line-height: 1.45;
	color: #192020;
	opacity: 0.5;
}

.case__footer{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	margin-top: auto;
	padding-top: 3rem;
}

.case__link{
	color: #192020;
}

.case__arrow{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 4rem;
	height: 4rem;
	border-radius: 0.6rem;
	background-color: var(--krasnyy);
	transition: 0.2s ease 0s;
}

.case__arrow img{
	width: 1rem;
	translate: 0.1rem 0rem;
}

.case:hover .case__arrow{
	opacity: 0.85;
}

.case:hover .case__link{
	opacity: 0.75;
}

.reviews__controls{
	display: flex;
	position: relative;
	position: relative;
	justify-content: center;
	align-items: center;
	gap: 2rem;
	margin-bottom: 2.2rem;
}

.reviews .section-head{
	max-width: 115rem;
}

.reviews__stats{
	display: flex;
	flex-grow: 1;
	max-width: 118.5rem;
	gap: 2rem;
}



.review-stat{
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
	flex: 1;
	padding: 2rem 3rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
}

.review-stat__top{
	display: flex;
	align-items: center;
	gap: 1rem;
}

.review-stat__label{
	color: var(--text-color);
}

.review-stat__value{
	font-size: 1.6rem;
	font-weight: 500;
	color: #1fbf6a;
}

.review-stat__trend{
	width: 0;
	margin-left: -0.2rem;
	height: 0;
	border-left: 0.65rem solid transparent;
	border-right: 0.65rem solid transparent;
	border-bottom: 1.2rem solid #1fbf6a;
}

.review-stat__count{
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.5);
}
.review .stars {
	margin-top: 1.5rem;
}

.reviews__nav{
	display: flex;
	position: absolute;
	right: 0;
	bottom: 0;
	flex-shrink: 0;
	gap: 1rem;
}

.review{
	display: flex;
	flex-direction: column;
	padding: 4rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
}

.review__head{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.5rem;
}

.review__name{
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--text-color);
}


.review__source{
	display: inline-flex;
	flex-shrink: 0;
	height: 5.4rem;
}

.stars{
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	margin-top: 2rem;
}

.stars img{
	width: 1.5rem;
	height: 1.5rem;
}

.review__text{
	margin-top: 3rem;
	line-height: 1.45;
	color: #192020;
}

.review__footer{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	margin-top: auto;
	padding-top: 3rem;
}

.review__date{
	color: rgba(25, 32, 32, 0.5);
}

.reviews__more{
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}

.review__readmore.link{
	font-size: 1.8rem;
}

.process__list{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.process .card__title{
	margin-top: 1.5rem;
	font-size: 2.4rem;
}

.process__list .card{
	padding-top: 3.5rem;
	padding-bottom: 3.5rem;
	padding-right: 3.5rem;
}

.process .card__text{
	margin-top: 1rem;
}

.cta{
	position: relative;
	overflow: hidden;
	margin: var(--section-margin) 0;
	padding: calc(var(--section-margin) + var(--section-margin)) 0;
	background-color: var(--fon2);
}

.process__list .card{
	position: relative;
	padding-left: 9.7rem;
}

.process__list .card__icon{
	position: absolute;
	left: 3.5rem;
	top: 3.5rem;
}

picture{
	display: contents;
}

.bg{
	display: block;
	position: absolute;
	inset: 0;
	z-index: 0;
}

.bg img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bg::after{
	content: "";
	position: absolute;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.43);
}

.cta__inner{
	position: relative;
	z-index: 1;
}

.cta .section-head{
	margin-bottom: 4rem;
}

.cta .section-head h2,
.cta .sub-title{
	color: var(--belyy);
}

.cta__card{
	display: flex;
	gap: 2rem;
	max-width: 130rem;
	margin: 0 auto;
	padding: 6rem 6rem;
	background-color: var(--belyy);
	border-radius: 4rem;
}

.cta__media{
	position: relative;
	flex-shrink: 0;
	width: calc((100% - 3rem) / 2);
	overflow: hidden;
	border-radius: 2rem;
	background-color: var(--fon);
}

.cta__media img{
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	object-fit: cover;
}

.cta--training .cta__media{
	display: flex;
	flex-direction: column;
	overflow: visible;
	background-color: transparent;
	border-radius: 0;
}

.cta__media-title{
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--text-color);
}

.cta__media-text{
	margin-top: 2rem;

opacity: 0.7;
}
p{
	line-height: 1.4;
}

.cta__media-photo{
	flex: 1;
	position: relative;
	margin-top: 2rem;
	height: 26.3rem;
	overflow: hidden;
	border-radius: 3rem;
	background-color: var(--fon);
}

.cta .section-head{
	max-width: 100%;
}

.cta__media-photo img, .cta__media-photo picture{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cta__form{
	display: flex;
	background: #F2F4F7;
	border-radius: 3rem;
	padding: 4rem;
	flex-direction: column;
	gap: 1rem;
	flex-grow: 1;
	width: calc((100% - 6rem) / 2);
}

.cta__row{
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.cta__row > *{
	flex: 1;
	width: calc((100% - 1rem) / 2);
	min-width: 0;
}

.field{
	width: 100%;
	min-height: 5rem;
	padding: 1rem 2rem;
	font-size: 1.8rem;
	color: var(--text-color);
	background-color: #FDFDFD;
	border-radius: 1rem;
}

.field::placeholder{
	color: rgba(25, 32, 32, 0.5);
}

textarea.field{
	min-height: 10rem;
	padding: 2rem;
	resize: none;
}

.select{
	position: relative;
}

.select__head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	width: 100%;
	min-height: 5rem;
	padding: 1rem 2rem;
	font-size: 1.8rem;
	text-align: left;
	color: var(--text-color);
	background-color: #FDFDFD;
	border-radius: 1rem;
	cursor: pointer;
	transition: 0.2s ease 0s;
}

.select__arrow{
	width: 1.4rem;
	flex-shrink: 0;
	transition: 0.25s ease 0s;
}

.select.is-open .select__arrow{
	transform: rotate(180deg);
}

.select__drop{
	position: absolute;
	top: calc(100% + 0.6rem);
	left: 0;
	width: 100%;
	padding: 0.6rem;
	background-color: var(--belyy);
	border-radius: 1rem;
	box-shadow: 0 1rem 3.2rem -0.4rem rgba(24, 39, 75, 0.14);
	opacity: 0;
	visibility: hidden;
	transform: translateY(0.6rem);
	transition: 0.2s ease 0s;
	z-index: 20;
}

.select.is-open .select__drop{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.select__list{
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	max-height: 24rem;
	overflow-y: auto;
}

.select__option{
	padding: 1.1rem 1.4rem;
	font-size: 1.6rem;
	color: var(--text-color);
	border-radius: 0.6rem;
	cursor: pointer;
	transition: 0.2s ease 0s;
}

.select__option:hover{
	background-color: var(--fon);
}

.select__option--active{
	color: var(--theme-color);
}


.cta__submit{
	width: 100%;
}

.checkbox{
	display: flex;
	margin-top: 0.5rem;
	align-items: flex-start;
	gap: 1.1rem;
	cursor: pointer;
}

.checkbox__input{
	position: absolute;
	width: 0.1rem;
	height: 0.1rem;
	opacity: 0;
	pointer-events: none;
}

.checkbox__box{
	position: relative;
	flex-shrink: 0;
	width: 1.2rem;
	height: 1.2rem;
	margin-top: 0.4rem;
	border: 0.1rem solid rgba(25, 32, 32, 0.3);
	border-radius: 0.2rem;
	transition: 0.2s ease 0s;
}

.checkbox__box::after{
	content: "";
	position: absolute;
	inset: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7' fill='none'%3E%3Cpath d='M0.5 3.50001L3.50021 6.5L9.5 0.5' stroke='%23FDFDFD' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 60% auto no-repeat;
	opacity: 0;
	transition: 0.2s ease 0s;
}

.checkbox__input:checked + .checkbox__box{
	background-color: var(--theme-color);
	border-color: var(--theme-color);
}

.checkbox__input:checked + .checkbox__box::after{
	opacity: 1;
}

.checkbox__input:focus-visible + .checkbox__box{
	outline: 0.2rem solid var(--theme-color);
	outline-offset: 0.2rem;
}

.checkbox__text{
	font-size: 1.4rem;
	line-height: 1.4;
	color: rgba(25, 32, 32, 0.3);
}

.cta__contacts{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	margin-top: 2rem;
	padding-top: 3rem;
	border-top: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.cta__time{
	display: block;
	margin-top: 1rem;
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.5);
}

.fancybox-bg{
	background-color: rgba(25, 32, 32, 0.55);
}

.fancybox-slide--html .fancybox-content{
	padding: 0;
	background: transparent;
}

.modal-form{
	width: 54rem;
	max-width: 100%;
	padding: 4rem;
	background-color: var(--fon);
	border-radius: 2rem;
}

.modal-form__title{
	padding-right: 4rem;
	margin-bottom: 2.5rem;
}

.modal-form__text{
	margin-top: -1.5rem;
	margin-bottom: 2.5rem;
	font-size: 1.6rem;
	line-height: 1.45;
	color: rgba(25, 32, 32, 0.5);
}

.modal-form .cta__form{
	width: 100%;
	padding: 0;
	background-color: transparent;
}

.modal-form {
	border-radius: 4rem !important;
	padding: 4rem !important;
	max-width: 58rem !important;
	width: 100% !important;
	background: #F2F4F7 !important;
}

.fancybox-button{
	top: 2rem !important;
	right: 2rem !important;
	padding: 0.5rem !important;
}

.fancybox-button svg{
	width: 100% !important;
}

.support__inner{
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: 6rem;
	align-items: start;
}

.support__aside{
	position: sticky;
	top: 3rem;
	align-self: start;
}

.support__title{
	font-size: 4rem;
}

.support__sub{
	margin-top: 1rem;
}

.support__phone{
	display: inline-block;
	margin-top: 3rem;
	transition: 0.2s ease 0s;
}

.support__phone:hover{
	color: var(--theme-color);
}

.support__time{
	display: block;
	margin-top: 1rem;
	color: rgba(25, 32, 32, 0.5);
}

.support__socials{
	margin-top: 2rem;
}

.stack {
	margin: var(--section-margin) 0rem;
}

.support__list{
	display: flex;
	flex-direction: column;
}

.support__item{
	padding: 3rem 0;
}

.support__item:first-child{
	padding-top: 0;
}

.support__item + .support__item{
	border-top: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.support__a{
	margin-top: 1rem;
	line-height: 1.45;
	max-width: 60.3rem;
	color: rgba(25, 32, 32, 0.5);
}

.repair__inner{
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: 6rem;
	align-items: start;
}

.repair__aside{
	position: sticky;
	top: 3rem;
	align-self: start;
}

.repair__title{
	margin-top: 0.5rem;
}

.repair__sub{
	margin-top: 2rem;
}

.repair__cards{
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.repair__card{
	padding: 4rem;
	background-color: var(--belyy);
	border-radius: 3rem;
}

.repair__card-title{
	margin-bottom: 2rem;
}

.repair__tags{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.repair__tag{
	padding: 0.5rem 2rem;
	font-size: 1.4rem;
	line-height: 1.3;
	color: rgba(25, 32, 32, 0.5);
	background-color: var(--fon);
	border-radius: 10rem;
}

.repair__list,
.workshops__list,
.hidden__list{
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.repair__item,
.workshops__item,
.hidden__item{
	position: relative;
	padding-left: 2rem;
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.5);
}

.repair__item::before,
.workshops__item::before,
.hidden__item::before{
	content: '';
	position: absolute;
	left: 0.2rem;
	top: 1.2rem;
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 50%;
	background-color: rgba(25, 32, 32, 0.3);
}

.diagnostics{
	position: relative;
	height: 108rem;
	margin: var(--section-margin) 0rem;
	padding: calc(var(--section-margin) + var(--section-margin)) 0rem;
	overflow: hidden;
	background-color: #0f1216;
}

.diagnostics__bg{
	display: block;
	position: absolute;
	inset: 0;
	z-index: 0;
}

.diagnostics__bg img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.diagnostics__inner{
	position: relative;
	z-index: 1;
}

.diagnostics__top{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 2rem;
}

.diagnostics__intro{
	max-width: 88rem;
}

.diagnostics .section-head__label{
	color: rgba(255, 255, 255, 0.3);
}

.diagnostics__title{
	color: var(--belyy);
}

.diagnostics__sub{
	margin-top: 2rem;
	color: rgba(255, 255, 255, 0.7);
}

.diagnostics__cards{
	display: flex;
	flex-shrink: 0;
	gap: 2rem;
}

.diagnostics__card{
	width: 43rem;
	padding: 3rem;
	background-color: var(--belyy);
	border-radius: var(--radius);
}

.diagnostics__stage{
	display: inline-flex;
	align-items: center;
	gap: 1.5rem;
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.5);
}

.diagnostics__stage::before{
	content: '';
	width: 1rem;
	height: 1rem;
	border-radius: 0.2rem;
	background-color: var(--theme-color);
}

.diagnostics__card-title{
	margin-top: 1.5rem;
}

.diagnostics__card-text{
	margin-top: 0.7rem;
	color: rgba(25, 32, 32, 0.7);
}

.workshops__grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.workshops__col{
	background: #FDFDFD;
	border-radius: 3rem;
	padding: 4rem;
}

.workshops__title{
	margin-bottom: 2rem;
}

.hidden__inner{
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: 8rem;
	align-items: start;
}

.hidden__text{
	margin-top: 2rem;
}

.hidden__subtitle{
	margin-bottom: 2.5rem;
}

.faq__inner{
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: 6rem;
	align-items: start;
}

.faq__aside{
	position: sticky;
	top: 3rem;
}

.faq__title{
	font-size: 4rem;
	font-weight: 600;
	line-height: 1.2;
}

.faq__sub{
	margin-top: 1.5rem;
}

.faq__item{
	border-bottom: 0.1rem solid rgba(25, 32, 32, 0.12);
}

.faq__q{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	width: 100%;
	padding: 2.5rem 0;
	text-align: left;
	background-color: transparent;
	cursor: pointer;
}

.faq__item:first-child .faq__q{
	padding-top: 0rem;
}

.faq__q-text{
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.3;
	color: var(--text-color);
}

.faq__icon{
	display: flex;
	flex-shrink: 0;
	transition: transform 0.3s ease 0s;
}

.faq__icon img{
	width: 1.8rem;
}

.faq__item.accordion-active .faq__icon{
	transform: rotate(180deg);
}

.faq__a{
			margin-top: -1rem;
	display: none;
}


.faq__item:last-child {
	border-bottom: none;
}

.faq__a-inner{
	padding-bottom: 2.5rem;
	line-height: 1.5;
	max-width: 56rem;
	color: rgba(25, 32, 32, 0.7);
}

.stack{
	padding: 0;
}

.stack__card{
	position: sticky;
	top: 0;
	height: 100vh;
	height: 100dvh;
}

.stack__media{
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.stack__media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.stack__media::after{
	content: "";
	position: absolute;
	inset: 0;
	background-color: #000;
	opacity: calc(0.55 * var(--p, 0));
	pointer-events: none;
}

.unlock{
	margin: var(--section-margin) 0rem;
	min-height: 160vh;
	padding: 0rem;
	background-color: #000;
}

.unlock--long{
	min-height: 230vh;
}

.unlock--long .unlock__inner{
	gap: 3rem;
	padding: calc(var(--section-margin) + var(--section-margin)) 0rem;
}

.unlock--long .unlock__list{
	gap: 0.8rem;
	margin-top: 1.5rem;
}

.unlock--long .unlock__btn{
	margin-top: 3rem;
}

.unlock__sticky{
	position: sticky;
	top: 0;
	height: 100vh;
	height: 100dvh;
	overflow: hidden;
}

.unlock__bg{
	display: block;
	position: absolute;
	inset: 0;
	z-index: 0;
}

.unlock__bg img,
.unlock__bg video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.unlock__inner{
	position: relative;
	z-index: 1;
	height: 100%;
	overflow-y: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 5rem;
	text-align: center;
	padding: 12rem 0rem;
}

.unlock__inner::-webkit-scrollbar{
	display: none;
}

.unlock__title{
	color: var(--belyy);
}

.unlock__sub{
	margin-top: 2rem;
	font-size: 2rem;
	line-height: 1.5;
	color: rgba(253, 253, 253, 0.5);
}

.unlock__reveal{
	display: grid;
	grid-template-rows: 0fr;
	width: 100%;
	opacity: 0;
	transform: translateY(4rem);
	transition: grid-template-rows 0.6s ease, opacity 0.6s ease, transform 0.6s ease;
	will-change: grid-template-rows, opacity, transform;
}

.unlock__reveal-inner{
	min-height: 0;
	overflow: hidden;
}

.unlock__reveal.is-revealed{
	grid-template-rows: 1fr;
	opacity: 1;
	transform: translateY(0rem);
}

.unlock__reveal-title{
	color: var(--belyy);
}

.unlock__list{
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
	margin-top: 2.5rem;
}

.unlock__item{
	color: rgba(253, 253, 253, 0.7);
}

.unlock__btn{
	margin-top: 5rem;
}

.unlock__scroll{
	position: absolute;
	left: 50%;
	bottom: 10rem;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 7rem;
	height: 7rem;
	border: 0.3rem solid rgba(253, 253, 253, 1);
	border-radius: 50%;
	background-color: transparent;
	opacity: 1;
	transition: opacity 0.4s ease;
	animation: unlock-bounce 1.8s ease-in-out infinite;
}

.unlock.is-complete .unlock__scroll{
	opacity: 0;
	pointer-events: none;
}

.unlock__scroll img{
	width: 2.5rem;
	filter: brightness(0) invert(1);
}

@keyframes unlock-bounce{
	0%, 100%{
		transform: translate(-50%, 0);
	}
	50%{
		transform: translate(-50%, 0.6rem);
	}
}

.features__grid{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
}

.features__grid--three{
	grid-template-columns: repeat(3, 1fr);
}

.features .section-head{
	max-width: 100%;
	margin-bottom: 3.5rem;
}

.feature-card{
	display: flex;
	flex-direction: column;
	padding: 3.5rem;
	background-color: var(--belyy);
	border-radius: 3rem;
}

.feature-card__media{
	position: relative;
	overflow: hidden;
	padding-top: 55%;
	border-radius: var(--radius);
}

.feature-card__media img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.feature-card__title{
	margin-top: 3rem;
}

.feature-card__text{
	margin-top: 1rem;
	color: rgba(25, 32, 32, 0.7);
}

.feature-card__actions{
	display: flex;
	gap: 1rem;
	margin-top: auto;
	padding-top: 3rem;
}

.feature-card__btn{
	padding: 0.5rem 2.2rem;
	font-size: 1.5rem;
	width: calc((100% - 1rem) / 2);
	border-radius: 0.8rem;
}

.feature-card--dark{
	padding: 3rem;
	background-color: var(--fon2);
}

.feature-card--dark .feature-card__title{
	margin-top: 0rem;
	color: var(--belyy);
}

.feature-card--dark .feature-card__text{
	margin-top: 1rem;
	color: rgba(253, 253, 253, 0.7);
}

.quiz{
	position: relative;
	margin: var(--section-margin) 0rem;
	padding: calc(var(--section-margin) + var(--section-margin)) 0rem calc(var(--section-margin) + var(--section-margin) + 4rem) 0rem;
	overflow: hidden;
	background-color: var(--fon2);
}

.quiz .bg::after{
	background-color: rgba(0, 0, 0, 0.5);
}

.quiz__lines{
	position: absolute;
	inset: 0;
	z-index: 1;
	background: url(../img/quiz/lines.png) center / cover no-repeat;
	opacity: 0.12;
	pointer-events: none;
}

.quiz__inner{
	position: relative;
	z-index: 2;
}

.quiz__head{
	margin-bottom: 4rem;
	text-align: center;
}

.quiz__title{
	color: var(--belyy);
}

.quiz__sub{
	margin-top: 2rem;
	color: #FDFDFD;
	opacity: 0.7;
}

.quiz__head-final{
	display: none;
}

.quiz--final .quiz__head-main{
	display: none;
}

.quiz--final .quiz__head-final{
	display: block;
}

.quiz__card{
	max-width: 109.6rem;
	margin: 0 auto;
	padding: 5rem;
	background-color: var(--belyy);
	border-radius: 4rem;
}
.quiz__step{
	min-height: 40.4rem;
}

.quiz__step{
	display: none;
	grid-template-columns: 1.5fr 29.4rem;
	gap: 4rem;
}

.quiz__step--active{
	display: grid;
}

.quiz__content{
	display: flex;
	flex-direction: column;
}

.quiz__num{
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.3);
}

.quiz__q{
	margin-top: 1rem;

	font-weight: 600;
	color: var(--text-color);
}

.quiz__selects{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	margin-top: 3rem;
}

.quiz__label{
	display: block;
	margin-bottom: 1rem;
	font-size: 1.8rem;
	color: rgba(25, 32, 32, 0.5);
}

.quiz .select__head{
	background: none !important;
	border: 1px solid #192020;

}
.quiz .select__head,
.quiz__content .field{
	background-color: var(--fon);
}

.quiz__options{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.6rem 2rem;
	margin-top: 3rem;
}

.quiz__option .checkbox__text{
	font-size: 1.8rem;
	color: var(--text-color);
}

.quiz__option .checkbox__box{
	width: 2rem;
	height: 2rem;
	border-radius: 0.4rem;
}

.quiz__foot{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding-top: 4rem;
	margin-top: auto;
}

.quiz__hint{
	font-size: 1.3rem;
	color: rgba(25, 32, 32, 0.4);
	transition: 0.2s ease 0s;
}

.quiz__hint--error{
	color: var(--krasnyy);
}

.quiz__nav{
	display: flex;
	flex-shrink: 0;
	gap: 1rem;
}

.quiz__nav .button,
.quiz__nav .button-border{
	min-height: 4rem;
	font-size: 1.6rem;
	font-weight: 500;
	border-radius: 1rem;
	padding: 1rem 3rem;
}

.quiz__manager{
	padding: 3rem;
	background-color: var(--fon);
	border-radius: 4rem;
}

.quiz__avatar{
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	background-color: var(--fon2);
}

.quiz__manager-name{
	margin-top: 2rem;
	font-weight: 400;
	color: var(--text-color);
}

.quiz__manager-role{
	margin-top: 0.5rem;
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.3);
}

.quiz__manager-quote{
	margin-top: 2rem;
	font-size: 1.6rem;
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.7);
}

.quiz__step--final{
	grid-template-columns: 1fr 58rem;
	align-items: center;
	gap: 5rem;
}

.quiz__benefits{
	display: flex;
	flex-direction: column;
	align-self: flex-start;
	gap: 3rem;
}

.quiz__benefit-title{
	font-size: 2rem;
	font-weight: 600;
	color: var(--text-color);
}

.quiz__benefit-text{
	margin-top: 1rem;
	font-size: 1.8rem;
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.7);
}

.quiz__formside{
	padding: 4rem;
	text-align: center;
	background-color: var(--fon);
	border-radius: 3rem;
}

.quiz__form-title{
	font-weight: 600;
	color: var(--text-color);
}

.quiz__form-sub{
	margin-top: 1rem;
	line-height: 1.5;
	color: #192020;
}

.quiz__formside .field{
	margin-top: 3rem;
	background-color: var(--belyy);
}

.quiz__submit{
	width: 100%;
	margin-top: 2rem;
}

.quiz__agree{
	margin-top: 1.5rem;
	text-align: left;
}

.video__player{
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;
	max-width: 118rem;
	min-height: 66.4rem;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding: 5rem;
	border-radius: 4rem;
}

.video__player > *:not(.bg){
	z-index: 1;
}

.video .bg::after{
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.70) 0%, rgba(0, 0, 0, 0.70) 100%);
}

.video__badge{
	align-self: flex-start;
	margin-top: auto;
	margin-bottom: 2rem;
	display: inline-flex;
	align-items: center;
	gap: 1.5rem;
	padding: 1rem 2rem;
	font-size: 1.4rem;
	color: var(--belyy);
	background-color: #1E2E32;
	border-radius: 10rem;
}

.video__badge-dot{
	width: 1rem;
	height: 1rem;
	flex-shrink: 0;
	border-radius: 50%;
	background-color: var(--krasnyy);
}

.video__play{
	align-self: center;
	display: flex;
	align-items: center;
	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
	justify-content: center;
	width: 10rem;
	height: 10rem;
	border-radius: 50%;
	background-color: var(--theme-color);
	transition: 0.2s ease 0s;
}

.video__play img{
	position: absolute;
	left: calc(50% + 0.2rem);
	top: 50%;
	translate: -50% -50%;
	width: 2.2rem;
}

.video__player:hover .video__play{
	transform: scale(1.08);
}

.video__bottom{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 2rem;
}

.video__title{
	color: var(--belyy);
}

.video__duration{
	flex-shrink: 0;
	text-align: right;
}

.video__time{
	display: block;
	color: var(--belyy);
}

.video__dur-label{
	font-size: 1.4rem;
	color: rgba(253, 253, 253, 0.5);
}

.dealers__head{
	margin-bottom: 5rem;
}

.dealers__head .sub-title{
	margin-top: 1.5rem;
}

.dealers__list{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.dealer{
	display: flex;
	align-items: flex-start;
	gap: 4rem;
	padding: 4rem;
	background: #FDFDFD;
	border-radius: 3rem;
}

.dealer__icon{
	flex-shrink: 0;
	width: 15rem;
	height: 15rem;
	overflow: hidden;
	border-radius: 3rem;
}

.dealer__icon img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.dealer__text{
	margin-top: 1.5rem;
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.7);
}

.uslugi__grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
}

.uslugi__card{
	display: flex;
	align-items: flex-start;
	gap: 3rem;
	padding: 4rem;
	background-color: var(--belyy);
	border-radius: 3rem;
	text-decoration: none;
	transition: 0.2s ease 0s;
}

a.uslugi__card:hover{
	box-shadow: 0 1.2rem 3.2rem -0.8rem rgba(25, 32, 32, 0.16);
}

.uslugi__media{
	flex-shrink: 0;
	width: 20rem;
	height: 20rem;
	overflow: hidden;
	border-radius: inherit;
	background-color: var(--fon);
}

.uslugi__media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.uslugi__tags{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 3rem;
}

.uslugi__tag{
	padding: 0.5rem 2rem;
	font-size: 1.4rem;
	color: rgba(25, 32, 32, 0.5);
	background-color: var(--fon);
	border-radius: 10rem;
}

.uslugi__more{
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}

.community__inner{
	display: flex;
	gap: 17rem;
	align-items: stretch;
}

.community__media{
	position: relative;
	width: 73rem;
	min-height: 35rem;
	border-radius: 3rem;
	overflow: hidden;
}

.community__media img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.button-border svg{
	width: 0.8rem;
}

.community__content{
	max-width: 88rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.community .sub-title{
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.community__btn{
	margin-top: auto;
}

.community__btn img{
	height: 1.2rem;
	width: auto;
	filter: brightness(0) invert(1);
}

.contacts__inner{
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	align-items: stretch;
}

.contacts__info, .contacts__map{
	width: calc((100% - 2rem) / 2);
}

.contacts__title{
	margin-bottom: 7.5rem;
}

.contacts__list{
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 2.5rem;
}

.contacts__item{
	display: flex;
	font-size: 2.5rem;
	flex-direction: column;
	gap: 0.5rem;
}

.contacts__label{
	color: rgba(3, 3, 3, 0.3);
}

.contacts__value{
	font-weight: 500;
	color: var(--text-color);
	transition: 0.2s ease 0s;
}

a.contacts__value:hover{
	color: var(--theme-color);
}

.contacts__socials{
	margin-top: 0.4rem;
}


.contacts__note{
	margin-top: 7.5rem;
}

.contacts__note-title{
	margin-bottom: 1rem;
}

.contacts__note-text{
	font-size: 2.5rem;
	line-height: 1.45;
	color: rgba(25, 32, 32, 0.7);
}

.contacts__map{
	min-height: 50rem;
	border-radius: 3rem;
	overflow: hidden;
}

.contacts__map #coordinate1,
.contacts__map #coordinate2{
	display: none;
}

.contacts-hero__inner{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8rem;
	align-items: start;
}

.contacts-hero__title{
	margin-bottom: 5rem;
}

.contacts-hero__grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem 2rem;
}

.contacts-hero__item{
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 1rem;
}

.contacts-hero__socials + .contacts-hero__label{
	margin-top: 3rem;
}

.contacts-hero__label{
	font-size: 2.5rem;
	color: rgba(25, 32, 32, 0.3);
}

.contacts-hero__value{
	font-size: 2.5rem;
	color: var(--text-color);
	transition: color 0.2s ease;
}

a.contacts-hero__value:hover{
	color: var(--theme-color);
}

.contacts-hero__legal{
	font-size: 2.5rem;
	line-height: 1.7;
	color: var(--text-color);
}

.contacts-hero__socials{
	margin-top: 0.5rem;
}

.contacts-hero__form{
	padding: 4rem;
	background-color: var(--belyy);
	border-radius: 3rem;
}

.contacts-hero__form-title{
	margin-bottom: 2rem;
	font-weight: 600;
	line-height: 1.25;
}

.contacts-hero__form-text{
	margin-bottom: 3rem;
	line-height: 1.45;
	color: rgba(25, 32, 32, 0.7);
}



.contacts-hero__form .cta__form{
	width: 100%;
}

.contacts-hero__form .field{
	border: 0.1rem solid rgba(25, 32, 32, 0.1);
}

.contacts-map{
	padding-bottom: 0;
}

.contacts-map__box{
	width: 100%;
	height: 78.7rem;
	border-radius: 3rem;
	overflow: hidden;
}

.contacts-map__box #coordinate1,
.contacts-map__box #coordinate2{
	display: none;
}

.about-hero__inner{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	align-items: stretch;
}

.about-hero__title{
	margin-bottom: 2rem;
}

.about-hero__text{
	margin-top: 2rem;
	line-height: 1.6;
	color: rgba(25, 32, 32, 0.7);
}

.about-hero__text:first-of-type{
	margin-top: 0;
}

.about-hero__media{
	min-height: 56.5rem;
	border-radius: var(--radius);
	overflow: hidden;
	background-color: var(--fon2);
}

.about-hero__media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.about-numbers__grid{
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 2rem;
}

.num-card{
	display: flex;
	flex-direction: column;
	min-height: 18rem;
	padding: 3rem;
	background-color: var(--fon2);
	border-radius: var(--radius);
}

.num-card__value{
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1.1;
	color: var(--belyy);
}

.num-card__label{
	padding-top: 0.7rem;
	line-height: 1.4;
	color: rgba(255, 255, 255, 0.7);
}

.about-standard__inner,
.about-team__top{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	align-items: start;
}

.about-standard__aside,
.about-team__aside{
	position: sticky;
	top: 3rem;
}

.about-standard__title,
.about-team__title{
	margin-top: 0.5rem;
	margin-bottom: 2rem;
}

.about-standard__sub,
.about-team__sub{
	max-width: none;
}

.about-team__sub{
	margin-top: 0;
	margin-bottom: 2rem;
}

.about-standard__list,
.about-team__list{
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.about-standard .dealer{
	gap: 3rem;
}

.about-standard .dealer__icon{
	width: 20rem;
	height: 20rem;
	border-radius: 3rem;
}

.team-card{
	display: flex;
	align-items: flex-start;
	gap: 3rem;
	padding: 2.5rem;
	background: #FDFDFD;
	border-radius: 3rem;
}

.team-card__photo{
	flex-shrink: 0;
	width: 20rem;
	height: 20rem;
	border-radius: 3rem;
	overflow: hidden;
	background-color: var(--fon2);
}

.team-card__photo img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.team-card__name{
	font-size: 2.5rem;
	font-weight: 600;
	color: var(--text-color);
}

.team-card__role{
	display: block;
	margin-top: 0.5rem;
	font-weight: 600;
	color: var(--theme-color);
}

.team-card__text{
	margin-top: 1rem;
	line-height: 1.5;
	color: rgba(25, 32, 32, 0.7);
}

.about-team__gallery{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	margin-top: 6rem;
}

.about-figure__media{
	height: 56.5rem;
	border-radius: var(--radius);
	overflow: hidden;
	background-color: var(--fon2);
}

.about-figure__media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.about-figure__caption{
	display: block;
	margin-top: 3rem;
	color: var(--text-color);
}

.community__actions{
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
	margin-top: auto;
}

.community__actions .community__btn{
	margin-top: 0;
}

.footer{
	margin-top: var(--section-margin);
	padding: 6rem 0rem;
	color: var(--belyy);
	background-color: var(--fon2);
}

.footer__top{
	display: grid;
	grid-template-columns: 1.1fr 1.2fr 1.2fr 1.2fr;
	gap: 2rem;
	padding-bottom: 4rem;
}

.footer__brand{
	display: flex;
	flex-direction: column;
	gap: 3rem;
}

.footer .logo__name{
	color: var(--belyy);
}

.footer .logo__desc{
	color: var(--belyy);
	opacity: 0.5;
}

.footer__legal{
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.footer__legal-item{
	color: rgba(255, 255, 255, 0.5);
}

.footer__col{
	display: flex;
	flex-direction: column;
}

.footer__title{
	margin-bottom: 1.5rem;
	color: rgba(255, 255, 255, 0.3);
}

.footer__menu{
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.footer__link, .footer__contact{
	color: rgba(255, 255, 255, 0.85);
	transition: 0.2s ease 0s;
}

.footer__link:hover{
	color: var(--theme-color);
}

.footer__contacts-list{
	margin-bottom: 4rem;
}

.footer__search{
	width: 100%;
	margin-bottom: 1.5rem;
}

.footer .search__input{
	width: 100%;
	height: 6rem;
	color: var(--belyy);
	background-color: rgba(255, 255, 255, 0.06);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
}

.footer .search__input::placeholder{
	color: rgba(255, 255, 255, 0.4);
}

.footer .search__btn{
	opacity: 0.5;
}

.footer .search__btn img{
	filter: brightness(0) invert(1);
}

.footer__callback{
	width: 100%;
	margin-bottom: 2.5rem;
}


.footer__bottom{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding-top: 3rem;
	border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
}

.footer .logo__icon{
	background: #FFF;
	border-radius: 1rem;
	width: 8rem;
	padding: 1rem;
	height: 8rem;
}

.footer__copy, a.footer__legal-link{
	color: rgba(255, 255, 255, 0.4);
}

.footer__legal-link{
	transition: 0.2s ease 0s;
}

.footer__legal-link:hover{
	color: var(--theme-color);
}

/* ==================================== */

@media (max-width: 1470px) {
	html{
		font-size: 0.694vw;
	}

	:root{
	--wrapper-padding: 3.5rem;
}
}

@media (max-width: 1024px) {
		:root{
	--wrapper-padding: 3rem;
}

.error-page {
    min-height: 98rem;
    padding: 6rem 0rem 6rem;
}

.error-page__code {
    right: 3rem;
    bottom: 3rem;
}


	html{
		font-size: 1.01vw 	/* 10px */;
	}

	:root{
		--section-margin: 3.5rem;
	}

	.wrapper-padding.scroll-table{
		overflow: auto;
		scroll-snap-type: x mandatory;
	}

	.wrapper-padding.scroll-table .scroll-el{
		scroll-snap-align: center;
	}

	.modal-cookie.hidden-modal .modal-cookie__body{
		opacity: 0;
	}

	.modal-cookie__body{
		padding: 2rem;
		font-size: 1.4rem;
		transition: 0.4s ease 0s;
	}
}

@media (max-width: 768px) {
	.error-page {
    min-height: 62rem;
    padding: 4rem 0rem 2rem;
}


			:root{
	--wrapper-padding: 2rem;
	--radius: 1.6rem;
}

.error-page__code {
    right: 2rem;
    bottom: 2rem;
}


.post__side-title {
    margin-bottom: 2rem;
}

.post__side-block + .post__side-block {
    margin-top: 3rem;
}

.post__h3 {
    margin-top: 3rem;
}

.post__label {
    margin-top: 3rem;
}

.post-rel{
	padding: 2.5rem;
	gap: 1rem;
}

.post__service {
    padding: 2.6rem;
    font-size: 1.8rem;
}

.socials__link img{
	width: 4rem;
	height: 4rem;
}

.brand{
	border-radius: 2rem;
}


		html{
		font-size: 1.67vw 	/* 10px */;
	}

	.mob-tel{
		display: block;
	}

	.wrapper-padding.scroll-phone{
		overflow: auto;
		scroll-snap-type: x mandatory;
	}

	.modal-cookie__body button {
    height: 4rem;
		font-size: 1.4rem;
		width: calc((100% - 1rem) / 2);
	}


	.modal-cookie__bottom{
		gap: 1rem;
	}

	.wrapper-padding.scroll-phone .scroll-el{
		scroll-snap-align: center;
	}

	.scroll-up {
		width: 4.5rem;
		height: 4.5rem;
		padding: 0.5rem;
		right: 1.5rem;
		bottom: 1.5rem;
		margin-bottom: -4.5rem;
	}

	.scroll-up.active {
		margin-bottom: 0;
	}

	:root{
		--section-margin: 3rem;
	}

	.burger-menu{
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		background-color: var(--background-color);
		z-index: 200;
		overflow: auto;
		transition: 0.8s ease 0s;
		translate: 100% 0%;
	}

	body.menu-open .burger-menu{
		translate: 0px 0px;
	}

	.burger-menu::-webkit-scrollbar{
		display: none;
	}

	.menu-burger{
		padding: 0px 1rem;
		display: flex;
		position: relative;
		align-self: center;
		background-color: #ffffff00;
		width: 5.5rem;
		height: 2.4rem;
		margin: 0px -1rem;
		z-index: 12;
	}

	.menu-burger span,
	.menu-burger::before,
	.menu-burger::after{
		content: "";
		transition: all 0.4s ease 0s;
		left: 50%;
		translate: -50% 0%;
		position: absolute;
		width: calc(100% - 2rem);
		height: 0.4rem;
		background-color:var(--theme-color);
		border-radius: 0.2rem;
	}

	.menu-burger::before{
		top: 0px;
	}

	.menu-burger::after{
		bottom: 0px;
	}

	.menu-burger span {
		top: calc(50% - 0.1rem);
	}

	body.menu-open .menu-burger span{
		transform: scale(0);
	}

	body.menu-open .menu-burger::before{
		transform: rotate(-45deg);
		top: calc(50% - 0.3rem);
	}

	body.menu-open .menu-burger::after{
		transform: rotate(45deg);
		bottom: calc(50% - 0.1rem);
	}
}

@media (max-width: 480px) {
				:root{
	--wrapper-padding: 1rem;
}

.error-page__code {
    right: 1rem;
    bottom: 1rem;
}


.post-rel{
	padding: 2rem;
	align-items: flex-start;
	flex-direction: column;
	gap: 2rem;
}

.post__service {
    padding: 2rem;
    font-size: 1.6rem;
}

.post__services{
	gap: 1rem;
}

.select__option {
    padding: 1rem 1rem;
    font-size: 1.6rem;
}

.cta__row > * {
	width: 100%;
}

textarea.field{
	font-size: 1.6rem;
	padding: 1.5rem;
}

.select__head {
    min-height: 4.5rem;
    padding: 0.5rem 1.5rem;
    font-size: 1.6rem;
}

.logo__icon {
    width: 4rem;
    height: auto;
    flex-shrink: 0;
}

			html{
		font-size: 2.86vw 	/* 10px */;
	}

	.mob-mini-tel{
		display: block;
	}

	.modal-cookie{
		padding: 0px 1rem;
	}

	.modal-cookie__body {
		padding: 1rem;
	}

	.modal-cookie__text{
		font-size: 1.2rem;
	}

	.modal-cookie__body {
    translate: 0px calc(0% - 1.5rem);
	}

	.modal-cookie__body button {
		height: 3.5rem;
		font-size: 1.2rem;
	}

	:root{
		--wrapper-padding: 1rem;
		--section-margin: 2.5rem;
	}

	.cta__row{
		flex-direction: column;
	}

	.review__readmore.link{
	font-size: 1.4rem;
}

}

/* ==================================== */

@media (max-width: 1024px) {
	.header__top-inner{
		gap: 3rem;
	}

	.header__panel{
		gap: 2rem;
	}

	.header__actions{
		gap: 2.4rem;
	}

	.logo__desc{
		display: none;
	}

	.header__address{
		display: none;
	}

	.menu__list{
		gap: 2.8rem;
	}

}

@media (max-width: 768px) {
	html{
		overflow-x: clip;
	}

	.post__lead {
    margin-bottom: 3rem;

}

.post__toc-item a {
    gap: 1.5rem;
    font-size: 1.8rem;
}

.post__share-title {
    margin-bottom: 2rem;
}

.post__share-socials {
    margin-bottom: 2rem;
}

	.header__top-inner{
		gap: 2rem;
		padding: 1.6rem 0;
	}

	.header__address,
	.header__actions,
	.header__bottom{
		display: none;
	}

	.header__panel{
		margin-left: auto;
		max-width: none;
		flex-grow: 0;
		justify-content: center;
	}

	.burger-menu__top{
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
		width: 100%;
	}

	.burger-menu__inner{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 3rem;
		min-height: 100%;
		padding: 1.8rem 2rem 4rem;
	}

	.burger-menu__search{
		width: 100%;
	}

	.burger-menu__search .search__input{
		width: 100%;
	}

	.burger-menu__nav{
		width: 100%;
	}

	.burger-menu .menu__list{
		flex-direction: column;
		align-items: flex-start;
		gap: 2rem;
		width: 100%;
	}

	.burger-menu .menu__item{
		width: 100%;
	}

	.burger-menu .menu__drop{
		position: static;
		display: none;
		opacity: 1;
		visibility: visible;
		transform: none;
		transition: none;
		padding-top: 1.5rem;
		overflow: hidden;
	}

	.burger-menu .menu__sublist{
		min-width: 0;
		padding: 0;
		gap: 1.2rem;
		background: transparent;
		box-shadow: none;
	}

	.burger-menu .menu__item--has-drop.accordion-active .menu__arrow{
		transform: rotate(180deg);
	}

	.burger-menu__contacts{
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	.burger-menu__phone{
		font-size: 1.8rem;
		font-weight: 600;
		color: var(--text-color);
	}

	.burger-menu__address{
		display: flex;
		flex-direction: column;
		gap: 0.4rem;
	}

	.burger-menu__callback{
		width: 100%;
	}
}

@media (max-width: 480px) {
	.header__logo .logo__text{
		display: none;
	}

	.journal__tag{
	padding: 0.5rem 2rem;
}

	h1 br{
		display: none;
	}

	.burger-menu__inner{
		gap: 2.4rem;
		padding: 1.6rem 1rem 3rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.intro__top{
		grid-template-columns: 1fr;
	}

	.intro__media{
		padding-top: 67%;
	}

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

@media (max-width: 768px) {
	h1, .h1{
		font-size: 4rem;
	}

	.sub-title{
		font-size: 1.8rem;
	}

	.intro__content{
		padding: 4rem;
	}

	.card{
		padding: 2rem;
		min-height: auto;
	}

	.card__title, .h3, h3{
		font-size: 2.6rem;
	}

	.card__text{
		font-size: 1.6rem;
	}

		.header {
    padding-bottom: 0rem;
}

.quiz__title br{
	display: none;
}
}

@media (max-width: 480px) {
	h1, .h1{
		font-size: 3rem;
	}

	.sub-title{
		font-size: 1.7rem;
	}

	.thanks__sub {
		margin-top: 1rem;
	}

	.thanks__label {
    margin-bottom: 1.5rem;
}

	.intro .sub-title {
    margin-top: 1.5rem;
}

	.intro__content{
		padding: 2rem;
	}

	.intro__buttons{
		padding-top: 2rem;
		flex-direction: column;
	}

	.intro__btn{
		width: 100%;
	}

	.intro__cards{
		gap: 1.5rem;
		grid-template-columns: 1fr;
	}

	.intro__inner {
		gap: 1.5rem;
	}

	.intro__top{
		gap: 1.5rem;
	}

	.card__title, .h3, h3{
		font-size: 2.2rem;
	}

}

/* ==================================== */

@media (max-width: 1024px) {
	.advantages__list{
		grid-template-columns: repeat(2, 1fr);
	}
}


@media (max-width: 480px) {
	.reviews h2 br{
		display: none;
	}

	.advantages__list{
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.advantages .card {
    min-height: 24rem;
}

.reviews__more{
	margin-top: 3rem;
}

body{
	font-size: 1.6rem;
}
}

/* ==================================== */

@media (max-width: 1470px) {
	.brand__image{
		width: 35rem;
	}
}
@media (max-width: 1024px) {
	.brands__list{
		grid-template-columns: 1fr;
	}

	.articles__slider {
		width: calc(100% + 6rem);
		margin-left: -3rem;
		padding: 0rem 3rem;
	}
}

@media (max-width: 768px) {
	h2, .h2{
		font-size: 3rem;
	}

	.articles .section-head {
		margin-bottom: 0rem;
	}

		.articles__slider {
		width: calc(100% + 4rem);
		margin-left: -2rem;
		padding: 0rem 2rem;
	}

	.section-head{
		margin-bottom: 3rem;
	}

	.section-head__label{
		font-size: 1.4rem;
		letter-spacing: 0.3em;
	}

	.brand{
		flex-direction: column;
	}

	.brand__image{
		width: 100%;
		height: auto;
	}
	

	.brand__image img{
		position: static;
	}

	.brand__info{
		padding: 3rem;
	}
}

@media (max-width: 480px) {
	h2, .h2{
		font-size: 2.6rem;
	}

			.articles__slider {
		width: calc(100% + 2rem);
		margin-left: -1rem;
		padding: 0rem 1rem;
	}

	.brand__info{
		padding: 2rem;
	}
}

/* ==================================== */

@media (max-width: 1470px) {
	.service__footer {
		gap: 2rem;
	}

	.service__meta{
		gap: 2rem;
	}

	.service {
    padding: 3rem;
}

.service__meta-value {
    font-size: 1.8rem;
}
}
@media (max-width: 1024px) {
	.services__list{
		grid-template-columns: 1fr;
	}

	.service__meta{
		gap: 3rem;
	}
	
}

@media (max-width: 768px) {
	.service{
		padding: 3rem;
	}

	.fancybox-button {
    top: 1.5rem !important;
    right: 1.5rem !important;
}
	
.modal-form {
	border-radius: var(--radius) !important;
	padding: 3rem !important;
}


	.service__top{
		gap: 2rem;
		padding-bottom: 3rem;
	}

	.service__image{
		border-radius: 2rem;
	}

	.service__image{
		width: 16rem;
		height: 16rem;
	}

	.service__footer{
		flex-direction: column;
		align-items: stretch;
		gap: 2rem;
	}

	.service__btn{
		width: 100%;
	}

	.services__more{
		margin-top: 3rem;
	}
	
}

@media (max-width: 480px) {
	.services__more .button{
		width: 100%;
	}

	.modal-form__title {
    margin-bottom: 1.5rem;
}

	.modal-form {
	border-radius: var(--radius) !important;
	padding: 2rem !important;
}

	.service{
		padding: 2rem;
	}

	.service__top{
		flex-direction: column;
		padding-bottom: 2.5rem;
	}

	.service__image{
		width: 14rem;
		height: 14rem;
	}

	.service__meta{
		flex-direction: column;
		gap: 1.5rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.cta__card{
		gap: 3rem;
		padding: 4rem;
	}

	.cta__form{
		padding: 2rem;
	}

	.cta__phone{
		font-size: 2.2rem;
	}
}

@media (max-width: 768px) {
	.cta__card{
		padding: 2rem;
	}


	.cta__media img{
		position: static;
	}

	.cta__media{
		display: none;
	}

	.cta__form{
		width: 100%;
		padding: 3rem;
	}

		.cta__form{
		border-radius: 1.6rem;
	}

	.cta__card{
		border-radius: 2rem;
	}
}

@media (max-width: 480px) {
	.cta .section-head {
    margin-bottom: 3rem;
}

.review-stat__label{
	width: 100%;
}

.cta__contacts {
    margin-top: 0.5rem;
    padding-top: 1.5rem;
}

	.cta__contacts{
		flex-direction: column;
		align-items: flex-start;
		gap: 2rem;
	}

	.cta__form{
		padding: 1.5rem;
	}
}

/* ==================================== */

@media (min-width: 768px) {
.reviews .reviews__slider {
	    width: min(var(--wrapper-size), calc(100% - (var(--wrapper-padding) + var(--wrapper-padding)))) !important;
    margin-inline: auto !important;
	padding-left: 0rem !important;
	padding-right: 0rem !important;
}
}
@media (max-width: 1024px) {
	.cases__top{
		gap: 2rem;
		margin-bottom: 3.5rem;
	}

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

@media (max-width: 768px) {
	.cases__top{
		flex-direction: column;
		align-items: flex-start;
		gap: 1.5rem;
		margin-bottom: 3rem;
	}

	.cases__top .section-head {
		margin-bottom: 1rem;
	}

	.cases__list{
		display: flex;
		gap: 0;
	}

	.case{
		padding: 2rem;
	}

	.case__title{
		margin-top: 2rem;
		font-size: 2.2rem;
	}

	.case__text{
		margin-top: 1.5rem;
	}

	.case__footer{
		padding-top: 2rem;
	}

	.cases__pagination{
		display: block;
		position: static;
		margin-top: 2rem;
		text-align: center;
	}
}

@media (max-width: 480px) {
	.cases__top{
		margin-bottom: 2.5rem;
	}
	.case__footer{
		padding-top: 1rem;
	}

	.cases__top h2 br{
		display: none;
	}

	.case__arrow{
		display: none;
	}

	.case__title{
		font-size: 2rem;
	}

	    .case {
        padding: 1.5rem;
    }
}

/* ==================================== */
@media (max-width: 1470px) {
.reviews__stats {
    max-width: 110rem;
}
}

@media (max-width: 1024px) {
	.reviews__controls{
		flex-direction: column;
	}

	.review__source {
    height: 4.4rem;
}

	.reviews__stats{
		width: 100%;
		max-width: none;
		flex-wrap: wrap;
	}

	.review-stat{
		flex: 1 1 calc(50% - 1rem);
	}

	.reviews__nav{
		position: static;
	}
}

@media (max-width: 768px) {
	.review-stat{
		padding: 1.5rem 2rem;
	}

	.review-stat__top{
		flex-wrap: wrap;
	}

	.review{
		padding: 2rem;
	}

	.review__source{
		height: 4.5rem;
	}

	.review__text{
		margin-top: 2rem;
	}

	.review__footer{
		padding-top: 2rem;
	}

	.reviews__more{
		margin-top: 3rem;
	}
}

@media (max-width: 480px) {
	.review-stat{
		padding: 1.5rem;
	}

	.review__text{
		font-size: 1.4rem;
	}

	.reviews__stats{
		gap: 1rem;
	}

	.reviews__more .button{
		width: 100%;
	}

	.review__footer{
		align-items: flex-start;
		flex-direction: column;
		gap: 1rem;
	}

	.review__head{
		flex-direction: column-reverse;
	}

	.review__source{
		height: 3rem;
	}

	.review{
		padding: 1.5rem;
	}

	.review__name{
		font-size: 1.8rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.process__list{
		grid-template-columns: repeat(2, 1fr);
	}

		.card .h3 br{
		display: none;
	}
}

@media (max-width: 768px) {
	.process__list{
		grid-template-columns: 1fr;
	}

	.process__list .card{
		padding: 2.5rem 2.5rem 2.5rem 7.5rem;
	}

	.process__list .card__icon{
		left: 2.5rem;
		top: 2.5rem;
	}
	.sub-title br{
		display: none !important;
	}
}

@media (max-width: 480px) {
	.process__list .card{
		padding: 2rem 2rem 2rem 6.5rem;
	}

	.process__list .card__icon{
		left: 2rem;
		top: 2rem;
	}

	.breadcrumbs ul{
	font-size: 1.2rem;
}



	.process .card__title{
		font-size: 2.2rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.footer__top{
		grid-template-columns: 1fr 1fr;
		gap: 4rem 3rem;
	}
}

@media (max-width: 768px) {
	.footer{
		padding: 4rem 0;
	}

	.footer__top{
		padding-bottom: 3rem;
	}

	.footer__brand{
		grid-column: 1 / -1;
	}

	.footer__contacts{
		grid-column: 1 / -1;
	}

	.footer__contacts-list{
		margin-bottom: 2.5rem;
	}
}

@media (max-width: 480px) {
	.footer__top{
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.footer__bottom{
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.contacts__title{
		margin-bottom: 4rem;
	}

	.contacts__item{
		font-size: 2rem;
	}

	.contacts__note{
		margin-top: 4rem;
	}

	.contacts__note-text{
		font-size: 1.8rem;
	}
}

@media (max-width: 768px) {
	.contacts__info, .contacts__map{
		width: 100%;
	}

	.contacts__title{
		margin-bottom: 3rem;
	}

	.contacts__note{
		margin-top: 3rem;
	}

	.contacts__map{
		min-height: 38rem;
	}
}

@media (max-width: 480px) {
	.contacts__item{
		font-size: 1.8rem;
	}

	.contacts__note-text{
		font-size: 1.7rem;
	}

	.contacts__map{
		min-height: 28rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.community__inner{
		gap: 4rem;
	}

	.community__media{
		width: 45%;
		min-height: 30rem;
	}

	.community__content{
		flex: 1;
	}
}

@media (max-width: 768px) {
	.community__inner{
		flex-direction: column;
		gap: 2.5rem;
	}

	.community__media{
		width: 100%;
		border-radius: var(--radius);
		min-height: 28rem;
	}

	.community__btn{
		margin-top: 0;
	}
}

@media (max-width: 480px) {
	.community__media{
		min-height: 22rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {

}

@media (max-width: 768px) {
	.cta--training .cta__card{
		flex-direction: column;
	}

	.cta--training .cta__media{
		display: flex;
		width: 100%;
	}

	.cta--training .cta__media-photo{
		flex: none;
		border-radius: var(--radius);
		height: 26rem;
	}
}

@media (max-width: 480px) {
	.cta--training .cta__media-photo{
		height: 20rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.support__inner{
		gap: 4rem;
	}
}

@media (max-width: 768px) {
	.support__inner{
		grid-template-columns: 1fr;
		gap: 4rem;
	}

	.support__aside{
		position: static;
	}

	.support__title{
		font-size: 3rem;
	}

	.support__item{
		padding: 2.5rem 0;
	}
}

@media (max-width: 480px) {
	.support__title{
		font-size: 2.6rem;
	}

	.support__item{
		padding: 2rem 0;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.repair__inner{
		gap: 4rem;
	}
}

@media (max-width: 768px) {
	.repair__inner{
		grid-template-columns: 1fr;
		gap: 4rem;
	}

	.repair__aside{
		position: static;
	}

	.repair__card{
		padding: 3rem;
		border-radius: var(--radius);
	}
}

@media (max-width: 480px) {
	.repair__card{
		padding: 2.5rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.diagnostics{
		height: auto;
		padding-bottom: 0rem;
		display: flex;
		flex-direction: column;
		gap: 4rem;
	}

	.diagnostics__bg{
		order: 1;
		position: static;
	}

	.diagnostics__bg img{
		height: auto;
	}

	.diagnostics__top{
		flex-direction: column;
		gap: 3rem;
	}

	.diagnostics__intro{
		max-width: none;
	}

	.diagnostics__card{
		flex: 1;
		width: auto;
	}
}

@media (max-width: 768px) {
	.diagnostics__cards{
		flex-direction: column;
	}

	.diagnostics__card{
		flex: none;
		width: 100%;
	}

	.thanks__inner {
    padding-top: 6rem;
    padding-bottom: 0rem;
}
}

@media (max-width: 480px) {
	.diagnostics__card{
		padding: 2.5rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.workshops__grid{
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.workshops__grid{
		grid-template-columns: 1fr;
	}

	.workshops__col{
		padding: 3rem;
		border-radius: var(--radius);
	}
}

@media (max-width: 480px) {
	.workshops__col{
		padding: 2.5rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.hidden__inner{
		gap: 4rem;
	}
}

@media (max-width: 768px) {
	.hidden__inner{
		grid-template-columns: 1fr;
		gap: 3rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.offers__grid{
		grid-template-columns: 1fr 1fr;
	}

	.offer--feature{
		grid-column: 1 / -1;
		grid-row: auto;
		min-height: 32rem;
	}
}

@media (max-width: 768px) {
	.offers__grid{
		grid-template-columns: 1fr;
	}

	.also__title{
	margin-bottom: 3rem;
}


	.offer{
		min-height: auto;
		padding: 2.5rem;
		border-radius: var(--radius);
	}

	.offer--feature{
		min-height: 34rem;
	}

	.intro {
    margin-bottom: var(--section-margin);
}
}

@media (max-width: 480px) {
		.also__title{
	margin-bottom: 2rem;
}


	.offer{
		padding: 2rem;
	}

	.offers__grid{
		gap: 1.5rem;
	}

	.offer__head .h3 br{
		display: none;
	}

	.offer--feature{
		min-height: 30rem;
	}

	.offer--feature .offer__title{
		font-size: 2.4rem;
	}

	.offers__more{
		margin-top: 3rem;
	}

	.offers__more .button{
		width: 100%;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.blog__posts{
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 768px) {
	.blog .section-head{
		margin-bottom: 3rem;
	}

	.blog__tiles{
		grid-template-columns: 1fr;
	}

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

	.blog-tile{
		border-radius: var(--radius);
	}
	

	.blog-post__main{
		padding: 1.5rem;
	}


}

@media (max-width: 480px) {
	.blog-tile{
		padding: 2rem;
	}

	.blog-post__tag{
		font-size: 1.4rem;
	}

		.blog-post__title {
    font-size: 1.4rem;
	}

	.blog__more{
		margin-top: 3rem;
	}

	.blog__more .button{
		width: 100%;
	}

		.blog__tiles{
		gap: 1.5rem;
	}

	.blog__posts{
		gap: 1.5rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.faq__inner{
		gap: 4rem;
	}
}

@media (max-width: 768px) {
	.faq__inner{
		grid-template-columns: 1fr;
	}

	.faq__aside{
		position: static;
	}

	.faq__title{
		font-size: 3rem;
	}

	.faq__q{
		padding: 2rem 0;
	}
}

@media (max-width: 480px) {
	.faq__title{
		font-size: 2.6rem;
	}

	.faq__q-text{
		font-size: 1.8rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.lineup__inner{
		border-radius: 3rem;
	}

	.lineup__marquee::before,
	.lineup__marquee::after{
		width: 8rem;
	}

	.lineup__tag{
		padding: 1.8rem 4rem;
	}
}

@media (max-width: 768px) {

	.lineup .section-head{
		margin-bottom: 3rem;
	}

	.lineup__marquee::before,
	.lineup__marquee::after{
		width: 6rem;
	}

	.lineup__tag{
		margin-right: 1.2rem;
		padding: 1.6rem 3.5rem;
		font-size: 1.8rem;
	}
}

@media (max-width: 480px) {
	.lineup__inner{
		border-radius: var(--radius);
	}

	.lineup  .sub-title{
		font-size: 1.6rem;
	}

	.lineup__marquee::before,
	.lineup__marquee::after{
		width: 3.5rem;
	}

	.lineup__tag{
		margin-right: 1rem;
		padding: 1.4rem 2.8rem;
		font-size: 1.6rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.unlock__inner{
		gap: 4rem;
		padding: 9rem 0rem;
	}

	.unlock__scroll{
		bottom: 6rem;
	}
}

@media (max-width: 768px) {
	.unlock,
	.unlock--long {
		min-height: 0;
	}

	.unlock__sticky {
		position: static;
		height: auto;
		overflow: visible;
		display: flex;
		flex-direction: column;
	}

	.unlock__inner,
	.unlock--long .unlock__inner {
		height: auto;
		overflow: visible;
		gap: 3rem;
		padding: 6rem 0rem 4rem;
	}

	.unlock__sub {
		font-size: 1.7rem;
	}

	.unlock__reveal {
		grid-template-rows: 1fr;
		opacity: 1;
		transform: none;
	}

	.unlock__bg {
		order: 1;
		position: static;
		height: auto;
	}

	.unlock__bg img,
	.unlock__bg video {
		height: auto;
	}

	.unlock__scroll {
		display: none;
	}

	.contacts-hero__grid {
    gap: 2rem 2rem;
}

.contacts-hero__title {
    margin-bottom: 3rem;
}
}

@media (max-width: 480px) {
	.unlock__inner,
	.unlock--long .unlock__inner {
		gap: 2.5rem;
		padding: 5rem 0rem 3rem;
	}

	.unlock__sub br {
		display: none;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.features__grid{
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.feature-card{
		min-width: 0;
		border-radius: var(--radius);
		padding: 2.5rem;
	}

	.feature-card--dark{
		padding: 2.5rem;
	}

	.feature-card__actions{
		flex-wrap: wrap;
		padding-top: 2.5rem;
	}

	.feature-card__btn{
		width: 100%;
	}
}

@media (max-width: 480px) {
	.features__grid{
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.feature-card{
		padding: 1.5rem;
	}

	.feature-card--dark{
		padding: 1.5rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.quiz__card{
		padding: 4rem;
	}

	.quiz__step{
		gap: 3rem;
	}

	.quiz__step--final{
		grid-template-columns: 1fr 1fr;
		gap: 4rem;
	}
}

@media (max-width: 768px) {
	.quiz__card{
		padding: 3rem;
		border-radius: var(--radius);
	}

	.quiz__step{
		grid-template-columns: 1fr;
		gap: 3rem;
		min-height: auto;
	}

	.quiz__step--final{
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.quiz__manager{
		padding: 2.5rem;
		border-radius: var(--radius);
	}

	.quiz__formside{
		padding: 3rem;
		border-radius: var(--radius);
	}
}

@media (max-width: 480px) {
	.quiz__card{
		padding: 2rem;
	}

	.quiz__selects{
		grid-template-columns: 1fr;
	}

	.quiz__options{
		grid-template-columns: 1fr;
	}

	.quiz__foot{
		flex-direction: column;
		align-items: stretch;
		gap: 1.5rem;
	}

	.quiz__manager{
		padding: 2rem;
	}

	.quiz__formside{
		padding: 2.5rem;
	}
}

/* ==================================== */

@media (max-width: 1230px) {
	.video__player{
		min-height: 55rem;
	}
}

@media (max-width: 1024px) {
	.video__player{
		min-height: 46rem;
	}

	.video__play{
		width: 8rem;
		height: 8rem;
	}
}

@media (max-width: 768px) {
	.video__player{
		min-height: 54rem;
		padding: 3rem;
		border-radius: var(--radius);
	}

	.video__play{
		width: 7rem;
		height: 7rem;
	}

		.video__duration {
		text-align: left;
	}

	.video__bottom{
		align-items: flex-start;
		flex-direction: column;
	}

		.video__badge{
		margin-top: 0rem;
	}
}

@media (max-width: 480px) {
	.video__player{
		min-height: 46rem;
		padding: 2rem;
	}

	.video__play{
		width: 6rem;
		height: 6rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.dealers__list{
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.dealers__head{
		margin-bottom: 3rem;
	}

	.dealers__list{
		grid-template-columns: 1fr;
	}

	.dealer{
		border-radius: var(--radius);
	}

	.dealer__icon{
		border-radius: var(--radius);
	}
}

@media (max-width: 480px) {
	.dealer{
		gap: 2rem;
		padding: 2rem;
		flex-direction: column;
	}

	.dealer__icon{
		width: 11rem;
		height: 11rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.uslugi__grid{
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.uslugi__card{
		gap: 2.5rem;
		padding: 3rem;
		border-radius: var(--radius);
	}


	.uslugi__tags{
		margin-top: 2rem;
	}

	.uslugi__more{
		margin-top: 3rem;
	}
}

@media (max-width: 480px) {
		.uslugi__media{
		width: 100%;
		height: 22rem;
	}

	.uslugi__card{
		flex-direction: column;
	}

	.uslugi__card{
		gap: 2rem;
		padding: 2rem;
	}

	.uslugi__media{
		height: 16rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.articles__head{
		gap: 2rem;
		margin-bottom: 3.5rem;
	}
}

@media (max-width: 768px) {
	.articles__head{
		flex-direction: column;
		align-items: flex-start;
		gap: 2rem;
	}

	.articles__head h2 br{
		display: none;
	}

	.articles__head--second{
		margin-top: var(--section-margin);
	}

	.articles__more{
		margin-top: 3rem;
	}
}

@media (max-width: 480px) {
	.articles__more .button{
		width: 100%;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.seo__inner{
		gap: 4rem;
	}
}

@media (max-width: 768px) {
	.seo__inner{
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.seo__aside{
		position: static;
	}

	.seo__lead{
		font-size: 1.8rem;
	}

	.seo__block{
		margin-top: 3rem;
		padding-top: 3rem;
	}

	.seo__heading{
		margin-bottom: 2rem;
	}
}

@media (max-width: 480px) {
	.seo__block{
		margin-top: 2.5rem;
		padding-top: 2.5rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.portfolio__grid{
		grid-template-columns: repeat(2, 1fr);
	}

	.portfolio__filter,
	.portfolio__filter--wide{
		width: calc((100% - 2rem) / 2);
	}
}

@media (max-width: 768px) {
	.portfolio__filter,
	.portfolio__filter--wide{
		width: 100%;
	}

	.portfolio__check{
		width: 100%;
		padding-bottom: 0;
	}

	.pagination{
		justify-content: center;
	}
}

@media (max-width: 480px) {
	.portfolio__grid{
		grid-template-columns: 1fr;
	}

	.pagination{
		flex-direction: column;
		align-items: stretch;
	}

	.pagination__list{
		justify-content: center;
	}

	.pagination__nav{
		justify-content: center;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.post__inner{
		flex-direction: column;
		gap: 4rem;
	}

	.post__toc{
		position: static;
		width: 100%;
	}

	.post__body{
		width: 100%;
		margin-left: 0;
	}

	.post__side{
		width: 100%;
	}
}

@media (max-width: 768px) {
	.post__title{
		font-size: 3.4rem;
	}

	.post__h2{
		font-size: 2.6rem;
	}

	.post__side-title{
		font-size: 2.2rem;
	}
}

@media (max-width: 480px) {
	.post__title{
		font-size: 2.8rem;
	}

	.post__h2{
		font-size: 2.2rem;
	}

	.post__h3{
		font-size: 2rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.also__grid{
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.also-card{
		padding: 2.5rem;
	}

	.also-card__title{
		font-size: 2.2rem;
	}
}

@media (max-width: 480px) {
	.also__grid{
		grid-template-columns: 1fr;
	}

	.also-card{
		padding: 2rem;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.otzyvy__grid{
		grid-template-columns: repeat(2, 1fr);
	}

	.otzyvy__stats .review-stat{
		flex: 1 1 calc(50% - 1rem);
		max-width: none !important;
	}
}

@media (max-width: 768px) {
	.otzyvy__grid{
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.otzyvy__stats{
		gap: 1rem;
	}

	.otzyvy__more{
		width: 100%;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.journal__filters{
		flex-direction: column;
		align-items: stretch;
		gap: 2.5rem;
	}
}

@media (max-width: 768px) {
	.journal__head{
		margin-bottom: 3rem;
	}

	.journal__selects .portfolio__filter{
		width: calc(50% - 1rem);
	}
}

@media (max-width: 480px) {
	.journal__selects{
		flex-direction: column;
	}

	.journal__selects .portfolio__filter{
		width: 100%;
	}
}

/* ==================================== */

@media (max-width: 1024px) {
	.contacts-hero__inner{
		grid-template-columns: 1fr;
		gap: 5rem;
	}
}

@media (max-width: 768px) {
	.contacts-hero__grid{
		grid-template-columns: 1fr;
	}

	.contacts-hero__form{
		padding: 2.5rem;
	}

	.contacts-map__box{
		height: 45rem;
		border-radius: var(--radius);
	}
}

@media (max-width: 480px) {
	.contacts-hero__form{
		padding: 2rem;
	}

	.contacts-map__box{
		height: 32rem;
	}
}

/* ==================================== */

@media (max-width: 1470px) {
	.about-numbers__grid{
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 1024px) {
	.about-standard__inner,
	.about-team__top{
		grid-template-columns: 1fr;
	}

	.about-standard__aside,
	.about-team__aside{
		position: static;
	}
}

@media (max-width: 768px) {
	.about-hero__inner{
		grid-template-columns: 1fr;
	}

	.about-hero__media{
		min-height: 34rem;
	}

	.about-numbers__grid{
		grid-template-columns: repeat(2, 1fr);
	}

	.about-standard .dealer__icon{
		width: 13rem;
		height: 13rem;
	}

	.team-card__photo{
		width: 14rem;
		height: 14rem;
	}

	.about-team__gallery{
		grid-template-columns: 1fr;
	}

	.about-figure__media{
		height: 32rem;
	}
}

@media (max-width: 480px) {
	.about-hero__media{
		min-height: 26rem;
	}

	.about-numbers__grid{
		gap: 1.5rem;
		grid-template-columns: 1fr;
	}

	.team-card{
		flex-direction: column;
	}

	.team-card__photo{
		width: 12rem;
		height: 12rem;
	}

	.community__actions{
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.community__actions .community__btn{
		width: 100%;
		justify-content: center;
	}
}

/* ==================================== */

@media (max-width: 768px) {
	.doc__head{
		margin-bottom: 3rem;
	}

	.doc__title{
		font-size: 3rem;
	}

	.doc__lead{
		font-size: 1.8rem;
	}

	.doc__h2{
		margin-top: 3rem;
		font-size: 2.4rem;
	}
}

@media (max-width: 480px) {
	.doc__title{
		font-size: 2.6rem;
	}

	.doc__h2{
		font-size: 2.1rem;
	}
}

/* ==================================== */

.tabs-content{
	display: none;
}

.d-block{
	display: block;
}

.none{
	display: none;
}

[class*="copyrights-pane"]{
	display: none !important;
}

.animate__animated, .animate__{
	opacity: 0;
	animation-fill-mode: forwards !important;
	animation-delay: 0.2s !important;
}

.animate__delay-1s{
	animation-delay: 0.8s !important;
}

.animate__delay-2s{
	animation-delay: 1.2s !important;
}

.animate__delay-2s.button{
	animation-delay: 1.4s !important;
}

/* Глобальный твик для всех анимируемых элементов */
.animate__animated,
.animated { /* подойдёт и для кастомного animation.css */
  will-change: transform, opacity;
  backface-visibility: hidden;
  transform: translateZ(0);
}

/* Если в ваших классах есть анимации margin/height/width/top/left — запрещаем: */
[class*="animate-"][style*="margin"],
[class*="animate-"][style*="top"],
[class*="animate-"][style*="left"] {
}
  /* лучше переписать сами эффекты на transform/opacity */

/* По умолчанию скрыть, чтобы не было блинка первого кадра */
.animate__animated,
.animated {
  visibility: hidden;
}

/* Когда страница готова — показать и дать анимациям отработать */
.page-ready .animate__animated,
.page-ready .animated {
  visibility: visible;
}


/* ==================================== */
/* Contact Form 7 — интеграция форм (сохраняем дизайн верстки) */

/* Служебные обёртки CF7 прозрачны для layout: .cta__form/.quiz__card ведут себя
   как исходная форма верстки в любом контейнере (модалка, .cta__card, kontakty). */
.wpcf7 { display: contents; }
.wpcf7 .screen-reader-response { position: absolute; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); width: 0.1rem; height: 0.1rem; margin: -0.1rem; padding: 0; border: 0; }
.wpcf7 .hidden-fields-container { display: none; }

/* Обёртка поля (span вокруг input/textarea) — обычный блок на всю ширину, без своих отступов */
.cta__form .wpcf7-form-control-wrap { display: block; width: 100%; margin: 0; }
.cta__form input.field,
.cta__form textarea.field { width: 100%; }
/* CF7 отдаёт textarea с rows=10 (слишком высокая) — фиксируем как в верстке */
.cta__form textarea.field { height: 10rem; }
/* null.css сбрасывает фон у input[type=submit] (спец. 0,1,1), поэтому кнопка теряет
   .button_black — восстанавливаем её вид с более высокой специфичностью */
.cta__form .wpcf7-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	color: var(--belyy);
	background-color: var(--fon2);
	-webkit-appearance: none;
	appearance: none;
}
.cta__form .wpcf7-submit:hover { opacity: 0.85; }
.cta__form .wpcf7-spinner { display: none; }

/* Пустой блок ответа не выводим (иначе пустая рамка снизу формы) */
.wpcf7-response-output:empty { display: none !important; }
.cta__form .wpcf7-response-output,
.quiz__card .wpcf7-response-output {
	margin: 1.6rem 0 0;
	padding: 1.2rem 1.6rem;
	border-radius: 1rem;
	font-size: 1.5rem;
	line-height: 1.4;
}
.wpcf7-form.sent .wpcf7-response-output { border: 0.1rem solid rgba(45, 168, 74, 0.4); background: rgba(45, 168, 74, 0.08); color: #2ba84a; }
.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.unaccepted .wpcf7-response-output,
.wpcf7-form.payment-required .wpcf7-response-output,
.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output { border: 0.1rem solid rgba(237, 90, 46, 0.4); background: rgba(237, 90, 46, 0.06); color: var(--krasnyy); }
.cta__form .wpcf7-not-valid-tip { color: var(--krasnyy); font-size: 1.4rem; margin-top: 0.6rem; display: block; }

/* Чекбокс согласия [acceptance] — под дизайн кастомного .checkbox верстки */
.cta__form .wpcf7-acceptance,
.cta__form .wpcf7-acceptance .wpcf7-list-item { display: block; margin: 0; }
.cta__form .wpcf7-acceptance { margin-top: 0.5rem; }
.cta__form .wpcf7-acceptance label { display: block; margin: 0; font-weight: inherit; cursor: pointer; }
.cta__form .wpcf7-acceptance input[type="checkbox"] { position: absolute; width: 0.1rem; height: 0.1rem; opacity: 0; pointer-events: none; }
.cta__form .wpcf7-acceptance .wpcf7-list-item-label {
	position: relative;
	display: block;
	padding-left: 2.3rem;
	font-size: 1.4rem;
	line-height: 1.4;
	color: rgba(25, 32, 32, 0.3);
}
.cta__form .wpcf7-acceptance .wpcf7-list-item-label::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.3rem;
	width: 1.2rem;
	height: 1.2rem;
	border: 0.1rem solid rgba(25, 32, 32, 0.3);
	border-radius: 0.2rem;
	transition: 0.2s ease 0s;
}
.cta__form .wpcf7-acceptance .wpcf7-list-item-label::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0.3rem;
	width: 1.2rem;
	height: 1.2rem;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7' fill='none'%3E%3Cpath d='M0.5 3.50001L3.50021 6.5L9.5 0.5' stroke='%23FDFDFD' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 60% auto no-repeat;
	opacity: 0;
	transition: 0.2s ease 0s;
}
.cta__form .wpcf7-acceptance input[type="checkbox"]:checked + .wpcf7-list-item-label::before { background-color: var(--theme-color); border-color: var(--theme-color); }
.cta__form .wpcf7-acceptance input[type="checkbox"]:checked + .wpcf7-list-item-label::after { opacity: 1; }
.cta__form .wpcf7-acceptance input[type="checkbox"]:focus-visible + .wpcf7-list-item-label::before { outline: 0.2rem solid var(--theme-color); outline-offset: 0.2rem; }
