
/** services **/

.services div.services_item_common.last_item_type_maxcol .services_oppened_item_a{
	display:block;
	height:100%;
}

.services_item_common.last_item_type_maxcol .services_item_img,
.services_item_common.last_item_type_maxcol .services_item_img img{
	height:100%;
}

.services div.services_item.last_item_type_maxline:last-of-type{
	position:relative;
}

.services div.services_item.last_item_type_maxline:last-of-type .services_item_text{
	display:block;
}

.services div.services_item.last_item_type_maxline:last-of-type span.services_item_title,
.services div.services_item.last_item_type_maxline:last-of-type span.services_item_info{
	text-align:left;
	justify-content:flex-start;
}

.services div.services_item.last_item_type_maxline:last-of-type span.services_item_info .services_item_text {
  color: #fff;
  margin-top: 18px;
  max-width: 554px;
  font-size: 15px;
}

.services div.services_item.last_item_type_maxline:last-of-type a{
	overflow:hidden;
}

.services .grid_row_4 div.services_item_common.last_item_type_maxline:last-of-type{
	grid-column: 3 / span 2;
}

.services .grid_row_3:not(.grid_row__limit_3, .grid_row__limit_4) div.services_item_common.last_item_type_maxline:last-of-type{
	grid-column: span 2; /* растягиваем на 2 колонки */
}

.services .grid_row_3.grid_row__limit_4 div.services_item_common.last_item_type_maxline:last-of-type,
.services .grid_row_2:not(.grid_row__limit_4) div.services_item_common.last_item_type_maxline:last-of-type{
	grid-column: 1 / -1; /* растягиваем на всю строку */
}

.services.second_color div.services_item.last_item_type_maxline:last-of-type .services_item_img::before {
  position: absolute;
  top: 0px;
  height: 100%;
  left: 0px;
  width: 100%;
  content: '';
  display: block;
}

.services_item_info{
	padding-left:32px;
	padding-right:90px;
	padding-top:24px;
	padding-bottom:24px;
	position:relative;
}

.services .services_item .services_item_box span.services_item_button,
.services .services_item a span.services_item_button{
	width:48px;
	height:48px;
	border-radius:24px;
	display:flex;
	position:absolute;
	right:32px;
	top: 50%;
	transform: translateY(-50%);
	align-items:center;
	justify-content:center;
	background-color:rgba(255, 255, 255, 0.2);
}

.services .services_item .services_item_box span.services_item_info,
.services .col-md-3.services_item a span.services_item_info{
	padding-left:26px;
	padding-right:26px;
}

.services.services-row-5 .services_item a span.services_item_info{
	padding-left:24px;
	padding-right:24px;
}

.services.services-row-5 .services_item a span.services_item_button,
.services .services_item .services_item_box span.services_item_button,
.services .col-md-3.services_item a span.services_item_button{
	display:none;
}


@media (max-width: 1240px) {
	.services .services_item a span.services_item_button{
		display:none;
	}
}

.services_item_img{
	position:relative;
}

.services_item_img:before{
	background: linear-gradient(180deg, rgba(0, 35, 69, 0.16) 0%, var(--main_color) 100%); 
}


.services .services_item span.services_item_title{
	font-size: 18px;
	display:flex;
	align-items:center;
	font-weight: var(--h2_weight);
	line-height:  133.333%;
	letter-spacing: 0.36px;
	min-height:48px;
	display:flex;
	align-items:center;
	text-transform: uppercase; 
}

.services_item_text{
	font-size: 15px;
	font-weight: 300;
	line-height:  153.333%;
	letter-spacing: 0.3px; 
}

.services_item_text p{
	margin:0px;
}

.services img{
	height:265px;
	object-fit:cover;
	width:100%;
}

.services .services_item  a{
	overflow:hidden;
}

.services .format_long_image .services_oppened_item_img img{
	height:260px;
}

.services .format_long_image .services_item img{
	height:380px;
}

.services .format_long_image .services_item a{
	padding-bottom:0px;
}

.services div.services_item.last_item_type_maxline:last-of-type a{
	padding-bottom:0px;
}

.services .format_long_image .services_item .services_item_info{
	padding-bottom:24px;
}


.services_item_box_in .services_item_img{
	overflow:hidden;
}

.services_item_box_in img {
	transition: transform .2s;
}

.services_item_box_in:hover img {
	transform: scale(1.09);
}

.services .col-md-3.services_item img{	
	height:257px;
}

.services .services_item .services_item_text{
	display:none;
}

.services-row-4 .template_service_image .services-items-row{
	grid-template-columns: repeat(4, 1fr);
	display: grid;
	gap: 24px 0px;
}

.services-row-4 .template_service_image .services_item{
	margin-bottom:0px;
	width:100%;
}

.services .services_item a span,
.services .services_item .services_item_box span
{
	display:block;
}

.services .services_item .services_item_box{
	cursor:pointer;
	position:relative;
	overflow:hidden;
}



.services .services_item a{
	display:block;
	height:100%;
	position:relative;
	border-radius: var(--big_border_radius);
	color:#fff;
}

.services.second_color .services_item a{
	background-color:var(--second_color);
}

.services.extra_color .services_item a{
	background-color:var(--extra_color);
}

.services.extra_color_2 .services_item a{
	background-color:var(--extra_color_2);
}

.services.extra_color_3 .services_item a{
	background-color:var(--extra_color_3);
}

.services .services_item a.services_item_arrow{
	position:absolute;
	left:32px;
	bottom:32px;
	display:block;
}

.services_item_box_sublist{
	padding:65px 32px 52px; 
	background-color:var(--main_color);
  border-radius: 26px;
  position:absolute;
  top:0px;
  height:100%;
  width:100%;
  left:-100%;
  z-index:10;
  
     -webkit-transition: all 0.3s ease;                  
    -moz-transition: all 0.3s ease;                 
    -o-transition: all 0.3s ease;   
    -ms-transition: all 0.3s ease;          
    transition: all 0.3s ease;
}

.services .services_item .services_item_box:hover .services_item_box_sublist{
	left:0px;
}

.services .services_item .services_item_box_sublist a {
	height:auto;
}

.services_item_box_sublist ul{
	padding:0px;
	margin:0px;
}

.services_item_box_sublist ul li{
	margin:0px 0 11px;
	padding:0px;
}

.services_item_box_sublist ul, 
.services_item_box_sublist ul li{
	list-style-type:none;
}

.services_item_box_sublist ul li a{
	color:#fff;
	font-size: 15px; 
	opacity:0.9;
}


.services .slick-slide.services_item{
	padding-left:12px;
	padding-right:12px;
}

.services .col-md-3.slick-slide.services_item a span.services_item_button {
	display: flex;
}

.services .col-md-3.slick-slide.services_item .services_item_title{
	font-size:16px;
}

.services .col-md-3.slick-slide.services_item a span.services_item_info{
	padding-right:85px;
}

.services .col-md-3.slick-slide.services_item img{
	height:160px;
}

.services .col-md-3.slick-slide.services_item a span.services_item_button{
	bottom:auto;
	top:0px;
}

.services .col-md-3.slick-slide.services_item .services_item_info{
	margin-bottom:27px;
	min-height:48px;
}

.services .slick-slide.services_item{
	margin-bottom:0px;
}

html body .services .slick-dots li button{
	background-color:var(--main_color);
}

.services.services-items-centered .services_item a span.services_item_button{
	display:none;
}

.services.services-items-centered .services_item span.services_item_info .services_item_title{
	min-height: 24px;
	justify-content:center;
	text-align:center;
}

.services .services_item span.services_item_info_wrap{
	left:0px;
	position:absolute;
	bottom:0px;
	display:flex;
	align-items:flex-end; 
	width:100%;
	height:100%;
	z-index:2;
}

.services .services_item span.services_item_info{
	width:100%;
	display:flex;
	align-items:center;
	min-height:48px;
}

.services.services-items-centered .services_item span.services_item_info{
	padding-right:32px;
	padding-left:32px;
	text-align:center;
	justify-content:center;
	text-align:center;
}

.services-row-2 .services_item img{
	height: 288px; 
}

.services.services-row-2  .services_item span.services_item_title{
	font-size:22px;
}

.services.services-row-2 .services_item_info_wrap{
	position:absolute;
	bottom:0px;
	left:0px;
	width:100%;
	height:100%;
	z-index:3;
	display:flex;
	align-items:flex-end;
	margin-bottom:10px;
}

/** services end **/

/** services noimage **/


.services_item_noimage a{
	border-radius: var(--button_border_radius);
	width:100%;
	padding:16px 24px;
	display:flex;
	width:100%;
	height:100%;
	font-size: 16px; 
	line-height:1.25;
	color:#fff;
	font-weight: 500; 
	align-items:center;
	transition: all 0.3s ease-out;
	justify-content:space-between;
	background-size: 100% !important;
	background: linear-gradient(90deg, var(--extra_color) 0%, var(--main_color) 100%);
	box-shadow: 0px 4px 12px 0px var(--extra_color_opacity_10);
}

.services-items-centered .services_item_noimage a{
	text-align:center;
	justify-content:center;
}



.services-items-centered .services_item_noimage a .services_item_arrow{
	display:none;
}

.services-items-centered-middle .services_item_noimage a {
	padding-left:75px;
	position:relative;
}

.services-items-centered-middle .services_item_noimage a .services_item_arrow{
	position:absolute;
	left:24px;
	top:50%;
	margin-top:-20px;
	margin-left:0px;
}

.services.main_color .services_item_noimage a{
	background: linear-gradient(90deg, var(--extra_color) 0%, var(--main_color) 100%);
}

.services.second_color .services_item_noimage a{
	background: linear-gradient(90deg, var(--extra_color) 0%, var(--second_color) 100%);
}

.services.extra_color .services_item_noimage a{
	background: linear-gradient(90deg, var(--extra_color) 0%, var(--extra_color) 100%);
}

.services.extra_color_2 .services_item_noimage a{
	background: linear-gradient(90deg, var(--extra_color) 0%, var(--extra_color_2) 100%);
}

.services.extra_color_3 .services_item_noimage a{
	background: linear-gradient(90deg, var(--extra_color) 0%, var(--extra_color_3) 100%);
}


.services_item_noimage a:hover .services_item_arrow svg{
	transform: rotate(-180deg);
}

.services_item_noimage .services_item_arrow svg{
	transition: all 0.3s ease-out;
}

.services_item_noimage .services_item_arrow{
	background-color:rgba(255, 255, 255, 0.1);
	width: 40px;
	display:flex;
	min-width:40px;
	transition: all 0.3s ease-out;
	align-items:center;
	justify-content:center;
	margin-left:12px;
	height: 40px; 
	border-radius:20px;
}

.template_service_noimage.services-items-row{
	margin:0px;
	display:grid;
}

/** services noimage end **/


/** services_oppened  **/

.services_oppened_item{
	margin-bottom:24px;
}

.services .services_oppened_item_img img{
	height: 210px; 
	border-radius: var(--button_border_radius);
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
	object-fit:cover;
}

.services_oppened_item_a span{
	display:block;
}

.services_oppened_item_box_sublist{
	padding:0px 24px 0px;
}


.services_oppened_item_box_sublist ul li{
	list-style-type:none;
	margin-bottom:10px;
}

.services_oppened_item_box_sublist ul li a{
	line-height:1.3;
	display:block;
}

.services_oppened_item_box_sublist ul li a:hover{
	opacity:0.8;
}


.services_oppened_item_box_sublist ul{
	padding:0px;
	list-style-type:none;
	margin:0px;
}

.services_oppened_item_box_sublist{
	margin-top:12px;
}

.services_oppened_item_in{
	display:block;
	height:100%;
	overflow:hidden;
	padding-bottom:24px;
	border-radius: var(--big_border_radius);
	transition: all 0.3s ease-out;
	box-shadow: 0px 2px 20px 0px var(--text_color_opacity_10);
}

.services_oppened_item_in:hover{
	transform: scale(1.05);
}

span.services_oppened_item_title{
	padding:24px 24px 0px;
	font-size: 16px;
	font-weight: 700;
	display:flex;
	align-items:center;
	justify-content:space-between;
	line-height: 125%;
	text-transform: uppercase; 
}

.services-row-5 .services_oppened_item_a span.services_oppened_item_arrow,
.services-items-centered .services_oppened_item_a span.services_oppened_item_title .services_oppened_item_arrow{
	display:none;
}

.services-items-centered span.services_oppened_item_title{
	text-align:center;
	display:block;
}

.services_oppened_item_a span.services_oppened_item_arrow{
	width: 40px;
	height: 40px; 
	min-width:40px;
	display:flex;
	margin-left:15px;
	align-items:center;
	justify-content:center;
	border-radius:20px;
	background-color:var(--main_color);
}


.services-row-2 .services_oppened_item{
	width:50%;
}

.services-row-1 .services_oppened_item{
	width:100%;
}

.services-row-3 .services_oppened_item{
	width:33.333333333333%;
}

.services-row-4 .services_oppened_item{
	width:25%;
}

.services-row-5 .services_oppened_item{
	width:20%;
}

/** services_oppened end **/




@media (max-width: 1420px) {
	.services_item_info{
		padding-right:65px;
		padding-left:24px;
	}
	
	.services .services_item .services_item_box span.services_item_button, .services .services_item a span.services_item_button{
		right:24px;
	}
	
	.services .services_item .services_item_box span.services_item_button, .services .services_item a span.services_item_button{
		width:32px;
		height:32px;
		border-radius:16px;
	}
}

@media (max-width: 1240px) {
	.services_oppened_item_2_in_overlay{
		padding:40px;
	}
	
	.services_oppened_item_2_more{
		margin-top:12px;
	}
	
	.services_oppened_item_2_in ul li{
		width:100%;
	}
	
	.services_oppened_item_2_title{
		font-size:18px;
	}

}

@media (max-width: 990px) {
	
	.services div.services_item.last_item_type_maxline:last-of-type span.services_item_info{
		padding:90px 24px 24px;
	}
	
.services.second_color div.services_item.last_item_type_maxline:last-of-type .services_item_img::before {
  background: linear-gradient(360deg, var(--second_color) 0%, rgba(51, 44, 28, 0.00) 100%);
}
	
	.format_long_image .services_item .services_item_img img{
		height:220px;
	}
	



.services-row-4 .template_service_image .services-items-row{
	grid-template-columns: repeat(1, 1fr);
}

.services_item_noimage a{
	line-height:1.3;
}


.row-mobile_two_column .services-items-row{
	margin:0 -6px;
}

.row-mobile_two_column .services_item span.services_item_title{
	font-size:14px;
	margin-bottom:0px;
	font-weight:var(--h2_weight);
}

.services.row-mobile_two_column .services_item .services_item_info{
	padding-left:15px;
	padding-right:15px;
	margin-bottom:0px;
	min-height:24px;
}

.row-mobile_two_column .services_item{
	width:50%;
	padding-left:6px;
	padding-right:6px;
}

}

@media (max-width: 490px) {
	.format_long_image .services_item .services_item_img img{
		height:190px;
	}
}

/** service_seamless **/

.template_service_image_seamless .row.services-items-row{
	margin:0px;
}

.template_service_image_seamless a, .template_service_image_seamless span{
	display:flex;
	justify-content: center;
	width:100%;
}

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

.service_image_seamless{
	width:50%;
	padding-left:0px;
	padding-right:0px;
}
/* Стиль по умолчанию для всех элементов */
.service_image_seamless_info {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 5;
    width: 100%;
	padding:24px;
    height: 100%;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#fff;
	text-align:center;
	  font-size: 24px;
	  font-weight: var(--h2_weight);
	  line-height: 133.333%;
	  text-transform: uppercase;
}

/* Первый элемент в нечетных строках */
.service_image_seamless:nth-of-type(4n+1) .service_image_seamless_info,
.service_image_seamless:nth-of-type(4n+4) .service_image_seamless_info {
    background-color: var(--main_color_opacity_70); /* Закрашенный цвет */
}

/* Второй элемент в нечетных строках */
.service_image_seamless:nth-of-type(4n+2) .service_image_seamless_info,
.service_image_seamless:nth-of-type(4n+3) .service_image_seamless_info {
    background-color: var(--extra_color_3_opacity_70); /* Полупрозрачный цвет */
}

/* Первый элемент в четных строках */
.service_image_seamless:nth-of-type(4n+3) .service_image_seamless_info,
.service_image_seamless:nth-of-type(4n+2) .service_image_seamless_info {
    background-color: var(--main_color_opacity_70); /* Закрашенный цвет */
}

/* Второй элемент в четных строках */
.service_image_seamless:nth-of-type(4n+1) .service_image_seamless_info,
.service_image_seamless:nth-of-type(4n+4) .service_image_seamless_info {
    background-color: var(--extra_color_3_opacity_70); /* Полупрозрачный цвет */
}

.services .service_image_seamless:hover img{
	transform: scale(1.09);
}

.services .service_image_seamless img{
	height:276px;
	object-fit:cover;	
	transition: transform .2s;
}


/* Первый элемент в строке - закругленный левый верхний угол */
.service_image_seamless:first-of-type .service_image_seamless_box_in {
    border-top-left-radius: var(--big_border_radius); /* Вы можете изменить значение по своему усмотрению */
}

/* Второй элемент в строке - закругленный правый верхний угол */
.service_image_seamless:nth-of-type(2) .service_image_seamless_box_in {
    border-top-right-radius: var(--big_border_radius); /* Вы можете изменить значение по своему усмотрению */
}

/* Первый элемент в строке - закругленный левый верхний угол */
.service_image_seamless:last-of-type .service_image_seamless_box_in {
    border-bottom-right-radius: var(--big_border_radius); /* Вы можете изменить значение по своему усмотрению */
}

/* Второй элемент в строке - закругленный правый верхний угол */
.service_image_seamless:nth-last-child(2) .service_image_seamless_box_in {
    border-bottom-left-radius: var(--big_border_radius); /* Вы можете изменить значение по своему усмотрению */
}


@media (max-width: 990px) {
	.service_image_seamless_info {
		font-size:18px;
		padding:12px;
	}
	
	.services .service_image_seamless img{
		height:190px;
	}
}

@media (max-width: 640px) {
	.service_image_seamless_info {
		font-size:16px;
	}
}

@media (max-width: 490px) {
	.service_image_seamless_info {
		font-size:14px;
	}
	
	.services_item_info{
		padding-bottom:12px;
	}
	
}

@media (max-width: 370px) {
	.service_image_seamless_info {
		font-size:12px;
	}
}


@media (max-width: 1370px) {

.acfe-flexible-placeholder .services_item_button{
	display:none !important;
}

}

.services.services-items-centered-middle .services_item span.services_item_button{
	display:none;
}

.services.services-items-centered-middle .services_item span.services_item_title{
	font-size: 17px;
	font-weight: 800;
}

.services.services-items-centered-middle .services_item span.services_item_info{
	background: rgba(20, 20, 20, 0.4);
	justify-content:center;
	padding-left:12px;
	padding-right:12px;
	text-align:center;
	width:100%;
}

.services.services-items-centered-middle .services_item span.services_item_info_wrap{
	display:flex;
	align-items:center;
	height:100%;
}


.services .services_item a span.services_item_more_text_incart{
	display:none;
}

.services.services-items-centered-middle .services_item a span.services_item_more_text_incart{
	display:flex;
	justify-content:center;
	align-items:center;
	font-size: 13px;
	position:absolute;
	bottom:40px;
	left:0px;
	width:100%;
	font-weight: 500;
	text-transform: uppercase;
}

.services.services-items-centered-middle .services_item .services_item_more_text_incart svg{
	margin-left:4px;
}

/* Template: service_cards */
.template_service_cards .services-items-row {
    gap: 36px;
}

.services_item_card {
    min-height: 0;
}

.svm_card {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    background: #fff;
    border-top: 4px solid var(--visual_color_item);
    border-radius: var(--visual_border_radius_item);
    padding: 32px 24px;
    min-height: 200px;
    box-shadow: 0px 0px 15px 0px rgba(0,0,0,.1);
    transition: box-shadow 0.3s, border-color 0.3s;
}

.svm_card:hover {
    box-shadow: 0px 0px 30px 0px rgba(0,0,0,.18);
    border-top-color: color-mix(in srgb, var(--visual_color_item), transparent 50%);
}

.svm_card_title {
    display: block;
    font-size: var(--visual_font_size_item_title);
    font-weight: var(--visual_font_weight_item_title);
    text-transform: var(--visual_text_transform_title);
    color: var(--visual_color_text);
    margin-bottom: 10px;
    font-family: var(--font-title);
}

.svm_card_text {
    display: block;
    font-size: 14px;
    line-height: 1.5;
    opacity: 0.7;
    color: var(--visual_color_text);
}

/* last_item_type support for service_cards */
.services .template_service_cards div.services_item_card.last_item_type_maxcol:last-child {
    grid-row: span 2;
}

.services .template_service_cards div.services_item_card.last_item_type_maxcol:last-child .svm_card {
    height: 100%;
}

@media (max-width: 768px) {
    .svm_card {
        min-height: 160px;
        padding: 24px 20px;
    }

    .services .template_service_cards div.services_item_card[style*="grid-column"],
    .services .template_service_cards div.services_item_card.last_item_type_maxcol:last-child {
        grid-column: auto !important;
        grid-row: auto !important;
    }
}

.services_text_after {
    margin-top: 36px;
}

