:root {
	--btn-primary: #fc5806; 
	--primary: #fc5806;
	--dark: #3d3d3d;
	--link: #fc5806;
	--text-muted: #999999;
	--logo-width: 300px;
}

.footer-row {
	justify-content: center !important;
	display: flex;
    flex-wrap: nowrap;
    margin-right: -15px;
    margin-left: -15px;

}


.text-muted {
    color: var(--text-muted) !important;
}


.sidebar-item img{
	height: 0.875rem;
}
.nav-item img{
	height: 0.875rem;
}

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

.horizon-navbar {
	padding: 0;
}

.horizon-navbar .horizon-navbar-container {
	position: relative;
	max-width: 100%;
	padding: 8px 24px 0;
	align-items: flex-start;
}

.horizon-navbar .horizon-navbar-brand-link {
	display: inline-block;
	margin: 0;
	padding: 0;
	height: auto;
	min-height: 0;
	overflow: visible;
}

.horizon-navbar .navbar-brand-vertical {
	display: flex;
	flex-direction: column;
	gap: 2px;
	line-height: 1.2;
}

.horizon-navbar .navbar-brand-main {
	display: flex;
	align-items: center;
}

.horizon-navbar .horizon-navbar-toggler {
	position: absolute;
	top: 24px;
	right: 24px;
	z-index: 10;
}

.horizon-navbar.navbar-primary .container .horizon-navbar-brand-link {
	height: auto;
	min-height: 0;
}

.navbar-primary .navbar-toggler .icon {
	stroke: var(--text-muted);
	fill: none;
}

.main-header-title-main {
	font-size: 24px;
	font-weight: 400;
	color: #ffffff;
	vertical-align:middle;
	margin-left: 10px;
}
.main-header a:hover {
	text-decoration: none;
}

.navbar-brand-title {
    margin-left: 10px;
	margin-top: -7px;
}

.navbar .navbar-nav .nav-item {
	border-bottom: 5px solid var(--dark);
	height: 103px;
}

.navbar .navbar-nav .nav-item.active {
	border-bottom: 5px solid var(--primary) !important;
}

.nav-item{
	white-space: nowrap;

}
.navbar-primary .nav-item.active .nav-link {
	color: #808080;
}


@media(min-width: 992px){
	.footer-links .row{
		display:none;
	}

	/* Компактнее высота navbar в desktop-режиме */
	.navbar-primary .container .navbar-brand {
		height: 70px;
	}

	.navbar .navbar-nav .nav-item {
		height: 70px;
	}

}
@media(max-width: 991.98px){
	.navbar-primary .container {
		padding-bottom: 15px !important;
	}

	.nav-item {
		height: unset !important;
	}
	.footer-links .col.labels{
		display: none;
	}
	.footer-row {
		--justify-content: left !important;
		display: flex;
		flex-wrap: nowrap;
		margin-right: -15px;
		margin-left: -15px;
		margin-bottom: 15px;
		margin-top: 15px;
	}
	body:not(.horizon-main-page) .main-footer {
		background-color: var(--dark) !important;
	}
	body:not(.horizon-main-page) .footer-info p,
	body:not(.horizon-main-page) .footer-links p {
		color: #ffffff !important;
	}
	.footer-col {
		padding-right: 30px !important;
		--padding-left: 15px;
	}

	
	
}

.navbar-primary .container .navbar-brand{
	height: 103px;
}

.navbar-brand{
	display: flex;
	align-items: center;
}
.navbar-brand img{
	
	width: var(--logo-width) !important;
	max-height: unset !important;
	max-width: unset !important;
}
.nav-link,
.dropdown-item {
	font-family: inherit;
	font-variation-settings: inherit;
	letter-spacing: inherit;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
	text-wrap: nowrap;
}

/* Frappe website navbar.scss задаёт line-height: 1 — текст выглядит «приплюснутым» */
.horizon-navbar .navbar-nav .nav-item .nav-link,
.horizon-navbar .navbar-nav .dropdown-menu .dropdown-item {
	font-family: inherit;
	font-variation-settings: inherit;
	letter-spacing: inherit;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
}


.footer-links img{
	width: 25px;
	--height: 40px;
}

.footer-links a{
	text-decoration:underline !important;
	color: var(--link);
	font-family: inherit;
	font-variation-settings: inherit;
	font-size: 16px;
	font-weight: 400;
}

.footer-info p,
.footer-links p{
	height: 12px;
	font-family: inherit;
	font-variation-settings: inherit;
	font-size: 16px;
	font-weight: 400;
}
.footer-links .row .col{
	padding-right: 12px;
	padding-left: 12px;
}

.page-header{
	margin: 0 0 20px !important;
	height:fit-content
}

.embed-container {
	height: unset;
}
 
.split-section-image{
	border-radius: 36px !important;
}

a:hover,a{
	color: var(--link);
}

.sidebar-item a{
	color: var(--link) !important;
}

.section-padding-top {
    padding-top: unset !important;
}

.section-padding-bottom {
    padding-bottom: unset !important;
}

.from-markdown {
    max-width: unset !important;
    margin: auto;
}

h1, h2, h3, h4 {
    font-weight: 400;
}
h1 {
	font-size: 2rem;
	margin-top: 0.25rem;
}
h2 {
    margin-top: unset !important;
}

.tooltip-content{
	display: none;
}

.btn-primary{
	background-color: unset;
}


/*@media(min-width:501px) {
	.label {
		display: none;
	}

}

@media(max-width:500px) {
	.row.header {
		display: none;
	}

}*/


/* Поиск, колокольчик, sticky footer — дублируем в theme SCSS и здесь для надёжности */
.navbar-primary .navbar-modal-search,
.horizon-navbar .navbar-modal-search,
.navbar-primary .navbar-search,
.horizon-navbar .navbar-search {
	background-color: #fff1e7 !important;
	width: unset !important;
	margin-right: 10px;
	color: #d45a08 !important;
}

.navbar-primary .navbar-modal-search::placeholder,
.horizon-navbar .navbar-modal-search::placeholder,
.navbar-primary .navbar-search::placeholder,
.horizon-navbar .navbar-search::placeholder {
	color: #d45a08 !important;
	opacity: 1;
}

.horizon-navbar .dropdown-notifications .icon,
.horizon-navbar .dropdown-notifications .es-icon,
.navbar-primary .dropdown-notifications .icon,
.navbar-primary .dropdown-notifications .es-icon {
	--icon-stroke: #fff1e7 !important;
	stroke: #fff1e7 !important;
}

html {
	height: 100%;
}

body:not(.horizon-main-page) {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

body:not(.horizon-main-page) > [data-path] {
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
}

body:not(.horizon-main-page) .page-content-wrapper {
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
}

body:not(.horizon-main-page) .page_content {
	flex: 1 0 auto;
}

body:not(.horizon-main-page) > .main-footer {
	margin-top: auto;
	flex-shrink: 0;
}

@media(min-width: 576px) {
	.modal-dialog {
	  max-width:800px !important;
	  margin:1.75rem auto
	}
}

.nav-item span{
	color:#fff;
}


.sidebar-item span{
    display: block;
    padding: .25rem .5rem;
    margin-top: .25rem;
    border-radius: .375rem;
    font-size: .875rem;
    color: var(--text-color);
    text-decoration: none;
    font-weight: 500;
    transition: all .2s ease-in-out;

}

.event-header{
	font-size: 1rem !important;
	font-weight: 600 !important;
}

/* === Main page (/) — www/main.html === */

body.horizon-main-page {
	overflow-x: hidden;
	min-height: 100vh;
	margin: 0;
	display: flex;
	flex-direction: column;
}

body.horizon-main-page .bg-container {
	position: fixed;
	inset: 0;
	width: 100vw;
	height: 100vh;
	z-index: 0;
	pointer-events: none;
}

body.horizon-main-page .bg-container .background-media {
	filter: brightness(40%);
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	object-fit: cover;
	object-position: right center;
	pointer-events: none;
}

body.horizon-main-page .bg-container .background-media--placeholder {
	z-index: 0;
}

body.horizon-main-page .bg-container .background-media--full {
	z-index: 1;
	opacity: 0;
	transition: opacity 0.5s ease;
}

body.horizon-main-page .bg-container .background-media--full.is-loaded {
	opacity: 1;
}

body.horizon-main-page .root {
	position: relative;
	z-index: 1;
	flex: 1 0 auto;
	width: 100%;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

body.horizon-main-page .main-header {
	padding: 8px 24px 0;
}

body.horizon-main-page .main-header-brand-link {
	display: inline-block;
	text-decoration: none;
}

body.horizon-main-page .navbar-brand-vertical {
	display: flex;
	flex-direction: column;
	gap: 2px;
	line-height: 1.2;
}

body.horizon-main-page .navbar-brand-main {
	display: flex;
	align-items: center;
}

body.horizon-main-page .main-footer {
	flex-shrink: 0;
	margin-top: auto;
	width: 100%;
}

body.horizon-main-page .main-footer .footer-info {
	color: #ffffff;
}

body.horizon-main-page .footer-links :is(a, a:hover) {
	text-decoration: none !important;
	color: #fc5806;
}

body.horizon-main-page .main-body {
	flex: 1 0 auto;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	display: flex;
	width: 100vw;
}

body.horizon-main-page .main-block-container {
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	display: flex;
	--max-width: 1000px;
	padding-bottom: 36px;
}

body.horizon-main-page .main-block {
	padding-left: 24px;
	padding-top: 50px;
	padding-bottom: 36px;
	max-width: 350px;
	width: 350px;
	min-height: 300px;
	min-width: 350px;
}

/* Главная: тот же Inter, что и на остальных страницах (не Montserrat — он не подключён).
   Явный font-family: Montserrat + унаследованный font-variation-settings от Inter
   давал «растянутый» вид букв. */
body.horizon-main-page .main-block-body :is(a, span) {
	color: #ffffff;
	font-family: inherit;
	font-variation-settings: inherit;
	letter-spacing: inherit;
	text-decoration: none !important;
	font-size: 16px;
	font-weight: 400;
}

body.horizon-main-page .main-block-body a:hover {
	text-decoration: underline !important;
	color: #ffffff !important;
}

body.horizon-main-page .main-block-header {
	background-position: center center;
	border-color: transparent;
}

body.horizon-main-page .main-block-header :is(a, span) {
	color: #ffffff;
	font-size: 36px;
	font-family: inherit;
	font-variation-settings: inherit;
	letter-spacing: inherit;
	line-height: 1.55;
	font-weight: 400;
	text-decoration: none !important;
}

body.horizon-main-page .main-block-header a:hover {
	text-decoration: underline !important;
	color: #ffffff !important;
}

body.horizon-main-page .main-block-neoskif-app {
	width: 25px;
	height: 25px;
	position: absolute;
	top: 46px;
	left: 210px;
}

body.horizon-main-page .main-block-body {
	position: relative;
}

body.horizon-main-page .main-block-body-spacer {
	height: 10px;
}

body.horizon-main-page .container {
	--max-width: 1000px;
}

@media (max-width: 419px) {
	body.horizon-main-page .row {
		margin-left: unset;
	}
}

@media (max-width: 425px) {
	body.horizon-main-page .main-block {
		padding-left: 24px;
		padding-top: 24px;
		padding-bottom: 12px;
		min-height: unset;
		min-width: unset;
	}

	body.horizon-main-page .main-block-container {
		justify-content: unset;
	}

	body.horizon-main-page .main-body {
		justify-content: unset;
	}
}

@media (max-width: 768px) {
	body.horizon-main-page .main-block {
		padding-left: 24px;
		padding-top: 24px;
		padding-bottom: 12px;
		min-height: unset;
	}
}
