

/* Start:/local/templates/fhso_2025/assets/css/style.css?177200645313362*/
/* ============================================
   ОБЩИЕ СТИЛИ ДЛЯ ВСЕГО САЙТА
   ============================================ */

/* ============================================
   ИМПОРТЫ
   ============================================ */
@import url("https://fonts.googleapis.com/css2?family=Unbounded:wght@400;500;700;800&family=Wix+Madefor+Display:wght@500;600;700;800&display=swap");

/* ============================================
   CSS ПЕРЕМЕННЫЕ
   ============================================ */
:root {
	/* Цвета */
	--color-primary: #004890;
	--color-primary-dark: #003067;
	--color-primary-darker: #001c47;
	--color-accent: #0085e4;
	--color-accent-light: #0db7ff;
	--color-secondary: #a2d9f3;
	--color-secondary-light: #cbebfa;
	--color-secondary-lighter: #83c2ee;
	--color-bg-white: #ffffff;
	--color-bg-light: #f2f7f8;
	--color-bg-lighter: #e5ecf2;
	--color-text-primary: #16323b;
	--color-text-secondary: #6e8ea2;
	--color-text-dark: #001c47;
	--color-text-blue: #004890;

	/* Типографика */
	--font-heading: "Unbounded", sans-serif;
	--font-body: "Wix Madefor Display", sans-serif;

	/* Отступы */
	--spacing-xs: 4px;
	--spacing-sm: 10px;
	--spacing-md: 20px;
	--spacing-lg: 24px;
	--spacing-xl: 40px;
	--spacing-2xl: 48px;

	/* Скругления */
	--radius-sm: 6px;
	--radius-md: 12px;
	--radius-lg: 24px;
	--radius-xl: 48px;
	--radius-2xl: 64px;

	/* Тени */
	--shadow-sm: 0px 12px 20px rgba(0, 48, 103, 0.25);
	--shadow-md: 0px 24px 32px rgba(0, 28, 71, 0.25);
	--shadow-lg: 0px 32px 32px rgba(0, 28, 71, 0.25);
	--shadow-xl: 0px 48px 96px rgba(0, 28, 71, 0.5);
	--shadow-card: 0px 32px 48px rgba(16, 113, 174, 0.1);
}

/* ============================================
   СБРОС И БАЗОВЫЕ СТИЛИ
   ============================================ */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	/* outline: 2px solid red; */
}

body {
	font-family: var(--font-body);
	color: var(--color-text-primary);
	background: linear-gradient(180deg, #003067 0%, #0064b5 100%);
	background-blend-mode: color;
	background-repeat: no-repeat;
	background-size: contain;
	overflow-x: hidden;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

a {
	text-decoration: none;
	color: inherit;
}

button {
	border: none;
	background: none;
	cursor: pointer;
	font-family: inherit;
}

textarea {
	resize: none;
}

table {
	border-spacing: 0;
}

/* ============================================
   КОНТЕЙНЕР
   ============================================ */
.container {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 20px;
}

/* ============================================
   ОБЩИЕ СЕКЦИИ
   ============================================ */
/* .section {
	padding: 40px 0;
} */

/* ============================================
   ФОНОВЫЕ ЭЛЕМЕНТЫ
   ============================================ */

.top-bg.page404 {
	background-image: url(/local/templates/fhso_2025/assets/css/../img/zaglushka.png);
}

/* ============================================
   ТИПОГРАФИКА
   ============================================ */
.heading-xl {
	font-family: var(--font-heading);
	font-size: clamp(32px, 3vw, 40px);
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.25;
}

.heading-lg {
	font-family: var(--font-heading);
	font-size: 24px;
	font-weight: 800;
	text-transform: uppercase;
}

.heading-md {
	font-family: var(--font-heading);
	font-size: 20px;
	font-weight: 700;
}

.heading-sm {
	font-family: var(--font-heading);
	font-size: 18px;
	font-weight: 400;
	text-transform: uppercase;
	line-height: 1;
}

.text-lg {
	font-family: var(--font-body);
	font-size: 18px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1;
}

.text-md {
	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 600;
}

.text-sm {
	font-family: var(--font-body);
	font-size: 14px;
	font-weight: 600;
}

.text-xs {
	font-family: var(--font-body);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.1;
	text-transform: uppercase;
}

/* ============================================
   УТИЛИТАРНЫЕ КЛАССЫ
   ============================================ */
.text-white {
	filter: drop-shadow(0px 4px 16px #001c4733);
	color: #ffffff;
}

.gradient-text {
	background: linear-gradient(90deg, #0085e4 0%, #0db7ff 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.gradient-text-dark {
	background: linear-gradient(88.88deg, #001c47 0.19%, #0064b5 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.gradient-text-white {
	background: linear-gradient(88.88deg, #ffffff 0.19%, #c7f7ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.text-blue {
	color: var(--color-text-blue);
}

.text-light-blue {
	color: var(--color-secondary-light);
}

.text-dark {
	color: var(--color-text-dark);
}

.bg-primary {
	background-color: var(--color-primary);
}

.bg-white {
	background-color: var(--color-bg-white);
}

.bg-light {
	background-color: var(--color-bg-light);
}

.wave-decoration {
	position: relative;
	background: linear-gradient(180deg, #ffffff 0%, #e5f0f2 100%);
	border-radius: 0 var(--radius-lg) var(--radius-lg);
	padding: var(--spacing-md);
}

.wave-decoration.bg-white {
	background: var(--color-bg-white);
}

/* ============================================
   КОМПОНЕНТЫ: КНОПКИ
   ============================================ */

.breadcrumbs {
	width: fit-content;
	margin: 40px 0;
}

.breadcrumbs__swiper {
	overflow: hidden;
	padding: 12px 24px;
	border-radius: 24px;
	width: 100%;
	box-shadow: 0px 4px 4px 2px #001c471a inset, 0px 16px 24px -8px #001c4740;
}

.breadcrumbs__item {
	font-weight: 600;
	font-size: 18px;
	line-height: 100%;
	text-transform: uppercase;
	color: #d7ebef;
	text-shadow: 0px 1px 1px #06183240;
}

.breadcrumbs__item.active-page {
	color: #ffffff;
}

.breadcrumbs__item + svg {
	margin: 0 12px;
}

.breadcrumbs__list {
	display: flex;
	align-items: center;
}

.breadcrumbs__slide {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 0 0 auto;
	width: auto;
}

.breadcrumbs__slide svg {
	margin: 0;
	flex-shrink: 0;
}

.next-paragraph {
	display: block;
	height: 24px;
}

.pre-paragraph {
	margin-right: 12px;
}

.btn {
	font-family: var(--font-body);
	font-size: 18px;
	font-weight: 800;
	text-transform: uppercase;
	padding: 10px 24px;
	border-radius: var(--radius-xl);
	transition: all 0.3s ease;
	display: inline-block;
	min-height: 64px;
}

a.btn {
	display: flex;
	align-items: center;
	text-align: center;
}

.btn-primary {
	background: #0064b5e5;
	color: var(--color-bg-white);
	padding: 10px 48px;
	box-shadow: 0px 16px 24px -8px #0064b540;
}

.btn-secondary {
	background: #0064b540;
	box-shadow: 0px 16px 24px -8px #001c4766;
	color: var(--color-bg-white);
}

.banner-btn {
	box-shadow: 0px 16px 24px -8px #001c4740, 0px 4px 4px 2px #001c471a inset,
		0px 0px 0px 0.5px #ffffff33 inset, 0px 0px 2px 1px #ffffff80 inset;
	background-color: #0064b580;
}

.swiper__buttons-wrapper {
	display: flex;
	align-items: center;
	gap: 8px;
	position: relative;
	top: 25px;
}

.swiper__btn-prev,
.swiper__btn-next {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #0064b540;
	box-shadow: 0px 16px 24px -8px #001c4766;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
	top: calc(50% + 32px);
	cursor: pointer;
	pointer-events: auto;
}

.swiper__btn-prev.glass__container,
.swiper__btn-next.glass__container {
	pointer-events: auto;
}

/* ============================================
   ОВЕРЛЕЙ ДЛЯ КАРТЫ
   ============================================ */

.map::before,
.map::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 1;
	border-radius: 24px;
}
/*
.map::before {
	background: #0045ad59;
	mix-blend-mode: normal;
}

.map::after {
	background: #0045ad;
	mix-blend-mode: color;
}
 */
/* ============================================
   КОМПОНЕНТ: SCROLLBAR
   ============================================ */

.custom-scrollbar {
	position: absolute;
	/* bottom: 30px; */
	left: 32px;
	width: calc(100% - 64px);
	height: 16px;
	background: #eaf5f9;
	border-radius: 16px;
	z-index: 10;
	box-shadow: 0px 1px 1px 0px #001c4726 inset, 0px 1px 4px 1px #001c4726 inset;
}

.scroll-thumb {
	position: absolute;
	left: -12px;
	top: -8px;
	width: 400px;
	background: #1cb3ff80;
	height: 32px;
	border-radius: 32px;
	cursor: pointer;
	box-shadow: 0px 6px 6px -4px #001c4733, 0px 2px 4px 2px #0045ad40 inset,
		0px 0px 1px 1px #ffffffbf inset;
}

.scroll-thumb::before {
	position: absolute;
	content: "";
	width: calc(100% - 16px);
	height: 12px;
	top: 4px;
	left: 8px;
	background: #ffffff;
	backdrop-filter: blur(4px);
	border-radius: 12px;
	opacity: 0.3;
}

/* ============================================
   КОМПОНЕНТЫ: КАРТОЧКА (общая)
   ============================================ */
.card {
	border-radius: var(--radius-lg);
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

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

/* ============================================
   КОМПОНЕНТЫ: ЗАГОЛОВОК (общая)
   ============================================ */

.section-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 var(--spacing-lg) 0 0;
	margin: 0;
}

.heading-figure {
	background: #ffffff;
	padding-top: 34px;
	padding-left: var(--spacing-lg);
	border-radius: 24px 0 0;
	position: relative;
	width: fit-content;
}

@supports (-moz-appearance: none) {
	.bg-liquid-glass {
		backdrop-filter: blur(4px) !important;
	}
}

.heading-figure::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 100%;
	aspect-ratio: 201 / 66;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 201 66' preserveAspectRatio='none'%3E%3Cpath d='M201 66C84 66 107 0 0 0V66H201Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
	/* background-size: contain; */
	background-repeat: no-repeat;
}

.heading-figure + .glass__container {
	top: 30px;
	z-index: 1;
}

.heading-link {
	font-size: 18px;
	font-weight: 800;
	text-transform: uppercase;
	padding: 23px 24px;
	border-radius: var(--radius-xl);
	transition: all 0.3s ease;
	display: inline-block;
	background: #0064b540;
	box-shadow: 0px 16px 24px -8px #001c4766;
	color: var(--color-bg-white);
}

.glass__container {
	position: relative;
}

/* ============================================
   КОМПОНЕНТЫ: LIQUID GLASS
   ============================================ */

.bg-liquid-glass {
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	z-index: 1;
	@apply bg-muted/25;
}

@supports not (hanging-punctuation: first) {
	.bg-liquid-glass {
		backdrop-filter: url(#displacementFilter) blur(2px);
	}
}

/* ============================================
   АДАПТИВНОСТЬ (общие правила)
   ============================================ */
@media (max-width: 991px) {
	.heading-figure h2 {
		width: min-content;
	}

	/* @supports (-moz-appearance: none) {
		.heading-figure h2 {
			width: min-content;
		}
	} */
}

@media (max-width: 768px) {
	/* .section {
		padding: 20px 0;
	} */

	.heading-xl {
		font-size: 24px;
	}

	.heading-lg {
		font-size: 16px;
	}

	.heading-md {
		font-size: 18px;
	}

	.text-md {
		font-size: 14px;
	}
	.breadcrumbs {
		margin: 20px 10px;
	}

	.breadcrumbs__item {
		font-size: 12px;
	}

	.breadcrumbs__swiper {
		padding: 8px 12px;
	}

	.section-header {
		text-align: center;
		justify-content: center;
		padding: 0;
	}

	.heading-figure {
		border-radius: 0;
		padding-left: 0;
		width: 66%;
		padding-top: 10px;
		max-height: 37px;
		max-width: none;
	}

	.heading-figure h2 {
		width: auto;
		position: relative;
		z-index: 1;
		hyphens: auto;
		-moz-hyphens: auto;
	}

	.heading-figure::after {
		width: 17%;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 38 38' preserveAspectRatio='none'%3E%3Cpath d='M38 38C29.7157 38 23 31.2843 23 23C23 10.2975 12.7025 0 0 0V23V38H38Z' fill='white'/%3E%3C/svg%3E");
		aspect-ratio: auto;
		transform: scaleX(1);
	}

	.heading-figure::before {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		right: 100%;
		width: 17%;
		transform: scaleX(-1);
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 38 38' preserveAspectRatio='none'%3E%3Cpath d='M38 38C29.7157 38 23 31.2843 23 23C23 10.2975 12.7025 0 0 0V23V38H38Z' fill='white'/%3E%3C/svg%3E");
		background-size: contain;
		background-repeat: no-repeat;
	}

	.section-header .glass__container {
		display: none;
	}

	.wave-decoration {
		border-radius: var(--radius-lg);
		padding: 24px 10px 10px;
	}

	.swiper__buttons-wrapper {
		display: none;
	}
}

@media (max-width: 550px) {
	.container {
		padding: 0 10px;
	}

	.breadcrumbs {
		width: auto;
	}
}

@supports (-moz-appearance: none) {
	.heading-figure::after,
	.heading-figure::before {
		width: auto;
		aspect-ratio: 201 / 66;
	}
}
@media not all and (min-resolution: 0.001dpcm) {
	.heading-figure::after,
	.heading-figure::before {
		width: 100%;
		aspect-ratio: auto;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/assets/css/header.css?179025033517007*/
/* ============================================
   HEADER
   ============================================ */
.header {
	position: relative;
	margin-top: 20px;
	z-index: 1000;
	border-radius: 0 0 var(--radius-lg) var(--radius-lg);
}

.header__top {
	background: linear-gradient(0deg, #ffffff 0%, #f0f0f0 100%);
	box-shadow: inset 0px -1px 0px #ffffff;
	padding: 10px;
	border-radius: 24px 24px 0 0;
}

.header__top-content {
	display: flex;
	justify-content: flex-end;
	gap: var(--spacing-md);
	align-items: center;
}

.header__emblems {
	display: flex;
	gap: var(--spacing-sm);
}

.header__emblem {
	display: flex;
	align-items: center;
	gap: 5px;
	background-color: #e2f1fe;
	padding: 4px 8px;
	border-radius: 10px;
}

.header__emblem img {
	width: 35px;
	height: auto;
}

.header__emblem-text {
	font-family: var(--font-body);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.1;
	text-transform: uppercase;
	color: var(--color-text-secondary);
}

.header__search {
	display: flex;
	align-items: center;
	margin-left: var(--spacing-sm);
	gap: var(--spacing-sm);
	background-color: #e5ecf2;
	border-radius: var(--spacing-sm);
	width: 387px;
}

.header__search-input {
	padding: 12px 20px;
	border: none;
	outline: none;
	background-color: transparent;
	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 500;
	color: var(--color-text-secondary);
	width: 100%;
}

.header__search-input::placeholder {
	color: var(--color-text-secondary);
}

.header__search-btn {
	width: 48px;
	height: 100%;
	background: linear-gradient(
		180deg,
		#0085e4 0%,
		#006fc3 52.88%,
		#0064b5 59.62%,
		#0068bc 80.77%,
		#0075d5 100%
	);
	box-shadow: 0px 0px 0px 1px #ffffff40 inset;
	border: 1px solid #018ad6;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 0 10px 10px 0;
}

.header__nav {
	display: grid;
	background: linear-gradient(
		90deg,
		rgba(11, 165, 243, 0.8) 0%,
		rgba(0, 100, 181, 0.8) 100%
	);
	box-shadow:
		inset 0px 2px 1px rgba(0, 28, 71, 0.15),
		inset 0px 2px 6px 2px rgba(0, 28, 71, 0.1);
	border-radius: 0 0 24px 24px;
	padding: 5px 10px;
}

.header__nav .header__search-btn {
	display: none;
}

.search__form {
	background: linear-gradient(180deg, #ffffff 0%, #f0f0f0 100%);
	padding: 7px 12px;
	border-radius: 22px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	flex-grow: 1;
}

.search__form--mobile {
	display: none;
}

.search__input {
	border: none;
	outline: none;
	flex-grow: 1;
	background: inherit;
	min-width: 130px;
}

.search__input,
.search__input::placeholder {
	font-family: var(--font-body);
	color: #6e8ea2;
	font-size: 16px;
	font-weight: 500;
}

.header__nav.header-sticky {
	position: fixed;
	transition: all 0.6s ease;
	z-index: 5;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	width: calc(100% - 40px);
	max-width: 1400px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	border-radius: var(--radius-xl);
	/* background: linear-gradient(
		90deg,
		rgb(11, 165, 243) 0%,
		rgb(0, 100, 181) 100%
	); */
	padding: 5px;
}

.header__nav.header-sticky .header__search-btn {
	display: flex;
    width: auto;
    background: none;
    box-shadow: none;
    border: none;
    outline: none;
    flex-grow: 1;
    flex-direction: row;
    justify-content: flex-start;
}

.header__nav-list {
	display: flex;
	width: fit-content;
	justify-self: flex-end;
	gap: 30px;
	justify-content: flex-end;
	padding: 6px;
	border-radius: 6px 6px 12px 6px;
	box-shadow: 0px 2px 6px 2px #001c471a inset;
	background: #00306740;
}

.header__nav.header-sticky .header__nav-list {
	border-radius: 6px var(--radius-lg) var(--radius-lg) 6px;
	padding: 6px 12px 6px;
	transition: all 0.5s ease-in-out;
}

.header__nav.header-sticky .header__nav-list.nav-hide {
	transform: translateX(100%);
	visibility: hidden;
	opacity: 0;
	display: none;
}

.header__nav-item {
	display: flex;
	align-items: center;
	gap: 5px;
	font-family: var(--font-body);
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;
	color: #d7ebef;
	transition: color 0.3s ease;
}

.dropdown__link {
	position: relative;
}

.dropdown__link::after {
	position: absolute;
	bottom: -30px;
	content: "";
	left: 0;
	width: 100%;
	height: 30px;
}

.header__nav-dropdown {
	position: absolute;
	top: calc(100% + 8px);
	box-shadow:
		0px 32px 48px -16px #001c4780,
		0px 0px 0px 1px #ffffff26 inset;
	padding: 24px;
	border-radius: 24px;
	display: none;
	z-index: 10;
	flex-direction: column;
	gap: 10px;
	background-blend-mode: overlay, multiply;
	background: #0066b940;
	overflow: hidden;
}

.header__nav-dropdown--desktop::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #0066b9a6;
	z-index: -1;
}

.header__nav-dropdown--mobile {
	display: none;
}

.header__nav-dropdown a {
	text-shadow: 0px 1px 2px #001c4740;
	font-weight: 600;
	font-size: 18px;
	line-height: 100%;
	text-transform: uppercase;
	color: #ffffff;
}

@media (min-width: 1101px) {
	.header__dropdown-wrapper:hover .header__nav-dropdown {
		display: flex;
	}

	.header__dropdown-wrapper:hover .header__nav-chevron {
		transform: rotate(180deg);
	}
}

.header__nav-item:hover {
	color: var(--color-bg-white);
}

.header__nav-item--active {
	color: var(--color-bg-white);
}

.header__nav-title {
	text-shadow: 0px 1px 1px #06183240;
	white-space: nowrap;
}

.header__nav-chevron {
	width: 11px;
	height: 6px;
	margin-bottom: 3px;
	margin-left: 5px;
	transition: transform 0.3s ease-in-out;
}

.header__led {
	border-radius: 3px;
	background-color: #041021;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-template-rows: repeat(7, 1fr);
	gap: 1px;
	padding: 1px;
}

.header__led-dot {
	width: 3px;
	height: 3px;
	border-radius: 6px;
	position: relative;
	background:
		radial-gradient(
			52.36% 52.36% at 83.33% 83.33%,
			#ffffff 25.48%,
			rgba(255, 255, 255, 0) 100%
		),
		radial-gradient(
			19.25% 19.25% at 33.33% 33.33%,
			#ffffff 49.52%,
			rgba(255, 255, 255, 0) 100%
		),
		radial-gradient(50% 50% at 50% 50%, #0045ad 0%, #001c47 100%);
	background-blend-mode: overlay, overlay, normal;
}

.header__led-dot::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	opacity: 0;
	transition: opacity 0.3s ease 0.3s;
	background:
		radial-gradient(50% 50% at 50% 50%, #1cb3ff 0%, #0066b9 100%),
		radial-gradient(
			16.67% 16.67% at 33.33% 33.33%,
			rgba(255, 255, 255, 0.5) 49.52%,
			rgba(255, 255, 255, 0) 100%
		),
		radial-gradient(
			40.38% 40.38% at 83.33% 83.33%,
			rgba(255, 255, 255, 0.5) 25.48%,
			rgba(255, 255, 255, 0) 100%
		),
		radial-gradient(50% 50% at 50% 50%, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
	box-shadow:
		0px 0px 12px 0px #0058bd80,
		0px 0px 6px 0px #0058bd,
		0px 0px 2px 0px #0065d8,
		0px 0px 1px 0px #0085e4;
	/* background-blend-mode: overlay, overlay, normal; */
	background-blend-mode: hard-light;
}

.header__nav-item:hover .header__led-dot:nth-child(1)::before,
.header__nav-item:hover .header__led-dot:nth-child(2)::before,
.header__nav-item:hover .header__led-dot:nth-child(7)::before,
.header__nav-item:hover .header__led-dot:nth-child(8)::before,
.header__nav-item:hover .header__led-dot:nth-child(13)::before,
.header__nav-item:hover .header__led-dot:nth-child(14)::before,
.header__nav-item:hover .header__led-dot:nth-child(19)::before,
.header__nav-item:hover .header__led-dot:nth-child(20)::before,
.header__nav-item:hover .header__led-dot:nth-child(23)::before,
.header__nav-item:hover .header__led-dot:nth-child(24)::before,
.header__nav-item:hover .header__led-dot:nth-child(27)::before,
.header__nav-item:hover .header__led-dot:nth-child(28)::before,
.header__nav-item:hover .header__led-dot:nth-child(31)::before,
.header__nav-item:hover .header__led-dot:nth-child(32)::before {
	opacity: 1;
}

.header__nav-item.header__nav-item--active .header__led-dot:nth-child(1)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(2)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(7)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(8)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(13)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(14)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(19)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(20)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(23)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(24)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(27)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(28)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(31)::before,
.header__nav-item.header__nav-item--active .header__led-dot:nth-child(32)::before {
	opacity: 1;
}

.header__logo {
	display: flex;
	align-items: center;
	gap: var(--spacing-sm);
	position: absolute;
	top: 0;
}

.header__nav .header__logo {
	display: none;
}

.header__nav.header-sticky .header__logo {
	display: flex;
	position: relative;
}

.header__logo-box {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
	height: 60px;
	background: linear-gradient(
		180deg,
		#ffffff 0%,
		rgba(255, 255, 255, 0.8) 100%
	);
	padding: 10px 12px;
	backdrop-filter: blur(8px);
	box-shadow:
		inset 0px 0px 0px 1px #ffffff,
		0px 12px 20px rgba(0, 48, 103, 0.25);
	border-radius: var(--radius-md);
	transform: translateY(50%);
}

.header__nav.header-sticky .header__logo-box {
	transform: translateY(0);
	height: 38px;
	border-radius: var(--radius-lg);
	padding-right: 30px;
	padding-left: 30px;
}

.header__logo-img {
	aspect-ratio: 1 / 2;
	height: 110px;
	position: relative;
	z-index: 1;
}

.header__nav.header-sticky .header__logo-img {
	height: 50px;
	min-width: 25px;
}

.header__logo-text {
	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 800;
	text-transform: uppercase;
	color: #000000;
	position: relative;
	z-index: 1;
	max-width: 215px;
	line-height: 1.25;
}

.header__nav.header-sticky .header__logo-text {
	font-size: 14px;
}

.header__burger {
	display: none;
	align-items: center;
	gap: 5px;
	font-family: var(--font-body);
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;
	color: #d7ebef;
	transition: color 0.3s ease;
}

.header__burger .header__led {
	grid-template-columns: repeat(7, 1fr);
	grid-template-rows: repeat(7, 1fr);
	cursor: pointer;
}

.header__burger .header__led-dot:nth-child(n + 8):nth-child(-n + 21)::before,
.header__burger .header__led-dot:nth-child(n + 29):nth-child(-n + 42)::before {
	opacity: 1;
}

.header__led.open-state .header__led-dot:nth-child(11)::before,
.header__led.open-state .header__led-dot:nth-child(15)::before,
.header__led.open-state .header__led-dot:nth-child(21)::before,
.header__led.open-state .header__led-dot:nth-child(29)::before,
.header__led.open-state .header__led-dot:nth-child(35)::before,
.header__led.open-state .header__led-dot:nth-child(39)::before {
	opacity: 0;
}

.header__led.open-state .header__led-dot:nth-child(1)::before,
.header__led.open-state .header__led-dot:nth-child(2)::before,
.header__led.open-state .header__led-dot:nth-child(6)::before,
.header__led.open-state .header__led-dot:nth-child(7)::before,
.header__led.open-state .header__led-dot:nth-child(8)::before,
.header__led.open-state .header__led-dot:nth-child(9)::before,
.header__led.open-state .header__led-dot:nth-child(10)::before,
.header__led.open-state .header__led-dot:nth-child(12)::before,
.header__led.open-state .header__led-dot:nth-child(13)::before,
.header__led.open-state .header__led-dot:nth-child(14)::before,
.header__led.open-state .header__led-dot:nth-child(16)::before,
.header__led.open-state .header__led-dot:nth-child(17)::before,
.header__led.open-state .header__led-dot:nth-child(18)::before,
.header__led.open-state .header__led-dot:nth-child(19)::before,
.header__led.open-state .header__led-dot:nth-child(20)::before,
.header__led.open-state .header__led-dot:nth-child(24)::before,
.header__led.open-state .header__led-dot:nth-child(25)::before,
.header__led.open-state .header__led-dot:nth-child(26)::before,
.header__led.open-state .header__led-dot:nth-child(30)::before,
.header__led.open-state .header__led-dot:nth-child(31)::before,
.header__led.open-state .header__led-dot:nth-child(32)::before,
.header__led.open-state .header__led-dot:nth-child(33)::before,
.header__led.open-state .header__led-dot:nth-child(34)::before,
.header__led.open-state .header__led-dot:nth-child(36)::before,
.header__led.open-state .header__led-dot:nth-child(37)::before,
.header__led.open-state .header__led-dot:nth-child(38)::before,
.header__led.open-state .header__led-dot:nth-child(40)::before,
.header__led.open-state .header__led-dot:nth-child(41)::before,
.header__led.open-state .header__led-dot:nth-child(42)::before,
.header__led.open-state .header__led-dot:nth-child(43)::before,
.header__led.open-state .header__led-dot:nth-child(44)::before,
.header__led.open-state .header__led-dot:nth-child(48)::before,
.header__led.open-state .header__led-dot:nth-child(49)::before {
	opacity: 1;
}

/* ============================================
   АДАПТИВНОСТЬ HEADER
   ============================================ */
@media (max-width: 1350px) {
	.header__emblems {
		display: grid;
		grid-template-columns: repeat(3, auto);
	}

	.header__search {
		width: 100%;
		margin: 0;
		grid-column: 1/4;
		justify-content: space-between;
	}

	.header__nav.header-sticky .header__logo-box {
		width: 100%;
		justify-content: center;
	}

	.header__nav.header-sticky .header__logo-text {
		display: none;
	}
}

@media (max-width: 1200px) {
	.header__nav-list {
		gap: 15px;
	}

	/* .header__nav-item {
		font-size: 16px;
	} */
}

@media (max-width: 1024px) {
	.header__nav-list {
		flex-wrap: wrap;
	}

	.header__emblem {
		justify-content: center;
	}

	.header__emblem-text {
		display: none;
	}
}

@media (max-width: 1100px) {
	.header__nav {
		position: relative;
		display: flex;
		align-items: center;
		border-radius: 12px;
		padding: 4px;
		gap: 10px;
		z-index: 1;
	}

	.header__nav-chevron path {
		stroke: #001c47;
	}

	.header__dropdown-wrapper {
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	.header__nav-dropdown {
		background: #f3f9fa;
		padding: 0;
		gap: 20px;
		box-shadow: none;
	}

	.header__nav-dropdown a {
		color: #001c47;
		text-shadow: none;
	}

	.header__nav-dropdown--mobile {
		position: relative;
		display: none;
		height: 0;
	}

	.header__dropdown-wrapper.visible .header__nav-dropdown--mobile {
		height: auto;
		display: flex;
		padding: 12px;
		margin-top: 21px;
	}

	.header__dropdown-wrapper:hover .header__nav-dropdown--desktop {
		display: none;
	}

	.header__dropdown-wrapper.visible .header__nav-chevron {
		transform: rotate(180deg);
	}

	.search__form--mobile {
		display: flex;
		background: #f3f9fa;
	}

	.search__form--mobile svg {
		min-width: 24px;
	}

	.header__nav.header-sticky {
		left: auto;
		transform: none;
		border-radius: 12px;
		top: 10px;
		gap: 10px;
		padding: 4px;
	}

	.header__nav-list,
	.header__nav.header-sticky .header__nav-list {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		box-shadow: 0px 24px 32px -16px #001c4740;
		position: absolute;
		top: 100%;
		left: 2.5%;
		width: 95%;
		flex-direction: column;
		gap: 21px;
		flex-wrap: nowrap;
		padding: 24px;
		border-radius: 0 0 24px 24px;
		background-color: #ffffff;
		transition:
			opacity 0.3s ease-in-out,
			visibility 0.3s ease-in-out;
		z-index: -1;
	}

	.header__nav-list.show-state,
	.header__nav.header-sticky .header__nav-list.show-state {
		opacity: 1;
		visibility: visible;
		pointer-events: all;
	}

	.header__nav-list .header__nav-title {
		color: #001c47;
		font-family: var(--font-heading);
		text-shadow: none;
	}

	.header__logo {
		display: none;
	}

	.header__nav .header__logo {
		display: flex;
		position: relative;
		flex-grow: 1;
	}

	.header__logo-box {
		width: auto;
		transform: translateY(0);
		height: auto;
		padding: 4px 8px;
	}

	.header__logo-text,
	.header__nav.header-sticky .header__logo-text {
		display: flex;
		font-size: clamp(12px, 3vw, 14px);
		margin-left: 35px;
	}

	.header__logo-img {
		height: 50px;
		min-width: 25px;
		position: absolute;
		left: 8px;
	}

	.header__nav.header-sticky .header__logo-box {
		width: auto;
		border-radius: 8px;
		height: auto;
		padding-left: 8px;
		padding-right: 8px;
	}

	.header__top,
	.header__nav.header-sticky .header__search-btn {
		display: none;
	}

	.header__burger {
		display: flex;
	}
}
@media (max-width: 550px) {
	.header__nav.header-sticky {
		width: calc(100% - 20px);
	}
}

@media (max-width: 425px) {
	.header__burger .header__nav-title {
		display: none;
	}

	.header__logo-box {
		padding: 2px 8px;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/assets/css/footer.css?17902503352607*/
/* ============================================
   FOOTER
   ============================================ */
.footer {
	
	background-size: cover;
	background-position-y: 60%;
	background-repeat: no-repeat;
	box-shadow: 0px 48px 128px -24px #001c4780, 0px 0px 0px 2px #ffffff80 inset;
	border-radius: var(--radius-xl);
	padding: var(--spacing-md) var(--spacing-xl);
	margin: 40px 0;
}

.footer__content {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--spacing-xl);
	margin-bottom: 15px;
}

.footer__logo {
	display: flex;
	align-items: center;
	gap: var(--spacing-md);
}

.footer__logo img {
	width: 95px;
	aspect-ratio: 1 / 2;
	height: auto;
}

.footer__title {
	font-family: var(--font-body);
	font-size: 36px;
	font-weight: 700;
	text-transform: uppercase;
	color: #16323b;
	max-width: 475px;
	line-height: 1.25;
}

.footer__nav {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-md);
}

.footer__nav-row {
	display: flex;
	gap: var(--spacing-md);
}

.footer__link {
	font-family: var(--font-heading);
	font-size: 18px;
	font-weight: 500;
	text-transform: uppercase;
	color: var(--color-text-dark);
	transition: color 0.3s ease;
	white-space: nowrap;
}

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

.footer__bottom {
	max-width: 440px;
	background: #ffffff40;
	padding: 6px 12px;
	border-radius: var(--radius-lg);
}

.footer__text {
	font-family: var(--font-body);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	text-transform: uppercase;
	color: var(--color-text-dark);
}

/* ============================================
   АДАПТИВНОСТЬ FOOTER
   ============================================ */
@media (max-width: 1200px) {
	.footer__nav {
		padding-top: 40px;
	}

	.footer__nav-row {
		flex-direction: column;
		justify-content: flex-end;
	}

	.footer__link {
		text-align: end;
	}
}

@media (max-width: 1024px) {
	.footer__title {
		font-size: 24px;
	}
}

@media (max-width: 768px) {
	.footer {
		padding: 10px;
		border-radius: 32px;
		margin: 20px 0;
	}

	.footer__content {
		flex-direction: column;
		gap: clamp(10px, 4vw, 20px);
	}

	.footer__logo {
		padding: 0 20px;
	}

	.footer__title {
		color: #ffffff;
		font-size: clamp(16px, 4vw, 24px);
	}

	.footer__nav {
		padding: 0 20px;
		width: 100%;
		align-items: flex-start;
	}

	.footer__link {
		text-align: start;
		font-size: clamp(16px, 4vw, 18px);
		white-space: wrap;
	}

	.footer__bottom {
		max-width: none;
	}
}

@media (max-width: 550px) {
	.footer__logo {
		gap: 12px;
	}

	.footer__logo img {
		width: 64px;
	}

	.footer__text {
		font-size: 12px;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/components/bitrix/search.title/title_2025/style.css?17902503362108*/
div.title-search-result {
	border:1px solid #c6c6c6;
	display:none;
	overflow:hidden;
	z-index:205;
}

table.title-search-result {
	border-collapse: collapse;
	border:none;
	width:10%;
}

table.title-search-result th {
	background-color:#F7F7F7;
	border-right:1px solid #e8e8e8;
	color:#949494;
	font-weight:normal;
	padding-top:2px;
	padding-bottom:2px;
	padding-left:14px;
 	padding-right:12px;
	text-align:right;
	vertical-align:top;
	white-space:nowrap;
	width:1%;
}

table.title-search-result td {
	background-color:white;
	color:black;
	font-weight:normal;
	padding-top:2px;
	padding-bottom:2px;
	text-align:left;
	white-space:nowrap;
}

table.title-search-result td.title-search-item {
	padding-left:8px;
	padding-right:15px;
}

table.title-search-result td.title-search-item a {
	padding-left:4px;
	padding-right:15px;
	text-decoration: none;
	color:black;
	vertical-align:top;
	display:block;
}

table.title-search-result td.title-search-item img {
	vertical-align:top;
}

table.title-search-result td.title-search-item b {
	color:#cf0000;
	font-weight:normal;
}

table.title-search-result tr.title-search-selected td
,table.title-search-result tr.title-search-selected a
,table.title-search-result tr.title-search-selected td.title-search-more a
{
	background-color:#fff2be;
}

table.title-search-result td.title-search-more {
	font-size:11px;
	font-weight:normal;
	padding-right:15px;
	padding-left:24px;
	padding-top:0px;
}

table.title-search-result td.title-search-more a
{
	padding-left:12px;
	padding-right:15px;
	text-decoration:none;
	color:#999999;
}

table.title-search-result td.title-search-all {
	padding-left:24px;
	padding-right:15px;
}

table.title-search-result td.title-search-all a
{
	padding-left:4px;
	text-decoration:none;
	color:#808080;
}

table.title-search-result td.title-search-separator
, table.title-search-result th.title-search-separator {
	padding-top:0px;
	padding-bottom:0px;
	font-size:4px;
}

div.title-search-fader {
	display:none;
	background-image: url('/local/templates/fhso_2025/components/bitrix/search.title/title_2025/images/fader.png');
	background-position: right top;
	background-repeat: repeat-y;
	position:absolute;
}
/* End */
/* /local/templates/fhso_2025/assets/css/style.css?177200645313362 */
/* /local/templates/fhso_2025/assets/css/header.css?179025033517007 */
/* /local/templates/fhso_2025/assets/css/footer.css?17902503352607 */
/* /local/templates/fhso_2025/components/bitrix/search.title/title_2025/style.css?17902503362108 */
