html,
body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

main#main {
	flex-grow: 1;
}


.scroll-top_obrazovanie {
	scroll-margin-top: 4em;
}
.word-break-all {
    word-break: break-all;
}
.line-height-85\% {
	line-height: 85%;
}


:root,
* {
	--text-xxxl: calc(var(--text-xxl)* var(--text-scale-ratio));
	/*61*/
	--text-xxxxl: calc(var(--text-xxxl)* var(--text-scale-ratio));
	/*76*/
	--text-5xl: calc(var(--text-xxxxl)* var(--text-scale-ratio));
	--text-6xl: calc(var(--text-5xl)* var(--text-scale-ratio));
	--text-7xl: calc(var(--text-6xl)* var(--text-scale-ratio));
	--text-8xl: calc(var(--text-7xl)* var(--text-scale-ratio));
	--text-9xl: calc(var(--text-8xl)* var(--text-scale-ratio));
	--text-10xl: calc(var(--text-9xl)* var(--text-scale-ratio));
}

.text-5xl {
	font-size: var(--text-xxxxl, 8.5rem);
}

.text-6xl {
	font-size: var(--text-5xl, 8.5rem);
}

.text-7xl {
	font-size: var(--text-7xl, 8.5rem);
}

.text-8xl {
	font-size: var(--text-8xl, 8.5rem);
}

.text-9xl {
	font-size: var(--text-9xl, 8.5rem);
}

.text-10xl {
	font-size: var(--text-10xl, 8.5rem);
}

@media (min-width: 64rem) {
	.text-5xl\@md {
		font-size: var(--text-xxxxl, 8.5rem);
	}

	.text-6xl\@md {
		font-size: var(--text-5xl, 8.5rem);
	}

	.text-7xl\@md {
		font-size: var(--text-7xl, 8.5rem);
	}

	.text-8xl\@md {
		font-size: var(--text-8xl, 8.5rem);
	}

	.text-9xl\@md {
		font-size: var(--text-9xl, 8.5rem);
	}

	.text-10xl\@md {
		font-size: var(--text-10xl, 8.5rem);
	}
}




/* фоновый текст */
@media (min-width: 32rem) {
	/*\@xs*/
}

@media (min-width: 48rem) {
	/*\@sm*/

}

@media (min-width: 64rem) {
	/*\@md*/

}

@media (min-width: 80rem) {
	/*\@lg*/
	
}

@media (min-width: 90rem) {
	/*\@xl*/
	
}

@media (min-width: 100rem) {
	/*\@xxl*/
	
}




















.hed-menu-text-l--4 {
	right: -5%;
	bottom: -32px;
}


.aspect-ratio-prof-gard {
	--aspect-ratio: calc(1 / .9);
}

@media (min-width: 64rem) {
	.aspect-ratio-prof-gard {
		--aspect-ratio: calc(1 / .9);
	}
}

@media (min-width: 90rem) {
	.aspect-ratio-prof-gard {
		--aspect-ratio: calc(1 / .8);
	}
}



.prof-gard-text-fon {
    line-height: 19.3vw;
    bottom: -25px;
}

.prof-gard-text-form {
	position: relative;
	line-height: 18.1vw;
	top: -3px;
	left: -39px;
}

.width-prof-gard-text-form {
	width: calc(100% - -55px);
}

@media (min-width: 32rem) {
	/*\@xs*/
}

@media (min-width: 48rem) {
	/*\@sm*/

}

@media (min-width: 64rem) {
	.prof-gard-text-fon {
        line-height: 199%;
        right: -2%;
        bottom: -12%;
    }

	.prof-gard-text-form {
		line-height: 168%;
		position: absolute;
		top: -1%;
		right: -3%;
	}
}

@media (min-width: 80rem) {

	/*\@lg*/
	.prof-gard-text-form {
		line-height: 200%;
	}
}

@media (min-width: 90rem) {

	/*\@xl*/
	.prof-gard-text-form {
		line-height: 200%;
	}
}





.prof-gard-item {
	background-color: hsla(var(--color-bg-darker-h), var(--color-bg-darker-s), var(--color-bg-darker-l), var(--bg-o));
}

.prof-gard-item:hover {
	background-color: var(--color-primary);
	box-shadow: 0px 100px 100px -61px #0801294D;
	z-index: 2;
}

#wa-crm-iframe {
	margin-bottom: -30px;
}




.education-forms-h2 {
	font-size: 10vw;
	line-height: 10vw;
	position: relative;
	top: 7px;
	left: -10px;
	margin-bottom: 6px;
}

@media (min-width: 64rem) {
	.education-forms-h2 {
		font-size: calc(var(--text-lg) + var(--text-sm));
		line-height: 125%;
		position: absolute;
		bottom: -11%;
		left: -8px;
		top: initial;
	}
}


























.map-block {
	height: 470px;
}

.map-block [class*="ymaps-2"][class*="-ground-pane"],
.map-block [class*="ymaps-2"][class*="-copyrights-pane"],
.map-block [class*="ymaps-2"][class*="-controls-pane"] {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
}

/* read more */
.read-more {
	opacity: 0
}

.read-more--loaded {
	opacity: 1
}

.read-more__btn {
	cursor: pointer;
	color: var(--color-primary);
	text-decoration: underline
}


.intro {
	background-color: hsl(238deg 100% 5% / 75%);
}

.scroll-content__target {
	scroll-margin-top: var(--space-xl);
}


.icon__ill-facts-2 {
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 496px;
	height: 408px;
}

.icon__ill-facts-8 {
	-webkit-transform: translateY(-60%);
	transform: translateY(-60%);
	width: 489px;
	height: 305px;
	left: 5%;
}

.icon__ill-facts-11 {
	-webkit-transform: translateY(-33%) translateX(-27%);
	/* transform: translateY(-33%) translateX(-27%); */
	width: 598px;
	height: 581px;
}

.intro_titl {
	background-image: linear-gradient(130deg, #00000063 30%, rgb(63 178 138 / 0%) 100%);
}

#map {
	height: 320px;
}

@media (min-width: 32rem) {
	/*\@xs*/
}

@media (min-width: 48rem) {
	/*\@sm*/

}

@media (min-width: 64rem) {

	/*\@md*/
	#map {
		height: 450px;
	}
}

@media (min-width: 80rem) {
	/*\@lg*/

}

@media (min-width: 90rem) {
	/*\@xl*/

}




:root {
	--radio-switch-width: 72px;
	--radio-switch-height: 32px;
	--radio-switch-padding: 3px;
	--radio-switch-radius: 50em;
	--radio-switch-animation-duration: 0.3s
}

.nkv {
	position: relative;
	display: inline-block;
	display: inline-flex;
	padding: var(--radio-switch-padding);
	border-radius: calc(var(--radio-switch-radius) * 1.4);
	background-color: var(--color-bg-darker)
}

.nkv:active,
.nkv:focus-within {
	box-shadow: 0 0 0 2px hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), .15)
}

.nkm {
	position: relative;
	display: inline-block;
	height: calc(var(--radio-switch-height) - 2*var(--radio-switch-padding));
	width: calc(var(--radio-switch-width)*.5 - var(--radio-switch-padding))
}

.nkg {
	position: relative;
	z-index: 2;
	display: flex;
	height: 100%;
	align-items: center;
	justify-content: center;
	border-radius: var(--radio-switch-radius);
	cursor: pointer;
	font-size: var(--text-sm);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	transition: all var(--radio-switch-animation-duration)
}

.nky:checked~.nkg {
	color: var(--color-white)
}

.nky:focus~.nkg {
	background-color: hsl(var(--color-primary-h), var(--color-primary-s), calc(var(--color-primary-l) * .6))
}

.nkg :not(*):focus-within,
.nky:focus~.nkg {
	background-color: transparent
}

.nkb {
	position: absolute;
	z-index: 1;
	top: 0;
	left: -100%;
	border-radius: var(--radio-switch-radius);
	background-color: var(--color-primary);
	height: calc(var(--radio-switch-height) - 2*var(--radio-switch-padding));
	width: calc(var(--radio-switch-width)*.5 - var(--radio-switch-padding));
	box-shadow: var(--shadow-md);
	transition: transform var(--radio-switch-animation-duration)
}

.nky:checked~.nkb {
	transform: translateX(100%)
}

:root {
	--checkbox-radio-size: 18px;
	--checkbox-radio-gap: var(--space-xxs);
	--checkbox-radio-border-width: 1px;
	--checkbox-radio-line-height: var(--body-line-height);
	--radio-marker-size: 8px;
	--checkbox-marker-size: 12px;
	--checkbox-radius: 4px
}

.checkbox,
.radio {
	position: absolute;
	padding: 0;
	margin: 0;
	margin-top: calc((1em * var(--checkbox-radio-line-height) - var(--checkbox-radio-size))/2);
	opacity: 0;
	height: var(--checkbox-radio-size);
	width: var(--checkbox-radio-size);
	pointer-events: none
}

.checkbox+label,
.radio+label {
	display: inline-block;
	line-height: var(--checkbox-radio-line-height);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	cursor: pointer;
	padding-left: calc(var(--checkbox-radio-size) + var(--checkbox-radio-gap))
}

.checkbox+label::before,
.radio+label::before {
	content: "";
	box-sizing: border-box;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	top: -.1em;
	margin-left: calc(-1 * (var(--checkbox-radio-size) + var(--checkbox-radio-gap)));
	flex-shrink: 0;
	width: var(--checkbox-radio-size);
	height: var(--checkbox-radio-size);
	background-color: var(--color-bg);
	border-width: var(--checkbox-radio-border-width);
	border-color: hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), .65);
	border-style: solid;
	box-shadow: var(--shadow-xs);
	background-repeat: no-repeat;
	background-position: center;
	margin-right: var(--checkbox-radio-gap);
	transition: transform .2s, border .2s
}

.checkbox:not(:checked):not(:focus)+label:hover::before,
.radio:not(:checked):not(:focus)+label:hover::before {
	border-color: hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), 1)
}

.radio+label::before {
	border-radius: 50%
}

.checkbox+label::before {
	border-radius: var(--checkbox-radius)
}



/*badge*/
.badge {
	border: 0;
	color: inherit;
	line-height: 1;
	-webkit-appearance: none;
	appearance: none;
	display: inline-flex;
	align-items: center;
	border-radius: var(--radius-md);
	padding: var(--space-xxxs) var(--space-xxs);
	/*background-color: var(--color-contrast-lower)*/
}

.badge--outline {
	background-color: transparent;
	box-shadow: inset 0 0 0 1px var(--color-contrast-lower)
}

.badge--contrast-higher {
	background-color: var(--color-contrast-higher);
	color: var(--color-bg)
}

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

.badge--primary-light {
	background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);
	color: var(--color-contrast-higher)
}

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

.badge--accent-light {
	background-color: hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), 0.2);
	color: var(--color-contrast-higher)
}

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

.badge--error-light {
	background-color: hsla(var(--color-error-h), var(--color-error-s), var(--color-error-l), 0.2);
	color: var(--color-contrast-higher)
}

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

.badge--success-light {
	background-color: hsla(var(--color-success-h), var(--color-success-s), var(--color-success-l), 0.2);
	color: var(--color-contrast-higher)
}

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

.badge--warning-light {
	background-color: hsla(var(--color-warning-h), var(--color-warning-s), var(--color-warning-l), 0.2);
	color: var(--color-contrast-higher)
}



table {
	counter-reset: rowNumber;
}

table tbody tr.numtr {
	counter-increment: rowNumber;
}

table tr.numtr td:first-child::before {
	content: counter(rowNumber);
}


.abiturieni-doc,
.ul-item {
	counter-reset: item;
	list-style-type: none;
}

.abiturieni-doc .abiturieni-doc__item-num::before {
	content: counter(item) " ";
	counter-increment: item;
}

.ul-item .ul-item-num::before {
	content: "0" counter(item);
	counter-increment: item;
	top: 7px;
	position: absolute;
}



.btn-fx-1 {
	--border-radius: 0.25em;
	--transition-duration: .3s;
	position: relative;
	display: inline-block;
	border-radius: var(--border-radius);
	line-height: 1;
	text-decoration: none;
	color: var(--color-primary);
	transition: var(--transition-duration);
	cursor: pointer
}

.btn-fx-1 span,
.btn-fx-1 .btn-fx-1__icon-wrapper {
	position: relative;
	z-index: 2
}

.btn-fx-1 .icon {
	display: block;
	will-change: transform;
	transition: var(--transition-duration)
}

.btn-fx-1 .icon:first-child {
	color: var(--color-primary)
}

.btn-fx-1 .icon:last-child {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	color: var(--color-white);
	transform: translateY(100%)
}

.btn-fx-1:hover {
	color: var(--color-white)
}

.btn-fx-1:hover .icon:first-child {
	opacity: 0;
	transform: translateY(-100%)
}

.btn-fx-1:hover .icon:last-child {
	opacity: 1;
	transform: translateY(0)
}

.btn-fx-1:hover .btn-fx-1__inner::after {
	transform: skewY(0deg) scaleY(2)
}

.btn-fx-1:focus {
	outline: none;
	box-shadow: 0 0 0 1px var(--color-bg), 0 0 0 3px var(--color-primary)
}

.btn-fx-1__inner {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.15);
	overflow: hidden;
	-webkit-clip-path: inset(0% 0% 0% 0% round var(--border-radius));
	clip-path: inset(0% 0% 0% 0% round var(--border-radius))
}

.btn-fx-1__inner::after {
	content: "";
	position: absolute;
	z-index: 1;
	top: 50%;
	left: -5%;
	width: 110%;
	height: 100%;
	background-color: var(--color-primary);
	transform-origin: center bottom;
	transform: skewY(10deg) scaleY(0);
	transition: transform var(--transition-duration)
}

.btn-fx-2 {
	position: relative;
	line-height: 1;
	letter-spacing: .1em;
	text-transform: uppercase;
	text-decoration: none
}

.btn-fx-2 span {
	position: relative;
	display: inline-flex;
	-webkit-clip-path: inset(0%);
	clip-path: inset(0%)
}

.btn-fx-2 em {
	display: inline-flex
}

.btn-fx-2 em * {
	color: var(--color-primary);
	padding: .25em 0;
	will-change: transform;
	transition: transform .3s
}

.btn-fx-2 em:last-child {
	position: absolute;
	top: 0;
	left: 0
}

.btn-fx-2 em:last-child * {
	transform: translateY(100%)
}

.btn-fx-2::before,
.btn-fx-2::after {
	content: "";
	position: absolute;
	bottom: 0;
	height: 2px;
	left: 0;
	width: 100%
}

.btn-fx-2::before {
	background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2)
}

.btn-fx-2::after {
	background-color: var(--color-primary);
	transform: scaleX(0);
	transition: transform .3s;
	transform-origin: right center
}

.btn-fx-2:hover em *:nth-child(2) {
	transition-delay: .05s
}

.btn-fx-2:hover em *:nth-child(3) {
	transition-delay: .1s
}

.btn-fx-2:hover em *:nth-child(4) {
	transition-delay: .15s
}

.btn-fx-2:hover em *:nth-child(5) {
	transition-delay: .2s
}

.btn-fx-2:hover em *:nth-child(6) {
	transition-delay: .25s
}

.btn-fx-2:hover em *:nth-child(7) {
	transition-delay: .3s
}

.btn-fx-2:hover em *:nth-child(8) {
	transition-delay: .35s
}

.btn-fx-2:hover em *:nth-child(9) {
	transition-delay: .4s
}

.btn-fx-2:hover em *:nth-child(10) {
	transition-delay: .45s
}

.btn-fx-2:hover em:first-child * {
	transform: translateY(-100%)
}

.btn-fx-2:hover em:last-child * {
	transform: translateY(0)
}

.btn-fx-2:hover::after {
	transform: scaleX(1);
	transform-origin: left center
}

.btn-fx-3 {
	--transition-duration: 0.3s;
	position: relative;
	display: inline-block;
	color: var(--color-bg);
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	will-change: transform;
	transition: transform var(--transition-duration)
}

.btn-fx-3 span {
	will-change: transform;
	transition: opacity var(--transition-duration), transform var(--transition-duration) var(--ease-out)
}

.btn-fx-3::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: var(--color-contrast-higher);
	border-radius: inherit;
	will-change: transform;
	transition: transform var(--transition-duration) var(--ease-out-back), box-shadow var(--transition-duration)
}

.btn-fx-3:active {
	transform: scale(.9)
}

.btn-fx-3:hover span {
	opacity: 0;
	transform: scale(.5)
}

.btn-fx-3:hover::before {
	transform: scale(1.1)
}

.btn-fx-3:hover .btn-fx-3__icon-wrapper {
	transform: translateY(0)
}

.btn-fx-3:focus {
	outline: none
}

.btn-fx-3:focus::before {
	box-shadow: var(--shadow-sm), 0 0 0 3px hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.15)
}

.btn-fx-3__inner {
	position: relative;
	z-index: 2;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	-webkit-clip-path: inset(0%);
	clip-path: inset(0%)
}

.btn-fx-3__icon-wrapper {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	will-change: transform;
	transform: translateY(100%);
	transition: transform var(--transition-duration) var(--ease-out)
}

.btn-fx-3__icon-wrapper .icon {
	margin: auto
}

.btn-fx-4 {
	--transition-duration: .3s;
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	background-color: var(--color-contrast-higher);
	box-shadow: var(--shadow-sm);
	overflow: hidden;
	line-height: 1;
	text-decoration: none;
	color: var(--color-bg);
	transition: var(--transition-duration)
}

.btn-fx-4 span {
	position: relative;
	z-index: 2
}

.btn-fx-4::before {
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: hsla(var(--color-bg-h), var(--color-bg-s), var(--color-bg-l), 0.25);
	will-change: transform;
	transform: skewX(-15deg) translate(calc(-100% - 0.5em));
	pointer-events: none
}

.btn-fx-4:hover::before {
	transform: skewX(-15deg) translate(calc(100% + 0.5em));
	transition: transform var(--transition-duration)
}

.btn-fx-4:focus {
	outline: none;
	box-shadow: var(--shadow-sm), 0 0 0 3px hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.15)
}






.preloader {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
	/*background: #267385;*/
	background-image: radial-gradient(farthest-corner circle at 50% 50%, #267587 0%, 47%, #267587e0 100%);
	z-index: 1001;
}

.loaded_hiding .preloader {
	transition: 0.3s opacity;
	opacity: 0;
}

.loaded .preloader {
	display: none;
}







.story-v2__meta a {
	color: var(--color-contrast-high);
	transition: .2s
}

.story-v2__meta a:hover {
	color: var(--color-primary)
}

.story-v2__meta span[role=separator] {
	display: inline-block;
	width: 4px;
	height: 4px;
	vertical-align: middle;
	background-color: var(--color-contrast-low);
	border-radius: 50%;
	margin: 0 var(--space-xxxs)
}

.story-v2__headline a {
	color: var(--color-contrast-higher);
	text-decoration: underline;
	background-repeat: no-repeat;
	background-image: linear-gradient(transparent 50%, hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2) 50%);
	background-size: 0% 100%;
	will-change: background-size;
	transition: background-size .3s var(--ease-in-out)
}

.story-v2__headline a:hover {
	background-size: 100% 100%
}

.story-v2__excerpt {
	color: var(--color-contrast-medium)
}

.story-v2__img {
	display: block;
	transition: opacity .2s
}

.story-v2__img:hover {
	opacity: .85
}

.story-v2__img img {
	display: block;
	width: 100%
}

@media(min-width:64rem) {
	.story-v2--featured .story-v2__excerpt {
		max-width: 70%;
		margin-left: auto
	}
}






:root,
* {
	--image-home: url("/templates/img/home_banners.jpg");
	--color-ipwbpse5p: rgb(242 242 243 / 90%);
	--bg-openFeature: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), var(--bg-openFeature-o, 1));
	--bg-openFeature-o: .8;
	--color-if42j3pq9: 0, 0, 0;
}

.feature-v4 {
	background-image: linear-gradient(130deg, var(--color-ipwbpse5p) 24%, rgba(var(--color-if42j3pq9), 0) 109%), var(--image-home);
}

.feature-openFeature {
	background-image: linear-gradient(360deg, var(--bg-openFeature) 24%, rgba(var(--color-if42j3pq9), 0) 109%), var(--image-openFeature);
}

.homIntro-img-baner {
	bottom: -31%;
	right: -16%;
}

.img-mb-hom-den-otkrit {
	margin-bottom: -10px;
}

/*****************

*******************/
.grid-openSpecialnosti {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

@media (min-width: 64rem) {
	.grid-openSpecialnosti {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
	}
}



.form-intro {
	background: linear-gradient(to bottom, hsla(var(--color-contrast-lower-h), var(--color-contrast-lower-s), var(--color-contrast-lower-l), 0.3) 50%, var(--color-bg) 50%);
}

.speHedSwiper {
	margin-left: calc(-5px - var(--radius-md)) !important;
}














.webkit-line-clamp {
	display: -webkit-box;
	-webkit-box-orient: vertical;
}

.webkit-line-clamp-3 {
	-webkit-line-clamp: 3;
}

.webkit-line-clamp-2 {
	-webkit-line-clamp: 2;
}

.webkit-line-clamp-4 {
	-webkit-line-clamp: 4;
}

.mySwiperScrollbarNovosti .swiper-slide {
	overflow: visible;
}

.text-heder_home:after {
	width: 164px;
	height: 4px;
	margin: 16px 0 0px;
	content: "";
	display: block;
	background-color: var(--color-primary-dark);
}

.gradient-black-nottom-tom {
	background-image: linear-gradient(180deg, hsl(0deg 0% 100% / 0%) 5%, hsl(0deg 0% 0% / 76%) 100%);
}