body {
    font-family: "Nunito Sans";
	line-height:initial;
	color:var(--black);
	background:#F2F4FA;
}
@media (min-width: 1200px) {
    .container {
        max-width: 1230px;
    }
}
input:hover,
input:active,
input:focus,
a:hover,
a:active,
a:focus,
button:hover,
button:active,
button:focus,
textarea:hover,
textarea:active,
textarea:focus {
	outline:none;
}
a,
a:hover {
    text-decoration: none;
}
:root {
	--black:#222222;
	--grey:#878787;
	--blue_o:rgba(37,99,235,0.1);
	--blue:#2563EB;
	--blue_h:#1D4ED8;
	--white:#fff;
}

/* ------ ------ btn ------ ------ */

.btn {
	display:flex;
	justify-content:center;
	align-items:center;
	border:0;
	background:var(--blue);
	color:#125AD3;
	font-size:18px;
	font-weight:600;
	border-radius:8px;
	height:54px;
	min-width:200px;
	width:200px;
	position:relative;
	transition:background 0.2s ease;
	color:#fff;
}
.btn:hover {
	background:var(--blue_h);
	color:#fff;
}

/* ------ ------ title ------ ------ */

.title {
	position:relative;
	margin:0 0 32px;
}
.title > h2 {
	margin:0;
	font-size:32px;
	line-height:100%;
	text-transform:uppercase;
	font-weight:600;
	position:relative;
	text-align:center;
	padding:0 0 12px;
	margin:0 0 12px;
}
.title > h2:after {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	margin:0 auto;
	content:'';
	display:block;
	height:3px;
	width:142px;
	background:var(--blue);
}
.title > p {
	position:relative;
	text-align:center;
	font-size:16px;
	margin:0;
	color:var(--grey);
}

/* ------ ------ indent ------ ------ */

.indent {
	padding:120px 0 0;
}

/* ------ ------ header ------ ------ */

header {
	height:60px;
	position:fixed;
	top:0;
	left:0;
	right:0;
	z-index:101;
	transition:background 0.2s ease;
}
header.fixed {
	background:#fff;
	top:0;
	padding:0;
	box-shadow:0 0 5px rgba(0,0,0,0.2);
}
.header_in {
	width:100%;
	display:flex;
	align-items:center;
	height:100%;
	padding:10px 0;
}
header.fixed .header_in {
	border:0;
}
.header_logo {
	position:relative;
	height:32px;
	width:266px;
	min-width:266px;
}
.fixed .header_in {
    padding: 10px 0;
}
.header_logo a {
	display:flex;
	align-items:end;
	width:100%;
	height:32px;
}
.header_logo img {
	height:auto;
	width:100%;
	position:absolute;
	max-height:32px;
	width:auto;
	top:0;
	left:0;
	transition:opacity 0.2s ease;
}
.header_logo img:first-child,
.open_menu .header_logo img:first-child,
.open_menu .fixed .header_logo img:first-child{
	opacity:1;
}
.header_logo img:last-child,
.open_menu .header_logo img:last-child {
	opacity:0;
}
header.fixed  img:first-child {
	opacity:0;
}
header.fixed img:last-child {
	opacity:1;
}
.header_menu {
    width: 100%;
    display: flex;
    justify-content: center;
}
.header_menu nav{
    width: 100%;
    display: flex;
    justify-content: center;
}
.header_menu nav > ul {
    padding: 0;
    margin: 0;
    display: flex;
}
.header_menu nav > ul > li {
    list-style: none;
	margin:0 10px;
	position:relative;
}
.header_menu nav > ul > li > a  {
    display: block;
    color: var(--white);
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
	padding:5px;
	transition:color 0.2s ease;
}
header.fixed .header_menu nav > ul > li > a {
	color:var(--black);
}
.header_menu nav ul li:hover > a,
.current-menu-item > a {
    color: var(--blue);
}
header.fixed .header_menu nav > ul > li:hover > a,
header.fixed .header_menu nav > ul > li.current-menu-item > a {
    color: var(--blue);
}
.header_menu nav > ul li.menu-item-has-children ul {
    padding: 0;
    margin: 0;
	position:absolute;
}

.header_nav_btn {
    display: none;
    width: 32px;
	min-width: 32px;
    height: 32px;
    position: relative;
}
.header_nav_btn div,
.header_nav_btn:after,
.header_nav_btn:before {
    position: absolute;
    width: 34px;
    height: 2px;
    background:var(--white);
    transition: all 0.3s ease;
    left: 0;
	right:0;
    content: "";
    display: block;
    border-radius: 10px;
	margin:0 auto;
}
.header_nav_btn div {
    top: 0;
    bottom: 0;
	width:18px;
	margin:auto;
}
.header_nav_btn:after {
    top: 8px;
	width:26px;
}
.header_nav_btn:before {
    bottom: 8px;
	width:10px;
}
.header_nav_btn.active {
	
}
.header_nav_btn.active div {
	display:none;
}
.header_nav_btn.active:before {
    transform: rotate(-45deg);
    bottom: initial;
    top: 14px;
	width:24px;
}
.header_nav_btn.active:after {
    transform: rotate(45deg);
    bottom: initial;
    top: 14px;
	width:24px;
}

.header_info {
	display:flex;
	align-items:center;
	width:266px;
	min-width:266px;
	justify-content:end;
}
.header_phone a {
	display:flex;
	justify-content:center;
	align-items:center;
	color:var(--white);
	font-size:16px;
	padding:5px;
	font-weight:bold;
	white-space:pre;
	border-radius:100px;
	transition:color 0.2s ease;
}
.header_phone a:hover {
	color:var(--blue_h);
}
header.fixed .header_phone a {
	color:var(--black);
}
.header_mes,
.header_mobile_info_mes,
.footer_info_mes {
	display:flex;
}
.header_mes a,
.footer_mes {
	width:40px;
	min-width:40px;
	height:40px;
	border-radius:8px;
	background-color:var(--blue);
	margin:0 0 0 12px;
	transition:background 0.2s ease;
	display:flex;
	justify-content:center;
	align-items:center;
	background-position:center;
	background-repeat:no-repeat;
}
.header_mes a:hover,
.footer_mes:hover {
	background-color:var(--blue_h);
}
.header_mes_wh,
.header_mobile_mes_wh,
.footer_info_mes_wh,
.footer_mes_wh {
	background-image:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17.2062 2.78409C15.4102 0.994317 13.0155 0 10.4878 0C5.23278 0 0.975575 4.24242 0.975575 9.47917C0.975575 11.1364 1.44121 12.7936 2.23943 14.1856L0.909058 19.0909L5.96449 17.7652C7.36139 18.4943 8.89132 18.892 10.4878 18.892C15.7428 18.892 20 14.6496 20 9.41288C19.9334 6.96023 19.0022 4.57386 17.2062 2.78409ZM15.0776 12.8598C14.878 13.3902 13.9468 13.9205 13.4811 13.9867C13.082 14.053 12.5499 14.053 12.0177 13.9205C11.6851 13.7879 11.2195 13.6553 10.6873 13.3902C8.29265 12.3958 6.76272 10.0095 6.62968 9.81061C6.49664 9.67803 5.6319 8.55114 5.6319 7.35795C5.6319 6.16477 6.23057 5.63447 6.43012 5.36932C6.62968 5.10417 6.89575 5.10417 7.09531 5.10417C7.22835 5.10417 7.4279 5.10417 7.56094 5.10417C7.69398 5.10417 7.89354 5.03788 8.09309 5.50189C8.29265 5.96591 8.75828 7.15909 8.8248 7.22538C8.89132 7.35795 8.89132 7.49053 8.8248 7.62311C8.75828 7.75568 8.69176 7.88826 8.55872 8.02083C8.42568 8.15341 8.29265 8.35227 8.22613 8.41856C8.09309 8.55114 7.96006 8.68371 8.09309 8.88257C8.22613 9.14773 8.69176 9.87689 9.42347 10.5398C10.3547 11.3352 11.0864 11.6004 11.3525 11.733C11.6186 11.8655 11.7516 11.7992 11.8847 11.6667C12.0177 11.5341 12.4833 11.0038 12.6164 10.7386C12.7494 10.4735 12.949 10.5398 13.1485 10.6061C13.3481 10.6723 14.5454 11.2689 14.745 11.4015C15.0111 11.5341 15.1441 11.6004 15.2106 11.6667C15.2771 11.8655 15.2771 12.3295 15.0776 12.8598Z" fill="%23fff"/></svg>');
}
.header_mes_tg,
.header_mobile_mes_tg,
.footer_info_mes_tg,
.footer_mes_tg {
	background-image:url('data:image/svg+xml,<svg width="18" height="17" viewBox="0 0 18 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17.2727 1.27477L14.5405 15.5385C14.5405 15.5385 14.1582 16.5274 13.1081 16.0531L6.80416 11.0478L6.77493 11.0331C7.62644 10.2413 14.2295 4.09335 14.518 3.81468C14.9648 3.38308 14.6874 3.12614 14.1687 3.45217L4.41527 9.86636L0.652399 8.55526C0.652399 8.55526 0.0602339 8.33714 0.00326622 7.86285C-0.0544511 7.38778 0.671887 7.13084 0.671887 7.13084L16.0119 0.899065C16.0119 0.899065 17.2727 0.325413 17.2727 1.27477Z" fill="%23fff"/></svg>');
}

/* ------ ------ header_mobile ------ ------ */

body.open_menu {
	overflow:hidden;
}
.header_mobile {
	display:block;
	position:fixed;
	left:-100%;
	width:100%;
	background:#fff;
	overflow:hidden;
	top: 0;
	bottom: 0;
	transition:left 0s ease;
}
.header_mobile.active {
	left:0;
}
.header_mobile .container {
	display:flex;
	overflow:auto;
	padding-top:48px;
	flex-direction:column;
	align-items: baseline;
}
.header_mobile_info {
	width:100%;
}
.header_mobile .container {
    padding: 48px 15px 16px;
	height:100%;
}
.header_mobile_in {
    height: 100%;
	padding:24px 0;
	width:100%;
    max-height: calc(100vh - 90px);
}
.header_mobile_in > ul,
.footer_content ul {
	padding:24px 0 0;
	margin:24px 0 0;
	width:100%;
	border-top: 1px solid #DADADA;
}
.header_mobile_in > ul > li,
.footer_content ul li {
	list-style:none;
	margin:0 0 16px;
}
.header_mobile_in > ul > li:last-child,
.footer_content ul li:last-child {
	margin:0;
}
.header_mobile_in > ul > li > a,
.footer_content ul li a {
	font-size:14px;
	font-weight:600;
	color:var(--black);
	transition:color 0.2s ease;
	text-transform:uppercase;
}
.header_mobile_in > ul > li a:hover,
.footer_content ul li a:hover {
	color:var(--blue);
}
.header_mobile_info,
.footer_info {
	width:290px;
	min-width:290px;
	display:flex;
	align-items:center;
}
.header_mobile_info,
.header_mobile_mail,
.header_mobile_adress,
.header_mobile_time,
.footer_info,
.footer_mail,
.footer_adress,
.footer_time {
	padding-left:32px;
	display:flex;
	align-items:center;
	font-size:16px;
	margin:0 0 12px;
	height:24px;
}
.header_mobile_info a,
.header_mobile_mail a,
.footer_info a,
.footer_mail a {
	color:var(--black);
}
.header_mobile_info,
.footer_info {
	background:url(img/ico_phone.svg) left center no-repeat;
}
.header_mobile_mail,
.footer_mail {
	background:url(img/ico_mail.svg) left center no-repeat;
}
.header_mobile_adress,
.footer_adress {
	background:url(img/ico_adress.svg) left center no-repeat;
}
.header_mobile_time,
.footer_time {
	background:url(img/ico_time.svg) left center no-repeat;
	margin:0;
}
.header_mobile_info_mes a,
.footer_info_mes a {
	width:24px;
	min-width:24px;
	height:24px;
	border-radius:8px;
	background-color:var(--blue);
	margin:0 0 0 8px;
	transition:background 0.2s ease;
	display:flex;
	justify-content:center;
	align-items:center;
	background-position:center;
	background-repeat:no-repeat;
	background-size:12px;
}
.header_mobile_info_mes a:hover,
.footer_info_mes a:hover {
	background-color:var(--blue_h);
}
.header_mobile_btn {
	margin:24px auto 0;
	display:flex;
	justify-content:center;
}


/* ------ ------ hero ------ ------ */

.hero {
}
.hero_in {
	height:720px;
	background:url(img/slide.webp) center / cover no-repeat;
	position:relative;
	overflow:hidden;
}
.hero_in .container {
	position:relative;
	z-index:2;
	color:#fff;
	display:flex;
	justify-content:center;
	flex-direction:column;
	height:100%;
}
.hero_in {
	padding:60px 0;
}
.hero_tit {
	max-width:880px;
}
.hero_tit h1 {
	font-size:44px;
	margin:0;
	font-weight:600;
    line-height: 110%;
	text-transform:uppercase;
}
.hero_txt {
	max-width:600px;
	font-size:18px;
	border-left:1px solid var(--blue);
	padding:0 0 0 12px;
	margin:20px 0 0;
	line-height: 120%;
}
.hero_btn {
	margin:64px 0 0;
}
.hero_down {
	position:absolute;
	margin:0 auto;
	display:block;
	left:0;
	right:0;
	bottom:20px;
	z-index:5;
	height:20px;
	background:rgb(255,255,255,0.2);
	border-radius:8px;
	width:48px;
	height:54px;
	cursor:pointer;
}
.hero_down_a {
    opacity: 0;
    position: absolute;
	left: 0;
	right:0;
	margin:0 auto;
}
.hda1 {
    animation: arrow-movement 1s ease-in-out infinite;
}
.hda2 {
    animation: arrow-movement 1s .2s ease-in-out infinite;
}
.hda3 {
    animation: arrow-movement 1s .4s ease-in-out infinite;
}
.hda4 {
    animation: arrow-movement 1s .6s ease-in-out infinite;
}
.hda5 {
    animation: arrow-movement 1s .8s ease-in-out infinite;
}
.hero_down_a:before,
.hero_down_a:after {
    background: #fff;
    content: '';
    display: block;
	border-radius:10px;
    height: 2px; 
    position: absolute;
	top: 0;
	left: 18px;
    width: 12px;
}
.hero_down_a:before {
    transform: rotate(45deg) translateX(-20%);
    transform-origin: top left;
}

.hero_down_a:after {
    transform: rotate(-45deg) translateX(20%);
    transform-origin: top right;
}
@keyframes arrow-movement {
    0% { 
        opacity: 0;
        top:10%;
    }
    10% { 
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
	80% { 
        opacity: 0;
	}
    100% { 
        opacity: 0;
		top:90%;
    }
}

/* ------ ------ services ------ ------ */

.services {
	
}
.services_row {
	display:flex;
	flex-wrap:wrap;
	margin:0 -8px -18px;
	width:calc(100% + 16px);
}
.services_item {
	padding:0 8px 16px;
	width:33.33%;
}
.services_in {
	border-radius:12px;
	height:240px;
	position:relative;
}
.services_img {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	border-radius:12px;
	overflow:hidden;
}
.services_img img {
	display:block;
	border-radius:12px;
	object-fit:cover;
	max-width:100%;
	max-height:100%;
	height: 100%;
    width: 100%;
	transition:transform 0.2s ease;
}
.services_in:hover .services_img img {
	transform: scale(1.2);
}
.services_txt {
	position:absolute;
	left:0;
	right:0;
	bottom:16px;
	width:calc(100% - 32px);
	margin:0 auto;
	height:48px;
	display:flex;
	align-items:center;
	overflow:hidden;
	border-radius:8px;
	padding:8px;
}
.services_txt:after {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	content:'';
	background:rgba(255,255,255,0.55);
	display:block;
	backdrop-filter: blur(8px) saturate(70%);
}
.services_txt i {
	position:relative;
	z-index:2;
	display:flex;
	justify-content:center;
	align-items:center;
	background:var(--blue);
	border-radius:8px;
	width:32px;
	min-width:32px;
	height:32px;
	margin:0 8px 0 0;
}
.services_txt span {
	position:relative;
	z-index:2;
	line-height:120%;
	font-size:14px;
}

/* ------ ------ price ------ ------ */

.price {
	
}
.price .title {
	margin:0;
}
.price .title h2:after  {
	display:none;
}
.price_cat {
	display:flex;
	justify-content:center;
	margin:0 0 32px;
}
.price_cat a {
	display:inline-flex;
	border:1px solid var(--blue);
	padding:6px 20px;
	color:var(--black);
	background:var(--white);
	font-size:16px;
	font-weight:600;
	border-radius:6px;
	margin:0 4px 8px;
	transition:color 0.2s ease,background 0.2s ease;
}
.price_cat a:hover {
	background:var(--blue_o);
}
.price_cat a.active {
	color:#fff;
	background:var(--blue);
}
.price_row {
	display:flex;
	padding:12px 16px 16px;
	border-bottom:1px solid #DADADA;
}
.price_header {
	display:flex;
	align-items:center;
	padding:12px 16px 16px;
	background:var(--blue_o);
	font-weight:bold;
}
.price_header_num {
	width:48px;
	min-width:48px;
	font-size:12px;
	color:#878787;
	margin:0 20px 0 0;
}
.price_header_tit {
	width:100%;
	font-weight:600;
}
.price_header .price_header_tit {
	text-align:center;
	font-weight:bold;
}
.price_header_izm {
	width:200px;
	min-width:200px;
	margin:0 0 0 20px;
	text-align:center;
}
.price_header_price {
	width:200px;
	font-weight:bold;
	min-width:200px;
	margin:0 0 0 20px;
	text-align:center;
}
.price_list > div {
	display:none;
}
.price_list > div.active {
	display:block;
}
.price_bottom {
	margin:32px 0 0;
}
.price_bottom_txt {
	
}
.price_bottom_txt p {
	
}
.price_bottom_txt p:last-child {
	margin:0;
}
.price_bottom_info {
	display:flex;
	justify-content:center;
	margin:32px 0 0;
}
.price_bottom_info div {
	display:inline-flex;
	align-items:center;
	margin:0 auto;
	background:var(--blue_o);
	padding:8px;
	border-radius:8px;
}
.price_bottom_info img {
	margin:0 4px 0 0;
	display:block;
}
.price_bottom_btn {
	display:flex;
	justify-content:center;
	margin:32px 0 0;
}


/* ------ ------ about ------ ------ */

.about {
	
}
.about_row {
	display:flex;
	margin:0 -15px;
}
.about_content {
	width:50%;
	padding:0 15px;
	color:#444444;
}
.about_content ul {
	padding:0;
	margin:0;
}
.about_content ul li {
	list-style:none;
	background:url(img/ico_li.svg) left top no-repeat;
	padding-left:28px;
	line-height: 24px;
	margin:0 0 8px;
}
.about_content ul li:last-child {
	margin:0;
}
.about_gallery {
	display:flex;
	width:50%;
	padding:0 15px;
}
.about_gallery a {
	border-radius:12px;
	border:1px solid #DADADA;
	position:relative;
	overflow:hidden;
	height:400px;
	display:block;
	width:calc(50% - 8px);
	transition:box-shadow 0.2s ease; 
	box-shadow:0 0 0 rgba(37,99,235,0);
}
.about_gallery a:hover {
	box-shadow:0 4px 20px rgba(37,99,235,0.15);
}
.about_gallery a:after {
	content:'';
	display:block;
	position:absolute;
	right:16px;
	bottom:16px;
	z-index:2;
	background:url(img/ico_about_gallery.svg) center no-repeat;
	width:32px;
	height:32px;
}

.about_gallery a img {
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
}
.about_gallery a:first-child {
	margin:0 16px 0 0;
}

/* ------ ------ why ------ ------ */

.why {
	
}
.why_row {
	display:flex;
	flex-wrap:wrap;
	margin:0 -8px -18px;
	width:calc(100% + 16px);
}
.why_item {
	padding:0 8px 16px;
	width:33.33%;
}
.why_in {
	border-radius:12px;
	background:#fff;
	height:100%;
	padding:16px;
	position:relative;
	transition:box-shadow 0.2s ease; 
	box-shadow:0 0 0 rgba(37,99,235,0);
}
.why_in:hover {
	box-shadow:0 4px 20px rgba(37,99,235,0.15);

}
.why_img {
	margin:0 0 24px;
	width:48px;
	height:48px;
	display:flex;
	border-radius:12px;
	background:var(--blue_o);
	justify-content:center;
	align-items:center;
}
.why_tit {
	font-weight:bold;
	font-size:16px;
	margin:0 0 8px;
}
.why_txt {
	font-size:14px;
}
.why_info {
	display:flex;
	justify-content:center;
	margin:32px 0 0;
}
.why_info div {
	display:inline-flex;
	align-items:center;
	margin:0 auto;
	background:var(--blue_o);
	padding:8px;
	border-radius:8px;
}
.why_info img {
	margin:0 4px 0 0;
	display:block;
}

/* ------ ------ who ------ ------ */

.who {
	overflow:hidden;
	padding-bottom:20px;
	margin-bottom:-20px;
}
.who_row {
	display:flex;
	margin:0 -8px;
	width:calc(100% + 16px);
}
.who_item {
	border-radius:12px;
	margin:0 8px;
	padding:16px;
	width:20%;
	background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	transition:box-shadow 0.2s ease;
	box-shadow:0 0 0 rgba(37,99,235,0);
}
.who_item:hover {
	box-shadow:0 4px 20px rgba(37,99,235,0.15);
}
.who_num {
	font-size:140px;
	font-weight:1000;
	line-height:85%;
	color:var(--blue_o);
}
.who_tit {
	font-weight:bold;
	font-size:16px;
	margin:0 0 8px;
	color:#444444;
}
.who_txt {
	font-size:14px;
	color:#444444;
}

/* ------ ------ work ------ ------ */

.work {
	overflow:hidden;
}
.work_row {
	margin:0 -8px;
	width:calc(100% + 16px);
}
.work_item {
	margin:0 8px;
}
.work_img {
	margin:0 0 8px;
}
.work_img img {
	object-fit:cover;
	height:180px;
	border-radius:12px;
	width:100%;
}
.work_tit {
	font-weight:bold;
	font-size:16px;
	margin:0 0 4px;
	color:#444444;
}
.work_txt {
	font-size:14px;
	color:#444444;
}


/* ------ ------ slick-dots ------ ------ */

.slick-dots {
	padding:0;
	margin:24px 0 0;
	display:flex;
	justify-content:center;
}
.slick-dots li {
	list-style:none;
	margin:0 4px;
	font-size:0;
}
.slick-dots li button {
	padding:0;
	border:0;
	width:8px;
	height:8px;
	border-radius:2px;
	background:var(--blue_o);
	cursor:pointer;
	transition:background 0.2s ease;
}
.slick-dots li.slick-active button {
	background:var(--blue);
}



/* ------ ------ form ------ ------ */

.form_in {
	background:url(img/form.webp) center / cover no-repeat;
	padding:50px;
	border-radius:16px;
}
.form_in > div {
	max-width:540px;
	color:#fff;
}
.form_in .title {
	margin:0 0 15px;
}
.form_in .title h2 {
	text-align:left;
	margin:0;
	padding:0;
}
.form_in .title h2:after {
	display:none;
}
.form_txt {
	font-size:14px;
	margin:0 0 24px;
	line-height:24px;
	background:url(img/ico_form.svg) left top no-repeat;
	padding: 0 0 0 28px;
}
.form_in .inputs {
	display:flex;
	max-width:540px;
	margin:0 -5px;
}
.input {
	width:50%;
	padding:0 5px 24px;
}
.input input {
	display:block;
	background:#fff;
	border:1px solid #fff;
	height:54px;
	width:100%;
	font-size:14px;
	border-radius:8px;
	padding:0 16px;
	transition:border 0.2s ease;
}
.input input:focus,
.input input:active {
	border:1px solid #878787;
}
.form .submit {
	width:100%;
	position:relative;
	color:#125AD3;
}
.form .submit p,
.inputs p {
	margin:0;
}
.form .submit:hover {
}
.submit input {
	padding:0;
	border:0;
	cursor:pointer;
	width:100%;
}
.polit {
	margin:24px 0 0;
	font-size:12px;
	cursor:pointer;
	display:flex;
}
.polit > p {
	display:none;
}
.polit > div > p {
	display:flex;
	align-items:center;
}
.polit i {
	min-width:24px;
	widtH:24px;
	height:24px;
	background-color:var(--white);
	margin:0 14px 0 0;
	display:block;
	border-radius:3px;
	position:relative;
	transition:border 0.5s ease,background 0.5s ease;
}
.polit.active i {

}
.polit i:after {
	background:url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 9.4721L7.47222 12.9443L14.4167 5.99988" stroke="%232563EB" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat;
	background-position:center;
	width:24px;
	height:24px;
	opacity:0;
	display:block;
	content:'';
	transition:opacity 0.5s ease;
}
.polit.active i:after {
	opacity:1;
}
.polit a {
	text-decoration:underline;
	color:var(--blue);
}
.polit a:hover {
	text-decoration:none;
}
.wpcf7-not-valid-tip {
	color:var(--blue_h)
}

.sended {
	display:none;
	padding:30px 50px;
	background:var(--white);
	width:500px;
	border-radius:20px;
}
.sended_title {
	text-align:center;
}
.sended_title h2 {
	
}
.sended_txt {
	text-align:center;
	font-size:18px;
	margin:16px 0 0;
}
.sended_btn {
    margin: 30px auto 0;
    display: flex;
    text-align: center;
    width: 270px;
}

/* ------ ------ footer ------ ------ */

footer {
	background:#fff;
	padding:32px 0;
	margin:120px 0 0;
}
.footer_top {
	display:flex;
	justify-content:space-between;
}
.footer_map {
	width:calc(50% - 16px);
}
.footer_map iframe {
	display:block;
	border:1px solid #DADADA;
	margin:0;
	padding:0;
	border-radius:12px;
	overflow:hidden;
	height:350px;
	width:100%;
}
.footer_content {
	width:calc(50% - 16px);
}
.footer_logo {
	margin:0 0 12px;
}
.footer_text {
	margin:0 0 32px;
	font-size:14px;
}
.footer_content ul {
	display:flex;
	padding:0;
	margin:0 0 32px;
	border-top:0;
}
.footer_content ul li {
	margin:0 24px 0 0;
}
.footer_content ul li a {
	padding:0;
}


.footer_bottom {
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin:32px 0 0;
	font-size:12px;
	color:#878787;
}
.footer_bottom p {
	margin:0 auto 0 0;
}
.footer_bottom a {
	color:#878787;
	margin:0 0 0 12px;
	text-decoration:underline;
}
.footer_bottom a:hover {
	text-decoration:none;
}

/* ------ ------ 1199 ------ ------ */

@media all and (max-width: 1199px) {
	.header_menu nav {
		display:none;
	}
	.header_nav_btn {
		display:block;
	}
	.header_logo {
		margin-right:auto;
	}
	.header_info {
		display:none;
	}
	body {

	}
	.hero {
		margin:0;
		width:100%;
	}
	header {
		z-index:101;
		padding:0;
		height:auto;
	}
	.header_in {
		padding:8px 0;
		height:48px;
		border:0;
	}
	header.fixed .header_nav_btn div, 
	header.fixed .header_nav_btn:after, 
	header.fixed .header_nav_btn:before {
		background:var(--black);
	}
    .open_menu header .header_nav_btn div, 
	.open_menu header .header_nav_btn:after, 
	.open_menu header .header_nav_btn:before ,
    .open_menu header.fixed .header_nav_btn div, 
	.open_menu header.fixed .header_nav_btn:after, 
	.open_menu header.fixed .header_nav_btn:before {
		background:var(--black);
    }
	.open_menu .header_in {
		background:var(--white);
		border-bottom: 1px solid #DADADA !important;
	}
	.open_menu .header_logo img:last-child {
		opacity: 1;
	}
	.open_menu .header_logo img:first-child {
		opacity: 0;
	}
	header > .container {
		position:relative;
		z-index:10;
	}
	.header_logo img {
		max-height:26px;
	}
	.header_logo {
		height: 26px;
	}
	.hero_in {
		padding: 120px 0;
		height: 720px;
	}
	.services_item {
		width:50%;
	}
	.services_txt {
		height: 58px;
	}
	.about_row {
		flex-direction:column;
	}
	.about_content,.about_gallery {
		width:100%;
	}
	.about_gallery {
		padding-top:30px;
		justify-content:center;
	}
	.about_gallery a {
		width:284px;
	}
	.why_item {
		width:50%;
	}
	.who_row {
		margin:0;
	}
	.who_num {
		font-size: 100px;
		line-height: 85%;
	}
	.who_tit {
		font-size:14ps;
	}
	.who_txt {
		font-size:12ps;
	}
	.form_in {
		position:relative;
		padding:24px 15px;
	}
	.form_in > div {
		position:relative;
		z-index:2;
	}
	.form_in:after {
		position:absolute;
		bottom:0;
		right:0;
		left:0;
		top:0;
		content:'';
		display:block;
		background:rgba(0,0,0,0.6);
		border-radius:18px;
	}
	.footer_bottom {
		flex-direction:column;
		align-items: baseline;

	}
	.footer_bottom p,
	.footer_bottom a {
		margin:0 0 12px;
	}
	.footer_bottom a:last-child {
		margin:0;
	}
}

/* ------ ------ 991 ------ ------ */

@media all and (max-width: 991px) {
	.indent {
		padding:80px 0 0;
	}
	footer {
		margin-top:80px;
	}
	.title h2 {
		font-size:24px;
	}
	.title {
		margin:0 0 24px;
	}
	.price_header_num {
		display:none;
	}
	.price_header {
		display:none;
	}
	.price_row {
		flex-wrap:wrap;
		padding:8px 0 12px;
	}
	.price_cat {
		flex-wrap:wrap;
	}
	.price_header_tit {
		padding:0 0 8px;
		font-size:14px;
	}
	.price_header_izm {
		margin:0;
		text-align:left;
		width:50%;
		min-width:unset;
		font-size:12px;
		color:#222222;
	}
	.price_header_price {
		margin:0;
		text-align:right;
		width:50%;
		min-width:unset;
	}
	.price_bottom_txt {
		font-size:14px;
		margin:24px 0 0;
	}
	.price_bottom_info,
	.why_info {
		font-size:12px;
		margin:24px 0 0;
	}
	.price_bottom_info div,
	.why_info div {
		align-items:baseline;
	}
	.price_bottom_info img,
	.why_info img {
		width:16px;
		min-width:16px;
		height:16px;
        position: relative;
        top: 4px;
	}
	.price_bottom_btn {
		margin:24px 0 0;
	}
	.price_cat a {
		font-size:14px;
		padding:4px 12px;
	}
	.price_cat {
		margin:0 0 16px;
	}
	.who_row {
		display:block;
	}
	.who_item {
		width:auto;
		margin:0;
		height:auto !important;
	}
	.who .slick-list {
		overflow:visible !important;
	}
	.who .slick-track {
		display:flex !important;
	}
	.work .slick-list {
		overflow:visible !important;
	}
	.work_item {
		width:280px;
	}
	.footer_top {
		flex-direction:column;
	}
	.footer_map {
		order:2;
		width:100%;
		margin:24px 0 0;
	}
	.footer_content {
		width:100%;
	}
}

/* ------ ------ 767 ------ ------ */

@media all and (max-width: 767px) {
	.hero_in {
		background-position: center right 44%;
	}
	.services_in {
		height:200px;
	}
	.services_item {
		width:100%;
		padding-bottom:8px;
	}
	.services_row {
		margin-bottom:-8px;
	}
	.about_content {
		font-size:14px;
	}
	.about_gallery a {
		width:calc(50% - 8px);
		height: 340px;
	}
	.about_gallery a:after {
		right: 8px;
		bottom: 8px;
		background-size:contain;
		width: 20px;
		height: 20px;
	}
	.why_item {
		width:100%;
		padding-bottom:8px;
	}
	.why_in {
		display:flex;
		padding:16px;
	}
	.why_img {
		width:32px;
		min-width:32px;
		border-radius:8px;
		height:32px;
		margin:0 12px 0 0;
	}
	.why_img img {
		max-width:60%;
	}
	.why_row {
		margin-bottom:-8px;
	}
	
}


/* ------ ------ 575 ------ ------ */

@media all and (max-width: 575px) {
	.hero_in {
		padding-top:268px;
		background:url(img/slide_m.webp) center / cover no-repeat;
	}
	.hero_in h1 {
		font-size:30px;
	}
	.hero_txt {
		font-size: 14px;
	}
	.hero_btn {
		margin: 46px 0 0;
	}
	.hero_btn a {
		width:100%;
	}
	.header_mobile_btn a {
		width:100%;
	}
	.sended_btn {
		width:100%;
	}
	.sended {
		padding: 30px 14px;
	}
	.sended_txt {
		font-size: 16px;
	}
	.price_bottom_btn a {
		width:100%;
	}
	.about_gallery a {
		height:220px;
		width:156px;
	}
	.about_gallery a:first-child {
		margin: 0 8px 0 0;
	}
	.who_item {
		width:200px;
		min-width:200px;
	}
	.work_row {
		margin:0;
	}
	.form_in {
		background:url(img/form_m.webp) center / cover;
	}
	.form_in:after {
		display:none;
	}
	.form_in .inputs {
		flex-direction:column;
	}
	.input {
		width: 100%;
		padding: 0 5px 8px;
	}
	.polit {
		margin:18px 0 0;
	}
	.form_txt {
		line-height:initial;
	}
	.footer_content ul {
		border-bottom:1px solid #DADADA;
		padding:0 0 10px;
		margin:0 0 14px;
	}
	.footer_content ul li {
		margin: 0 10px 0 0;
	}
	.footer_content ul li a {
		font-size: 12px;
	}
}

/* ------ ------ 400 ------ ------ */

@media all and (max-width: 400px) {
	
}