/*
Theme Name: PromService
Theme URI: https://promservice.ru
Author: Nabozhev
Author URI: https://nabozhev.online
Description: Инженерно-техническая тема для Пром Сервис Инжиниринг
Version: 1.1
License: GPL v2 or later
Text Domain: promservice
*/

/* ========== ПОДКЛЮЧЕНИЕ ШРИФТОВ ========== */
@font-face {
	font-family: 'Halvar Breitschrift Light';
	src: url('fonts/HalvarBreit-Lt.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Halvar Breitschrift';
	src: url('fonts/HalvarBreit-Rg.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Halvar Breitschrift Regular';
	src: url('fonts/HalvarBreit-Rg.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Halvar Breitschrift Medium';
	src: url('fonts/HalvarBreit-Md.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Halvar Breitschrift Bold';
	src: url('fonts/HalvarBreit-Bd.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* ========== ПЕРЕМЕННЫЕ ========== */
:root {
	--color-bg-dark: #1E2832;
	--color-accent: #57C2E4;
	--color-accent-hover: #197E9E;
	--color-white: #ffffff;
	--color-text: #1E2832;
	--color-text-light: #8A9BA8;
	--container-width: 1840px;
	--container-padding: 0px;
	--transition-smooth: cubic-bezier(0.4, 0, 0.2, 1);
}

/* ========== БАЗОВЫЕ СТИЛИ ========== */
html {
	box-sizing: border-box;
	scroll-behavior: smooth;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

body {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;

	color: var(--color-text);
	min-height: 100vh;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body.popup-open {
	overflow: hidden;
}
/* ========== КОНТЕЙНЕР ========== */
.container {
	max-width: var(--container-width);
	margin: 0 auto;
	padding: 0 var(--container-padding);
	width: 100%;
}

/* ========== ТИПОГРАФИКА ========== */
h1 {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	margin: 0 0 20px;
	color: black;
}

h2 {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 34px;
	line-height: 1;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	margin: 0 0 18px;
	color: var(--color-white);
}

h3 {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 500;
	font-size: 24px;
	line-height: 1;
	letter-spacing: 0;
	margin: 0 0 16px;
	color: var(--color-white);
}

h4 {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0;
	margin: 0 0 14px;
	color: var(--color-white);
}

h5 {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0;
	margin: 0 0 12px;
	color: var(--color-white);
}

h6 {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0;
	margin: 0 0 10px;
	color: var(--color-white);
}

p {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	margin: 0 0 16px;
}

a {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	text-decoration: underline;
	text-decoration-color: var(--color-accent);
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
	color: var(--color-text);
	transition: color 0.3s var(--transition-smooth), text-decoration-color 0.3s var(--transition-smooth);
}

a:hover {
	color: var(--color-accent-hover);
	text-decoration-color: var(--color-accent-hover);
}

/*.main-navigation ul .sub-menu {display: none;}*/



/* Подменю */
.main-navigation .menu-item-has-children {
	position: relative;
}

.main-navigation .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
		background: rgba(30, 40, 50, 0.55);
			backdrop-filter: blur(12px);
	border: 1px solid rgba(87, 194, 228, 0.2);
	border-radius: 4px;
	padding: 10px 0;
	width: 320px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		visibility 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 100;
	list-style: none;
	display: block;
}

.main-navigation .menu-item-has-children:hover .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.main-navigation .sub-menu li {
	display: block;
	margin: 0;
	background-color: transparent;
}

.main-navigation .sub-menu li::before,
.main-navigation .sub-menu li::after {
	display: none !important;
}

.main-navigation .sub-menu a {
	white-space: normal;
	display: block;
	padding: 10px 20px 10px 30px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #57C2E4;

	text-decoration: none;
	position: relative;
	transition: color 0.3s;
	background-color: transparent !important;
}

.main-navigation .sub-menu a:hover {
	color: #57C2E4 !important;
	background-color: transparent !important;
}

.main-navigation .sub-menu a::before {
	content: '';
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%);
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #197E9E;
}

.main-navigation .sub-menu a:hover {
	color: #FFFFFF;
	background: rgba(87, 194, 228, 0.1);
}

/* Убираем подчёркивание для пунктов с подменю */
.main-navigation .menu-item-has-children>a::after {
	display: none;
}




/* ========== DEFAULT PAGE ========== */
.default-page {
	background: #FFFFFF;
	padding: 120px 40px 80px;
	min-height: 600px;
}

.default-page__container {
	max-width: 1840px;
	margin: 0 auto;
}

.default-page__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 40px;
}

.default-page__content {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 22px;
	color: #1E2832;
}

.default-page__content p {
	margin-bottom: 16px;
}

@media screen and (max-width: 1024px) {
	.default-page {
		padding: 100px 30px 60px;
	}

	.default-page__title {
		font-size: 34px;
		line-height: 40px;
	}
}

@media screen and (max-width: 768px) {
	.default-page {
		padding: 80px 20px 50px;
	}

	.default-page__title {
		font-size: 28px;
		line-height: 34px;
	}
}



/* ========== АНИМАЦИИ ПОЯВЛЕНИЯ ========== */
.fade-up {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.6s var(--transition-smooth), transform 0.6s var(--transition-smooth);
}

.fade-up.visible {
	opacity: 1;
	transform: translateY(0);
}

.fade-in {
	opacity: 0;
	transition: opacity 0.5s var(--transition-smooth);
}

.fade-in.visible {
	opacity: 1;
}

.scale-in {
	opacity: 0;
	transform: scale(0.92);
	transition: opacity 0.5s var(--transition-smooth), transform 0.5s var(--transition-smooth);
}

.scale-in.visible {
	opacity: 1;
	transform: scale(1);
}

/* ========== КНОПКИ ========== */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 32px;
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	text-decoration: none;
	border: 1px solid transparent;
	border-radius: 2px;
	cursor: pointer;
	transition: all 0.3s var(--transition-smooth);
	background-color: transparent;
}

.btn--primary {
	background-color: var(--color-accent);
	color: var(--color-bg-dark);
	border-color: var(--color-accent);
}

.btn--primary:hover {
	background-color: transparent;
	color: var(--color-accent);
}

.btn--outline {
	background-color: transparent;
	color: var(--color-accent);
	border-color: var(--color-accent);
}

.btn--outline:hover {
	background-color: var(--color-accent);
	color: var(--color-bg-dark);
}

.home .site {
	background-color: #1E2832;
}

/* ========== ШАПКА ========== */
.site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	height: 90px;
	background-color: transparent;

	transition: height 0.6s var(--transition-smooth), background-color 0.3s var(--transition-smooth);
}

.home .site-header, .page-id-11 .site-header {background-color: transparent;}

.site-header.scrolled {
	height: 60px;
	background-color: rgba(30, 40, 50, 0.98);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.site-header.scrolled .site-logo img {
	width: 200px;
	transition: width 0.6s var(--transition-smooth), background-color 0.3s var(--transition-smooth);
	
}


.header-container {
	display: flex;
	align-items: center;
	height: 100%;
}

.site-logo {
	flex-shrink: 0;
}

.site-logo a {
	display: block;
	text-decoration: none;

}

.menu-toggle.active {
		position: relative;
			z-index: 999;
			cursor: pointer;
}

.menu-toggle svg {
	transition: transform 0.3s var(--transition-smooth);
	position: relative;
	z-index: 234;
}

.menu-toggle:hover svg {
	transform: scale(1.05);
}

.site-logo img {
	display: block;
	width: 240px;
	height: 47px;
	object-fit: contain;
}

.logo-text {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 500;
	font-size: 20px;
	color: var(--color-white);
	text-transform: uppercase;
}

.logo-subtext {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 12px;
	color: var(--color-accent);
	display: block;
}

/* Десктопная часть шапки */
.header-desktop {
	display: flex;
	align-items: center;
	margin-left: 400px;
	flex: 1;
}

.main-navigation {
	margin-right: 50px;
}

.main-navigation ul {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 12px;
}
.main-navigation li {
	position: relative;
	display: flex;
	align-items: center;
}

.main-navigation a {
	display: block;
	padding: 9px 12px;
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: var(--color-white);
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.3s var(--transition-smooth), color 0.3s var(--transition-smooth);
	position: relative;
	z-index: 1;
	background-color: transparent;
}

/* Псевдоэлементы всегда присутствуют, но прозрачные по умолчанию */
.main-navigation li::before {
	content: '';
	display: inline-block;
	width: 6px;
	height: 37px;
	background-image: url("data:image/svg+xml,%3Csvg width='6' height='37' viewBox='0 0 6 37' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.5 0.5H0.5V36.5H5.5' stroke='%2357C2E4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	margin-right: -4px;
	opacity: 0;
	transition: opacity 0.3s var(--transition-smooth);
}

.main-navigation li::after {
	content: '';
	display: inline-block;
	width: 6px;
	height: 37px;
	background-image: url("data:image/svg+xml,%3Csvg width='6' height='37' viewBox='0 0 6 37' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0.5H5V36.5H0' stroke='%2357C2E4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	margin-left: -4px;
	opacity: 0;
	transition: opacity 0.3s var(--transition-smooth);
}

/* При hover меняем только opacity и фон */
.main-navigation li:hover::before,
.main-navigation li:hover::after {
	opacity: 1;
}

.main-navigation li:hover a {
	background-color: #304050;
	color: var(--color-white);
}

/* Активный пункт меню */
.main-navigation .active-menu-item::before,
.main-navigation .active-menu-item::after {
	opacity: 1;
}

.main-navigation .active-menu-item a {
	background-color: #304050;
	color: var(--color-white);
}

/* Контакты в шапке */
.header-contacts {
	display: flex;

	align-items: flex-end;
	gap: 40px;
	flex-shrink: 0;
}

.header-phone {
font-family: 'Halvar Breitschrift Light';
	font-weight: 300;
	font-size: 24px;
	line-height: 22px;
	color: var(--color-white);
	text-decoration: none;
	transition: color 0.3s var(--transition-smooth);
}

.header-phone:hover {
	color: var(--color-accent);
}

.header-email {
font-family: 'Halvar Breitschrift Light';
	font-weight: 300;
	font-size: 20px;
	line-height: 22px;
	color: var(--color-white);
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, 0.3);
	text-underline-offset: 3px;
	transition: color 0.3s var(--transition-smooth), text-decoration-color 0.3s var(--transition-smooth);
}

.header-email:hover {
	color: var(--color-accent);
	text-decoration-color: var(--color-accent);
}

/* Мобильное меню (бургер) */
.menu-toggle {
	display: none;
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
	margin-left: auto;
	transition: opacity 0.3s var(--transition-smooth);
}

.menu-toggle:hover {
	opacity: 0.8;
}

/* Панель мобильного меню */
.mobile-menu-panel {
	position: fixed;
	top: 60px;
	right: -100%;
	width: 100%;
	max-width: 100%;
	height: 100vh;
	background-color: #1E2832;
	z-index: 1001;
	transition: right 0.4s var(--transition-smooth);
	overflow-y: auto;
	/*box-shadow: -5px 0 30px rgba(0, 0, 0, 0.3);*/
}

.mobile-menu-panel.active {
	right: 0;
}

.mobile-menu-inner {
	padding: 20px 20px 40px;
}

.mobile-navigation ul {
	list-style: none;
	margin: 0 0 30px;
	padding: 0;
}

.mobile-navigation li {
	width: 100%;
	border-top: 1px solid rgba(87, 194, 228, 0.3);
	border-bottom: 1px solid rgba(87, 194, 228, 0.3);
}

.mobile-navigation li:not(:first-child) {
	border-top: none;
}

.mobile-navigation a {
	display: block;
	padding: 15px 0;
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 18px;
	color: var(--color-white);
	text-align: center;
	text-decoration: none;

	transition: color 0.3s var(--transition-smooth);
}

.mobile-navigation a:hover,
.mobile-navigation .active-menu-item a {
	color: var(--color-accent);
}

.mobile-menu-buttons {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.mobile-btn {
	display: block;
	width: 100%;
	padding: 15px;
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	text-align: center;
	text-decoration: none;
	transition: all 0.3s var(--transition-smooth);
}

.mobile-btn-outline {
	font-size: 24px;
	line-height: 22px;
	color: var(--color-accent);
	border: 1px solid var(--color-accent);
	border-radius: 200px;
}

.mobile-btn-outline:hover {
	background-color: rgba(87, 194, 228, 0.1);
}

.mobile-btn-primary {
	font-size: 18px;
	line-height: 22px;
	color: var(--color-white);
	background-color: #197E9E;
	border-radius: 200px;
}

.mobile-btn-primary:hover {
	background-color: #1a8db3;
	color: #FFFFFF;
}

/* Оверлей мобильного меню */
.mobile-menu-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;

	/*backdrop-filter: blur(4px);*/

	z-index: 1000;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s var(--transition-smooth);
}

.mobile-menu-overlay.active {
	opacity: 1;
	visibility: visible;
}

body.menu-open {
	overflow: hidden;
}

/* Липкая кнопка */
.sticky-button {
	position: fixed;
	top: 166px;
	right: 0;
	z-index: 999;
	width: 38px;
	min-height: 238px;
	padding: 10px;
	background-color: #197E9E;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.3s var(--transition-smooth), transform 0.3s var(--transition-smooth);
}

.sticky-button:hover {
	background-color: #1a8db3;
	transform: translateX(-2px);
}

.sticky-button__text {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 14px;
	color: var(--color-white);

	writing-mode: vertical-rl;
	text-orientation: mixed;
	white-space: nowrap;
	transform: rotate(-180deg);
}

/* Основной контент (отступ для фиксированной шапки) */
.site-main {
	padding-top: 0px;
	transition: padding-top 0.3s var(--transition-smooth);
}

.site-header.scrolled~.site-main,
.site-header.scrolled+.mobile-menu-panel+.mobile-menu-overlay+.site-main {
	padding-top: 80px;
}

/* ========== АДАПТИВ ========== */
@media screen and (max-width: 1400px) {
	.header-desktop {
		margin-left: 50px;
	}
}

@media screen and (max-width: 1200px) {
	.header-desktop {
		margin-left: 30px;
	}

	.main-navigation ul {
		gap: 5px;
	}

	.main-navigation a {
		padding: 10px 10px;
	}

	.header-phone {
		font-size: 20px;
	}

	.header-email {
		font-size: 16px;
	}
}

@media screen and (max-width: 1024px) {
	.site-header {
		height: 60px;
	}

	.site-header.scrolled {
		height: 60px;
	}

	.site-main {
		padding-top: 40px;
	}

	.site-header.scrolled~.site-main {
		padding-top: 60px;
	}

	.site-logo img {
		width: 180px;
		height: 35px;
	}

	.header-desktop {
		display: none;
	}

	.menu-toggle {
		display: block;
	}

	.sticky-button {
		display: none;
	}
}

@media screen and (max-width: 480px) {
	.site-logo img {
		width: 150px;
		height: 29px;
	}

	.mobile-menu-panel {
		max-width: 100%;
	}

	.mobile-btn-outline {
		font-size: 20px;
	}
}



/* ========== ФУТЕР ========== */
/* ========== ФУТЕР ========== */
.site-footer {
	background: linear-gradient(180deg, #1E2832 0%, #294554 100%);
	border-top: 1px solid rgba(87, 194, 228, 0.15);
	padding: 120px 0 30px;
}

.footer-container {
	display: flex;
	flex-direction: column;
	min-height: 350px;
}

.footer-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
	flex: 1;
	margin-bottom: 60px;
}

.footer-logo {
	flex-shrink: 0;
}

.footer-logo a {
	display: block;
	text-decoration: none;
}

.footer-logo img {
	display: block;
	width: 240px;
	height: 47px;
	object-fit: contain;
}

.footer-logo .logo-text {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 500;
	font-size: 20px;
	color: var(--color-white);
	text-transform: uppercase;
}

.footer-logo .logo-subtext {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 12px;
	color: var(--color-accent);
	display: block;
}

/* Меню в футере */
.footer-menu-wrapper {
	flex: 1;
	max-width: 700px;
}

#footer-menu {
	display: grid;
grid-template-columns: 250px 370px;
	gap: 12px 40px;
	list-style: none;
	margin: 0;
	padding: 0;
}

#footer-menu li {
	margin: 0;
}

#footer-menu a {
font-family: 'Halvar Breitschrift Light';
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: var(--color-white);
	text-decoration: underline;
	transition: color 0.3s var(--transition-smooth);
	display: inline-block;
	position: relative;
}

#footer-menu a::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0;
	height: 1px;
	background-color: var(--color-accent);
	transition: width 0.3s var(--transition-smooth);
}

#footer-menu a:hover {
	color: var(--color-accent);
}

/*#footer-menu a:hover::after {
	width: 100%;
}*/

/* Контакты в футере */
.footer-contacts {
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.footer-contact-item {
	display: flex;
	align-items: center;
	gap: 12px;
}

.footer-contact-icon {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.footer-contact-icon svg {
	width: 40px;
	height: 40px;
	transition: transform 0.3s var(--transition-smooth);
}

.footer-contact-item:hover .footer-contact-icon svg {
	transform: scale(1.05);
}

.footer-contact-text {
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 300;
	font-size: 18px;
	line-height: 22px;
	color: var(--color-white);
text-decoration: none;
	transition: color 0.3s var(--transition-smooth);
}

a.footer-contact-text:hover {
	color: var(--color-accent);
}

/* Нижняя часть футера */
.footer-bottom {
	padding-top: 30px;
	/*border-top: 1px solid rgba(87, 194, 228, 0.15);*/
}

.footer-copyright {
	font-family: 'Halvar Breitschrift Light';
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: rgba(255, 255, 255, 0.6);

}

/* ========== АДАПТИВ ФУТЕРА ========== */
@media screen and (max-width: 1200px) {
	.footer-top {
		gap: 30px;
	}

	#footer-menu {
		gap: 12px 20px;
	}
}

@media screen and (max-width: 1024px) {
	.site-footer {
		height: auto;
		min-height: auto;
		padding: 40px 0 20px;
	}

	.footer-top {
		flex-direction: column;
		align-items: flex-start;
		gap: 30px;
		margin-bottom: 40px;
	}

	.footer-menu-wrapper {
		max-width: 100%;
		width: 100%;
	}

	#footer-menu {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px 30px;
	}

	.footer-contacts {
		width: 100%;
	}
}

@media screen and (max-width: 768px) {
	.site-footer {
		padding: 30px 0 20px;
	}

	.footer-top {
		gap: 25px;
		margin-bottom: 30px;
	}

	.footer-logo img {
		width: 180px;
		height: 35px;
	}

	#footer-menu {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.footer-contact-text {
		font-size: 14px;
		line-height: 20px;
	}

	.footer-copyright {
		font-size: 12px;
	}
}

@media screen and (max-width: 480px) {
	.footer-logo img {
		width: 150px;
		height: 29px;
	}

	.footer-contact-item {
		gap: 10px;
	}

	.footer-contact-icon {
		width: 32px;
		height: 32px;
	}

	.footer-contact-icon svg {
		width: 32px;
		height: 32px;
	}
}
/* ========== УТИЛИТЫ ========== */
.text-center {
	text-align: center;
}

.mb-20 {
	margin-bottom: 20px;
}

.mb-40 {
	margin-bottom: 40px;
}

.mb-60 {
	margin-bottom: 60px;
}

/* ========== SLICK СЛАЙДЕР (будет использоваться) ========== */
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;
	overflow: hidden;
	display: block;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-track {
	position: relative;
	left: 0;
	top: 0;
	display: flex;
	margin-left: auto;
	margin-right: auto;
}

.slick-slide {
	float: left;
	height: 100%;
	min-height: 1px;
	display: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-dots {
	position: absolute;
	bottom: -40px;
	display: flex !important;
	justify-content: center;
	gap: 12px;
	list-style: none;
	padding: 0;
	margin: 0;
	width: 100%;
}

.slick-dots li button {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 1px solid var(--color-accent);
	border-radius: 50%;
	background: transparent;
	text-indent: -9999px;
	cursor: pointer;
	transition: all 0.3s var(--transition-smooth);
}

.slick-dots li.slick-active button {
	background: var(--color-accent);
	transform: scale(1.3);
}

.slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 50px;
	height: 50px;
	background: rgba(30, 40, 50, 0.8);
	border: 1px solid var(--color-accent);
	border-radius: 50%;
	color: var(--color-accent);
	font-size: 0;
	cursor: pointer;
	transition: all 0.3s var(--transition-smooth);
}

.slick-arrow:hover {
	background: var(--color-accent);
	color: var(--color-bg-dark);
}

.slick-prev {
	left: -25px;
}

.slick-next {
	right: -25px;
}

.slick-prev::before,
.slick-next::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 12px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
}

.slick-prev::before {
	transform: translate(-25%, -50%) rotate(-135deg);
}

.slick-next::before {
	transform: translate(-75%, -50%) rotate(45deg);
}



/* ========== HERO SECTION ========== */
.hero-section {

	position: relative;
	min-height: 1000px;
	background: radial-gradient(65.71% 65.71% at 50% 50%, #000000 0%, #1E2832 100%);
	overflow: hidden;
	padding: 112px 0 60px;
}

.hero-bg-circle {
margin-left: -7px;
	margin-top: 26px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 813px;
	height: 813px;
	z-index: 0;
	pointer-events: none;
	animation: rotateSlow 60s linear infinite;
}

@keyframes rotateSlow {
	from {
		transform: translate(-50%, -50%) rotate(0deg);
	}

	to {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}

.hero-container {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	min-height: 1000px;
}

/* Заголовок */
.hero-title {

	max-width: 913px;
}

.hero-title__first {
	display: block;
font-family: 'Halvar Breitschrift Light';
	font-weight: 300;
	font-size: 64px;
	line-height: 72px;
	letter-spacing: -0.05em;
	color: #57C2E4;
	text-transform: uppercase;
}

.hero-title__second {
	display: block;
font-family: 'Halvar Breitschrift Light';
	font-weight: 300;
	font-size: 64px;
	line-height: 72px;
	letter-spacing: -0.05em;
	color: var(--color-white);
	text-transform: uppercase;
}

/* ========== HERO CIRCLES ========== */
.hero-circles {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex: 1;
	margin-top: -20px;
}

.hero-circle {
	position: relative;
	width: 660px;
	height: 657px;
	margin-left: -100px;
}

.hero-circle:first-child {
	margin-left: 0;
}

.hero-circle--large {
	width: 744px;
	height: 740px;
	margin-left: -120px;
	z-index: 3 !important;
}

.hero-circle__link {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}



/* Обёртка */
.hero-circle__wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.hero-circle__svg {
	width: 100%;
	height: 100%;
}

/* Группы анимации */
.hero-circle__outer-group {
	transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
transform-origin: 331px 327px;
}

.hero-circle__inner-group {
	transition: transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
	transform-origin: 330px 328px;
}
/* Внешняя группа вращается на 230° */
.hero-circle:hover .hero-circle__outer-group {
	transform: rotate(-250deg);
}

/* Внутренняя группа вращается на 180° */
.hero-circle:hover .hero-circle__inner-group {
	transform: rotate(-145deg);
}

/* Hover эффекты для цветов */
.hero-circle__outer-stroke {
	transition: fill 0.6s cubic-bezier(0.4, 0, 0.2, 1), fill-opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-circle:hover .hero-circle__outer-stroke {
	fill: #57C2E4;
	fill-opacity: 1.5;
}

.hero-circle__spokes,
.hero-circle__ellipse,
.hero-circle__arc {
	transition: stroke 0.6s cubic-bezier(0.4, 0, 0.2, 1), stroke-opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-circle:hover .hero-circle__spokes {
	stroke: #57C2E4;
	stroke-opacity: 0.08;
}

.hero-circle:hover .hero-circle__ellipse {
	stroke: #57C2E4;
	stroke-opacity: 0.3;
}

.hero-circle:hover .hero-circle__arc {
	stroke: #57C2E4;
	stroke-opacity: 0.5;
}









/* Название */


/* Декоративная точка */
.hero-circle__dot {
	position: absolute;
	left: -25px;
	top: 50%;
	transform: translateY(-50%);
	width: 50px;
	height: 50px;
	z-index: 15;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: none;
}

.hero-circle__dot-svg {
	width: 100%;
	height: 100%;
}

/* Слой свечения */
.hero-circle__glow {
	transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
	opacity: 0;
	pointer-events: none;
}

.hero-circle__glow path {
	transition: fill-opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-circle:hover .hero-circle__glow {
	opacity: 1;
}

.hero-circle:hover .hero-circle__glow path {
	fill-opacity: 0.5;
}


/* Изображение */
.hero-circle__image-wrapper {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 480px;
	height: auto;

	z-index: 5;
	margin-left: 190px;
clip-path: circle(65.82% at 17.21% 50.26%);
}

/* Первый круг (левый) */
.hero-circle:nth-child(1) .hero-circle__image-wrapper {
margin-left: 160px;
clip-path: circle(65.82% at 17.21% 50.26%);
}

/* Второй круг (центральный) */
.hero-circle:nth-child(2) .hero-circle__image-wrapper {
	width: 1808px;
	margin-left: 413px;
	transform: translate(-38%, -50%);
clip-path: circle(26.48% at 15.16% 49.58%);
}

/* Третий круг (правый) */
.hero-circle:nth-child(3) .hero-circle__image-wrapper {
width: 808px;
	margin-left: 231px;
	transform: translate(-38%, -50%);
clip-path: circle(46.7% at 9.60% 50.27%);
}

.hero-circle__image {
	width: 100%;
	height: auto;
	display: block;
	transition: opacity 0.6s var(--transition-smooth);
}

.hero-circle__image--default {
	opacity: 1;
}

.hero-circle__image--hover {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}

.hero-circle:hover .hero-circle__image--default {
	opacity: 0;
}

.hero-circle:hover .hero-circle__image--hover {
	opacity: 1;
}

/* Название */
.hero-circle__title {
	position: absolute;
	left: 40px;
	top: 50%;
	transform: translateY(-50%);
	max-width: 250px;
font-family: 'Halvar Breitschrift Light';
	font-weight: 300;
	font-size: 22px;
	line-height: 26px;
	color: var(--color-white);

	z-index: 10;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}

/* Декоративная точка */
.hero-circle__dot {
	position: absolute;
	left: -25px;
	top: 50%;
	transform: translateY(-50%);
	width: 50px;
	height: 50px;
	z-index: 15;
	transition: all 0.4s var(--transition-smooth);
}

.hero-circle__dot-svg {
	width: 100%;
	height: 100%;
	transition: transform 0.4s var(--transition-smooth);
}

.hero-circle:hover .hero-circle__dot {
	width: 40px;
	height: 40px;
	left: -17px;
}







/* Кнопка */
.hero-button-wrapper {
	margin-top: 60px;
}

.hero-button {
	display: inline-block;
	padding: 6px;
	background: transparent;
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	cursor: pointer;
	transition: all 0.3s var(--transition-smooth);
}

.hero-button:hover {
	border-color: #66FAFF;
	box-shadow: 0 0 20px rgba(102, 250, 255, 0.3);
}

.hero-button__inner {
	display: block;
	padding: 15px 25px;
	background: #66FAFF;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
	text-transform: uppercase;
	transition: all 0.3s var(--transition-smooth);
}

.hero-button:hover .hero-button__inner {
	background: #8FFBFF;
}

/* Попап */
.hero-popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s var(--transition-smooth), visibility 0.3s var(--transition-smooth);
}

.hero-popup.active {
	opacity: 1;
	visibility: visible;
}

.hero-popup__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
	backdrop-filter: blur(8px);
}

.hero-popup__content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0.9);
	width: 90%;
	max-width: 500px;
	background: #1E2832;
	border: 1px solid #57C2E4;
	border-radius: 8px;
	padding: 40px;
	transition: transform 0.4s var(--transition-smooth);
}

.hero-popup.active .hero-popup__content {
	transform: translate(-50%, -50%) scale(1);
}

.hero-popup__close {
	position: absolute;
	top: 15px;
	right: 15px;
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
	transition: transform 0.3s var(--transition-smooth);
}

.hero-popup__close:hover {
	transform: rotate(90deg);
}

.hero-popup__form {
	color: var(--color-white);
}

/* Адаптив */
@media screen and (max-width: 1600px) {
	.hero-circle {
		width: 550px;
		height: 550px;
		margin-left: -120px;
	}

	.hero-circle--large {
		width: 620px;
		height: 620px;
	}

	.hero-circle__inner {
		width: 460px;
		height: 460px;
	}

	.hero-circle--large .hero-circle__inner {
		width: 530px;
		height: 530px;
	}

	.hero-circle__image-wrapper {
		width: 280px;
	}

	.hero-circle__title {
		font-size: 18px;
		max-width: 200px;
		left: 30px;
	}
}

@media screen and (max-width: 1400px) {

	.hero-title__first,
	.hero-title__second {
		font-size: 52px;
		line-height: 60px;
	}

	.hero-circle {
		width: 480px;
		height: 480px;
		margin-left: -100px;
	}

	.hero-circle--large {
		width: 550px;
		height: 550px;
	}

	.hero-circle__inner {
		width: 400px;
		height: 400px;
	}

	.hero-circle--large .hero-circle__inner {
		width: 460px;
		height: 460px;
	}

	.hero-circle__image-wrapper {
		width: 240px;
	}
}

@media screen and (max-width: 1200px) {

	.hero-title__first,
	.hero-title__second {
		font-size: 42px;
		line-height: 50px;
	}

	.hero-circles {
		flex-direction: column;
		gap: 30px;
	}

	.hero-circle {
		width: 500px;
		height: 500px;
		margin-left: 0 !important;
	}

	.hero-circle--large {
		width: 550px;
		height: 550px;
	}

	.hero-circle__inner {
		width: 420px;
		height: 420px;
	}

	.hero-circle--large .hero-circle__inner {
		width: 460px;
		height: 460px;
	}

	.hero-circle__image-wrapper {
		width: 260px;
	}

	.hero-circle__title {
		font-size: 20px;
		max-width: 220px;
	}

	.hero-bg-circle {
		width: 600px;
		height: 600px;
	}
}

@media screen and (max-width: 768px) {
	.hero-section {
		min-height: auto;
		padding: 80px 0 40px;
	}

	.hero-container {
		min-height: auto;
	}

	.hero-title__first,
	.hero-title__second {
		font-size: 32px;
		line-height: 40px;
	}

	.hero-circle {
		width: 350px;
		height: 350px;
	}

	.hero-circle--large {
		width: 380px;
		height: 380px;
	}

	.hero-circle__inner {
		width: 290px;
		height: 290px;
	}

	.hero-circle--large .hero-circle__inner {
		width: 320px;
		height: 320px;
	}

	.hero-circle__image-wrapper {
		width: 180px;
		margin-left: 30px;
	}

	.hero-circle__title {
		font-size: 16px;
		line-height: 20px;
		max-width: 150px;
		left: 20px;
	}

	.hero-circle__dot {
		width: 35px;
		height: 35px;
		left: -17px;
	}

	.hero-circle:hover .hero-circle__dot {
		width: 28px;
		height: 28px;
		left: -14px;
	}

	.hero-bg-circle {
		width: 400px;
		height: 400px;
	}

	.hero-popup__content {
		padding: 30px 20px;
	}
}

@media screen and (max-width: 480px) {

	.hero-title__first,
	.hero-title__second {
		font-size: 26px;
		line-height: 34px;
	}

	.hero-circle {
		width: 300px;
		height: 300px;
	}

	.hero-circle--large {
		width: 320px;
		height: 320px;
	}

	.hero-circle__inner {
		width: 250px;
		height: 250px;
	}

	.hero-circle--large .hero-circle__inner {
		width: 270px;
		height: 270px;
	}

	.hero-circle__image-wrapper {
		width: 150px;
	}

	.hero-circle__title {
		font-size: 14px;
		line-height: 18px;
		max-width: 120px;
	}
}

/* ========== ABOUT SECTION ========== */
.about-section {
	position: relative;
	height: 800px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 0px 0;
}


.about-container {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	align-items: start;
}

.about-left {
	padding-top: 180px;
}

.about-title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 30px;
}

.about-text-wrapper {
	width: 425px;
margin-left: 460px;
	margin-top: -70px;
}


.about-text-wrapper p {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
	margin-bottom: 20px;
}

.about-text-wrapper p:first-of-type {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	line-height: 1;
}

.about-left .about-button {
	margin-left: 460px;
}

.about-button {
	display: inline-block;
	margin-top: 20px;
	margin-left: 150px;
	padding: 8px;
	border: 1px solid #00A3D6;
	border-radius: 100px;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-button:hover {
	border-color: #008BB8;
	box-shadow: 0 4px 15px rgba(0, 163, 214, 0.2);
}

.about-button__inner {
	display: block;
	padding: 15px 30px;
	background: #008BB8;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #FFFFFF;

	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-button:hover .about-button__inner {
	background: #00A3D6;
}

.about-right {
	display: flex;
	justify-content: start;
}

.about-stats {
	width: 727px;
	min-height: 799px;
	background: rgba(255, 255, 255, 0.7);
	display: flex;
	flex-direction: column;
	gap: 50px;
	padding-left: 138px;
	padding-top: 140px;
}

.stat-item {
	opacity: 1;
}

.stat-header {
	display: flex;
}

.stat-number {
	display: block;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 60px;
	line-height: 1.2;
	color: #197E9E;
}

.stat-number__value {
	font-family: inherit;
}

.stat-number__suffix {
	font-family: inherit;
	margin-left: -17px;
}

.stat-title {
	display: block;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 24px;
	line-height: 24px;
	color: #197E9E;
	margin-top: 12px;
	margin-left: 10px;
}

.stat-desc {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 18px;
	line-height: 20px;
	color: #1E2832;
	max-width: 450px;
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.about-stats {
		width: 600px;
		padding: 50px 40px;
		gap: 60px;
	}

	.about-text-wrapper {
		margin-left: 80px;
	}

	.about-button {
		margin-left: 80px;
	}
}

@media screen and (max-width: 1200px) {
	.about-container {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.about-right {
		justify-content: center;
	}

	.about-stats {
		width: 100%;
		min-height: auto;
	}

	.about-text-wrapper {
		margin-left: 0;
		width: 100%;
		max-width: 600px;
	}

	.about-button {
		margin-left: 0;
	}
}

@media screen and (max-width: 768px) {
	.about-section {
		padding: 60px 0;
		min-height: auto;
	}

	.about-title {
		font-size: 32px;
		line-height: 38px;
	}

	.about-stats {
		padding: 40px 25px;
		gap: 40px;
	}

	.stat-number {
		font-size: 48px;
	}

	.stat-title {
		font-size: 20px;
		line-height: 20px;
	}

	.stat-desc {
		font-size: 16px;
		line-height: 18px;
	}
}

@media screen and (max-width: 480px) {
	.about-title {
		font-size: 28px;
		line-height: 34px;
	}

	.about-stats {
		padding: 30px 20px;
		gap: 30px;
	}

	.stat-number {
		font-size: 40px;
	}

	.stat-title {
		font-size: 18px;
	}

	.stat-desc {
		font-size: 14px;
		line-height: 16px;
	}
}

/* ========== DIRECTIONS SECTION ========== */
.directions-section {
	background: #FFFFFF;
	min-height: 800px;
	padding: 80px 0;
	padding-bottom: 0;
}

.directions-title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-align: center;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 130px;
}

.directions-grid {
	display: flex;
	justify-content: center;
	gap: 140px;
	flex-wrap: wrap;
}

/* Карточка направления */
.direction-card {
	position: relative;
	width: 339px;
	min-height: 500px;
	display: block;
	text-decoration: none;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.direction-card:hover {
	transform: translateY(-0px);
}

/* Фоновый круг */
.direction-card__circle {
	position: absolute;
	top: 0;
	left: 0;
	width: 339px;
	height: 339px;
	border-radius: 50%;
	background: #E2E4E9;
	transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 1;
}

.direction-card__circle-svg {
	width: 100%;
	height: 100%;
	transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.direction-card:hover .direction-card__circle {
	background: #1E93B9;
}

.direction-card:hover .direction-card__circle-svg {
	transform: rotate(-90deg);
}

/* Декоративная плашка */
.direction-card__plate {
	position: absolute;
	top: -30px;
	left: 100px;
	width: 317px;
	height: 419px;
	z-index: 2;
	pointer-events: none;
}

.direction-card__plate-svg {
	width: 100%;
	height: 100%;
}

/* Полоска слева */
.direction-card__line {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 100%;
	opacity: 0;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.direction-card:hover .direction-card__line {
	opacity: 1;
}

/* Контент карточки */
.direction-card__content {
	position: relative;
	z-index: 3;
	padding: 10px 0px 30px 0px;
	display: flex;
	flex-direction: column;
		margin-left: 75px;
}

.direction-card__image {
	width: 345px;
	height: 144px;


}

.direction-card__image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* Вторая карточка (центральная) */
.direction-card:nth-child(2) .direction-card__image {
		width: 258px;
			height: 182px;
			margin-left: 10px;
			margin-top: -20px;
}

/* Третья карточка (правая) */
.direction-card:nth-child(3) .direction-card__image {
	width: 309px;
		height: auto;
		margin-left: 5px;
		margin-top: -35px;
}

.direction-card__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0;
	color: #1E2832;
	margin-bottom: 10px;
	padding-bottom: 8px;
	position: relative;
	left: 40px;
	display: inline-block;
width: 350px;
}

.direction-card:nth-child(3) .direction-card__title {
	margin-top: -10px;
}

.direction-card__title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background: #1E93B9;
	transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.direction-card:hover .direction-card__title::after {
	width: 100%;
}

/* Список */
.direction-card__list {
	list-style: none;
	margin: 0;
	padding: 0;
	max-width: 350px;
	margin-left: 40px;
}

.direction-card__list li {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 20px;
	letter-spacing: 0;
	color: #1E2832;
	margin-bottom: 10px;
	padding-left: 18px;
	position: relative;
	width: 350px;
}

.direction-card__list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 8px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #A8AEBD;
}


/* Обновлённый SVG круг - только новые свойства */
.direction-card__circle-svg circle {
	transition: stroke 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.direction-card:hover .direction-card__circle-svg circle {
	stroke: #FFFFFF;
	stroke-opacity: 0.5;
}

/* Вертикальная линия с анимацией сверху вниз */
.direction-card__line {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 0;
	opacity: 0;
	transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.direction-card__line line {
	stroke: #1E93B9;
	stroke-width: 1;
}

.direction-card:hover .direction-card__line {
	height: 100%;
	opacity: 1;
}

/* Маркеры списка при наведении */
.direction-card__list li::before {
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.direction-card:hover .direction-card__list li::before {
	background: #1E93B9;
}

/* Кнопка "Подробнее" */
.direction-card__button {
	display: inline-block;
	width: 140px;
	padding: 15px 25px;
	margin-top: 25px;
	margin-left: 40px;
	background: #197E9E;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #FFFFFF;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
		background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.direction-card:hover .direction-card__button {
	opacity: 1;
	transform: translateY(0);
}

.direction-card__button:hover {
	background: #1E93B9;
}

/* Адаптив */
@media screen and (max-width: 1200px) {
	.directions-grid {
		gap: 20px;
	}

	.direction-card {
		width: 310px;
	}

	.direction-card__circle {
		width: 310px;
		height: 310px;
	}

	.direction-card__plate {
		width: 290px;
		left: 10px;
	}
}

@media screen and (max-width: 1024px) {
	.directions-section {
		min-height: auto;
		padding: 60px 0;
	}

	.directions-title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 60px;
	}

	.directions-grid {
		flex-direction: column;
		align-items: center;
		gap: 40px;
	}

	.direction-card {
		width: 339px;
	}

	.direction-card__circle {
		width: 339px;
		height: 339px;
	}

	.direction-card__plate {
		width: 317px;
		left: 11px;
	}
}

@media screen and (max-width: 480px) {
	.directions-title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 40px;
	}

	.direction-card {
		width: 300px;
	}

	.direction-card__circle {
		width: 300px;
		height: 300px;
	}

	.direction-card__plate {
		width: 280px;
		left: 10px;
		top: 70px;
	}

	.direction-card__content {
		padding: 90px 15px 25px 30px;
	}

	.direction-card__list li {
		font-size: 14px;
		line-height: 18px;
	}
}


/* ========== ORDER FORM SECTION ========== */
.order-section {
	background: #FFFFFF;
	padding: 0;
	padding-bottom: 47px;
}

.order-form-wrapper {
	background-color: #1E2832;
	background-size: 100%;
	background-position: right center;
	background-repeat: no-repeat;
	height: 500px;
	padding: 80px 50px;
	position: relative;
}

.order-form-content {
	max-width: 1200px;
	position: relative;
	z-index: 2;
}

.order-form-title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #FFFFFF;
	margin-bottom: 50px;
}

/* Сетка формы */
.order-form-grid {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.order-form-row {
	display: flex;
	gap: 20px;
}

.order-form-row--message {
	align-items: stretch;
	align-self: end;
	margin-top: -112px;
	height: 102px;
	width: 566px;
margin-right: -536px;
}

.order-form-field {
	flex-basis: 566px;
	min-width: 0;
}

/* Кастомный селект */
.order-form-field--select {
	position: relative;
}

.order-form-field--select::after {
	content: '';
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	width: 13px;
	height: 8px;
	background-image: url("data:image/svg+xml,%3Csvg width='13' height='8' viewBox='0 0 13 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.1073 0.365314C12.5944 0.852401 12.5944 1.64195 12.1073 2.12904L6.23638 8L0.365417 2.12904C-0.121669 1.64195 -0.121665 0.852407 0.365417 0.365313C0.852505 -0.121774 1.64205 -0.12177 2.12914 0.365313L6.23638 4.47255L10.3436 0.365314C10.8307 -0.121773 11.6202 -0.121769 12.1073 0.365314Z' fill='white'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	pointer-events: none;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Анимация стрелки при фокусе */
.order-form-field--select:focus-within::after {
	transform: translateY(-50%) rotate(180deg);
}

.order-form-field input,
.order-form-field select,
.order-form-field textarea {
	width: 100%;
	height: 46px;
	padding: 15px;
	background: #2F3B46;
	border: none;
	border-radius: 4px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #FFFFFF;
	outline: none;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.order-form-field input:focus,
.order-form-field select:focus,
.order-form-field textarea:focus {
	background: #3A4856;
}

.order-form-field input::placeholder,
.order-form-field textarea::placeholder {
	color: rgba(255, 255, 255, 0.5);
}

.order-form-field textarea {
	height: 102px;
	resize: none;
}

/* Кастомный селект */
/* Кастомный селект */
.order-form-field--select {
	position: relative;
}

.order-form-field--select select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding-right: 40px;
	cursor: pointer;
	color: rgba(255, 255, 255, 0.5) !important;
}

.order-form-field--select select option:not(:first-child) {
	color: #FFFFFF !important;
}

.order-form-field--select select option:first-child {
	color: rgba(255, 255, 255, 0.5) !important;
	display: none;
}

/* Скрываем первый пункт в выпадающем списке */
.order-form-field--select select option[value=""] {
	display: none;
}

/* Кнопка отправки */
.order-form-submit-wrapper {

	margin-top: 10px;
		border: 1px solid #66FAFF99;
		border-radius: 100px;
		padding: 6px;
		width: 165px;
		height: 62px;
}

				.order-form-submit-wrapper:hover {
			box-shadow: 0 0 20px rgba(102, 250, 255, 0.3);
		}


.order-form-submit-wrapper input {
	width: auto;
	min-width: 151px;
	padding: 6px;
	background: transparent;
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;

	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.order-form-submit-wrapper input:hover {
	border-color: #66FAFF;
}

.order-form-submit-wrapper .wpcf7-submit {
	background: #66FAFF;
	border: 1px solid rgba(102, 250, 255, 0.6);
	padding: 15px 25px;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;

	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.order-form-submit-wrapper .wpcf7-submit:hover {
	background: #8FFBFF;
	border-color: #66FAFF;
}

/* Чекбоксы */
.order-form-row--checkboxes {
	flex-direction: column;
	gap: 15px;
	margin-top: 20px;
}

.order-form-checkbox {
	display: flex;
	align-items: center;
	gap: 12px;
	cursor: pointer;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: rgba(255, 255, 255, 0.7);
}

.order-form-checkbox .wpcf7-form-control-wrap {
	display: flex;
	align-items: center;
}

.order-form-checkbox .wpcf7-list-item {
	margin: 0;
	display: flex;
	align-items: center;
}

.order-form-checkbox input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 22px;
	height: 22px;
	background: #2F3B46;
	border-radius: 4px;
	margin: 0 12px 0 0;
	cursor: pointer;
	position: relative;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.order-form-checkbox input[type="checkbox"]:checked {
	background: #2F3B46;
	background-image: url("data:image/svg+xml,%3Csvg width='13' height='10' viewBox='0 0 13 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.74577 0.529246C10.2203 -0.0741698 11.0912 -0.176832 11.6909 0.299975C12.2906 0.776787 12.3921 1.65267 11.9176 2.25609L6.62705 8.98437C5.96032 9.83226 4.71694 9.93105 3.92704 9.19897L0.446262 5.97221C-0.11589 5.45121 -0.151923 4.57016 0.366482 4.00446C0.884849 3.43881 1.7609 3.40297 2.32305 3.92385L5.07221 6.47164L9.74577 0.529246Z' fill='%2357C2E4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center 60%;
	background-size: 13px 10px;
}

.order-form-checkbox input[type="checkbox"]:hover {
	background-color: #3A4856;
}

/* Скрываем стандартный текст CF7, если он дублируется */
.order-form-checkbox .wpcf7-list-item-label {
	display: none;
}

/* Делаем весь блок кликабельным */
.order-form-checkbox {
	cursor: pointer;
	user-select: none;
}
/* Текст чекбокса */
.order-form-checkbox {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #FFFFFF80;
}
/* Валидация */
.wpcf7-not-valid-tip {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-size: 12px;
	color: #FF6B6B;
	margin-top: 5px;
	position: absolute;
		top: -21px;
}

.wpcf7-response-output {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-size: 14px;
	color: #FFFFFF;
	margin-top: 20px;
	padding: 15px;
	border-radius: 4px;
}

.wpcf7-mail-sent-ok {
	border-color: #66FAFF;
}

/* Адаптив */
@media screen and (max-width: 1200px) {
	.order-form-row {
		gap: 30px;
	}
}

@media screen and (max-width: 1024px) {
	.order-form-wrapper {
		padding: 50px 30px;
	}

	.order-form-title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}
}

@media screen and (max-width: 768px) {
	.order-form-wrapper {
		padding: 40px 20px;
	}

	.order-form-title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.order-form-row {
		flex-direction: column;
		gap: 20px;
	}

	.order-form-row--message {
		flex-direction: column;
	}

	.order-form-field textarea {
		height: 120px;
	}

	.order-form-submit-wrapper {
		text-align: center;
	}

	.order-form-submit-wrapper input {
		width: 100%;
	}
}


/* Скрываем стандартные элементы CF7 */
.wpcf7 .ajax-loader {
	display: none;
}

.wpcf7-form-control-wrap {
	display: block;
}

/* Стили для чекбоксов CF7 */
.order-form-checkbox .wpcf7-form-control-wrap {
	display: inline-block;
}

.order-form-checkbox .wpcf7-list-item {
	margin: 0;
}

.order-form-checkbox .wpcf7-list-item-label {
	display: flex;
	align-items: center;
	gap: 12px;
}


/* Управление поворотом через класс */
.order-form-field--select.select-focused::after {
	transform: translateY(-50%) rotate(180deg);
}

.eng-cases__bg-image {
	position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 962px;
		height: 430px;
		object-fit: contain;
		z-index: 10;
		pointer-events: none;
}

/* ========== PORTFOLIO SECTION ========== */
.portfolio-section {
	background: #1E2832;
	min-height: 2100px;
	padding: 75px 40px 100px;
	max-width: 1920px;
	margin: 0 auto;

}

.portfolio-title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #FFFFFF;
	margin-bottom: 60px;
	padding-left: 0;
}

/* Сетка портфолио - 5 колонок по 369px */
.portfolio-grid {
	display: grid;
	grid-template-columns: repeat(5, 369px);
	gap: 0;
	grid-auto-flow: dense;
	justify-content: flex-start;
}

/* Базовый элемент - фиксированные размеры */
.portfolio-item {
	position: relative;
	width: 369px;
	height: 416px;
	background: transparent;
	transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	grid-column: span 1;
	grid-row: span 1;
	box-sizing: border-box;
	cursor: default;
}

.portfolio-item:not(.portfolio-item--empty):not(.portfolio-item--link) {
	border: 1px solid #455C73;
	margin: -0.5px 0 0 -0.5px;
}

.portfolio-item:not(.portfolio-item--empty):not(.portfolio-item--link):hover {
	background: linear-gradient(180deg, #222E39 0%, #324253 100%);
	cursor: pointer;
	z-index: 2;
}

/* Контент стандартного элемента */
.portfolio-item__content {
	padding: 30px;
	height: 100%;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
}

.portfolio-item__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 22px;
	line-height: 24px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #57C2E4;
	margin: 0 0 20px 0;
	flex-shrink: 0;
}

.portfolio-item__image-wrapper {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	min-height: 0;
}

.portfolio-item__image {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	display: block;
	object-fit: contain;
	transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.portfolio-item__image--silhouette {
	opacity: 1;
}

.portfolio-item__image--photo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
}

.portfolio-item:hover .portfolio-item__image--silhouette {
	opacity: 0;
}

.portfolio-item:hover .portfolio-item__image--photo {
	opacity: 1;
}

/* Крупный элемент - занимает 2x2 ячейки */
.portfolio-item--large {
	width: 738px;
	height: 832px;
	grid-column: span 2;
	grid-row: span 2;
}

.portfolio-item--large .portfolio-item__content {
	padding: 40px;
}

.portfolio-item--large .portfolio-item__title {
	font-size: 28px;
	line-height: 32px;
}

/* Пустой элемент */
.portfolio-item--empty {
	border: none !important;
	background: transparent !important;
	pointer-events: none;
	margin: 0;
}

/* Ссылочный элемент */
.portfolio-item--link {
	border: none;
	background: transparent;
	display: flex;
	align-items: center;
	margin: 0;
	margin-left: 20px;
}

.portfolio-item__link {
	display: flex;
	flex-direction: column;
	gap: 10px;
	text-decoration: none;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	padding: 0 30px 30px 30px;
}

.portfolio-item__link:hover {
	transform: translateX(10px);
}

.portfolio-item__link-text {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 24px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #FFFFFF;
}

.portfolio-item__link-arrow {
	display: block;
}

.portfolio-item__link-arrow svg path {
	transition: fill 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.portfolio-item__link:hover .portfolio-item__link-arrow svg path {
	fill: #57C2E4;
}

/* Адаптив */
@media screen and (max-width: 1920px) {
	.portfolio-grid {
		grid-template-columns: repeat(5, 369px);
	}
}

@media screen and (max-width: 1600px) {
	.portfolio-section {
		padding: 150px 20px 100px;
	}
}

@media screen and (max-width: 1400px) {
	.portfolio-grid {
		grid-template-columns: repeat(4, 369px);
	}
}

@media screen and (max-width: 1100px) {
	.portfolio-grid {
		grid-template-columns: repeat(3, 369px);
	}

	.portfolio-section {
		padding: 100px 20px 60px;
		min-height: auto;
	}
}

@media screen and (max-width: 800px) {
	.portfolio-grid {
		grid-template-columns: repeat(2, 369px);
	}
}

@media screen and (max-width: 768px) {
	.portfolio-title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}
}

@media screen and (max-width: 760px) {
	.portfolio-grid {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.portfolio-item--large {
		width: 369px;
		height: 416px;
		grid-column: span 1;
		grid-row: span 1;
	}

	.portfolio-item--large .portfolio-item__content {
		padding: 30px;
	}

	.portfolio-item--large .portfolio-item__title {
		font-size: 22px;
		line-height: 24px;
	}
}

@media screen and (max-width: 480px) {
	.portfolio-section {
		padding: 80px 15px 50px;
	}

	.portfolio-title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.portfolio-item {
		width: 100%;
		max-width: 369px;
	}

	.portfolio-item__link-text {
		font-size: 16px;
	}
}



/* ========== COMPETENCIES SECTION ========== */
.competencies-section {
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	min-height: 855px;
	padding: 140px 30px 0;
}



.competencies-container {
	position: relative;
	z-index: 2;
	max-width: 1845px;
	margin: 0 auto;
}

.competencies-title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	width: 344px;
	margin-bottom: -90px;
}

.competencies-title__first {
	display: block;
}

.competencies-title__second {
	display: block;
}

/* Сетка компетенций - 6 колонок */
.competencies-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 2px;
	margin-bottom: 50px;
}

/* Элемент компетенции */
.competency-item {
	width: 100%;
	max-width: 305.5px;
	height: 81px;
	background: rgba(255, 255, 255, 0.6);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-radius: 4px;
	padding: 15px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	display: flex;
	align-items: center;
	box-sizing: border-box;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.competency-item:hover {
	background: #197E9E;
	transform: translateY(-2px);

}

 .competency-item:hover >.competency-item__text {
	color: #FFFFFF;
 }

.competency-item__text {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 1.2;
	letter-spacing: 0;
	color: #1E2832;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Пустой элемент */
.competency-item--empty {
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: none !important;
	pointer-events: none;
}

.competency-item--empty:hover {
	transform: none;
}

/* Кнопка */
.competencies-button-wrapper {
	margin-top: -114px;
}

.competencies-button {
	background-color: white;
	display: inline-block;
	padding: 8px;
	border: 1px solid #00A3D6;
	border-radius: 100px;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.competencies-button:hover {
	border-color: #008BB8;
	box-shadow: 0 4px 15px rgba(0, 163, 214, 0.2);
}

.competencies-button__inner {
	display: block;
	padding: 15px 30px;
	background: #008BB8;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #FFFFFF;
	text-transform: uppercase;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.competencies-button:hover .competencies-button__inner {
	background: #00A3D6;
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.competencies-grid {
		grid-template-columns: repeat(5, 1fr);
	}
}

@media screen and (max-width: 1200px) {
	.competencies-section {
		padding: 80px 30px;
	}

	.competencies-grid {
		grid-template-columns: repeat(4, 1fr);
		gap: 10px;
	}

	.competency-item {
		max-width: 100%;
	}
}

@media screen and (max-width: 1024px) {
	.competencies-title {
		font-size: 34px;
		line-height: 40px;
		width: auto;
	}

	.competencies-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media screen and (max-width: 768px) {
	.competencies-section {
		padding: 60px 20px;
	}

	.competencies-title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.competencies-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}

	.competency-item {
		height: auto;
		min-height: 70px;
	}

	.competency-item__text {
		font-size: 14px;
	}
}

@media screen and (max-width: 480px) {
	.competencies-grid {
		grid-template-columns: 1fr;
	}

	.competencies-button-wrapper {
		text-align: center;
	}

	.competencies-button {
		width: 100%;
	}

	.competencies-button__inner {
		text-align: center;
	}
}



/* ========== TESTIMONIALS SECTION ========== */
.testimonials-section {
	background: #FFFFFF;
	padding: 100px 40px;
}

.testimonials-container {
	max-width: 1840px;
	margin: 0 auto;
}

.testimonials-title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	text-align: center;
	margin-bottom: 40px;
}

/* Слайдер */
.testimonials-slider {
	display: flex;
	gap: 20px;

	padding: 30px 0;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: thin;
	scrollbar-color: #197E9E #E2E4E9;
}

.testimonials-slider::-webkit-scrollbar {
	height: 6px;
}

.testimonials-slider::-webkit-scrollbar-track {
	background: #E2E4E9;
	border-radius: 3px;
}

.testimonials-slider::-webkit-scrollbar-thumb {
	background: #197E9E;
	border-radius: 3px;
}

/* Карточка отзыва */
.testimonial-card {
	position: relative;
	width: 352px;
	height: 411px;
	flex-shrink: 0;
	background: #F0F1F4;
	border-radius: 4px;
	padding: 25px 25px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1),
		border-radius 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	overflow: hidden;
}

.testimonial-card:hover {
	background: #197E9E;
	border-top-left-radius: 90px;
}

/* Фото */
.testimonial-card__photo {
	width: 140px;
	height: 140px;
	border-radius: 50%;
	overflow: hidden;
	margin-bottom: 20px;
	transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1),
		height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	flex-shrink: 0;
}

.testimonial-card__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.testimonial-card:hover .testimonial-card__photo {
	width: 110px;
	height: 110px;
}

/* Контент */
.testimonial-card__content {
	flex: 1;
	display: flex;
	flex-direction: column;
	position: relative;
}

/* Текст отзыва - скрыт по умолчанию */
.testimonial-card__text {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 0;
	color: #FFFFFF;
	opacity: 0;
	max-height: 0;
	overflow: hidden;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1),
		max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	margin-bottom: 0;
	margin-top: 80px;
}

.testimonial-card:hover .testimonial-card__text {
	opacity: 1;
	max-height: 200px;
	margin-bottom: 15px;
}

/* Информация (имя и должность) */
.testimonial-card__info {
	margin-top: auto;
		position: absolute;
		bottom: 0;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.testimonial-card:hover .testimonial-card__info {

	transform: translateY(-170px);
}

.testimonial-card__name {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0;
	color: #1E2832;
	margin-bottom: 8px;
	transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.testimonial-card__position {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
	transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.testimonial-card:hover .testimonial-card__name,
.testimonial-card:hover .testimonial-card__position {
	color: #FFFFFF;
}

/* Кнопка */
.testimonials-button-wrapper {
	text-align: center;
	margin-top: 50px;
}

.testimonials-button {
	display: inline-block;
	padding: 8px;
	border: 1px solid #00A3D6;
	border-radius: 100px;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.testimonials-button:hover {
	border-color: #008BB8;
	box-shadow: 0 4px 15px rgba(0, 163, 214, 0.2);
}

.testimonials-button__inner {
	display: block;
	padding: 15px 30px;
	background: #008BB8;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #FFFFFF;
	text-transform: uppercase;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.testimonials-button:hover .testimonials-button__inner {
	background: #00A3D6;
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.testimonials-section {
		padding: 80px 30px;
	}

	.testimonials-slider {
		padding: 25px 0;
	}
}

@media screen and (max-width: 1024px) {
	.testimonials-title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.testimonial-card {
		width: 320px;
		height: 400px;
		padding: 25px 20px;
	}

	.testimonial-card__photo {
		width: 120px;
		height: 120px;
	}

	.testimonial-card:hover .testimonial-card__photo {
		width: 95px;
		height: 95px;
	}
}

@media screen and (max-width: 768px) {
	.testimonials-section {
		padding: 60px 20px;
	}

	.testimonials-title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.testimonial-card {
		width: 280px;
		height: 380px;
		padding: 20px 15px;
	}

	.testimonial-card__photo {
		width: 100px;
		height: 100px;
	}

	.testimonial-card:hover .testimonial-card__photo {
		width: 80px;
		height: 80px;
	}

	.testimonial-card__text {
		font-size: 13px;
		line-height: 16px;
	}

	.testimonial-card__name {
		font-size: 14px;
	}

	.testimonial-card__position {
		font-size: 12px;
		line-height: 14px;
	}
}

@media screen and (max-width: 480px) {
	.testimonials-button {
		width: 100%;
		max-width: 300px;
	}

	.testimonials-button__inner {
		text-align: center;
	}
}


/* ========== ENGINEERING PAGE - HERO SECTION ========== */
.eng-hero {
	position: relative;
	min-height: 625px;
	background: radial-gradient(65.71% 65.71% at 50% 50%, #000000 0%, #1E2832 100%);
	overflow: visible;
	padding-top: 90px;
		margin-bottom: 130px;
}

/* Сетка */
.eng-hero__grid {
	position: absolute;
	top: -1px;
	left: 0;
	right: 0;
	height: 625px;
	display: grid;
	grid-template-columns: repeat(21, 91.43px);
	grid-template-rows: repeat(7, 89.29px);
	z-index: 1;

}

.eng-hero__grid-cell {
	border: 1px solid #19222A;
	border-radius: 4px;
	background: transparent;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	margin: -0.5px 0 0 -0.5px;
	cursor: default;
}

.eng-hero__grid-cell:hover {
	/*background: rgba(87, 194, 228, 0.1);*/
	box-shadow: 4px 4px 95px -1px rgba(21, 58, 73, 0.2) inset;
	border-color: #153A49;
}

/* Контейнер */
.eng-hero__container {
	position: relative;
	z-index: 2;
	max-width: 1840px;
	margin: 0 auto;
	padding: 0 40px;
	height: 100%;
}

/* Контент */
.eng-hero__content {
	padding-top: 56px;
	position: relative;
	z-index: 3;
}

.eng-hero__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 160px;
	line-height: 160px;
	letter-spacing: -0.05em;
	text-transform: uppercase;
	color: #FFFFFF;
	margin: 0 0 31px 0;
}

.eng-hero__subtitle {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 22px;
	line-height: 26px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #FFFFFF;
	max-width: 731px;
	margin-bottom: 32px;
}

/* Кнопка */
.eng-hero__button {
	display: inline-block;
	padding: 6px;
	background: transparent;
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-hero__button:hover {
	border-color: #66FAFF;
	box-shadow: 0 0 20px rgba(102, 250, 255, 0.3);
}

.eng-hero__button-inner {
	display: block;
	padding: 15px 25px;
	background: #66FAFF;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
	text-transform: uppercase;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-hero__button:hover .eng-hero__button-inner {
	background: #8FFBFF;
}

/* Изображение автомобиля */
.eng-hero__car {
	position: absolute;
	right: 0;
	top: 202px;
	width: 1065px;
	height: 475px;
	z-index: 4;
	pointer-events: none;
}

.eng-hero__car-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: auto;
}

/* Силуэт - виден при загрузке, исчезает */
.eng-hero__car-image--silhouette {
	opacity: 1;
	animation: fadeOutSilhouette 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0.3s forwards;
}

@keyframes fadeOutSilhouette {
	to {
		opacity: 0;
	}
}

/* Основное фото - проявляется после загрузки */
.eng-hero__car-image--main {
	opacity: 0;
	animation: fadeInMain 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0.5s forwards;
}

@keyframes fadeInMain {
	to {
		opacity: 1;
	}
}

/* Подсветка - проявляется при наведении на область автомобиля */
/* Подсветка - мягкое проявление при наведении, плавное исчезновение с задержкой */
.eng-hero__car-image--highlight {
	opacity: 0;
	transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1),
		opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.3s;
			position: relative;
				left: 3px;
				top: 3px;
}

.eng-hero__car:hover .eng-hero__car-image--highlight {
	opacity: 1;
	transition: opacity 0.6s ease;

}
.eng-hero__car:hover {
	cursor: pointer;
}

/* Попап */
.eng-popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		visibility 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-popup.active {
	opacity: 1;
	visibility: visible;
}

.eng-popup__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.eng-popup__content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0.9);
	width: 90%;
	max-width: 500px;
	background: #1E2832;
	border: 1px solid #57C2E4;
	border-radius: 8px;
	padding: 40px;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-popup.active .eng-popup__content {
	transform: translate(-50%, -50%) scale(1);
}

.eng-popup__close {
	position: absolute;
	top: 15px;
	right: 15px;
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-popup__close:hover {
	transform: rotate(90deg);
}

.eng-popup__form {
	color: var(--color-white);
}

/* Адаптив */
@media screen and (max-width: 1600px) {
	.eng-hero__title {
		font-size: 120px;
		line-height: 120px;
	}

	.eng-hero__car {
		width: 850px;
		height: 380px;
		top: 250px;
	}
}

@media screen and (max-width: 1400px) {
	.eng-hero__title {
		font-size: 100px;
		line-height: 100px;
	}

	.eng-hero__subtitle {
		font-size: 18px;
		line-height: 22px;
		max-width: 550px;
	}

	.eng-hero__car {
		width: 700px;
		height: 320px;
		top: 280px;
	}
}

@media screen and (max-width: 1200px) {
	.eng-hero__title {
		font-size: 80px;
		line-height: 80px;
	}

	.eng-hero__car {
		width: 550px;
		height: 260px;
		top: 320px;
	}
}

@media screen and (max-width: 1024px) {
	.eng-hero {
		min-height: 600px;
		padding-top: 60px;
	}

	.eng-hero__grid {
		top: 60px;
		height: 500px;
	}

	.eng-hero__title {
		font-size: 60px;
		line-height: 60px;
	}

	.eng-hero__subtitle {
		font-size: 16px;
		line-height: 20px;
	}

	.eng-hero__car {
		position: relative;
		top: 0;
		right: auto;
		width: 100%;
		max-width: 600px;
		height: 280px;
		margin-top: 40px;
	}
}

@media screen and (max-width: 768px) {
	.eng-hero {
		min-height: 500px;
		padding-top: 60px;
	}

	.eng-hero__container {
		padding: 0 20px;
	}

	.eng-hero__content {
		padding-top: 30px;
	}

	.eng-hero__title {
		font-size: 48px;
		line-height: 48px;
		margin-bottom: 20px;
	}

	.eng-hero__subtitle {
		font-size: 14px;
		line-height: 18px;
		margin-bottom: 25px;
		text-transform: none;
	}

	.eng-hero__car {
		height: 220px;
		margin-top: 30px;
	}

	.eng-popup__content {
		padding: 30px 20px;
	}
}

@media screen and (max-width: 480px) {
	.eng-hero__title {
		font-size: 36px;
		line-height: 36px;
	}

	.eng-hero__car {
		height: 180px;
	}
}


/* ========== ENGINEERING SERVICES SECTION ========== */
.eng-services {
	background: #FFFFFF;
	padding: 40px 40px;
}

.eng-services__container {
	max-width: 1840px;
	margin: 0 auto;
}

.eng-services__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

/* Сетка */
.eng-services__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

/* Карточка услуги */
.eng-service-card {
	background: #F4F5F7;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
	padding: 30px;
	position: relative;
	border-left: 1px solid;
	border-image-source: linear-gradient(180deg, #197E9E 0%, rgba(25, 126, 158, 0) 100%);
	border-image-slice: 1;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-service-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

/* Заголовок с левой полоской */
.eng-service-card__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 20px;
	line-height: 24px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #1E2832;
	margin: 0 0 25px 0;
	padding-left: 35px;
	position: relative;
}

.eng-service-card__title::before {
	content: '';
	position: absolute;
	left: -31px;
	top: 0;
	width: 5px;
	height: 100%;
	background: #197E9E;
}

/* Список */
.eng-service-card__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.eng-service-card__list li {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
	margin-bottom: 14px;
	padding-left: 16px;
	position: relative;
}

.eng-service-card__list li:last-child {
	margin-bottom: 0;
}

.eng-service-card__list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #C7C7C7;
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.eng-services__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 25px;
	}
}

@media screen and (max-width: 1024px) {
	.eng-services {
		padding: 60px 30px;
	}

	.eng-services__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}
}

@media screen and (max-width: 768px) {
	.eng-services {
		padding: 50px 20px;
	}

	.eng-services__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.eng-services__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.eng-service-card {
		padding: 25px;
	}

	.eng-service-card__title {
		font-size: 18px;
		line-height: 22px;
		padding-left: 30px;
	}

	.eng-service-card__title::before {
		left: -26px;
	}
}

@media screen and (max-width: 480px) {
	.eng-service-card {
		padding: 20px;
	}

	.eng-service-card__title {
		font-size: 16px;
		line-height: 20px;
		margin-bottom: 20px;
	}

	.eng-service-card__list li {
		font-size: 13px;
		line-height: 15px;
		margin-bottom: 12px;
	}
}


/* ========== ENGINEERING STAGES SECTION ========== */
.eng-stages {
	background: #FFFFFF;
	padding: 80px 40px;
}

.eng-stages__container {
	max-width: 1840px;
	margin: 0 auto;
}

.eng-stages__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

/* Сетка */
.eng-stages__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 30px;
}

/* Этап */
.eng-stage {
	display: flex;
	flex-direction: column;
}

.eng-stage__header {
	margin-bottom: 25px;
}

/* Номер */
.eng-stage__number {
	width: 100px;
	height: 100px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
}

.eng-stage__number span {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 24px;
	line-height: 28px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #9D9D9D;
}

/* Заголовок этапа */
.eng-stage__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #1E2832;
	margin: 0 0 20px 0;
}

/* Список */
.eng-stage__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

/* Обычный пункт */
.eng-stage__list-item {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
	padding-left: 14px;
	position: relative;
}

.eng-stage__list-item:not(.eng-stage__list-item--highlight)::before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #1E2832;
}

/* Выделенный пункт */
.eng-stage__list-item--highlight {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 14px 8px;
	background: #F4F5F7;
	border-top: 1px solid #C7C7C7;
	border-bottom: 1px solid #C7C7C7;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #005D7B;
}

.eng-stage__list-item--highlight::before {
	display: none;
}

.eng-stage__marker {
	flex-shrink: 0;
	width: 10px;
	height: 16px;
	margin-right: 4px;
}

.eng-stage__list-item--highlight span {
	flex: 1;
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.eng-stages__grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 25px;
	}
}

@media screen and (max-width: 1024px) {
	.eng-stages {
		padding: 60px 30px;
	}

	.eng-stages__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.eng-stages__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 768px) {
	.eng-stages {
		padding: 50px 20px;
	}

	.eng-stages__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.eng-stages__grid {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.eng-stage__number {
		width: 80px;
		height: 80px;
	}

	.eng-stage__number span {
		font-size: 20px;
		line-height: 24px;
	}

	.eng-stage__title {
		font-size: 16px;
		line-height: 18px;
	}
}

@media screen and (max-width: 480px) {
	.eng-stage__list-item--highlight {
		font-size: 13px;
		line-height: 15px;
		padding: 12px 8px;
	}
}

/* Hover эффект для этапа */
.eng-stage {
	display: flex;
	flex-direction: column;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-stage:hover {
	transform: translateY(-8px) !important;
}

/* Номер - увеличение при наведении */
.eng-stage__number {
	width: 100px;
	height: 100px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-stage:hover .eng-stage__number {
	transform: scale(1.15);
}


/* ========== ENGINEERING CASES SECTION ========== */
.eng-cases {
	background-color: #F4F5F7;
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: 962px 430px;
	min-height: 991px;
	padding: 80px 40px 180px;
	overflow: hidden;
	position: relative;
}

.eng-cases__container {
	max-width: 1840px;
	margin: 0 auto;
	position: relative;
	z-index: 14;
}

.eng-cases__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

/* Слайдер */
.eng-cases__slider {
	margin: 0 -10px;
	display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
}

.eng-cases__slider .slick-list {
	overflow: visible;
	margin: 0 -10px;
}

.eng-cases__slider .slick-slide {
	width: 444px !important;
		padding: 0 10px;
		height: auto;
		box-sizing: border-box;
}

.eng-cases__slider .slick-track {
	display: flex;

}


/* Карточка кейса */
.eng-case-card {
	background: #FFFFFF;
	border-radius: 4px;
	border-bottom: 1px solid #D9D9D9;
	padding: 20px 0px;
	height: fit-content%;
	width: 445px;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
		position: relative;
		z-index: 11;
}

.eng-case-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

/* Заголовок карточки */
.eng-case-card__header {
	display: flex;
	align-items: center;
	gap: 15px;

	padding-left: 20px;
	padding-right: 20px;
}

.eng-case-card__number {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	border: 1px solid #C7C7C7;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-case-card:hover .eng-case-card__number {
	border-color: #197E9E;
	transform: scale(1.08);
}

.eng-case-card__number span {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 24px;
	line-height: 28px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #8B93A7;
	transition: color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-case-card:hover .eng-case-card__number span {
	color: #197E9E;
}

.eng-case-card__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #197E9E;
	flex: 1;
}

/* Параметры */
.eng-case-card__params {
	display: flex;
	flex-direction: column;
}

.eng-case-param {
	padding: 11px 20px;
	border-bottom: 1px solid #E0E0E0;
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.eng-case-param:last-child {
	border-bottom: none;
}

.eng-case-param__label {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 12px;
	line-height: 12px;
	letter-spacing: 0;
	color: #8B93A7;

}

.eng-case-param__value {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
}

/* Выделенный параметр */
.eng-case-param--highlight {
	background: #E7EAEE;
	padding: 15px 20px;
	margin: 0;
	border-bottom: 1px solid #C7C7C7;
}

.eng-case-param--highlight .eng-case-param__value {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 1;
}

/* Навигация */
.eng-cases__nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 40px;
}

.eng-cases::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 75px;
	background: #1E2832;
}

/* Dots */
.eng-cases__dots {
	display: flex;
	gap: 10px;
}

.eng-cases__dots .slick-dots {
	position: static;
	display: flex;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.eng-cases__dots .slick-dots li {
	margin: 0;
}

.eng-cases__dots .slick-dots li button {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 1px solid #197E9E;
	border-radius: 50%;
	background: transparent;
	font-size: 0;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-cases__dots .slick-dots li.slick-active button {
	background: #197E9E;
	transform: scale(1.3);
}

/* Стрелки */
.eng-cases__arrows {
	display: flex;
	gap: 15px;
}

.eng-cases__arrow {
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-cases__arrow:hover {
	transform: scale(1.1);
}

.eng-cases__arrow--prev:hover {
	transform: translateX(-3px) scale(1.1);
}

.eng-cases__arrow--next:hover {
	transform: translateX(3px) scale(1.1);
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.eng-cases {
		background-size: 700px auto;
	}
}

@media screen and (max-width: 1024px) {
	.eng-cases {
		padding: 60px 30px 140px;
		min-height: auto;
		background-size: 600px auto;
	}

	.eng-cases__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}
}

@media screen and (max-width: 768px) {
	.eng-cases {
		padding: 50px 20px 120px;
		background-size: 400px auto;
	}

	.eng-cases__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.eng-case-card__title {
		font-size: 16px;
		line-height: 18px;
	}

	.eng-case-card__number {
		width: 50px;
		height: 50px;
	}

	.eng-case-card__number span {
		font-size: 20px;
	}
}

@media screen and (max-width: 480px) {
	.eng-cases {
		background-size: 300px auto;
	}
}

/* Owl Carousel */
.eng-cases__slider {
	width: 100%;
}

.eng-cases__slider .owl-stage-outer {
	overflow: visible;
}

.eng-cases__slider .owl-stage {
	display: flex;
}

.eng-cases__slider .owl-item {
	float: none;
}

/* Карточка */
.eng-case-card {
	background: #FFFFFF;
	border-radius: 4px;
	border-bottom: 1px solid #D9D9D9;

	display: flex;
	flex-direction: column;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-sizing: border-box;
	height: fit-content%;
}

.eng-case-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

/* Точки */
.eng-cases__dots {
	display: flex;
	gap: 10px;
	justify-content: flex-start;
}

.eng-cases__dots .owl-dot {
	width: 10px;
	height: 10px;
	border: 1px solid #197E9E;
	border-radius: 50%;
	background: transparent;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	margin: 0;
}

.eng-cases__dots .owl-dot.active {
	background: #197E9E;
	transform: scale(1.3);
}

.eng-cases__dots .owl-dot span {
	display: none;
}

/* Стрелки */
.eng-cases__arrows {
	display: flex;
	gap: 15px;
}

.eng-cases__arrows button {
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-cases__arrows button:hover {
	transform: scale(1.1);
}

.eng-cases__arrows button.disabled {
	opacity: 0.4;
	cursor: default;
}

.eng-cases__arrows button svg {
	display: block;
}

/* Навигация */
.eng-cases__nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 40px;
}

.eng-case-card__params strong {
	color: #197E9E;
		font-family: 'Halvar Breitschrift Medium';
		font-weight: 500;
}


.portfolio-button-wrapper {
	margin-top: 60px;
	text-align: left;
}

.portfolio-button-wrapper .port-button {
	display: inline-block;
	padding: 6px;
	background: transparent;
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.portfolio-button-wrapper .port-button:hover {
	border-color: #66FAFF;
	box-shadow: 0 0 20px rgba(102, 250, 255, 0.3);
}

.portfolio-button-wrapper .port-button .hero-port-button__inner {
	display: block;
	padding: 15px 30px;
	background: #66FAFF;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;

	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.portfolio-button-wrapper .port-button:hover .hero-port-button__inner {
	background: #8FFBFF;
}


.page-template-page-engineering .portfolio-section {
	min-height: 1160px;
}


/* ========== ENGINEERING NUMBERS SECTION ========== */
.eng-numbers {
	position: relative;
	background: #FFFFFF;
	padding: 160px 40px;
	overflow: hidden;
}

.eng-numbers__bg {
	position: absolute;
	top: 55%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 700px;
	height: 700px;
	pointer-events: none;
	z-index: 1;
}

.eng-numbers__bg svg {
	width: 100%;
	height: 100%;
}

.eng-numbers__container {
	position: relative;
	z-index: 2;
	max-width: 1840px;
	margin: 0 auto;
}

.eng-numbers__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	text-align: center;
	margin-bottom: 60px;
}

/* Сетка */
.eng-numbers__grid {
	display: flex;
	justify-content: center;
	gap: 0;
}

/* Круг */
.eng-number-circle {
	position: relative;
	width: 368px;
	height: 368px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid #C7C7C7;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;

	transition: transform 1.1s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.9s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-number-circle:first-child {
	margin-left: 0;
}

.eng-number-circle:hover {
	transform: translateY(-8px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
	z-index: 10;
}

/* Точечный узор (создаётся JS) */
.eng-number-circle__dots {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	pointer-events: none;
}

.eng-dot {
	position: absolute;
	width: 1px;
	height: 1px;
	background: #C7C7C7;
	border-radius: 50%;
	transform-origin: center;
	transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-number-circle:hover .eng-dot {
	height: 20px;
}

/* Контент */
.eng-number-circle__content {
	text-align: center;
	padding: 20px;
	z-index: 2;
}

.eng-number-circle__value {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 2px;
	margin-bottom: 5px;
}

.eng-number-circle__prefix,
.eng-number-circle__suffix {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 50px;
	line-height: 48px;
	color: #197E9E;
}

.eng-number-circle__number {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 50px;
	line-height: 48px;
	color: #197E9E;
}

.eng-number-circle__label {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 16px;
	letter-spacing: 0;
	color: #197E9E;
	margin-bottom: 10px;
}

.eng-number-circle__desc {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	text-align: center;
	color: #1E2832;
	max-width: 250px;
	margin: 0 auto;
}

/* Адаптив */
@media screen and (max-width: 1600px) {
	.eng-number-circle {
		width: 320px;
		height: 320px;
		margin-left: -15px;
	}

	.eng-number-circle__number {
		font-size: 40px;
		line-height: 38px;
	}

	.eng-number-circle__label {
		font-size: 16px;
	}
}

@media screen and (max-width: 1400px) {
	.eng-numbers__grid {
		flex-wrap: wrap;
		gap: 20px;
		justify-content: center;
	}

	.eng-number-circle {
		margin-left: 0;
	}
}

@media screen and (max-width: 1024px) {
	.eng-numbers {
		padding: 60px 30px;
	}

	.eng-numbers__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.eng-numbers__bg {
		width: 500px;
		height: 500px;
	}
}

@media screen and (max-width: 768px) {
	.eng-numbers {
		padding: 50px 20px;
	}

	.eng-numbers__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.eng-numbers__bg {
		width: 350px;
		height: 350px;
	}

	.eng-numbers__grid {
		gap: 15px;
	}

	.eng-number-circle {
		width: 280px;
		height: 280px;
	}

	.eng-number-circle__number {
		font-size: 36px;
		line-height: 34px;
	}
}

@media screen and (max-width: 480px) {
	.eng-number-circle {
		width: 260px;
		height: 260px;
	}

	.eng-number-circle__number {
		font-size: 32px;
		line-height: 30px;
	}

	.eng-number-circle__desc {
		font-size: 12px;
		line-height: 14px;
	}
}


.eng-number-circle__dots-svg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	opacity: 0;
	pointer-events: none;
	transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-number-circle__dots-svg circle {
	transition: stroke 0.4s cubic-bezier(0.4, 0, 0.2, 1),
		stroke-opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.eng-number-circle:hover .eng-number-circle__dots-svg {
	opacity: 1;
	transform: rotate(180deg);
}

.eng-number-circle:hover .eng-number-circle__dots-svg circle {
	stroke: #C7C7C7;
	stroke-opacity: 0.5;
}


#engPopup .eng-popup__content {
	background-color: #1E2832;
	padding: 40px 50px;
	width: 641px;
	max-width: 100%;
	border: none;
}

.eng-popup__form .order-form-field {
	flex-basis: 541px;
}
.eng-popup__form .order-form-row--message {
	width: fit-content;
	margin-right: 0;
	margin-top: -0px;
	width: 539px;
	max-width: 100%;
}

#engPopup .order-form-row {gap: 10px;}
#engPopup .order-form-checkbox {gap: 1px;}

#engPopup h3 {font-family: 'Halvar Breitschrift Light';
	text-transform: uppercase;
	margin-bottom: 3px;
font-size: 28px;}
#engPopup p.podtext {font-family: 'Halvar Breitschrift Light';
font-size: 18px;}


/* ========== TOOLING PAGE - HERO SECTION ========== */
.tool-hero {
	position: relative;
	height: 625px;
	background: radial-gradient(65.71% 65.71% at 50% 50%, #000000 0%, #1E2832 100%);
	overflow: visible;
	padding-top: 90px;
}

.tool-hero__grid {
	position: absolute;
	top: 0px;
	left: 0;
	right: 0;
	height: 625px;
	display: grid;
	grid-template-columns: repeat(21, 91.43px);
	grid-template-rows: repeat(7, 89.29px);
	z-index: 1;
}

.tool-hero__grid-cell {
	border: 1px solid #61696F;
	border-radius: 4px;
	background: transparent;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	margin: -0.5px 0 0 -0.5px;
}

.tool-hero__grid-cell:hover {
	background: rgba(87, 194, 228, 0.1);
	border-color: #1E2832;
}

.tool-hero__container {
	position: relative;
	z-index: 2;
	max-width: 1840px;
	margin: 0 auto;

	height: 100%;
}

.tool-hero__content {
	padding-top: 56px;
	position: relative;
	z-index: 3;
}

.tool-hero__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 86px;
	line-height: 84px;
	letter-spacing: -0.05em;
	text-transform: uppercase;
	color: #FFFFFF;
	margin: -20px 0 21px 0;
	max-width: 900px;
}

.tool-hero__subtitle {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 22px;
	line-height: 26px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #FFFFFF;
	max-width: 731px;
	margin-bottom: 30px;
}

.tool-hero__button {
	display: inline-block;
	padding: 6px;
	background: transparent;
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-hero__button:hover {
	border-color: #66FAFF;
	box-shadow: 0 0 20px rgba(102, 250, 255, 0.3);
}

.tool-hero__button-inner {
	display: block;
	padding: 15px 25px;
	background: #66FAFF;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
	text-transform: uppercase;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-hero__button:hover .tool-hero__button-inner {
	background: #8FFBFF;
}

/* Изображение станка */
.tool-hero__machine {
	position: absolute;
right: 40px;
	top: 49px;
	width: 888px;
	height: 644px;
	z-index: 4;
	pointer-events: none;
}

.tool-hero__machine-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: auto;
}

.tool-hero__machine-image--silhouette {
	opacity: 1;
		position: absolute;
			left: 233px;
			top: 27px;
			width: auto;
			height: auto;
	animation: toolFadeOut 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0.4s forwards;
}

@keyframes toolFadeOut {
	to {
		opacity: 0;
	}
}

.tool-hero__machine-image--main {
	opacity: 0;
	animation: toolFadeIn 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0.5s forwards;
}

@keyframes toolFadeIn {
	to {
		opacity: 1;
	}
}

.tool-hero__machine-image--highlight {
	opacity: 0;
	transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1);
	position: absolute;
		left: 233px;
		top: 27px;
		width: auto;
		height: auto;
}

.tool-hero__machine:hover .tool-hero__machine-image--highlight {
	opacity: 1;
}

.tool-hero__machine:not(:hover) .tool-hero__machine-image--highlight {
	transition: opacity 1s cubic-bezier(0.4, 0, 1, 1) 0.2s;
}

/* Попап */
.tool-popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		visibility 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-popup.active {
	opacity: 1;
	visibility: visible;
}

.tool-popup__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.tool-popup__content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0.9);
	width: 90%;
	max-width: 500px;
	background: #1E2832;
	border: 1px solid #57C2E4;
	border-radius: 8px;
	padding: 40px;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-popup.active .tool-popup__content {
	transform: translate(-50%, -50%) scale(1);
}

.tool-popup__close {
	position: absolute;
	top: 15px;
	right: 15px;
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-popup__close:hover {
	transform: rotate(90deg);
}

.tool-popup__form {
	color: var(--color-white);
}

/* Адаптив */
@media screen and (max-width: 1600px) {
	.tool-hero__title {
		font-size: 80px;
		line-height: 80px;
	}

	.tool-hero__machine {
		width: 750px;
		height: 544px;
		top: 180px;
	}
}

@media screen and (max-width: 1400px) {
	.tool-hero__title {
		font-size: 64px;
		line-height: 64px;
		max-width: 700px;
	}

	.tool-hero__subtitle {
		font-size: 18px;
		line-height: 22px;
		max-width: 550px;
	}

	.tool-hero__machine {
		width: 600px;
		height: 435px;
		top: 220px;
	}
}

@media screen and (max-width: 1200px) {
	.tool-hero__title {
		font-size: 52px;
		line-height: 52px;
	}

	.tool-hero__machine {
		width: 500px;
		height: 363px;
		top: 260px;
	}
}

@media screen and (max-width: 1024px) {
	.tool-hero {
		min-height: 600px;
		padding-top: 60px;
	}

	.tool-hero__grid {
		top: 60px;
		height: 500px;
	}

	.tool-hero__title {
		font-size: 42px;
		line-height: 42px;
	}

	.tool-hero__subtitle {
		font-size: 16px;
		line-height: 20px;
	}

	.tool-hero__machine {
		position: relative;
		top: 0;
		right: auto;
		width: 100%;
		max-width: 500px;
		height: 363px;
		margin-top: 40px;
	}
}

@media screen and (max-width: 768px) {
	.tool-hero {
		min-height: 500px;
		padding-top: 60px;
	}

	.tool-hero__container {
		padding: 0 20px;
	}

	.tool-hero__content {
		padding-top: 30px;
	}

	.tool-hero__title {
		font-size: 36px;
		line-height: 38px;
		margin-bottom: 20px;
	}

	.tool-hero__subtitle {
		font-size: 14px;
		line-height: 18px;
		margin-bottom: 25px;
		text-transform: none;
	}

	.tool-hero__machine {
		height: 280px;
		margin-top: 30px;
	}

	.tool-popup__content {
		padding: 30px 20px;
	}
}

@media screen and (max-width: 480px) {
	.tool-hero__title {
		font-size: 30px;
		line-height: 32px;
	}

	.tool-hero__machine {
		height: 220px;
	}
}


/* ========== TOOL PRODUCTION SECTION ========== */
.tool-production {
	margin-top: 120px;
	background: #FFFFFF;
	padding: 80px 40px;
}

.tool-production__container {
	max-width: 1840px;
	margin: 0 auto;
}

.tool-production__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

/* Сетка */
.tool-production__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 10px;
}

/* Карточка */
.tool-prod-card {
	background: #F4F5F7;
	border-radius: 4px;
	border-bottom: 1px solid #D9D9D9;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	overflow: hidden;
}

.tool-prod-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* Изображение */
.tool-prod-card__image {
	height: 260px;
	overflow: hidden;
}

.tool-prod-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-prod-card:hover .tool-prod-card__image img {
	transform: scale(1.05);
}

/* Тело карточки */
.tool-prod-card__body {
	padding: 20px 20px 0;
	flex: 1;
}

.tool-prod-card__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #197E9E;
	margin: 0 0 12px 0;
}

.tool-prod-card__label {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 12px;
	line-height: 12px;
	letter-spacing: 0;
	color: #8B93A7;
	margin-bottom: 8px;
	text-transform: lowercase;
}

.tool-prod-card__desc {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
}

/* Футер карточки */
.tool-prod-card__footer {
	border-top: 1px solid #E0E0E0;
	border-radius: 0 0 4px 4px;
	padding: 15px 20px;
	margin-top: 15px;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-prod-card:hover .tool-prod-card__footer {
	background: #EBEEF2;
}

.tool-prod-card__footer-label {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 12px;
	line-height: 12px;
	letter-spacing: 0;
	color: #8B93A7;
	margin-bottom: 5px;
}

.tool-prod-card__footer-value {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.tool-production__grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 15px;
	}
}

@media screen and (max-width: 1024px) {
	.tool-production {
		padding: 60px 30px;
	}

	.tool-production__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.tool-production__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 768px) {
	.tool-production {
		padding: 50px 20px;
	}

	.tool-production__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.tool-production__grid {
		grid-template-columns: 1fr;
		gap: 20px;
		max-width: 400px;
		margin: 0 auto;
	}

	.tool-prod-card__image {
		height: 220px;
	}

	.tool-prod-card__title {
		font-size: 16px;
		line-height: 18px;
	}
}


/* ========== TOOL STAGES SECTION ========== */
.tool-stages {
	background: #FFFFFF;
	padding: 80px 40px;
}

.tool-stages__container {
	max-width: 1840px;
	margin: 0 auto;
}

.tool-stages__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

.tool-stages__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 10px;
}

/* Этап */
.tool-stage {
	display: flex;
	flex-direction: column;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	max-width: 281px;
}

.tool-stage:hover {
	transform: translateY(-8px);
}

.tool-stage__header {
	margin-bottom: 25px;
}

.tool-stage__number {
	width: 100px;
	height: 100px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-stage:hover .tool-stage__number {
	transform: scale(1.15);
}

.tool-stage__number span {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 24px;
	line-height: 28px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #9D9D9D;
}

.tool-stage__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #1E2832;
	margin: 0 0 20px 0;
}

.tool-stage__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.tool-stage__list-item {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
	padding-left: 14px;
	position: relative;
}

.tool-stage__list-item:not(.tool-stage__list-item--highlight)::before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #1E2832;
}

.tool-stage__list-item--highlight {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 14px 8px;
	background: #F4F5F7;
	border-top: 1px solid #C7C7C7;
	border-bottom: 1px solid #C7C7C7;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #005D7B;
}

.tool-stage__list-item--highlight::before {
	display: none;
}

.tool-stage__marker {
	flex-shrink: 0;
	width: 10px;
	height: 16px;
	margin-right: 4px;
}

.tool-stage__list-item--highlight span {
	flex: 1;
}

/* Адаптив */
@media screen and (max-width: 1600px) {
	.tool-stages__grid {
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
	}
}

@media screen and (max-width: 1200px) {
	.tool-stages__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media screen and (max-width: 1024px) {
	.tool-stages {
		padding: 60px 30px;
	}

	.tool-stages__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.tool-stages__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 768px) {
	.tool-stages {
		padding: 50px 20px;
	}

	.tool-stages__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.tool-stages__grid {
		grid-template-columns: 1fr;
	}

	.tool-stage__number {
		width: 80px;
		height: 80px;
	}

	.tool-stage__number span {
		font-size: 20px;
		line-height: 24px;
	}

	.tool-stage__title {
		font-size: 16px;
		line-height: 18px;
	}
}

@media screen and (max-width: 480px) {
	.tool-stage__list-item--highlight {
		font-size: 13px;
		line-height: 15px;
		padding: 12px 8px;
	}
}


/* ========== TOOL CASES SECTION ========== */
.tool-cases {
	position: relative;
	background-color: #F4F5F7;
	min-height: 800px;
	padding: 80px 40px 180px;
	overflow: hidden;
}

.tool-cases__bg-image {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 889px;
	height: 421px;
	object-fit: contain;
	z-index: 1;
	pointer-events: none;
}

.tool-cases__container {
	position: relative;
	z-index: 2;
	max-width: 1840px;
	margin: 0 auto;
}

.tool-cases__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

/* Owl Carousel */
.tool-cases__slider {
	width: 100%;
}

.tool-cases__slider .owl-stage-outer {
	overflow: visible;
}

.tool-cases__slider .owl-stage {
	display: flex;
}

.tool-cases__slider .owl-item {
	float: none;
}

/* Карточка */
.tool-case-card {
	background: #E7EAEE;
	border-radius: 4px;
	border-bottom: 1px solid #BFBFBF;
	padding: 25px;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		background 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-sizing: border-box;
	height: fit-content;
	width: 352px;
	max-width: 100%;
}

.tool-case-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
	background: #DDE1E6;
}

/* Заголовок карточки */
.tool-case-card__header {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
}

.tool-case-card__number {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	border: 1px solid #C7C7C7;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	background: #FFFFFF;
	transition: border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-case-card:hover .tool-case-card__number {
	border-color: #197E9E;
	transform: scale(1.08);
}

.tool-case-card__number span {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 24px;
	line-height: 28px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #8B93A7;
}

.tool-case-card__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #197E9E;
	flex: 1;
}

/* Описание */
.tool-case-card__desc {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
	flex: 1;
}

/* Навигация */
.tool-cases__nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 40px;
}

.tool-cases__dots {
	display: flex;
	gap: 10px;
}

.tool-cases__dots .owl-dot {
	width: 10px;
	height: 10px;
	border: 1px solid #197E9E;
	border-radius: 50%;
	background: transparent;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	margin: 0;
}

.tool-cases__dots .owl-dot.active {
	background: #197E9E;
	transform: scale(1.3);
}

.tool-cases__dots .owl-dot span {
	display: none;
}

.tool-cases__arrows {
	display: flex;
	gap: 15px;
}

.tool-cases__arrows button {
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-cases__arrows button:hover {
	transform: scale(1.1);
}

.tool-cases__arrows button.disabled {
	opacity: 0.4;
	cursor: default;
}

.tool-cases__arrows button svg {
	display: block;
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.tool-cases__bg-image {
		width: 700px;
		height: 332px;
	}
}

@media screen and (max-width: 1024px) {
	.tool-cases {
		padding: 60px 30px 140px;
		min-height: auto;
	}

	.tool-cases__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.tool-cases__bg-image {
		width: 550px;
		height: 261px;
	}
}

@media screen and (max-width: 768px) {
	.tool-cases {
		padding: 50px 20px 120px;
	}

	.tool-cases__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.tool-cases__bg-image {
		width: 400px;
		height: 190px;
	}

	.tool-case-card {
		padding: 20px;
	}

	.tool-case-card__title {
		font-size: 16px;
		line-height: 18px;
	}

	.tool-case-card__number {
		width: 50px;
		height: 50px;
	}

	.tool-case-card__number span {
		font-size: 20px;
	}
}

@media screen and (max-width: 480px) {
	.tool-cases__bg-image {
		width: 300px;
		height: 142px;
	}
}
.tool-cases::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 88px;
	bottom: 0;
	left: 0;
	background-color: rgba(30, 40, 50, 1);
}

/* ========== TOOL PORTFOLIO SECTION ========== */
.tool-portfolio {
	background: #1E2832;
	min-height: 1000px;
	padding: 10px 40px 100px;
	max-width: 1920px;
	margin: 0 auto;
	overflow: hidden;
}

.tool-portfolio__container {
	max-width: 1845px;
	margin: 0 auto;
}

.tool-portfolio__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #FFFFFF;
	margin-bottom: 60px;
	margin-top: 30px;
}

.tool-portfolio__grid {
	display: grid;
	grid-template-columns: repeat(5, 369px);
	gap: 0;
	grid-auto-flow: dense;
	justify-content: flex-start;
}

/* Базовый элемент */
.tool-pf-item {
	position: relative;
	width: 369px;
	height: 416px;
	background: transparent;
	transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	grid-column: span 1;
	grid-row: span 1;
	box-sizing: border-box;
	cursor: default;
}

.tool-pf-item:not(.tool-pf-item--empty):not(.tool-pf-item--link) {
	border: 1px solid #455C73;
	margin: -0.5px 0 0 -0.5px;
}

.tool-pf-item:not(.tool-pf-item--empty):not(.tool-pf-item--link):hover {
	background: linear-gradient(180deg, #222E39 0%, #324253 100%);
	cursor: pointer;
	z-index: 2;
}

/* Контент */
.tool-pf-item__content {
	padding: 30px;
	height: 100%;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
}

.tool-pf-item__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 22px;
	line-height: 24px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #57C2E4;
	margin: 0 0 20px 0;
	flex-shrink: 0;
}

.tool-pf-item__image-wrapper {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	min-height: 0;
}

.tool-pf-item__image {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	display: block;
	object-fit: contain;
	transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-pf-item__image--silhouette {
	opacity: 1;
}

.tool-pf-item__image--photo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
}

.tool-pf-item:hover .tool-pf-item__image--silhouette {
	opacity: 0;
}

.tool-pf-item:hover .tool-pf-item__image--photo {
	opacity: 1;
}

/* Крупный элемент */
.tool-pf-item--large {
	width: 738px;
	height: 832px;
	grid-column: span 2;
	grid-row: span 2;
}

.tool-pf-item--large .tool-pf-item__content {
	padding: 40px;
}

.tool-pf-item--large .tool-pf-item__title {
	font-size: 28px;
	line-height: 32px;
}

/* Пустой элемент */
.tool-pf-item--empty {
	border: none !important;
	background: transparent !important;
	pointer-events: none;
	margin: 0;
}

/* Ссылочный элемент */
.tool-pf-item--link {
	border: none;
	background: transparent;
	display: flex;
	align-items: center;
	margin: 0;
	margin-left: 40px;
transform: translateY(40px);
}

.tool-pf-item__link {
	display: flex;
	flex-direction: column;
	gap: 10px;
	text-decoration: none;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	padding: 0 30px 30px 30px;
}

.tool-pf-item__link:hover {
	transform: translateX(10px);
}

.tool-pf-item__link-text {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 24px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #FFFFFF;
}

.tool-pf-item__link-arrow {
	display: block;
}

.tool-pf-item__link-arrow svg path {
	transition: fill 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-pf-item__link:hover .tool-pf-item__link-arrow svg path {
	fill: #57C2E4;
}

/* Кнопка */
.tool-portfolio__button-wrapper {
	margin-top: 60px;
}

.tool-pf-button {
	display: inline-block;
	padding: 6px;
	background: transparent;
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-pf-button:hover {
	border-color: #66FAFF;
	box-shadow: 0 0 20px rgba(102, 250, 255, 0.3);
}

.tool-pf-button__inner {
	display: block;
	padding: 15px 30px;
	background: #66FAFF;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
	text-transform: uppercase;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-pf-button:hover .tool-pf-button__inner {
	background: #8FFBFF;
}

/* Адаптив */
@media screen and (max-width: 1920px) {
	.tool-portfolio__grid {
		grid-template-columns: repeat(5, 369px);
	}
}

@media screen and (max-width: 1600px) {
	.tool-portfolio {
		padding: 150px 20px 100px;
	}
}

@media screen and (max-width: 1400px) {
	.tool-portfolio__grid {
		grid-template-columns: repeat(4, 369px);
	}
}

@media screen and (max-width: 1100px) {
	.tool-portfolio__grid {
		grid-template-columns: repeat(3, 369px);
	}

	.tool-portfolio {
		padding: 100px 20px 60px;
		min-height: auto;
	}
}

@media screen and (max-width: 800px) {
	.tool-portfolio__grid {
		grid-template-columns: repeat(2, 369px);
	}
}

@media screen and (max-width: 768px) {
	.tool-portfolio__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}
}

@media screen and (max-width: 760px) {
	.tool-portfolio__grid {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.tool-pf-item--large {
		width: 369px;
		height: 416px;
		grid-column: span 1;
		grid-row: span 1;
	}

	.tool-pf-item--large .tool-pf-item__content {
		padding: 30px;
	}

	.tool-pf-item--large .tool-pf-item__title {
		font-size: 22px;
		line-height: 24px;
	}
}

@media screen and (max-width: 480px) {
	.tool-portfolio {
		padding: 80px 15px 50px;
	}

	.tool-portfolio__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.tool-pf-item {
		width: 100%;
		max-width: 369px;
	}

	.tool-pf-item__link-text {
		font-size: 16px;
	}
}


/* ========== TOOL NUMBERS SECTION ========== */
.tool-numbers {
	position: relative;
	background: #FFFFFF;
	padding: 200px 40px;
	overflow: hidden;
}

.tool-numbers__bg {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 700px;
	height: 700px;
	pointer-events: none;
	z-index: 1;
}

.tool-numbers__bg svg {
	width: 100%;
	height: 100%;
}

.tool-numbers__container {
	position: relative;
	z-index: 2;
	max-width: 1840px;
	margin: 0 auto;
}

.tool-numbers__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	text-align: center;
	margin-bottom: 60px;
}

.tool-numbers__grid {
	display: flex;
	justify-content: center;
	gap: 0;
}

/* Круг */
.tool-number-circle {
	position: relative;
	width: 368px;
	height: 368px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid #C7C7C7;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-left: -0px;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		border-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-number-circle:first-child {
	margin-left: 0;
}

.tool-number-circle:hover {
	transform: translateY(-8px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
	z-index: 10;
	border-color: #197E9E;
}

/* SVG узор */
.tool-number-circle__dots-svg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	pointer-events: none;
	opacity: 0;
	transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-number-circle__dots-svg circle {
	transition: stroke 0.4s cubic-bezier(0.4, 0, 0.2, 1),
		stroke-opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.tool-number-circle:hover .tool-number-circle__dots-svg {
	transform: rotate(180deg);
	opacity: 1;
}

.tool-number-circle:hover .tool-number-circle__dots-svg circle {
	stroke: #197E9E;
	stroke-opacity: 0.5;
}

/* Контент */
.tool-number-circle__content {
	text-align: center;
	padding: 20px;
	z-index: 2;
}

.tool-number-circle__value {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 2px;
	margin-bottom: 5px;
}

.tool-number-circle__prefix,
.tool-number-circle__suffix {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 36px;
	line-height: 48px;
	color: #197E9E;
}

.tool-number-circle__number {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 50px;
	line-height: 48px;
	color: #197E9E;
}

.tool-number-circle:nth-child(4) .tool-number-circle__number {display: none;}
.tool-number-circle:nth-child(5) .tool-number-circle__number {display: none;}

.tool-number-circle__label {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 36px;
	line-height: 16px;
	letter-spacing: 0;
	color: #197E9E;
	margin-bottom: 10px;
}

.tool-number-circle__desc {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	text-align: center;
	color: #1E2832;
	max-width: 250px;
	margin: 0 auto;
}

/* Адаптив */
@media screen and (max-width: 1600px) {
	.tool-number-circle {
		width: 320px;
		height: 320px;
		margin-left: -15px;
	}

	.tool-number-circle__number {
		font-size: 40px;
		line-height: 38px;
	}

	.tool-number-circle__label {
		font-size: 16px;
	}
}

@media screen and (max-width: 1400px) {
	.tool-numbers__grid {
		flex-wrap: wrap;
		gap: 20px;
		justify-content: center;
	}

	.tool-number-circle {
		margin-left: 0;
	}
}

@media screen and (max-width: 1024px) {
	.tool-numbers {
		padding: 60px 30px;
	}

	.tool-numbers__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.tool-numbers__bg {
		width: 500px;
		height: 500px;
	}
}

@media screen and (max-width: 768px) {
	.tool-numbers {
		padding: 50px 20px;
	}

	.tool-numbers__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.tool-numbers__bg {
		width: 350px;
		height: 350px;
	}

	.tool-numbers__grid {
		gap: 15px;
	}

	.tool-number-circle {
		width: 280px;
		height: 280px;
	}

	.tool-number-circle__number {
		font-size: 36px;
		line-height: 34px;
	}
}

@media screen and (max-width: 480px) {
	.tool-number-circle {
		width: 260px;
		height: 260px;
	}

	.tool-number-circle__number {
		font-size: 32px;
		line-height: 30px;
	}

	.tool-number-circle__desc {
		font-size: 12px;
		line-height: 14px;
	}
}

/* ========== EQUIPMENT PAGE - HERO SECTION ========== */
.equip-hero {
	position: relative;
	min-height: 625px;
	background: radial-gradient(65.71% 65.71% at 50% 50%, #000000 0%, #1E2832 100%);
	overflow: visible;
	padding-top: 90px;
}

.equip-hero__grid {
	position: absolute;
	top: -1px;
	left: 0;
	right: 0;
	height: 625px;
	display: grid;
	grid-template-columns: repeat(21, 91.43px);
	grid-template-rows: repeat(7, 89.29px);
	z-index: 1;
}

.equip-hero__grid-cell {
	border: 1px solid #19222A;
	border-radius: 4px;
	background: transparent;
	transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	margin: -0.5px 0 0 -0.5px;
}

.equip-hero__grid-cell:hover {
	background: rgba(87, 194, 228, 0.1);
	border-color: #1E2832;
}

.equip-hero__container {
	position: relative;
	z-index: 2;
	max-width: 1840px;
	margin: 0 auto;
	padding: 0 40px;
	height: 100%;
}

.equip-hero__content {
	padding-top: 56px;
	position: relative;
	z-index: 3;
}

.equip-hero__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 86px;
	line-height: 84px;
	letter-spacing: -0.05em;
	text-transform: uppercase;
	color: #FFFFFF;
	margin: 0 0 21px 0;
	max-width: 900px;
}

.equip-hero__subtitle {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 22px;
	line-height: 26px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #FFFFFF;
	max-width: 913px;
	margin-bottom: 39px;
}

.equip-hero__button {
	display: inline-block;
	padding: 6px;
	background: transparent;
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.equip-hero__button:hover {
	border-color: #66FAFF;
	box-shadow: 0 0 20px rgba(102, 250, 255, 0.3);
}

.equip-hero__button-inner {
	display: block;
	padding: 15px 25px;
	background: #66FAFF;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
	text-transform: uppercase;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.equip-hero__button:hover .equip-hero__button-inner {
	background: #8FFBFF;
}

.equip-hero__machine {
	position: absolute;
	right: 0;
	top: 140px;
	width: 1059px;
	height: 592px;
	z-index: 4;
	pointer-events: none;
}

.equip-hero__machine-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: auto;
}

.equip-hero__machine-image--silhouette {
	opacity: 1;
	animation: equipFadeOut 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0.3s forwards;
}

@keyframes equipFadeOut {
	to {
		opacity: 0;
	}
}

.equip-hero__machine-image--main {
	opacity: 0;
	animation: equipFadeIn 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0.5s forwards;
}

@keyframes equipFadeIn {
	to {
		opacity: 1;
	}
}

.equip-hero__machine-image--highlight {
	opacity: 0;
	transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.equip-hero__machine:hover .equip-hero__machine-image--highlight {
	opacity: 1;
}

.equip-hero__machine:not(:hover) .equip-hero__machine-image--highlight {
	transition: opacity 1s cubic-bezier(0.4, 0, 1, 1) 0.2s;
}

/* Адаптив */
@media screen and (max-width: 1600px) {
	.equip-hero__title {
		font-size: 80px;
		line-height: 80px;
	}

	.equip-hero__machine {
		width: 750px;
		height: 544px;
		top: 180px;
	}
}

@media screen and (max-width: 1400px) {
	.equip-hero__title {
		font-size: 64px;
		line-height: 64px;
		max-width: 700px;
	}

	.equip-hero__subtitle {
		font-size: 18px;
		line-height: 22px;
		max-width: 550px;
	}

	.equip-hero__machine {
		width: 600px;
		height: 435px;
		top: 220px;
	}
}

@media screen and (max-width: 1200px) {
	.equip-hero__title {
		font-size: 52px;
		line-height: 52px;
	}

	.equip-hero__machine {
		width: 500px;
		height: 363px;
		top: 260px;
	}
}

@media screen and (max-width: 1024px) {
	.equip-hero {
		min-height: 600px;
		padding-top: 60px;
	}

	.equip-hero__grid {
		top: 60px;
		height: 500px;
	}

	.equip-hero__title {
		font-size: 42px;
		line-height: 42px;
	}

	.equip-hero__subtitle {
		font-size: 16px;
		line-height: 20px;
	}

	.equip-hero__machine {
		position: relative;
		top: 0;
		right: auto;
		width: 100%;
		max-width: 500px;
		height: 363px;
		margin-top: 40px;
	}
}

@media screen and (max-width: 768px) {
	.equip-hero {
		min-height: 500px;
	}

	.equip-hero__container {
		padding: 0 20px;
	}

	.equip-hero__content {
		padding-top: 30px;
	}

	.equip-hero__title {
		font-size: 36px;
		line-height: 38px;
	}

	.equip-hero__subtitle {
		font-size: 14px;
		line-height: 18px;
		text-transform: none;
	}
}

@media screen and (max-width: 480px) {
	.equip-hero__title {
		font-size: 30px;
		line-height: 32px;
	}
}



/* ========== EQUIP SERVICES ========== */
.equip-services {
	background: #FFFFFF;
	padding: 180px 40px;
}

.equip-services__container {
	max-width: 1840px;
	margin: 0 auto;
}

.equip-services__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

.equip-services__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.equip-service-card {
	background: #F4F5F7;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
	padding: 30px;
	position: relative;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	overflow: hidden;
}

.equip-service-card::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 1px;
	background: linear-gradient(180deg, #197E9E 0%, rgba(25, 126, 158, 0) 100%);
}

.equip-service-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.equip-service-card__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 20px;
	line-height: 24px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #1E2832;
	margin: 0 0 25px 0;
	padding-left: 35px;
	position: relative;
}

.equip-service-card__title::before {
	content: '';
	position: absolute;
	left: -31px;
	top: 0;
	width: 5px;
	height: 100%;
	background: #197E9E;
}

.equip-service-card__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.equip-service-card__list li {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
	margin-bottom: 14px;
	padding-left: 16px;
	position: relative;
}

.equip-service-card__list li:last-child {
	margin-bottom: 0;
}

.equip-service-card__list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #C7C7C7;
}

@media screen and (max-width: 1400px) {
	.equip-services__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 768px) {
	.equip-services {
		padding: 50px 20px;
	}

	.equip-services__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.equip-services__grid {
		grid-template-columns: 1fr;
	}

	.equip-service-card {
		padding: 25px;
	}

	.equip-service-card__title {
		font-size: 18px;
		line-height: 22px;
		padding-left: 30px;
	}

	.equip-service-card__title::before {
		left: -26px;
	}
}

/* ========== EQUIP STAGES ========== */
.equip-stages {
	background: #FFFFFF;
	padding: 80px 40px;
}

.equip-stages__container {
	max-width: 1840px;
	margin: 0 auto;
}

.equip-stages__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

.equip-stages__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 10px;
}

.equip-stage {
	display: flex;
	flex-direction: column;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	max-width: 281px;
}

.equip-stage:hover {
	transform: translateY(-8px);
}

.equip-stage__header {
	margin-bottom: 25px;
}

.equip-stage__number {
	width: 100px;
	height: 100px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.equip-stage:hover .equip-stage__number {
	transform: scale(1.15);
}

.equip-stage__number span {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 24px;
	line-height: 28px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #9D9D9D;
}

.equip-stage__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #1E2832;
	margin: 0 0 20px 0;
}

.equip-stage__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.equip-stage__list-item {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
	padding-left: 14px;
	position: relative;
}

.equip-stage__list-item:not(.equip-stage__list-item--highlight)::before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #1E2832;
}

.equip-stage__list-item--highlight {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 14px 8px;
	background: #F4F5F7;
	border-top: 1px solid #C7C7C7;
	border-bottom: 1px solid #C7C7C7;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #005D7B;
}

.equip-stage__list-item--highlight::before {
	display: none;
}

.equip-stage__marker {
	flex-shrink: 0;
	width: 10px;
	height: 16px;
	margin-right: 4px;
}

@media screen and (max-width: 1600px) {
	.equip-stages__grid {
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
	}
}

@media screen and (max-width: 1200px) {
	.equip-stages__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media screen and (max-width: 1024px) {
	.equip-stages {
		padding: 60px 30px;
	}

	.equip-stages__title {
		font-size: 34px;
		line-height: 40px;
	}

	.equip-stages__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 768px) {
	.equip-stages {
		padding: 50px 20px;
	}

	.equip-stages__title {
		font-size: 28px;
		line-height: 34px;
	}

	.equip-stages__grid {
		grid-template-columns: 1fr;
	}
}


/* ========== EQUIP CASES ========== */
.equip-cases {
	position: relative;
	background-color: #F4F5F7;
	min-height: 800px;
	padding: 80px 40px 180px;
	overflow: hidden;
}

.equip-cases__bg-image {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 889px;
	height: 421px;
	object-fit: contain;
	z-index: 1;
	pointer-events: none;
}

.equip-cases__container {
	position: relative;
	z-index: 2;
	max-width: 1840px;
	margin: 0 auto;
}

.equip-cases__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

/* Карточка */
.equip-case-card {
	background: #FFFFFF;
	border-radius: 4px;
	border-bottom: 1px solid #D9D9D9;
	padding: 20px;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-sizing: border-box;
	height: 100%;
}

.equip-case-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.equip-case-card__header {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
}

.equip-case-card__number {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	border: 1px solid #C7C7C7;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.equip-case-card:hover .equip-case-card__number {
	border-color: #197E9E;
	transform: scale(1.08);
}

.equip-case-card__number span {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 24px;
	line-height: 28px;
	color: #8B93A7;
}

.equip-case-card__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 20px;
	text-transform: uppercase;
	color: #197E9E;
	flex: 1;
}

/* Параметры */
.equip-case-card__params {
	display: flex;
	flex-direction: column;
}

.equip-case-param {
	padding: 15px 0;
	border-bottom: 1px solid #E0E0E0;
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.equip-case-param:last-child {
	border-bottom: none;
}

.equip-case-param__label {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 12px;
	line-height: 12px;
	color: #8B93A7;
	text-transform: uppercase;
}

.equip-case-param__value {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}

.equip-case-param--highlight {
	background: #E7EAEE;
	padding: 15px 20px;
	margin: 0 -20px;
	border-bottom: 1px solid #C7C7C7;
}

.equip-case-param--highlight .equip-case-param__value {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
}

/* Навигация */
.equip-cases__nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 40px;
}

.equip-cases__dots {
	display: flex;
	gap: 10px;
}

.equip-cases__dots .owl-dot {
	width: 10px;
	height: 10px;
	border: 1px solid #197E9E;
	border-radius: 50%;
	background: transparent;
	transition: all 0.3s;
	margin: 0;
}

.equip-cases__dots .owl-dot.active {
	background: #197E9E;
	transform: scale(1.3);
}

.equip-cases__dots .owl-dot span {
	display: none;
}

.equip-cases__arrows {
	display: flex;
	gap: 15px;
}

.equip-cases__arrows button {
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	transition: transform 0.3s;
}

.equip-cases__arrows button:hover {
	transform: scale(1.1);
}

.equip-cases__arrows button.disabled {
	opacity: 0.4;
	cursor: default;
}

.equip-cases__arrows button svg {
	display: block;
}

@media screen and (max-width: 1024px) {
	.equip-cases {
		padding: 60px 30px 140px;
	}

	.equip-cases__title {
		font-size: 34px;
		line-height: 40px;
	}

	.equip-cases__bg-image {
		width: 550px;
		height: 261px;
	}
}

@media screen and (max-width: 768px) {
	.equip-cases {
		padding: 50px 20px 120px;
	}

	.equip-cases__title {
		font-size: 28px;
	}

	.equip-cases__bg-image {
		width: 400px;
		height: 190px;
	}
}


.equip-portfolio-section {
	min-height: fit-content;
}

.equip_eng-numbers .eng-number-circle:nth-child(5) .eng-number-circle__prefix {
font-size: 24px;
width: 100%;
}

.equip_eng-numbers .eng-number-circle:nth-child(5) .eng-number-circle__value {
	flex-wrap: wrap;
}

.equip_eng-numbers .eng-number-circle:nth-child(5) .eng-number-circle__number {
	font-size: 36px;
	position: relative;
}

.equip_eng-numbers .eng-number-circle:nth-child(5) .eng-number-circle__number::before {
	content: '>';
	width: 20px;
	height: 20px;
	font-size: 24px;
	left: -24px;
	position: absolute;
	top: 0;
}


.equip_eng-numbers .eng-number-circle:nth-child(5) .eng-number-circle__suffix {
	font-size: 36px;
}


#order-section .wpcf7 form.sent .wpcf7-response-output {
margin-top: 15px;
}

/* ========== ABOUT PAGE ========== */
.about-page {
	background: #FFFFFF;
	padding: 110px 40px 80px;
}

.about-page__container {
	max-width: 1840px;
	margin: 0 auto;
}

/* Хлебные крошки */
.about-breadcrumbs {
	margin-bottom: 30px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
}

.about-breadcrumbs a {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.about-breadcrumbs a:hover {
	color: #197E9E;
}

.about-breadcrumbs__sep {
	margin: 0 8px;
}

/* Заголовок */
.about-page__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin: 0 0 60px 0;
}

/* Контент */
.about-content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	align-items: start;
}

.about-content__image {
	width: 100%;
	height: auto;
	border-radius: 4px;
	display: block;
}

.about-content__subtitle {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 24px;
	line-height: 1;
	letter-spacing: 0;
	color: #1E2832;
	margin-bottom: 30px;
}

.about-content__text {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0;
	color: #1E2832;
}

.about-content__text p {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 22px;
	color: #1E2832;
	margin-bottom: 16px;
}

/* Адаптив */
@media screen and (max-width: 1024px) {
	.about-page {
		padding: 30px 30px 60px;
	}

	.about-page__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.about-content {
		gap: 40px;
	}

	.about-content__subtitle {
		font-size: 20px;
	}
}

@media screen and (max-width: 768px) {
	.about-page {
		padding: 20px 20px 50px;
	}

	.about-page__title {
		font-size: 28px;
		line-height: 34px;
		margin-bottom: 30px;
	}

	.about-content {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.about-content__subtitle {
		font-size: 18px;
	}
}

.page-template-page-about .site-header {
	background-color: #1E2832;
}
.page-template-page-contacts .site-header {
	background-color: #1E2832;
}
.page-template-page-portfolio .site-header {
	background-color: #1E2832;
}
.page-template-page-competencies .site-header {
	background-color: #1E2832;
}
.page-template-page-testimonials .site-header {
	background-color: #1E2832;
}
.error404 .site-header {
	background-color: #1E2832;
}

.about-content__right {
margin-top: 78px;
}


/* ========== ABOUT NUMBERS ========== */
.about-numbers {
	position: relative;
	background: #FFFFFF;
	padding: 80px 0px;
	overflow: hidden;
}

.about-numbers__bg {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 700px;
	height: 700px;
	pointer-events: none;
	z-index: 1;
}

.about-numbers__bg svg {
	width: 100%;
	height: 100%;
}

.about-numbers__container {
	position: relative;
	z-index: 2;
	max-width: 1840px;
	margin: 0 auto;
}

.about-numbers__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	text-align: center;
	margin-bottom: 60px;
}

.about-numbers__grid {
	display: flex;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 0px;
}

/* Круг */
.about-number-circle {
	position: relative;
	width: 307px;
	height: 307px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid #C7C7C7;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		border-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-number-circle:hover {
	transform: translateY(-8px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
	z-index: 10;
	border-color: #197E9E;
}

/* SVG узор */
.about-number-circle__dots-svg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	pointer-events: none;
	transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-number-circle__dots-svg circle {
	transition: stroke 0.4s cubic-bezier(0.4, 0, 0.2, 1),
		stroke-opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
			opacity: 0;
}

.about-number-circle:hover .about-number-circle__dots-svg {
	transform: rotate(180deg);


}

.about-number-circle:hover .about-number-circle__dots-svg circle {
	stroke: #197E9E;
	stroke-opacity: 0.5;
		opacity: 1;
}

/* Контент */
.about-number-circle__content {
	text-align: center;
	padding: 10px;
	z-index: 2;
}

.about-number-circle__value {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 2px;
	margin-bottom: 5px;
}

.about-number-circle__prefix,
.about-number-circle__suffix {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 40px;
	color: #197E9E;
}

.about-number-circle__number {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 40px;
	color: #197E9E;
}

.about-number-circle__label {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 14px;
	letter-spacing: 0;
	color: #197E9E;
	margin-bottom: 8px;
}

.about-number-circle__desc {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 13px;
	line-height: 15px;
	letter-spacing: 0;
	text-align: center;
	color: #1E2832;
	max-width: 220px;
	margin: 0 auto;
}

/* Адаптив */
@media screen and (max-width: 1600px) {
	.about-numbers__grid {
		gap: 15px;
	}
}

@media screen and (max-width: 1400px) {
	.about-number-circle {
		width: 270px;
		height: 270px;
	}

	.about-number-circle__number {
		font-size: 36px;
		line-height: 34px;
	}

	.about-number-circle__label {
		font-size: 14px;
	}
}

@media screen and (max-width: 1024px) {
	.about-numbers {
		padding: 60px 30px;
	}

	.about-numbers__title {
		font-size: 34px;
		line-height: 40px;
		margin-bottom: 40px;
	}

	.about-numbers__bg {
		width: 500px;
		height: 500px;
	}
}

@media screen and (max-width: 768px) {
	.about-numbers {
		padding: 50px 20px;
	}

	.about-numbers__title {
		font-size: 28px;
		line-height: 34px;
	}

	.about-number-circle {
		width: 240px;
		height: 240px;
	}

	.about-number-circle__number {
		font-size: 32px;
		line-height: 30px;
	}
}

@media screen and (max-width: 480px) {
	.about-number-circle {
		width: 200px;
		height: 200px;
	}

	.about-number-circle__number {
		font-size: 28px;
		line-height: 26px;
	}
}


/* ========== CONTACTS PAGE ========== */
.contacts-page {
	background: #FFFFFF;
	padding: 40px 40px 80px;
}

.contacts-page__container {
	max-width: 1840px;
	margin: 0 auto;
}

.contacts-breadcrumbs {
	margin-bottom: 30px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}

.contacts-breadcrumbs a {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-size: 14px;
	color: #1E2832;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.contacts-breadcrumbs a:hover {
	color: #197E9E;
}

.contacts-breadcrumbs__sep {
	margin: 0 8px;
}

.contacts-page__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 50px;
}

/* Сетка */
.contacts-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}

/* Заголовки блоков */
.contacts-block__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 24px;
	line-height: 1;
	color: #1E2832;
	margin-bottom: 30px;
	text-transform: none;
}

/* Контактная информация */
.contact-info-item {
	display: flex;
	gap: 10px;
	padding-bottom: 14px;
	border-bottom: 1px solid #E0E0E0;
	margin-bottom: 15px;
}

.contact-info-item__icon {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
}

.contact-info-item__icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.contact-info-item__label {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 12px;
	line-height: 12px;
	color: #8B93A7;
	margin-bottom: 5px;
}

.contact-info-item__value {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}

.contact-info-item__value br {display: none;}

/* Форма */
.contacts-form {
	background-color: #1E2832;
	background-size: cover;
	background-position: center;
	border-radius: 4px;
	padding: 30px 50px;
	position: relative;
	margin-top: 30px;
}

.contacts-form__wrapper {
	max-width: 100%;
}

.contacts-form__title {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 24px;
	line-height: 1;
	color: #FFFFFF;
	margin-bottom: 15px;
}

.contacts-form__subtitle {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 18px;
	color: rgba(255, 255, 255, 1.0);
	margin-bottom: 10px;
}

.contacts-form__row {

	display: flex;
	gap: 10px;
	margin-bottom: 10px;
}

.mt20 {margin-top: 30px;}
.contacts-form__field {
	flex: 1;
}

.contacts-form__field input,
.contacts-form__field textarea {
	width: 100%;
	padding: 15px;
	background: #2F3B46;
	border: none;
	border-radius: 4px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-size: 14px;
	color: #FFFFFF;
	outline: none;
}

.contacts-form__field textarea {
	height: 120px;
	resize: none;
}

.contacts-form__field input::placeholder,
.contacts-form__field textarea::placeholder {
	color: rgba(255, 255, 255, 0.5);
}

/* Кнопка */
/* Кнопка отправки */
.contacts-form__row--submit {
	margin-top: 10px;
}

.contacts-form__submit {
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	padding: 6px;
	width: 165px;
	height: 62px;
	display: inline-block;
}

.contacts-form__submit input {
	width: 100%;
	height: 100%;
	padding: 15px 30px;
	background: #66FAFF;
	border: none;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;

	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.contacts-form__submit input:hover {
	background: #8FFBFF;
}

/* Скрываем спиннер */
.contacts-form__submit .wpcf7-spinner {
	display: none;
}

/* Чекбокс */
.contacts-form__checkbox {
	display: flex;
	align-items: center;
	gap: 12px;
	cursor: pointer;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.7);
}
.contacts-form {overflow: hidden;}

.contacts-form__checkbox input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	width: 22px;
	height: 22px;
	background: #2F3B46;
	border-radius: 4px;
	cursor: pointer;
	flex-shrink: 0;
	position: relative;
}

.contacts-form__checkbox input[type="checkbox"]:checked {
	background: #2F3B46;
	background-image: url("data:image/svg+xml,%3Csvg width='13' height='10' viewBox='0 0 13 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.7 0.5c.5-.6 1.4-.7 2-.2.6.5.7 1.4.2 2l-5.3 6.7c-.7.8-1.9.9-2.7.2L.4 6c-.5-.5-.6-1.4 0-2 .5-.6 1.4-.6 2-.1l2.7 2.6L9.7.5z' fill='%2357C2E4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 13px 10px;
}

/* Карта */
.contacts-map {
	width: 100%;
	height: 348px;
	border-radius: 4px;
	margin: 30px 0;
	background: #E2E4E9;
}

/* Реквизиты */
.requisite-item {
	padding-bottom: 15px;
	border-bottom: 1px solid #E0E0E0;
	margin-bottom: 15px;
	height: 43px;
}

.requisite-item__label {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 12px;
	line-height: 12px;
	color: #8B93A7;
	margin-bottom: 5px;
}

.requisite-item__value {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}

/* Адаптив */
@media screen and (max-width: 1200px) {
	.contacts-grid {
		grid-template-columns: 1fr;
	}

	.contacts-form {
		padding: 30px;
	}
}

@media screen and (max-width: 768px) {
	.contacts-page {
		padding: 20px 20px 50px;
	}

	.contacts-page__title {
		font-size: 28px;
		line-height: 34px;
	}

	.contacts-form__row {
		flex-direction: column;
	}

	.contacts-map {
		height: 280px;
	}
}

.contacts-page {
	padding: 110px 40px 80px;
}

/* Скрываем копирайты Яндекса */
.contacts-map .ymaps-2-1-79-copyright,
.contacts-map .ymaps-2-1-79-copyright__wrap,
.contacts-map .ymaps-2-1-79-map-copyrights-promo,
.contacts-map .ymaps-2-1-79-gotoymaps,
.contacts-map .ymaps-2-1-79-gototaxi,
.contacts-map .ymaps-2-1-79-gototech {
	display: none !important;
}



.contacts-form__bg {
	position: absolute;
	right: -51%;
	top: 50%;
	transform: translateY(-50%);
	height: auto;
	width: 2329px;
	opacity: 0.15;
	pointer-events: none;
	z-index: 0;
}

.wsegwger {
	padding-top: 30px;
	padding-left: 20px;
	padding-right: 20px;
	background-color: #F4F5F7;
}

.wsegwger .contact-info-item:last-child {
	border-bottom: none;
}

.contacts-requisites {
	margin-top: -9px;
}

.contacts-requisites .requisite-item {
	margin-bottom: 6px;
}

/* ========== PORTFOLIO PAGE ========== */
.portfolio-page {
	background: #FFFFFF;
	padding: 110px 40px 0;
	padding-bottom: 140px;
}

.portfolio-page__container {
	max-width: 1845px;
	margin: 0 auto;
}

.portfolio-breadcrumbs {
	margin-bottom: 30px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}

.portfolio-breadcrumbs a {
	color: #1E2832;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.portfolio-breadcrumbs a:hover {
	color: #197E9E;
}

.portfolio-breadcrumbs__sep {
	margin: 0 8px;
}

.portfolio-page__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 40px;
}

/* Вкладки */
.portfolio-tabs {
	display: flex;
	gap: 5px;
	margin-bottom: 20px;
}

.portfolio-tab {
	padding: 15px 25px;
	border-radius: 4px;
	border: none;
	cursor: pointer;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	background: #D6D9E1;
	color: #1D1D1B;
	transition: all 0.3s;
}

.portfolio-tab--active {
	background: #1E2832;
	color: #FFFFFF;
}

/* Контент вкладок */
.portfolio-content {
	display: none;
	background: #1E2832;
	padding: 40px 40px 0;
	margin: 0 -40px;
	padding-bottom: 1px;
}

.portfolio-content--active {
	display: block;
}

.portfolio-content__grid {
	display: grid;
	grid-template-columns: repeat(5, 369px);
	gap: 0;
	grid-auto-flow: dense;
	justify-content: flex-start;
	position: relative;
}

/* Элементы портфолио */
.pf-item {
	position: relative;
	width: 369px;
	height: 416px;
	background: transparent;
	transition: background 0.4s;
	grid-column: span 1;
	grid-row: span 1;
	box-sizing: border-box;
	border-radius: 4px;
}



.pf-item:not(.pf-item--empty):not(.pf-item--link) {
	border: 1px solid #455C73;
	margin: -0.5px 0 0 -0.5px;
}

.pf-item:not(.pf-item--empty):not(.pf-item--link):hover {
	background: linear-gradient(180deg, #222E39 0%, #324253 100%);
	cursor: pointer;
	z-index: 2;
}

.pf-item--hidden {
	display: none;
}

.pf-item--visible {
	display: block;
}

.pf-item__content {
	padding: 30px;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.pf-item__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 22px;
	line-height: 24px;
	text-transform: uppercase;
	color: #57C2E4;
	margin: 0 0 20px 0;
}

.pf-item__image-wrapper {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.pf-item__image {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	transition: opacity 0.6s;
}

.pf-item__image--silhouette {
	opacity: 1;
}

.pf-item__image--photo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
}

.pf-item:hover .pf-item__image--silhouette {
	opacity: 0;
}

.pf-item:hover .pf-item__image--photo {
	opacity: 1;
}

/* Крупный */
.pf-item--large {
	width: 738px;
	height: 832px;
	grid-column: span 2;
	grid-row: span 2;
}

/* Пустой */
.pf-item--empty {
	border: none !important;
	background: transparent !important;
	pointer-events: none;
	margin: 0;
}

/* Ссылочный */
.pf-item--link {
	border: none;
	background: transparent;
	display: flex;
	align-items: flex-end;
	margin: 0;
}

.pf-item__link {
	display: flex;
	flex-direction: column;
	gap: 10px;
	text-decoration: none;
	transition: transform 0.3s;
	padding: 0 30px 30px;
}

.pf-item__link:hover {
	transform: translateX(10px);
}

.pf-item__link-text {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 24px;
	text-transform: uppercase;
	color: #FFFFFF;
}

/* Кнопка "Смотреть ещё" */
.portfolio-more-wrapper {
	background: #FFFFFF;
	margin: 28px -40px 0;
	padding: 28px 40px 60px;
	text-align: center;
}

.portfolio-more {
	width: 100%;
	max-width: 1824px;
	padding: 15px 30px;
	background: #008BB8;
	border: none;
	border-radius: 100px;
	cursor: pointer;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #FFFFFF;
	transition: background 0.3s;
}

.portfolio-more:hover {
	background: #00A3D6;
}

/* Адаптив */
@media screen and (max-width: 1400px) {
	.portfolio-content__grid {
		grid-template-columns: repeat(4, 369px);
	}
}

@media screen and (max-width: 1100px) {
	.portfolio-page {
		padding: 20px 20px 0;
	}

	.portfolio-content {
		padding: 30px 20px 0;
		margin: 0 -20px;
	}

	.portfolio-more-wrapper {
		margin: 28px -20px 0;
		padding: 28px 20px 50px;
	}

	.portfolio-content__grid {
		grid-template-columns: repeat(3, 369px);
	}
}

@media screen and (max-width: 800px) {
	.portfolio-content__grid {
		grid-template-columns: repeat(2, 369px);
	}
}

@media screen and (max-width: 768px) {
	.portfolio-page__title {
		font-size: 28px;
		line-height: 34px;
	}

	.portfolio-tabs {
		flex-direction: column;
	}
}

@media screen and (max-width: 760px) {
	.portfolio-content__grid {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.pf-item--large {
		width: 369px;
		height: 416px;
		grid-column: span 1;
		grid-row: span 1;
	}
}

/* Анимация появления */
.pf-item--hidden {
	display: none;
	opacity: 0;
	transform: translateY(20px);
}

.pf-item--visible {
	display: block;
	animation: pfItemFadeIn 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

@keyframes pfItemFadeIn {
	from {
		opacity: 0;
		transform: translateY(20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/* ========== COMPETENCIES PAGE ========== */
.comp-page {
	background: #FFFFFF;
	padding: 110px 40px 0;
}

.comp-page__container {
	max-width: 1840px;
	margin: 0 auto;
}

.comp-page__container .competencies-title {display: none;}

.comp-page__container .competency-item {
	background-color: #E5E5E5;
}

.comp-breadcrumbs {
	margin-bottom: 30px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}

.comp-breadcrumbs a {
	color: #1E2832;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.comp-breadcrumbs a:hover {
	color: #197E9E;
}

.comp-breadcrumbs__sep {
	margin: 0 8px;
}

.comp-page__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 40px;
}

.comp-page__text {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 22px;
	color: #1E2832;
	margin-bottom: 50px;
}

.comp-page__text p {
	margin-bottom: 16px;
}

@media screen and (max-width: 1024px) {
	.comp-page {
		padding: 20px 20px 0;
	}

	.comp-page__title {
		font-size: 28px;
		line-height: 34px;
	}
}

/* ========== TESTIMONIALS PAGE ========== */
.tst-page {
	background: #FFFFFF;
	padding: 110px 40px 80px;
}

.tst-page__container {
	max-width: 1840px;
	margin: 0 auto;
}

.tst-breadcrumbs {
	margin-bottom: 30px;
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}

.tst-breadcrumbs a {
	color: #1E2832;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.tst-breadcrumbs a:hover {
	color: #197E9E;
}

.tst-breadcrumbs__sep {
	margin: 0 8px;
}

.tst-page__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 40px;
	line-height: 46px;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #1E2832;
	margin-bottom: 0px;
}

/* Сетка */
.tst-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px 20px;

	padding: 40px 0;
	margin-bottom: 40px;
}

/* Карточка */
.tst-card {
	display: flex;
	gap: 10px;
	background: #F0F1F4;
	border-top-left-radius: 90px;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
	padding: 20px;
	min-height: 411px;
}

.tst-card__left {
	width: 294px;
	padding: 10px;
	display: flex;
	flex-direction: column;
}

.tst-card__avatar {
	width: 140px;
	height: 140px;
	border-radius: 50%;
	overflow: hidden;
	margin-bottom: 40px;
}

.tst-card__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tst-card__name {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	color: #1E2832;
	margin-bottom: 8px;
}

.tst-card__position {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
	margin-bottom: 30px;
}

.tst-card__text {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}

.tst-card__right {
	flex: 1;
	border-radius: 4px;
	overflow: hidden;
}

.tst-card__scan {
	display: block;
	width: 100%;
	height: 100%;
}

.tst-card__scan-img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform 0.3s;
}

.tst-card__scan:hover .tst-card__scan-img {
	transform: scale(1.03);
}

/* Пагинация */
.tst-pagination {
	display: flex;
	justify-content: center;
	gap: 3px;
}

.tst-pagination__item {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #FFFFFF;

	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Halvar Breitschrift Light';
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1D1D1B;
	text-decoration: none;
	transition: all 0.3s;
}

.tst-pagination__item.current,
.tst-pagination__item:hover {
	background: #1E2832;
	color: #FFFFFF;
	border-color: #1E2832;
}

.tst-pagination__item.dots {
	border: none;
	background: transparent;
}

.tst-pagination__item.dots:hover {
	background: transparent;
	color: #1D1D1B;
}

@media screen and (max-width: 1400px) {
	.tst-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 900px) {
	.tst-page {
		padding: 20px 20px 50px;
	}

	.tst-page__title {
		font-size: 28px;
		line-height: 34px;
	}

	.tst-grid {
		grid-template-columns: 1fr;
	}

	.tst-card {
		flex-direction: column;
	}

	.tst-card__left {
		width: 100%;
	}

	.tst-card__right {
		height: 250px;
	}
}

/* ========== COMPETENCY POPUP ========== */
.comp-popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}

.comp-popup.active {
	opacity: 1;
	visibility: visible;
}

.comp-popup__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	backdrop-filter: blur(4px);
}

.comp-popup__container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0.95);
	width: 95%;
	max-width: 1451px;
	background: #FFFFFF;
	border-radius: 4px;
	overflow: hidden;
	transition: transform 0.3s;
}

.comp-popup.active .comp-popup__container {
	transform: translate(-50%, -50%) scale(1);
}

.comp-popup__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #1E2832;
	padding: 15px 20px;
	height: 62px;
}

.comp-popup__title {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 28px;
	line-height: 1;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #FFFFFF;
}

.comp-popup__close {
	background: none;
	border: none;
	cursor: pointer;
	padding: 5px;
	transition: transform 0.3s;
}

.comp-popup__close:hover {
	transform: rotate(90deg);
}

.comp-popup__body {
	display: flex;
	gap: 5px;
	max-height: 616px;
	overflow-y: auto;
}

.comp-popup__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 5px;
	flex: 1;
	padding-top: 4px;
	padding-bottom: 1px;
	border-top: 1px solid #ffffff;
}

.comp-popup__legend {
	flex-shrink: 0;
	align-self: end;
	width: 359px;
	height: 200px;
	position: absolute;
	right: 0;
	bottom: 2px;
}

/* Карточка сотрудника */
.comp-person {
	background: #E7EAEE;
	border: 1px solid #ffffff;
	border-radius: 4px;
	padding: 15px;
	height: 200px;
}

.comp-person__header {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 15px;
}

.comp-person__number {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #FFFFFF;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	color: #6E7891;
	flex-shrink: 0;
}

.comp-person__position {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 18px;
	color: #000000;
}

/* Прогресс бар */
.comp-person__progress {
	display: flex;
	height: 8px;
	margin-bottom: 30px;
}

.comp-person__progress-segment {
	flex: 1;
	background: #FFFFFF;
	border-bottom: 1px solid rgba(0, 0, 0, 0.3);
	transition: background 0.3s;
	margin-right: 3px;
}

.comp-person__progress-segment:first-child {
	border-radius: 9px 0 0 9px;
}

.comp-person__progress-segment:last-child {
	border-radius: 0 9px 9px 0;
}

.comp-person__progress-segment--filled {
	background: #197E9E;
}

/* Данные */
.comp-person__info {
	display: flex;
	flex-direction: column;
	gap: 13px;
}

.comp-person__info-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.comp-person__info-label {
	font-family: 'Halvar Breitschrift Light', sans-serif;
	font-weight: 300;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;

}

.comp-person__info .comp-person__info-row:first-child {
	border-bottom: 1px solid rgba(30, 40, 50, .3);
	padding-bottom: 7px;
}

.comp-person__info-value {
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;
}


.page-template-page-competencies .competencies-section {
	min-height: 591px;
		padding: 0px 0px 0;
}


.page-template-page-competencies .competency-item {
height: 88px;
align-items: start;
}


.comp-page__container .competency-item:nth-child(5n+1) {
	background-color: #EFEFEF;
}

.comp-page__container .competency-item:nth-child(5n+2) {
	background-color: #E5E5E5;
}

.comp-page__container .competency-item:nth-child(5n+3) {
	background-color: #F2F2F2;
}

.comp-page__container .competency-item:nth-child(5n+4) {
	background-color: #EAEAEA;
}

.comp-page__container .competency-item:nth-child(5n+5) {
	background-color: #E8E8E8;
}

.comp-page__container .competency-item:hover>.competency-item__text {
	color: #000000;
}


.order-section .wpcf7 form.invalid .wpcf7-response-output {
	margin-top: 10px;
}

.hero-button-wrapper {
	margin-top: 60px;
}

.hero-button-wrapper .port-button {
	display: inline-block;
	padding: 6px;
	background: transparent;
	border: 1px solid rgba(102, 250, 255, 0.6);
	border-radius: 100px;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-button-wrapper .port-button:hover {
	border-color: #66FAFF;
	box-shadow: 0 0 20px rgba(102, 250, 255, 0.3);
}

.hero-button-wrapper .port-button .hero-port-button__inner {
	display: block;
	padding: 15px 30px;
	background: #66FAFF;
	border-radius: 100px;
	font-family: 'Halvar Breitschrift Medium', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	color: #1E2832;

	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-button-wrapper .port-button:hover .hero-port-button__inner {
	background: #8FFBFF;
}