/* Priority: 62 */

/*
 * Figma nodes 6031:6302 (parent) and 6031:5878 (child).
 * Page geometry belongs to the existing WPBakery vc_row/vc_column_container
 * grid. These rules only style component internals; vertical rhythm is made
 * with the site's vc_empty_space component.
 */
.gf-service-page {
	color: var(--contentColor, #1a0a0a);
}

.gf-service-layout,
.gf-service-layout *,
.gf-service-layout *::before,
.gf-service-layout *::after {
	box-sizing: border-box;
}

.gf-service-page *,
.gf-service-page *::before,
.gf-service-page *::after {
	box-sizing: border-box;
}

/* The theme grid already owns its 24px gutters; remove WPBakery's legacy
 * 15px inner padding so vc columns keep the exact Figma widths. */
.gf-service-page .vc_column-inner,
.gf-service-page__dynamic-section .vc_column-inner,
.gf-service-page .wpb_wrapper {
	width: 100%;
}

.gf-service-page .vc_column-inner,
.gf-service-page__dynamic-section .vc_column-inner {
	height: 100%;
	padding: 0 !important;
}

.gf-service-page__lead {
	max-width: var(--col-6, 672px);
}

.gf-service-page__lead p,
.gf-service-page__body-copy p,
.gf-service-page__task-text p,
.gf-service-page__result-text p {
	max-width: none;
	margin: 0;
}

.gf-service-page__cta {
	display: inline-flex;
	align-self: flex-start;
	width: fit-content;
}

.gf-service-page__children-row {
	width: 100%;
}

.gf-service-page__children-row .wpb_wrapper {
	width: 100%;
	height: 100%;
}

.gf-service-page__children-slider {
	width: 100%;
	height: auto;
}

.gf-service-page__children-slider > .posts-container.swiper-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	width: 100%;
	margin-left: auto;
}

.gf-service-page__children-slider--columns-3 > .posts-container.swiper-wrapper {
	width: var(--containerWidth);
    padding-left: var(--col-3-gap);
}

.gf-service-page__children-slider--columns-4 > .posts-container.swiper-wrapper {
	width: var(--containerWidth);
}

.gf-service-page__children-slider--align-end > .posts-container.swiper-wrapper {
	justify-content: flex-end;
}

.gf-service-page__children-slider .gf-service-card.swiper-slide {
	flex: 0 0 calc((100% - 48px) / 3);
	width: calc((100% - 48px) / 3) !important;
	height: auto !important;
	min-width: 0;
	margin-right: 0 !important;
	aspect-ratio: 324 / 433;
	align-self: flex-start;
}

.gf-service-page__children-slider--columns-4 .gf-service-card.swiper-slide {
	flex-basis: calc((100% - 72px) / 4);
	width: calc((100% - 72px) / 4) !important;
}

.gf-service-page__children-slider > .slider-controls {
	display: none !important;
}

.gf-service-page__process .swiper-slide .textM {
	box-sizing: border-box;
	padding-right: 20px;
}

.gf-service-page__task-text {
	box-sizing: border-box;
	padding-right: var(--gapX8, 32px);
}

.gf-service-page__service-card {
	position: relative;
	display: block;
	width: 100%;
}

.gf-service-page__children-slider .gf-service-card__title,
.gf-service-page__children-slider .gf-service-card__title p {
	font-size: 30px !important;
	font-weight: 400;
	line-height: 32px !important;
	letter-spacing: -0.9px !important;
}

.gf-service-page__hero-media {
	position: relative;
	overflow: hidden;
	border-radius: var(--roundedM, 16px);
	aspect-ratio: 1020 / 574;
	background: var(--primaryLightBg, #f9f5f2);
}

.gf-service-page__hero-image {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
}

.gf-service-page__play {
	position: absolute;
	left: 28px;
	bottom: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.5);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	color: var(--primary500, #ff6033);
	font-size: 36px;
	text-decoration: none;
}

.gf-service-page__text-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.gf-service-page__text-list li {
	position: relative;
	padding-left: 18px;
}

.gf-service-page__text-list li + li {
	margin-top: 12px;
}

.gf-service-page__text-list li::before {
	content: "—";
	position: absolute;
	left: 0;
}

.gf-service-page__results-inner {
	row-gap: 40px;
}

.gf-service-page__result {
	padding-right: 32px;
}

.gf-service-page__result-icon {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 60px;
	height: 60px;
	color: var(--primary500, #ff6033);
	font-size: 48px;
}

.gf-service-page__result-icon img {
	width: 60px;
	height: 60px;
	object-fit: contain;
}

.gf-service-page__device-slider,
.gf-service-page__category-list {
	width: 100%;
}

.gf-service-page__category-list .gf-service-category-card + .gf-service-category-card {
	margin-top: var(--gapX3);
}

/* The shared category-card contract is also used by the homepage demo.
 * Service singles need the larger Figma 6053:3457 variant, so keep the
 * geometry under the single-services wrapper instead of changing the base. */
.gf-service-layout .gf-service-category-card,
.gf-service-layout .gf-service-category-card.xleb-post,
.gf-service-layout .gf-service-category-card.article-item {
	gap: var(--gapX6);
	min-height: 96px;
	padding: 0 var(--gapX4) 0 var(--gapX2);
	border-radius: var(--roundedM, 16px);
	color: var(--contentColor, #1a0a0a);
}

.gf-service-layout .gf-service-category-card__content {
	gap: var(--gapX4);
}

.gf-service-layout .gf-service-category-card__media {
	flex-basis: 120px;
	width: 120px;
	height: 80px;
}

.gf-service-layout .gf-service-category-card__title,
.gf-service-layout .gf-service-category-card__title > p {
	overflow: visible;
	color: var(--contentColor, #1a0a0a);
	text-overflow: clip;
	white-space: normal;
}

.gf-service-useful-information__title {
	width: 100%;
}

.xleb-card.gf-service-useful-information__card {
	--cardIndentTop: var(--gapX7);
	--cardIndentRight: var(--gapX8);
	--cardIndentBottom: var(--gapX8);
	--cardIndentLeft: var(--gapX6);
	box-sizing: border-box;
	justify-content: space-between;
}

.gf-service-useful-information__card .textS,
.gf-service-useful-information__card .textS p {
	font-family: var(--textFont);
	font-size: var(--textSsize) !important;
	font-weight: var(--textWeight);
	line-height: var(--textSheightS) !important;
	letter-spacing: 0;
}

.gf-service-useful-information__card .textS p {
	max-width: none;
	margin: 0;
}

.gf-service-layout .gf-service-price-filters {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
	gap: var(--gapX2);
	width: 100%;
}

.gf-service-layout .gf-service-price-filter {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 48px;
	padding: 0 var(--gapX4);
	box-sizing: border-box;
	border: 1px solid var(--blackOpacity200, rgba(0, 0, 0, 0.15));
	border-radius: var(--roundedL, 32px);
	background: transparent;
	color: var(--contentOpacityColor, rgba(0, 0, 0, 0.5));
	transition:
		border-color 0.2s ease,
		background-color 0.2s ease,
		color 0.2s ease;
}

.gf-service-layout .gf-service-price-filter > a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
}

.gf-service-layout .gf-service-price-filter.is-active {
	border-color: var(--primary500, #ff6033);
	background: var(--primaryOpacity100, rgba(255, 96, 51, 0.06));
	color: var(--primary500, #ff6033);
}

.gf-service-layout .gf-service-price-filter:not(.is-active):hover,
.gf-service-layout .gf-service-price-filter:focus-within {
	border-color: var(--contentColor, #1a0a0a);
	color: var(--contentColor, #1a0a0a);
}

.gf-service-layout .gf-service-price-filter > a:focus-visible {
	outline: 2px solid var(--primary500, #ff6033);
	outline-offset: 4px;
}

.gf-service-layout .gf-service-page__price .gf-service-page__price-group-title,
.gf-service-layout .gf-service-page__price .gf-service-page__price-group-title > p {
	width: 100%;
	text-align: center;
}

.gf-service-layout .gf-service-page__price .gf-service-price-list {
	width: 100%;
	margin-left: 0;
	row-gap: var(--gapX2);
}

body.new .gf-service-layout .gf-service-page__price .gf-service-price-row {
	width: 100%;
	padding: var(--gapX4) var(--gapX3) var(--gapX4) var(--gapX4);
	box-sizing: border-box;
	border-radius: var(--roundedM, 16px);
	background: var(--primary100, #f9f5f2);
}

.gf-service-layout .gf-service-page__price .gf-service-price-row .description {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--gapX3);
	width: 100%;
}

.gf-service-layout .gf-service-page__price .gf-service-price-row .title {
	min-width: 0;
}

.gf-service-layout .gf-service-page__price .gf-service-price-row .title > p,
.gf-service-layout .gf-service-page__price .gf-service-price-row .price-range > p {
	margin: 0;
	font-size: var(--textMsize) !important;
	line-height: var(--textMheightT) !important;
	letter-spacing: var(--bigTextSpacing);
}

/* Price rows already have a separate caret; suppress the generic list-title hover arrow. */
.gf-service-layout .gf-service-page__price .gf-service-price-row.article-item .title > p:hover::after {
	content: none;
}

.gf-service-layout .gf-service-page__price .gf-service-price-row__meta {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--gapX2);
	min-width: 0;
}

.gf-service-layout .gf-service-page__price .gf-service-price-row .price-range {
	justify-content: flex-end;
	flex-shrink: 0;
	text-align: right;
	white-space: nowrap;
}

.gf-service-layout .gf-service-page__price .gf-service-price-row .price-range > p {
	text-align: right;
}

.gf-service-layout .gf-service-page__price .gf-service-price-row .arrow-icon {
	flex: 0 0 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	min-width: 20px;
	max-width: 20px;
	height: 20px;
	min-height: 20px;
	max-height: 20px;
	padding: 0;
	border-radius: 0;
	background: transparent;
	color: var(--primary500);
	font-size: 20px;
	line-height: 1;
}

body.gf-service-parent.new.gf-xleb-dev-overrides
	.vue-posts:has(.filter-taxonomies.variant_service)
	.variant-items .post .arrow-wrapper {
	display: flex;
	flex: 0 0 20px;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
}

body.gf-service-parent.new.gf-xleb-dev-overrides
	.vue-posts:has(.filter-taxonomies.variant_service)
	.variant-items .post .arrow-icon {
	position: static !important;
	right: auto;
	bottom: auto;
	display: block;
	width: 20px !important;
	min-width: 20px !important;
	max-width: 20px !important;
	height: 20px !important;
	min-height: 20px !important;
	max-height: 20px !important;
	padding: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--primary500) !important;
	object-fit: contain;
	z-index: auto;
}

.gf-service-layout .gf-service-page__price-list-wrap {
	width: 100%;
}

.gf-service-layout .gf-service-price-more {
	display: none;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin: var(--gapX6) auto 0;
	padding: 0;
	border: 0;
	border-radius: var(--roundedL, 32px);
	background: var(--primary500, #ff6033);
	color: var(--white, #fff);
	font: inherit;
	font-size: var(--textMsize, 16px);
	line-height: var(--textMheightT, 20px);
	cursor: pointer;
}

/* Shared WPBakery slider contract used by the service-page Templatera blocks.
 * Figma keeps navigation below the track with a 48px gap. */
.gf-service-layout .swiper {
	overflow: visible;
}

.gf-service-layout .swiper > .slider-controls {
	position: static !important;
	inset: auto !important;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100% !important;
	height: 48px !important;
	max-height: none;
	margin: var(--gapX12) 0 0 !important;
	pointer-events: none;
}

.gf-service-layout .swiper > .slider-controls .navigation-slider {
	position: static !important;
	inset: auto !important;
	display: flex;
	width: auto !important;
	height: 48px !important;
	margin: 0 !important;
	gap: var(--gapX3) !important;
	transform: none !important;
	pointer-events: auto;
}

.gf-service-layout .navigation-slider .swiper-button-prev,
.gf-service-layout .navigation-slider .swiper-button-next,
.gf-service-layout .swiper > .swiper-button-prev,
.gf-service-layout .swiper > .swiper-button-next {
	position: static !important;
	inset: auto !important;
	display: flex;
	flex: 0 0 48px;
	width: 48px !important;
	height: 48px !important;
	min-width: 48px !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: none !important;
}

/* Treatment form: Figma 6062:1437. The Templatera shortcode remains the
 * source of content; this only supplies its component-level geometry. */
.gf-service-layout .row-mid-form {
	display: flex !important;
	align-items: center;
	gap: var(--gapX6) !important;
	padding: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
}

.gf-service-layout .row-mid-form > .vc_column_container {
	flex: 0 0 var(--col-6, 672px);
	width: var(--col-6, 672px);
	max-width: var(--col-6, 672px);
	height: auto !important;
	min-height: 0 !important;
}

.gf-service-layout .row-mid-form .gf-mid-form-media {
	padding-right: var(--gapX10);
}

.gf-service-layout .row-mid-form .gf-mid-form-media .xleb-illustration,
.gf-service-layout .row-mid-form .gf-mid-form-media img {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	aspect-ratio: 632 / 474;
	object-fit: cover;
	border-radius: var(--roundedS, 8px);
}

.gf-service-layout .row-mid-form .gf-mid-form-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.gf-service-layout .row-mid-form .xleb-form,
.gf-service-layout .row-mid-form .mid-form {
	width: 556px;
}

.gf-service-layout .row-mid-form .mid-form {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.gf-service-layout .row-mid-form .mid-form > .input-box.field input:not([type="checkbox"]),
.gf-service-layout .row-bottom-form .bottom-form-inputs input:not([type="checkbox"]) {
	display: block;
	width: 100%;
	height: 48px;
	padding: 19px 0 16px;
	border: 0;
	border-bottom: 1px solid var(--inputBorder, rgba(0, 0, 0, 0.25));
	border-radius: 0;
	background: transparent;
	font-size: var(--textMsize);
	line-height: var(--textMheightT);
}

.gf-service-layout .row-mid-form .caption {
	margin: var(--gapX6) 0 0;
}

.gf-service-layout .row-mid-form .terms-field,
.gf-service-layout .row-bottom-form .terms-field {
	display: flex;
	align-items: flex-start;
	gap: var(--gapX3);
	width: 100%;
	font-size: var(--textSsize);
	line-height: var(--textSheightS);
}

.gf-service-layout .terms-label,
.gf-service-layout .terms-label a,
.gf-service-layout .terms-field,
.gf-service-layout .terms-field a {
	color: var(--contentColor, #1a0a0a) !important;
}

.gf-service-layout .row-mid-form .terms-field input[type="checkbox"],
.gf-service-layout .row-bottom-form .terms-field input[type="checkbox"] {
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	margin: 0;
}

.gf-service-layout .row-mid-form .mid-form > .input-box:last-child {
	margin-top: var(--gapX8);
}

.gf-service-layout .row-mid-form .submit-input,
.gf-service-layout .row-mid-form .submit-button,
.gf-service-layout .row-bottom-form .submit-input,
.gf-service-layout .row-bottom-form .submit-button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 208px !important;
	height: 48px;
	margin: 0;
	padding: 0 var(--gapX5);
	border: 1px solid var(--primary500, #ff6033);
	border-radius: 120px;
	background: transparent !important;
	color: var(--primary500, #ff6033);
	font-size: var(--textMsize);
	line-height: var(--textMheightT);
}

/* About block cards retain the WPBakery rows but use the Figma card contract. */
.gf-service-layout .about-card {
	height: auto;
	border-radius: var(--roundedM, 16px);
}

.gf-mid-form-content > .textM{
	width: 556px;
    max-width: 100%;
}

.slider-controls:has(.swiper-button-next.swiper-button-lock, .swiper-button-prev.swiper-button-lock){
	display: none;
}

.row-mid-form .mid-form > .input-box.field {
    height: 48px;
    margin: 0 0 24px;
}

// .gf-service-layout .about-card .icon {
// 	display: flex;
// 	align-items: center;
// 	justify-content: center;
// 	width: 120px;
// 	height: 120px;
// 	margin: 0 auto;
// 	padding: 0;
// 	border-radius: 50%;
// 	background: var(--whiteOpacity800, rgba(255, 255, 255, 0.78));
// }

/* Specialist card: Figma 6053:4696. */
.gf-service-layout .gf-specialist-card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: space-between;
	flex: 0 0 440px;
	width: 440px !important;
	height: 548px !important;
	min-height: 548px !important;
	margin-right: var(--gapX6) !important;
	padding: var(--gapX6) var(--gapX5) 0 !important;
	overflow: hidden !important;
	border: 1px solid var(--blackOpacity200) !important;
	border-radius: var(--roundedM, 16px);
	background: transparent !important;
}

.gf-service-layout .gf-specialist-card .description-wrapper {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: var(--gapX5);
	width: 100%;
}

.gf-service-layout .gf-specialist-card .description-wrapper > * {
	width: 100%;
}

.gf-service-layout .gf-specialist-card .image-doc {
	position: absolute !important;
	z-index: 1;
	right: 0;
	bottom: 0;
	display: block;
	width: 284px !important;
	height: 355px !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover;
	object-position: center top;
}

/* Review media follows the same edge-to-edge contract as the homepage.
 * Captions intentionally remain visible on service pages. */
.gf-service-layout .gf-reviews-section .xleb-clip-wrapper {
	overflow: hidden;
	background: transparent;
}

.gf-service-layout .gf-reviews-section .xleb-clip-wrapper video,
.gf-service-layout .gf-reviews-section .xleb-clip-wrapper > img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	margin: 0;
	object-fit: cover !important;
	object-position: center;
}

.gf-service-layout .gf-reviews-section .xleb-clip-wrapper + .textS {
	margin-top: var(--gapX5);
}

/* Bottom form: Figma 6062:1654. */
.gf-service-layout .row-bottom-form {
	position: relative;
	min-height: 296px;
	padding: 0 !important;
	overflow: hidden;
	border-radius: var(--roundedM, 16px);
	background: var(--primaryLightBg, #f9f5f2);
}

.gf-service-layout .row-bottom-form > .vc_column_container {
	position: relative;
	z-index: 1;
}

.gf-service-layout .row-bottom-form .bottom-form {
	display: grid !important;
	grid-template-columns: minmax(0, var(--col-4)) var(--col-2);
	grid-template-areas:
		"inputs submit"
		"caption caption";
	column-gap: var(--gapX6);
	row-gap: var(--gapX6);
	align-items: start;
	width: var(--col-6);
	max-width: 100%;
	margin: 0;
}

.gf-service-layout .row-bottom-form .bottom-form-controls {
	display: contents;
}

.gf-service-layout .row-bottom-form .bottom-form-inputs {
	grid-area: inputs;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, var(--col-2)));
	gap: var(--gapX6) !important;
	width: var(--col-4);
	max-width: 100%;
	margin: 0 !important;
}

.gf-service-layout .row-bottom-form .caption {
	grid-area: caption;
	width: var(--col-6);
	max-width: 100%;
	margin: 0 !important;
}

.gf-service-layout .row-bottom-form .submit-input,
.gf-service-layout .row-bottom-form .submit-button {
	grid-area: submit;
	width: 100% !important;
	max-width: none !important;
}

@media (min-width: 992px) {
	/* The Figma distances are measured from the trimmed text box rather than
	 * the WPBakery row box, whose title token starts 13px above its line box. */

	.gf-service-page__children-slider > .posts-container.swiper-wrapper {
		transform: none !important;
		transition: none !important;
	}

	body.gf-service-parent.new .vue-posts:has(.filter-taxonomies.variant_service) {
		align-items: stretch;
	}

	body.gf-service-parent.new .vue-posts:has(.filter-taxonomies.variant_service) .filters-controls-container {
		justify-content: center;
		width: 100%;
		margin: 0;
		padding: 0;
		overflow: visible;
	}

	body.gf-service-parent.new .vue-posts:has(.filter-taxonomies.variant_service) .filters-container.taxonomies {
		width: 904px;
		max-width: 100%;
		margin: 0 auto;
	}

	body.gf-service-parent.new .vue-posts:has(.filter-taxonomies.variant_service) .filter-taxonomies.variant_service {
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
		gap: var(--gapX2);
		width: 100%;
	}

	body.gf-service-parent.new .vue-posts:has(.filter-taxonomies.variant_service) .terms .filter {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		height: 48px;
		padding: 0 var(--gapX4);
		box-sizing: border-box;
		font-size: var(--textMsize);
		line-height: var(--textMheightT);
	}

	body.gf-service-parent.new .vue-posts:has(.filter-taxonomies.variant_service) .variant-items {
		width: 904px;
		max-width: 100%;
		margin-right: auto;
		margin-left: auto;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item {
		display: flex;
		flex-flow: row nowrap !important;
		align-items: center !important;
		gap: var(--gapX6) !important;
		padding: var(--gapX5);
		box-sizing: border-box;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item .description {
		display: flex;
		flex: 1 1 auto;
		flex-flow: row nowrap !important;
		align-items: center !important;
		justify-content: space-between;
		gap: var(--gapX6) !important;
		width: auto !important;
		min-width: 0;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item .description .title {
		flex: 1 1 auto;
		min-width: 0;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item .price-range {
		display: flex;
		flex: 0 0 auto;
		align-items: center;
		justify-content: flex-end;
		white-space: nowrap;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post .arrow-wrapper {
		flex-basis: 24px;
		width: 24px;
		height: 24px;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post .arrow-icon {
		width: 24px !important;
		min-width: 24px !important;
		max-width: 24px !important;
		height: 24px !important;
		min-height: 24px !important;
		max-height: 24px !important;
	}

	.gf-service-layout .gf-service-page__price .gf-service-page__price-column {
		justify-self: center;
		width: 904px;
		max-width: 100%;
	}

	body.new .gf-service-layout .gf-service-page__price .gf-service-price-row {
		min-height: 79px;
		padding: var(--gapX5);
	}

	.gf-service-layout .gf-service-page__price .gf-service-price-row .description,
	.gf-service-layout .gf-service-page__price .gf-service-price-row__meta {
		gap: var(--gapX6);
	}

	.gf-service-layout .gf-service-page__price .gf-service-price-row .arrow-icon {
		flex-basis: 24px;
		width: 24px;
		min-width: 24px;
		max-width: 24px;
		height: 24px;
		min-height: 24px;
		max-height: 24px;
		font-size: 24px;
	}

	.gf-service-layout .gf-service-price-list:not(.is-expanded) > .gf-service-price-row:nth-child(n + 7) {
		display: none;
	}

	.gf-service-layout .gf-service-price-more {
		display: flex;
		width: 60px;
		height: 60px;
		margin-top: var(--gapX8);
		font-family: var(--titleFont, 'TTDrugs', sans-serif);
		font-size: 21px;
		font-weight: var(--titleWeight, 400);
		line-height: 24px;
		letter-spacing: var(--bigTitleSpacing, -0.03em);
	}

	.gf-service-layout .gf-service-price-more[hidden] {
		display: none;
	}
}

@media (max-width: 767px) {
	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items {
		width: 100%;
		max-width: 100%;
		margin-right: 0;
		margin-left: 0;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item {
		display: flex;
		flex-flow: row nowrap !important;
		align-items: center !important;
		gap: var(--gapX3) !important;
		padding: var(--gapX5) var(--gapX3) var(--gapX5) var(--gapX4);
		box-sizing: border-box;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item .description {
		display: flex;
		flex: 1 1 auto;
		flex-flow: row nowrap !important;
		align-items: center !important;
		gap: var(--gapX3) !important;
		width: auto !important;
		min-width: 0;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item .description .title {
		flex: 1 1 auto;
		min-width: 0;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item .price-range {
		display: flex;
		flex: 0 0 65px;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-end;
		width: 65px;
		min-width: 0;
		max-width: 65px;
		gap: 0;
		text-align: right;
		white-space: normal;
	}

	body.gf-service-parent.new.gf-xleb-dev-overrides
		.vue-posts:has(.filter-taxonomies.variant_service)
		.variant-items .post.article-item .price-range > span {
		white-space: nowrap;
	}

	.gf-service-layout .gf-service-price-filters {
		flex-wrap: nowrap;
		justify-content: flex-start;
		overflow-x: auto;
		width: calc(100% + var(--outsideGap) * 2);
		margin: 0 var(--outsideGapFix);
		padding: 0 var(--outsideGap);
		scrollbar-width: none;
	}

	.gf-service-layout .gf-service-price-filters::-webkit-scrollbar {
		display: none;
	}

	.gf-service-layout .gf-service-price-filter {
		flex: 0 0 auto;
	}

	.gf-service-layout .gf-service-page__price .gf-service-page__price-group-title,
	.gf-service-layout .gf-service-page__price .gf-service-page__price-group-title p {
		width: 100%;
		text-align: left;
	}

	.gf-service-layout .gf-service-page__price .gf-service-price-row .description {
		grid-template-columns: minmax(0, 1fr) 100px;
	}

	.gf-service-layout .gf-service-page__price .gf-service-price-row .price-range {
		flex: 1 1 auto;
		min-width: 0;
		white-space: normal;
	}

	.gf-service-layout .gf-service-page__price .gf-service-price-row .arrow-icon {
		width: 20px !important;
		min-width: 20px !important;
		max-width: 20px !important;
		height: 20px !important;
		min-height: 20px !important;
		max-height: 20px !important;
	}

	.gf-service-layout .gf-service-price-list:not(.is-expanded) > .gf-service-price-row:nth-child(n + 7) {
		display: none;
	}

	.gf-service-layout .gf-service-price-more {
		display: flex;
	}

	.gf-service-layout .gf-service-price-more[hidden] {
		display: none;
	}

	.gf-service-layout .swiper > .slider-controls {
		display: none !important;
	}

	/* Mirror the native slide-xs-11 component contract locally so shared
	 * Templatera parameters remain untouched. */
	.gf-service-layout .swiper > .swiper-wrapper > .swiper-slide {
		flex: 0 0 var(--col-11);
		width: var(--col-11) !important;
		margin-right: var(--gapX3) !important;
	}

	.gf-service-layout .titleM.center {
		align-items: flex-start !important;
		width: 100% !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		text-align: left !important;
	}

	.gf-service-layout .titleM.center + .vc_empty_space.space-xs-x10 {
		height: var(--gapX8) !important;
	}

	.gf-service-layout .gf-service-page__all-services .posts-container {
		row-gap: var(--gapX3);
	}

	.gf-service-layout .gf-service-category-card,
	.gf-service-layout .gf-service-category-card.xleb-post,
	.gf-service-layout .gf-service-category-card.article-item {
		gap: var(--gapX3);
		min-height: 85px;
		border-radius: var(--roundedM, 16px);
	}

	.gf-service-layout .gf-service-category-card__content {
		gap: var(--gapX4);
	}

	.gf-service-layout .gf-service-category-card__media {
		flex-basis: 104px;
		width: 104px;
		height: 69px;
	}

	.gf-service-layout .gf-service-category-card__arrow {
		flex-basis: 40px;
		width: 40px;
		height: 40px;
		font-size: var(--textMsize);
	}

	.gf-service-page__task-row {
		display: flex;
		flex-direction: column;
		gap: var(--gapX9);
	}

	.gf-service-page__task-row > .vc_column_container {
		width: 100%;
	}

	.gf-service-useful-information__title {
		align-items: flex-start !important;
		text-align: left !important;
	}

	.xleb-card.gf-service-useful-information__card {
		--cardIndentTop: var(--gapX5);
		--cardIndentRight: var(--gapX6);
		--cardIndentBottom: var(--gapX6);
		--cardIndentLeft: var(--gapX5);
		aspect-ratio: 11 / 16;
	}

	.gf-service-page__lead {
		width: 100%;
		max-width: none;
	}

	.gf-service-page__children-slider {
		width: calc(100% + 16px);
		height: auto;
		overflow: hidden !important;
	}

	.gf-service-page__children-slider > .posts-container.swiper-wrapper,
	.gf-service-page__children-slider--columns-3 > .posts-container.swiper-wrapper,
	.gf-service-page__children-slider--columns-4 > .posts-container.swiper-wrapper {
		display: flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		gap: 0;
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 0;
		transform: translate3d(0, 0, 0);
		transition-property: transform !important;
	}

	.gf-service-page__children-slider .gf-service-card.swiper-slide,
	.gf-service-page__children-slider--columns-4 .gf-service-card.swiper-slide {
		flex: 0 0 var(--col-11);
		width: var(--col-11) !important;
		margin-right: var(--gapX3) !important;
		aspect-ratio: 330 / 441;
	}

	.gf-service-page__children-slider .gf-service-card.swiper-slide:last-child {
		margin-right: 16px !important;
	}

	.gf-service-page__children-slider .gf-service-card {
		padding: 24px 20px 20px;
	}

	.gf-service-page__children-slider .gf-service-card__title,
	.gf-service-page__children-slider .gf-service-card__title p {
		font-size: 21px !important;
		line-height: 24px !important;
		letter-spacing: -0.63px !important;
	}

	.gf-service-page__children-slider .gf-service-card__arrow {
		right: 16px;
		bottom: 16px;
		width: 46px;
		height: 46px;
	}

	.gf-service-page__hero-media {
		aspect-ratio: 16 / 10;
	}

	.gf-service-page__play {
		left: 16px;
		bottom: 16px;
		width: 64px;
		height: 64px;
		font-size: 24px;
	}

	.gf-service-page__results-inner {
		row-gap: 40px;
	}

	.gf-service-page__result {
		padding-right: 0;
	}

	.gf-service-page__result-icon,
	.gf-service-page__result-icon img {
		width: 48px;
		height: 48px;
	}

	.gf-service-layout .row-mid-form {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--gapX8);
	}

	.gf-service-layout .row-mid-form > .vc_column_container,
	.gf-service-layout .row-mid-form .gf-mid-form-content {
		flex: 0 0 auto;
		width: 100%;
		max-width: none;
		height: auto !important;
		min-height: 0 !important;
	}

	.gf-service-layout .row-mid-form .gf-mid-form-media {
		padding-right: 0;
	}

	.gf-service-layout .row-mid-form .xleb-form,
	.gf-service-layout .row-mid-form .mid-form {
		width: 100%;
	}

	.gf-service-layout .row-mid-form .mid-form > .input-box.field input:not([type="checkbox"]),
	.gf-service-layout .row-bottom-form .bottom-form-inputs input:not([type="checkbox"]) {
		height: 44px;
		padding: 19px 0 14px;
	}

	.gf-service-layout .row-mid-form .terms-field input[type="checkbox"],
	.gf-service-layout .row-bottom-form .terms-field input[type="checkbox"] {
		flex-basis: 20px;
		width: 20px;
		height: 20px;
	}

	.gf-service-layout .row-mid-form .submit-input,
	.gf-service-layout .row-mid-form .submit-button,
	.gf-service-layout .row-bottom-form .submit-input,
	.gf-service-layout .row-bottom-form .submit-button {
		width: 100% !important;
		max-width: none !important;
		height: 44px;
		align-self: stretch;
	}

	.gf-service-layout .row-bottom-form .xleb-form .submit-input,
	.gf-service-layout .row-bottom-form .xleb-form .submit-button {
		flex-shrink: 0 !important;
		width: 100% !important;
		max-width: none !important;
	}

	.gf-service-layout .row-mid-form .mid-form > .input-box:last-child,
	.gf-service-layout .row-bottom-form .bottom-form > .input-box {
		width: 100% !important;
		max-width: none !important;
	}

	.gf-service-layout .upper-row-cards,
	.gf-service-layout .bottom-row-cards {
		display: flex !important;
		flex-direction: column;
		width: 100%;
		margin: 0 !important;
	}

	.gf-service-layout .upper-row-cards > .vc_column_container,
	.gf-service-layout .bottom-row-cards > .vc_column_container {
		width: 100%;
		max-width: none;
	}

	.gf-service-layout .upper-row-cards > .vc_column_container:first-child > .xleb-illustration,
	.gf-service-layout .bottom-row-cards > .vc_column_container:nth-child(2) > .xleb-illustration {
		display: block;
		width: 300px;
		height: auto;
		margin-right: auto;
		margin-left: auto;
		padding: 0;
	}

	.gf-service-layout .upper-row-cards > .vc_column_container:nth-child(4),
	.gf-service-layout .bottom-row-cards > .vc_column_container:first-child {
		display: none;
	}

	.gf-service-layout .bottom-row-cards > .vc_column_container:nth-child(4) {
		order: 2;
	}

	.gf-service-layout .bottom-row-cards > .vc_column_container:nth-child(3) {
		order: 3;
	}

	.gf-service-layout .about-card {
		width: 100%;
		padding: var(--gapX5) var(--gapX5) var(--gapX8) !important;
	}

	.gf-service-layout .about-card .icon {
		width: 90px;
		height: 90px;
	}

	:is(.gf-service-layout, body.page-id-1280, body.page-id-1280 .workers) .gf-specialist-card {
		flex: 0 0 var(--col-11);
		width: var(--col-11) !important;
		height: 406px !important;
		min-height: 406px !important;
		margin-right: var(--gapX3) !important;
		padding: var(--gapX6) var(--gapX5) 0 !important;
	}

	:is(.gf-service-layout, body.page-id-1280, body.page-id-1280 .workers) .gf-specialist-card .gf-specialist-card__title,
	:is(.gf-service-layout, body.page-id-1280, body.page-id-1280 .workers) .gf-specialist-card .gf-specialist-card__title p {
		font-size: var(--titleXXSsize) !important;
		line-height: var(--titleXXSheightT) !important;
		letter-spacing: -0.54px !important;
	}

	:is(.gf-service-layout, body.page-id-1280, body.page-id-1280 .workers) .gf-specialist-card .textM,
	:is(.gf-service-layout, body.page-id-1280, body.page-id-1280 .workers) .gf-specialist-card .textM p {
		font-size: var(--textMsize) !important;
		line-height: var(--textMheightT) !important;
	}

	:is(.gf-service-layout, body.page-id-1280, body.page-id-1280 .workers) .gf-specialist-card .image-doc {
		width: 192px !important;
		height: 240px !important;
	}

	.gf-service-layout .gf-reviews-section .xleb-clip-wrapper + .textS {
		margin-top: var(--gapX4);
	}

	.gf-service-layout .row-bottom-form {
		min-height: 0;
		// padding: 0 var(--outsideGap) !important;
	}

	body.new.gf-xleb-dev-overrides .gf-service-layout .row-bottom-form{
		padding-top: unset;
		padding-bottom: unset;
		padding: unset;
	}

	body.new.gf-xleb-dev-overrides .gf-service-layout .row-bottom-form .vc_col-sm-3:first-child{
		order: 3 !important;
		padding-top: 34px;
	}

	body.new.gf-xleb-dev-overrides .gf-service-layout .row-bottom-form .vc_col-sm-3:last-child{
		order: -1;
	}

	body.new.gf-xleb-dev-overrides .gf-service-layout .row-bottom-form .vc_col-sm-6{
		padding: 0 var(--outsideGap);
	}

	.gf-service-layout .row-bottom-form::before,
	.gf-service-layout .row-bottom-form::after {
		content: "";
		position: absolute;
		z-index: 0;
		display: block;
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		pointer-events: none;
	}

	.gf-service-layout .row-bottom-form::before {
		top: 0;
		right: 0;
		width: 214px;
		height: 108px;
		background-image: url("../assets/form-vector-top.svg");
	}

	.gf-service-layout .row-bottom-form::after {
		bottom: 0;
		left: 0;
		width: 152px;
		height: 110px;
		background-image: url("../assets/form-vector-bottom.svg");
	}

	.gf-service-layout .row-bottom-form > .vc_column_container:nth-child(2) {
		position: relative;
		z-index: 1;
		width: 100%;
		max-width: none;
	}

	.gf-service-layout .row-bottom-form > .vc_column_container:nth-child(2) > .vc_empty_space.space-xs-x10 {
		height: var(--gapX8) !important;
	}

	.gf-service-layout .row-bottom-form .bottom-form,
	.gf-service-layout .row-bottom-form .bottom-form-controls,
	.gf-service-layout .row-bottom-form .bottom-form-inputs {
		display: flex !important;
		flex-direction: column;
		width: 100%;
	}

	.gf-service-layout .row-bottom-form .bottom-form {
		gap: var(--gapX8);
	}

	.gf-service-layout .row-bottom-form .bottom-form-controls {
		gap: var(--gapX6);
	}

	.gf-service-layout .row-bottom-form .bottom-form-inputs {
		gap: 0 !important;
	}

	.gf-service-layout .row-bottom-form .caption {
		width: 100%;
	}

}


@media(min-width:991px){
	.gf-service-page__dynamic-title-row .vc_col-sm-6 .titleM{
		text-align: center;
	}

	#services .posts-container{
		row-gap: var(--gapX3);
	}
}

@media(max-width:991px){
	.gf-service-page__hero .xleb-button-wrapper{
		width: 100%;
	}

	.gf-service-page__hero .xleb-button-wrapper a{
		width: 100%;
	}

	body.new .gf-mid-form-content .xleb-form .mid-form input.submit-button{
		margin-top: unset !important;
	}
}
