/****************** STYLE.CSS - PAGE STYLES *******************/
/****************** MAIN / PAGES *******************/
.pagination__list {justify-content: center; flex-wrap: wrap; gap: 10px;}
.pagination__link {
	min-width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--grey_5);
	border-radius: 6px;
}
.pagination__gap {min-width: 20px; height: 36px; display: inline-flex; align-items: center; justify-content: center; color: var(--text_3);}
.pagination__link.active {background: var(--main); color: var(--text_light); border-color: var(--main);}
.pagination__link[rel="prev"] svg {transform: rotate(180deg);}
.filters__menu {width: 280px; flex-shrink: 0;}
.filters__menu-title {margin-bottom: 12px;}
.socials__items {gap: 12px;}
/****************** MAIN / PAGES - END *******************/

/****************** MAIN / PAGES - ADAPTIVE *******************/
@media (max-width: 767px) {
	.footer__blocks {flex-direction: column; align-items: stretch; gap: 24px;}
	.filters__menu {width: auto;}
}
/****************** MAIN / PAGES - ADAPTIVE - END *******************/

/****************** ACCENT MAP *******************/

.accent__base {--accent: var(--main); --accent_text: var(--main_2); --accent_bg: var(--main_3);}
.accent__youth {--accent: var(--accent_youth); --accent_text: var(--accent_youth_text); --accent_bg: var(--accent_youth_bg);}
.accent__sport {--accent: var(--accent_sport); --accent_text: var(--accent_sport_text); --accent_bg: var(--accent_sport_bg);}
.accent__event {--accent: var(--accent_event); --accent_text: var(--accent_event_text); --accent_bg: var(--accent_event_bg);}

[hidden] {display: none !important;}
/****************** ACCENT MAP - END *******************/

/****************** TYPE *******************/
body {font-family: var(--font_main); color: var(--text); background: var(--body_bg);}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {font-family: var(--font_display); font-weight: 700; letter-spacing: -0.01em;}
h1 strong, h1 b, .h1 strong, .h1 b, h2 strong, h2 b, .h2 strong, .h2 b,
h3 strong, h3 b, .h3 strong, .h3 b, h4 strong, h4 b, .h4 strong, .h4 b,
h5 strong, h5 b, .h5 strong, .h5 b, h6 strong, h6 b, .h6 strong, .h6 b {font-weight: inherit;}
.h1, h1 {font-size: 2.25rem; line-height: 1.12;}
.h2, h2 {font-size: 1.75rem; line-height: 1.18;}
.h3, h3 {font-size: 1.5rem; line-height: 1.25;}
.h4, h4 {font-size: 1.25rem; line-height: 1.3;}
.h5, h5 {font-size: 1.125rem; line-height: 1.35;}
.h6, h6 {font-size: 1rem; line-height: 1.4;}
.compact .content__text {max-width: var(--measure);}
.content__text p {margin: 0 0 16px;}
.content__text h2 {margin: 32px 0 15px;}
.content__text h3 {margin: 26px 0 12px;}
.content__text h4, .content__text h5, .content__text h6 {margin: 20px 0 10px;}
.content__text ul {margin: 0 0 16px; padding-left: 0; list-style: none;}
.content__text ul li {position: relative; padding-left: 22px; margin-bottom: 8px;}
.content__text ul li::before {
	content: '';
	position: absolute; left: 0; top: 0.62em;
	width: 8px; height: 8px; border-radius: 50%;
	background: var(--main);
}

.content__text strong, .content__text b {font-weight: 700;}
/****************** TYPE - END *******************/

/****************** LINKS *******************/
.content__text a, .org__contacts a {color: var(--text_link); text-underline-offset: 2px;}
@media (hover: hover) and (pointer: fine) {
	.content__text a:hover, .org__contacts a:hover {color: var(--text_link_hover); text-decoration: underline;}
}
.content__text a:focus-visible, .org__contacts a:focus-visible {text-decoration: underline;}
.content__text a:active, .org__contacts a:active {color: var(--text_link_active); text-decoration: underline;}
/****************** LINKS - END *******************/

/****************** CONTENT MEDIA *******************/
.content__text img {height: auto !important; border-radius: var(--radius); margin-bottom: 8px;}
/****************** CONTENT MEDIA - END *******************/

/****************** DEVICES *******************/

.decor__mark {
	display: inline-block;
	box-sizing: content-box;
	width: 0.828em; height: 0.75em;
	padding: 0.34em;
	margin-right: 0.44em;
	position: relative; top: 0.34em;
	vertical-align: baseline;
	border-radius: 0.40em;
	background: var(--accent_bg, var(--main_4));
	color: var(--accent_text, var(--main_2));
	fill: currentColor;
	flex: 0 0 auto;
}
:is(h1, h2, h3, h4, .title):has(> .decor__mark) {
	--decor_mark_step: calc(0.828em + 0.34em * 2 + 0.44em);
	padding-left: var(--decor_mark_step);
	text-indent: calc(var(--decor_mark_step) * -1);
}

.decor__node {
	display: inline-block;
	width: 10px; height: 10px; border-radius: 50%;
	background: var(--accent, var(--main));
}

.badge__section,
.badge__org {
	border-radius: var(--radius_pill);
	padding: 4px 12px;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.4;
	display: inline-block;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.badge__section {background: var(--accent_text, var(--main_2)); color: var(--text_light);}
.badge__org {background: var(--grey_1); color: var(--text_2);}
.badge__link {transition: filter .15s ease, background-color .15s ease;}
@media (hover: hover) and (pointer: fine) {
	.badge__section.badge__link:hover {filter: brightness(1.12);}
	.badge__org.badge__link:hover {background: var(--grey_3);}
}
.badge__link:focus-visible {outline: 2px solid var(--focus, var(--main)); outline-offset: 2px;}

.decor__arc-bottom {border-bottom-left-radius: 48% 12%; border-bottom-right-radius: 48% 12%;}

.surface__glass {background: var(--surface_glass); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);}
@media (prefers-reduced-transparency: reduce) {
	.surface__glass {background: var(--surface_glass_solid); -webkit-backdrop-filter: none; backdrop-filter: none;}
}
@media (forced-colors: active) {
	.surface__glass {background: Canvas; -webkit-backdrop-filter: none; backdrop-filter: none;}
}

html[class*="contrast-style"] .surface__glass,
html[class*="invert-colors"] .surface__glass,
html[class*="saturation"] .surface__glass,
body[class*="contrast-style"] .surface__glass,
body[class*="invert-colors"] .surface__glass,
body[class*="saturation"] .surface__glass {background: var(--surface_glass_solid); -webkit-backdrop-filter: none; backdrop-filter: none;}
/****************** DEVICES - END *******************/

/****************** PANELS *******************/

.page__block {padding: var(--block_step) 0;}
.page__block-filled {background: var(--body_bg_2);}
.content__block.page__block-filled {padding: clamp(32px, 4vw, 56px) 0;}
.page__block:not(.page__block-filled):not(.page__block-with-bg):not(.page__block-media):has(+ .page__block:not(.page__block-filled):not(.page__block-with-bg):not(.page__block-media)) {padding-bottom: 0; display: flow-root;}
.page__block-filled:has(+ .page__block-filled) {padding-bottom: 0; display: flow-root;}
.container:has(+ .page__blocks) > .content__blocks {padding-bottom: 0;}
.page__blocks > .page__block:first-child:not(.page__block-hero):not(.page__block-filled):not(.page__block-with-bg) {padding-top: clamp(28px, 3.4vw, 48px);}
.page__blocks-hero + .page__blocks > .page__block:first-child:not(.page__block-filled) {padding-top: var(--block_step);}
.page__block-hero {padding: 0;}
.content__blocks {padding: clamp(20px, 2.2vw, 30px) 0 clamp(28px, 4vw, 56px);}
.content__blocks + .content__blocks {padding-top: 0;}
.content__blocks:has(> .content__block > .breadcrumbs__wrapper:only-child) {padding-bottom: 0;}
.page__block-org-head {padding-top: 14px;}
/****************** PANELS - END *******************/

/****************** HEADER *******************/
.header {
	position: sticky; top: 0; z-index: 40;
	background: var(--surface_glass);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	border-bottom: 1px solid var(--grey_3);
}
@media (prefers-reduced-transparency: reduce) {.header {background: var(--surface_glass_solid); backdrop-filter: none;}}
.header__inner {
	min-height: var(--header_h);
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}
.header__logo {flex: 0 0 auto; display: block; line-height: 0;}
.header__logo svg {width: 210px; height: auto; display: block;}
.header__actions {align-items: center; gap: 12px; flex: 0 0 auto;}
.header__a11y {
	width: 40px; height: 40px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 50%;
	background: var(--grey_1);
	color: var(--main);
	transition: background var(--transition), color var(--transition);
}
.header__a11y:hover {background: var(--main_3);}
.header__a11y:active {background: var(--main_4);}
.header__a11y-off {display: none;}
/****************** HEADER - END *******************/

/****************** ACCESSIBILITY PANEL *******************/
#accessibility-modal.close {display: none;}
.a11y-panel-loose #accessibility-modal.close {display: flex;}
/****************** ACCESSIBILITY PANEL - END *******************/

/****************** LANGS MENU *******************/
.langs__menu ul {gap: 4px;}
.langs__menu a {
	display: inline-block;
	padding: 4px 8px;
	border-radius: var(--radius_sm);
	font-size: 0.875rem;
	color: var(--text_2);
}
.langs__menu a.active {background: var(--main_3); color: var(--main_2); font-weight: 500;}
.langs__menu-off {display: none;}
/****************** LANGS MENU - END *******************/

/****************** BURGER *******************/
.header__burger {display: none; width: 44px; height: 44px; align-items: center; justify-content: center;}
.header__burger-lines, .header__burger-lines::before, .header__burger-lines::after {
	display: block; width: 22px; height: 2px; border-radius: 2px; background: var(--text);
}
.header__burger-lines {position: relative;}
.header__burger-lines::before, .header__burger-lines::after {content: ''; position: absolute; left: 0;}
.header__burger-lines::before {top: -7px;}
.header__burger-lines::after {top: 7px;}
/****************** BURGER - END *******************/

/****************** MAIN MENU - MEGA PANEL *******************/
.main__menu {flex: 1 1 auto; min-width: 0;}
.main__menu > ul {justify-content: center; gap: 2px; flex-wrap: wrap;}
.main__menu > ul > li {position: static;}
.main__menu > ul > li > a {
	display: flex; align-items: center; gap: 6px;
	height: var(--header_h);
	padding: 0 10px;
	white-space: nowrap;
	font-size: 0.9375rem;
	color: var(--text);
	position: relative;
	transition: color var(--transition);
}
.main__menu > ul > li.has__children > a::after {
	content: '';
	width: 6px; height: 6px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: translateY(-2px) rotate(45deg);
	transition: transform var(--transition);
}
.main__menu > ul > li > a::before {
	content: '';
	position: absolute; left: 10px; right: 10px; bottom: 14px;
	height: 2px; border-radius: 2px;
	background: var(--accent, var(--main));
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform var(--transition);
}
.main__menu > ul > li:hover > a::before,
.main__menu > ul > li:focus-within > a::before,
.main__menu > ul > li.active > a::before {transform: scaleX(1);}
.main__menu > ul > li:hover > a, .main__menu > ul > li:focus-within > a {color: var(--main_2);}
.main__menu > ul > li > a:active {color: var(--text_link_active);}
.main__menu > ul > li.has__children.menu__item-open > a::after {transform: translateY(1px) rotate(-135deg);}

.main__menu > ul > li > ul {
	position: absolute;
	left: 0; right: 0; top: 100%;
	display: block;
	background: var(--body_bg);
	border-top: 1px solid var(--grey_3);
	box-shadow: var(--shadow_3);
	padding: 24px max(24px, calc((100vw - 1280px) / 2 + 24px));
	columns: 2;
	column-gap: 32px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px);
	transition: opacity var(--transition), transform var(--transition), visibility var(--transition);
	border-bottom-left-radius: var(--radius_lg);
	border-bottom-right-radius: var(--radius_lg);
}
.main__menu > ul > li.menu__item-open > ul {opacity: 1; visibility: visible; transform: translateY(0);}
.main__menu > ul > li > ul > li {break-inside: avoid; margin-bottom: 2px;}
.main__menu > ul > li > ul > li > a {
	display: block;
	padding: 10px 14px;
	border-radius: var(--radius_sm);
	color: var(--text);
	transition: background var(--transition), color var(--transition);
}
.main__menu > ul > li > ul > li > a:hover {background: var(--accent_bg, var(--main_3)); color: var(--accent_text, var(--main_2));}
.main__menu > ul > li > ul > li > a:active {background: var(--accent_bg, var(--main_3)); color: var(--accent_text, var(--main_2)); filter: brightness(0.94);}
/****************** MAIN MENU - MEGA PANEL - END *******************/

/****************** SHEET MENU *******************/
.popup__menu {
	position: fixed; inset: 0; z-index: 60;
	display: none;
}
.popup__menu.active {display: block;}
.popup__menu .popup__overlay {position: absolute; inset: 0; background: var(--overlay);}
.popup__menu-panel {
	position: absolute; left: 0; right: 0; bottom: 0;
	max-height: 92vh;
	display: flex; flex-direction: column;
	background: var(--body_bg);
	border-top-left-radius: var(--radius_lg);
	border-top-right-radius: var(--radius_lg);
	overflow: hidden;
	transform: translateY(100%);
	transition: transform var(--transition_slow);
}
.popup__menu.active .popup__menu-panel {transform: translateY(0);}
.popup__menu-top {
	position: sticky; top: 0; z-index: 1;
	align-items: center; justify-content: space-between;
	gap: 16px;
	padding: 14px 20px;
	border-bottom: 1px solid var(--grey_3);
}
.popup__menu-logo svg {width: 160px; height: auto; display: block;}
.popup__menu-close {width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--grey_1);}
.popup__menu-nav {overflow-y: auto; padding: 8px 12px 4px;}
.popup__menu-nav > ul {flex-direction: column; align-items: stretch; gap: 2px;}
.popup__menu-nav a, .popup__menu-toggle {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	box-sizing: border-box; width: 100%;
	padding: 14px 12px;
	border-radius: var(--radius);
	font-size: 1.0625rem;
	color: var(--text);
	text-align: left;
}
.popup__menu-nav a:hover, .popup__menu-toggle:hover {background: var(--grey_1);}
.popup__menu-nav a:active, .popup__menu-toggle:active {background: var(--grey_3);}
.popup__menu-toggle svg {transition: transform var(--transition); flex: 0 0 auto;}
.popup__menu-toggle[aria-expanded="true"] svg {transform: rotate(90deg);}
.popup__menu-toggle[aria-expanded="true"] {color: var(--accent_text, var(--main_2));}
.popup__menu-sub {display: none; padding: 0 0 8px 12px;}
.popup__menu-sub.active {display: block;}
.popup__menu-sub a {font-size: 0.9375rem; padding: 11px 12px; color: var(--text_2);}
.popup__menu-bottom {
	border-top: 1px solid var(--grey_3);
	padding: 16px 20px calc(16px + env(safe-area-inset-bottom));
	display: flex; flex-direction: column; gap: 12px; align-items: stretch;
}
.popup__menu-bottom .socials__items {justify-content: center;}
/****************** SHEET MENU - END *******************/

/****************** HERO *******************/
.hero {
	position: relative;
	overflow: hidden;
	padding: clamp(48px, 8vw, 108px) 0 clamp(56px, 9vw, 120px);
	color: var(--text_light);
	background: linear-gradient(135deg, var(--main_2) 0%, var(--main_2) 46%, var(--main) 74%, var(--accent_sport) 148%);
}
.hero.decor__arc-bottom, .hero {border-bottom-left-radius: 48% 10%; border-bottom-right-radius: 48% 10%;}
.hero__inner {max-width: 760px;}
.hero__eyebrow {
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--text_light);
	margin: 0 0 14px;
}
.hero__title {color: var(--text_light); margin: 0 0 18px; text-wrap: balance;}
.hero__lead {font-size: 1.1875rem; line-height: 1.55; color: var(--text_light); margin: 0 0 28px; max-width: 58ch;}
.hero__actions {gap: 12px; flex-wrap: wrap; justify-content: flex-start;}
.hero__actions .btn__secondary {background: var(--color_white); color: var(--main_2);}
.hero__actions .btn__secondary:hover {background: var(--main_4);}
.hero__actions .btn__secondary:active {background: var(--main_5);}

.hero__mark {
	position: absolute; right: -170px; top: 14%; z-index: 2;
	width: 340px; height: auto;
	margin: 0;
	color: rgba(255, 255, 255, 0.10);
	fill: currentColor;
	pointer-events: none;
}
.hero > .container {position: relative; z-index: 2; pointer-events: none;}
.hero__inner {pointer-events: auto;}
/****************** HERO - END *******************/

/****************** HERO PHOTO STRIP *******************/
.hero__strip {--tile: 300px; position: absolute; inset: 0; z-index: 0; display: flex; align-items: center; overflow: hidden;}
.hero__strip-track {display: flex; align-items: center; width: max-content;}
.hero__strip-go .hero__strip-track {animation: usms-drift 84s linear infinite;}
.hero__strip-off .hero__strip-track {animation-play-state: paused;}
@keyframes usms-drift {from {transform: translateX(0);} to {transform: translateX(-50%);}}
/****************** HERO PHOTO STRIP - END *******************/

/****************** HERO VEIL *******************/
.hero__veil {position: absolute; inset: 0; z-index: 1; pointer-events: none;}
.hero__veil {background: linear-gradient(100deg, rgba(var(--main_2_num), 0.93) 0%, rgba(var(--main_2_num), 0.88) 56%, rgba(var(--main_num), 0.64) 70%, rgba(var(--main_num), 0.22) 86%, rgba(var(--accent_sport_num), 0.12) 100%);}
/****************** HERO VEIL - END *******************/

/****************** POLAROID TILE *******************/
.decor__polaroid {
	flex: 0 0 auto;
	position: relative;
	margin: 0 clamp(18px, 2.2vw, 44px) 0 0;
	padding: calc(var(--tile) * 0.056) calc(var(--tile) * 0.056) calc(var(--tile) * 0.270);
	background: var(--color_white);
	border-radius: 2px;
	box-shadow: var(--shadow_2);
	transform: translateY(calc(var(--tile) * var(--lift, 0) * var(--lift_k, 1))) rotate(var(--tilt, 0deg));
	transition: box-shadow var(--transition_slow);
}
.decor__polaroid-media {display: block; overflow: hidden;}
.decor__polaroid img {display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: 50% 38%; transition: filter var(--transition_slow);}
.hero__strip .decor__polaroid-1  {width: calc(var(--tile) * 1.000); --tilt: -6.4deg; --lift: -0.20;}
.hero__strip .decor__polaroid-2  {width: calc(var(--tile) * 0.720); --tilt:  4.1deg; --lift:  0.26;}
.hero__strip .decor__polaroid-3  {width: calc(var(--tile) * 1.180); --tilt:  1.2deg; --lift: -0.06;}
.hero__strip .decor__polaroid-4  {width: calc(var(--tile) * 0.840); --tilt: -3.0deg; --lift:  0.33;}
.hero__strip .decor__polaroid-5  {width: calc(var(--tile) * 1.060); --tilt:  7.6deg; --lift: -0.29;}
.hero__strip .decor__polaroid-6  {width: calc(var(--tile) * 0.780); --tilt: -1.5deg; --lift:  0.10;}
.hero__strip .decor__polaroid-7  {width: calc(var(--tile) * 1.250); --tilt:  2.8deg; --lift: -0.14;}
.hero__strip .decor__polaroid-8  {width: calc(var(--tile) * 0.900); --tilt: -7.9deg; --lift:  0.19;}
.hero__strip .decor__polaroid-9  {width: calc(var(--tile) * 1.120); --tilt:  0.6deg; --lift: -0.33;}
.hero__strip .decor__polaroid-10 {width: calc(var(--tile) * 0.760); --tilt:  5.9deg; --lift:  0.30;}
.hero__strip .decor__polaroid-11 {width: calc(var(--tile) * 1.030); --tilt: -2.2deg; --lift: -0.09;}
.hero__strip .decor__polaroid-12 {width: calc(var(--tile) * 0.870); --tilt:  6.8deg; --lift:  0.22;}
.hero__strip .decor__polaroid-13 {width: calc(var(--tile) * 1.150); --tilt: -4.7deg; --lift: -0.25;}
.hero__strip .decor__polaroid-14 {width: calc(var(--tile) * 0.800); --tilt:  3.4deg; --lift:  0.14;}
.hero__strip .decor__polaroid:hover {box-shadow: var(--shadow_3);}
.hero__strip .decor__polaroid:hover img {filter: saturate(1.35) brightness(1.12) contrast(1.04);}

@media (prefers-reduced-transparency: reduce) {.hero__strip {display: none;} .hero__veil {display: none;}}
@media (forced-colors: active) {.hero__strip {display: none;} .hero__veil {display: none;}}
/****************** POLAROID TILE - END *******************/

/****************** SECTION HEADS *******************/
.title__block {margin-bottom: clamp(20px, 2.6vw, 32px);}
a.title__link {display: flex; align-items: baseline; justify-content: space-between; gap: 20px; flex-wrap: wrap;}
.title__block .title {display: flex; align-items: baseline; margin: 0;}
.title__block .title:has(> .decor__mark) {padding-left: 0; text-indent: 0;}
.title__link-more {
	display: inline-flex; align-items: center; gap: 6px;
	font-size: 0.9375rem; font-weight: 500; color: var(--main);
	white-space: nowrap;
	transition: gap var(--transition), color var(--transition);
}
a.title__link:hover .title__link-more {gap: 10px; color: var(--main_2);}
a.title__link:active .title__link-more {gap: 10px; color: var(--text_link_active);}

a.title__link .title {position: relative; z-index: 0;}
a.title__link .title::after {
	content: '';
	position: absolute; z-index: -1;
	left: 1.95em; right: 0; bottom: -0.13em;
	height: 0.33em;
	border-radius: 0.1em;
	background: color-mix(in srgb, var(--accent, var(--main)) 18%, transparent);
	transform: scaleX(0); transform-origin: left center;
	transition: transform var(--transition);
}
a.title__link:hover .title::after,
a.title__link:focus-visible .title::after {transform: scaleX(1);}
/****************** SECTION HEADS - END *******************/

/****************** BREADCRUMBS *******************/
.breadcrumbs__wrapper {margin-bottom: 16px;}
.breadcrumbs {justify-content: flex-start; align-items: center; flex-wrap: wrap; gap: 4px 10px; font-size: 0.875rem; color: var(--text_3); list-style: none; padding: 0; margin: 0;}
.breadcrumbs__item {display: flex; align-items: center; gap: 10px; min-width: 0;}
.breadcrumbs__item + .breadcrumbs__item::before {content: ''; width: 5px; height: 5px; border-radius: 50%; background: var(--grey_5); flex: 0 0 auto;}
.breadcrumbs__item a {color: var(--text_3); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: rgba(var(--main_num), 0.35);}
.breadcrumbs__section {color: var(--text_3);}
.breadcrumbs__item a:hover {color: var(--main); text-decoration-color: currentColor;}
.breadcrumbs__item a:active {color: var(--text_link_active); text-decoration-color: currentColor;}
.breadcrumbs__current {display: block; max-width: min(52ch, 100%); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--text); font-weight: 400;}
.breadcrumbs__item:last-child {flex: 1 1 0%;}
.container__breadcrumbs + .container > .content__blocks {padding-top: 0;}

@media (max-width: 767px) {
	.breadcrumbs {
		flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; -ms-overflow-style: none;
		margin-inline: calc(var(--container_pad) * -1);
		padding-inline: var(--container_pad);
		scroll-padding-inline: var(--container_pad);
	}
	.breadcrumbs::-webkit-scrollbar {display: none;}
	.breadcrumbs__item, .breadcrumbs__item:last-child {flex: 0 0 auto;}
	.breadcrumbs__current {display: block; -webkit-line-clamp: none; max-width: none; white-space: nowrap; text-overflow: clip; overflow: visible;}
}
/****************** BREADCRUMBS - END *******************/

/****************** PAGINATION *******************/
.pagination__bottom {margin-top: 32px;}
/****************** PAGINATION - END *******************/

/****************** CARDS - NEWS *******************/
.articles__items {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	align-items: stretch;
	list-style: none;
	padding: 0;
	margin: 0;
}
.articles__item {display: flex; align-items: stretch;}
.articles__item > .articles__item-inner {width: 100%;}
.articles__item-inner {
	display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start;
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius);
	overflow: hidden;
	transition: box-shadow var(--transition), border-color var(--transition);
}
.articles__item-inner:hover {box-shadow: var(--shadow_3); border-color: transparent;}
.articles__item-inner:active {box-shadow: var(--shadow_1); border-color: transparent;}
.articles__item-link {display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; flex: 1 1 auto;}
.articles__item-images-wrapper {position: relative;}
.articles__item-image {display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--grey_1);}
.articles__item-image-inner {width: 100%; height: 100%;}
.articles__item-image-inner img {width: 100%; height: 100%; object-fit: cover; transition: transform var(--transition_slow);}
.articles__item-inner:hover .articles__item-image-inner img {transform: scale(1.03);}
.cover__placeholder {
	display: flex; align-items: center; justify-content: center;
	width: 100%; height: 100%;
	aspect-ratio: 3 / 2;
	background: var(--accent_bg, var(--main_3));
	color: var(--accent_text, var(--main_2));
}
.cover__placeholder svg {width: 30%; min-width: 44px; max-width: 88px; height: auto; opacity: .3;}
.articles__item-images-wrapper .badge__section {position: absolute; left: 12px; top: 12px; max-width: calc(100% - 24px);}
.articles__item-content {display: flex; flex-direction: column; gap: 8px; padding: 16px 18px 20px;}
.articles__item-meta {
	display: flex; flex-wrap: nowrap; gap: 4px 12px;
	font-size: 0.8125rem; color: var(--text_3);
	align-items: center;
}
.articles__item-meta time {flex: 0 0 auto;}
.articles__item-org {position: relative; padding-left: 14px; max-width: 100%; min-width: 0;}
.articles__item-org::before {
	content: '';
	position: absolute; left: 0; top: 50%;
	width: 6px; height: 6px; margin-top: -3px;
	border-radius: 50%;
	background: var(--grey_5);
}
.articles__item-title {margin: 0; font-size: 1.125rem; line-height: 1.3;}
.articles__item-name {font-family: var(--font_display); font-weight: 700; color: var(--text);}
.articles__item-inner:hover .articles__item-name {color: var(--main_2);}
/****************** CARDS - NEWS - END *******************/

/****************** CARDS - EVENTS *******************/
.event__items,
.events__items {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	align-items: stretch;
	list-style: none; padding: 0; margin: 0;
}
.events__item {display: flex; align-items: stretch;}
.events__item > .events__item-inner {width: 100%;}
.events__item-inner {
	display: flex; align-items: flex-start; justify-content: flex-start; gap: 18px;
	padding: 18px;
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius);
	transition: box-shadow var(--transition), border-color var(--transition);
}
.events__item-inner:hover {box-shadow: var(--shadow_3); border-color: transparent;}
.events__item-inner:active {box-shadow: var(--shadow_1); border-color: transparent;}
.events__item-date {
	flex: 0 0 auto;
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	width: 68px; height: 68px;
	border-radius: var(--radius);
	background: var(--accent, var(--accent_event));
	color: var(--text);
	line-height: 1.05;
}
.events__item-day {font-family: var(--font_display); font-size: 1.625rem; font-weight: 700;}
.events__item-month {font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.06em;}
.events__item-content {display: flex; flex-direction: column; gap: 8px; min-width: 0; flex: 1 1 auto;}
.events__item-meta {display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; font-size: 0.8125rem; color: var(--text_3);}
.events__item-title {margin: 0; font-size: 1.125rem; line-height: 1.3;}
.events__item-name {font-family: var(--font_display); font-weight: 700; color: var(--text);}
.events__item-inner:hover .events__item-name {color: var(--main_2);}
.events__item-place {display: flex; align-items: center; gap: 6px; margin: 0; color: var(--text_2); font-size: 0.875rem;}
.events__item-place svg {flex: 0 0 auto; color: var(--grey_6);}
.events__item-place span {min-width: 0;}
/****************** CARDS - EVENTS - END *******************/

/****************** CARDS - ORGANISATIONS *******************/
.orgs__items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 16px;
	list-style: none; padding: 0; margin: 0;
}
.orgs__item {flex: 0 1 calc((100% - 32px) / 3); max-width: calc((100% - 32px) / 3); align-items: stretch;}
.orgs__item > .orgs__item-inner {width: 100%;}
.orgs__item-inner {
	display: flex; align-items: center; gap: 14px;
	padding: 14px;
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius);
	transition: box-shadow var(--transition), border-color var(--transition);
}
.orgs__item-inner:hover {box-shadow: var(--shadow_2); border-color: transparent;}
.orgs__item-inner:active {box-shadow: var(--shadow_1); border-color: transparent;}
.orgs__item-logo {
	flex: 0 0 auto;
	width: 56px; height: 56px;
	display: flex; align-items: center; justify-content: center;
	border-radius: var(--radius_sm);
	background: var(--accent_bg, var(--main_3));
	overflow: hidden;
}
.orgs__item-abbr {font-family: var(--font_display); font-size: 0.875rem; font-weight: 700; letter-spacing: -0.02em; white-space: nowrap; color: var(--accent_text, var(--main_2));}
.orgs__item-content {display: flex; flex-direction: column; gap: 4px; min-width: 0; flex: 1 1 auto;}
.orgs__item-name {font-weight: 500; line-height: 1.35;}
.orgs__item-summary {--lines: 3; font-size: 0.8125rem; color: var(--text_3); line-height: 1.4;}
.orgs__item-arrow {flex: 0 0 auto; color: var(--grey_6); transition: transform var(--transition), color var(--transition);}
.orgs__item-inner:hover .orgs__item-arrow {transform: translateX(3px); color: var(--main);}
/****************** CARDS - ORGANISATIONS - END *******************/

/****************** ABOUT + QUICK LINKS *******************/
.about__inner {align-items: flex-start; gap: clamp(24px, 4vw, 56px);}
.about__text {flex: 1 1 55%;}
.quick__links {flex: 1 1 40%; min-width: 0;}
.quick__links-items {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: stretch; list-style: none; padding: 0; margin: 0;}
.quick__links-items > li {display: flex; align-items: stretch;}
.quick__links-item {
	display: flex; align-items: center; gap: 12px;
	flex: 1 1 auto;
	padding: 14px;
	background: var(--body_bg);
	border-radius: var(--radius);
	border: 1px solid var(--grey_3);
	font-weight: 500;
	transition: box-shadow var(--transition), border-color var(--transition);
}
.quick__links-item:hover {box-shadow: var(--shadow_2); border-color: transparent;}
.quick__links-item:active {box-shadow: var(--shadow_1); border-color: transparent;}
.quick__links-icon {
	flex: 0 0 auto;
	width: 40px; height: 40px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: var(--radius_sm);
	background: var(--grey_1);
	color: var(--main);
	transition: background var(--transition);
}
.quick__links-item:hover .quick__links-icon {background: var(--main_3);}
/****************** ABOUT + QUICK LINKS - END *******************/

/****************** FORM *******************/
.form__contact {box-sizing: border-box; background: var(--body_bg_3); border-radius: var(--radius_lg); padding: clamp(20px, 3vw, 40px);}
.form__contact-inner {max-width: 860px; margin: 0 auto;}
.form__contact-title {margin: 0 0 8px;}
.form__contact-note {margin: 0 0 24px; color: var(--text_2); max-width: 62ch;}
.form__contact .form__cols {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px;}
.input__req {color: var(--color_error);}
.form__consent {margin: 4px 0 20px;}
.form__captcha-off {display: none;}
/****************** FORM - END *******************/

/****************** FILTERS *******************/
.catalog__page {align-items: flex-start; gap: 28px;}
.catalog__page-filters {flex: 0 0 268px; width: 268px; order: 2;}
.catalog__page-content {flex: 1 1 auto; min-width: 0; order: 1;}
.catalog__page-nav-block {align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 24px;}
.catalog__filters-toggle {display: none; align-items: center; gap: 8px;}
.filters__menu-inner {
	box-sizing: border-box;
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius);
	padding: 20px;
}
.filters__menu-head {display: none; align-items: center; justify-content: space-between; margin-bottom: 12px;}
.filters__menu-title {font-family: var(--font_display); font-weight: 700; font-size: 1.125rem;}
.filters__group {border: 0; padding: 0; margin: 0 0 20px;}
.filters__group-title {padding: 0; margin: 0 0 10px; font-weight: 500; font-size: 0.875rem; color: var(--text_2);}
.filters__list {list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px;}
.chip__count {color: var(--text_3); font-size: 0.75rem;}
@media (pointer: coarse) {
	.filters__list .chip {min-height: 44px; padding-left: 14px; padding-right: 14px;}
	.filters__list {gap: 12px;}
}
.chip.active {background: var(--accent, var(--main)); color: var(--text_light); border-color: transparent;}
.chip.active.accent__youth, .chip.active.accent__sport, .chip.active.accent__event {color: var(--text);}
.chip.active .chip__count {color: inherit;}
.filters__reset {width: 100%;}
/****************** FILTERS - END *******************/

/****************** EVENTS - LIST / CALENDAR SWITCH *******************/
.calendar__filter-wrapper {margin: 0 0 clamp(20px, 3vw, 32px);}
.calendar__filter-narrow {display: flex; justify-content: flex-start;}
.calendar__filter-items {
	display: inline-flex; align-items: stretch; gap: 4px;
	padding: 4px;
	background: var(--grey_1);
	border-radius: var(--radius_pill);
}
.calendar__filter-items button {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 9px 20px;
	border: 0; background: transparent; cursor: pointer;
	border-radius: var(--radius_pill);
	font-family: inherit; font-size: 0.9375rem; font-weight: 500; white-space: nowrap;
	color: var(--text_2);
	transition: background var(--transition), color var(--transition);
}
.calendar__filter-items button svg {flex: 0 0 auto;}
.calendar__filter-items button:hover {color: var(--text);}
.calendar__filter-items button:active {color: var(--main_2);}
.calendar__filter-items button.active {background: var(--body_bg); color: var(--main_2); box-shadow: var(--shadow_1);}
.events__list-container {display: none;}
/****************** EVENTS - LIST / CALENDAR SWITCH - END *******************/

/****************** CALENDAR *******************/
.calendar__wrapper {
	box-sizing: border-box;
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius_lg);
	padding: clamp(14px, 2.4vw, 28px);
}
.calendar__wrapper.calendar__loading {opacity: 0.5; pointer-events: none;}
.calendar__narrow {max-width: 1000px; margin: 0 auto;}
.calendar__top {display: flex; align-items: center; justify-content: center; gap: 20px; margin: 0 0 18px;}
.calendar__top-info {display: none;}
.calendar__top-prev, .calendar__top-next {
	flex: 0 0 auto;
	display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px;
	border: 1px solid var(--grey_3); background: var(--body_bg); cursor: pointer;
	border-radius: var(--radius_sm);
	color: var(--text_2);
	transition: background var(--transition), color var(--transition), border-color var(--transition);
}
.calendar__top-prev svg, .calendar__top-next svg {width: 20px; height: 20px;}
.calendar__top-prev svg {transform: rotate(180deg);}
.calendar__top-prev:hover, .calendar__top-next:hover {background: var(--main_3); color: var(--main_2); border-color: transparent;}
.calendar__top-prev:active, .calendar__top-next:active {background: var(--main_4); color: var(--main_2); border-color: transparent;}
.calendar__top-current {
	min-width: 11ch; text-align: center;
	font-family: var(--font_display); font-weight: 700; font-size: 1.25rem;
}
.calendar__table_wrapper {position: relative;}
.calendar__table {width: 100%; border-collapse: collapse; table-layout: fixed;}
.calendar__head .calendar__cell {
	padding: 4px 0 10px;
	font-size: 0.8125rem; font-weight: 500; text-align: center;
	color: var(--text_3);
}
.calendar__body .calendar__cell {
	position: relative;
	vertical-align: top;
	height: 76px;
	padding: 8px;
	border: 1px solid var(--grey_3);
	color: var(--text_2);
}
.calendar__cell-other-month {background: var(--grey_1); color: var(--text_3);}
.calendar__cell-other-month .calendar__cell-day {color: var(--text_3); font-weight: 500;}
.calendar__cell-day {font-family: var(--font_display); font-weight: 700; font-size: 1rem; line-height: 1.2;}
.calendar__cell-future .calendar__cell-day {color: var(--text);}
.calendar__cell-has-event {background: var(--accent_event_bg); box-shadow: inset 0 0 0 2px var(--accent_event); color: var(--text);}
.calendar__cell-today {box-shadow: inset 0 0 0 2px var(--main);}
.calendar__cell-today.calendar__cell-has-event {box-shadow: inset 0 0 0 2px var(--accent_event), inset 0 0 0 4px var(--main);}
.calendar__cell-today .calendar__cell-day {color: var(--main_2);}
.calendar__cell-mark {
	position: absolute; left: 8px; bottom: 8px;
	display: inline-flex; align-items: center; gap: 5px;
}
.calendar__cell-mark .decor__node {background: var(--accent_event_text);}
.calendar__cell-count {font-size: 0.75rem; font-weight: 500; color: var(--text_2);}
.calendar__cell-events-link {
	position: absolute; inset: 0;
	display: block; width: 100%;
	border: 0; background: transparent; padding: 0; cursor: pointer;
	transition: background var(--transition);
}
.calendar__cell-events-link:hover {background: var(--accent_event); opacity: 0.22;}
.calendar__cell-events-link:active {background: var(--accent_event); opacity: 0.36;}
.calendar__cell-events {display: none;}

.calendar__table-popup {
	display: none;
	position: absolute; inset: 0 0 auto 0; max-height: 100%; z-index: 5;
	box-sizing: border-box;
	padding: 16px 16px 16px;
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius);
	box-shadow: var(--shadow_3);
	overflow: hidden;
}
.calendar__table-close-popup {
	position: absolute; top: 10px; right: 10px;
	display: inline-flex; align-items: center; justify-content: center;
	width: 36px; height: 36px;
	border-radius: var(--radius_sm);
	color: var(--text_2);
}
.calendar__table-close-popup:hover {background: var(--grey_1); color: var(--text);}
.calendar__table-close-popup:active {background: var(--grey_3); color: var(--text);}
.calendar__table-close-popup svg {width: 20px; height: 20px;}
.calendar__table-inner-popup {padding-right: 40px; max-height: 100%; overflow-y: auto; overscroll-behavior: contain;}
.calendar__cell-event + .calendar__cell-event {margin-top: 8px;}
.calendar__cell-event a {
	display: block;
	padding: 10px 12px;
	border-radius: var(--radius_sm);
	background: var(--body_bg_3);
	font-weight: 500; line-height: 1.35;
	color: var(--text);
	text-decoration: none;
}
.calendar__cell-event a:hover {background: var(--accent_event_bg);}
.calendar__cell-event a:active {background: var(--accent_event_bg); filter: brightness(0.95);}
.calendar__cell-event a span {color: var(--text_2); font-weight: 400;}
.calendar__empty {margin: 18px 0 0; text-align: center; color: var(--text_2);}

@media (max-width: 1023px) {
	.calendar__cell-mobile-title {display: none;}
	.calendar__body .calendar__cell {height: 64px; padding: 6px;}
}
@media (max-width: 767px) {
	.calendar__table-popup {position: fixed; inset: auto 0 0 0; max-height: 80vh; padding: 16px; border-width: 1px 0 0; border-radius: var(--radius_lg) var(--radius_lg) 0 0;}
	.calendar__table-inner-popup {max-height: calc(80vh - 32px);}
	.calendar__table-close-popup {top: 12px; right: 12px;}
	.calendar__body .calendar__cell {height: 54px; padding: 5px;}
	.calendar__cell-day {font-size: 0.875rem;}
	.calendar__cell-mark {left: 5px; bottom: 5px; gap: 3px;}
	.calendar__cell-mark .decor__node {width: 7px; height: 7px;}
	.calendar__top-current {font-size: 1.0625rem; min-width: 9ch;}
	.calendar__filter-items button {padding: 9px 14px; font-size: 0.875rem;}
}
@media (max-width: 479px) {
	.calendar__wrapper {padding: 12px 8px;}
	.calendar__body .calendar__cell {height: 46px; padding: 4px;}
	.calendar__head .calendar__cell {font-size: 0.75rem;}
	.calendar__cell-count {font-size: 0.6875rem;}
	.calendar__filter-items button {padding: 9px 12px; gap: 6px; font-size: 0.8125rem;}
	.calendar__filter-items button svg {width: 18px; height: 18px;}
}
@media (prefers-reduced-motion: reduce) {
	.calendar__filter-items button, .calendar__top-prev, .calendar__top-next, .calendar__cell-events-link {transition: none;}
}
/****************** CALENDAR - END *******************/

/****************** ARTICLE *******************/
.article__head {margin-bottom: 24px;}
.article__meta {justify-content: flex-start; align-items: center; flex-wrap: wrap; gap: 10px 16px; margin-bottom: 12px; font-size: 0.875rem; color: var(--text_3);}
.article__duration {display: inline-flex; align-items: center; gap: 6px;}
.article__head .article__title {margin: 0 0 14px; font-size: clamp(1.375rem, 0.55rem + 2.2vw, 2.5rem); line-height: 1.16; overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto;}
.article__lead {font-size: 1.125rem; line-height: 1.55; color: var(--text_2); margin: 0; max-width: var(--measure);}
.article__cover {margin: 0 0 28px; border-radius: var(--radius_lg); overflow: hidden; aspect-ratio: 16 / 9; background: var(--grey_1);}
.article__cover img {width: 100%; height: 100%; object-fit: cover;}
.article__body {margin-bottom: 32px;}
.article__gallery, .article__docs {margin: 0 0 32px;}
.article__gallery .title, .article__docs .title {margin: 0 0 16px;}
.gallery__photos {position: relative; margin: 0 -6px;}
.container__fullscreen .gallery__photos {margin-left: 0; margin-right: 0;}
.gallery__photos::after {content: ''; display: block; clear: both;}
.gallery__photo-sizer {width: 25%;}
.gallery__photo {box-sizing: border-box; float: left; width: 25%; padding: 0 6px 12px;}
.gallery__photo-inner {position: relative;}
.gallery__photo-inner > a {display: block; position: relative; border-radius: var(--radius); overflow: hidden;}
.gallery__photo-img {display: block; aspect-ratio: var(--photo_ratio, 1 / 1); overflow: hidden;}
.gallery__photo-img img {display: block; width: 100%; height: 100%; object-fit: cover; transition: transform var(--transition_slow);}
.gallery__photo-inner > a:hover .gallery__photo-img img {transform: scale(1.04);}
.play__icon {
	position: absolute; inset: 0; z-index: 2; margin: auto;
	display: flex; align-items: center; justify-content: center;
	width: 56px; height: 56px;
	border-radius: 50%;
	background: var(--surface_glass_solid);
	color: var(--btn_danger);
	box-shadow: var(--shadow_2);
	transition: transform var(--transition);
}
.play__icon svg {width: 24px; height: 24px;}
.gallery__photo-inner > a:hover .play__icon {transform: scale(1.06);}
.gallery__photo-inner > a:active .gallery__photo-img img {transform: scale(1);}
.article__foot {justify-content: flex-start; align-items: center; gap: 14px; padding-top: 20px; border-top: 1px solid var(--grey_3);}
.article__share-label {color: var(--text_3); font-size: 0.875rem;}
/****************** ARTICLE - END *******************/

/****************** EVENT FACTS *******************/
.event__facts {
	box-sizing: border-box;
	align-items: flex-start; gap: 18px;
	margin: 0 0 28px;
	padding: 18px;
	background: var(--accent_event_bg);
	border-radius: var(--radius);
}
.event__facts-date {
	flex: 0 0 auto;
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	width: 72px; height: 72px;
	border-radius: var(--radius);
	background: var(--accent, var(--accent_event));
	color: var(--text);
	line-height: 1.05;
}
.event__facts-day {font-family: var(--font_display); font-size: 1.75rem; font-weight: 700;}
.event__facts-month {font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.06em;}
.event__facts-list {flex: 1 1 auto; min-width: 0; margin: 0;}
.event__facts-row {display: flex; gap: 12px; padding: 5px 0;}
.event__facts-row + .event__facts-row {border-top: 1px solid var(--grey_3);}
.event__facts-row dt {flex: 0 0 116px; color: var(--text_2); font-size: 0.875rem;}
.event__facts-row dd {flex: 1 1 auto; min-width: 0; margin: 0; overflow-wrap: anywhere;}
@media (max-width: 559px) {
	.event__facts {gap: 14px; padding: 14px;}
	.event__facts-date {width: 60px; height: 60px;}
	.event__facts-day {font-size: 1.5rem;}
	.event__facts-row {flex-direction: column; gap: 2px;}
	.event__facts-row dt {flex: 0 0 auto;}
}
/****************** EVENT FACTS - END *******************/

/****************** ORGANISATION PAGE *******************/
.org__head-slider {margin-bottom: -56px;}
.org__head-slider .slider__wide-slide {aspect-ratio: 21 / 8; background: var(--grey_1);}
.org__head-slider .slider__wide-slide img {width: 100%; height: 100%;}
.slider__wide-wrapper.org__head-slider .swiper-pagination {bottom: 72px;}
.org__head-bar {
	box-sizing: border-box;
	position: relative; z-index: 2;
	align-items: flex-start; gap: clamp(16px, 2.4vw, 28px);
	padding: clamp(18px, 2.4vw, 28px);
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius_lg);
	box-shadow: var(--shadow_1);
}
.org__head-logo {
	flex: 0 0 auto;
	display: flex; align-items: center; justify-content: center;
	width: 112px; height: 112px;
	border-radius: var(--radius);
	overflow: hidden;
	background: var(--color_white);
}
.org__head-logo img {width: 100%; height: 100%; padding: 10px; box-sizing: border-box;}
.org__head-abbr {font-family: var(--font_display); font-weight: 700; font-size: 1.75rem; color: var(--text);}
.org__head-content {flex: 1 1 auto; min-width: 0;}
.org__head-bar .org__head-title {margin: 0; font-size: clamp(1.375rem, 0.55rem + 2.2vw, 2.5rem); overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto;}
.org__head-summary {color: var(--text_2); margin: 12px 0 0;}
.org__contacts {margin: 0;}
.org__contacts-row {display: flex; gap: 16px; padding: 9px 0;}
.org__contacts-row + .org__contacts-row {border-top: 1px solid var(--grey_3);}
.org__contacts-row dt {flex: 0 0 104px; color: var(--text_2); font-size: 0.875rem;}
.org__contacts-row dd {flex: 1 1 auto; min-width: 0; margin: 0; overflow-wrap: anywhere;}
.org__schedule {list-style: none; padding: 0; margin: 0 0 28px; display: flex; flex-direction: column; gap: 8px;}
.org__schedule li {position: relative; padding-left: 20px; color: var(--text_2);}
.org__schedule li::before {content: ''; position: absolute; left: 0; top: 0.58em; width: 8px; height: 8px; border-radius: 50%; background: var(--accent, var(--main));}
.org__sports {justify-content: flex-start; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 0;}
/****************** ORGANISATION PAGE - END *******************/

/****************** ACCORDION - THE CMS CONSTRUCTOR BLOCK *******************/
.accordion__item {
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius);
	overflow: hidden;
}
.accordion__item-title {
	align-items: center; justify-content: space-between; gap: 16px;
	padding: 16px 18px;
	font-weight: 500;
	cursor: pointer;
	transition: background var(--transition);
}
.accordion__item-title:hover {background: var(--grey_1);}
.accordion__item-title:active {background: var(--grey_3);}
.accordion__item-title-icon-cross {flex: 0 0 auto; color: var(--text_3); transform: rotate(45deg); transition: transform var(--transition);}
.accordion__item.active .accordion__item-title-icon-cross {transform: rotate(0deg);}
.accordion__item-content {display: none;}
.accordion__item.accordion__item-not-initialized .accordion__item-content {display: block;}
.accordion__item.active .accordion__item-content {display: block;}
.accordion__item-content-inner {padding: 10px 18px 18px;}
.accordion__item-content-list-pdf {margin-bottom: 16px;}
.accordion__item-content-inner > .accordion__item-content-list-pdf:only-child {margin-bottom: 0;}
.accordion__item-content-list-pdf ul {margin: 0; padding: 0; list-style: none;}
.accordion__item-content-list-pdf li + li {margin-top: 8px;}
.accordion__item-content-list-pdf a {justify-content: flex-start; gap: 12px; padding: 10px 12px; color: var(--text_link); border: 1px solid var(--grey_3); border-radius: var(--radius_sm); transition: border-color var(--transition), background-color var(--transition);}
.accordion__item-content-list-pdf a:hover {border-color: var(--main); background-color: var(--main_3);}
.accordion__item-content-list-pdf a:active {border-color: var(--main); background-color: var(--main_4);}
.accordion__item-content-list-pdf a span {word-break: break-word;}
.accordion__item-content-list-pdf-icon {flex: 0 0 auto; width: 22px; height: 26px; color: var(--main); fill: none;}
/****************** ACCORDION - THE CMS CONSTRUCTOR BLOCK - END *******************/

/****************** SECTION NAV *******************/
.section__nav {
	box-sizing: border-box;
	padding: clamp(18px, 2.4vw, 28px);
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius_lg);
}
.section__nav-title {
	display: flex; align-items: baseline;
	font-family: var(--font_display); font-weight: 700; font-size: 1.125rem;
	margin: 0 0 16px;
}
.section__nav-items {justify-content: flex-start; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 0;}
.section__nav-items > li {display: flex; min-width: 0;}
.section__nav-link {
	display: block;
	max-width: 100%;
	padding: 8px 14px;
	border-radius: var(--radius_sm);
	background: var(--grey_1);
	color: var(--text_2);
	font-size: 0.9375rem;
	overflow-wrap: anywhere;
	transition: background var(--transition), color var(--transition);
}
a.section__nav-link:hover {background: var(--accent_bg, var(--main_3)); color: var(--text);}
a.section__nav-link:active {background: var(--accent_bg, var(--main_3)); color: var(--text); filter: brightness(0.94);}
.section__nav-link.active {background: var(--accent_bg, var(--main_3)); color: var(--text); font-weight: 500;}
/****************** SECTION NAV - END *******************/

/****************** CONTACTS *******************/
.contacts__top {align-items: stretch; gap: clamp(20px, 3vw, 40px);}
.contacts__facts {flex: 1 1 380px; min-width: 0;}
.contacts__list {margin: 20px 0 0;}
.contacts__schedule {margin-top: 24px;}
.contacts__schedule-title {margin: 0 0 12px;}
.contacts__reception {display: flex; align-items: flex-start; gap: 8px; color: var(--text_2); font-size: 0.9375rem; margin: 12px 0 0;}
.contacts__reception svg {flex: 0 0 auto; margin-top: 3px; color: var(--text_3);}
.contacts__socials {display: flex; align-items: center; gap: 14px; margin-top: 20px;}
.contacts__socials-label {color: var(--text_2); font-size: 0.9375rem;}
.contacts__map {flex: 1 1 380px; min-width: 0; display: flex;}
.contacts__map-frame {width: 100%; min-height: 320px; border-radius: var(--radius_lg); background: var(--grey_1);}
.contacts__map-plate {
	box-sizing: border-box;
	width: 100%;
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	gap: 14px;
	min-height: 320px;
	padding: clamp(20px, 3vw, 36px);
	text-align: center;
	background: var(--body_bg_2);
	border: 1px dashed var(--grey_5);
	border-radius: var(--radius_lg);
}
.contacts__map-icon {display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 50%; background: var(--main_3); color: var(--main_2);}
.contacts__map-address {margin: 0; font-weight: 500; max-width: 34ch;}
/****************** CONTACTS - END *******************/

/****************** MEDIA - CARDS AND PLAYER *******************/
.media__item {display: flex; align-items: stretch;}
.media__item-inner {width: 100%; flex-direction: column; align-items: stretch; background: var(--body_bg); border: 1px solid var(--grey_3); border-radius: var(--radius); overflow: hidden; transition: box-shadow var(--transition);}
.media__item-inner:hover {box-shadow: var(--shadow_3);}
.media__item-inner:active {box-shadow: var(--shadow_1);}
.media__item-cover {position: relative; display: block; aspect-ratio: 4 / 5; background: var(--grey_1); overflow: hidden;}
.media__item-cover-bg {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.25); filter: blur(24px) saturate(1.3); }
.media__item-cover-img {position: relative; width: 100%; height: 100%; object-fit: contain; transition: transform var(--transition_slow);}
.media__item-inner:hover .media__item-cover-img {transform: scale(1.03);}
.media__item-play {
	position: absolute; inset: 0; margin: auto;
	display: flex; align-items: center; justify-content: center;
	width: 56px; height: 56px;
	border-radius: 50%;
	background: var(--surface_glass_solid);
	color: var(--btn_danger);
	box-shadow: var(--shadow_2);
}
.media__item-duration {
	position: absolute; right: 10px; bottom: 10px;
	padding: 2px 8px;
	border-radius: var(--radius_sm);
	background: var(--dark);
	color: var(--text_light);
	font-size: 0.75rem;
}
.media__item-content {box-sizing: border-box; flex: 1 1 auto; padding: 16px 18px 18px;}
.media__item-meta {color: var(--text_3); font-size: 0.8125rem; margin-bottom: 8px;}
.media__item-title {margin: 0; font-size: 1.0625rem; line-height: 1.4;}
.media__item-summary {color: var(--text_2); font-size: 0.9375rem; margin: 8px 0 0;}
.empty__actions {justify-content: center; flex-wrap: wrap; gap: 12px;}
.media__player {position: relative; aspect-ratio: 16 / 9; border-radius: var(--radius_lg); overflow: hidden; background: var(--dark); margin: 0 0 24px;}
.media__player img {width: 100%; height: 100%;}
.media__player iframe {position: absolute; inset: 0; width: 100%; height: 100%; border: 0;}
.media__player-button {
	position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center;
	width: 100%; height: 100%;
	padding: 0;
	background: transparent; border: 0;
	cursor: pointer;
}
.media__player-glyph {
	display: flex; align-items: center; justify-content: center;
	width: 84px; height: 84px;
	border-radius: 50%;
	background: var(--surface_glass_solid);
	color: var(--btn_danger);
	box-shadow: var(--shadow_3);
	transition: transform var(--transition);
}
.media__player-button:hover .media__player-glyph {transform: scale(1.06);}
.media__player-button:active .media__player-glyph {transform: scale(0.96);}
/****************** MEDIA - CARDS AND PLAYER - END *******************/

/****************** PUBLIC REPORTING *******************/
.page__block-docs-year {padding-bottom: 0;}
.page__block-docs-year .title, .page__block-docs-year .content__text > *:last-child {margin-bottom: 0;}
.page__block-docs-year .content__text {margin-top: 8px; color: var(--text_2);}
.page__block-docs-list {padding-top: clamp(16px, 2vw, 24px);}
/****************** PUBLIC REPORTING - END *******************/

/****************** EMPTY STATE *******************/
.empty {text-align: center; max-width: 480px; margin: 0 auto; padding: clamp(28px, 5vw, 56px) 20px;}
.empty > * + * {margin-top: 12px;}
.empty__icon {
	width: 64px; height: 64px;
	margin: 0 auto 16px;
	display: flex; align-items: center; justify-content: center;
	border-radius: 50%;
	background: var(--accent_bg, var(--main_3));
	color: var(--accent_text, var(--main_2));
}
.empty__title {font-family: var(--font_display); font-weight: 700; font-size: 1.25rem; margin: 0 0 8px;}
.empty__text {color: var(--text_2); max-width: 56ch; margin: 0 auto 20px;}
.empty__action {margin-top: 20px;}
/****************** EMPTY STATE - END *******************/

/****************** FOOTER *******************/
.footer {background: var(--footer_bg); color: var(--text_light_2); margin-top: clamp(40px, 6vw, 80px); position: relative; overflow: hidden;}
.footer__mark {
	position: absolute; top: 50%; z-index: 0;
	width: 300px; height: auto;
	transform: translateY(-50%);
	color: color-mix(in srgb, var(--color_white) 7%, transparent);
	fill: currentColor;
	pointer-events: none;
}
.footer__mark-left {left: -150px;}
.footer__mark-right {right: -150px;}
.footer .container {position: relative; z-index: 1;}
.footer__top {padding: clamp(36px, 5vw, 64px) 0 clamp(28px, 4vw, 48px);}
.footer__top-inner {align-items: flex-start; gap: clamp(24px, 3vw, 48px); flex-wrap: wrap;}
.footer__about {flex: 1 1 260px; min-width: 240px;}
.footer__logo {display: block; width: fit-content; line-height: 0; margin-bottom: 24px;}
.footer__logo svg {width: 200px; height: auto; display: block;}
.footer__logo svg path {fill: var(--text_light);}
.footer__logo svg #icon path {fill: revert;}
.footer__descr {color: var(--text_light_3); font-size: 0.875rem; line-height: 1.5; margin: 0 0 16px; max-width: 34ch;}
.footer__col {flex: 1 1 170px; min-width: 150px;}
.footer__menu-title {
	width: 100%;
	align-items: center; justify-content: space-between; gap: 12px;
	font-family: var(--font_display); font-weight: 700; font-size: 1rem;
	color: var(--text_light);
	margin-bottom: 12px;
	cursor: default;
}
.footer__menu-title svg {display: none; color: var(--text_light_3);}
.footer__menu ul {list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px;}
.footer__menu a {color: var(--text_light_2); font-size: 0.9375rem; transition: color var(--transition);}
.footer__menu a:hover {color: var(--text_light); text-decoration: underline; text-underline-offset: 3px;}
.footer__menu a:active {color: var(--text_light_3);}
.footer__contacts {flex: 1 1 240px; min-width: 220px;}
.footer__contacts-title {font-family: var(--font_display); font-weight: 700; font-size: 1rem; color: var(--text_light); margin-bottom: 12px;}
.footer__contacts-list {list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px;}
.footer__contacts-list li {display: flex; align-items: flex-start; gap: 10px; font-size: 0.9375rem;}
.footer__contacts-list svg {flex: 0 0 auto; color: var(--text_light_3); margin-top: 2px;}
.footer__contacts-list a {color: var(--text_light_2);}
.footer__contacts-list a:hover {color: var(--text_light); text-decoration: underline; text-underline-offset: 3px;}
.footer__contacts-list a:active {color: var(--text_light_3);}
.footer .socials__items {gap: 10px; list-style: none; padding: 0; margin: 0; justify-content: flex-start;}
.footer .socials a {
	width: 40px; height: 40px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.10);
	color: var(--text_light);
	transition: background var(--transition);
}
.footer .socials a:hover {background: rgba(255, 255, 255, 0.20);}
.footer .socials a:active {background: rgba(255, 255, 255, 0.32);}
.footer__bottom {background: var(--copyright_bg); padding: 16px 0;}
.footer__bottom .copyright {align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;}
.footer__bottom, .footer__bottom a {color: var(--text_light_3); font-size: 0.875rem;}
.footer__bottom a:hover {color: var(--text_light); text-decoration: underline; text-underline-offset: 3px;}
.footer__bottom a:active {color: var(--text_light_2);}
.developers .qwerme {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 44px; min-height: 44px;
	margin: -10px 0;
	opacity: 0.85;
	transition: opacity var(--transition);
}
.developers .qwerme svg {display: block; overflow: visible; transition: transform var(--transition);}
.developers .qwerme:hover, .developers .qwerme:focus-visible {opacity: 1;}
.developers .qwerme:hover svg, .developers .qwerme:focus-visible svg {transform: translateY(-2px);}

.developers .qwerme-armed .qwerme__letter,
.developers .qwerme-armed .qwerme__accent {opacity: 0; transform-box: fill-box;}
.developers .qwerme-in .qwerme__letter {animation: usms-credit-body .42s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;}
.developers .qwerme-in .qwerme__accent {animation: usms-credit-head .36s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;}
@keyframes usms-credit-body {
	from {opacity: 0; transform: translateY(63%);}
	to {opacity: 1; transform: translateY(0);}
}
@keyframes usms-credit-head {
	from {opacity: 0; transform: translateY(83%);}
	to {opacity: 1; transform: translateY(0);}
}
@media print {.developers .qwerme-armed .qwerme__letter, .developers .qwerme-armed .qwerme__accent {opacity: 1;}}

.footer__brand {align-items: flex-start; justify-content: space-between; gap: clamp(20px, 3vw, 48px); flex-wrap: wrap; padding-bottom: clamp(24px, 3vw, 40px); border-bottom: 1px solid rgba(255, 255, 255, 0.12); margin-bottom: clamp(24px, 3vw, 40px);}
.footer__cols {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 3vw, 48px);}
@media (max-width: 767px) {
	.footer__cols {grid-template-columns: minmax(0, 1fr); gap: 0;}
	.footer__col + .footer__col {border-top: 1px solid rgba(255, 255, 255, 0.12);}
	.footer__menu-block {padding: 6px 0;}
}
/****************** FOOTER - END *******************/

/****************** FOCUS *******************/
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
	outline: 2px solid transparent;
	outline-offset: 2px;
	box-shadow: var(--focus_ring);
	border-radius: var(--radius_sm);
}
.wcag__skip-link {
	position: absolute; left: 12px; top: -60px; z-index: 100;
	padding: 10px 16px;
	background: var(--main);
	color: var(--text_light);
	border-radius: var(--radius_sm);
	transition: top var(--transition);
}
.wcag__skip-link:focus {top: 12px;}
/****************** FOCUS - END *******************/

/****************** MOTION *******************/
@keyframes usms-pop   {from {opacity: 0; transform: scale(0.72);} to {opacity: 1; transform: scale(1);}}
@keyframes usms-unfold{from {opacity: 0; transform: scale(0.86);} to {opacity: 1; transform: scale(1);}}
@keyframes usms-rise  {from {opacity: 0; transform: translateY(12px);} to {opacity: 1; transform: translateY(0);}}

.index .header__logo #icon > * {
	opacity: 0; transform-box: fill-box; transform-origin: center;
	animation: usms-unfold .32s cubic-bezier(0.22, 1, 0.36, 1) .62s forwards;
}
.index .header__logo #green_1, .index .header__logo #green_2,
.index .header__logo #blue_1,  .index .header__logo #blue_2,
.index .header__logo #yellow_1,.index .header__logo #yellow_2 {animation: usms-unfold .32s cubic-bezier(0.22, 1, 0.36, 1) forwards;}
.index .header__logo #green_circle, .index .header__logo #blue_circle,
.index .header__logo #yellow_circle, .index .header__logo #top {animation: usms-pop .26s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;}
.index .header__logo #top {animation-delay: .04s;}
.index .header__logo #yellow_circle {animation-delay: .26s;}
.index .header__logo #blue_circle {animation-delay: .34s;}
.index .header__logo #green_circle {animation-delay: .42s;}
.index .header__logo #yellow_1, .index .header__logo #blue_1, .index .header__logo #green_1 {animation-delay: .62s;}
.index .header__logo #yellow_2, .index .header__logo #blue_2, .index .header__logo #green_2 {animation-delay: .80s;}

.index .articles__items > .articles__item,
.index .events__items > .events__item {animation: usms-rise .38s ease-out backwards;}
.index .articles__items > .articles__item:nth-child(1), .index .events__items > .events__item:nth-child(1) {animation-delay: .04s;}
.index .articles__items > .articles__item:nth-child(2), .index .events__items > .events__item:nth-child(2) {animation-delay: .10s;}
.index .articles__items > .articles__item:nth-child(3), .index .events__items > .events__item:nth-child(3) {animation-delay: .16s;}
.index .articles__items > .articles__item:nth-child(4), .index .events__items > .events__item:nth-child(4) {animation-delay: .22s;}
.index .articles__items > .articles__item:nth-child(5) {animation-delay: .28s;}
.index .articles__items > .articles__item:nth-child(6) {animation-delay: .34s;}
.index .articles__items > .articles__item:nth-child(n+7) {animation-delay: .34s;}
.index .events__items > .events__item:nth-child(n+5) {animation-delay: .28s;}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: .12s !important;
		animation-iteration-count: 1 !important;
		transition-duration: .12s !important;
		scroll-behavior: auto !important;
	}
	.index .header__logo #icon > * {opacity: 1; animation: none;}
	.index .articles__items > .articles__item, .index .events__items > .events__item {animation: none; opacity: 1; transform: none;}
	.hero__strip-go .hero__strip-track {animation: none;}
	.developers .qwerme-armed .qwerme__letter, .developers .qwerme-armed .qwerme__accent {opacity: 1; animation: none;}
	.popup__menu-panel {transition: none;}
	.articles__item-inner:hover .articles__item-image-inner img,
	.gallery__photo-inner > a:hover .gallery__photo-img img {transform: none;}
	.gallery__photo-inner > a:hover .play__icon {transform: none;}
}
/****************** MOTION - END *******************/

/****************** PROFILE BLOCKS - THE CONSTRUCTOR INVENTORY *******************/
.page__columns {display: grid; gap: clamp(16px, 2vw, 28px); align-items: stretch;}
.page__columns-item {align-items: stretch;}
.page__columns-item-inner {width: 100%;}
.page__columns-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}
.page__columns-3 {grid-template-columns: repeat(3, minmax(0, 1fr));}
.page__columns-4 {grid-template-columns: repeat(4, minmax(0, 1fr));}
.page__block-labels .page__columns-item-inner {
	box-sizing: border-box; height: 100%;
	padding: 16px 18px;
	border-radius: var(--radius);
	background: var(--accent_bg, var(--main_3));
}
.page__block-labels .content__text p {margin: 0; font-weight: 500; color: var(--text);}
.page__columns-item-card {box-sizing: border-box; flex-direction: column; align-items: stretch; height: 100%; overflow: hidden; background: var(--body_bg); border: 1px solid var(--grey_3); border-radius: var(--radius);}
.page__columns-item-image {position: relative; aspect-ratio: 16 / 10; background: var(--grey_1);}
.page__columns-item-image:not(:has(img)) {display: none;}
.page__columns:has(.page__columns-item-image img) .page__columns-item-card .page__columns-item-image:not(:has(img)) {display: block; background: var(--grey_1);}
.page__columns-item-image img {display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;}
.page__columns-item-content-wrapper {flex-direction: column; align-items: stretch; flex-grow: 1; gap: 16px; padding: 20px;}
.page__columns-item-content {flex-grow: 1;}
.page__columns-item-content .content__text {max-width: none;}
.press_item_title:empty {display: none;}
.page__columns-item-button {margin-top: auto;}
.page__chess-block {--chess_gap: clamp(20px, 3vw, 48px);}
.page__chess-block-inner {gap: var(--chess_gap); align-items: flex-start;}
.page__block-chess:nth-child(odd) .page__chess-block-inner {flex-direction: row;}
.page__block-chess:nth-child(even) .page__chess-block-inner {flex-direction: row-reverse;}
.page__block-chess .page__chess-block-left .page__chess-block-inner {flex-direction: row;}
.page__block-chess .page__chess-block-right .page__chess-block-inner {flex-direction: row-reverse;}
.page__chess-block-images, .page__chess-block-text {flex: 1 1 0; min-width: 0;}
.page__chess-block-text-inner {padding: clamp(0px, 1vw, 12px) 0;}
.page__chess-block-slider {--swiper-theme-color: var(--main); --swiper-navigation-sides-offset: 14px; border-radius: var(--radius_lg); overflow: hidden; background: var(--grey_1);}
.page__chess-block-slider .swiper-slide {height: auto;}
.page__chess-block-slider .swiper-slide > a {display: block; position: relative; aspect-ratio: 4 / 3;}
.page__chess-block-slider .swiper-slide img {width: 100%; height: 100%; object-fit: cover;}
.page__chess-block-slider .swiper-button-prev, .page__chess-block-slider .swiper-button-next,
.slider__wide .swiper-button-prev, .slider__wide .swiper-button-next {
	width: 40px; height: 40px; margin-top: -20px; border-radius: 50%;
	color: var(--main); background: var(--body_bg); box-shadow: var(--shadow_2);
}
.page__chess-block-slider .swiper-button-prev::after, .page__chess-block-slider .swiper-button-next::after,
.slider__wide .swiper-button-prev::after, .slider__wide .swiper-button-next::after {content: none;}
.page__chess-block-slider .swiper-button-prev svg,
.slider__wide .swiper-button-prev svg {transform: rotate(180deg);}
.page__chess-block-slider .swiper-button-prev svg, .page__chess-block-slider .swiper-button-next svg,
.slider__wide .swiper-button-prev svg, .slider__wide .swiper-button-next svg {width: 18px; height: 18px; fill: currentColor;}
.page__chess-block-slider .swiper-button-prev.swiper-button-disabled, .page__chess-block-slider .swiper-button-next.swiper-button-disabled,
.slider__wide .swiper-button-prev.swiper-button-disabled, .slider__wide .swiper-button-next.swiper-button-disabled {opacity: 1; color: var(--grey_6); background: var(--grey_1); box-shadow: none; cursor: default; pointer-events: auto;}
.page__chess-block-slider .swiper-pagination {--swiper-pagination-bullet-inactive-color: var(--color_white); --swiper-pagination-bullet-inactive-opacity: 0.7;}
.accordion__items {display: flex; flex-direction: column; gap: 10px;}
.blog__items {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; list-style: none; padding: 0; margin: 0;}
.media__items {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; align-items: stretch; list-style: none; padding: 0; margin: 0;}
@media (max-width: 1279px) {
	.media__items {grid-template-columns: repeat(3, minmax(0, 1fr));}
}
.media__items-mosaic {display: block; margin: 0 -10px -20px;}
.media__items-mosaic:after {content: ''; display: block; clear: both;}
.media__mosaic-hold {opacity: 0;}
.media__items-mosaic {transition: opacity .3s ease-out;}
@media (prefers-reduced-motion: reduce) {
	.media__items-mosaic {transition: none;}
}
.media__items-mosaic .media__item {box-sizing: border-box; width: 25%; float: left; padding: 0 10px 20px;}
.media__items-mosaic .media__item-cover {aspect-ratio: var(--card_media_ratio, 16 / 9);}
.media__items-mosaic .media__item-cover-bg {display: none;}
.media__items-mosaic .media__item-cover-img {object-fit: cover;}
@media (max-width: 1279px) {
	.media__items-mosaic .media__item {width: 33.3333%;}
}
.catalog__categories-items {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; align-items: stretch; list-style: none; padding: 0; margin: 0;}
.catalog__items {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: stretch; list-style: none; padding: 0; margin: 0;}
.form__narrow {box-sizing: border-box; position: relative; border-radius: var(--radius_lg); overflow: hidden;}
.form__narrow-bg {color: var(--text_light); background: var(--main_2); background-size: cover; background-position: center;}
.form__narrow-content {position: relative; z-index: 1; padding: clamp(24px, 4vw, 50px);}
.form__narrow-content-inner {gap: clamp(20px, 3vw, 40px); align-items: center;}
.form__narrow-left {max-width: 40%;}
.form__narrow-right {max-width: 55%; flex-grow: 1;}
.form__narrow-title {margin-bottom: 0;}
.form__narrow-subtitle {margin-bottom: 0; font-weight: normal;}
* + .form__narrow-subtitle {margin-top: 12px;}
.form__narrow .input__wrapper {margin-bottom: 0;}
.form__narrow .input__text {line-height: 1.5rem; border-color: transparent;}
/****************** PROFILE BLOCKS - THE CONSTRUCTOR INVENTORY - END *******************/

/****************** FORM__NARROW *******************/
.form__narrow .input__text.input__error {border-color: var(--color_error);}
.form__narrow .btn__block {display: inline-flex; width: auto; min-width: 160px;}
.form__narrow .btn__primary {color: var(--main_2); background-color: var(--color_white); border-color: var(--color_white); font-weight: 700;}
@media (hover: hover) and (pointer: fine) {
	.form__narrow .btn__primary:hover {color: var(--main_2); background-color: var(--main_3); border-color: var(--main_3);}
}
.form__narrow .btn__primary:active {color: var(--main_2); background-color: var(--main_4); border-color: var(--main_4);}
.form__wide-wrapper {width: 100%;}
.slider__wide-wrapper {position: relative; width: 100%;}
.slider__wide {--swiper-theme-color: var(--main); --swiper-navigation-sides-offset: 14px; width: 100%; border-radius: var(--radius_lg); overflow: hidden;}
.slider__wide .swiper-pagination {bottom: 16px; --swiper-pagination-bullet-inactive-color: var(--color_white); --swiper-pagination-bullet-inactive-opacity: 0.7;}
.slider__wide-slide-image.swiper-slide {height: auto;}
.slider__wide-slide-image > a {display: block; aspect-ratio: 16 / 9;}
.slider__wide-slide-image img {display: block; width: 100%; height: 100%; object-fit: cover;}
.slider__wide-slide.swiper-slide {position: relative; height: auto;}
.slider__wide-slide-image-bg {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;}
.slider__wide-slide-shadow {position: relative; background-color: rgba(10, 31, 51, 0.72);}
.slider__wide-slide-shadow > .container {max-width: 1280px; padding-left: clamp(20px, 4%, 64px); padding-right: clamp(20px, 4%, 64px);}
.slider__wide-slide-content-block {min-height: min(60vh, 520px); justify-content: center;}
.slider__wide-slide-content {width: 100%; color: var(--text_light); padding: clamp(32px, 6vw, 80px) 0;}
.slider__wide-slide-content > * + * {margin-top: 15px;}
.slider__wide-slide-title {font-size: 2.75rem; font-weight: 800; line-height: 115%;}
.slider__wide-slide-subtitle {font-size: 1.5rem; font-weight: 500; line-height: 130%;}
.slider__wide-slide-buttons-narrow {display: inline-block;}
.slider__wide-slide-buttons {justify-content: flex-start; gap: 12px; flex-wrap: wrap;}
.text__center .slider__wide-slide-buttons {justify-content: center;}
.text__right .slider__wide-slide-buttons {justify-content: flex-end;}
.slider__wide-slide-text {margin-top: 20px; font-size: 1.125rem; line-height: 140%;}
.slider__wide-slide-play {padding-top: 24px;}
.text__center .play__icon-wrapper {display: flex; justify-content: center;}
.text__right .play__icon-wrapper {display: flex; justify-content: flex-end;}
/****************** FORM__NARROW - END *******************/

/****************** BLOCK WITH A PHOTOGRAPH *******************/
.page__block-with-bg {
	position: relative; isolation: isolate;
	background-size: cover; background-position: center; background-repeat: no-repeat;
	color: var(--text);
}
.page__block-with-bg::before {
	content: '';
	position: absolute; inset: 0; z-index: -1;
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--main_2) 86%, transparent) 0%,
		color-mix(in srgb, var(--copyright_bg) 76%, transparent) 100%);
}
.page__block-with-bg {
	--text: var(--text_light); --text_2: var(--text_light); --text_3: var(--text_light);
	--text_link: var(--text_light); --text_link_hover: var(--text_light); --text_link_active: var(--text_light);
}
.page__block-with-bg :is(.accordion__item, .page__columns-item-card, .form__contact, .articles__item-inner, .events__item-inner, .media__item-inner, .tooltip__text) {
	--text: var(--veil_text); --text_2: var(--veil_text_2); --text_3: var(--veil_text_3);
	--text_link: var(--veil_link); --text_link_hover: var(--veil_link_hover); --text_link_active: var(--veil_link_active);
}
.page__block-with-bg :is(.accordion__item, .page__columns-item-card, .form__contact, .articles__item-inner, .events__item-inner, .media__item-inner) {color: var(--text);}
.page__block-with-bg .title__link-more,
.page__block-with-bg a.title__link:hover .title__link-more,
.page__block-with-bg a.title__link:active .title__link-more {color: var(--text_light);}
.page__block-with-bg .content__text:not(:is(.accordion__item, .page__columns-item-card, .form__contact, .articles__item-inner, .events__item-inner, .media__item-inner) *) a {text-decoration: underline; text-underline-offset: 3px;}
.page__block-with-bg .content__text:not(:is(.accordion__item, .page__columns-item-card, .form__contact, .articles__item-inner, .events__item-inner, .media__item-inner) *) a:hover,
.page__block-with-bg .content__text:not(:is(.accordion__item, .page__columns-item-card, .form__contact, .articles__item-inner, .events__item-inner, .media__item-inner) *) a:active {text-decoration-thickness: 2px;}
.page__block-with-bg .content__text:not(:is(.accordion__item, .page__columns-item-card, .form__contact, .articles__item-inner, .events__item-inner, .media__item-inner) *) ul li::before {background: var(--text_light);}
@media (prefers-reduced-transparency: reduce) {
	.page__block.page__block-with-bg::before {background: linear-gradient(180deg, var(--main_2) 0%, var(--copyright_bg) 100%);}
}
@media (forced-colors: active) {
	.page__block.page__block-with-bg::before {background: Canvas;}
}
html[class*="contrast-style"] .page__block.page__block-with-bg::before,
html[class*="invert-colors"] .page__block.page__block-with-bg::before,
html[class*="saturation"] .page__block.page__block-with-bg::before,
body[class*="contrast-style"] .page__block.page__block-with-bg::before,
body[class*="invert-colors"] .page__block.page__block-with-bg::before,
body[class*="saturation"] .page__block.page__block-with-bg::before {background: linear-gradient(180deg, var(--main_2) 0%, var(--copyright_bg) 100%);}
.page__block-form.page__block-with-bg {padding: clamp(48px, 7vw, 104px) 0;}
.page__block-form.page__block-with-bg::before {
	background: color-mix(in srgb, var(--main_2) 70%, transparent);
}
.page__block-form.page__block-with-bg .form__contact {max-width: 780px; background: var(--body_bg); box-shadow: var(--shadow_3);}

@media (max-width: 1023px) {
	.page__columns-4 {grid-template-columns: repeat(2, minmax(0, 1fr));}
	.form__narrow-content-inner {flex-direction: column; align-items: stretch;}
	.form__narrow-left, .form__narrow-right {max-width: none;}
	.catalog__categories-items {grid-template-columns: repeat(2, minmax(0, 1fr));}
	.blog__items, .media__items, .catalog__items {grid-template-columns: repeat(2, minmax(0, 1fr));}
	.media__items-mosaic .media__item {width: 50%;}
	.page__block-chess:nth-child(odd) .page__chess-block-inner,
	.page__block-chess:nth-child(even) .page__chess-block-inner,
	.page__block-chess .page__chess-block-left .page__chess-block-inner,
	.page__block-chess .page__chess-block-right .page__chess-block-inner {flex-direction: column; align-items: stretch;}
	.page__chess-block-images, .page__chess-block-text {flex: 0 0 auto; width: 100%;}
	.page__chess-block-images {max-width: 550px; margin: 0 auto;}
	.slider__wide-slide-title {font-size: 2.25rem;}
	.slider__wide-slide-subtitle {font-size: 1.375rem;}
	.slider__wide-slide-text {font-size: 1rem;}
}
@media (max-width: 559px) {
	.page__columns-2, .page__columns-3, .page__columns-4 {grid-template-columns: minmax(0, 1fr);}
	.inputs__items-2 .inputs__item, .inputs__items-3 .inputs__item, .inputs__items-4 .inputs__item {width: 100%;}
	.slider__wide-slide-title {font-size: 1.875rem;}
	.slider__wide-slide-subtitle {font-size: 1.25rem;}
	.slider__wide-slide-buttons-narrow {display: block; margin: 0 auto; max-width: 420px;}
	.slider__wide-slide-buttons {flex-direction: column;}
	.blog__items, .media__items, .catalog__items, .catalog__categories-items {grid-template-columns: minmax(0, 1fr);}
	.media__items-mosaic .media__item {width: 100%; float: none;}
}
/****************** BLOCK WITH A PHOTOGRAPH - END *******************/

/****************** CONSTRUCTOR BLOCKS *******************/
.page__blocks .container__narrow {margin-left: max(0px, calc((100% - 1310px) / 2));}
.page__blocks .container__narrow:has(> .form__contact) {margin-left: auto;}

@media (min-width: 1700px) {
	.page__blocks .container__narrow {margin-left: max(0px, calc((100% - 1470px) / 2));}
	.container {max-width: 1440px;}
	.hero__inner {max-width: 880px;}
}
@media (min-width: 2200px) {
	.page__blocks .container__narrow {margin-left: max(0px, calc((100% - 1630px) / 2));}
	.container {max-width: 1600px;}
}
/****************** CONSTRUCTOR BLOCKS - END *******************/

/****************** ADAPTIVE *******************/
@media (max-width: 1199px) {
	.header__burger {display: inline-flex;}
	.main__menu-header {display: none;}
}

@media (max-width: 1279px) {
	.h1, h1 {font-size: 2.125rem;}
	.h2, h2 {font-size: 1.625rem;}
	.h3, h3 {font-size: 1.375rem;}
	.hero__lead {font-size: 1.125rem;}
	.article__lead {font-size: 1.1875rem;}
	.header__logo svg {width: 176px;}
	.main__menu > ul > li > a {padding: 0 8px; font-size: 0.875rem;}
	.hero__strip {--tile: 250px;}
	.hero__veil {background: linear-gradient(100deg, rgba(var(--main_2_num), 0.93) 0%, rgba(var(--main_2_num), 0.93) 70%, rgba(var(--main_num), 0.56) 84%, rgba(var(--main_num), 0.18) 100%);}
}
@media (max-width: 1023px) {
	.h1, h1 {font-size: 2rem;}
	.h2, h2 {font-size: 1.5rem;}
	.h3, h3 {font-size: 1.1875rem;}
	.hero__lead {font-size: 1rem;}
	.article__lead {font-size: 1.0625rem;}
	.header__inner {min-height: 68px;}
	.hero {display: flex; flex-direction: column; padding-top: 0;}
	.hero__strip {order: -1; --tile: 190px; --lift_k: 0.55; position: static; align-items: flex-end; height: clamp(268px, 68vw, 306px); margin: 0 0 clamp(26px, 5vw, 44px); padding-bottom: 14px;}
	.hero__strip .decor__polaroid {transform: translateY(calc(var(--tile) * min(0, var(--lift, 0)) * var(--lift_k))) rotate(var(--tilt, 0deg));}
	.hero__veil {display: none;}
	.hero__mark {display: none;}
	.footer__mark {display: none;}
	.articles__items {grid-template-columns: repeat(2, minmax(0, 1fr));}
	.orgs__item {flex-basis: calc((100% - 16px) / 2); max-width: calc((100% - 16px) / 2);}
	.about__inner {flex-direction: column;}
	.about__text, .quick__links {flex: 1 1 100%; width: 100%;}
	.catalog__page {flex-direction: column;}
	.catalog__page-filters {width: 100%; flex: 1 1 auto;}
	.catalog__filters-toggle {display: inline-flex;}
	.filters__menu-block {
		position: fixed; inset: auto 0 0 0; z-index: 61;
		max-height: 86vh; overflow-y: auto;
		transform: translateY(100%);
		transition: transform var(--transition_slow);
		border-top-left-radius: var(--radius_lg);
		border-top-right-radius: var(--radius_lg);
		background: var(--body_bg);
	}
	.filters__menu-block.active {transform: translateY(0);}
	.filters__menu-inner {border: 0; border-radius: 0;}
	.filters__menu-head {display: flex;}
	.filters__menu-shadow {
		position: fixed; inset: 0; z-index: 60;
		background: var(--overlay);
		opacity: 0; visibility: hidden;
		transition: opacity var(--transition);
	}
	.filters__menu-shadow.active {opacity: 1; visibility: visible;}
	.event__items, .events__items {grid-template-columns: minmax(0, 1fr);}
	.contacts__top {flex-direction: column;}
	.org__contacts-row dd .clamp {display: block; -webkit-line-clamp: none; overflow: visible;}
	.gallery__photo, .gallery__photo-sizer {width: 33.3333%;}
}
@media (max-width: 899px) {
	.h1, h1 {font-size: 1.875rem;}
}
@media (max-width: 767px) {
	.h1, h1 {font-size: 1.75rem;}
	.pagination__bottom {margin-top: 24px;}
	.orgs__item-summary {--lines: 6;}
	.h2, h2 {font-size: 1.375rem;}
	.form__contact .form__cols {grid-template-columns: minmax(0, 1fr);}
	.quick__links-items {grid-template-columns: minmax(0, 1fr);}
	.hero__mark {right: -120px; width: 240px;}
	.footer__col {flex: 1 1 100%;}
	.footer__menu-title {cursor: pointer;}
	.footer__menu-title svg {display: block; transition: transform var(--transition);}
	.footer__menu-title[aria-expanded="true"] svg {transform: rotate(90deg);}
	.footer__menu {display: none;}
	.footer__menu.active {display: block;}
	.org__head-bar {flex-direction: column; align-items: flex-start; gap: 12px; padding: 16px;}
	.org__head-logo {width: 64px; height: 64px;}
	.org__head-summary {font-size: 0.9375rem; margin-top: 8px;}
	.org__head-slider {margin-bottom: -32px;}
	.org__head-slider .slider__wide-slide {aspect-ratio: 16 / 9;}
	.slider__wide-wrapper.org__head-slider .swiper-pagination {bottom: 48px;}
	.gallery__photo, .gallery__photo-sizer {width: 50%;}
}
@media (max-width: 559px) {
	.h1, h1 {font-size: 1.625rem;}
	.org__head-bar .org__head-title {line-height: 1.25; -webkit-hyphens: none; hyphens: none;}
	.articles__items {grid-template-columns: minmax(0, 1fr);}
	.orgs__item {flex-basis: 100%; max-width: 100%;}
	.header__logo svg {width: 148px;}
	.catalog__page-nav-block {flex-wrap: wrap;}
	.btn {display: flex; width: 100%;}
}
/****************** ADAPTIVE - END *******************/

/****************** FIXED QUICK ACTIONS *******************/
.fixed__buttons {
	position: fixed;
	right: 16px;
	bottom: calc(16px + env(safe-area-inset-bottom));
	z-index: 30;
}
.fixed__buttons ul {display: flex; flex-direction: column; gap: 10px; align-items: center;}
.fixed__button {
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: none;
	appearance: none;
	cursor: pointer;
	background: var(--color_white);
	color: var(--main);
	box-shadow: var(--shadow_2);
	transition: background var(--transition), color var(--transition), transform var(--transition);
}
.fixed__button svg {width: 24px; height: 24px;}
@media (hover: hover) and (pointer: fine) {
	.fixed__button:hover {background: var(--main_3); color: var(--main_2);}
}
.fixed__button:active {transform: scale(0.94);}
@media (max-width: 767px) {
	.fixed__buttons {right: 12px; bottom: calc(12px + env(safe-area-inset-bottom));}
	.fixed__button {width: 44px; height: 44px;}
}
.footer__bottom .developers {margin-right: max(0px, 84px - (100vw - 100%) / 2);}
/****************** FIXED QUICK ACTIONS - END *******************/

/****************** EDITOR TABLES *******************/
.content__text-responsive {overflow-x: auto; max-width: 100%;}
.content__text-responsive:not(:last-child) {margin-bottom: 16px;}
.content__text table {width: 100%; border-collapse: collapse;}
.page__block:not(.page__block-contacts) .content__text th,
.page__block:not(.page__block-contacts) .content__text td {padding: 10px 12px; border: 1px solid var(--grey_1);}
/****************** EDITOR TABLES - END *******************/

/****************** EDITOR QUOTES *******************/
.content__text blockquote {
	margin: 0 0 16px;
	padding: 2px 0 2px 20px;
	border-left: 3px solid var(--main);
	font-size: 1.0625rem;
	line-height: 1.6;
	color: var(--text_2);
}
.content__text blockquote > *:last-child {margin-bottom: 0;}
/****************** EDITOR QUOTES - END *******************/

/****************** EDITOR INLINE AND RULE *******************/
.content__text sub {vertical-align: sub;}
.content__text sup {vertical-align: super;}
.content__text hr {
	height: 1px;
	margin: 24px 0;
	border: 0;
	background: var(--grey_3);
}
/****************** EDITOR INLINE AND RULE - END *******************/

/****************** POPUP CONTENT *******************/
.popup__contacts-list ul {display: flex; flex-direction: column; gap: 8px;}
.popup__contacts-list a {
	gap: 12px;
	align-items: center;
	padding: 12px;
	border-radius: var(--radius_sm);
	color: var(--text);
	transition: background var(--transition);
}
.popup__contacts-list a svg {flex: 0 0 auto; color: var(--main);}
@media (hover: hover) and (pointer: fine) {
	.popup__contacts-list a:hover {background: var(--grey_1);}
}
.popup__window-note {margin-top: 16px; font-size: 0.875rem; color: var(--text_3);}
/****************** POPUP CONTENT - END *******************/

/****************** ADMIN SHORTCUT *******************/
#popup__adm {
	justify-content: flex-end;
	align-items: flex-end;
	padding: 0 16px calc(74px + env(safe-area-inset-bottom));
}
@media (max-width: 767px) {
	#popup__adm {padding: 0 12px calc(66px + env(safe-area-inset-bottom));}
}

.popup__adm-menu ul {display: flex; flex-direction: column; gap: 4px;}
.popup__adm-menu a {
	display: block;
	padding: 12px;
	border-radius: var(--radius_sm);
	color: var(--text);
	transition: background var(--transition);
}
@media (hover: hover) and (pointer: fine) {
	.popup__adm-menu a:hover {background: var(--grey_1);}
}
/****************** ADMIN SHORTCUT - END *******************/

/****************** AJAX FORM RESULT *******************/
.ajax__form-result:not(:empty) {margin-bottom: 16px; font-size: 0.9375rem;}
.form__result-success,
.ajax__form-result-success {color: var(--color_success);}
.form__result-error,
.ajax__form-result-error {color: var(--color_error);}

.fixed__button-up svg {transform: rotate(-90deg);}
/****************** AJAX FORM RESULT - END *******************/

/****************** PAGINATION ORDER *******************/
.pagination__item-prev {order: -1;}
.pagination__item-next {order: 1;}
/****************** PAGINATION ORDER - END *******************/

/****************** VIDEO WITHOUT A COVER *******************/
.media__item-plate,
.video__facade-plate {
	position: absolute; inset: 0;
	display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
	gap: 6px;
	padding: 16px;
	text-align: center;
}
.media__item-plate {
	background: radial-gradient(120% 90% at 30% 18%, rgba(255, 255, 255, 0.85), transparent 62%), var(--grey_1);
	color: var(--text_3);
}
.video__facade-plate {
	background: radial-gradient(115% 85% at 28% 14%, rgba(255, 255, 255, 0.17), transparent 66%), var(--dark);
	color: var(--text_light_3);
	padding: clamp(16px, 2.4vw, 28px);
	gap: 8px;
}
.media__item-plate-source,
.video__facade-plate-source {
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.video__facade-plate-name {
	max-width: 26ch;
	font-family: var(--font_display);
	font-weight: 700;
	font-size: clamp(1rem, 1.4vw, 1.25rem);
	line-height: 1.3;
	color: var(--text_light_2);
	display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
/****************** VIDEO WITHOUT A COVER - END *******************/

/****************** ITEM HEAD *******************/
.page__head {align-items: flex-start; gap: clamp(20px, 3vw, 40px); margin-bottom: clamp(24px, 4vw, 48px);}
.page__head-left {flex: 1 1 520px; min-width: 0;}
.page__head-right {flex: 1 1 320px; min-width: 0; text-align: left;}
.page__head-left iframe {width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: var(--radius);}
.page__head-buttons {gap: 12px; flex-wrap: wrap; margin-top: 20px;}
/****************** ITEM HEAD - END *******************/

/****************** EVENT ITEM *******************/
.event__actions {gap: 12px; flex-wrap: wrap; justify-content: flex-start; margin: 0 0 28px;}
.event__facts + .event__actions {margin-top: -8px;}
.event__calendar-menu .dropdown__item {white-space: nowrap;}
@media (max-width: 559px) {
	.event__calendar {display: block; width: 100%;}
}
/****************** EVENT ITEM - END *******************/

/****************** EVENT - OVER AND CANCELLED *******************/
.event__state {
	display: inline-block; max-width: 100%;
	padding: 3px 10px;
	border-radius: var(--radius_pill);
	border: 1px solid transparent;
	font-size: 0.75rem; font-weight: 500; line-height: 1.4;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.event__state-ended {background: var(--grey_1); border-color: var(--grey_3); color: var(--text_3);}
.event__state-canceled {background: var(--color_error_bg); border-color: var(--color_error_bg); color: var(--color_error);}

.article__meta .event__state {font-size: 0.8125rem;}

.event__facts-ended, .event__facts-canceled {background: var(--grey_1);}
.event__facts-date-ended {background: var(--body_bg); border: 1px solid var(--grey_3); color: var(--text_3);}
.event__facts-date-canceled {background: var(--color_error_bg); color: var(--color_error);}

.events__item-ended .events__item-date {background: var(--grey_1); color: var(--text_3);}
.events__item-canceled .events__item-date {background: var(--color_error_bg); color: var(--color_error);}
.events__item-canceled .events__item-meta > time {text-decoration: line-through;}

.events__item-meta {align-items: baseline;}
@media (max-width: 1023px) {
	.page__head {flex-direction: column;}
	.page__head-left, .page__head-right {flex: 1 1 100%; width: 100%;}
}
/****************** EVENT - OVER AND CANCELLED - END *******************/

/****************** VIDEO PAGE HEAD *******************/
.page__head-media .page__head-left {max-width: min(100%, calc(min(72svh, 680px) * var(--video_ratio_num, 1.7778)));}

.page__head-stage {
	position: relative; isolation: isolate;
	align-items: center;
	padding: clamp(20px, 3vw, 40px);
	border-radius: var(--radius_lg);
	background: var(--dark);
	overflow: hidden;
}
.page__head-stage::before {
	content: ''; position: absolute; inset: -15%; z-index: -1;
	background: var(--stage_bg) center / cover no-repeat;
	filter: blur(60px) saturate(1.4);
	opacity: 0.5;
}
.page__head-stage .page__head-right {flex: 1 1 300px; color: var(--text_light_2);}
.page__head-stage .article__title {
	color: var(--text_light);
	font-size: clamp(1.5rem, 2.2vw, 2.25rem);
	line-height: 1.15;
	margin-bottom: 14px;
}
.page__head-stage .content__text {color: var(--text_light_2);}
.page__head-stage .content__text a {color: var(--text_light);}

.page__head-media .page__head-right > .content__text {font-size: 1.0625rem; line-height: 1.6;}
.page__head-media .page__head-right > .content__text > *:last-child {margin-bottom: 0;}
.page__head-stage .page__head-right > .content__text {color: var(--text_light);}

.page__head-stage .page__head-right > .page__blocks {
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}
.page__head-stage .page__head-right .page__blocks > .page__block:not(.page__block-hero):not(.page__block-filled) {padding: 0; background: none;}
.page__head-stage .page__block + .page__block {margin-top: 20px;}
.page__head-stage .page__block .title {color: var(--text_light);}

.page__head-stage .page__head-right {
	max-height: min(72svh, 680px);
	overflow-y: auto;
	overscroll-behavior: contain;
	padding-right: 12px;
	scrollbar-gutter: stable;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.45) rgba(255, 255, 255, 0.12);
}
.page__head-right-overflowing {
	mask-image: linear-gradient(to bottom, #000 calc(100% - 40px), transparent 100%);
}
.page__head-right-overflowing.page__head-right-ended {mask-image: none;}
.page__head-stage .page__head-right::-webkit-scrollbar {width: 8px;}
.page__head-stage .page__head-right::-webkit-scrollbar-track {background: rgba(255, 255, 255, 0.12); border-radius: 4px;}
.page__head-stage .page__head-right::-webkit-scrollbar-thumb {background: rgba(255, 255, 255, 0.45); border-radius: 4px;}
.page__head-stage .page__head-right::-webkit-scrollbar-thumb:hover {background: rgba(255, 255, 255, 0.6);}

.video__facade {
	position: relative; display: block; width: 100%;
	aspect-ratio: var(--video_ratio, 16 / 9);
	border-radius: var(--radius); overflow: hidden;
	background: var(--dark); cursor: pointer;
}
.video__facade-bg {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.25); filter: blur(24px) saturate(1.3);}
.video__facade-cover {position: relative; display: block; width: 100%; height: 100%; object-fit: contain;}
.video__facade-play {
	position: absolute; inset: 0; margin: auto;
	width: 72px; height: 72px; padding: 0;
	display: flex; align-items: center; justify-content: center;
	border: 0; border-radius: 50%;
	background: var(--surface_glass_solid);
	color: var(--btn_danger);
	box-shadow: var(--shadow_2);
	cursor: pointer;
	transition: transform var(--transition);
}
.video__facade:hover .video__facade-play {transform: scale(1.08);}
.video__facade-play:focus-visible {outline: 2px solid var(--color_white); outline-offset: 3px;}
.video__facade-loading {cursor: progress;}
.video__facade-loading .video__facade-play {animation: video__facade-pulse 1.1s ease-in-out infinite;}
@keyframes video__facade-pulse {50% {opacity: 0.35;}}
@media (prefers-reduced-motion: reduce) {
	.video__facade-loading .video__facade-play {animation: none; opacity: 0.5;}
}
.video__facade iframe {position: absolute; inset: 0; display: block; width: 100%; height: 100%; aspect-ratio: auto; border: 0;}
.video__facade-prefetched iframe {visibility: hidden; pointer-events: none;}
.video__facade-ready .video__facade-bg,
.video__facade-ready .video__facade-cover,
.video__facade-ready .video__facade-play {display: none;}

@media (max-width: 1023px) {
	.page__head-media {flex-direction: column;}
	.page__head-media .page__head-right {display: contents;}
	.page__head-media .article__title {order: 1;}
	.page__head-media .page__head-left {order: 2; width: 100%; max-width: min(100%, calc(68svh * var(--video_ratio_num, 1.7778))); margin-inline: auto;}
	.page__head-media .page__head-right .content__text {order: 3;}
	.page__head-media .page__head-right .page__blocks {order: 4;}
	.page__head-stage {margin-inline: -15px; border-radius: 0;}
	.page__head-stage .page__head-right {max-height: none; overflow: visible; padding-right: 0;}
}
/****************** VIDEO PAGE HEAD - END *******************/

/****************** ITEM GALLERY *******************/
.page__images-main {position: relative; border-radius: var(--radius); overflow: hidden;}
.page__images-main-link {display: block; aspect-ratio: 16 / 9;}
.page__images-main-link img {width: 100%; height: 100%; object-fit: cover; display: block;}
.page__images-items {gap: 8px; margin-top: 8px; flex-wrap: wrap;}
.page__images-item {flex: 0 0 calc((100% - 16px) / 3); max-width: calc((100% - 16px) / 3);}
.page__images-item-link {display: block; position: relative; aspect-ratio: 16 / 9; border-radius: var(--radius_sm); overflow: hidden;}
.page__images-item-link img {width: 100%; height: 100%; object-fit: cover; display: block;}
.page__images-item-video-icon,
.page__images-main .play__icon {
	position: absolute; inset: 0;
	align-items: center; justify-content: center;
	color: var(--color_white);
	pointer-events: none;
}
.page__images-item-more {position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.55); color: var(--color_white); font-weight: 500;}
/****************** ITEM GALLERY - END *******************/

/****************** ARTICLE BODY *******************/
.article > .page__blocks > .page__block > .container {max-width: 830px;}

.article > .content__blocks:has(+ .page__blocks) {padding-bottom: 0;}
/****************** ARTICLE BODY - END *******************/

/****************** ITEM HEADLINE *******************/
.item_area .article__head .article__title {font-size: clamp(1.25rem, 0.55rem + 2.2vw, 2.5rem);}
/****************** ITEM HEADLINE - END *******************/

/****************** ITEM CLOSING ROW *******************/
.article__foot {flex-wrap: wrap; gap: 14px 16px;}
.article__foot-socials {display: flex; align-items: center; gap: 14px; margin-left: auto;}
.article__share {flex: 0 0 auto;}
.article__share svg {display: block; flex: 0 0 auto;}

@media (max-width: 559px) {
	.article__foot-socials {margin-left: 0;}
}

.article__foot .socials {margin-right: -6px;}
.article__foot .socials__items {gap: 4px;}
.article__foot .socials a {
	width: 36px; height: 36px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 50%;
	color: var(--text);
	transition: color var(--transition), background var(--transition);
}
@media (hover: hover) and (pointer: fine) {
	.article__foot .socials a:hover {color: var(--text_link_hover); background: var(--grey_1);}
}
.article__foot .socials a:active {color: var(--text_link_active); background: var(--grey_3);}
.article__foot .socials a:focus-visible {outline: 2px solid var(--main); outline-offset: 2px;}
/****************** ITEM CLOSING ROW - END *******************/

/****************** CONTACT CARD *******************/
.form__narrow .form__contact .input__wrapper {margin-bottom: 16px;}
.form__narrow .form__contact .input__text {line-height: normal; border-color: var(--grey_5);}
.form__narrow .form__contact textarea.input__text {line-height: 1.5;}
.form__narrow .form__contact .input__text:focus {border-color: var(--main);}
.form__narrow .form__contact .input__text.input__error {border-color: var(--color_error);}
.form__narrow .form__contact .btn__primary {
	color: var(--btn_primary_text);
	background-color: var(--btn_primary);
	border-color: var(--btn_primary);
	font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
	.form__narrow .form__contact .btn__primary:hover {
		color: var(--btn_primary_text_hover);
		background-color: var(--btn_primary_hover);
		border-color: var(--btn_primary_hover);
	}
}
.form__narrow .form__contact .btn__primary:active {
	color: var(--btn_primary_text_active);
	background-color: var(--btn_primary_active);
	border-color: var(--btn_primary_active);
}
/****************** CONTACT CARD - END *******************/

/****************** CARD ON A PHOTOGRAPH *******************/
.page__block-form.page__block-with-bg .form__narrow .form__contact {
	background-color: rgba(255, 255, 255, 0.87);
	-webkit-backdrop-filter: blur(18px) saturate(1.2);
	backdrop-filter: blur(18px) saturate(1.2);
}
.page__block-form.page__block-with-bg .form__narrow .form__contact .input__label {color: var(--text_2);}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.page__block-form.page__block-with-bg .form__narrow .form__contact {background-color: var(--body_bg);}
}
/****************** CARD ON A PHOTOGRAPH - END *******************/

/****************** FULL-BLEED LAST BLOCK *******************/
main:has(> .page__blocks:last-child > .page__block:last-child.page__block-with-bg) + .footer,
main:has(> .page__blocks:last-child > .page__block:last-child.page__block-filled) + .footer {margin-top: 0;}
/****************** FULL-BLEED LAST BLOCK - END *******************/

/****************** ERROR PAGE *******************/
.error__404 .header__logo #icon > * {opacity: 1; animation: none;}
/****************** ERROR PAGE - END *******************/


/****************** CONTACTS HEAD *******************/
.page__block-contacts .page__columns .content__text {max-width: none;}
.page__block-contacts .page__columns-item-inner,
.page__block-contacts .page__columns-item-inner > .content__text {height: 100%;}
.page__block-contacts .content__text > p:has(> iframe) {height: 100%; margin: 0;}
.page__block-contacts iframe {display: block; width: 100%; height: 100%; min-height: 320px; border: 0; border-radius: var(--radius_lg);}

.page__block-contacts table {width: 100%; border-collapse: collapse; table-layout: fixed; margin: 20px 0 0;}
.page__block-contacts td {padding: 9px 0; vertical-align: top; overflow-wrap: anywhere;}
.page__block-contacts td:first-child {width: 120px; padding-right: 16px; color: var(--text_2); font-size: 0.875rem;}
.page__block-contacts tr + tr td {border-top: 1px solid var(--grey_3);}
/****************** CONTACTS HEAD - END *******************/

/****************** RECEPTION LINE *******************/
.page__block-schedule .content__text ul + p {
	display: flex; align-items: flex-start; gap: 8px;
	color: var(--text_2); font-size: 0.9375rem; margin: 12px 0 0;
}
.page__block-schedule .content__text ul + p::before {
	content: '';
	flex: 0 0 auto; width: 18px; height: 18px; margin-top: 3px;
	background: var(--text_3);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5.3l3.4 2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5.3l3.4 2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
/****************** RECEPTION LINE - END *******************/

/****************** PERSON CARD *******************/
.page__block-persons .page__columns-item-content h3,
.page__block-persons .page__columns-item-content h2 {font-family: var(--font_main); font-size: 1rem; font-weight: 500; line-height: 1.4; margin: 0 0 4px;}
.page__block-persons .page__columns-item-content h3 a,
.page__block-persons .page__columns-item-content h2 a {color: inherit;}
/****************** PERSON CARD - END *******************/

/****************** CONSTRUCTOR BLOCKS - TYPES *******************/

.page__block-schedule .content__text ul li {color: var(--text_2);}
.page__block-schedule .content__text ul li::before {background: var(--accent, var(--main));}

.page__block-sports .content__text ul {display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none;}
.page__block-sports .content__text ul li {
	padding: 4px 12px; margin: 0;
	background: var(--accent_text, var(--main_2)); color: var(--text_light);
	border-radius: var(--radius_pill);
	font-size: 0.8125rem; font-weight: 500; line-height: 1.4;
}
.page__block-sports .content__text ul li::before {content: none;}

.page__block-socials .content__text ul {display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 0; padding: 0; list-style: none;}
.page__block-socials .content__text ul li {padding: 0; margin: 0;}
.page__block-socials .content__text ul li::before {content: none;}

.content__text ol {padding-left: 22px; margin: 0 0 16px; list-style: decimal;}
.content__text ol li {margin-bottom: 8px;}

.page__block-namelist .content__text ol,
.page__block-namelist .content__text ul {columns: 2; column-gap: clamp(24px, 4vw, 56px);}
.page__block-namelist .content__text li {break-inside: avoid;}
@media (max-width: 767px) {
	.page__block-namelist .content__text ol,
	.page__block-namelist .content__text ul {columns: 1;}
}

.page__block-credits .content__text {max-width: none; padding-top: 16px; border-top: 1px solid var(--grey_3);}
.page__block-credits .content__text p {margin: 0; font-size: 0.8125rem; line-height: 1.5; color: var(--text_3);}
.page__block-credits .content__text a {color: inherit; text-decoration: underline;}
.page__block-credits .content__text a:hover {color: var(--main);}

.page__columns-item-card {transition: box-shadow var(--transition), border-color var(--transition);}
.page__columns-item-image img {transition: transform var(--transition_slow);}
.page__columns-item-card.item__link-wrapper-js:hover,
.page__columns-item-card.item__link-wrapper-js:focus-within {box-shadow: var(--shadow_3); border-color: transparent;}
.page__columns-item-card.item__link-wrapper-js:active {box-shadow: var(--shadow_1); border-color: transparent;}
.page__columns-item-card.item__link-wrapper-js:hover .page__columns-item-content :is(h2, h3),
.page__columns-item-card.item__link-wrapper-js:focus-within .page__columns-item-content :is(h2, h3),
.page__columns-item-card.item__link-wrapper-js:hover .page__columns-item-content :is(h2, h3) a,
.page__columns-item-card.item__link-wrapper-js:focus-within .page__columns-item-content :is(h2, h3) a {color: var(--main_2);}
@media (hover: hover) and (pointer: fine) {
	.page__columns-item-card.item__link-wrapper-js:hover .page__columns-item-image img {transform: scale(1.03);}
}
@media (prefers-reduced-motion: reduce) {
	.page__columns-item-card.item__link-wrapper-js:hover .page__columns-item-image img {transform: none;}
}
.page__columns:has(.item__link-wrapper-js) .page__columns-item-card:not(.item__link-wrapper-js) {background: none; border-color: transparent;}
.page__columns-item-content .item__link-external::after {
	content: '';
	display: inline-block; width: 0.85em; height: 0.85em;
	margin-left: 0.35em; margin-right: -1.2em; vertical-align: -0.06em;
	background: var(--main);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7'/%3E%3Cpath d='M9 7h8v8'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7'/%3E%3Cpath d='M9 7h8v8'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: background-color var(--transition);
}
.page__columns-item-card.item__link-wrapper-js:hover .page__columns-item-content .item__link-external::after,
.page__columns-item-card.item__link-wrapper-js:focus-within .page__columns-item-content .item__link-external::after {background: var(--main_2);}

.page__columns-item-content :is(h2, h3) {font-size: 1.125rem; line-height: 1.3; margin: 0 0 6px;}
.page__columns-item-info {font-size: 0.875rem; line-height: 1.5; color: var(--text_2);}

.page__block-portraits .page__columns {display: block; columns: 4; column-gap: clamp(16px, 2vw, 28px);}
.page__block-portraits .page__columns-item {display: block; break-inside: avoid; margin-bottom: clamp(16px, 2vw, 28px);}
.page__block-portraits .page__columns-item-card {height: auto;}
.page__block-portraits .page__columns-item-image {aspect-ratio: auto; background: none;}
.page__block-portraits .page__columns-item-image img {position: static; width: 100%; height: auto;}
.page__block-portraits .page__columns:has(.page__columns-item-image img) .page__columns-item-card .page__columns-item-image:not(:has(img)) {display: none;}
@media (max-width: 1023px) {
	.page__block-portraits .page__columns {columns: 2;}
}
@media (max-width: 559px) {
	.page__block-portraits .page__columns {columns: 1;}
	.page__block-portraits .page__columns-item {margin-bottom: 12px;}
	.page__block-portraits .page__columns-item-card {flex-direction: row; align-items: stretch;}
	.page__block-portraits .page__columns-item-image {flex: 0 0 96px; aspect-ratio: 4 / 5;}
	.page__block-portraits .page__columns-item-image img {height: 100%; object-fit: cover;}
	.page__block-portraits .page__columns-item-content-wrapper {justify-content: center; gap: 8px; padding: 12px 16px;}
}

/* REVEAL */
.masonry__reveal > .page__columns-item {opacity: 0; transition: opacity .3s ease-out;}
.masonry__reveal > .page__columns-item.masonry__reveal-in {opacity: 1;}
@media (prefers-reduced-motion: reduce) {
	.masonry__reveal > .page__columns-item {opacity: 1; transition: none;}
}

.org__head-photo {
	aspect-ratio: 21 / 8;
	margin-bottom: -56px;
	border-radius: var(--radius_lg);
	overflow: hidden;
	background: var(--grey_1);
}
.org__head-photo img {display: block; width: 100%; height: 100%; object-fit: cover;}
@media (max-width: 722px) {
	.org__head-photo {aspect-ratio: 16 / 9; margin-bottom: -32px;}
}

.page__block-org-summary .page__columns {gap: clamp(20px, 3vw, 48px);}
.page__block-org-summary .content__text > h2 {
	font-family: var(--font_display); font-weight: 700;
	font-size: 1.75rem; line-height: 1.18;
	margin: 0;
	position: relative;
	padding-left: 1.95em;
}
.page__block-org-summary .content__text > h2::before {
	content: '';
	position: absolute; left: 0; top: 0.06em;
	width: 1.508em; height: 1.43em;
	box-sizing: border-box;
	border-radius: 0.40em;
	background: var(--accent_bg, var(--main_4));
}
.page__block-org-summary .content__text > h2::after {
	--mark_mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-0.01 0.64 43.9 39.77' fill='%23000'%3E%3Cpath d='M10.38,10.8c.54.06,1.19.45,1.6.8l7.6,7.6c.42.53.41,1.06,0,1.6l-7.6,7.54c-.31.28-1.21.74-1.6.74h-1.91l9.08-9.1-9.08-9.18c.61.05,1.32-.07,1.91,0Z'/%3E%3Cpath d='M6.5,11.05l8.88,8.91c-.28.39-.67.67-1,1-2.63,2.6-5.22,5.25-7.85,7.86-.95.78-2.21-.3-1.45-1.34l7.5-7.47-1.54-1.65c-2.03-1.94-4-3.96-5.99-5.95-.72-1.04.49-2.14,1.45-1.37Z'/%3E%3Cpath d='M3.94,15.67c3.16-.2,5.4,3.18,3.96,6.02-1.34,2.66-5.01,3.06-6.92.79-2.22-2.64-.43-6.59,2.96-6.81Z'/%3E%3Cpath d='M12.86,30.93c.06-.64.39-1.35.8-1.83l7.54-7.48c.26-.24.55-.28.89-.26.19.01.58.19.72.31.08.08.09.2.13.24,2.4,2.4,4.94,4.75,7.32,7.22.33.4.77,1.23.77,1.74v1.74l-9.06-8.96-9.1,8.96c.04-.54-.05-1.15,0-1.69Z'/%3E%3Cpath d='M22.15,25.9l8.65,8.69c.73,1.01-.43,2.13-1.4,1.4l-7.34-7.34-.14-.08-7.26,7.31c-1,.96-2.38-.2-1.54-1.31l8.74-8.74.1-.04.19.13Z'/%3E%3Cpath d='M21.47,32.12c3.36-.34,5.75,3.14,4.13,6.13-1.4,2.59-5.06,2.88-6.92.62-2.07-2.53-.45-6.42,2.79-6.75Z'/%3E%3Cpath d='M34.85,10.85l-9.03,9.11,8.91,8.97c.05.11-.2.14-.26.14-1.05.09-2.29-.07-3.11-.77-2.08-2.09-4.18-4.16-6.25-6.26-.37-.37-1.19-1.05-1.45-1.46s-.22-.9.08-1.28c2.58-2.42,4.92-5.11,7.48-7.54,1.11-1.05,2.17-1,3.63-.91Z'/%3E%3Cpath d='M38.37,12.37l-7.52,7.53.06.23c1.54,1.52,3.07,3.07,4.6,4.6.64.64,1.34,1.25,1.97,1.91.21.22.97,1,1.01,1.21.17.8-.45,1.33-1.22,1.22-.35-.05-1.15-.89-1.45-1.18-2.63-2.57-5.14-5.26-7.78-7.82l-.06-.12.37-.46,8.57-8.57c1.01-.53,1.97.42,1.44,1.44Z'/%3E%3Cpath d='M41.8,16.19c2.9,1.61,2.71,5.94-.27,7.37-3.69,1.77-7.52-2.3-5.41-5.87,1.15-1.95,3.7-2.6,5.68-1.5Z'/%3E%3Cpath d='M16,.46v2.66c0,.06.22.55.27.64.58,1.05,2.23,1.17,2.98.22.12-.15.4-.69.4-.86V.46h3.77v2.71c0,.29.54.97.8,1.14,1.06.64,2.33.27,2.71-.94.04-.13.15-.54.15-.65V.4h3.77v8.08c0,.87-.75,1.55-1.29,2.08-2.36,2.36-4.66,4.78-7.05,7.11-.73.58-1.5.44-2.15-.16-1.71-1.57-3.41-3.48-5.05-5.15-.93-.96-3.09-2.66-3.09-4.05V.46h3.77Z'/%3E%3C/svg%3E");
	content: '';
	position: absolute; left: 0.34em; top: 0.40em;
	width: 0.828em; height: 0.75em;
	background: var(--accent_text, var(--main_2));
	-webkit-mask: var(--mark_mask) center / contain no-repeat;
	mask: var(--mark_mask) center / contain no-repeat;
}
.page__block-org-summary .content__text > h2 + * {margin-top: 20px;}
.page__block-org-summary .content__text table {margin-top: 0;}
@media (max-width: 767px) {
	.page__block-org-summary .content__text > h2 {font-size: 1.5rem;}
}

.page__block-facts .page__columns {
	grid-template-columns: repeat(auto-fit, minmax(200px, 260px));
	justify-content: start;
	gap: clamp(12px, 1.6vw, 20px);
}
@media (max-width: 560px) {
	.page__block-facts .page__columns {grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));}
}
.page__block-facts .page__columns-item-inner {
	box-sizing: border-box; height: 100%;
	padding: 18px 20px;
	border-radius: var(--radius);
	background: var(--accent_bg, var(--main_3));
}
.page__block-facts .content__text p {margin: 0;}
.page__block-facts .content__text p:first-child {
	font-family: var(--font_display); font-weight: 700;
	font-size: clamp(1.5rem, 0.9rem + 1.6vw, 2rem); line-height: 1.1; color: var(--text);
}
.page__block-facts .content__text p:first-child strong {font-weight: inherit;}
.page__block-facts .content__text p + p {
	margin-top: 6px; color: var(--text_2);
	font-size: 0.875rem; line-height: 1.35;
}

.page__block-persons .page__columns-item-info {color: var(--text_2); font-size: 0.875rem; line-height: 1.45;}
.page__block-persons .page__columns-item-info a[href^="tel:"] {display: inline-flex; align-items: center; gap: 8px; margin-top: 10px; font-size: 0.9375rem;}
.page__block-persons .page__columns-item-info a[href^="tel:"]::before {
	content: '';
	flex: 0 0 auto; width: 16px; height: 16px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M6 3h3l2 5-2.5 1.5a12 12 0 006 6L16 13l5 2v3a2 2 0 01-2.2 2A17 17 0 014 5.2 2 2 0 016 3z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M6 3h3l2 5-2.5 1.5a12 12 0 006 6L16 13l5 2v3a2 2 0 01-2.2 2A17 17 0 014 5.2 2 2 0 016 3z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.page__block-orgs .page__columns {
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: clamp(24px, 2vw, 32px) clamp(12px, 1.2vw, 16px);
}
@media (max-width: 1279px) {
	.page__block-orgs .page__columns {grid-template-columns: repeat(4, minmax(0, 1fr));}
}
@media (max-width: 767px) {
	.page__block-orgs .page__columns {grid-template-columns: repeat(3, minmax(0, 1fr));}
}
@media (max-width: 559px) {
	.page__block-orgs .page__columns {grid-template-columns: repeat(2, minmax(0, 1fr));}
}
.page__block-orgs .page__columns-item {align-items: flex-start;}
.page__block-orgs .page__columns-item-card {height: auto; background: none; border: none; border-radius: 0; overflow: visible;}
.page__block-orgs .page__columns-item-image {aspect-ratio: 1 / 1; border-radius: var(--radius); overflow: hidden;}
.page__block-orgs .page__columns-item-card.item__link-wrapper-js:hover,
.page__block-orgs .page__columns-item-card.item__link-wrapper-js:focus-within,
.page__block-orgs .page__columns-item-card.item__link-wrapper-js:active {box-shadow: none;}
.page__block-orgs .page__columns-item-card.item__link-wrapper-js:hover .page__columns-item-image,
.page__block-orgs .page__columns-item-card.item__link-wrapper-js:focus-within .page__columns-item-image {box-shadow: var(--shadow_3);}
.page__block-orgs .page__columns:has(.page__columns-item-image img) .page__columns-item-card .page__columns-item-image:not(:has(img)) {background: var(--accent_bg, var(--main_3));}
.page__block-orgs .page__columns-item-content-wrapper {gap: 8px; padding: 10px 0 0;}
.page__block-orgs .page__columns-item-content {display: flex;}
.page__block-orgs .page__columns-item-content .content__text {display: flex; flex-direction: column; gap: 6px; flex: 1 1 auto;}
.page__block-orgs .page__columns-item-content :is(h2, h3) {margin: 0; font-size: 0.9375rem; line-height: 1.3;}
.page__block-orgs .page__columns-item-content :is(h2, h3) a {color: var(--text);}
.page__block-orgs .page__columns-item-info {
	display: flex; align-items: flex-start; gap: 6px;
	font-size: 0.8125rem; line-height: 1.4; color: var(--text_3);
}
.page__block-orgs .page__columns-item-info::before {
	content: '';
	flex: 0 0 auto; width: 14px; height: 14px; margin-top: 2px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6.1 7-11a7 7 0 10-14 0c0 4.9 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6.1 7-11a7 7 0 10-14 0c0 4.9 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E") center / contain no-repeat;
}

.page__block-about .content__text p:last-child a {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 12px 24px; border-radius: var(--radius_pill);
	border: 1px solid var(--main); color: var(--main);
	font-size: 0.9375rem; font-weight: 500; text-decoration: none;
	transition: background-color var(--transition), color var(--transition);
}
@media (hover: hover) and (pointer: fine) {
	.page__block-about .content__text p:last-child a:hover {background: var(--main); color: var(--text_light); text-decoration: none;}
}

/****************** CONSTRUCTOR BLOCKS - TYPES - END *******************/

/****************** SHORTCODES *******************/

.pt0{padding-top:0}.pt5{padding-top:5px}.pt10{padding-top:10px}.pt15{padding-top:15px}.pt20{padding-top:20px}.pt30{padding-top:30px}.pt40{padding-top:40px}.pt50{padding-top:50px}.pt60{padding-top:60px}.pt70{padding-top:70px}.pt80{padding-top:80px}.pt90{padding-top:90px}.pt100{padding-top:100px}.pt150{padding-top:150px}.pt200{padding-top:200px}.pt250{padding-top:250px}.pt300{padding-top:300px}.pr0{padding-right:0}.pr5{padding-right:5px}.pr10{padding-right:10px}.pr15{padding-right:15px}.pr20{padding-right:20px}.pr30{padding-right:30px}.pr40{padding-right:40px}.pr50{padding-right:50px}.pb0{padding-bottom:0}.pb5{padding-bottom:5px}.pb10{padding-bottom:10px}.pb15{padding-bottom:15px}.pb20{padding-bottom:20px}.pb30{padding-bottom:30px}.pb40{padding-bottom:40px}.pb50{padding-bottom:50px}.pb60{padding-bottom:60px}.pb70{padding-bottom:70px}.pb80{padding-bottom:80px}.pb90{padding-bottom:90px}.pb100{padding-bottom:100px}.pb150{padding-bottom:150px}.pb200{padding-bottom:200px}.pb250{padding-bottom:250px}.pb300{padding-bottom:300px}.pl0{padding-left:0}.pl5{padding-left:5px}.pl10{padding-left:10px}.pl15{padding-left:15px}.pl20{padding-left:20px}.pl30{padding-left:30px}.pl40{padding-left:40px}.pl50{padding-left:50px}.mt0{margin-top:0}.mt5{margin-top:5px}.mt10{margin-top:10px}.mt15{margin-top:15px}.mt20{margin-top:20px}.mt30{margin-top:30px}.mt40{margin-top:40px}.mt50{margin-top:50px}.mt60{margin-top:60px}.mt70{margin-top:70px}.mt80{margin-top:80px}.mt90{margin-top:90px}.mt100{margin-top:100px}.mt150{margin-top:150px}.mt200{margin-top:200px}.mt250{margin-top:250px}.mt300{margin-top:300px}.mr0{margin-right:0}.mr5{margin-right:5px}.mr10{margin-right:10px}.mr15{margin-right:15px}.mr20{margin-right:20px}.mr30{margin-right:30px}.mr40{margin-right:40px}.mr50{margin-right:50px}.mb0{margin-bottom:0}.mb5{margin-bottom:5px}.mb10{margin-bottom:10px}.mb15{margin-bottom:15px}.mb20{margin-bottom:20px}.mb30{margin-bottom:30px}.mb40{margin-bottom:40px}.mb50{margin-bottom:50px}.ml0{margin-left:0}.ml5{margin-left:5px}.ml10{margin-left:10px}.ml15{margin-left:15px}.ml20{margin-left:20px}.ml30{margin-left:30px}.ml40{margin-left:40px}.ml50{margin-left:50px}

/****************** SHORTCODES - END *******************/

/****************** FILTERS SIDEBAR *******************/
.chip__count {flex: 0 0 auto; white-space: nowrap;}

.filters__list-orgs {flex-direction: column; flex-wrap: nowrap; gap: 6px;}
.filters__list-orgs > li {width: 100%;}
.filters__list-orgs .chip {width: 100%; gap: 10px; text-align: left; line-height: 1.35;}
.filters__list-orgs .chip > span:first-child {flex: 1 1 auto; min-width: 0;}
.filters__list-orgs .chip__count {margin-left: auto;}
/****************** FILTERS SIDEBAR - END *******************/

/****************** "MORE NEWS" BLOCK *******************/
@media (min-width: 1024px) {
	.articles__items-more {grid-template-columns: repeat(4, minmax(0, 1fr));}
}
/****************** "MORE NEWS" BLOCK - END *******************/

/****************** CONSTRUCTOR SECTION HEADS *******************/
.page__blocks > .page__block:not(.page__block-docs-year) > * > h2.title {margin-bottom: clamp(20px, 2.6vw, 32px);}

.page__head-stage .page__blocks > .page__block > * > h2.title {margin-bottom: 20px;}
/****************** CONSTRUCTOR SECTION HEADS - END *******************/

/****************** ABOUT BLOCK - QUICK LINKS *******************/
.page__block-about .page__columns-2 {
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: clamp(24px, 4vw, 56px);
	align-items: start;
}

.page__block-about .page__columns-item + .page__columns-item .content__text {max-width: none;}
.page__block-about .content__text ul {
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px; margin: 0;
}
.page__block-about .content__text ul li {
	display: flex; align-items: stretch;
	padding: 0; margin: 0;
}
.page__block-about .content__text ul li::before {content: none;}

.page__block-about .content__text li > a {
	box-sizing: border-box; position: relative;
	flex: 1 1 auto;
	display: flex; align-items: center;
	min-height: 68px;
	padding: 14px 14px 14px 66px;
	background: var(--body_bg);
	border: 1px solid var(--grey_3);
	border-radius: var(--radius);
	color: var(--text); font-weight: 500; line-height: 1.3;
	transition: box-shadow var(--transition), border-color var(--transition);
}
@media (hover: hover) and (pointer: fine) {
	.page__block-about .content__text li > a:hover {
		box-shadow: var(--shadow_2); border-color: transparent;
		color: var(--text); text-decoration: none;
	}
	.page__block-about .content__text li > a:hover::before {background: var(--main_3);}
}
.page__block-about .content__text li > a:active {
	box-shadow: var(--shadow_1); border-color: transparent; color: var(--text);
}
.page__block-about .content__text li > a:focus-visible {text-decoration: none;}

.page__block-about .content__text li > a::before,
.page__block-about .content__text li > a::after {
	content: ''; position: absolute; left: 14px; top: 50%;
	transform: translateY(-50%);
	transition: background var(--transition);
}
.page__block-about .content__text li > a::before {
	width: 40px; height: 40px;
	border-radius: var(--radius_sm);
	background: var(--grey_1);
}
.page__block-about .content__text li > a::after {
	left: 22px;
	width: 24px; height: 24px;
	background: var(--main);
	-webkit-mask: var(--quick_icon) center / 24px 24px no-repeat;
	        mask: var(--quick_icon) center / 24px 24px no-repeat;
}

.page__block-about .content__text li > a {
	--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' stroke='%23000' stroke-width='2' fill='none'/%3E %3Cpath d='M12 11v6' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E %3Ccircle cx='12' cy='7.5' r='1.2' fill='%23000'/%3E%3C/svg%3E");
}
.page__block-about .content__text li > a[href*="/budget-execution"] {
	--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12.5l5 5L20 6.5' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
}
.page__block-about .content__text li > a[href*="/mayor-scholarship-students"] {
	--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.2l2.7 5.5 6.1.9-4.4 4.3 1 6-5.4-2.9-5.4 2.9 1-6-4.4-4.3 6.1-.9L12 3.2z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
}
.page__block-about .content__text li > a[href*="/spor-glory"] {
	--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20s-8-4.9-8-10a4.5 4.5 0 018-2.8A4.5 4.5 0 0120 10c0 5.1-8 10-8 10z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
}
.page__block-about .content__text li > a[href*="/procurement"] {
	--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2.5h7.5l5 5v13a1.5 1.5 0 01-1.5 1.5H6a1.5 1.5 0 01-1.5-1.5V4A1.5 1.5 0 016 2.5z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E %3Cpath d='M13.5 2.5v5h5' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E %3Cpath d='M8.5 13.5h7M8.5 17h4.5' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.page__block-about .content__text li > a[href*="/youth-projects"] {
	--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 00-3.5 10.9V16h7v-2.1A6 6 0 0012 3z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E %3Cpath d='M10 19h4' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.page__block-about .content__text li > a[href*="/contacts"] {
	--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 3h3l2 5-2.5 1.5a12 12 0 006 6L16 13l5 2v3a2 2 0 01-2.2 2A17 17 0 014 5.2 2 2 0 016 3z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
}

.page__block-about .content__text li > a.quick__link-check {--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12.5l5 5L20 6.5' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");}
.page__block-about .content__text li > a.quick__link-star {--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.2l2.7 5.5 6.1.9-4.4 4.3 1 6-5.4-2.9-5.4 2.9 1-6-4.4-4.3 6.1-.9L12 3.2z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");}
.page__block-about .content__text li > a.quick__link-heart {--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20s-8-4.9-8-10a4.5 4.5 0 018-2.8A4.5 4.5 0 0120 10c0 5.1-8 10-8 10z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");}
.page__block-about .content__text li > a.quick__link-doc {--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2.5h7.5l5 5v13a1.5 1.5 0 01-1.5 1.5H6a1.5 1.5 0 01-1.5-1.5V4A1.5 1.5 0 016 2.5z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E %3Cpath d='M13.5 2.5v5h5' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E %3Cpath d='M8.5 13.5h7M8.5 17h4.5' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");}
.page__block-about .content__text li > a.quick__link-bulb {--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 00-3.5 10.9V16h7v-2.1A6 6 0 0012 3z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E %3Cpath d='M10 19h4' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");}
.page__block-about .content__text li > a.quick__link-phone {--quick_icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 3h3l2 5-2.5 1.5a12 12 0 006 6L16 13l5 2v3a2 2 0 01-2.2 2A17 17 0 014 5.2 2 2 0 016 3z' stroke='%23000' stroke-width='2' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");}

@media (max-width: 1023px) {
	.page__block-about .page__columns-2 {grid-template-columns: minmax(0, 1fr);}
}
@media (max-width: 767px) {
	.page__block-about .content__text ul {grid-template-columns: minmax(0, 1fr);}
}
/****************** ABOUT BLOCK - QUICK LINKS - END *******************/

/****************** MEDIA BAND *******************/
.page__block-media {background: var(--footer_bg);}

.page__block-media .title {color: var(--text_light);}
.page__block-media .title__link-more {color: var(--text_light_2);}
@media (hover: hover) and (pointer: fine) {
	.page__block-media a.title__link:hover .title__link-more {color: var(--text_light);}
}
.page__block-media a.title__link:active .title__link-more {color: var(--text_light_3);}

.page__block-media a.title__link .title::after {background: color-mix(in srgb, var(--text_light) 22%, transparent);}
/****************** MEDIA BAND - END *******************/

/****************** INSTITUTION VIDEO FILE *******************/
.page__block-video video {
	display: block;
	width: 100%;
	max-width: 420px;
	height: auto;
	margin: 0;
	border-radius: var(--radius_lg);
	background: var(--grey_1);
	box-shadow: var(--shadow_1);
}
/****************** INSTITUTION VIDEO FILE - END *******************/

/****************** SPORTS GLORY *******************/
.glory_pg {
	background-color: var(--body_bg);
	background-image:
		radial-gradient(900px 520px at 92% 340px, color-mix(in srgb, var(--main) 14%, transparent), transparent 70%),
		radial-gradient(1100px 620px at 6% 200px, color-mix(in srgb, var(--accent_sport) 38%, transparent), transparent 70%),
		linear-gradient(180deg, color-mix(in srgb, var(--accent_sport) 18%, var(--body_bg)) 0, color-mix(in srgb, var(--accent_sport) 7%, var(--body_bg)) 900px);
	background-repeat: no-repeat;
	background-size: auto, auto, 100% 100%;
}
@media (forced-colors: active) {.glory_pg {background-image: none;}}
html[class*="contrast-style"] .glory_pg,
html[class*="invert-colors"] .glory_pg,
html[class*="saturation"] .glory_pg,
.glory_pg[class*="contrast-style"],
.glory_pg[class*="invert-colors"],
.glory_pg[class*="saturation"] {background-image: none;}

/* HOLD */
.glory_js .page__blocks {opacity: 0;}
.glory_js .page__blocks.glory__ready {opacity: 1; transition: opacity .25s ease-out;}
@media (prefers-reduced-motion: reduce) {
	.glory_js .page__blocks.glory__ready {transition: none;}
}

/* ENTRANCE */
.glory__scale, .glory__filter {animation: usms-rise .34s ease-out backwards;}
.glory__filter {animation-delay: .05s;}
@media (prefers-reduced-motion: reduce) {
	.glory__scale, .glory__filter {animation: none;}
}

/* SCALE */
.glory__scale {display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 22px; margin: 14px 0 0;}
.glory__scale-item {display: inline-flex; align-items: baseline; gap: 7px; color: var(--text_2); font-size: 0.9375rem;}
.glory__scale-num {
	font-family: var(--font_display); font-weight: 700;
	font-size: 1.5rem; line-height: 1; color: var(--accent_sport_text);
	font-variant-numeric: tabular-nums;
}
.glory__scale-note {flex-basis: 100%; margin: 0; color: var(--text_3); font-size: 0.875rem;}

/* FILTER */
.glory__filter {margin: 0 0 clamp(18px, 2.2vw, 28px);}
.glory__filter-list {margin: 0 0 10px;}
.glory__chip {
	border: 1px solid var(--grey_3);
	background: var(--body_bg);
	color: var(--text);
	cursor: pointer;
	font: inherit; font-size: 0.875rem;
	transition: background var(--transition), border-color var(--transition), color var(--transition);
}
@media (hover: hover) and (pointer: fine) {
	.glory__chip:hover {border-color: var(--accent_sport); background: var(--accent_sport_bg);}
}
.glory__chip:focus-visible {outline: 2px solid var(--focus, var(--main)); outline-offset: 2px;}
.glory__chip[aria-pressed="true"] {background: var(--accent_sport); border-color: transparent; color: var(--text);}
.glory__chip[aria-pressed="true"] .chip__count {color: inherit;}
.glory__filter-status {margin: 0; color: var(--text_2); font-size: 0.875rem;}
.glory_pg .page__columns-item.glory__card-hidden {display: none;}

/* CONFETTI */
.glory__confetti {position: fixed; inset: 0; z-index: 30; overflow: hidden; pointer-events: none;}
.glory__confetti-piece {
	position: absolute; top: -8vh; left: var(--x);
	width: var(--s); height: var(--s);
	color: var(--c);
	opacity: 0;
	will-change: transform, opacity;
	animation: glory-fall var(--t) cubic-bezier(0.3, 0.1, 0.5, 1) var(--d) forwards;
}
.glory__confetti-piece svg {display: block; width: 100%; height: 100%;}
.glory__confetti-dot {border-radius: 50%; background: currentColor;}
.glory__confetti-bar {border-radius: 2px; background: currentColor; height: calc(var(--s) * 0.38);}
@keyframes glory-fall {
	0%   {opacity: 0; transform: translate3d(0, 0, 0) rotate(0deg);}
	8%   {opacity: 1;}
	80%  {opacity: 1;}
	100% {opacity: 0; transform: translate3d(var(--dx), 116vh, 0) rotate(var(--r));}
}
@media (prefers-reduced-motion: reduce) {
	.glory__confetti {display: none;}
}

@media (max-width: 722px) {
	.glory__scale {gap: 6px 16px;}
	.glory__scale-num {font-size: 1.25rem;}
	.glory__filter-list {
		flex-wrap: nowrap;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scroll-snap-type: x proximity;
		scrollbar-width: none;
		margin-inline: calc(var(--container_pad) * -1);
		padding-inline: var(--container_pad);
		scroll-padding-inline: var(--container_pad);
		padding-bottom: 4px;
	}
	.glory__filter-list::-webkit-scrollbar {display: none;}
	.glory__filter-list > li {flex: 0 0 auto; scroll-snap-align: start;}
}
/****************** SPORTS GLORY - END *******************/

/****************** FOOTER - ADAPTIVE *******************/
@media (min-width: 1024px) {
	.footer__cols {grid-template-columns: repeat(var(--footer_cols, 3), minmax(0, 1fr));}
}
@media (min-width: 768px) and (max-width: 1023px) {
	.footer__cols {grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: clamp(20px, 3vw, 40px);}
}
/****************** FOOTER - ADAPTIVE - END *******************/
