.specialist-page {
	box-sizing: border-box;
	width: 100%;
	max-width: min(100%, var(--layout-container-min));
	min-width: 0;
	margin-left: auto;
	margin-right: auto;
}

.specialist-page.flex.--col {
	gap: var(--layout-gap-section);
}

.specialist-page .specialist-page__works {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.specialist-page .specialist-page__education,
.specialist-page .blog-carousel,
.specialist-page .services-carousel,
.specialist-page .reviews-carousel,
.specialist-page .licenses-block,
.specialist-page .contacts-promo,
.specialist-page .specialist-page__map {
	width: 100%;
	min-width: 0;
}

.specialist-page .reviews-carousel .reviews-carousel__summary {
	display: none;
}

.specialist-page .specialist-page__hero {
	--specialist-hero-width: min(var(--layout-container-max), calc(100vw - (2 * var(--layout-page-gutter))));
	position: relative;
	box-sizing: border-box;
	width: var(--specialist-hero-width);
	max-width: var(--specialist-hero-width);
	min-width: 0;
	margin-left: calc(50% - var(--specialist-hero-width) / 2);
	overflow: hidden;
	border-radius: var(--layout-radius-xl);
	background-color: var(--color-blue-blue-800);
}

.specialist-page .specialist-page__hero-bg {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.specialist-page .specialist-page__hero-bg-pattern {
	position: absolute;
	top: 100%;
	left: 0;
	width: 160.125rem;
	height: 80.9375rem;
	transform: translate(-35%, -50%) rotate(-9.27deg) skewX(9.9deg);
	color: var(--color-blue-blue-800);
}

.specialist-page .specialist-page__hero-bg-pattern svg {
	display: block;
	width: 100%;
	height: 100%;
}

.specialist-page .specialist-page__hero-container {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	padding: 0.75rem;
}

.specialist-page .specialist-page__hero-layout {
	align-items: stretch;
	gap: 1.5rem;
}

.specialist-page .specialist-page__hero-copy {
	gap: 1.5rem;
	min-width: 0;
}

.specialist-page .specialist-page__hero-crumbs .breadcrumbs .breadcrumbs__link {
	color: var(--color-blue-blue-500);
}

.specialist-page .specialist-page__hero-crumbs .breadcrumbs .breadcrumbs__current {
	color: var(--color-base-white);
}

.specialist-page .specialist-page__hero-crumbs .breadcrumbs .breadcrumbs__sep::before {
	background-color: var(--color-blue-blue-500);
}

.specialist-page .specialist-page__hero-title {
	margin: 0;
	color: var(--color-base-white);
	text-transform: uppercase;
}

.specialist-page .specialist-page__hero-tags {
	flex-wrap: wrap;
	gap: 0.5rem;
}

.specialist-page .specialist-page__hero-tag {
	display: inline-flex;
	align-items: center;
	padding: 0.375rem 0.625rem;
	border-radius: var(--layout-radius-s);
	background-color: var(--color-base-white-20);
	color: var(--color-base-white);
}

.specialist-page .specialist-page__hero-meta {
	flex-wrap: wrap;
	gap: 0.75rem;
	color: var(--color-base-white);
}

.specialist-page .specialist-page__hero-meta-item {
	gap: 0.25rem;
}

.specialist-page .specialist-page__hero-meta-label {
	color: var(--color-base-white-50);
}

.specialist-page .specialist-page__hero-meta-sep {
	color: var(--color-blue-blue-500);
}

.specialist-page .specialist-page__hero-intro {
	margin: 0;
	color: var(--color-base-white);
}

.specialist-page .specialist-page__hero-cta--desk {
	display: none;
	align-self: flex-start;
}

.specialist-page .specialist-page__hero-cta--mob {
	display: inline-flex;
	width: 100%;
}

.specialist-page .specialist-page__hero-media {
	position: relative;
	min-width: 0;
}

.specialist-page .specialist-page__hero-media-slot {
	width: 100%;
}

.specialist-page .specialist-page__hero-media-thumb {
	border-radius: var(--layout-radius-xxl);
	overflow: hidden;
}

.specialist-page .specialist-page__hero-video-card {
	position: absolute;
	left: 1rem;
	bottom: 1rem;
	z-index: 2;
	gap: 1rem;
	flex-wrap: nowrap;
	max-width: calc(100% - 2rem);
	padding: 0 1rem 0 0;
	border: none;
	border-radius: var(--layout-radius-m);
	background-color: var(--color-base-white);
	text-align: left;
	cursor: pointer;
	transition: transform 0.24s ease, box-shadow 0.24s ease;
}

.specialist-page .specialist-page__hero-video-card:hover {
	transform: translateY(-0.125rem);
}

.specialist-page .specialist-page__hero-video-card:focus-visible {
	outline: 0.125rem solid var(--color-blue-blue-800);
	outline-offset: 0.125rem;
}

.specialist-page .specialist-page__hero-video-thumb-wrap {
	position: relative;
	flex-shrink: 0;
	width: 6.5rem;
}

.specialist-page .specialist-page__hero-video-thumb-slot {
	display: block;
	overflow: hidden;
	border: 0.125rem solid var(--color-base-white);
	border-radius: var(--layout-radius-m) 0 0 var(--layout-radius-m);
}

.specialist-page .specialist-page__hero-video-play {
	position: absolute;
	top: 0.375rem;
	left: 0.375rem;
	display: block;
	width: 2rem;
	height: 2rem;
}

.specialist-page .specialist-page__hero-video-play svg {
	display: block;
	width: 100%;
	height: 100%;
}

.specialist-page .specialist-page__hero-video-copy {
	flex: 1;
	min-width: 0;
	max-width: 10.625rem;
}

.specialist-page .specialist-page__hero-video-title {
	color: var(--color-gray-gray-900);
}

.specialist-page .specialist-page__works-head {
	align-items: center;
	gap: 1.5rem;
	width: 100%;
	max-width: 70.875rem;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.specialist-page .specialist-page__works-title-wrap {
	position: relative;
	width: fit-content;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.specialist-page .specialist-page__works-title {
	position: relative;
	z-index: 1;
	margin: 0;
	color: var(--color-blue-blue-800);
	text-transform: uppercase;
}

.specialist-page .specialist-page__works-intro {
	margin: 0;
	color: var(--color-gray-gray-600);
}

.specialist-page .specialist-page__works-grid {
	flex-wrap: wrap;
	gap: 1.25rem;
	width: 100%;
	min-width: 0;
}

.specialist-page .specialist-page__work-card {
	position: relative;
	gap: 1.5rem;
	width: 100%;
	min-width: 0;
	padding: 1.5rem;
	border-radius: var(--layout-radius-xxl);
	background-color: var(--color-blue-blue-800);
	overflow: hidden;
}

.specialist-page .specialist-page__work-card-deco {
	position: absolute;
	top: -9.9375rem;
	right: -13.0625rem;
	width: 27.8125rem;
	height: 27.875rem;
	pointer-events: none;
}

.specialist-page .specialist-page__work-card-deco svg {
	display: block;
	width: 100%;
	height: 100%;
}

.specialist-page .specialist-page__work-card-title {
	position: relative;
	z-index: 1;
	margin: 0;
	color: var(--color-base-white);
	text-transform: uppercase;
}

.specialist-page .specialist-page__work-card-tags {
	position: relative;
	z-index: 1;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.specialist-page .specialist-page__work-card-tag {
	display: inline-flex;
	align-items: center;
	padding: 0.625rem 1rem;
	border-radius: var(--layout-radius-m);
	background-color: var(--color-blue-blue-700);
	color: var(--color-base-white-70);
}

.specialist-page .specialist-page__education {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.specialist-page .specialist-page__education-title {
	margin: 0;
	color: var(--color-blue-blue-800);
	text-transform: uppercase;
}

.specialist-page .specialist-page__education-layout {
	position: relative;
	flex-direction: column;
	gap: 2.5rem;
}

.specialist-page .specialist-page__education-column {
	gap: 2rem;
	flex: 0 1 auto;
	width: 100%;
	min-width: 0;
}

.specialist-page .specialist-page__education-column--primary {
	position: relative;
	padding-left: 2.625rem;
}

.specialist-page .specialist-page__education-column--primary::before {
	content: '';
	position: absolute;
	top: 0.9375rem;
	left: 0;
	width: 0.125rem;
	height: calc(100% - 0.9375rem);
	background-color: var(--color-blue-blue-300);
}

.specialist-page .specialist-page__education-column--additional {
	position: relative;
	padding-left: 2.625rem;
}

.specialist-page .specialist-page__education-column--additional::before {
	content: '';
	position: absolute;
	top: 0.9375rem;
	left: 0;
	width: 0.125rem;
	height: 20.4375rem;
	background-color: var(--color-blue-blue-300);
}

.specialist-page .specialist-page__education-item {
	position: relative;
	gap: 1rem;
}

.specialist-page .specialist-page__education-item::before {
	content: '';
	position: absolute;
	top: 0.4375rem;
	left: -2.625rem;
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	background-color: var(--color-blue-blue-800);
	transform: translateX(-0.4375rem);
}

.specialist-page .specialist-page__education-item-title {
	margin: 0;
	color: var(--color-blue-blue-800);
	text-transform: uppercase;
}

.specialist-page .specialist-page__education-item-text {
	margin: 0;
	color: var(--color-gray-gray-700);
}

.specialist-page .specialist-page__education-item--inline {
	align-items: flex-start;
	gap: 1rem;
}

.specialist-page .specialist-page__education-item--inline .specialist-page__education-item-title {
	flex-shrink: 0;
}

.specialist-page .specialist-page__about {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.specialist-page .specialist-page__about-title {
	margin: 0;
	color: var(--color-blue-blue-800);
	text-transform: uppercase;
}

.specialist-page .specialist-page__about-layout {
	gap: 2.5rem;
}

.specialist-page .specialist-page__about-list {
	gap: 1rem;
	flex: 1;
	min-width: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.specialist-page .specialist-page__about-item {
	gap: 0.5rem;
}

.specialist-page .specialist-page__about-icon {
	display: block;
	flex-shrink: 0;
	width: 1.25rem;
	height: 1.25rem;
}

.specialist-page .specialist-page__about-icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

.specialist-page .specialist-page__about-list .specialist-page__about-text {
	flex: 1;
	min-width: 0;
}

.specialist-page .specialist-page__about-layout > .specialist-page__about-text {
	flex: 1;
	min-width: 0;
	margin: 0;
	color: var(--color-gray-gray-600);
}

.specialist-page .specialist-page__about-video {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
}

.specialist-page .specialist-page__about-video-thumb {
	border-radius: var(--layout-radius-xxl);
	overflow: hidden;
}

.specialist-page .specialist-page__about-video-play {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 5.625rem;
	height: 5.625rem;
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.specialist-page .specialist-page__about-video-play svg {
	display: block;
	width: 100%;
	height: 100%;
}

.specialist-page .specialist-page__offer {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	border-radius: var(--layout-radius-xl);
	background-color: var(--color-blue-blue-800);
}

.specialist-page .specialist-page__offer-bg {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.specialist-page .specialist-page__offer-bg-pattern {
	position: absolute;
	top: 100%;
	left: 50%;
	width: 160.125rem;
	height: 80.9375rem;
	transform: translate(-50%, -50%) rotate(-9.27deg) skewX(9.9deg);
	color: var(--color-blue-blue-800);
}

.specialist-page .specialist-page__offer-bg-pattern svg {
	display: block;
	width: 100%;
	height: 100%;
}

.specialist-page .specialist-page__offer-inner {
	position: relative;
	z-index: 1;
	flex-direction: column;
	align-items: stretch;
	gap: 1.25rem;
	padding: 2.5rem 0.75rem;
}

.specialist-page .specialist-page__offer-head {
	gap: 1.4375rem;
	min-width: 0;
}

.specialist-page .specialist-page__offer-badge {
	display: inline-flex;
	align-self: flex-start;
	padding: 0.375rem 0.75rem;
	border-radius: var(--layout-radius-s);
	background-color: var(--color-blue-blue-600);
	color: var(--color-base-white);
}

.specialist-page .specialist-page__offer-title {
	margin: 0;
	color: var(--color-base-white);
	text-transform: uppercase;
}

.specialist-page .specialist-page__offer-body {
	flex-direction: column;
	align-items: flex-start;
	gap: 0.75rem;
	min-width: 0;
}

.specialist-page .specialist-page__offer-photo {
	flex-shrink: 0;
	width: 6.625rem;
}

.specialist-page .specialist-page__offer-photo-thumb {
	border-radius: var(--layout-radius-m);
	overflow: hidden;
}

.specialist-page .specialist-page__offer-info {
	gap: 0.75rem;
	min-width: 0;
}

.specialist-page .specialist-page__offer-name {
	margin: 0;
	color: var(--color-base-white);
	text-transform: uppercase;
}

.specialist-page .specialist-page__offer-tags {
	flex-wrap: wrap;
	gap: 0.5rem;
}

.specialist-page .specialist-page__offer-tag {
	display: inline-flex;
	padding: 0.375rem 0.625rem;
	border-radius: var(--layout-radius-s);
	background-color: var(--color-base-white-20);
	color: var(--color-base-white);
}

.specialist-page .specialist-page__offer-meta {
	gap: 0.25rem;
}

.specialist-page .specialist-page__offer-meta-label {
	color: var(--color-base-white-50);
}

.specialist-page .specialist-page__offer-meta-value {
	color: var(--color-base-white);
}

.specialist-page .specialist-page__offer-actions {
	gap: 0.5rem;
	width: 100%;
}

.specialist-page .specialist-page__offer-cta,
.specialist-page .specialist-page__offer-details {
	flex: 1;
	padding: 0;
}

.specialist-page .specialist-page__offer-details {
	border-color: var(--color-base-white);
	color: var(--color-base-white);
}

@media screen and (min-width: 64rem) {
	.specialist-page .specialist-page__hero {
		border-radius: var(--layout-radius-xxl);
	}

	.specialist-page .specialist-page__hero-container {
		padding: 2.5rem 1.875rem 1.875rem 8.75rem;
	}

	.specialist-page .specialist-page__hero-layout {
		flex-wrap: nowrap;
		align-items: center;
		gap: 0;
	}

	.specialist-page .specialist-page__hero-copy.col-6 {
		flex: 0 0 var(--layout-col-6);
		max-width: var(--layout-col-6);
		gap: 2.5rem;
		padding-right: 2.5rem;
	}

	.specialist-page .specialist-page__hero-media.col-6 {
		flex: 0 0 var(--layout-col-6);
		max-width: var(--layout-col-6);
		margin-left: auto;
	}

	.specialist-page .specialist-page__hero-media-slot {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		width: 100%;
	}

	.specialist-page .specialist-page__hero-cta--desk {
		display: inline-flex;
	}

	.specialist-page .specialist-page__hero-cta--mob {
		display: none;
	}

	.specialist-page .specialist-page__work-card {
		width: calc(50% - 0.625rem);
		padding: 2.5rem;
	}

	.specialist-page .specialist-page__education-layout {
		flex-direction: row;
		flex-wrap: nowrap;
	}

	.specialist-page .specialist-page__education-column {
		flex: 1;
		width: auto;
	}

	.specialist-page .specialist-page__about-layout {
		flex-wrap: nowrap;
		align-items: flex-start;
	}

	.specialist-page .specialist-page__offer {
		border-radius: var(--layout-radius-xxl);
	}

	.specialist-page .specialist-page__offer-inner {
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		gap: 1.5rem;
		padding: 2.5rem;
	}

	.specialist-page .specialist-page__offer-head {
		flex: 0 0 46.25rem;
		max-width: 46.25rem;
		min-width: 0;
	}

	.specialist-page .specialist-page__offer-body {
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		flex-shrink: 0;
		gap: 1.5rem;
		min-width: 0;
	}

	.specialist-page .specialist-page__offer-photo {
		width: 12rem;
	}

	.specialist-page .specialist-page__offer-photo-thumb {
		border-radius: var(--layout-radius-xl);
	}

	.specialist-page .specialist-page__offer-info {
		gap: 1.125rem;
		max-width: 21rem;
	}

	.specialist-page .specialist-page__offer-tag {
		padding: 0.5rem 0.75rem;
		border-radius: var(--layout-radius-m);
	}

	.specialist-page .specialist-page__offer-meta-label {
		font-size: 1.125rem;
		line-height: 1.4;
	}

	.specialist-page .specialist-page__offer-actions {
		flex: 1;
		flex-direction: column;
		align-self: stretch;
		gap: 0.75rem;
		width: auto;
		min-width: 11.25rem;
	}

	.specialist-page .specialist-page__offer-cta,
	.specialist-page .specialist-page__offer-details {
		flex: none;
		width: 100%;
	}

	.specialist-page .reviews-carousel .reviews-carousel__toolbar {
		justify-content: flex-end;
	}
}

@media screen and (max-width: 63.99875rem) {
	.specialist-page .specialist-page__works-title-wrap .title-highlight__layer {
		display: block;
	}

	.specialist-page .specialist-page__works-title-wrap .title-highlight {
		height: 2rem;
	}

	.specialist-page .specialist-page__works-title-wrap .title-highlight__bar {
		top: 0.375rem;
		height: 1.625rem;
	}

	.specialist-page .specialist-page__works-title-wrap .title-highlight__corner {
		width: 0.5rem;
		height: 2rem;
	}

	.specialist-page .specialist-page__works-title-wrap .title-highlight__corner--start {
		left: -0.125rem;
	}

	.specialist-page .specialist-page__works-title-wrap .title-highlight__corner--end {
		top: 0.125rem;
		right: -0.125rem;
	}

	.specialist-page .specialist-page__hero {
		width: var(--layout-mob-bleed-width);
		max-width: var(--layout-mob-bleed-width);
		margin-left: var(--layout-mob-bleed-margin-left);
		margin-right: var(--layout-mob-bleed-margin-right);
	}

	.specialist-page .specialist-page__hero-container {
		padding-bottom: 1.5rem;
	}

	.specialist-page .specialist-page__hero-layout {
		flex-direction: column;
	}

	.specialist-page .specialist-page__hero-copy.col-6,
	.specialist-page .specialist-page__hero-media.col-6 {
		width: 100%;
		max-width: none;
		flex: 0 1 auto;
		margin-left: 0;
	}

	.specialist-page .specialist-page__hero-copy {
		order: 2;
		gap: 1rem;
	}

	.specialist-page .specialist-page__hero-media {
		order: 1;
		width: 100%;
	}

	.specialist-page .specialist-page__hero-media-thumb {
		border-radius: var(--layout-radius-l);
	}

	.specialist-page .specialist-page__hero-video-card {
		left: 0.5rem;
		bottom: 0.5rem;
		max-width: calc(100% - 1rem);
	}

	.specialist-page .specialist-page__hero-video-thumb-wrap {
		width: 5.25rem;
	}

	.specialist-page .specialist-page__hero-video-thumb-slot {
		border-radius: 1rem 0 0 1rem;
	}

	.specialist-page .specialist-page__hero-video-title {
		font-size: 0.875rem;
	}

	.specialist-page .specialist-page__hero-meta {
		gap: 0.625rem;
		font-size: 0.75rem;
	}

	.specialist-page .specialist-page__works-head {
		gap: 1rem;
	}

	.specialist-page .specialist-page__works-intro {
		font-size: 1rem;
	}

	.specialist-page .specialist-page__education-column--primary,
	.specialist-page .specialist-page__education-column--additional {
		padding-left: 1.625rem;
	}

	.specialist-page .specialist-page__education-item::before {
		left: -1.625rem;
		transform: translateX(-0.3125rem);
	}

	.specialist-page .specialist-page__education-item--inline {
		flex-direction: column;
		gap: 0.5rem;
	}

	.specialist-page .specialist-page__about-layout {
		flex-direction: column;
		gap: 1.5rem;
	}

	.specialist-page .specialist-page__offer {
		width: var(--layout-mob-bleed-width);
		max-width: var(--layout-mob-bleed-width);
		margin-left: var(--layout-mob-bleed-margin-left);
		margin-right: var(--layout-mob-bleed-margin-right);
	}
}
