/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/ 

/*Add your own styles here:*/
body {margin:0 auto;}
.w-image.imgCover img {width:100%; object-fit:cover}

header .current-menu-ancestor > a,
header .current-menu-item > a  {font-weight:600}

.homeTop {}
	.homeTopItem  {flex:1; padding:30px 20px; background:var(--color-content-primary); border-top:2px solid var(--color-content-secondary);align-items: center !important; transition:.2s; cursor:pointer} 
		.homeTopItem .w-iconbox-title {    font-weight: bold;font-size: 15px; }
			.homeTopItem .w-iconbox-title  a {color:#fff !important}
		.homeTopItem .w-iconbox-text {font-size:13px}
		.homeTopItem:hover {background:#1f2d377d}
	

.homePromo {background:#000;height:var(--sliderHeight);--sliderHeight:100vh;    position: relative;}	
	.admin-bar .homePromo {--sliderHeight:calc(100vh - 32px)}
	.homePromo .l-section-h  {width:calc(100% - 5rem)}
	
	.homePromo .item {position:relative}
		.homePromo .sliderImg {width:100%; height:var(--sliderHeight); object-fit:cover; display:block; opacity:0.7}
		.homePromo .inner {position:absolute; width:100%; height:100%; top:0; left:0; display:flex; align-items:flex-end; padding-bottom:200px; box-sizing:border-box;}
			.homePromo .inner .text {max-width:800px; color:#fff}
				.homePromo .inner .text h2 {color:#fff}
				.homePromo .inner .text .desc {margin-bottom: var(--h2-margin-bottom, 1.5rem);}
	
	.homePromo .slick-arrow {position:absolute; left:10px; top:50%; transform:translateY(-50%); z-index:50; font-size:0; border:none; background:url(../../uploads/2025/03/slickArrow.svg);display:block; width:37px; height:37px;}
		.homePromo .slick-arrow.slick-next {left:auto; right:10px; transform:scale(-1,1)}
	
	.homePromo .dots {width:100%;  position:absolute; bottom:0; left:0;}
		.homePromo .dots .l-section-h {display:flex; gap:15px; }
			.homePromo .dots .item  {flex:1; padding:30px 20px; background:#1f2d377d; border-top:2px solid var(--color-content-secondary);align-items: center !important; transition:.2s; font-size:13px;cursor:pointer;    display: flex;gap: 25px;color: #fff;} 
				.homePromo .dots .item img {display:block; width:50px}
				.homePromo .dots .item span {display:block;    font-weight: bold;font-size: 15px; }
		
			.homePromo .dots .item:hover {background:var(--color-content-primary)}
			
			.homePromo .dots .item.isActive {border-top-color:var(--color-content-link)}
	
.homeCounters {}
	.homeCounters .stats-block .stats-text {    white-space: pre-wrap} 
.homeSpeciality {}	
	.homeSpeciality .w-vwrapper {background:var(--color-subfooter-bg-grad);padding:20px; border-radius:20px;color: var(--color-content-text); flex:1}
		.homeSpeciality .w-image img {display:block; width:100px; margin:0 auto;}
		
		.homeSpeciality .w-vwrapper .w-text-h {color: var(--color-content-text);}
		.homeSpeciality .w-vwrapper .wpb_text_column{color: var(--color-content-text);}

.advImg .wpb_wrapper {height:100%}		
	.advImg .w-image {height:100%;}
		.advImg .w-image-h {height:100%;}
			.advImg img {display:block; height:100%; object-fit:cover}
	
.homeColorCols {}
	.homeColorCols .vc_column-inner {padding:48px;  }
		.homeColorCols .w-text {display:flex; flex-direction:column; align-items:center; text-align:center;}
		.homeColorCols .w-text:after {content:''; display:block; width:150px; height:5px; border-radius:25px; background:currentColor; margin-top:var(--h3-margin-bottom, 1.5rem);}
		.homeColorCols ul {display:flex; flex-wrap:wrap; gap:10px 20px; list-style-position:inside}
			.homeColorCols ul li {margin:0;}
			
			.homeColorCols .vc_col-sm-4:nth-child(1) ul,
			.homeColorCols .vc_col-sm-4:nth-child(3) ul {flex-direction: column; align-items: flex-start;}
			
			.homeColorCols .vc_col-sm-4:nth-child(2) ul li:last-child {font-weight:bold;  width:100%}			
	
.partnersSlider {}
	.partnersSlider .w-grid-item-h {display:flex; align-items:center; justify-content:center;}
	

.casesWrapper  {}
	.casesWrapper .head {display:flex; align-items:center; margin-bottom:48px; gap:12px; flex-wrap:wrap}	
		.casesWrapper .head .item {font-family: var(--font-family);font-size: 13px;line-height: 1 !important;font-weight: 400;font-style: normal;text-transform: none;letter-spacing: 0em;border-radius: 30px;padding: 1.1em 2.3em;background: var(--color-content-link);border-color: var(--color-content-link);color: #ffffff !important; cursor:pointer; transition:.2s;}
			.casesWrapper .head .item:hover {background: var(--color-footer-link);border-color: var(--color-footer-link);}
			.casesWrapper .head .item.isActive {background: var(--color-footer-link);border-color: var(--color-footer-link);}
	.casesWrapper .body .item {display:none}
		.casesWrapper .body .item.isActive {display:block}
		.casesWrapper .itemInner {display:flex; gap:24px; flex-wrap:wrap}
			.casesWrapper .block {width:calc(33.333% - 24px*2/3); background:var(--color-subfooter-bg); padding:24px; border-radius:20px; text-align:center}
			.casesWrapper .block img {display:block; width:60px; height:60px; margin:0 auto 12px auto;}
			.casesWrapper .block .img {margin:12px auto 24px auto; text-align:center; color:#0064D9; font-size:36px; line-height:1}

.homeContacts {}
	.homeContacts .map {}
		.homeContacts .map iframe {width: calc(50vw - 2.5rem);; max-width:50vw}

/*common*/
.fileItem {display:flex; align-items:center; padding:24px; border:1px solid #E4E4E4; border-radius:4px; margin-bottom:12px;color: var(--color-content-text);}
	.fileItem svg {display:block; width:48px; margin-right:24px;color:var(--color-content-link);flex-shrink:0}
	.fileItem div {}
		.fileItem div span {font-weight:600; display:block}
	.fileItem:hover {color:var(--color-content-link) !important;}
	
.orderBlock  {display:flex; align-items:center; padding:24px; border:1px solid #E4E4E4; border-radius:4px; align-items:center;gap:12px;}
	.orderBlock .text {display:flex; flex-direction:column; }
		.orderBlock .title {font-weight:600}
	.orderBlock svg {display:block; width:50px; flex-shrink:0}
	.orderBlock .w-btn {flex-shrink:0;margin-left:12px}

	.orderBlock.orderBlockVertical {flex-direction:column; text-align:center;}
		.orderBlock.orderBlockVertical .text {gap:12px}	
		.orderBlock.orderBlockVertical .w-btn {margin-left:0}

.townSelector {display:flex; align-items:center; margin-left:12px; font-size:12px;}	
	.townSelector i {; display:block; margin-right:6px;}
	
.townSelectorModal {background: #fff;width: 100%;max-width: 600px;margin: 0 auto;border-radius: 5px;}
	.townSelectorModal .head {padding:24px; border-bottom:1px solid #E4E4E4; font-size:20px; font-weight:700}
	.townSelectorModal .body {padding:24px}
	
	.townSelectorModal .townMenu {display:flex; flex-wrap:wrap; gap:12px; list-style:none; margin:24px 0 0 0}
		.townSelectorModal .townMenu li {width:calc(33.33% - 12px*2/3); margin:0}
			.townSelectorModal .townMenu li a {color:var(--color-content-text)}
				.townSelectorModal .townMenu li a:hover {color:var(--color-content-link)}

.callbackModal  {background: #fff;width: 100%;max-width: 600px;margin: 0 auto;border-radius: 5px;}
	.callbackModal .head {padding:24px; border-bottom:1px solid #E4E4E4; }
		.callbackModal .head .title {font-size:20px; font-weight:700}
	.callbackModal .body {padding:24px}
	

.forBlock {display:flex; flex-wrap:wrap; gap:12px; margin:30px 0}
	.forBlock .item {width:calc(50% - 6px); padding:24px; box-sizing:border-box; display:flex; align-items:center; gap:24px;background:#0064D8; border-radius:5px}
		.forBlock i {font-size:24px; color:#fff}
		.forBlock span {font-size:16px; color:#fff}

.stepsBlock {display:flex; gap:12px; margin:30px 0}
	.stepsBlock .item {width:calc(25% - 12px*3/4); padding:36px 24px; box-sizing:border-box; display:flex; align-items:center; flex-direction:column; gap:20px;background:#FAF9F5; border-radius:5px; text-align:center; line-height:1.3}
		.stepsBlock i {font-size:36px; }

.numsBlock {display:flex; gap:12px; margin:30px 0}
	.numsBlock .item {width:calc(20% - 12px*4/5);box-sizing:border-box; display:flex; align-items:center; flex-direction:column; gap:20px;text-align:center; line-height:1.3}
		.numsBlock i {font-size: 24px;width: 120px;height: 120px;background: #0064D8;display: flex;align-items: center;justify-content: center;border-radius: 100%;font-style: normal;line-height: 1;font-weight: 700;color: #fff;}

.includedBlock {display:flex; flex-wrap:wrap; gap:12px; margin:30px 0}
	.includedBlock .item {width:calc(50% - 6px); padding:24px; box-sizing:border-box; display:flex; align-items:center; gap:24px;background:#7AB342; border-radius:5px;color:#fff}
		.includedBlock i {font-size:24px; }
		.includedBlock span {font-size:16px;}

.provideBlock {margin:30px 0;}
	.provideBlock .section {font-size: 20px;text-align: center;font-weight: bold;}
	.provideBlock .flex {display:flex;gap:12px; margin:20px 0}
		.provideBlock .item {width:calc(50% - 6px); padding:48px 24px; box-sizing:border-box; display:flex;flex-direction:column; gap:20px;background:#1F2D37; border-radius:5px;  line-height:1.3;position:relative; overflow:hidden; color:#fff}
			.provideBlock .item img {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; opacity:0.2}
			.provideBlock .item .title {font-weight:bold; position:relative;z-index:1}
			.provideBlock .item .desc {position:relative;z-index:1}
	.provideBlock .flex + .section {margin-top:30px}
	
.stepsBlock2	{margin:30px 0;display:flex; flex-wrap:wrap; gap:12px}
	.stepsBlock2 .item {width:calc(50% - 6px); padding:24px 0 24px 24px; box-sizing:border-box; display:flex; align-items:center; gap:15px;background:#FAF9F5; border-radius:5px;overflow: hidden}
		.stepsBlock2 i {font-size:24px; color:var(--color-content-link); width:70px; height:70px; display:flex; align-items:center; justify-content:center; background:#fff; border-radius:5px;font-style: normal; font-weight: bold; flex-shrink:0 }
		.stepsBlock2 .title {font-size:16px; font-weight:bold}
		.stepsBlock2 img {display:block; margin-left:auto;}
		
.advantagesBlock {margin:30px 0;display:flex; flex-wrap:wrap; gap:12px}
	.advantagesBlock .item {width:calc(25% - 12px*3/4);padding:36px 24px; border-radius:5px; box-sizing:border-box; display:flex; align-items:center; flex-direction:column; gap:20px;text-align:center; line-height:1.3; border:1px solid #E4E4E4; }
		.advantagesBlock .item img {display:block; width:70px;}
		.advantagesBlock .item .title {font-size:20px; font-weight:bold}
		
	.advantagesBlock  .item:nth-child(1),
	.advantagesBlock  .item:nth-child(2),
	.advantagesBlock  .item:nth-child(3)	{width:calc(33.333% - 12px*2/3)}
		

.priceListWidget {margin:30px 0; background:url(../../uploads/2025/03/tab-bg.svg) center/contain no-repeat; border-radius:5px}
	.priceListWidget .wpb_wrapper { padding:48px;border:1px solid #E4E4E4; display:flex; gap:24px; flex-wrap:wrap; }
		.priceListWidget .simplePrice {width:calc(50% - 12px);display:flex;align-items:center; gap:12px; background:#FAF9F5; border-radius:5px; padding:12px; font-size:16px}
			.priceListWidget .simplePrice i {font-size:24px}
			.priceListWidget .simplePrice  .price {font-weight: 600;margin-left: auto;}

#yaMap {width:100%; height:400px; margin-bottom:30px}
.mapBtns {display:flex; flex-direction:column; gap:4px}
	.mapBtn  {display:flex;align-items:center; padding:24px;border-radius:5px;border:1px solid #E4E4E4; gap:20px}	
		.mapBtn .town {flex-grow:1; font-weight:600; }
		.mapBtn .tel {display:block; flex-shrink:0; white-space:nowrap}
		.mapBtn .tomap  {flex-shrink:0; white-space:nowrap; display:flex;align-items:center;  font-size:14px; gap:5px; transition:.2s; cursor:pointer}
			.mapBtn .tomap i {color:#0064D8; font-size:18px}
			.mapBtn .tomap:hover {color:#0064D8;}
			
.customBalloon {padding:24px;}
	.customBalloon .addr {font-size:18px; font-weight:600; margin-bottom:10px;font-family:Montserrat, sans-serif; line-height:1.5}
	.customBalloon .tel {line-height:1.5}
		.customBalloon .tel span {color:#999}
		.customBalloon .tel a {font-weight:600; display:table; font-size:15px; font-family:Montserrat, sans-serif;}
/*page*/		
.pagePromo {}
	.pagePromo .g-breadcrumbs {color:#fff}
		.pagePromo .g-breadcrumbs a {color:#fff}
			.pagePromo .g-breadcrumbs a:hover  {color:var(--color-content-link)  !important}
.pageContent {}		
	.sidebarMenu  {border-radius:5px; border:1px solid #E4E4E4}
		.sidebarMenu > ul > li {padding:18px; border-bottom:1px solid #E4E4E4; margin-bottom:0 !important}
			.sidebarMenu > ul > li:last-child {border-bottom:0}
			
			.sidebarMenu li a {color: var(--main-color); }
				.sidebarMenu li a:hover {color:var(--color-content-link)  !important}
		.sidebarMenu ul li li {font-size:12px;}
		
		.sidebarMenu .current_page_ancestor > a {font-weight:600}
		.sidebarMenu .current-menu-item > a {font-weight:600}
		
	.pageContent .vc_col-sm-9 .l-section.height_large  {padding:0}
	.pageContent .vc_col-sm-3 .wpb_wrapper {position:sticky; top:calc(var(--header-sticky-height) + 10px)}
	

	.pageContent .post_content .postTableWrapper {margin:30px auto; overflow-x:auto; width:100%}
		.pageContent .post_content table {width:100%; border-collapse: collapse;border: 1px solid #dddddd; } 
			.pageContent .post_content table th {padding:6px 12px; font-weight:bold;border: 1px solid #dddddd;}
				.pageContent .post_content table td {padding:6px 12px; border: 1px solid #dddddd; }
				
				.pageContent .post_content table tr td:first-child, .pageContent .post_content table tr th:first-child {border-left: none;}
				.pageContent .post_content table tr td:last-child, .pageContent .post_content table tr th:last-child {border-right: none;}
				
			
				.pageContent .post_content table tr:nth-child(odd){background: #F6F8FF;}
				
				
				.pageContent .post_content table tr:first-child {background:#0064D8; color:#fff; font-weight:bold; text-align:center;}
					.pageContent .post_content table tr:first-child  td {padding:12px 12px; border-right:1px solid #fff}
						.pageContent .post_content table tr:first-child  td:last-child {border-right:none}
				


img.aligncenter  {margin:24px auto;}
/*forms*/
.wpcf7-form {}
	.wpcf7-form .item {margin-bottom:15px;display:block}
		.wpcf7-form .item .wpcf7-form-control-wrap {margin:0}
		.wpcf7-form .item .label {margin-bottom:5px}
	
	.wpcf7-not-valid-tip {font-size:12px; text-align:center;}
	
	.wpcf7-form .flex {display:flex;align-items:flex-start; gap:24px}
		.wpcf7-form .flex .item {flex:1}
		
	
.wpcf7 form.sent .wpcf7-response-output {text-align: center;color: #fff;background-color: #28a745;padding:20px;border-radius:6px;font-size:14px;  margin:20px 0}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {text-align: center;color: #fff;background-color: #dc3545;padding:20px;border-radius:6px;font-size:14px;  margin:20px 0}

.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output	{text-align: center;color: #fff;background-color: #ffc107;padding:20px;border-radius:6px;font-size:14px;  margin:20px 0}




.mfp-with-zoom .mfp-container,.mfp-with-zoom.mfp-bg {opacity: 0;transition: all 0.3s ease-out;}
.mfp-with-zoom.mfp-ready .mfp-container {opacity: 1;}
.mfp-with-zoom.mfp-ready.mfp-bg {opacity: 0.8;}
.mfp-with-zoom.mfp-removing .mfp-container, .mfp-with-zoom.mfp-removing.mfp-bg {opacity: 0;}


.w-nav.type_desktop .w-nav-list.level_2 {left:auto; right:0; width:300px}
	.w-nav.type_desktop .w-nav-list.level_2 a {white-space:normal}
	.w-nav.type_desktop .w-nav-list.level_3 {width:300px}

.l-subheader.at_middle .type_mobile .w-nav-list.level_1 {background:#1f2d37f5 !important ; color:#fff !important}
	
@media (max-width:1024px)	{
.colReverse {}
	.colReverse .g-cols.via_flex {flex-direction:column-reverse}
	
.advantagesBlock .item {width:calc(50% - 6px) !important}
}
@media (max-width:992px)	{

.homePromo {height:auto}
	.homePromo .slick-arrow {display:none !important}
	.homePromo .dots {display:none}
	.homePromo .sliderImg {width:100%; height:100%; position:absolute; top:0; left:0}
	.homePromo .inner {padding:150px 0 20px 0; position:static}
	
.homePromo .slick-track{display:flex;}
.homePromo .slick-slide{height:auto;flex:0 0 auto;}
	.homePromo .slick-slide > div, .homePromo .slick-slide .item {height:100%}
	
/*widgets*/
.stepsBlock{flex-wrap:wrap}
	.stepsBlock .item {width:100%}
	
.stepsBlock2 .item {width:100%}

.priceListWidget .simplePrice  {width:100%}

.numsBlock {flex-wrap:wrap; justify-content:center;}
	.numsBlock .item {width:calc(33.333% - 9px);}
	
.mapSection {}	
	.mapSection .g-cols.via_flex {flex-direction:column-reverse; gap:30px}
		.mapSection .g-cols.via_flex .wpb_column  {width:100%}
			.mapBtn  {flex-wrap:wrap; gap:10px 20px}	
				.mapBtn .town {width:100%}
				.mapBtn .tomap {margin-left:auto;}
}

@media (max-width:600px)	{
.homePromo .l-section-h {width: calc(100% - 3rem);}

.homePromo .sliderImg {opacity:0.34;object-position: right center;}
	
.homeCounters  .l-section-img {display:none}
.homeCounters .stats-block .stats-text {white-space:normal}
.homeContacts .map iframe {    width:100%;max-width:100%; margin-bottom:2.5rem}

.casesWrapper .head .item {font-size:12px}
.casesWrapper .block {width:100%}

.adveText {padding:0 2.5rem;}


.homeColorCols  {}
	.homeColorCols .vc_column-inner {padding:1.5rem}
	.homeColorCols ul {gap:12px; margin:0; padding:0 1.5rem}


.l-footer {text-align:center}
	.l-footer .w-image {margin-left:auto; margin-right:auto;}
	.l-footer .menu {text-align:center;}

.pageContent {}
	.colReverse .vc_col-md-3 {margin-top:2rem !important}
	.pageContent .us_menu_1 .menu>li {margin:0 !important}

	.pageContent .post_content table {font-size:12px} 
		.pageContent .post_content table th {padding:4px 8px; }
		.pageContent .post_content table td {padding:4px 8px;  }
				
	
/*widgets*/	
.orderBlock  {flex-direction:column; text-align:center;}
	.orderBlock .text {gap:12px}
	.orderBlock .w-btn {margin-left:0}


.wpcf7-form .flex {flex-direction:column; gap:0}
	.wpcf7-form .flex .item {width:100%}
	
.mfp-inline-holder:after {color:#1e2a34 !important}


.numsBlock .item {width:calc(50% - 6px);}

.includedBlock {flex-wrap:wrap}
	.includedBlock .item {width:100%}

.provideBlock {margin:30px 0;}
	.provideBlock .flex {flex-wrap:wrap}
		.provideBlock .item {width:100%}
		
.forBlock {}
	.forBlock .item {width:100%}
	
.advantagesBlock {}
	.advantagesBlock .item {width:100% !important}
	
.stepsBlock2 .item {padding:12px 0 12px 12px; position:relative}
	.stepsBlock2 i {width:auto; background:none; position:relative;z-index:2}
	.stepsBlock2 .title {font-size:12px; position:relative;z-index:2}
	.stepsBlock2 img {position:absolute; top:50%; transform:translateY(-50%); right:0; opacity:0.1}
	
.priceListWidget .wpb_wrapper {padding:12px; gap:12px}
	.priceListWidget .simplePrice i {font-size:16px}
	.priceListWidget .simplePrice {font-size:12px}


}

