* { box-sizing: border-box; margin: 0; padding: 0; }

body {
	background: url(/i/bg.jpg);
	color: #222;
	font-family: 'PT Serif', serif;
	font-size: 15px;
	min-width: 1000px;
}

img { border: none; }
ul { list-style: none; }

a {
	border-bottom: 1px solid #f3bc9f;
	color: #eb5800;
	text-decoration: none;
	transition: all 0.2s ease;
}

a:hover { color: #eb8a00; }

h1 {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 72px;
	font-weight: 700;
}

h2, h3, h4 {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	line-height: 1;
	margin-bottom: .6em;
}

h2 {
	color: #30505a;
	font-size: 32px;
}

h3 {
	color: #30505a;
	font-size: 27px;
}

h4 {
	color: #555;
	font-size: 23px;
}

.row:after { clear: both; }
.row:before,
.row:after {
    content: ' ';
    display: table;
}

.flex {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.content .flex h1,
.content .flex h2,
.content .flex h3,
.content .flex h4 { margin-bottom: 0; }

.container { margin: 0 auto; width: 1080px; }

.container.w100 { width: 100%; }

.page { margin-bottom: 50px; }

header {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 20px 0 30px;
	position: relative;
	z-index: 1;
}
header .logo a { border-bottom: none; }

header .phone {
	color: #666;
	font-size: 14px;
}

header .header-main > div {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}

header .phone p { margin-bottom: 5px; }

header .phone strong {
	color: #41656e;
	font-size: 24px;
	font-family: 'Roboto Condensed', sans-serif;
}

header .lk { margin-left: 1em; }
header .lk a {
	align-items: center;
	background: url(/i/account.svg) no-repeat;
	background-size: auto 100%;
	border: none;
	display: flex;
	padding-left: 35px;
	height: 30px;
}
header .lk a span { border-bottom: 1px solid #f3bc9f; }

header .social a {
	background: url(/i/sc-icons.png) no-repeat;
	border: none;
	display: inline-block;
	height: 30px;
	margin-right: 5px;
	width: 30px;
}
header .social a:last-child { margin-right: 0; }

header .social a.fb { background-position: -30px 0; }
header .social a.ok { background-position: -60px 0; }
header .social a.tw { background-position: -90px 0; }
header .social a.ig { background-position: -120px 0; }
header .social a.yt { background-position: -150px 0; }
header .social a.tg { background-position: -180px 0; }
header .social a.dg { background-position: -210px 0; }
header .social a.rt { background-position: -240px 0; }

nav {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 22px;
	margin-top: 30px;
	margin-left: 5px;
}

nav li {
	background-repeat: no-repeat;
	color: rgba(0,0,0,.6);
	display: inline-block;
	line-height: 1.2; 
	margin-left: -5px;
	padding: 13px 0;
	text-align: center;
}

nav li.nav0 { background-image: url(/i/nav0.png); width: 122px; }
nav li.nav1 { background-image: url(/i/nav1.png); width: 135px; }
nav li.nav2 { background-image: url(/i/nav2.png); width: 122px; }
nav li.nav3 { background-image: url(/i/nav3.png); width: 116px; }
nav li.nav4 { background-image: url(/i/nav4.png); width: 126px; }

nav a { border: none; color: #fff; }
nav a:hover { border-bottom: none; color: rgba(255,255,255,.8); }
nav span { color: #fff; opacity: .5; }

.sky {
	background: url(/i/bg-top.jpg);
	display: block;
	height: 800px;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.shedule { position: relative; }

.shedule:after {
	border: 5px solid #b6e1eb;
	border-top: none;
	bottom: -35px;
	box-sizing: content-box;
	content: ' ';
	display: block;
	height: 80px;
	left: -50px;
	padding: 0 50px;
	position: absolute;
	width: 100%;
	z-index: 1;
}

.shedule h2:after,
.shedule h2:before {
	border: 5px solid #b6e1eb;
	border-bottom: none;
	content: ' ';
	display: block;
	height: 100px;
	position: absolute;
	top: 40px;
	width: 150px;
	z-index: 1;
}

.shedule h2:after { border-right: none; left: -50px; }
.shedule h2:before { border-left: none; right: -60px; }

.shedule .prev,
.shedule .next {
	border: none;
	position: absolute;
	top: 175px;
}

.shedule .prev { left: -80px; }
.shedule .next { right: -80px; }

.shedule-container {
	height: 200px;
	margin-bottom: 90px;
	overflow: hidden;
	position: relative;
	width: 100%;
	z-index: 2;
}

.shedule h2 {
	color: #efb908;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 72px;
	font-weight: 700;
	margin-bottom: 30px;
	text-align: center;
	text-shadow: 0 1px 1px rgba(0,0,0,.3);
	text-transform: uppercase;
}

.shedule h2 span {
	background: #ef7f1a;
	color: #fff;
	display: inline-block;
	font-size: 30px;
	left: 10px;
	padding: 10px 16px;
	position: relative;
	text-transform: lowercase;
	top: -18px;
	transform: skewY(-1deg);
}

.shedule ul { position: relative; width: 10000em; }

.shedule ul li {
	background: #e28b02;
	border-radius: 4px;
	color: #fff;
	float: left;
	font-size: 13px;
	height: 195px;
	margin-right: 26px;
	padding: 15px; 
	text-align: center;
	width: 195px;
}
.shedule ul li.e {
	background: none;
	border: 2px dashed #ddd;
	border-radius: 6px;
}

.shedule ul li span.day { font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.shedule ul li span.time { font-weight: 700; letter-spacing: 1px; margin-left: 10px; }

.shedule ul li > div { margin: 5px 0 10px; }
.shedule ul li div div { font-size: 60px; line-height: 1; margin-bottom: -5px; }
.shedule ul li div small { font-size: 16px; }
.shedule ul li h6 {
	font-family: 'PT Serif', serif;
	font-weight: bold;
	font-size: 20px;
	line-height: 1;
}
.shedule .all { display: none; }

.important {
	background: url(/i/important.png) no-repeat;
	background-size: cover;
	color: #0c7095;
	font-size: 18px;
	line-height: 1.4;
	margin: 50px -20px;
	padding: 20px 100px;
}


.about {
	float: left;
	margin-bottom: 60px;
	width: 45%;
}

.about p {
	color: #222;
	font-size: 17px;
	line-height: 1.6;
	margin-bottom: 15px;
}

.news {
	float: right;
	margin-bottom: 60px;
	width: 50%;
}

.news li {
	padding: 0;
	position: relative;
	margin-bottom: 25px;
}

.news li:after {
	display: table;
	content: " ";
	width: 100%;
}

.news li .date {
	color: #666;
	font-size: 14px;
}

.news li .image {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	height: 150px;
	float: left;
	margin: 5px 25px 15px -5px;
	mask: url(/i/image-mask.png);
	-webkit-mask-image: url(/i/image-mask.png);
	overflow: hidden;
	width: 150px;
}

.news li h6 {
	font-weight: bold;
	font-size: 17px;
	margin: 5px 0 10px;
}

.news li p { line-height: 1.5; margin-bottom: 10px; }

.content .content-news {
	float: none;
	width: 100%;
}

.content .content-news li {
	background: none;
	display: inline-block;
	margin: 0 0 50px 0;
	padding-left: 0;
	vertical-align: top;
	width: 45%;
}

.content .content-news li:nth-child(odd) { margin-right: 9%; }

footer {
	align-items: flex-start;
	border-top: 2px solid #fff;
	color: #666;
	font-size: 14px;
	display: flex;
	justify-content: space-between;
	min-height: 150px;
	padding: 30px 0;
}


footer .happy59 {
	background: url(/i/happy59.png) no-repeat;
	min-height: 90px;
	padding-left: 95px;
	width: 360px;
}

footer .address {
}

footer .links {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
}
footer .links a { display: inline-block; margin-bottom: .7em; }

footer .developer {
	font-size: 13px;
	white-space: nowrap;
}

.content { min-height: 200px; }

.lead {
	background: #000;
	background-image: url(/i/about-lead.jpg);
	background-size: cover;
	color: #fff;
	margin-bottom: 40px;
	padding: 60px 0;
	width: 100%;
}
.lead div { display: flex; align-items: center; }
.lead h2 {
	color: #fff;
	font-family: 'PT Serif', sans-serif;
	font-size: 54px;
	font-weight: 300;
	line-height: 1;
	margin-bottom: 0;
	padding-right: 70px;
}
.lead p { font-size: 23px; }

.lead-rasp { padding: 30px 0; }
.lead-rasp h1 {
	color: #fff;
	padding-right: 40px;
	text-transform: uppercase;
	text-shadow: 0 1px 1px #000;
}
.lead-rasp p { color: #fff; text-align: right; }
.lead-rasp p a {
	border-color: rgba(255,255,255,.4);
	color: #fff;
}
.lead-rasp p a:hover { color: rgba(255,255,255,.7); }

.content h2 { margin-bottom: 20px; }
.content p {
	font-size: 17px;
	line-height: 1.65;
	margin-bottom: 25px;
}

.content .important { margin: 15px 0 25px; }
.content img.right { float: right; margin: 0 0 20px 30px; }
.content ul { margin: 20px 0; }
.content li {
	background: url(/i/li.png) 4px 10px no-repeat;
	font-size: 16px;
	line-height: 1.3;
	margin: 5px;
	padding-left: 30px;
}
.content .video { margin: 0 0 40px 0; }
.content .video video { width: 100%; }
.content .video p { color: #666; font-size: 15px; margin-bottom: 0; }

.paging { margin-top: 30px; }
.paging li {
	background: none;
	display: inline;
	margin-right: 20px;
	padding-left: 0;
}
.paging li.active {
	background: #ef7f1a;
	margin-left: -10px;
	margin-right: 10px;
	padding: 6px 10px;
}
.paging li.active a { border-bottom: none; color: #fff; }


.claim-btn {
	background: #ef7f1a;
	border: none;
	border-radius: 2px;
	box-shadow: 10px 10px 4px rgba(100,35,0,.4);
	color: #fff;
	display: inline-block;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 21px;
	font-weight: bold;
	letter-spacing: 4px;
	line-height: 1;
	padding: 20px 30px 16px;
	text-transform: uppercase;
	transition: .2s all;
}

.claim-btn:hover { background-color: #ea9207; box-shadow: 15px 15px 8px rgba(100,35,0,.3); color: #fff; }

.rasp-claim .form form { width: 100%; }
.rasp-claim .form label,
.rasp-claim .form .label {
	display: block;
	margin-bottom: 5px;
	white-space: nowrap;
}
.rasp-claim .form input[type=text],
.rasp-claim .form textarea { margin-bottom: 15px; width: 100%; }
.rasp-claim .form textarea { height: 85px; }
.rasp-claim .form form > div:last-child { margin-top: 30px; }

form .cols { display: flex; justify-content: space-between; }
form .cols div { width: 49%; }
form .cols div.inline { margin-bottom: 15px; position: relative; }
form .form-group .cols div.inline { margin-bottom: 0; }
form .cols .inline .label {
	border-right: 1px solid #ddd;
	color: #777;
	left: 10px;
	line-height: 1;
	padding: 2px 0 4px 0;
	position: absolute;
	top: 10px;
	width: 45px;
}
form .cols .inline input { margin: 0; padding-left: 60px; }

.rasp-claim .form form .agree a { border-bottom: none; color: #666; }
.rasp-claim .form .txt,
.rasp-claim .form .err { display: none; }
.rasp-claim .form .err {
	background: #fdffc1;
	color: #222;
	font-size: 16px;
	margin: 20px 0;
	padding: 5px 10px;
}


.rasp {
	border-spacing: 1px;
	margin: 0 auto;
	table-layout:fixed;
	width: 95%;
}
.rasp th {
	font-size: 16px;
	font-weight: normal;
	color: #566f7d;
	padding: 20px 0;
}
.rasp td {
	background: #fff;
	background-size: cover;
	background-position: center;
	color: #c9c9c9;
	font-size: 50px;
	height: 180px;
	padding: 10px 0;
	text-align: center;
	vertical-align: middle;
	width: 14.285%;
}
.rasp td.s { font-size: 18px; }
/*.rasp td.today { border: 4px solid #ea9207; }*/
.rasp td.f {
	background-color: #39bcd8;
	color: #fff;
	cursor: pointer;
	font-size: 18px;
	text-align: left;
	vertical-align: top;
}
.rasp td.past { filter: grayscale(100%); }
.rasp td.f > div {
	margin: 0 auto;
	position: relative;
	width: 90%;
}
.rasp td .date { font-size: 12px; letter-spacing: 1px; opacity: .9; text-transform: uppercase; }
.rasp td.f ul { display: none; }
.rasp td.f .descr {
	background: url(/i/bg.jpg);
	border-radius: 4px;
	box-shadow: 20px 20px 24px rgba(0,0,0,.1);
	color: #222;
	cursor: default;
	display: none;
	font-family: 'PT Serif', serif;
	height: 150px;
	left: 50%;
	margin-top: -75px;
	margin-left: -75px;
	padding: 20px 30px 30px;
	position: absolute;
	top: 50%;
	width: 150px;
	z-index: 99;
}
.rasp td.f .descr h6 { opacity: 0; }
.rasp td.f h6.oneline {
	line-height: 1;
	margin: 10px 0;
	text-align: left;
	overflow: hidden;
	white-space: nowrap;
	width: 100%;
	-webkit-mask-image: -webkit-gradient(linear, left top, right top, from(rgba(0,0,0,1)), color-stop(0.75, rgba(0,0,0,1)), to(rgba(0,0,0,0)));
}
.rasp td.f h6 .time {
	font-style: normal;
	font-size: 90%;
	font-weight: 300;
	margin-right: 5px;
	opacity: .9;
}
.rasp td.f h6:hover .time { opacity: 1; }
.rasp td.f .descr p {
	font-size: 15px;
	line-height: 1.3;
	margin: 5px 0 10px;
	opacity: 0;
}
.rasp td.f .descr .time {
	color: #555;
	font-size: 15px;
	font-style: normal;
	font-weight: 300;
	margin-right: 15px;
}
.rasp td.f .descr a.close {
	border: none;
	color: #999;
	font-size: 40px;
	line-height: 1;
	position: absolute;
	right: 10px;
	top: 0;
}
.rasp td.f .descr a.close:hover { color: #eb5800; }
.rasp h6 {
	font-family: 'PT Serif', serif;
	font-weight: bold;
	font-style: italic;
	font-size: 16px;
	line-height: 1.2;
	margin: 10px 0;
}
.rasp p {  margin: 5px 0; }


.studies li {
	margin-bottom: 40px;
	min-height: 195px;
	padding-left: 225px;
	position: relative;
	width: 100%;
}
.studies a.cover {
	border: none;
	left: 0;
	position: absolute;
	top: 5px;
	z-index: 0;
}
.studies h6 {
	color: #33a7c8;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 30px;
	font-weight: 700;
	margin-bottom: 10px;
}
.studies p { font-size: 16px; margin-bottom: 10px; }
.studies p.date { color: #666; font-size: 15px; }

.albums li {
	background: none;
	display: inline-block;
	height: 220px;
	margin: 0 20px 20px 0;
	padding: 0;
	position: relative;
	overflow: hidden;
	vertical-align: top;
	width: 340px;
}
.albums li a {
	border: none;
	display: block;
	height: 220px;
	overflow: hidden;
	position: relative;
	z-index: 2;
}
.albums li img {
    display: block;
    position: relative;
    z-index: 1;
    transition: all 0.2s ease;
}
.albums li a:after {
    background-image: linear-gradient(to bottom,transparent,rgba(0,0,0,0.74));
    bottom: 0;
    content: '';
    display: block;
    height: 100px;
    position: absolute;
    width: 100%;
    z-index: 2;
}
.albums li a:hover span,
.albums li a:hover h6 { opacity: .85; }
.albums span {
	color: #fff;
	font-size: 12px;
	left: 20px;
	bottom: 15px;
	position: absolute;
	z-index: 3;
}
.albums h6 {
	bottom: 32px;
	color: #fff;
	font-weight: normal;
    font-size: 17px;
    left: 20px;
    position: absolute;
    z-index: 3;
}

.content .gallery-cell li {
	height: 200px;
	display: inline-block;
	margin: 0 5px 5px 0;
	padding: 0;
	overflow: hidden;
}

form textarea,
form select,
form input[type=text],
form input[type=password] {
	border: 1px solid #ddd;
	border-top-color: #ccc;
	border-bottom-color: #eee;
	background: #fff;
	font-family: 'PT Serif', sans-serif;
	font-size: 16px;
	margin-bottom: 10px;
	padding: .5em;
}
form textarea:focus,
form select:focus,
form input[type=text]:focus,
form input[type=password]:focus {
	border-color: #999;
	outline: none;
}
form input[type=text]:disabled { background-color: #eee; border-color: #ddd; }
form label {
	display: inline-block;
	margin: .4em 0;
	width: 100%;
}
form label input[type=checkbox] { margin-right: 2px; vertical-align: middle; }
form label.checkbox { vertical-align: middle; }
form label.checkbox input[type=checkbox] {
	display: inline-block;
	position: relative;
	top: -0.1em;
	width: auto;
}
form input[type=submit] {
	display: inline-block;
	background: #eb5800;
	border: none;
	border-radius: .2em;
	color: #fff;
	font-size: 21px;
	font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
	letter-spacing: 4px;
	padding: .6em 1.2em .5em;
	text-transform: uppercase;
	text-decoration: none;
}

form fieldset { border: none; }
form input[type=submit]:hover { background-image: linear-gradient(top, #fe8b46, #ce4d00); }

form .form-margin { padding-left: 62px; }
form .form-group em {
	background: #fffdc7;
	display: inline-block;
	padding: 2px 4px;
	margin-top: 10px;
}

.radio-tabs {
	display: flex;
	justify-content: space-between;
	margin-bottom: 15px;
	margin-top: 10px;
}
.radio-tabs label {
	border: 4px solid transparent;
	border-radius: 4px;
	line-height: 1;
	padding: 10px 0;
	position: relative;
	text-align: center;
	width: 33%;
}
.radio-tabs label.active { border-color: #fff; }
.radio-tabs label img { display: block; margin: 0 auto 5px; }
.radio-tabs label input { position: absolute; visibility: hidden; }

.fade {
	background-color: rgba(0,0,0,0.85);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 999;
}

.lead.lead-rasp .container { flex-wrap: wrap; }

.rasp-slider {
	background: #fff;
	border-radius: 4px;
	box-shadow: 8px 8px 12px rgb(75 60 60 / 10%);
	margin-top: 1em;
	overflow: hidden;
	position: relative;
	width: 100%;
}
.rasp-slider .prev,
.rasp-slider .next {
	align-items: center;
	background-image: linear-gradient(to left, rgb(255 255 255 / 0) 0, rgb(255 255 255 / 100%) 75%);
	content: '';
	cursor: pointer;
	display: flex;
	height: 100%;
	top: 0;
	padding-left: .25em;
	position: absolute;
	width: 5em;
	z-index: 1;
}
.rasp-slider .prev { left: 0; }
.rasp-slider .next { right: 0; transform: scaleX(-1); }
.rasp-slider .prev:hover svg,
.rasp-slider .next:hover svg { opacity: .6; }
.rasp-slider .prev svg,
.rasp-slider .next svg { transition: .2s all; transform: rotate(90deg); width: 60%; }

.rasp-days {
	display: flex;
	font-size: 25px;
	padding: .2em;
	position: relative;
}
.rasp-days a {
	align-items: center;
	border: 1px solid #edd6b5;
	border-radius: 4px;
	display: flex;
	flex-direction: column;
	font-size: 23px;
	font-weight: bold;
	justify-content: center;
	height: 3em;
	line-height: 1;
	margin: .1em;
	padding: .2em;
	text-align: center;
	width: 3em;
}
.rasp-days a:last-child { margin-right: 0; }
.rasp-days .weekend { background: #fbe2d4; color: #e1921f; }
.rasp-days .weekend small { opacity: .6; }
.rasp-days .active {
	background: #eb5800;
	border: none;
	color: #fff;
}
.rasp-days small {
	color: #666;
	display: block;
	font-size: 14px;
	font-weight: normal;
}
.rasp-days .active small { color: #fff; }


.rasp-list {
	margin: 0 auto;
	width: 1080px;
}
.rasp-list > div {
	align-items: flex-start;
	background: #fff;
	border-radius: 10px;
	display: flex;
	justify-content: space-between;
	margin: 1em 0 1.5em 70px;
	padding: 1em 1em 1em 1.75em;
	position: relative;
}

.rasp-list > div.past { display: none; }
.rasp-list > div.past.past-visible { display: flex; }

.rasp-list > div.past h5 { color: #777; }
.rasp-list > div.past p { color: #999; }
.rasp-list > div.past .time { color: #777; }
.rasp-list > div.past .tag { background-color: #ededed; }

.rasp-list > div:last-child { border-bottom: none; }
.rasp-list > div > div { flex: 1 auto; }
.rasp-list > div > div.time {
	font-size: 18px;
	font-weight: bold;
	left: -70px;
	line-height: 1;
	padding-top: .3em;
	position: absolute;
	text-align: right;
}
.rasp-list > div > div.time small { color: #777; font-size: 14px; font-weight: normal; }
.rasp-list > div > div.main { flex: 1 100%; }
.rasp-list > div > div.order-btn { flex-basis: 200px; line-height: 1.25; text-align: right; }
.rasp-list > div > div.order-btn small {
	color: #e05b18;
	display: inline-block;
	font-size: 12px;
	margin-top: .7em;
	text-align: left;
	width: 120px;
}

.rasp-list div h5 { font-size: 19px; margin-bottom: .3em; }
.rasp-list div h5 a { font-size: 14px; font-weight: normal; margin-left: 1em; position: relative; top: -2px; }
.rasp-list div p { color: #444; font-size: 14px; line-height: 1.5; }
.rasp-list div .tag {
	background: #e2f2f6;
	border-radius: 1em;
	color: #777;
	display: inline-block;
	font-size: 14px;
	margin-right: .7em;
	margin-top: 1em; 
	padding: .3em 1.2em .4em;
}
.rasp-list div .tag em { font-style: normal; }
.rasp-list div .tag strong { color: #111; }
.rasp-list .order-btn { padding-left: 1em; }
.rasp-list .order-btn a,
.rasp-list .order-btn span {
	display: inline-block;
	font-size: 17px;
	line-height: 1;
	padding: .5em 0 .55em;
	text-align: center;
	white-space: nowrap;
	width: 7em;
}
.rasp-list .order-btn a {
	background: #ef7f1a;
	border: none;
	border-radius: 4px;
	color: #fff;
}
.rasp-list .order-btn a.btn-disabled { background: #bbb; cursor: not-allowed; }
.rasp-list .order-btn span {
	border: 1px solid #ccc;
	border-radius: 4px;
	color: #444;
}
.rasp-list .order-btn .already {
	border: none;
	color: #51b34c;
	font-size: 15px;
	font-style: normal;
	line-height: 1.3;
	text-align: left;
	white-space: normal;
	width: 120px;
}

.rasp-list .toggle-past { border: 1px solid #ccc; display: block; text-align: center; }
.rasp-list .toggle-past a {
	border: none;
	color: #777;
	cursor: pointer;
}
.rasp-list .toggle-past a span { display: inline; }

.rasp-list .toggle-past.show-past a span:nth-child(2) { display: none; }
.rasp-list .toggle-past.hide-past a span:nth-child(1) { display: none; }


.rasp-claim {
	margin: 0 auto;
	width: 35em;
}
.rasp-claim .claim-header {
	background: #fff;
	border-radius: 1em 1em 0 0;
	margin-bottom: 1px;
	padding: 1.7em 2.5em;
}

.rasp-claim .lesson-params {
	background: #fff;
	border-radius: 0 0 1em 1em;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	padding: 2em 2.5em 2.5em;
}
.rasp-claim h3 { margin: 0; }
.rasp-claim .lesson-params > div {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 23px;
	font-weight: bold;
	margin: 0 0 1.25em 0;
	padding-left: 7.5em;
	position: relative;
}
.rasp-claim .lesson-params > div:last-child { margin: 0 0 .2em; }
.rasp-claim .lesson-params label,
.rasp-claim .lesson-params > div span {
	display: block;
	color: #da8a17;
	font-size: 16px;
	font-weight: normal;
	left: 0;
	position: absolute;
	top: .4em;
	width: 10em;
}
.rasp-claim form { font-family: 'Roboto Condensed', sans-serif; }
.rasp-claim input[type=text],
.rasp-claim select,
.rasp-claim textarea { width: 100%; }
.rasp-claim textarea { height: 60px; }
.rasp-claim form .submit {
	align-items: center;
	display: flex;
	margin-top: 1em;
	margin-right: 1em;
}
.rasp-claim form .submit span {
	color: #777;
	display: inline-block;
	margin-left: 1em;
}
.rasp-claim form label {
	display: block;
	color: #777;
	font-size: 16px;
	font-weight: normal;
}

.teachers {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.teachers li {
	background: none;
	flex-basis: 24%;
	margin: 0;
	padding: 0;
	text-align: center;
}
.teachers li .photo {
	border-bottom: none;
	background-position: top center;
	background-size: cover;
	display: block;
	height: 300px;
	width: 100%;
}
.teachers h5 { font-size: 20px; margin-top: .5em; }
.teachers:after { content: ""; flex-basis: 24%; }

.content .date { color: #666; margin-bottom: .3em; }

.login-form {
	background: linear-gradient(#f9e9e0, transparent), linear-gradient(90deg, #aee2f1, transparent), linear-gradient(-90deg, #f8dc90, transparent);
	background-size: 100% 200%;
	background-position: 0 0;
	border-radius: 20px;
	margin: 2em auto;
	padding: 3em;
	text-align: center;
	transition: .5s all;
}
.login-form.hover { background-position: 0 100%; }
.login-form form { margin: 0 auto; width: 16em; }
.login-form form input { text-align: center; width: 100%; }
.login-form form input[type=submit] { margin: .7em 0; }
.login-form p { margin: 0; }

.register-form { margin: 0 auto; max-width: 42em; }
.register-form .form-group { margin-bottom: 1em; }
.register-form label { width: auto; }
.register-form span.error { width: 100%; }
.form-group-c2,
.form-group-c3 { display: flex; flex-wrap: wrap; justify-content: space-between; }
.form-group-c2 > div { width: 48%; }
.form-group-c3 > div { width: 32%; }
.register-form input[type=text] { margin: 0; width: 100%; }
.register-form input[type=submit] { margin: 1em 0; }
.register-form input[type=submit]:disabled { background-color: #999; }

.profile-form { margin: 2em 0 1em; max-width: 42em; }
.profile-form input[type=text],
.profile-form input[type=password],
.profile-form textarea { margin: 0; width: 100%; }
.profile-form textarea { min-height: 7em; }
.profile-form .form-group { margin-bottom: 1em; }
.profile-form input[type=submit] { margin: 1em 0; }

.lk-links a,
.lk-links span { margin-left: 1em; }

.lk-note {
	background: #fff;
	border-radius: 1em;
	margin-bottom: 1em;
	padding: 1.5em 1em;
	text-align: center;
}
.lk-note p { margin: 0; }

.lesson-orders-list {
	border-collapse: collapse;
	margin: 2em 0 1em;
	width: 100%;
}
.lesson-orders-list > div {
	background: #fff;
	border-radius: .5em;
	font-size: 15px;
	display: flex;
	justify-content: space-between;
	margin-bottom: 1em;
	padding: 1em 1em 1em 1.2em;
}
.lesson-orders-list .lo-date {  }
.lesson-orders-list .lo-name { margin-top: .5em; }
.lesson-orders-list .lo-actions { flex-basis: 200px; font-size: 14px; text-align: right; }
.lesson-orders-list .lo-actions a { display: inline-block; border: 1px solid #edbe79; padding: .35em .7em; border-radius: 5px; }
.lesson-orders-list .past,
.lesson-orders-list .past h4 { color: #777; }
.lesson-orders-list .lo-date,
.lesson-orders-list .lo-time { display: inline-block; margin-right: 1em; }

.childs-list { margin-top: 1em; }
.childs-list div .child a {
	background: #fff;
	border: none;
	display: block;
	font-size: 17px;
	padding: .5em 1em;
}

.btn {
	background: #ef7f1a;
	border: none;
	border-radius: 4px;
	color: #fff;
	display: inline-block;
	font-size: 17px;
	line-height: 1;
	padding: 0.5em 1em 0.6em;
	text-align: center;
	transition: .3s all;
	white-space: nowrap;
}
.btn:hover { color: #fff; background: #e05b18; }
.btn.btn-blank { background: none; border: 2px solid #eb5800; color: #eb5800; }

form .promocode {
	padding-left: 11.5em;
	position: relative;
}

form .promocode input {
	font-family: monospace;
	letter-spacing: 1px;
	padding: .75em 1em;
}

form .promocode button {
	background: #39bcd8;
	border: none;
	border-radius: .25em;
	color: #fff;
	cursor: pointer;
	font-size: 14px;
	right: .7em;
	padding: .5em 1em;
	position: absolute;
	top: .6em;
}

form .promocode.status-wrong input { background-color: #ffe6d7; color: #eb5800; }
form .promocode.status-ok input { background-color: #daffdf; color: #39b54a; }