

/* Start:/local/templates/fhso_2025/assets/css/standings.css?17902503356052*/
.standings {
	padding-bottom: 40px;
}

.standings__wrapper {
	display: flex;
	flex-direction: column;
	gap: 20px;
	background: var(--color-bg-white);
	box-shadow: 0px 32px 64px -16px #001c4780;
	padding: 20px 20px 40px;
	border-radius: 48px;
	position: relative;
}

.standings__banner {
	margin: 0;
	height: 400px;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	border-radius: var(--radius-lg);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 24px;
	position: relative;
	overflow: hidden;
}

.standings__banner-image img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.standings__banner-title {
	font-family: var(--font-heading);
	font-size: 48px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.1;
	filter: drop-shadow(0px 4px 16px #001c4733);
	background: linear-gradient(88.88deg, #ffffff 0.19%, #c7f7ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	z-index: 2;
}

.standings__banner-image::before {
	border-radius: 24px;
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0) 38.62%,
		rgba(0, 100, 181, 0.9) 100%,
		#0045adb2
	);
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.standings__banner-image::after {
	border-radius: 24px;
	background: #0045adb2;
	mix-blend-mode: soft-light;
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.standings__scroll-container {
	overflow: hidden;
}

.wave-decoration:has(.top-scorers__table-wrapper) {
	overflow: hidden;
	padding: 44px 20px 30px;
}

.standings__table-wrapper,
.top-scorers__table-wrapper {
	overflow-x: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding-bottom: 40px;
}

.standings__table-wrapper::-webkit-scrollbar,
.top-scorers__table-wrapper::-webkit-scrollbar {
	display: none;
}

.standings__table,
.top-scorers__table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0px 24px 24px -8px #00306740;
	background: linear-gradient(180deg, #0c62b0 0%, #004b96 100%);
}

.standings__table-header,
.top-scorers__table-header {
	background: transparent;
}

.standings__table-body,
.top-scorers__table-body {
	background: #f5fbff;
}

.standings__table-row {
	display: grid;
	/* grid-template-columns: 70px minmax(0, 1.6fr) repeat(8, minmax(40px, 0.23fr)); */
	grid-template-columns: 70px minmax(450px, 1.6fr) repeat(8, 86px);
	align-items: center;
	padding: 6px 0;
	font-size: 14px;
	color: var(--color-primary-dark);
}

.standings__table-body .standings__table-row:nth-child(odd),
.top-scorers__table-body .top-scorers__row:nth-child(even) {
	background: #ffffff;
}

.standings__table-body .standings__table-row:nth-child(even),
.top-scorers__table-body .top-scorers__row:nth-child(odd) {
	background: #ebf5f9;
}

.standings__table-row--leader {
	position: relative;
}

.standings__table-cell,
.top-scorers__cell {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
}
.standings__table-cell svg {
	position: absolute;
	right: 15px;
	top: -10px;
}

.standings__table-cell--number,
.standings__table-cell,
.top-scorers__cell--number,
.top-scorers__cell {
	justify-content: center;
	font-weight: 700;
	font-size: 24px;
}
.standings__table-cell--team,
.top-scorers__cell--team {
	justify-content: flex-start;
	text-transform: none;
}

.top-scorers__cell--player {
	justify-content: flex-start;
	padding: 0 10px;
}

.standings__team {
	display: flex;
	align-items: center;
	gap: 12px;
}

picture:has(.standings__team-logo) {
	padding: 4px;
	border-radius: 8px;
	background-color: #ffffff;
}

.standings__team-logo {
	width: 40px;
	height: 40px;
	border-radius: 4px;
	overflow: hidden;
	flex-shrink: 0;
	background: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.standings__team-logo img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.standings__team-name {
	font-weight: 700;
	font-size: 24px;
	color: var(--color-primary-dark);
}

.standings__table thead .standings__table-row,
.top-scorers__table-header .top-scorers__row {
	background: linear-gradient(88.88deg, #001c47 0.19%, #0064b5 100%);
	color: #ffffff;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 15px 0;
}

.top-scorers__row {
	display: grid;
	grid-template-columns: 70px 130px repeat(2, minmax(420px, 1fr)) 160px;
	padding: 4px 0;
}

.top-scorers__cell.heading-right {
	justify-content: flex-start;
	padding: 0 10px;
}

picture:has(.top-scorers__player-photo) {
	padding: 0 4px;
}

.top-scorers__player-photo {
	min-width: 112px;
	height: 92px;
	object-fit: cover;
	border-radius: 4px;
}

picture:has(.top-scorers__team-logo) {
	padding: 4px;
	background-color: #ffffff;
	border-radius: 8px;
	margin-right: 10px;
	box-shadow: 0px 4px 8px -4px #0064b540;
}

.top-scorers__team-logo {
	min-width: 84px;
	height: 84px;
}

@media (max-width: 768px) {
	.standings__banner {
		padding: 12px;
	}

	.standings__wrapper {
		padding: 10px 10px 34px;
		border-radius: 32px;
		margin: 0 10px;
	}

	.standings__banner-title {
		font-size: clamp(20px, 5vw, 32px);
	}

	.standings__table thead .standings__table-row,
	.top-scorers__table-header .top-scorers__row {
		padding: 19px 0;
	}

	.standings__table-row {
		grid-template-columns: 40px minmax(350px, 1.6fr) repeat(8, 55px);
	}

	.standings__table-cell svg {
		display: none;
	}

	.standings__table-cell--number,
	.standings__table-cell,
	.standings__team-name,
	.top-scorers__team-name,
	.top-scorers__cell--number,
	.top-scorers__cell {
		font-size: 18px;
	}

	.wave-decoration:has(.top-scorers__table-wrapper) {
		padding: 24px 10px 34px;
	}

	.top-scorers__row {
		grid-template-columns: 40px 90px repeat(2, minmax(330px, 1fr)) 100px;
		padding: 3px 0;
	}

	.top-scorers__player-photo {
		min-width: 82px;
		height: 52px;
	}

	.top-scorers__team-logo {
		min-width: 46px;
		height: 46px;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/assets/css/championship_detail.css?177364842810954*/
.championship-detail__wrapper {
	display: flex;
	flex-direction: column;
	gap: 24px;
	background: var(--color-bg-white);
	box-shadow: 0px 32px 64px -16px #001c4780;
	padding: 20px;
	border-radius: var(--radius-xl);
}

.championship-detail__banner {
	margin: 0;
	height: 320px;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	border-radius: var(--radius-lg);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 24px;
	position: relative;
	overflow: hidden;
}

.championship-detail__banner-image img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.championship-detail__banner-image::before {
	border-radius: var(--radius-lg);
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0) 38.62%,
		rgba(0, 100, 181, 0.9) 100%,
		#0045adb2
	);
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.championship-detail__banner-image::after {
	border-radius: var(--radius-lg);
	background: #0045adb2;
	mix-blend-mode: soft-light;
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.championship-detail__banner-title {
	font-family: var(--font-heading);
	font-size: 48px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.1;
	filter: drop-shadow(0px 4px 16px #001c4733);
	background: linear-gradient(88.88deg, #ffffff 0.19%, #c7f7ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	z-index: 2;
}

.championship-detail__title-wrapper {
	display: flex;
	justify-content: space-between;
	gap: 24px;
	align-items: flex-end;
}

.championship-detail__tabs {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
}

.championship-detail__tabs-group {
	padding: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	/* background: #f2f7f8; */
	border-radius: 70px;
	width: fit-content;
}

.championship-detail__tab {
	background: #004890;

	color: #a2d9f3;
	padding: 12px 32px;
	border-radius: 24px;
	font-size: 24px;
	cursor: pointer;
	text-align: center;
}

.championship-detail__tab.active,
.championship-detail__tab.championship-detail__tab--active {
	background: #0085e4;
	color: #ffffff;
}

.championship-detail__tabs-group--inner .championship-detail__tab {
	font-size: 18px;
	font-weight: 500;
}

.championship-detail__conferences {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.championship-detail__conferences-tables-container {
	overflow: hidden;
}

.championship-detail__conferences-tables {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
	overflow-x: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding-bottom: 40px;
}

.championship-detail__conference-wrapper {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.championship-detail__conference-title {
	font-size: 24px;
}

.championship-detail__conference-table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0px 24px 24px -8px #00306740;
}

.championship-detail__conference-header {
	background: transparent;
}

.championship-detail__detail-table-wrapper {
	padding: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	background: #f2f7f8;
	border-radius: 70px;
	width: fit-content;
	align-self: center;
}

.championship-detail__detail-table-link {
	background: #004890;
	box-shadow: -1px -1px 2px 1px #ffffff4d inset,
		0.5px 0.5px 0.5px 1px #ffffff4d inset, 0px 0px 0px 1px #ffffff80 inset;
	color: #a2d9f3;
	padding: 12px 32px;
	border-radius: 24px;
	font-size: 24px;
	cursor: pointer;
	text-align: center;
}

.championship-detail__conference-row {
	display: grid;
	grid-template-columns: 70px 1fr repeat(2, 80px);
	align-items: center;
	font-size: 14px;
	color: var(--color-primary-dark);
}

.championship-detail__conference-body {
	position: relative;
}

.championship-detail__conference-body
	.championship-detail__conference-row:nth-child(even) {
	background: #ebf5f9;
}

thead .championship-detail__conference-row {
	background: linear-gradient(88.88deg, #001c47 0.19%, #0064b5 100%);
	color: #ffffff;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 15px 0;
}

.championship-detail__conference-team--play-off {
	background: linear-gradient(
		90deg,
		rgba(0, 133, 228, 0.25) 0%,
		rgba(0, 133, 228, 0) 50%
	);
	border-left: 4px solid #0085e4;
}

.play-off {
	display: flex;
	position: absolute;
	top: -33px;
	left: 22px;
	background-color: #0085e480;
	box-shadow: 0px 4px 32px 0px #001c4780, 0px 4px 4px 0px #001c4766 inset,
		0px 0px 2px 0px #ffffff inset;
	color: #ffffff;
	font-size: 16px;
	line-height: 150%;
	padding: 10px;
	border-radius: 10px;
}

.play-off::after {
	content: "";
	position: absolute;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='7' viewBox='0 0 13 7' fill='none'%3E%3Cpath d='M6.5 6.5L0 0H13L6.5 6.5Z' fill='%230085E4' fill-opacity='0.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	bottom: -100%;
	left: calc(50% - (13px / 2));
	width: 100%;
	height: 100%;
}

.championship-detail__conference-cell {
	font-weight: 700;
	font-size: 24px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #003067;
}

.championship-detail__conference-header .championship-detail__conference-cell {
	color: #ffffff;
}

.championship-detail__conference-cell--team,
.championship-detail__conference-cell:has(
		.championship-detail__conference-team
	) {
	justify-self: flex-start;
}

.championship-detail__conference-team {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 6px 0 6px 10px;
}

picture:has(.championship-detail__conference-team-logo) {
	background-color: #ffffff;
	box-shadow: 0px 4px 8px -4px #0064b540;
	padding: 4px;
	border-radius: 8px;
}

.championship-detail__conference-team-logo {
	min-width: 40px;
	width: 40px;
	height: 40px;
	border-radius: 4px;
}

.championship-detail__conference-team-name {
	text-align: start;
}

.championship-detail__tournament-summary,
.championship-detail__top-largest,
.championship-detail__popular-scores {
	padding-top: 48px;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.tournament-summary__scroll-container,
.top-largest__scroll-container {
	overflow: hidden;
}

.tournament-summary__table-wrapper,
.top-largest__table-wrapper {
	overflow-x: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding-bottom: 40px;
}

.championship-detail__tournament-summary-table,
.championship-detail__top-largest-table,
.championship-detail__popular-scores-table {
	overflow: hidden;
	border-radius: 24px;
	width: 100%;
	box-shadow: 0px 24px 24px -8px #00306740;
}

.championship-detail__tournament-summary-body {
	display: grid;
	grid-template-columns: repeat(3, minmax(270px, 1fr));
}

.championship-detail__tournament-summary-body
	.championship-detail__tournament-summary-row--titles
	.championship-detail__tournament-summary-cell:nth-child(odd) {
	background: linear-gradient(88.88deg, #001c47 0.19%, #0064b5 100%);
}

.championship-detail__tournament-summary-row--titles
	.championship-detail__tournament-summary-cell:nth-child(even) {
	background: linear-gradient(88.88deg, #0045ad 0.19%, #0085e4 100%);
}

.championship-detail__tournament-summary-body
	.championship-detail__tournament-summary-cell:nth-child(odd) {
	background: #ebf5f9;
}

.championship-detail__tournament-summary-cell,
.championship-detail__top-largest-cell,
.championship-detail__popular-scores-cell {
	font-weight: 700;
	font-size: 24px;
	padding: 15px 0;
	text-align: start;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	color: #003067;
}

.championship-detail__tournament-summary-row:not(
		.championship-detail__tournament-summary-row--titles
	)
	.championship-detail__tournament-summary-cell,
.championship-detail__top-largest-row:not(
		.championship-detail__top-largest-row--titles
	)
	.championship-detail__top-largest-cell {
	justify-content: center;
	text-align: center;
}

.championship-detail__tournament-summary-row--titles
	.championship-detail__tournament-summary-cell,
.championship-detail__top-largest-row--titles
	.championship-detail__top-largest-cell {
	padding: 15px 0 15px 24px;
}

.championship-detail__tournament-summary-row,
.championship-detail__top-largest-row {
	display: grid;
	grid-template-rows: repeat(auto-fit, minmax(60px, 1fr));
}

.championship-detail__top-largest-body {
	display: grid;
	grid-template-columns: minmax(300px, 1fr) 120px minmax(300px, 1fr) 120px;
}

.championship-detail__top-largest-body
	.championship-detail__top-largest-row--titles
	.championship-detail__top-largest-cell:nth-child(odd) {
	background: linear-gradient(88.88deg, #001c47 0.19%, #0064b5 100%);
}

.championship-detail__top-largest-row--titles
	.championship-detail__top-largest-cell:nth-child(even) {
	background: linear-gradient(88.88deg, #0045ad 0.19%, #0085e4 100%);
}

.championship-detail__top-largest-body
	.championship-detail__top-largest-cell:nth-child(odd) {
	background: #ebf5f9;
}

.championship-detail__popular-scores-wrapper {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
	gap: 24px;
}

.championship-detail__popular-scores-body {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.championship-detail__popular-scores-body
	.championship-detail__popular-scores-cell:nth-child(odd) {
	background: #ebf5f9;
}

.championship-detail__popular-scores-cell {
	justify-content: center;
	text-align: center;
}

@media (max-width: 768px) {
	.championship-detail__wrapper {
		padding: 10px;
		border-radius: 32px;
	}

	.championship-detail__banner {
		padding: 12px;
		border-radius: 32px;
		height: 240px;
	}

	.championship-detail__banner-image::before,
	.championship-detail__banner-image::after {
		border-radius: 32px;
	}

	.championship-detail__title-wrapper {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 12px;
	}

	.championship-detail__banner-title {
		font-size: clamp(24px, 5vw, 32px);
		text-align: center;
	}

	.championship-detail__tabs-group {
		border-radius: 24px;
		gap: 6px;
	}

	.championship-detail__tab,
	.championship-detail__detail-table-link {
		font-size: 16px;
	}

	.championship-detail__tabs-group--inner .championship-detail__tab {
		font-size: 12px;
	}

	.championship-detail__conference-cell,
	.championship-detail__tournament-summary-cell,
	.championship-detail__top-largest-cell,
	.championship-detail__popular-scores-cell {
		font-size: 18px;
	}

	.championship-detail__popular-scores-wrapper {
		grid-template-columns: 1fr;
	}

	.championship-detail__tournament-summary-body {
		grid-template-columns: repeat(3, minmax(180px, 1fr));
	}

	.championship-detail__top-largest-body {
		grid-template-columns: minmax(200px, 1fr) 120px minmax(200px, 1fr) 120px;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/assets/css/calendar.css?17768664535638*/
.top-bg {
	position: fixed;
}

.calendar {
	padding-bottom: 20px;
}

.calendar__banner {
	margin: 0;
	height: 400px;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	border-radius: 72px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 24px;
	position: relative;
	overflow: hidden;
}

.calendar__banner-title {
	font-family: var(--font-heading);
	font-size: 48px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.1;
	filter: drop-shadow(0px 4px 16px #001c4733);
	background: linear-gradient(88.88deg, #ffffff 0.19%, #c7f7ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	z-index: 2;
}

.calendar__banner-img img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.calendar__banner-img::before {
	border-radius: 72px;
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0) 38.62%,
		rgba(0, 100, 181, 0.9) 100%,
		#0045adb2
	);
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.calendar__banner-img::after {
	border-radius: 72px;
	background: #0045adb2;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	mix-blend-mode: soft-light;
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.calendar__schedule {
	margin-bottom: 80px;
}

.calendar__schedule.detail {
	margin: 0;
}

.calendar__schedule-list {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 40px;
}

.calendar__schedule.detail .calendar__schedule-list {
	padding: 0;
}

.calendar__schedule-title {
	padding: 7px 0;
}

.calendar__schedule-item {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 40px;
	align-items: center;
	justify-content: space-between;
	flex-grow: 1;
	padding: 12px;
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0.5) 0%,
		rgba(0, 100, 181, 0.8) 100%
	);
	border-radius: 24px;
	box-shadow: 0px 32px 32px -16px #001c4740, 0px 0px 0px 2px #ffffff80 inset;
}

.calendar__schedule.detail .calendar__schedule-item {
	grid-template-columns: 1fr 180px 1fr;
}

.calendar__schedule-team {
	display: flex;
	gap: 24px;
	align-items: center;
}

.calendar__schedule-team--right {
	flex-direction: row-reverse;
}

picture:has(.calendar__schedule-team-img) {
	padding: 16px;
	border-radius: 16px;
	/*background: #ffffff;*/
}

.calendar__schedule-team-img {
	width: 96px;
	min-width: 96px;
	height: 96px;
}

.calendar__schedule-team--right .team__content {
	text-align: end;
}

.team__title {
	font-size: clamp(20px, 4vw, 24px);
	hyphens: auto;
}

.team__city {
	font-size: 20px;
	color: #a2d9f3;
}

.calendar__schedule-result {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 12px;
	align-items: center;
}

.calendar__schedule-date {
	font-size: 20px;
	text-align: center;
}

.calendar__schedule-score {
	font-size: 60px;
	position: relative;
}

.calendar__schedule-score span {
	position: absolute;
	top: 0;
	left: calc(100% + 10px);
	font-weight: 600;
	font-size: 24px;
	line-height: 100%;
	text-transform: uppercase;
	color: #a2d9f3;
}

.calendar__schedule-place {
	font-size: 20px;
	font-weight: 600;
}

.calendar__description-content {
	display: flex;
	flex-direction: column;
	gap: 24px;
	background: var(--color-bg-white);
	box-shadow: 0px 32px 64px -16px #001c4780;
	padding: 20px 30px;
	border-radius: 48px;
}
.calendar__description-button-wrapper {
	display: flex;
	justify-content: center;
}

@media (max-width: 1100px) {
	.calendar__schedule-score {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 5px;
		font-size: 48px;
	}

	.team__title {
		font-size: 20px;
	}

	.calendar__schedule-score span {
		position: relative;
		left: 0;
	}

	picture:has(.calendar__schedule-team-img) {
		padding: 8px;
	}
	.calendar__schedule-team-img {
		width: 70px;
		min-width: 70px;
		height: 70px;
	}
}

@media (max-width: 991px) {
	.calendar {
		padding-bottom: 20px;
	}
	.calendar__banner {
		padding: 24px 12px;
		border-radius: var(--radius-xl);
		margin: 0 10px;
	}
	.calendar__banner-img::before,
	.calendar__banner-img::after {
		border-radius: var(--radius-xl);
	}
	.calendar__banner-title {
		font-size: clamp(20px, 5vw, 32px);
	}

	.calendar__schedule {
		gap: 0;
		margin-bottom: 20px;
	}

	.calendar__schedule-item,
	.calendar__schedule.detail .calendar__schedule-item {
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-rows: 1fr 1fr;
		gap: 10px;
		position: relative;
		padding-bottom: 60px;
	}

	.calendar__schedule-title {
		text-align: center;
		padding: 0;
	}

	.calendar__schedule-list {
		padding: 20px 10px;
	}

	.calendar__schedule-team {
		gap: 12px;
		grid-column: 1 / 3;
	}

	.calendar__schedule-result {
		grid-row: 1 / 3;
		grid-column: 3 / 3;
	}

	.calendar__schedule-score span {
		font-size: 12px;
	}

	.calendar__schedule-team--right {
		flex-direction: row;
		grid-row: 2 / 3;
	}

	.calendar__schedule-team--right .team__content {
		text-align: start;
	}

	.calendar__schedule-place {
		position: absolute;
		bottom: 12px;
		left: 50%;
		transform: translateX(-50%);
	}
}

@media (max-width: 768px) {
	.calendar__schedule-team {
		gap: 5px;
	}
	picture:has(.calendar__schedule-team-img) {
		padding: 4px;
		border-radius: 8px;
	}
	.calendar__schedule-team-img {
		min-width: 40px;
		width: 40px;
		height: 40px;
	}

	.team__title {
		font-size: 16px;
	}

	.team__city,
	.calendar__schedule-date,
	.calendar__schedule-place {
		font-size: 14px;
	}

	.calendar__schedule-score {
		font-size: 32px;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/assets/css/about.css?17816783214400*/
.about {
	padding-bottom: 40px;
}
.about__wrapper {
	display: flex;
	flex-direction: column;
	gap: 24px;
	background: var(--color-bg-white);
	box-shadow: 0px 32px 64px -16px #001c4780;
	padding: 20px;
	border-radius: 48px;
}

.about__banner {
	margin: 0;
	height: 400px;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	border-radius: var(--radius-lg);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 24px;
	position: relative;
	overflow: hidden;
}

.about__banner-img img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.about__banner-img::before {
	border-radius: 24px;
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0) 38.62%,
		rgba(0, 100, 181, 0.9) 100%,
		#0045adb2
	);
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.about__banner-img::after {
	border-radius: 24px;
	background: #0045adb2;
	mix-blend-mode: soft-light;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.about__title-wrapper {
	display: flex;
	justify-content: space-between;
	gap: 24px;
	align-items: flex-end;
	flex-wrap: wrap;
}

.about__banner-title {
	font-family: var(--font-heading);
	font-size: 48px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.1;
	filter: drop-shadow(0px 4px 16px #001c4733);
	background: linear-gradient(88.88deg, #ffffff 0.19%, #c7f7ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	z-index: 2;
}

.about__content {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.about__info,
.about__info-text {
	display: flex;
	flex-direction: column;
	gap: 24px;
	line-height: 150%;
	color: #001c47;
}

.about__info-title {
	font-size: 24px;
}

.about__management {
	margin: 40px 0 18px;
	overflow: hidden;
}

.about__management-wrapper {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding-bottom: 22px;
}

.about__management-main {
	display: grid;
	grid-template-columns: 1fr 2fr;

	gap: 24px;
	padding: 37px 0;
}

.about__management-main span {
	line-height: 150%;
}

.about__management-main .about__management-value {
	font-weight: 500;
	font-size: 16px;
	line-height: 150%;
	width: 80%;
}

.about__management-list {
	display: flex;
	gap: 24px;
}

.about__management-list:has(.about__management-group) {
	flex-direction: column;
}

.about__management-group {
	display: flex;
	flex-direction: row;
	gap: 24px;
}

.about__management-img {
	width: 100%;
    aspect-ratio: 1 / 1;
    height: 100%;
    object-fit: cover;
    box-shadow: 0px 0px 0px 2px #ffffff inset, 0px 24px 32px -16px #0064b526;
    border-radius: 24px;
    object-position: 50% 30%;
}

.about__management-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.about__management-item {
	display: flex;
	flex-direction: column;
	gap: 24px;
	width: calc(100% / 3);
}

.about__management-item:last-child {
	margin: 0 !important;
}

.about__management-list .about__management-name {
	font-weight: 500;
	text-transform: none;
}

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

	.about__banner {
		padding: 12px;
	}

	.about__title-wrapper {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 12px;
	}

	.about__banner-title {
		font-size: clamp(20px, 5vw, 32px);
	}

	.about__info-title {
		font-size: clamp(16px, 4vw, 24px);
	}

	.about__info-text {
		font-size: clamp(14px, 3vw, 16px);
	}

	.about__management-list {
		gap: 0;
	}

	.about__management-list:has(.about__management-group),
	.about__management-group {
		gap: 24px;
		flex-direction: column;
	}

	.about__management-item {
		gap: 24px;
	}

	.about__management-main {
		grid-template-columns: 1fr;
		padding: 0;
	}

	.about__management-main .about__management-value {
		width: 100%;
		text-align: center;
		font-size: clamp(16px, 3vw, 24px);
	}

	.about__management-main span {
		text-align: center;
		font-size: clamp(12px, 2vw, 16px);
	}

	.about__management-name {
		text-align: center;
	}

	.about__management-item {
		min-width: calc(100% - 24px);
	}

	.about__management-info {
		align-items: center;
	}

	.about__management-img {
		aspect-ratio: 350 / 253;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/assets/css/teams.css?17902503354081*/
.teams {
	padding-bottom: 40px;
}

.teams__wrapper {
	display: flex;
	flex-direction: column;
	gap: 20px;
	background: var(--color-bg-white);
	box-shadow: 0px 32px 64px -16px #001c4780;
	padding: 20px 20px 40px;
	border-radius: 48px;
}

.teams__banner {
	margin: 0;
	height: 400px;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	border-radius: var(--radius-lg);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 24px;
	position: relative;
	overflow: hidden;
}

.teams__banner-img img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.teams__banner-img::before {
	border-radius: 24px;
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0) 38.62%,
		rgba(0, 100, 181, 0.9) 100%,
		#0045adb2
	);
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.teams__banner-img::after {
	border-radius: 24px;
	background: #0045adb2;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	mix-blend-mode: soft-light;
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.teams__banner-title {
	font-family: var(--font-heading);
	font-size: 48px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.1;
	filter: drop-shadow(0px 4px 16px #001c4733);
	background: linear-gradient(88.88deg, #ffffff 0.19%, #c7f7ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	z-index: 2;
}

.teams__list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}

.teams__item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px;
	box-shadow: 0px 12px 24px -8px #00306740;
	border-radius: 24px;
	position: relative;
	overflow: hidden;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.9) 0%,
		rgba(255, 255, 255, 0.8) 100%
	);
}

picture:has(.teams__item-img) {
	background-color: #ffffff;
	border-radius: 24px;
	padding: 12px;
	box-shadow: 0px 12px 24px -8px #00306780;
}

.teams__item-img {
	width: 116px;
	min-width: 116px;
	height: 116px;
	object-fit: contain;
}

picture:has(.teams__item-bg) {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: -1;
	filter: blur(8px);
}

.teams__item-bg {
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
	opacity: 0.4;
}

.teams__item-content {
	display: grid;
	grid-template-columns: auto auto;
	flex-grow: 1;
	gap: 12px;
	height: 100%;
}

.teams__item-title.heading-xl {
	background: linear-gradient(88.88deg, #001c47 0.19%, #0064b5 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	grid-column: 1 / 3;
}

.teams__item-city {
	font-size: 24px;
	font-weight: 500;
	align-self: baseline;
}

.teams__item-link.btn {
	position: relative;
	padding: 10px 24px;
	box-shadow: 0px 16px 24px -8px #0064b540;
	text-shadow: 0px 2px 4px #001c471a;
	min-height: 48px;
	font-size: 16px;
	width: fit-content;
	align-self: flex-end;
	justify-self: flex-end;
}

@media (max-width: 1100px) {
	.teams__list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.teams__wrapper {
		padding: 10px 10px 30px;
		border-radius: 32px;
	}

	.teams__banner {
		padding: 12px;
	}

	.teams__banner-title {
		font-size: clamp(20px, 5vw, 32px);
	}
}

@media (max-width: 600px) {
	.teams__item {
		padding: 8px;
		border-radius: 12px;
	}

	picture:has(.teams__item-img) {
		padding: 6px;
		border-radius: 12px;
	}

	.teams__item-img {
		width: 88px;
		min-width: 88px;
		height: 88px;
	}

	.teams__item-content {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.teams__item-title.heading-xl {
		grid-column: auto;
		font-size: 16px;
		hyphens: auto;
	}

	.teams__item-link.btn {
		justify-self: flex-start;
		font-size: 14px;
	}

	.teams__item-city {
		font-size: 16px;
	}
}

@media (max-width: 390px) {
	.teams__item-img {
		width: 66px;
		min-width: 66px;
		height: 66px;
	}
	.teams__item-link.btn {
		padding: 6px 15px;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/assets/css/main.css?179025033519335*/
/* ============================================
   СТИЛИ ДЛЯ INDEX.HTML
   ============================================ */

/* ============================================
   HERO
   ============================================ */
.banner {
	padding: 40px 0;
	margin: 0 20px;
}

.banner__swiper {
	position: relative;
	overflow: hidden;
}

.banner__swiper .swiper-wrapper {
	position: relative;
	display: flex;
}

.banner__swiper .swiper-slide {
	min-width: 100%;
}

.banner__wrapper {
	height: 600px;
	border-radius: var(--radius-2xl);
	display: flex;
	align-items: flex-end;
	padding: 24px;
	position: relative;
	overflow: hidden;
	width: 100%;
}

.banner__img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.banner__wrapper picture {
	display: block;
}

.banner__wrapper picture::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0) 43.75%,
		rgba(0, 100, 181, 0.9) 100%
	);
	box-shadow: var(--shadow-xl), inset 0px 0px 0px 2px rgba(255, 255, 255, 0.5);
	border-radius: var(--radius-2xl);
}

.banner__content {
	width: 100%;
	display: flex;
	align-items: flex-end;
	gap: 45px;
}

.banner__title-wrapper {
	display: flex;
	flex-direction: column;
	width: 60%;
}

.banner__subtitle {
	font-family: var(--font-heading);
	font-size: 24px;
	font-weight: 500;
	filter: drop-shadow(0 0 4px #b3dfff80) drop-shadow(0 0 8px #b3dfff80)
		drop-shadow(0 0 16px #b3dfff80);
	background: linear-gradient(88.88deg, #001c47 0.19%, #0064b5 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	text-transform: uppercase;
}

.banner__title {
	font-family: var(--font-heading);
	font-size: 48px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.1;
	max-width: 800px;
	filter: drop-shadow(0px 4px 16px #001c4733);
	background: linear-gradient(88.88deg, #ffffff 0.19%, #c7f7ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.banner__dots {
	display: flex;
	align-self: flex-end;
	gap: 4px;
}

.banner__dot {
	display: flex;
	position: relative;
	width: 24px;
	height: 24px;
	--banner-progress-angle: 0deg;
	border-radius: 50%;
	background: #ffffff1a;
	cursor: pointer;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.banner__dot::after {
	content: "";
	position: absolute;
	inset: 4px;
	border-radius: 50%;
	background: conic-gradient(
		#ffffff var(--banner-progress-angle, 0deg),
		#ffffff00 0deg
	);
	box-shadow: 0px 0px 32px 0px #1071ae, 0px 0px 8px 0px #1071ae,
		0px 0px 2px 0px #1071ae;
	background-blend-mode: screen;
	-webkit-mask: radial-gradient(
		farthest-side,
		transparent calc(100% - 4px),
		#000 calc(100% - 1px)
	);
	mask: radial-gradient(
		farthest-side,
		transparent calc(100% - 4px),
		#000 calc(100% - 1px)
	);
}

.banner__dot.is-animating::after {
	animation: bannerDotProgress var(--banner-bullet-duration, 3000ms) linear
		forwards;
}

@property --banner-progress-angle {
	syntax: "<angle>";
	inherits: false;
	initial-value: 0deg;
}

@keyframes bannerDotProgress {
	from {
		--banner-progress-angle: 0deg;
	}
	to {
		--banner-progress-angle: 360deg;
	}
}

.banner__controls {
	display: flex;
	align-items: center;
	gap: var(--spacing-md);
	position: absolute;
	bottom: 24px;
	right: 24px;
}

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

.banner__btn {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #0064b540;
	box-shadow: 0px 16px 24px -8px #001c4766;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.3s ease;
}

.banner__btn-prev svg {
	position: relative;
	right: 3px;
}

.banner__btn-next svg {
	position: relative;
	left: 3px;
}

/* ============================================
   MATCHES
   ============================================ */
.matches {
	overflow: hidden;
}

.matches__grid-swiper {
	margin-top: var(--spacing-lg);
}

.matches__grid {
	display: flex;
	flex-direction: row;
}

.matches__card {
	display: flex;
	border-radius: var(--radius-lg);
	flex-direction: column;
	/* justify-content: space-between; */
	gap: var(--spacing-sm);
	min-height: 230px;
	width: 280px;
	min-width: 280px;
	box-shadow: 0px 32px 32px -16px #001c4740, 0px 0px 0px 2px #ffffff80 inset;
}

.matches__card--glass {
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0.5) 0%,
		rgba(0, 100, 181, 0.8) 100%
	);
	backdrop-filter: blur(10px);
}

.matches__card--light {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.95) 0%,
		rgba(255, 255, 255, 0.85) 100%
	);
}

.matches__heading--bottom {
	display: flex;
	flex: 1;
}

.matches__heading--bottom .matches__heading {
	width: 100%;
}

.matches__heading {
	background: #001c4740;
	border-radius: var(--radius-lg);
	text-align: center;
	padding: 7px;
	margin: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.matches__card--light .matches__heading {
	background: linear-gradient(
		180deg,
		#ffffff 0%,
		rgba(255, 255, 255, 0.8) 100%
	);
}

.matches__desc {
	padding: 0 12px 10px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	justify-content: space-between;
}

.matches__teams {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex: 1;
}

.matches__teams-info {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-sm);
}

.matches__team {
	display: grid;
	grid-template-columns: auto auto 1fr;
	align-items: center;
	gap: 5px;
}

.matches__team picture {
	background-color: #ffffff;
	padding: 4px;
	border-radius: 8px;
}

.matches__team-logo {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	object-fit: cover;
}

.matches__team-name {
	display: flex;
	flex-direction: column;
}

.matches__team-name span:first-child {
	font-weight: 800;
}

.matches__card--light .text-md {
	color: #003067;
}

.matches__scores {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

.matches__score {
	font-family: var(--font-body);
	font-size: 32px;
	font-weight: 800;
	text-align: center;
}

.matches__time {
	font-family: var(--font-body);
	font-size: 20px;
	font-weight: 800;
	text-transform: uppercase;
}

.matches__card--light .matches__time {
	color: #003067;
}

.matches__date {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
}

.matches__date-number {
	font-family: var(--font-heading);
	font-size: 40px;
	font-weight: 800;
	line-height: 1;
}

.matches__card--light .matches__date-number {
	color: #003067;
}

.matches__date-info {
	display: flex;
	flex-direction: column;
	gap: 1px;
}

.matches__date-month {
	font-family: var(--font-heading);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-accent);
}

.matches__card--light .matches__date-month {
	color: #83c2ee;
}

.matches__date-day {
	font-family: var(--font-heading);
	font-size: 17px;
	font-weight: 800;
	text-transform: uppercase;
}

.matches__card--light .matches__date-day {
	color: var(--color-primary);
}

.button__actions-mobile {
	display: none;
	margin-top: var(--spacing-lg);
	justify-content: center;
}

.standings.main__table .standings__table-row {
	padding: 12px 0;
}

/* ============================================
   DIRECTIONS
   ============================================ */
.directions__grid-swiper {
	margin-top: var(--spacing-lg);
	position: relative;
}

.wave-decoration:has(.directions__grid-swiper) {
	overflow: hidden;
}

.directions__grid {
	display: flex;
}

.directions__card {
	background-color: #f2f7f8;
	border-radius: 24px 24px 48px 48px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 20px;
	min-width: 437px;
	box-shadow: 0px 0px 16px 0px #00306740;
}

.directions__card picture {
	position: relative;
}

.directions__card h3.heading-lg.gradient-text {
  hyphens: auto;
}

.directions__image {
	height: 180px;
	box-shadow: 0px 0px 0px 1px #ffffff40 inset;
	border-radius: var(--radius-md);
	width: 100%;
	object-fit: cover;
	object-position: top;
}

.directions__logo {
	position: absolute;
	height: 100%;
	width: 157px;
	right: -1px;
	object-fit: scale-down;
	top: 0;
}

.directions__card p {
	line-height: 1.25;
	flex: 1;
	font-weight: 500;
}

.directions__card-link {
	font-size: 18px;
	text-transform: uppercase;
	font-weight: 800;
	color: #ffffff;
	align-self: center;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 64px;
	background: #0064b5e5;
	padding: 18px 24px;
	text-align: center;
	border-radius: var(--radius-xl);
	box-shadow: 0px 16px 24px -8px #0064b540;
	width: 100%;
}

.section {
	padding: 40px 0;
}

.section__pagination {
	display: none;
	align-items: center;
	justify-content: center;
	gap: var(--spacing-xs);
	margin: var(--spacing-lg) 0 8px;
}

.section__pagination .swiper-pagination-bullet {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background-color: #0045ad40;
	cursor: pointer;
}

.section__pagination .swiper-pagination-bullet-active {
	background-color: #0045adcc;
}

/* ============================================
   SLAVUTICH
   ============================================ */
.slavutich {
	padding: 40px 0;
}

.slavutich__banner {
	height: 520px;
	background: url("/local/templates/fhso_2025/assets/css/../img/bg-slavutich.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center 35%;
	border-radius: var(--radius-2xl);
	box-shadow: 0px 48px 96px -32px #001c4780, 0px 0px 0px 2px #ffffff80 inset;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	padding: 40px;
	position: relative;
}

.slavutich__label {
	font-family: var(--font-body);
	font-size: 18px;
	font-weight: 800;
	line-height: 1.15;
	text-transform: uppercase;
	background-color: #001c4733;
	padding: 10px 20px;
	border-radius: var(--radius-lg);
}

/* ============================================
   EVENTS
   ============================================ */
.events .button__actions-mobile,
.about .button__actions-mobile {
	margin-top: -18px;
}
.events__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--spacing-md);
	margin-top: 22px;
}

.events__card {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-sm);
	/* min-height: 388px; */
}

.events__img {
	position: relative;
	height: 240px;
	max-height: 240px;
	min-height: 240px;
	border-radius: var(--radius-md);
}

.events__img-item {
	position: relative;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	object-fit: cover;
	box-shadow: 0px 32px 48px -16px #1071ae1a, 0px 0px 0px 1px #ffffff40 inset;
}

.events__img::after {
	position: absolute;
	content: "";
	border-radius: inherit;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0) 25%,
		rgba(0, 100, 181, 0.25) 100%
	);
	background-blend-mode: soft-light;
}

.events__date {
	position: absolute;
	bottom: 10px;
	left: 10px;
	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 700;
	background-color: #0064b5b2;
	border-radius: var(--radius-md);
	padding: 5px;
	z-index: 1;
}

.events__excerpt {
	display: flex;
	align-items: flex-end;
	flex: 1;
}

/* ============================================
   ABOUT
   ============================================ */
.about__content {
	display: grid;
	grid-template-columns: 440px 1fr;
	gap: var(--spacing-xl);
	align-items: start;
	margin-top: 22px;
}

.about__image {
	position: relative;
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.25),
		var(--shadow-card);
	aspect-ratio: 440 / 264;
}

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

.about__image::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(/local/templates/fhso_2025/assets/img/bg-logo.png);
	background-repeat: no-repeat;
	background-size: cover;
	mix-blend-mode: soft-light;
}

.about__image::after {
	position: absolute;
	content: "";
	top: 10%;
	left: 0;
	width: 100%;
	height: 80%;
	background-image: url(/local/templates/fhso_2025/assets/img/logo-header.svg);
	background-repeat: no-repeat;
	background-position: center;
	z-index: 3;
}

.about__text {
	display: flex;
	flex-direction: column;
}

.about__text p {
	line-height: 1.5;
	font-weight: 500;
}

.about__text p:first-child {
	margin-bottom: 30px;
}

/* ============================================
   PARTNERS
   ============================================ */
.partners .button__actions-mobile {
	margin-top: var(--radius-md);
}
.partners__btn {
	padding: 10px 24px;
	font-weight: 800;
	font-size: 18px;
	line-height: 100%;
	text-transform: uppercase;
	border-radius: var(--radius-xl);
	color: #ffffff;
	background: #e1031ee5;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0px 16px 24px -8px #001c4766;
	height: 64px;
	display: none;
}

.partners__logos-wrapper {
	overflow: hidden;
	position: relative;
	margin-top: var(--spacing-lg);
}

.partners__logos {
	display: flex;
	gap: var(--spacing-xl);
	padding: var(--spacing-2xl);
	animation: logos-carousel var(--logos-duration, 0s) infinite linear;
	z-index: 3;
	position: relative;
	width: max-content;
	will-change: transform;
	--logos-shift: 50%;
}

@keyframes logos-carousel {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(calc(-1 * var(--logos-shift, 50%)));
	}
}

.partners__logo {
	min-width: 260px;
	flex: 0 0 260px;
	height: 180px;
	/* background: #001c4766; */
	/* box-shadow: 0px 24px 48px -16px #001c4740; */
	border-radius: var(--radius-lg);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-heading);
	font-size: 48px;
	font-weight: 600;
	color: var(--color-bg-white);
	z-index: 12;
}

/* ============================================
   CONTACT
   ============================================ */
.contact {
	position: relative;
}

.contact__decoration {
	position: absolute;
	right: -80px;
	/* bottom: 165px; */
	max-width: 516px;
	width: 50%;
	height: auto;
	pointer-events: none;
	top: -420px;
}

.contact__form {
	margin-top: 8px;
	padding-top: var(--spacing-lg);
}

.contact__form-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--spacing-md);
	margin-bottom: var(--spacing-lg);
}

.contact__form-footer {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: var(--spacing-xl);
}

.contact__group {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-sm);
}

.contact__label {
	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--color-text-blue);
}

.contact__input {
	padding: 20px;
	border-radius: var(--radius-md);
	border: none;
	background-color: #deebee;
	font-family: var(--font-body);
	font-size: 16px;
	color: var(--color-text-blue);
}

.contact__input:focus {
	outline: 2px solid var(--color-accent);
}

.contact__checkbox-wrapper {
	display: flex;
	align-items: center;
	gap: var(--spacing-sm);
}

.contact__checkbox-wrapper span {
	font-weight: 500;
	color: #003067;
	line-height: 100%;
	text-transform: uppercase;
}

.contact__checkbox-wrapper a {
	display: block;
	text-decoration: underline;
	line-height: 100%;
}

.contact__checkbox {
	width: 24px;
	height: 24px;
	border: 1px solid var(--color-primary);
	border-radius: var(--radius-sm);
	cursor: pointer;
}

/* ============================================
   АДАПТИВНОСТЬ
   ============================================ */
@media (max-width: 1200px) {
	.banner__content {
		display: grid;
		gap: 20px;
		grid-template-columns: 1fr;
	}

	.banner__title-wrapper {
		grid-column: 1 / 3;
	}

	.banner__dots {
		justify-content: flex-end;
	}

	.about__content {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 1024px) {
	.events__grid {
		grid-template-columns: repeat(2, 1fr);
	}

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

	.contact__decoration {
		bottom: 300px;
	}

	.contact__group[data-message] {
		grid-column: 1 / 3;
	}
}

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

	.banner {
		margin: 0 10px;
		padding: 10px 0 0;
	}

	.banner__wrapper {
		height: 440px;
		padding: 16px;
		/* border-radius: var(--radius-lg); */
	}
	.partners__logos img {
		max-width: 70%;
		display: block;
	}
	.banner__wrapper picture::after {
		background: linear-gradient(0deg, #ffffff, #ffffff),
			linear-gradient(
				180deg,
				rgba(0, 100, 181, 0.9) 0%,
				rgba(0, 100, 181, 0) 33.52%
			),
			linear-gradient(
				0deg,
				rgba(0, 100, 181, 0.8) 0%,
				rgba(0, 100, 181, 0) 44.89%
			);
		background-blend-mode: multiply;
		mix-blend-mode: multiply;
		/* border-radius: var(--radius-lg); */
	}

	.banner__content {
		height: 100%;
		grid-template-rows: 1fr auto auto;
	}

	.banner__title-wrapper {
		align-self: flex-start;
		align-items: center;
		gap: clamp(5px, 2vw, 15px);
		grid-column: auto;
		width: 100%;
	}

	.banner__title {
		text-align: center;
		font-size: clamp(20px, 5vw, 32px);
	}

	.banner__subtitle {
		font-size: clamp(12px, 3vw, 18px);
	}

	.banner__controls {
		justify-content: center;
		flex-direction: column;
		align-items: center;
		right: 50%;
		transform: translateX(50%);
		bottom: 10px;
	}

	.banner__dots {
		justify-content: center;
		align-self: center;
		order: 2;
	}

	.button__actions-mobile {
		display: flex;
	}

	.button__actions-mobile .glass__container {
		justify-content: center;
	}

	.directions__grid-swiper {
		margin: 0;
	}

	.directions__card {
		min-width: 300px;
		padding: 10px;
		gap: 10px;
	}

	.directions__logo {
		width: 121px;
		height: 122px;
		top: 13px;
		right: 11px;
	}

	.section__pagination {
		margin: 10px 0 0;
		display: flex;
	}

	.section__pagination .swiper-pagination-bullet {
		width: 16px;
		height: 16px;
	}

	.directions__btn-prev,
	.directions__btn-next {
		display: none;
	}

	.about.section {
		padding-bottom: 40px;
	}

	.about__image {
		aspect-ratio: 350 / 264;
	}

	.about__image::after {
		top: 8%;
		height: 84%;
	}

	.slavutich__banner {
		height: 280px;
		padding: 12px;
		border-radius: var(--radius-lg);
	}

	.slavutich__label {
		font-size: 14px;
		padding: 6px;
	}

	.wave-decoration:has(.events__grid-swiper) {
		overflow: hidden;
	}

	.events__grid {
		display: flex;
		margin: 0;
		gap: 0;
	}

	.events__card {
		min-width: 300px;
	}

	.events__pagination {
		margin-bottom: 22px;
	}

	.about__content {
		margin: 0;
		gap: 10px;
	}

	.partners__btn:not(.button__actions-mobile .partners__btn) {
		display: none;
	}

	.partners__logos-wrapper {
		margin-top: var(--radius-md);
	}

	.partners__logos {
		padding: var(--spacing-lg);
	}

	.partners__logo {
		min-width: 220px;
		flex: 0 0 220px;
		height: 120px;
	}

	.contact__decoration {
		display: none;
	}

	.contact__form {
		margin: 0;
		padding-top: 0;
	}

	.contact__form-row {
		grid-template-columns: 1fr;
		margin-bottom: 20px;
	}

	.contact__group[data-message] {
		grid-column: auto;
	}

	.contact__form-footer {
		flex-direction: column-reverse;
		gap: 10px;
		margin-bottom: 20px;
	}
}

@media (max-width: 550px) {
	.contact__label {
		font-size: 14px;
	}

	.banner__wrapper {
		padding: 16px 8px;
	}

	.banner__controls,
	.banner__buttons {
		gap: 10px;
	}
}

@media (max-width: 390px) {
	.banner__btn {
		display: none;
	}
}

/* End */


/* Start:/local/templates/fhso_2025/components/bitrix/news.detail/simple_banner/style.css?1790250335155*/
div.news-detail
{
	word-wrap: break-word;
}
div.news-detail img.detail_picture
{
	float:left;
	margin:0 8px 6px 1px;
}
.news-date-time
{
	color:#486DAA;
}

/* End */


/* Start:/local/templates/fhso_2025/components/bitrix/news.list/players/style.css?17739306833077*/
    th.sorted-asc::after {
        content: ' ↑';
        font-size: 0.8em;
        color: #007bff;
    }

    th.sorted-desc::after {
        content: ' ↓';
        font-size: 0.8em;
        color: #007bff;
    }

    /* Ограничение высоты контейнера таблицы */
    .team-composition__table-wrapper {
        max-height: 850px;
        overflow-y: auto;
        position: relative;
        scrollbar-width: thin; /* Для Firefox */
        scrollbar-color: rgba(0,0,0,0.3) rgba(0,0,0,0.1); /* Для Firefox */
    }

    /* Стили для нативного скроллбара в WebKit браузерах */
    .team-composition__table-wrapper::-webkit-scrollbar {
        width: 8px;
    }

    .team-composition__table-wrapper::-webkit-scrollbar-track {
        background: rgba(0,0,0,0.1);
        border-radius: 4px;
    }

    .team-composition__table-wrapper::-webkit-scrollbar-thumb {
        background: rgba(0,0,0,0.3);
        border-radius: 4px;
        transition: background 0.2s ease;
    }

    .team-composition__table-wrapper::-webkit-scrollbar-thumb:hover {
        background: rgba(0,0,0,0.5);
    }

    /* Стили для кастомного скроллбара */
    .custom-scrollbar {
         
    }

    .team-composition__scroll-container {
        position: relative;
    }

    /* Скроллбар появляется при прокрутке или наведении */
    .team-composition__scroll-container.is-scrolling .custom-scrollbar,
    .team-composition__scroll-container:hover .custom-scrollbar {
        opacity: 1;
    }

    .scroll-thumb {
        width: 100%;
        border-radius: 4px;
        cursor: pointer;
        background: rgba(0,0,0,0.3);
        transition: background 0.2s ease;
        pointer-events: auto; /* Возвращаем возможность взаимодействия */
    }

    .scroll-thumb:hover {
        background: rgba(0,0,0,0.5) !important;
    }
    .championship-detail__tabs-group--outer {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    width:100%;
}
.championship-detail__toggle-wrapper {
    margin-left: auto;
}
.championship-detail__toggle-btn {
    background: #004890;
    color: #a2d9f3;
    padding: 12px 32px;
    border-radius: 24px;
    font-size: 20px;
    cursor: pointer;
    text-align: center;
    border: none;
    transition: all 0.3s ease;
}
@media (max-width: 768px) {
    .championship-detail__tabs-group--outer {
        flex-direction: column;
        align-items: stretch;
    }
    .championship-detail__toggle-wrapper {
        margin-left: 0;
    }
    .championship-detail__toggle-btn {
        background: #004890;
        color: #a2d9f3;
        padding: 12px 32px;
        border-radius: 24px;
        font-size: 20px;
        cursor: pointer;
        text-align: center;
        border: none;
        transition: all 0.3s ease;
        width: 100%;
    }
    .team-composition__scroll-container {
        position: relative;
        min-height: 235px;
    }
}
/* End */


/* Start:/local/templates/fhso_2025/assets/css/team_detail.css?17816804116333*/
.team-detail {
	padding-bottom: 40px;
}

.team-detail__wrapper {
	display: flex;
	flex-direction: column;
	gap: 20px;
	background: var(--color-bg-white);
	box-shadow: 0px 32px 64px -16px #001c4780;
	padding: 20px;
	border-radius: 48px;
	overflow: hidden;
}

.team-detail__banner {
	margin: 0;
	height: 400px;
	box-shadow: 0px 32px 64px -24px #0045ad40, 0px 0px 0px 2px #ffffff80 inset,
		0px 0px 0px 1px #001c4733;
	border-radius: var(--radius-lg);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 24px;
	position: relative;
	overflow: hidden;
}

.team-detail__banner-image img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.team-detail__banner-image::before {
	border-radius: 24px;
	background: linear-gradient(
		180deg,
		rgba(0, 100, 181, 0) 38.62%,
		rgba(0, 100, 181, 0.9) 100%,
		#0045adb2
	);
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.team-detail__banner-image::after {
	border-radius: 24px;
	background: #0045adb2;
	mix-blend-mode: soft-light;
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.team-detail__banner-title {
	font-family: var(--font-heading);
	font-size: 48px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.1;
	filter: drop-shadow(0px 4px 16px #001c4733);
	background: linear-gradient(88.88deg, #ffffff 0.19%, #c7f7ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	z-index: 2;
}

.team-detail__info {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.team-detail__text {
	font-size: 24px;
}

.team-detail__contacts > * {
	line-height: 150%;
}

.team-composition__wrapper.wave-decoration {
	overflow: hidden;
	padding: 24px 20px 54px;
}

.team-composition__captain {
	display: grid;
	grid-template-columns: 1fr 2fr;
	align-items: center;
	gap: 24px;
}

.team-composition__captain-img {
	height: 233px;
	object-fit: cover;
	width: 100%;
	box-shadow: 0px 0px 0px 2px #ffffff inset, 0px 24px 32px -16px #0064b526;
	background: linear-gradient(180deg, #cbebfa 0%, #b1dbef 100%);
	border-radius: 24px;
}

.team-composition__captain-info {
	display: flex;
	flex-direction: column;
	grid-gap: 4px;
}

.team-composition__title {
	font-size: 24px;
	padding: 24px 0 20px;
}

.team-composition__scroll-container {
	overflow: hidden;
}

.team-composition__table-wrapper {
	overflow-x: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding-bottom: 20px;
}
/* Добавил с главной */
.team-composition__table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border-radius: 24px;
	overflow: hidden;
    /* box-shadow: 0px 24px 24px -8px #00306740;
    background: linear-gradient(180deg, #0c62b0 0%, #004b96 100%); */
	margin-top: 24px;
	/* margin-bottom: 24px; */
}

.team-composition__table-header .team-composition__row,
.team-composition__table-header .team-composition__row_general {
	background: linear-gradient(88.88deg, #001c47 0.19%, #0064b5 100%);
	color: #ffffff;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 15px 10px;
}

.team-composition__row {
	display: grid;
	grid-template-columns: 70px 130px repeat(2, minmax(420px, 1fr)) 160px;
	padding: 4px 0;
}

.team-composition__row-players {
	grid-template-columns: 90px 240px 120px 205px 175px 150px 30px 100px 20px;
    gap: 21px;
    padding: 5px 10px;
}

.team-composition__row-players .team-composition__cell,
.team-composition__row-players .team-composition__cell.heading-right {
	justify-content: center;
}
.team-composition__cell {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
    text-align: left;
}

.team-composition__cell--number,
.team-composition__cell {
	font-weight: 700;
	font-size: 24px;
}

.team-composition__table-body {
	background: #f5fbff;
}

.team-composition__table-body .team-composition__row:nth-child(even) {
	background: #ffffff;
}

.team-composition__table-body .team-composition__row:nth-child(odd) {
	background: #ebf5f9;
}

.standings__table-cell--team,
.team-composition__cell--team {
	justify-content: flex-start;
	text-transform: none;
}

.team-composition__cell--player {
	justify-content: flex-start;
	padding: 0 10px;
}

.team-composition__cell.heading-right {
	justify-content: flex-start;
	padding: 0 10px;
}

picture:has(.team-composition__player-photo) {
	padding: 0 4px;
}

.team-composition__player-photo {
	min-width: 112px;
	height: 140px;
	object-fit: cover;
	border-radius: 4px;
}

picture:has(.team-composition__team-logo) {
	padding: 4px;
	background-color: #ffffff;
	border-radius: 8px;
	margin-right: 10px;
	box-shadow: 0px 4px 8px -4px #0064b540;
}

.team-composition__team-logo {
	min-width: 84px;
	width: 84px;
	height: 84px;
	object-fit: contain;
}

@media (max-width: 991px) {
	.team-composition__captain {
		grid-template-columns: 1fr 1fr;
	}
}

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

	.team-detail__banner {
		padding: 12px;
	}

	.team-detail__banner-title {
		font-size: clamp(20px, 5vw, 32px);
	}

	.team-detail__text {
		font-size: 16px;
	}

	.team-composition__wrapper.wave-decoration {
		padding: 24px 10px 15px;
	}

	.team-composition__captain {
		grid-template-columns: 1fr;
	}

	.team-composition__captain-img {
		width: 50%;
		height: auto;
		border-radius: 12px;
		aspect-ratio: 160 / 110;
	}

	.team-composition__title {
		padding-bottom: 8px;
		font-size: 16px;
	}

	.team-composition__table {
		margin: 0;
		margin-top: 25px;
	}

	.team-composition__row {
		grid-template-columns: 40px 90px repeat(2, minmax(330px, 1fr)) 100px;
		padding: 3px 0;
	}

	.team-composition__row-players {
		grid-template-columns: 40px 115px 220px 100px 170px 190px 70px 95px 70px;
	}

	.team-composition__row-players .team-composition__cell.heading-md {
		font-size: 16px;
	}

	.team-composition__table-header .team-composition__row {
		padding: 19px 0;
	}

	.team-composition__team-name,
	.team-composition__cell--number,
	.team-composition__cell {
		font-size: 18px;
	}

	.team-composition__wrapper {
		padding: 24px 10px 20px;
	}

	.team-composition__player-photo {
		min-width: 82px;
		height: 52px;
	}

	.team-composition__team-logo {
		min-width: 46px;
		height: 46px;
	}
}

/* End */
/* /local/templates/fhso_2025/assets/css/standings.css?17902503356052 */
/* /local/templates/fhso_2025/assets/css/championship_detail.css?177364842810954 */
/* /local/templates/fhso_2025/assets/css/calendar.css?17768664535638 */
/* /local/templates/fhso_2025/assets/css/about.css?17816783214400 */
/* /local/templates/fhso_2025/assets/css/teams.css?17902503354081 */
/* /local/templates/fhso_2025/assets/css/main.css?179025033519335 */
/* /local/templates/fhso_2025/components/bitrix/news.detail/simple_banner/style.css?1790250335155 */
/* /local/templates/fhso_2025/components/bitrix/news.list/players/style.css?17739306833077 */
/* /local/templates/fhso_2025/assets/css/team_detail.css?17816804116333 */
