.structure {
	box-shadow: 0 17px 37px rgba(19,25,41,.24);
	width: 289px;
	max-height: 450px;
	display: block;
	background-color: #fff;
	position: fixed;
	padding-top: 23px;
	padding-bottom: 5px;
	padding-right: 20px;
	left: 0;
	transition: .15s;
	overflow: auto;
	overflow-y: hidden;
	z-index: 1000
}

@media (max-width: 813px) and (max-height:415px) {
	.structure {
		max-height:200px
	}
}

@media (max-width: 600px) and (max-height:415px) {
	.structure {
		max-height:180px
	}
}

.structure.close-structure {
	width: 70px;
	max-height: 70px;
	overflow: hidden;
	cursor: pointer;
	cursor: pointer
}

.structure.close-structure:hover {
	width: 230px!important
}

.structure.close-structure:hover .left-content-title {
	font-size: 20px
}

.structure.close-structure:hover .left-content-title:before {
	color: #000
}

@media only screen and (max-width: 1024px) {
	.structure.close-structure:hover {
		width:230px!important
	}

	.structure.close-structure:hover .left-content-title {
		font-size: 0
	}

	.structure.close-structure:hover .left-content-title:before {
		color: #ed1b29
	}
}

.structure.close-structure:before {
	background-color: #ed1b29
}

.structure.close-structure .left-content-list {
	max-width: 0
}

.structure.close-structure .left-content-close {
	opacity: 0;
	pointer-events: none
}

.structure.close-structure .left-content-title {
	font-size: 0
}

.structure.close-structure .left-content-title:before {
	color: #ed1b29;
	font-size: 23px
}

.structure:before {
	content: '';
	display: block;
	width: 3px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: transparent;
	transition: .15s
}

.structure.close {
	width: 70px;
	max-height: 70px;
	overflow: hidden;
	cursor: pointer
}

.structure.close:before {
	background-color: #ed1b29
}

.structure.close .left-content-list {
	max-width: 0
}

.structure.close .left-content-close {
	opacity: 0;
	pointer-events: none
}

.structure.close .left-content-title {
	font-size: 0;
}

.structure .left-content-title .icon {
	font-size: 25px;
}

.structure.close .left-content-title:before {
	color: #ed1b29;
	font-size: 23px
}

.structure-title {
	display: inline-block;
	font-size: 20px;
	line-height: 24px;
	letter-spacing: .6px;
	color: #ed1b29;
	margin-left: 22px;
	margin-bottom: 15px;
	white-space: nowrap
}

.structure-title:before {
	display: inline-block;
	font-size: 23px;
	vertical-align: middle;
	color: #000;
	margin-right: 16px
}

.structure-close {
	position: absolute;
	right: 9px;
	top: 9px;
	width: 19px;
	height: 19px;
	color: #5d6165;
	background-color: transparent;
	font-size: 19px;
	border: 0;
	transition: .15s
}

@media only screen and (max-width: 1169px) {
	.structure-close {
		display:inline-block
	}
}

.structure-close:before {
	display: block;
	vertical-align: middle;
	font-size: 11px
}

.structure-close:hover {
	transform: rotate(180deg)
}

.structure-list {
	overflow: hidden;
	max-width: 230px;
	transition: .15s
}

.structure-list li {
	margin-bottom: 20px
}

.structure-list a {
	position: relative;
	display: inline-block;
	margin-left: 20px;
	font-size: 14px;
	line-height: 1.3;
	color: #5d6165
}

.structure-list a:before {
	content: '';
	display: block;
	width: 3px;
	height: 100%;
	position: absolute;
	left: -20px;
	top: 0;
	background-color: transparent
}

.structure-list a:hover {
	color: #000
}

.structure-list a.active {
	color: #000
}

.structure-list a.active:before {
	background-color: #ed1b29
}

@media only screen and (max-width: 749px) {
	.structure {
		width:222px;
		padding-top: 12px;
		padding-right: 15px
	}

	.structure.close {
		width: 50px!important;
		max-height: 50px
	}

	.structure-title {
		margin-left: 15px
	}

	.structure-list a {
		margin-left: 17px
	}

	.structure-list a:before {
		left: -17px
	}

	.structure-list li {
		margin-bottom: 15px
	}
}

.structure-content-list li a {
	position: relative;
	display: inline-block;
	font-size: 14px;
	line-height: 1.3;
	color: #5d6165
}

.structure-content-list li a:before {
	content: '';
	display: block;
	width: 3px;
	height: 100%;
	position: absolute;
	left: -20px;
	top: 0;
	background-color: transparent
}

.structure-content-list li a:hover {
	color: #000
}

.structure-content-list li a.active {
	color: #000
}

.structure-content-list li a.active:before {
	background-color: #ab1a23
}

.structure-content-list li ul a {
	display: none
}

.structure-content-list li ul li a {
	position: relative;
	display: inline-block;
	margin-left: 0;
	font-size: 14px;
	line-height: 1.3;
	color: #5d6165
}

.structure-content-list li ul li a:before {
	content: '';
	display: block;
	width: 3px;
	height: 100%;
	position: absolute;
	left: -20px;
	top: 0;
	background-color: transparent
}

.structure-content-list li ul li a:hover {
	color: #000
}

.structure-content-list li ul li a.active {
	color: #000
}

.structure-content-list li ul li a.active:before {
	background-color: #ab1a23
}

.structure-menu {
	position: relative;
	font-size: 14px;
	line-height: 40px;
	color: #5d6165;
	margin-left: 1px
}

.structure-menu .main-punkt {
	position: relative;
	font-size: 14px;
	line-height: 40px;
	color: #5d6165;
	padding-left: 30px;
	border-left: 3px solid transparent;
	cursor: pointer;
	display: block
}

.structure-menu .main-punkt.active {
	color: #000;
	font-size: 14px;
	line-height: 40px;
	font-weight: 700;
	border-left: 3px solid #ed1b29
}

.structure-menu .main-punkt.transform:after {
	transform: rotate(180deg) translateY(-50%);
}

.structure-menu .main-punkt:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 25px;
	height: 25px;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYgOUwxMiAxNUwxOCA5IiBzdHJva2U9IiMxRDIyMkYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=");
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: center;
	transform-origin: top;
}

.structure-menu .child {
	display: none
}

.structure-menu .child.open {
	display: block
}

.structure-menu .structure-submenu {
	font-size: 14px;
	line-height: 34px;
	color: #5d6165;
	margin-left: 49px
}

@media only screen and (max-width: 414px) {
	.structure-menu .structure-submenu {
		margin-left:33px;
		margin-bottom: 0
	}
}

.structure-menu .structure-submenu__a {
	cursor: pointer
}

.structure-menu .structure-submenu__a.active-a,.structure-menu .structure-submenu__a:hover {
	color: #b21e28;
	border-left: none
}

.lesson-wrap {
	align-items: stretch
}

.lesson-number {
	font-size: 22px;
	line-height: 1.36;
	color: #b21e28;
	text-align: center;
	margin-bottom: 10px
}

.lesson-comments {
	text-align: center;
	margin-top: 25px;
	margin-bottom: 50px
}

.lesson-comments span {
	font-size: 15px;
	line-height: 1.33;
	color: #5d6165
}

.lesson-comments span:before {
	display: inline-block;
	margin-right: 8px;
	font-size: 20px;
	vertical-align: bottom
}

.lesson-video-block {
	width: 100%;
	text-align: center;
	background: #ecf0f4
}

.lesson-video-block .video-wrap,.lesson-video-block iframe {
	display: inline-block;
	max-width: 920px;
	width: 100%;
	height: 500px
}

.lesson-video-block .btn {
	margin-bottom: 100px;
	margin-top: 50px
}

.lesson-video-block .first-level_btn {
	margin: 30px 0 50px
}

.lesson-video-info {
	display: block;
	font-size: 16px;
	line-height: 1.5;
	color: #5d6165
}

@media only screen and (max-width: 749px) {
	.lesson-video-block {
		margin-top:20px
	}

	.lesson-video-block .video-wrap,.lesson-video-block iframe {
		height: auto
	}

	.lesson-video-block .btn {
		margin-top: 20px;
		margin-bottom: 20px
	}
}

.lesson-more {
	text-align: center;
	margin: 50px auto
}

.lesson-more-title {
	margin-bottom: 45px
}

.lesson-more-title span {
	color: #b21e28
}

.lesson-more .pagination-slider {
	display: none
}

@media only screen and (max-width: 749px) {
	.lesson-more {
		display:block
	}

	.lesson-more-title {
		margin-top: 10px
	}

	.lesson-more .item-module {
		text-align: left
	}

	.lesson-more .pagination-slider {
		display: block
	}
}

.lesson-floating {
	position: absolute;
	padding: 0;
	background: #fff
}

.lesson-floating .lessons-banner-link p {
	display: none
}

.lesson-floating img {
	margin-bottom: 25px;
	box-shadow: 0 5px 15px rgba(0,0,0,.2)
}

.lesson-floating .red {
	color: #b21e28;
	display: inline-block
}

.lesson-floating h5 {
	margin-bottom: 15px
}

.lesson-floating .btn,.lesson-floating .third-level_btn {
	width: 100%;
	padding-left: 0;
	padding-right: 0;
	margin-top: 20px;
	text-align: center
}

@media only screen and (max-width: 749px) {
	.lesson-floating {
		position:static
	}
}

.lesson-static {
	padding: 30px 20px;
	background: #ecf0f4;
	margin-bottom: 20px
}

.lesson-static img {
	margin-bottom: 25px;
	box-shadow: 0 5px 15px rgba(0,0,0,.2)
}

.lesson-static .red {
	color: #b21e28;
	display: inline-block
}

.lesson-static h5 {
	margin-bottom: 15px
}

.lesson-static .btn {
	width: 100%;
	padding-left: 0;
	padding-right: 0;
	margin-top: 20px
}

.lesson-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 50px;
	margin-bottom: 35px
}

.lesson-grid-item {
	display: block;
	height: 350px;
	width: calc(33.33% - 10px);
	position: relative;
	background-size: cover;
	background-position: center;
	overflow: hidden;
	margin-bottom: 20px;
	background-color: #fff
}

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

.lesson-grid-item.middle {
	width: calc(66.66% - 10px)
}

.lesson-grid-item.full {
	width: calc(100% - 10px)
}

.lesson-grid-item:hover:after {
	top: 20%
}

.lesson-grid-item:hover .title {
	color: #b21e28
}

.lesson-grid-item:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,.3)
}

.lesson-grid-item:after {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	top: 40%;
	transition: .4s;
	background: linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.7) 56%,rgba(0,0,0,.7) 100%)
}

.lesson-grid-item .free {
	position: absolute;
	left: 5px;
	top: 5px;
	background: #32755a;
	padding: 6px 20px;
	font-size: 14px;
	line-height: 1.3;
	text-transform: uppercase;
	color: #fff;
	display: inline-block;
	z-index: 1;
}

.lesson-grid-item .title {
	font-size: 22px;
	line-height: 1.4;
	color: #fff;
	letter-spacing: .66px;
	margin-top: 3px;
	transition: .15s
}

.lesson-grid-item .bottom {
	z-index: 1;
	position: absolute;
	left: 30px;
	bottom: 25px;
	color: #fff;
	font-size: 22px;
	line-height: 1.4;
}

.lesson-grid-item .num {
	font-size: 14px;
	line-height: 1.1;
}

.lesson-grid-item[disabled] {
	cursor: not-allowed
}

.lesson-grid-item[disabled] .title {
	color: #fff
}

.lesson-grid-item[disabled]:before {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
	background-color: rgba(0,0,0,.7)
}

.lesson-grid-item[disabled]:after {
	content: attr(data-content);
	position: absolute;
	left: 50%;
	top: 50%;
	bottom: auto;
	transform: translate(-50%,-50%);
	font-size: 20px;
	line-height: 1.2;
	color: #fff;
	z-index: 2;
	display: inline-block;
	width: auto;
	height: auto;
	background: 0 0;
	vertical-align: middle;
	text-align: center
}

@media only screen and (max-width: 969px) {
	.lesson-grid-item {
		width: calc(50% - 10px);
		height: 300px
	}

	.lesson-grid-item.middle {
		width: calc(100% - 10px)
	}
}

@media only screen and (max-width: 749px) {
	.lesson-grid-item {
		width:100%!important;
		height: 220px
	}
}