/* Image carousel */
.cf-promo-carousel ul.slick-dots {
	position: absolute;
	top: calc(100% - 40px);
	left: 0%;
	width: 100%;
	z-index: 3;
}
.cf-promo-carousel .cf-promo-carousel-item img {
	aspect-ratio: 2.2727272727;
	border-radius: 10px;
}

/* Category catalog */
.grid-categories-section {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	justify-items: stretch;
	justify-content: start;
	align-content: stretch;
	align-items: stretch;
	gap: 2px;
}
.grid-categories-section .grid-categories-box:nth-child(1) {
	grid-column: 1 / 3;
}
.grid-categories-section .grid-categories-box:nth-child(5) {
	grid-column: 2 / 4;
}
.grid-categories-section .grid-categories-box {
	cursor: pointer;
	position: relative;
	overflow: hidden;
	aspect-ratio: 1.7777777778;
	min-height: 300px;
	max-height: 400px;
	width: 100%;
}
.grid-categories-section .grid-categories-box > .wp-block-group__inner-container {
	position: absolute;
	left: 0%;
	top: 0%;
	width: 100%;
	height: 100%;
}
.grid-categories-section .grid-categories-box .grid-categories-img {
	position: absolute;
	left: 0%;
	top: 0%;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.grid-categories-section .grid-categories-box .grid-categories-img img {
	position: absolute;
	left: 0%;
	top: 0%;
	object-fit: cover;
	width: 100%;
	height: 100%;
	filter: grayscale(0);
	transition: 1.2s;
}
.grid-categories-section .grid-categories-box .grid-categories-title {
	background: #da4b00;
	padding: 0.3rem 0.6rem;
	color: #fff;
	font-size: clamp(0.9rem, 1.052rem, 1.1rem);
	font-weight: 600;
	position: absolute;
	left: 6%;
	bottom: 6%;
	z-index: 5;
	margin: 0;
	transition: 0.7s;
}
.grid-categories-section .grid-categories-box .grid-categories-href {
	position: absolute;
	left: 0%;
	top: 0%;
	width: 100%;
	height: 100%;
	z-index: 3;
	transition: 1s;
	pointer-events: auto;
}
.grid-categories-section .grid-categories-box:hover .grid-categories-img img {
	filter: grayscale(1);
	transform: scale(1.2);
}
.grid-categories-section .grid-categories-box:hover .grid-categories-href {
	box-shadow: inset 0 0 3rem 2rem #333;
}
.grid-categories-section .grid-categories-box:hover .grid-categories-title {
	background: #000;
}

/* Examples Works */
.cf-carousel-portfolios ul.slick-dots {
	position: absolute;
	top: calc(100% - 40px);
	left: 0%;
	width: 100%;
	z-index: 3;
}
.cf-carousel-portfolio-item img {
	height: clamp(400px, 400px + 15vw, 500px) !important;
	width: max(350px, 380px) !important;
	aspect-ratio: 400 / 500;
	margin: auto;
	border-radius: 10px;
}

/* Special offers */
.cf-special-offers-carousel {
	padding: 0;
}
.cf-special-offers-item a {
	display: block;
	padding: 0 0.5rem;
}
.cf-special-offers-item a img {
	transition: 0.3s;
	border-radius: 10px;
	box-shadow: 0 0 0 1px #0000001a;
}
.cf-special-offers-item a:hover img {
	filter: grayscale(0.6);
}
.not-special-offers-item {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 0.6rem;
}
.not-special-offers-item a {
	padding: 0;
}

/*  */
.consultant-help {
	overflow: hidden;
	width: calc(100% + 60vmax);
	margin: 0px -30vmax;
	padding: 105px 0px 60px;
}
.consultant-help .consultant-wrap {
	background: #f9f9f9;
	width: 100%;
}
.consultant-help .consultant-box {
	width: 100%;
	margin: 0px auto;
	max-width: 1200px;
	padding: 0px 50px;
	display: flex;
	justify-content: center;
}
.consultant-help .consultant-box .consultant-img {
	width: 45%;
	overflow: hidden;
	max-height: 620px;
	margin: -100px auto 0px;
}
.consultant-help .consultant-box .consultant-img img {
	max-width: 480px;
	display: block;
}
.consultant-help .consultant-box .consultant-form {
	width: 45%;
	padding: 30px 40px 20px;
	background: var(--metal-gradient);
	margin: -50px 0px -30px;
	border-radius: 12px;
	box-shadow: 0px 5px 5px #00000024;
}
.consultant-help .consultant-box .consultant-form-title {
	margin: 0px 0px 10px;
	font-weight: 700;
	font-size: 36px;
	max-width: 370px;
	line-height: 1.1;
}
.consultant-help .consultant-box .consultant-form-desc {
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 25px;
	line-height: 1.4;
}
.consultant-help form.wpcf7-form .inp {
	margin-bottom: 25px;
}
.consultant-help form.wpcf7-form .inp.inp-textarea {
	margin-bottom: 15px;
}
.consultant-help form.wpcf7-form .inp i {
	color: #262020;
	border: 1px solid #e4dfdf;
	border-radius: 12px 12px 0px 0px;
	padding: 3px 8px 1px;
	border-bottom: 0px;
	top: -16px;
	font-size: 11px;
}
.consultant-help form.wpcf7-form .inp .wpcf7-form-control-wrap:focus-within + i, .consultant-help form.wpcf7-form .inp .wpcf7-form-control-wrap:focus + i {
	border-color: #d54a0d;
}
.consultant-help form.wpcf7-form .inp.inp-sub input[type="submit"] {
	color: #fff;
	background: var(--but-gradient);
}
