/* USER VARIABLES SECTION */

:root {
	--light_dark: rgba(255, 255, 255, 0.08);
	--bg: #F2F3F7;
	--ld_dark: rgba(255, 255, 255, 0.16);
	--accent: #B6FF44;
	--pink: #f5c9c9;
	--gray: #D5D6D9;
	--yellow: #f5ecc9;
	--blue: #406CFF;
	--green: #c9f5d6;
	--purple: #AF78F6;
	--text: #1D2023;
	--light: rgba(255, 255, 255, 0.64);
	--regular-text: 14px;
	--lineheight: 1.4;
	--userfont: Gilroy, sans-serif;
	--systemfont: -apple-system, BlinkMacSystemFont, Arial, sans-serif;
	--radius: 24px;
	--transition: 0.2s ease all;
	--pd_widget: 60px 40px;
	--index: calc(1vw + 1vh);
	--sg0-space-sm: 1.125rem;
	--sg0-space-md: 2rem;
}
.grecaptcha-badge{
	opacity: 0;
	visibility: hidden;
	z-index: -1;
	display: none;
}
/* BOOTSTRAP SETTINGS SECTION */

/* gutter 20px (10px + 10px). Comment this code for default gutter start at 1.5rem (24px) wide. */
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl { --bs-gutter-x: .625rem; }
.row, .row > * { --bs-gutter-x: 1.25rem; }

/* FONTS LOAD SECTION */

@font-face { src: url("../fonts/Gilroy-Regular.woff2") format("woff2"); font-family: "Gilroy"; font-weight: 400; font-style: normal; }
@font-face { src: url("../fonts/Gilroy-Medium.woff2") format("woff2"); font-family: "Gilroy"; font-weight: 500; font-style: normal; }
@font-face { src: url("../fonts/Gilroy-Semibold.woff2") format("woff2"); font-family: "Gilroy"; font-weight: 600; font-style: normal; }
@font-face { src: url("../fonts/Benzin-Medium.woff2") format("woff2"); font-family: "Benzin"; font-weight: 400; font-style: normal; }


/* GENERAL CSS SETTINGS */

::placeholder { color: #000; }
::selection { background-color: #000; color: #fff; }
input, textarea { outline: none; }
/* input:focus:required:invalid, textarea:focus:required:invalid { border-color: red; }
input:required:valid, textarea:required:valid { border-color: green; } */

body {
	font-family: var(--userfont);
	font-size: var(--regular-text);
	line-height: var(--lineheight);
	color: var(--text);
	min-width: 320px;
	background: var(--bg);
	position: relative;
	overflow-x: hidden;
}
body.lock{
	overflow: hidden;
}
/* fix full height page */
html, body {
	height: 100%;
}
.app {
	min-height: 100%;
	display: flex;
	flex-direction: column;
}
main {
	flex: 1 1 auto;
	margin-top: 98px;
}
a:focus-visible{
	outline: none;
}
/*TEXT STYLES*/
h1,.one,h2,.two,h3,.three,h4,.four,h5,.five,.nm_text{
	font-family: 'Benzin';
	font-weight: 400;
	text-transform: uppercase;
}
h1,.one{
	font-size: 48px;
}
h2,.two{
	font-size: 36px;
}
h3,.three{
	font-size: 32px;
}
h4,.four{
	font-size: 28px;
}
h5,.five{
	font-size: 16px;
}

.nm_text{
	font-size: 56px;
	line-height: 1.2;
}
.xxl_text{
	font-size: 28px;
}
.xl_text{
	font-size: 24px;
}
.lg_text{
	font-size: 20px;
}
.md_text{
	font-size: 18px;
}
.us_text{
	font-size: 16px;
}
.rg_text{
	font-size: 14px;
}
.sm_text{
	font-size: 12px;
}
.grid_widget .four {
	font-size: 24px;
}
.sb_text{
	font-weight: 600;
}
.mb_text{
	font-weight: 500;
}
.rb_text{
	font-weight: 400;
}
.accent_text{
	color: var(--accent);
}
.blue_text{
	color: var(--blue);
}
.green_text{
	color: var(--green);
}
.purple_text{
	color: var(--purple) !important;
}
.pink_text{
	color: var(--pink);
}
.black_text{
	color: #000;
}
.white_text{
	color: #fff;
}
.light_text{
	color: var(--light);
}
.balance{
	text-wrap: balance;
}
.gray_text{
	color: var(--gray);
}
/*COLORS*/
.white_bg{
	background: #fff;
}
.dark_bg{
	background: var(--text);
}
.gray_bg{
	background: var(--gray);
}
.accent_bg{
	background: var(--accent);
}
.blue_bg{
	background: var(--blue);
}
.yellow_bg{
	background: var(--yellow);
}
.green_bg{
	background: var(--green);
}
.pink_bg{
	background: var(--pink);
}
.purple_bg{
	background: var(--purple);
}
.ld_bg{
	background: var(--light_dark);
}
.bg_widget{
	z-index: 1;
}
.bg_widget::before{
	z-index: -1;
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.tg_widget::before{
	background-image: url('../images/tg_widget.png');
	background-repeat: no-repeat;
	background-position: top left;
}
.wa_widget::before{
	background-image: url('../images/wa_widget.png');
	background-repeat: no-repeat;
	background-position: top left;
}

/*BTNS*/
.btn{
	font-size: 20px;
	display: inline-block;
	text-align: center;
	color: white;
	font-weight: 600;
	text-decoration: none;
	padding: 20px 32px;
	border-radius: 56px;
	background: #000;
	border: 1px solid transparent;
	transition: var(--transition);
}
.service_card .btn{
	padding: 12px 76px;
}
.btn.blue_btn{
	color: #fff;
	background: var(--blue);
}
.tag_cloud *{
	font-size: 12px;
	border-color: #000;
	color: #000;
	background: transparent;
}
.tag_cloud .btn{
	font-size: 12px;

}
.tag_cloud * + *{
	margin-left: 8px;
}
.tag_cloud img{
	max-width: 48px;
	width: 100%;
	height: 100%;
}
button{
	border: none;
	background: transparent;
	padding: 0;
	margin: 0;
	outline: none;
}
.white_btn{
	background: #fff;
	color: #000;
}
.tr_btn{
	border: none;
	mix-blend-mode: multiply;
}
.mix_color{
	mix-blend-mode: luminosity;
}
.lk_btn{
	border-radius: 50%;
	width: 52px;
	min-width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid transparent;
	background: #000;
}
.lk_btn.lkw_btn{
	background: #fff;
}
.sc_btn{
	font-size: 16px;
	padding: 14px 30px;
}
.ac_btn{
	color: var(--accent);
}
.wh_btn{
	background: #fff;
	color: #000;
}
.nav_btn{
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	position: relative;
	padding: 1px;
	z-index: 1;
	background: #000;
}
.nav_btn:first-child::before{
  background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.5) 100%);
}
.nav_btn::before{
	content: '';
	position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 50%;
	padding: 2px; /* Толщина градиентной границы */
  background: linear-gradient(to right,  rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 1) 100%);
  -webkit-mask: 
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: destination-out;
  mask-composite: exclude;
  z-index: -1;
	opacity: .25;
}

.nav_btn + *{
	margin-left: 12px;
}
header .btn{
	font-size: 12px;
	padding: 11px 20px;
	font-weight: 500;
}
.btn_group{
	text-decoration: none;
}
.btn_group .btn svg{
	margin-left: 10px;
}
.menu_button{
	position: relative;
	z-index: 99;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: transparent;
}
.menu_button::before,.menu_button::after{
	content: '';
	width: 18px;
	height: 2px;
	border-radius: 20px;
	background: var(--text);
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	transition: var(--transition);
}
.menu_button::before{
	top: 14px;
}
.menu_button::after{
	bottom: 14px;
}
.menu_button.active::before{
	top: 18px;
	bottom: auto;
	transform: rotate(-45deg);
}
.menu_button.active::after{
	top: auto;
	bottom: 20px;
	transform: rotate(45deg);
}
/*OTHER*/
a{
	transition: var(--transition);
}
hr{
	background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, #fff 50%, rgba(0, 0, 0, 0) 100%);
}
section{
	padding: 64px 0;
	position: relative;
}

.relative{position: relative;}
.overflow-h{overflow: hidden;}
.radius{border-radius: var(--radius);}
.radius50{border-radius: 50%;}

.image{
	object-fit: cover;
	max-width: 100%;
	width: 100%;
	max-height: 715px;
	height: 100%;
}

.h-100{
	height: 100%;
}

.grid_two{
	display: grid;
	grid-gap: 24px 32px;
	grid-template-columns: repeat(2, 1fr);
	align-content: baseline;
}


.pd_widget{
	padding: var(--pd_widget);
}
input {
	-webkit-border-radius:0px;
}
.text-center{
	text-align: center;
}
.page_content a{
	color: var(--text);
	text-decoration: none;
}
.page_content a.white_btn {
  color: #000;
}
/*CORE*/

header{
	margin: 0 0 12px 0;
	position: fixed;
	width: 100%;
	transition: var(--transition);
	z-index: 12;
	background: #fff;
	padding: 16px 0;
}
header .header_bg{
	padding: 16px 24px;
	background: #fff;
	border-radius: 90px;
	border: 1px solid var(--gray);
	margin-left: 0;
	margin-right: 0;
}
header.toggled{
	position: fixed;
}
header .header_phone{
	color: var(--text);
	text-decoration: none;
	font-weight: 500;
}
aside{
	transition: var(--transition);
	position: fixed;
	width: 100%;
	top: -40%;
	left: 0;
	background: #fff;
	padding-top: 140px;
	padding-bottom: 20px;
	min-height: 354px;
	visibility: hidden;
	opacity: 0;
	z-index: 11;
	max-height: 100%;
	overflow: auto;
	border-bottom: 1px solid rgba(255, 255, 255, 0.24);
}
.aside_overlay{
	display: none;
	z-index: -1;
	position: fixed;
	width: 100%;
	height: 100%;
	background: transparent;
	opacity: 0;
}
aside.active .aside_overlay{
	display: block;
}
.nav_widget ul{
	display: flex;
	align-items: center;
	justify-content: center;
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
}
.nav_widget ul li a{
	color: var(--text);
	text-decoration: none;
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
}
.nav_widget ul li + * {
	margin-left: 32px;
}
.social_widget * + *{
	margin-left: 12px;
}

.first_screen_home .radius_widget,.steps_slider .radius_widget,.testimonials_carousel .radius_widget,.form_widget,.about_advantages .radius_widget,.cases_slider .radius_widget{
	padding: 32px;
	border-radius: 32px;
}
.cases_slider .swiper-slide{
	text-decoration: none;
	height: auto;
}
.cases_slider .swiper-slide .btn{
	padding: 7px 12px;
	color: rgba(213, 214, 217, 1);
	font-size: 14px;
	background: rgba(64, 67, 70, 1);
	border: none;
}
.radius_widget{
	border-radius: 32px;
}
.slide_widget{
	padding: 32px;
}
.score_widget{
	padding: 40px;
	min-height: 280px;
	text-decoration: none;
	position: relative;
	overflow: hidden;
}

.roi_widget{
	z-index: 1;
}
.roi_widget::before{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background: url('../images/roi.png') no-repeat center bottom;
	z-index: -1;
	left: 0;
	top: 0;
}
/* CLIENTS SLIDER */
.slider_layer::after{
	right: 0;
	transform: rotate(-180deg);
}
.slider_layer::before{
	left: 0;
}
.clients_slider .swiper-slide img {
	object-fit: contain;
	padding: 10px 0;
	max-width: 140px;
}
.clients_slider .swiper-slide{
	display: flex;
	align-items: center;
	justify-content: center;
	height: initial;
}

/* SERVICE CARDS */

.service_card{
background: var(--bg);
	text-decoration: none;
}
.service_card{
	padding: 24px;
	height: 100%;
	min-height: 220px;
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.service_card .five {
	padding-right: 80px;
	text-wrap: balance;
}
.service_card .sm_text{
	padding-right: 94px;
	text-wrap: balance;
}
.service_holder {
	background-size: auto;
	position: absolute;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: right bottom;
	right: 0;
	bottom: 0;
	z-index: -1;
}
.service_card .btn{
	font-size: 16px;
}
.card_icon{
	width: 56px;
	min-width: 56px;
	height: 56px;
	transition: var(--transition);
	background: #fff;
}
.card_icon svg,.card_icon img{
	width: 24px;
	height: 24px;
	object-fit: contain;
	transition: var(--transition);
}
.card_icon svg path{
	transition: var(--transition);
}

/* CARDS GSAP */
/* .card + *{
	margin-top: 40px;
} */
.stack-cards{
	--stack-cards-gap: var(--sg0-space-sm);
  --stack-cards-item-ratio: 2/1;
	/* position: sticky;
	top: 120px;
	scroll-margin-top: 1200px; */
}
.card{
  position: relative;
  position: -webkit-sticky;
  padding-top: calc(var(--index)* 1.8);
	padding-bottom: calc(var(--index)* 1.8);;
	padding-right: 80px;
	padding-left: 80px;
  -webkit-transform-origin: center top;
          transform-origin: center top;
	width: 100%;
					
					
}
.s-cards{
	overflow: hidden;
}
#cards .swiper-slide {
	display: flex;
	height: initial;
}
/* .card_wrapper{
	position: sticky;
	top: 100px;
} */
.card_wrapper span:last-of-type{
	position: relative;
	padding-left: 90px;
	margin-left: 12px;
}
.card_wrapper span:last-of-type::before{
	content: '';
	height: 2px;
	background: #000;
	max-width: 72px;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.card_wrapper > div > div:first-child{
	max-width: 536px;
}


/* ADVANTAGES */
.advantades_widget{
	padding: 0 40px;
}
.advantage_card{
	flex: 1;
	position: relative;
	padding: 60px 0;
}
.advantage_card + *::before{
	content: '';
	height: 100%;
	width: 1px;
	position: absolute;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, #fff 50%, rgba(0, 0, 0, 0) 100%);
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	opacity: .25;
}
.advantage_card + *{
	padding-left: 60px;
	margin-left: 40px;
}
.card_widget{
	border: 1px solid #797E82;
	background: rgba(255, 255, 255, 0.05);
}
/* TESTIMONIALS */
.testimonial_widget{
	z-index: 1;
}
.testimonial_widget::before{
	content: '';
	position: absolute;
	right: 32px;
	top: 32px;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: url('../images/quote.svg') no-repeat right top;
}
.testimonial_widget img{
	width: 64px;
	height: 64px;
	object-fit: cover;
	margin-right: 24px;
	border-radius: 16px;
}
.rate_review > div + *{
	margin-left: 4px;
}
.rate_review svg path {
	fill: var(--blue);
	stroke: none;
}

.rate_review svg.inactive path {
	fill: none;
	stroke: #797E82;
}
/* FORMS */
.form_widget{
	height: 100%;
}
.form-group {
	position: relative;
	display: flex;
	align-items: center;
}
.form-group + * {
	margin-top: 12px;
}
.form-group input,.form-group textarea {
	padding: 20px 24px;
	width: 100%;
	border: 1px solid #797E82;
	background: transparent;
	color: var(--text);
}
.form_screen .form-group input, .form_screen .form-group textarea{
	color: #fff;
	border-color: rgba(255, 255, 255, 0.64);
}
.form-group input{
	border-radius: 90px;
}
.form-group textarea{
	border-radius: 32px;
	resize: none;
}

.form-group input::placeholder,.form-group textarea::placeholder{
	color: #797E82;
}
.form_screen .form-group input::placeholder,.form_screen .form-group textarea::placeholder{
	color: rgba(255, 255, 255, 0.64);
}
/* form button + *{
	margin-left: 16px;
} */
.popup form button + *{
	margin-left: 0;
}
.widget {
  z-index: 1;
}

/* OTHER WIDGETS */
.scope_widget hr{
	margin: 40px 0;
}
.scope_widget hr:last-of-type{
	display: none;
}
.scope_widget_item > div {
	flex: 1;
}
.scope_widget_item span{
	font-size: 64px;
	margin-right: 64px;
	font-weight: bold; /* Толщина текста */
  color: #141414;
  position: relative; /* Для псевдоэлемента */
	max-width: 110px;
	width: 100%;
}

.scope_widget_item span::before {
	content: attr(data-count);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1; /* За основным текстом */
  color: transparent;
  -webkit-text-stroke: 2px transparent;
  background: linear-gradient(-180deg, rgba(255,255,255,0.5) 0%, rgba(0, 0, 0, 0) 80%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-stroke: 2px transparent; /* Прозрачная рамка для фона */
  -webkit-text-stroke-color: gradient; 
}
.scope_widget_top > *{
	flex: 1;
}
.scope_widget_top > *:first-child{
	margin-right: 40px;
}
.service_carousel .swiper-slide{
	height: auto;
}
.result_widget{
	padding: 50px 40px;
}
.result_widget .advantage_card{
	padding-top: 0;
	padding-bottom: 0;
}
.result_widget .advantage_card + *::before{
	background: rgba(255, 255, 255, 0.22);
}
.promo_widget{
	padding: 120px 80px;
	gap: 20px;
}
.promo_widget > div:first-child{
	flex: auto;
}
.promo_layer{
	z-index: 1;
	overflow: hidden;
}
.promo_layer::after{
	content: '';
	width: 100%;
	height: 100%;
	background: url('../images/promo_layer.png') no-repeat right bottom;
	position: absolute;
	z-index: -1;
	background-size: contain;
	left: 0;
	top: 0;
}

.check_list > div + *{
	margin-top: 20px;
}
.check_list svg,.check_list img{
	min-width: 24px;
	margin-right: 16px;
}
.seo_widget h1,.seo_widget h2,.seo_widget h3,.seo_widget h4,.seo_widget h5{
	margin-bottom: 32px;
}
.seo_widget img{
	object-fit: cover !important;
	width: 100% !important;
	max-height: 420px !important;
	height: 100%;
}
.wp-block-image>a,.wp-block-image>figure>a{
	display: block !important;
}
.steps_widget_item {
	display: flex; /* Создаём флекс-контейнер */
	align-items: stretch; /* Растягиваем все дочерние элементы по высоте */
	justify-content: space-between;
	gap: 44px;
}

.steps_widget_item > div {
	flex: 1; /* Устанавливаем равный вес для каждого блока */
	display: flex; /* Включаем флекс на дочерних элементах */
	flex-direction: column; /* Сохраняем вертикальную структуру внутри каждого блока */
	justify-content: space-between; /* Растягиваем содержимое внутри блока */
}

.steps_widget_item > div:first-child {
	text-align: right;
}

.steps_widget_item > div:last-child {
	padding-bottom: 50px;
	position: relative;
	padding-left: 44px;
}

.steps_widget_item > div:last-child::before {
	content: '';
	position: absolute;
	left: 0;
	top: 20px;
	width: 1px;
	background: #fff;
	height: 100%;
}

.steps_widget_item > div:last-child::after {
	content: '';
	position: absolute;
	left: -23px;
	top: -8px;
	background: radial-gradient(
		circle,
		white 0 8px,
		rgba(255, 255, 255, 0.277) 8px 16px,
		rgba(255, 255, 255, 0.12) 16px 48px
	);
	border-radius: 100%;
	width: 48px;
	height: 48px;
}
.steps_widget_item:last-child > div:last-child::before{
	content: none;
	opacity: 0;
	visibility: hidden;
}
.city_list {
 column-count: 4;
 column-gap: 16px;
}
.city_list > div {
	margin-bottom: 16px;
}
.city_list a{
	color: #fff;
	text-decoration: none;
	display: block;
}
.map_widget{
	max-height: 474px;
	height: 100%;
	width: 100%;
	overflow: hidden;
}
.map_widget iframe{
	width: 100%;
	height: 100%;
	min-height: 682px;
}
/* FOOTER */
footer{
	padding: 60px 0;
	background: var(--text);
	color: #fff;
}
footer .nav_widget ul li a{
	color: #fff;
}
footer a{
	color: #fff;
	text-decoration: none;
}
/* POPUP */
.active.popup {
	opacity: 1;
	visibility: visible;
	z-index: 999;
}

.popup {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	height: 100%;
	outline: 0;
	opacity: 0;
	visibility: hidden;
	transition: 0.2s ease all;
	overflow-x: hidden;
	overflow-y: auto;
	background: rgb(0 0 0 / .6);
	z-index: 5;
}
.popup.active .popup_dialog{
	transform: translateY(0%);
}
.popup .popup_dialog {
	min-height: calc(100% - 10rem);
	max-width: 800px;
	margin: 5rem auto;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	width: auto;
	position: absolute;
	pointer-events: none;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	transform: translateY(-100%);
	transition: 0.4s ease all;
}
.popup .popup_dialog .popup_wrap {
	padding: 40px;
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	pointer-events: auto;
	outline: 0;
	background: #fff;
}
.popup_wrap .three{
	font-size: 32px;
}
.popup .btn_close{
	right: -50px;
	top: -30px;
	position: absolute;
	cursor: pointer;
	transition: var(--transition);
	background: #141414;
}
.popup a {
    color: #797979;
}
/* .filters{
	overflow: auto;
	white-space: nowrap;
	-ms-overflow-style: none;
	scrollbar-width: none;
} */
.filters{
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	width: 100%;
}
.filters a {
	text-align: center;
	text-decoration: none;
	font-size: 14px;
background: #fff;
padding: 8px 20px;
font-weight: 500;
	color: var(--text);
	border-radius: 30px;
}
/* .filters a + *{
	margin-left: 12px;
} */
.filters a.current{
	background: var(--blue);
	color: #fff;
}

.nav_widget > div:last-child > div{
	background: var(--blue);
	padding: 12px;
	cursor: pointer;
	outline: none;
}
.nav_widget > div:last-child >  div .nav_holder{
	background: transparent;
	border-radius: 50%;
	padding: 16px;
	transition: var(--transition);
}

.nav_widget > div:last-child > div:first-child{
	border-top-left-radius: 90px;
	border-bottom-left-radius: 90px;
}
.nav_widget > div:last-child >  div:last-child{
	border-top-right-radius: 90px;
	border-bottom-right-radius: 90px;
}

.advantages_pagination,.advantages_pagination_mobile{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-right: 24px;
}
.advantages_pagination .swiper-pagination-bullet,.advantages_pagination_mobile .swiper-pagination-bullet{
	width: 64px;
	height: 12px;
	border-radius: 90px;
	background: #fff;
	transition: var(--transition);
	opacity: 0.12;
}
.advantages_pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,.advantages_pagination_mobile .swiper-pagination-bullet.swiper-pagination-bullet-active{
	opacity: 1;
	width: 120px;
}
.advantages_pagination_mobile .swiper-pagination-bullet{
	flex: auto;
}
.advantages_pagination_mobile .swiper-pagination-bullet + *{
	margin-left: 8px;
}
.advantage{
	position: relative;
	background: var(--bg);
	z-index: 1;
	overflow: hidden;
}
.advantage .slide_holder{
	position: absolute;
	z-index: -1;
	min-height: 470px;
	width: 100%;
	height: 100%;
	right: 0;
	bottom: 0;
}
.advantage .slide_holder .slide_holder_bg{
	position: absolute;
	width: 100%;
	height: 100%;
	right: -58px;
	bottom: 0;
	background-size: 360px;
	z-index: -1;
	background-position: right bottom;
	background-repeat: no-repeat;
}
.advantage > div:first-child{
	max-width: 472px;
}
.advantages_slider .swiper-slide{
	position: relative;
	background: var(--bg);
	z-index: 1;
	height: initial;
}
.advantages_slider .swiper-slide .slide_holder{
	position: relative;
	z-index: 1;
	min-height: 440px;
	width: 100%;
}
.advantages_slider .swiper-slide .slide_holder .slide_holder_bg{
	position: absolute;
	width: 100%;
	height: 100%;
	right: 0;
	bottom: 0;
	background-size: contain;
	z-index: -1;
	background-position: right bottom;
	background-repeat: no-repeat;
}
.advantages_slider .swiper-slide > div:first-child{
	max-width: 524px;
}
.steps_slider .radius_widget{
	background: #fff;
	gap: 0 20px;
}
.slide_text .four{
	position: relative;
	display: flex;
gap: 16px;
min-width: 356px;
}
.slide_text .four::before{
	content: '';
	max-width: 20px;
	min-width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--blue);
	flex: 1;
	margin-top: 2px;
}
.steps_slider img{
	object-fit: cover;
	border-radius: 32px;
	max-width: 100%;
	min-height: 308px;
	height: 100%;
}
.steps_slider .swiper-slide{
	height: initial;
}
.steps_pagination{
	background: #fff;
	border-radius: 90px;
	padding: 38px;
	position: relative;
	overflow: hidden;
	z-index: 1;
	bottom: 0 !important;
}
.steps_pagination .swiper-pagination-bullet {
	width: 20px;
	height: 20px;
	background: var(--blue);
	border-radius: 50%;
	position: relative;
	z-index: 1;
	opacity: 1;
}

/* Свечение */
.steps_pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 40px; /* Размер свечения — можешь изменить */
	height: 40px;
	background: var(--blue);
	opacity: 0.16;
	border-radius: 50%;
	z-index: -1;

}
.steps_pagination::after {
	content: '';
	position: absolute;
	width: 90%;
	height: 1px;
	background: var(--gray);
	right: 0;
	z-index: -1;
	margin: 0 auto;
	left: 0;
}
.thumbnail_page {
	position: sticky;
	top: 120px;
}
.thumbnail_page img {
	object-fit: cover;
	max-height: 500px;
	width: 100%;
	max-width: 100%;
}
.first_screen_home_widget.screen_page{
	min-height: 432px;
	height: 100%;
}
.sa {
  width: 140px;
  height: 140px;
  padding: 26px;
	margin: auto;
}
.sa-success {
  border-radius: 50%;
  border: 4px solid #A5DC86;
  box-sizing: content-box;
  height: 80px;
  padding: 0;
  position: relative;
  width: 80px;
}
.sa-success:after, .sa-success:before {
  content: "";
  height: 120px;
  position: absolute;
  transform: rotate(45deg);
  width: 60px;
}
.sa-success:before {
  border-radius: 40px 0 0 40px;
  width: 26px;
  height: 80px;
  top: -17px;
  left: 5px;
  transform-origin: 60px 60px;
  transform: rotate(-45deg);
}
.sa-success:after {
  border-radius: 0 120px 120px 0;
  left: 30px;
  top: -11px;
  transform-origin: 0 60px;
  transform: rotate(-45deg);
  animation: rotatePlaceholder 4.25s ease-in;
}
.sa-success-placeholder {
  border-radius: 50%;
  border: 4px solid rgba(165, 220, 134, 0.25);
  box-sizing: content-box;
  height: 80px;
  left: -4px;
  position: absolute;
  top: -4px;
  width: 80px;
  z-index: 2;
}
.sa-success-fix {
  height: 90px;
  left: 28px;
  position: absolute;
  top: 8px;
  transform: rotate(-45deg);
  width: 5px;
  z-index: 1;
}
.sa-success-tip, .sa-success-long {
  background-color: #A5DC86;
  border-radius: 2px;
  height: 5px;
  position: absolute;
  z-index: 2;
}
.sa-success-tip {
  left: 14px;
  top: 46px;
  transform: rotate(45deg);
  width: 25px;
  animation: animateSuccessTip 0.75s;
}
.sa-success-long {
  right: 8px;
  top: 38px;
  transform: rotate(-45deg);
  width: 47px;
  animation: animateSuccessLong 0.75s;
}

@keyframes animateSuccessTip {
  0%, 54% {
    width: 0;
    left: 1px;
    top: 19px;
  }
  70% {
    width: 50px;
    left: -8px;
    top: 37px;
  }
  84% {
    width: 17px;
    left: 21px;
    top: 48px;
  }
  100% {
    width: 25px;
    left: 14px;
    top: 45px;
  }
}
@keyframes animateSuccessLong {
  0%, 65% {
    width: 0;
    right: 46px;
    top: 54px;
  }
  84% {
    width: 55px;
    right: 0;
    top: 35px;
  }
  100% {
    width: 47px;
    right: 8px;
    top: 38px;
  }
}
@keyframes rotatePlaceholder {
  0%, 5% {
    transform: rotate(-45deg);
  }
  100%, 12% {
    transform: rotate(-405deg);
  }
}

.success{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	font-weight:600;
	display:none;
	z-index:999;
	font-size:20px;
	text-align: center;
	background: #fff;
}
.success~*{
	-webkit-transition:.5s ease;
	-o-transition:.5s ease;
	transition:.5s ease
}
.success.active~*{
	opacity:.5;
	-webkit-filter:blur(10px);
	filter:blur(10px)
}
.success.active{
	display: flex;
    flex-flow: column;
    align-items: center;
}
.form{
	position: relative;
}
.success span{margin:auto;text-align:center;font-size: 21px;font-weight: 700;}

.format_widget{
	grid-template-columns: 1fr; /* один блок в строку */
  gap: 12px;
	
}
.format_widget > div {
	background: #fff;
	padding: 18px 16px;
	height: 100%;
}
.format_widget > div img{
	max-width: 190px;
	object-fit: contain;
	max-height: 150px;
}
.format_holder{
	margin-right: 16px;
	min-width: 190px;
	
}

.checkbox {
	display: inline-flex;
	gap: 0.5rem;
	cursor: pointer;
	user-select: none;
}

/* Скрываем нативный input, но оставляем доступным для ассистивных технологий */
.checkbox input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 45px;
	margin: -1px;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	overflow: hidden;
	white-space: nowrap;
	outline: none;
}

/* Внешний вид кастомного квадратика */
.checkbox .box {
	min-width: 20px;
	width: 20px;
	height: 20px;
	border-radius: 3px;
	border: 1px solid #797E82;
	display: inline-grid;
	place-items: center;
	transition: background-color .12s, border-color .12s;
	background: white;
	margin-top: 8px;
}

/* Галочка (скрыта по умолчанию) */
.checkbox .box::after {
	content: "";
	width: 10px;
	height: 6px;
	border-left: 2px solid transparent;
	border-bottom: 2px solid transparent;
	transform: rotate(-45deg) scale(0);
	transform-origin: center;
	transition: transform .12s ease-in-out, border-color .12s;
}

/* Состояние checked — меняем фон и показываем галочку */
.checkbox input[type="checkbox"]:checked + .box {
	background: var(--blue);     /* цвет фона при отмеченном состоянии */
	border-color: var(--blue);
}
.checkbox input[type="checkbox"]:checked + .box::after {
	border-left-color: white;
	border-bottom-color: white;
	transform: rotate(-45deg) scale(1);
}

/* Фокус для клавиатуры — видно когда табом фокусируем */


/* Состояние disabled */
.checkbox input[type="checkbox"]:disabled + .box {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Текст рядом */
.checkbox .label-text {
	font-size: 14px;
	color: #222;
}
.page_inner img{
	width: 100%;
}
.page_inner p{
	margin-bottom: 2rem;
}
.wp-block-heading{
	margin-bottom: .6rem;
}

