* {
   outline: none;
   margin: 0;
   padding: 0px;
}

html {
   box-sizing: border-box;
}

ol, ul {
   list-style: none;
}

table {
   border-collapse: collapse;
   border-spacing: 0;
}

img {
   border: 0;
   max-width: 100%;
}

button::-moz-focus-inner, input::-moz-focus-inner {
   border: 0;
   padding: 0;
}

input, button, textarea, select {
   font-family: 'Roboto', Arial, sans-serif;
   resize: none;
   font-size: 14px;
}

*, *::before, *::after {
   box-sizing: inherit;
}

.container {
   max-width: 1344px;
   width: 100%;
   margin-left: auto;
   margin-right: auto;
   padding-left: 16px;
   padding-right: 16px;
}

.column {
   padding-left: 16px;
   padding-right: 16px;
}

.columns {
   margin-left: -16px;
   margin-right: -16px;
   display: flex;
   display: -webkit-flex;
   -webkit-flex-wrap: wrap;
   flex-wrap: wrap;
}

.columns.min {
   margin-left: -6px;
   margin-right: -6px;
}

.min .column {
   padding-left: 6px;
   padding-right: 6px;
}

.boxes {
   display: flex;
   display: -webkit-flex;
}

.box {
   display: block;
   flex-basis: 0;
   flex-grow: 1;
   flex-shrink: 1;
}

.box.column {
   flex: none;
}

.col-1 {
   width: 8.33333333%;
}

.col-2 {
   width: 16.66666667%;
}

.col-2-5 {
   width: 20%;
}

.col-3 {
   width: 25%;
}

.col-4 {
   width: 33.33333333%;
}

.col-5 {
   width: 41.66666667%;
}

.col-6 {
   width: 50%;
}

.col-7 {
   width: 58.33333333%;
}

.col-8 {
   width: 66.66666667%;
}

.col-9 {
   width: 75%;
}

.col-10 {
   width: 83.33333333%;
}

.col-11 {
   width: 91.66666667%;
}

.col-12 {
   width: 100%;
}

.flex {
   display: flex;
   display: -webkit-flex;
}

.flex-wrap {
   -webkit-flex-wrap: wrap;
   flex-wrap: wrap;
}

.flex-column {
   flex-direction: column;
   -webkit-flex-direction: column;
}

.flex-between {
   -webkit-justify-content: space-between;
   justify-content: space-between;
}

.flex-end {
   -webkit-align-items: flex-end;
   align-items: flex-end;
}

.flex-align-center {
   -webkit-align-items: center;
   align-items: center;
}

.flex-right {
   -webkit-justify-content: flex-end;
   justify-content: flex-end;
}

.flex-center {
   -webkit-justify-content: center;
   justify-content: center;
}

.flex-grow {
   flex-grow: 1;
   -webkit-flex-grow: 1;
}

body {
   height: 100vh;
   font-size: 15px;
   line-height: 25px;
   font-family: 'Roboto', Arial, sans-serif;
   color: #333;
   font-weight: 400;
   cursor: default;
   background: #ecf0f2;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
}

.bg-white {
   background-color: #fff;
}

a {
   color: #0066cc;
   text-decoration: none;
   outline: none;
}

a:hover {
   text-decoration: none;
}

h1, h2 {
   font-size: 33px;
   line-height: 38px;
   font-weight: 700;
   margin-bottom: 35px;
   color: #08295b;
   font-family: 'Rubik', 'Roboto', Arial, sans-serif;
}

h3 {
   font-family: 'Rubik', 'Roboto', Arial, sans-serif;
   font-weight: 500;
   margin-bottom: 20px;
   font-size: 23px;
   line-height: 28px;
   letter-spacing: .05em;
}

h4 {
   font-size: 18px;
   font-weight: 500;
   margin-bottom: 15px;
   text-transform: uppercase;
}

/*--------- main ---------*/

.wrapper {
   min-width: 320px;
   min-height: 100vh;
   overflow: hidden;
   position: relative;
   display: flex;
   display: -webkit-flex;
   flex-direction: column;
   -webkit-flex-direction: column;
}

.wrap {
   flex: 1 0 auto;
   -webkit-flex: 1 0 auto;
   position: relative;
}

.content {
   padding: 25px 0 40px;
}

.auto {
   margin-left: auto;
   margin-right: auto;
}

.center {
   text-align: center;
}

.rubik {
   font-family: 'Rubik', 'Roboto', Arial, sans-serif;
}

.offset {
   padding-top: 70px;
   padding-bottom: 70px;
}

.offset-bottom {
   margin-bottom: 50px
}

.white-back {
   background-color: #fff;
}

.white {
   color: #fff;
}

.red {
   color: #ff3757;
}

.blue {
   color: #90ccf0;
}

.dark-blue {
   color: #08295b;
}

.dark-red {
   color: #c83249;
}

.grey {
   color: #828283;
}

.navy-blue {
   color: #0066cc;
}

.big-text {
   font-size: 1.4em;
}

.small-text {
   font-size: .8em;
}

.uppercase {
   text-transform: uppercase;
}

.tab-pane {
   display: none;
}

.tab-pane.active {
   display: block;
}

.strike {
   text-decoration: line-through;
}

.right {
   text-align: right;
}

@media (min-width: 1345px) {
   .minus-mt-40 {
      margin-top: -40px;
   }
}

.ml-20 {
   margin-left: 20px;
}

.title-text {
   font-size: 18px;
   font-weight: 500;
}

.default-link {
   color: #333;
}

.default-link:hover {
   color: #0066cc;
}

/*-------- pattern-link --------*/

.pattern-link {
   position: relative;
   height: 9px;
}

.pattern-link:before,
.pattern-link:after {
   content: '';
   position: absolute;
   width: 50%;
   top: 0;
   height: 9px;
}

.pattern-link:before {
   left: 50%;
   background: url(../img/line-pattern-right.svg) 0 0 repeat-x;
}

.pattern-link:after {
   right: 50%;
   background: url(../img/line-pattern-left.svg) 100% 0 repeat-x;
}

.--footer:before {
   background-position: 0 -9px;
}

.--footer:after {
   right: 50%;
   background-position: 100% -9px;
}

/*-------- header --------*/

.header {
   position: relative;
   background-color: #08295b;
   border-bottom: 1px solid #195DC3;
   z-index: 10;
}

.header-top {
   position: relative;
   /*padding: 15px 40px 0 0;*/
   padding: 20px 0 10px 0;
   z-index: 2;
}

.top-menu {
	margin-top: 10px;
	text-align: center;
}
.top-menu ul li {
    display: inline-block;
	padding: 0 20px;
}
.top-menu ul > li > a {
    line-height: 20px;
    display: block;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    transition: color 0.2s ease;
}
.top-menu ul > li > a:hover {
	text-decoration: underline;
}

.logotype {
   margin: 0 20px;
   max-width: 275px;
   width: 100%;
}

.header-phone {
   color: #149fff;
   font-size: 20px;
   font-weight: 700;
   white-space: nowrap;
}

.login {
   font-size: 13px;
   margin: 5px 0;
   transition: color 0.2s ease;
}

.login:hover {
   color: #fff;
}

.login .icon {
   font-size: 28px;
   margin-right: 10px;
}

.lang,
.search-button {
   position: absolute;
   right: 0;
   top: 15px;
}

.lang-name {
   font-size: 12px;;
   text-transform: uppercase;
   color: #fff;
   font-weight: 500;
   cursor: pointer;
}

.search-button {
   top: auto;
   bottom: 15px;
   font-size: 20px;
   color: #0066cc;
   cursor: pointer;
}

.menu-right .search-button {
   position: static;
   margin-left: 25px;
   margin-right: 0;
}

.menu-wrap {
   width: 100%;
   left: 0;
   top: 0;
   padding: 15px 0 0 0;
   background-color: #08295b;
   transition: padding 0.2s ease;
}

.menu-wrap .logotype {
   margin: 0 30px;
   max-width: 165px;
}

.header:not(.fixed) .menu-wrap .burger-menu,
.header:not(.fixed) .menu-wrap .logotype,
.header:not(.fixed) .menu-wrap .login {
   display: none;
}

@media (min-width: 1024px) {
   .fixed .menu-wrap {
      position: fixed;
      padding: 5px 0;
      border-bottom: 1px solid #195DC3;
   }

   .menu-wrap {
      position: relative;
      padding: 15px 0 20px;
   }

   .fixed .submenu-wrap._show {
      opacity: 1;
      visibility: visible;
      pointer-events: all
   }
}

.submenu-wrap {
   position: absolute;
   width: 100%;
   left: 0;
   top: 100%;
   background-color: #fff;
   padding: 30px 0;
   opacity: 0;
   visibility: hidden;
   pointer-events: none;
   transition: all 0.2s ease;
}

.submenu-wrap-list {
   margin: 0 -16px;
}

.submenu-wrap-list > li {
   width: 20%;
   padding: 0 16px;
}

.submenu-wrap-list > li > a {
   font-weight: bold;
   font-size: 16px;
}

.submenu-wrap-list > li ul {
   margin-top: 15px;
}

.submenu-wrap-list > li ul li {
   font-size: 14px;
   line-height: 20px;
   margin-bottom: 5px;
}

.submenu-wrap-list a {
   color: #333;
}

.menu-block {
   position: relative;
   max-width: 1312px;
   margin: 0 auto;
}

.menu {
   width: 100%;
}

.menu > li {
   position: relative;
}

.menu > li > a {
   line-height: 20px;
   display: block;
   font-size: 12px;
   font-weight: 500;
   text-transform: uppercase;
   color: #fff;
   text-align: center;
   transition: color 0.2s ease;
}

.menu > li:hover > a,
.menu > li > a.active {
   color: #ff3757;
}

.burger-menu {
   position: relative;
   width: 35px;
   height: 20px;
   border-top: 2px solid #0066cc;
   border-bottom: 2px solid #0066cc;
   cursor: pointer;
}

.burger-menu:after {
   content: '';
   width: 100%;
   height: 2px;
   position: absolute;
   left: 0;
   top: 7px;
   background-color: #0066cc;
}

.orders-button li {
   margin: 20px 10px;
   text-align: center;
}

.popup-menu {
   position: absolute;
   left: 0;
   top: 100%;
   box-shadow: 4px 3px 7px rgba(1, 30, 75, .34);
   border-radius: 2px;
   background-color: #e6edf0;
   width: 680px;
   opacity: 0;
   visibility: hidden;
   pointer-events: none;
   transition: all 0.2s ease;
}

@media (min-width: 1245px) {
   .menu > li:hover .popup-menu {
      visibility: visible;
      opacity: 1;
      pointer-events: all;
   }
}

.submenu-container {
   height: 50px;
}

.submenu {
   background-color: #1757B8;
   overflow: hidden;
}

.submenu a {
   line-height: 20px;
   padding: 15px;
   font-size: 12px;
   font-weight: 900;
   color: #fff;
   text-transform: uppercase;
   display: block;
   background-color: #1757B8;
   transition: background 0.2s ease;
}

.submenu li:first-child a {
   padding-left: 25px;
}

.submenu li:last-child a {
   padding-right: 25px;
}

.submenu li:hover a,
.submenu li.active a {
   background-color: #FD3051;
}

.submenu-arrow {
   position: absolute;
   width: 25px;
   height: 50px;
   position: absolute;
   top: 0;
   border: none;
   cursor: pointer;
   background-color: transparent;
   border: none;
   text-align: center;
   line-height: 50px;
   font-size: 16px;
   color: #fff;
}

.submenu-arrow-prev {
   left: 0;
}

.submenu-arrow-next {
   right: 0;
}

.submenu-list {
   padding: 13px 0;
   position: relative;
   display: none;
}

.submenu-list.active {
   display: flex;
}

.submenu-list li {
   width: 33.33%;
   min-height: 100%;
}

.submenu-list li a {
   display: block;
   line-height: 14px;
   font-weight: 500;
   color: #323232;
   padding: 13px 20px;
   height: 100%;
   transition: color 0.2s ease;
}

.submenu-list li a:hover {
   color: #FD3051;
}

.submenu-list li {
   border-left: 2px solid #CAD8DE;
}

.submenu-list li:nth-child(3n+1) {
   border-left: none;
}

/*-------- ui --------*/

.button {
   display: inline-block;
   line-height: 20px;
   padding: 11px 25px;
   color: #fff;
   background-color: #0066cc;
   border: 1px solid #0066cc;
   font-size: 18px;
   font-weight: 500;
   border-radius: 22px;
   cursor: pointer;
   white-space: nowrap;
   text-align: center;
   transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.button.--blue {
   color: #149fff;
   border-color: #149fff;
}

.button.--red {
   color: #FD3051;
   border-color: #FD3051;
}

.button.--grey {
   border-color: #DFE7EA;
   color: #c7cbcd;
}

.line-button {
   background-color: transparent;
}

.slim {
   padding: 8px 20px;
   font-size: 13px;
}

.full {
   display: block;
   width: 100%;
   padding-left: 0;
   padding-right: 0;
}

.fix-button {
   width: 190px;
}

.red-button {
   background-color: #FD3051;
   border-color: #FD3051;
}

.submit {
   font-size: 15px;
   font-weight: 700;
}

.button:hover {
   background-color: #2C71E0;
}

.red-button:hover {
   background-color: #FF5F79;
   border-color: #FF5F79;
}

.button.--blue:hover {
   background-color: #149fff;
   color: #fff;
}

.--red:hover {
   background-color: #FD3051;
   color: #fff;
}

.input {
   width: 100%;
   height: 44px;
   border: none;
   background-color: #fff;
   border-radius: 3px;
   padding: 0 15px;
   font-size: 15px;
}

.checkbox {
   display: none;
}

.label-checkbox {
   display: block;
   padding-left: 32px;
   font-size: 13px;
   font-weight: 500;
   line-height: 20px;
   position: relative;
}

.label-checkbox:before {
   content: '';
   width: 20px;
   height: 20px;
   line-height: 20px;
   text-align: center;
   border-radius: 2px;
   background-color: #fff;
   position: absolute;
   left: 0;
   top: 0;
   color: #fff;
   font-family: 'icon', sans-serif;
}

.--grey-checkbox:before {
   background-color: #f2f2f2;
}

.checkbox:checked + .label-checkbox:before {
   content: '\E80B';
   background-color: #ff3757;
}

.checkbox:checked + .--blue-checkbox:before {
   background-color: #0066cc;
}

.label-checkbox a {
   color: inherit;
   text-decoration: underline;
}

.select-text {
   font-size: 13px;
   font-weight: 500;
   white-space: nowrap;
   position: absolute;
   left: 0;
   bottom: 100%;
   margin-bottom: 5px;
}

.select-line {
   display: block;
   border: 1px solid #fff;
   border-radius: 3px;
   color: #fff;
   font-size: 15px;
   font-weight: 700;
   text-align: center;
   padding: 11px 10px;
   line-height: 20px;
   cursor: pointer;
}

.checkbox:checked + .select-line {
   background-color: #fff;
   color: #676767;
}

.input-block {
   margin-bottom: 35px;
   line-height: 20px;
   position: relative;
}

.modal-label {
   display: block;
   font-size: 15px;
   font-weight: 900;
   color: #717171;
}

.modal-label span {
   color: #0066cc;
}

.modal-label span.red {
   color: #ff3757;
}

.modal-label-text {
   font-size: 13px;
   font-weight: 500;
   margin-bottom: 15px;
}

.modal-label-text span {
   font-size: 15px;
   font-weight: bold;
}

.modal-input {
   width: 100%;
   border: none;
   border-bottom: 1px solid #FFFFFF;
   padding: 15px 0 5px;
   font-size: 16px;
   background-color: transparent;
}

.grey-input {
   border-bottom-color: #B3BABC;
}

.modal-input.error {
   border-bottom-color: #ff0000;
}

.error-text {
   font-size: 13px;
   color: #ff0000;
   line-height: 20px;
}

.modal-wrapper {
   width: 100%;
}

.program-modal-picture {
   width: 100%;
   text-align: center;
   padding: 20px 0;
}
/*-------- slider --------*/

.slider-block {
   position: relative;
   background-color: #08295B;
}

.owl-loaded {
   display: block;
}

.owl-stage-outer {
   position: relative;
   overflow: hidden;
}

.owl-nav.disabled,
.owl-dots.disabled,
.owl-nav button.disabled {
   display: none;
}

.owl-stage {
   display: flex;
   display: -webkit-flex;
}

.slide {
   width: 100%;
   flex-shrink: 0;
   background-position: 50% 50%;
   background-repeat: no-repeat;
   background-size: cover;
}

.slide-main {
   position: relative;
   height: 470px;
   padding: 0 100px;
}

.slider-text {
   color: #fff;
   font-size: 32px;
   line-height: 38px;
   font-weight: 500;
   margin-bottom: 25px;
}

.slider-prices li {
   font-size: 18px;
   line-height: 26px;
   text-transform: uppercase;
   color: #149fff;
   letter-spacing: .05em;
}

.slider-prices li span {
   font-size: 25px;
   font-weight: 500;
}

.slider-info {
   width: 100%;
   max-width: 450px;
}

.slider-info-footer {
   margin-top: 55px;
}

.slide-image {
   position: absolute;
   right: 100px;
   bottom: 0;
}

.slider-dots {
   position: absolute;
   width: 100%;
   height: 10px;
   left: 0;
   bottom: 40px;
}

.red-dots {
   bottom: -40px;
}

.slider-dots .owl-dot {
   width: 10px;
   height: 10px;
   border-radius: 100%;
   background-color: rgba(255, 255, 255, .5);
   -webkit-transform: scale(0.9);
   transform: scale(0.9);
   border: none;
   margin: 0 5px;
}

.slider-dots .owl-dot.active {
   -webkit-transform: scale(1);
   transform: scale(1);
   background-color: #149fff;
}

.red-dots .owl-dot.active {
   background-color: #ff3858;
}

/*-------- who-block --------*/

.who-block {
   position: relative;
   color: #fff;
   background: #ff3757 url(../img/who-back.jpg) 100% 100% no-repeat;
}

.who-text {
   font-weight: 500;
   padding-left: 50px;
}

.who-text strong,
.who-text b {
   font-weight: 500;
   font-size: 18px;
}

.head {
   position: relative;
   line-height: 38px;
   margin-bottom: 40px;
}

.head-text {
   font-size: 18px;
   line-height: 26px;
   font-weight: 500;
}

.head-text.small {
   font-size: 15px;
}

.head h2,
.head h1 {
   text-transform: uppercase;
   margin-bottom: 0;
   font-weight: 500;
}

.head h2 .small {
   font-size: .55em;
}

.head-right {
   position: absolute;
   right: 0;
   top: 0;
}

.head-left {
   position: absolute;
   left: 0;
   top: 0;
}

.head-column a {
   color: #ff3757;
   font-size: 13px;
   font-weight: 700;
}

.head-left img {
   margin-right: 15px;
   vertical-align: middle;
}

.head-right img {
   margin-left: 15px;
   vertical-align: middle;
}

.head-column a:hover {
   text-decoration: underline;
}

.head-column .white {
   color: #fff;
}

.who-images {
   position: relative;
   text-align: right;
   /*padding-top: 55px;*/
}

.who-images img {
   margin-bottom: -78px;
}

/*-------- order-form --------*/

.--blue-form {
   background: #91CBEF url(../img/blue-form-back.svg) 50% 50% no-repeat;
}

.--darkblue-form {
   background: #0068D1 url(../img/darkblue-form-back.svg) 50% 50% no-repeat;
}

.order-list {
   margin-top: 20px;
}

.--red-form {
   background: #EF3E59 url(../img/red-form-back.svg) 50% 50% no-repeat;
   color: #fff;
}

.input-text {
   margin-bottom: 20px;
}

/*-------- why --------*/

.why-block {
   background: url(../img/why-image.png) -180px 100% no-repeat, #e4e7e9 url(../img/why-back.svg) 50% 170px no-repeat;
   background-size: auto auto, auto 78%;
}

.why-left {
   background: url(../img/why-back-left.svg) 0 50% no-repeat;
   background-size: auto 90%;
}

.why-kid-back {
   background: url(../img/why-back-kid.svg) -70px 50% no-repeat;
   background-size: auto 90%;
}

.why-learn-back {
   background: url(../img/why-learn-back.jpg) 50% 0 no-repeat;
   background-size: cover;
}

.why-job-back {
   background: url(../img/why-job-back.svg) 0 50% no-repeat;
   background-size: auto 90%;
}

/*.why-main {
	background: url(../img/why-back.svg) 50% 50% no-repeat;
	background-size: auto 100%;
}*/

.why-item {
   margin: 70px 0 60px;
   position: relative;
}

.why-item li {
   position: relative;
   line-height: 22px;
   margin: 0 auto;
}

.why-item li:first-child {
   width: 135px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   text-align: center;
}

.why-item li + li {
   padding-left: 25px;
}

.why-title {
   width: 190px;
   font-size: 18px;
   line-height: 22px;
   text-transform: uppercase;
   font-weight: 700;
   color: #08295c;
   margin-bottom: 10px;
   position: absolute;
   left: 50%;
   bottom: 100%;
   transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
}

.why-title a {
   text-decoration: underline;
}

.why-title.blue {
   color: #0066CC;
}

.why-value {
   font-size: 72px;
   line-height: 60px;
   font-weight: 900;
   background: -webkit-linear-gradient(-51deg, #ff3757, #4f2474 60%, #08295b 100%);
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent;
}

/*-------- news --------*/

.news-slider:not(.owl-loaded) .news-item {
   opacity: 0;
}

.news-item {
   position: relative;
   min-height: 100%;
   transition: opacity 0.2s ease;
}

.news-content {
   padding: 20px 25px 15px;
   position: relative;
   border: 2px solid #EAF0F2;
   border-top: none;
   flex-grow: 1;
   -webkit-flex-grow: 1;
}

.news-tag {
   font-size: 13px;
   font-weight: 500;
   color: #ff3757;
}

.news-image img {
   display: block;
   width: 100%;
}

.news-title {
   flex: 1 0 auto;
   -webkit-flex: 1 0 auto;
   font-size: 17px;
   line-height: 18px;
   font-weight: 700;
   margin: 5px 0 10px;
}

.news-date {
   font-size: 13px;
   font-weight: 500;
}

.news-slider {
   position: relative;
}

.owl-nav button {
   position: absolute;
   width: 46px;
   height: 46px;
   border-radius: 100%;
   background-color: #ff3757;
   color: #fff;
   text-align: center;
   line-height: 46px;
   top: 50%;
   margin-top: -23px;
   border: none;
   cursor: pointer;
   font-size: 24px;
}

.owl-prev {
   left: -23px;
}

.owl-next {
   right: -23px;
}

.owl-nav span {
   display: none;
}

.owl-nav button:after {
   font-family: 'icon', sans-serif;
}

.owl-prev:after {
   content: '\F104';
}

.owl-next:after {
   content: '\F105';
}

.red-arrows .owl-nav button {
   background-color: #fff;
   color: #ff3757;
}

.slider .owl-nav {
   position: absolute;
   max-width: 1344px;
   width: 100%;
   left: 50%;
   top: 50%;
   transform: translateX(-50%);
}

.slider .owl-prev {
   left: 0;
}

.slider .owl-next {
   right: 0;
}

/*-------- advantages --------*/

.advantages {
   position: relative;
   background: #062759 url(../img/advantages-back.jpg) 50% 50% no-repeat;
   background-size: cover;
}

.advantages-main {
   background: url(../img/advantages-back.svg) 50% 50% no-repeat;
   background-size: auto 100%;
}

.advantages-subtitle {
   color: #fff;
   text-transform: uppercase;
   font-size: 18px;
}

.advantages-list {
   padding: 0 70px;
}

.advantages-list li {
   text-align: center;
   color: #fff;
   max-width: 250px;
   width: 100%;
   margin: 40px 40px 0;
}

.advantages-title {
   font-size: 18px;
   font-weight: 500;
   margin-bottom: 15px;
}

.adventages-text {
   line-height: 20px;
}

/*-------- teachers --------*/

.teachers {
   background-color: #ecf0f2;
}

.teachers-slider {
   position: relative;
   margin-top: 45px;
}

.teachers .teachers-slider {
   margin-left: 25px;
   margin-right: 25px;
}

.teachers-item {
   max-width: 416px;
   background-color: #fafbfb;
   position: relative;
   min-height: 100%;
   margin: 0 auto;
   border: 2px solid #e7ecef;
   color: #323232;
   display: block;
}

.teachers-item:hover {
   color: #0066cc;
}

.teachers-image img {
   display: block;
}

.teachers-main {
   padding: 25px 20px 20px;
   position: relative;
   text-align: center;
   background-color: #fafbfb;
}

.teachers-name {
   font-size: 17px;
   font-weight: 700;
   margin-bottom: 5px;
}

.teachers-info {
   font-size: 13px;
   line-height: 15px;
   opacity: .7;
   font-weight: 500;
}

.teachers-popup {
   display: none;
}

.teachers-popup-content {
   position: relative;
   padding: 45px;
}

.teachers-popup-image {
   max-width: 270px;
   text-align: center;
}

.teachers-popup-image .teachers-image {
   border-radius: 3px;
   overflow: hidden;
}

.teachers-popup-image .teachers-name {
   padding-top: 20px;
   margin-top: 30px;
   border-top: 1px solid #B3BABC;
}

.teachers-popup-text {
   max-width: 345px;
   margin-left: 65px;
}

.teachers-popup-list li {
   font-weight: 500;
}

.teachers-popup-list li span {
   color: #0060c2;
   font-weight: 900;
}

.teachers-popup-list li:last-child {
   margin-top: 20px;
}

/*-------- reviews --------*/

.reviews {
   position: relative;
   background: url(../img/reviews-back.svg) 50% 50% no-repeat, -webkit-linear-gradient(left, #ecf0f2 50%, #0060c2 50%);
   background: url(../img/reviews-back.svg) 50% 50% no-repeat, linear-gradient(to right, #ecf0f2 50%, #0060c2 50%);
   background-size: auto 90%;
}

.reviews-single {
   background: url(../img/reviews-back2.svg) 50% 50% no-repeat;
   background-size: auto 90%;
}

.reviews-slider,
.reviews-single-slider {
   position: relative;
   margin-top: 60px;
}

.reviews-single-slider {
   max-width: 635px;
}

.reviews-item {
   min-height: 360px;
   padding: 60px 75px 30px;
   position: relative;
   background-color: #f5f7f8;
   border-radius: 3px;
   transition: background-color 0.2s ease, color 0.2s ease;
}

.reviews-link {
   color: #FF3757;
   margin-top: 20px;
   word-break: break-word;
}

.reviews-link img {
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   margin-right: 30px;
}

.reviews-item:after {
   content: '\E80A';
   position: absolute;
   left: 30px;
   top: 50px;
   font-family: 'icon', sans-serif;;
   color: #ff3757;
   font-size: 30px;
}

.reviews-main {
   flex-grow: 1;
   -webkit-flex-grow: 1;
   margin-bottom: 30px;
}

.reviews-name {
   font-size: 18px;
   font-weight: 700;
   margin-bottom: 15px;
}

.reviews-text {
   font-weight: 500;
}

.reviews-slider .owl-item.active + .owl-item.active .reviews-item {
   background-color: #1a76d1;
   color: #fff;
}

.reviews-slider .owl-item.active + .owl-item.active .reviews-link {
   color: #d5d5d5;
}

.reviews-bottom {
   border-top: 2px solid #D0DBE1;
}

.reviews-bottom li {
   margin-top: 20px;
   position: relative;
   padding-left: 40px;
   line-height: 18px;
   font-size: 12px;
   font-weight: 500;
}

.reviews-bottom li .icon {
   position: absolute;
   left: 0;
   top: 5px;
   font-size: 26px;
   line-height: 26px;
   color: #b4c4ce;
}

.reviews-bottom li strong {
   display: block;
   text-transform: uppercase;
   font-weight: 900;
}

.reviews-bottom li strong span {
   font-size: 24px;
}

/*-------- switch --------*/

.switch-block {
   position: relative;
}

.switch-item {
   font-size: 15px;
   font-weight: 500;
   color: #ff3757;
   transition: color 0.2s ease;
}

.switch-item.active {
   color: #333;
}

.switch-line {
   margin: 0 20px;
}

.switch {
   width: 40px;
   height: 10px;
   border-radius: 5px;
   position: relative;
   cursor: pointer;
   background-color: #ff4a67;
}

.switch:after {
   content: '';
   width: 22px;
   height: 22px;
   border-radius: 100%;
   background-color: #fff;
   box-shadow: 0 2px 7px rgba(0, 0, 0, .2);
   position: absolute;
   top: -7px;
   margin-left: -11px;
   left: 0;
   transition: left 0.2s ease;
}

.--map:after {
   left: 100%;
}

.switch-tab {
   display: none;
   padding-top: 20px;
}

.switch-tab.active {
   display: block;
}

.map-block {
   height: 500px;
   background-color: #f2f2f2;
   position: relative;
}

.schools-slider {
   position: relative;
}

.schools-item {
   border: 1px solid #EAF0F2;
   border-radius: 3px;
   padding: 35px 40px;
   min-height: 100%;
   position: relative;
}

.info-title {
   color: #999;
   font-weight: 500;
   line-height: 20px;
   font-size: 12px;
}

.info-title.red {
   font-size: 13px;
   color: #ff3757;
}

.schools-info li {
   margin-top: 10px;
   line-height: 20px;
}

.schools-address {
   color: #0066cc;
   font-size: 17px;
   line-height: 18px;
   font-weight: 700;
   margin-bottom: 15px;
}

.seo-text {
	padding: 20px 0 50px;
}
.seo-text h2,
.seo-text h1 {
	margin: 15px 0;
}
.seo-text p {
	margin-bottom: 5px;
}

table.price {
	width: 100%;
}
table.price tr:nth-child(odd) {
	background-color: rgba(153, 204, 255, 0.2);
}
table.price tr td {
	border: 1px solid #D0DBE1;
	padding: 15px 10px;
	line-height: 20px;
}


/*-------- footer --------*/

.footer {
   flex: 0 0 auto;
   -webkit-flex: 0 0 auto;
   position: relative;
   color: #fff;
   line-height: 20px;
   background: #0F2046 url(../img/footer.svg) 50% 50% no-repeat;
}

.footer:before {
   content: '';
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   bottom: 10px;
   background-color: rgba(12, 36, 88, 0.97);
}

.footer-main {
   position: relative;
   padding: 60px 0 148px;
   z-index: 2;
}

.footer-title {
   font-weight: 900;
   color: #7db3d8;
   margin-bottom: 13px;
}

.subscribe-form {
   position: relative;
   margin-bottom: 25px;
}

.subscribe-input {
   border-radius: 22px;
   padding: 0 20px;
   background-color: #E3EBEE;
}

.subscribe-button {
   border: none;
   background-color: transparent;
   position: absolute;
   right: 15px;
   top: 13px;
   cursor: pointer;
   font-size: 18px;
}

.footer-menu-list,
.footer-contacts {
   margin-bottom: 25px;
}

.footer-menu-list li {
   margin-bottom: 10px;
   padding-right: 20px;
}

.footer a:not([class]) {
   color: #fff;
}

.footer a:not([class]):hover {
   text-decoration: underline;
}

.footer-contacts li {
   position: relative;
   margin-bottom: 10px;
}

.footer-contacts li .icon {
   position: absolute;
   left: -30px;
   top: 0;
}

.footer-contacts .header-phone {
   font-size: 18px;
}

.recall {
   font-size: 13px;
   font-weight: 500;
   color: #90ccf0;
   transition: color 0.2s ease;
}

.recall:hover {
   color: #fff;
}

.social-list li {
   margin: 0 10px 15px 0;
   display: inline-block;
   vertical-align: top;
}

.social-list span {
   font-size: 15px;
   line-height: 18px;
   padding: 4px 0;
   font-weight: 900;
   display: block;
}

.social-item {
   display: block;
   border-radius: 100%;
   width: 44px;
   height: 44px;
   text-align: center;
   line-height: 44px;
   color: #fff;
   background-color: #ff3757;
   font-size: 20px;
   transition: background-color 0.2s ease;
}

.social-item:hover {
   background-color: #FF5F79;
}

.up {
   width: 44px;
   height: 44px;
   border-radius: 100%;
   position: absolute;
   right: 0;
   top: -55px;
   cursor: pointer;
   border: none;
   text-align: center;
   line-height: 44px;
   color: #fff;
   background-color: #0066cc;
   font-size: 17px;
}

/*-------- modal --------*/

.modal {
   position: fixed;
   display: flex;
   align-items: center;
   flex-direction: column;
   justify-content: space-between;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   /*background-color: rgba(37,37,37,.5);*/
   background-color: rgba(0, 0, 0, .5);
   overflow-y: auto;
   opacity: 0;
   visibility: hidden;
   pointer-events: none;
   cursor: default;
   padding: 0 20px;
   z-index: 1000;
}

.modal:after,
.modal:before {
   content: '';
   width: 100%;
   display: block;
   height: 16px;
   flex-shrink: 0;
}

.modal.show-modal {
   opacity: 1;
   visibility: visible;
   pointer-events: all;
}

.modal-main {
   background-color: #fff;
   width: 100%;
   max-width: 560px;
   position: relative;
   opacity: 0;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   transition: opacity .3s ease;
}

.modal-classic {
   padding: 20px 40px 30px;
   max-width: 800px;
}

.modal.show-modal .modal-main {
   opacity: 1;
}

.modal-back {
   background: url(../img/modal-back.jpg) 50% 0 no-repeat;
   background-size: cover;
}

.modal-content {
   padding: 50px 60px;
   position: relative;
}

.modal-close {
   cursor: pointer;
   font-size: 28px;
}

.modal-title h2 {
   margin-bottom: 0;
}

.modal-title {
   margin-bottom: 45px;
}

.black-link {
   color: #333232;
   font-size: 13px;
   font-weight: 700;
}

.modal-footer {
   padding: 50px 60px;
   position: relative;
   background-color: #fff;
}

.modal-footer-zag {
   background: #fff url(../img/modal-zag.jpg) 50% 50% no-repeat;
   background-size: cover;
}

.modal-footer-blue {
   background: #fff url(../img/modal-blue.jpg) 50% 50% no-repeat;
   background-size: cover;
}

.modal-footer-red {
   background: #fff url(../img/modal-red.jpg) 50% 50% no-repeat;
   background-size: cover;
}

.modal-footer-dark-blue {
   background: #fff url(../img/modal-dark-blue.jpg) 50% 50% no-repeat;
   background-size: cover;
}

.modal-info {
   color: #999;
   font-size: 13px;
   line-height: 18px;
   margin-top: 25px;
   font-weight: 500;
}

.modal-content-footer {
   padding-top: 100px;
}

[class^='-ground-pane'],
[class*='-ground-pane'] {
   -webkit-filter: grayscale(100%);
   filter: grayscale(100%);
}

/*-------- course --------*/

.course-description {
   margin-bottom: 50px;
   font-weight: 500;
}

.course-description p {
   margin-bottom: 10px;
}

.course-description strong,
.course-description b {
   font-weight: 900;
}

.course-info {
   position: relative;
   background: #112753 50% 0;
   color: #fff;
   background-size: cover;
}

.course-back {
   background-image: url(../img/course-back.jpg);
}

.course-international-back {
   background-image: url(../img/course-international-back.jpg);
}

.course-children-back {
   background-image: url(../img/course-children-back.jpg);
}

.course-intensive-back {
   background-image: url(../img/course-intensive-back.jpg);
}

.course-corporate-back {
   background-image: url(../img/course-corporate-back.jpg);
}

.english-begin-back {
   background-image: url(../img/english-begin-back.jpg);
}

.course-container {
   width: 100%;
   min-height: 470px;
   position: relative;
   padding: 40px 100px;
}

.course-title {
   max-width: 520px;
}

.course-name {
   font-size: 40px;
   line-height: 38px;
   font-weight: 500;
}

.course-icon {
   margin-bottom: 25px
}

.course-info-image {
   margin-bottom: -40px;
   align-self: flex-end;
   -webkit-align-self: flex-end;
}

.course-info-image img {
   display: block;
}

.course-standard {
   width: 286px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   background-color: #0060c2;
   border-radius: 3px 3px 0 0;
   border-top: 2px solid #ff3757;
   padding: 40px 20px 0;
   margin-bottom: 50px;
   position: relative;
}

.course-standard:after {
   content: '';
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 50px 143px 0 143px;
   border-color: #0060c2 transparent transparent transparent;
   position: absolute;
   top: 100%;
   left: 0;
}

.standard-list li {
   position: relative;
   padding-left: 40px;
   margin-bottom: 15px;
}

.standard-list li .icon {
   position: absolute;
   left: 0;
   top: 25px;
   color: #90ccf0;
   font-size: 20px;
}

.standard-list-info {
   font-size: 13px;
   text-transform: uppercase;
}

.standard-list-text {
   font-size: 16px;
   font-weight: 500;
   text-transform: uppercase;
}

.standard-list-text.small {
   font-size: 13px;
   font-weight: bold;
}

/*-------- breadcrumbs --------*/

.breadcrumbs {
   margin-bottom: 25px;
}

.breadcrumbs li {
   color: #ff3757;
   font-size: 13px;
   line-height: 20px;
   font-weight: 500;
   margin-right: 10px;
   white-space: nowrap;
}

.breadcrumbs li a {
   color: #babfc1;
}

.breadcrumbs li a:hover {
   text-decoration: underline;
}

.breadcrumbs li + li:before {
   content: '\203A';
   margin-right: 10px;
   color: #babfc1;
}

/*-------- sidebar-menu --------*/

.sidebar-menu-block {
   margin-bottom: 30px;
}

.sidebar-menu-head {
   border-radius: 2px;
   overflow: hidden;
}

.sidebar-menu-title {
   font-size: 15px;
   line-height: 20px;
   font-weight: 900;
   color: #fff;
   background-color: #FD3051;
   text-transform: uppercase;
   padding: 20px 40px 20px 25px;
   width: 100%;
   position: relative;
   cursor: pointer;
}

.sidebar-menu-title:after {
   content: '\f004';
   font-family: 'icon', sans-serif;
   position: absolute;
   right: 25px;
   font-size: 16px;
   top: 20px;
   font-weight: normal;
}

.sidebar-menu-flag {
   width: 76px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   background-color: #102651;
}

.sidebar-menu > li {
   padding: 20px 25px;
   line-height: 14px;
   font-size: 15px;
   font-weight: 500;
}

.sidebar-menu > li a {
   color: #323232;
   transition: color 0.2s ease;
}

.sidebar-menu > li a:hover,
.sidebar-menu > li.active > a {
   color: #ff3757;
}

.sidebar-menu > li.active {
   font-weight: bold;
}

.sidebar-menu > li {
   border-bottom: 2px solid #d5dfe5;
}

.sidebar-menu > li:last-child {
   border: none;
}

.sidebar-menu > li.active {
   background-color: #D0DBE1;
   border-radius: 2px;
}

.sidebar-menu ul {
   padding-top: 10px;
}

.sidebar-menu ul li {
   margin-top: 10px;
   font-size: 13px;
}

.sidebar-menu._show {
   display: block;
}

.sidebar-submenu > li > a {
   display: block;
   font-size: 15px;
   color: #9fb2be;
   font-weight: bold;
   background-color: #e3e9ec;
   padding: 20px 25px;
   line-height: 20px;
   text-transform: uppercase;
}

.sidebar-submenu > li.active > a {
   background-color: #ff3757;
   color: #fff;
}

.sidebar-submenu > li > ul li:not(:first-child) {
   border-top: 2px solid #D0DBE1;
}

.sidebar-submenu > li > ul li a {
   display: flex;
   display: -webkit-flex;
   align-items: center;
   -webkit-align-items: center;
   line-height: 14px;
   padding: 20px 25px;
   color: #000;
   font-weight: 500;
}

.sidebar-submenu > li > ul li.active a {
   background-color: #d5dfe5;
   color: #ff3757;
}

.sidebar-submenu > li > ul li a:hover {
   color: #ff3757;
}

.sidebar-submenu > li > ul li a span:first-child {
   font-size: 15px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   width: 60px;
   font-weight: 500;
}

.sidebar-submenu > li > ul li a span + span {
   font-size: 12px;
   line-height: 12px;
   font-weight: bold;
}

.page-sidebar-submenu > li > a {
   background-color: transparent;
   color: #323232;
}

.page-sidebar-submenu > li:not(:first-child) {
   border-top: 2px solid #D0DBE1;
}

.page-sidebar-submenu > li.active > a {
   background-color: #D0DBE1;
   color: #ff3757;
}

/*-------- group-list --------*/

.group-list {
   margin-bottom: 20px;
   white-space: nowrap;
}

@media (min-width: 541px) {
   .group-list li {
      margin-right: 18px;
      padding-right: 18px;
      border-right: 2px solid #d5dfe5;
   }

   .group-list {
      padding-bottom: 30px;
      border-bottom: 2px solid #d5dfe5;
   }
}

.group-list li span {
   font-size: 18px;
   font-weight: 700;
   color: #c7cbcd;
   padding: 10px 0;
   display: block;
   border-bottom: 4px solid transparent;
   text-transform: uppercase;
   cursor: pointer;
}

.group-list li.active span {
   color: #ff3757;
   border-bottom-color: #ff3757;
   cursor: default;
}

.group-list.--blue li.active span,
.happy-list li.active:last-child span {
   color: #0066cc;
   border-bottom-color: #0066cc;
}

/*-------- schedule-card --------*/

.schedule-card {
   background-color: #f5f7f8;
   border: 2px solid #E1E7EC;
   padding: 7px 20px 7px 0;
   margin-bottom: 20px;
   color: #333;
}

.schedule-options-card {
   margin-bottom: -2px;
}

.card-icon {
   width: 86px;
   height: 64px;
   background: url(../img/card-back.svg) no-repeat;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   margin-left: -3px;
}

.card-icon img {
   max-width: none;
}

.card-red-icon {
   background: url(../img/card-back-red.svg) no-repeat;
}

.card-icon-blue {
   background: url(../img/card-back-blue.svg) no-repeat;
}

.card-name {
   text-transform: uppercase;
   color: #0060c2;
   font-size: 18px;
   font-weight: 900;
}

.schedule-title {
   width: 230px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   padding-left: 30px;
}

.schedule-title-info {
   font-size: 12px;
   line-height: 14px;
   font-weight: 700;
}

.schedule-title-info span {
   font-weight: 900;
   text-transform: uppercase;
   display: block;
   margin: -3px 0 5px;
}

.schedule-time {
   line-height: 20px;
   font-weight: 500;
   padding-left: 32px;
   position: relative;
   width: 220px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
}

.schedule-time:before {
   content: '\e80f';
   font-family: 'icon', sans-serif;
   position: absolute;
   left: 0;
   top: 0;
   font-size: 20px;
   color: #b4c4ce;
}

.card-price {
   font-size: 18px;
   font-weight: 700;
   text-transform: uppercase;
   white-space: nowrap;
}

.schedule-card .card-price {
   width: 155px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
}

.old-price {
   font-size: 13px;
   line-height: 14px;
   font-weight: normal;
   color: #323232;
}

.card-price span {
   font-weight: 500;
}

.schedule-options-list {
   margin: 10px 0;
}

.schedule-options {
   flex-grow: 1;
   -webkit-flex-grow: 1;
}

.schedule-options-name {
   width: 290px;
   position: relative;
   font-size: 18px;
   font-weight: 500;
   padding-left: 35px;
   white-space: nowrap;
}

.schedule-options-name:before {
   content: '\e810';
   font-family: 'icon', sans-serif;
   position: absolute;
   left: 0;
   top: -4px;
   color: #b4c4ce;
   font-size: 27px;
   line-height: 30px;
}

.schedule-options-name span {
   font-size: 15px;
}

.schedule-button:hover {
   border-color: #FD3051;
   background-color: #FD3051;
   color: #fff;
}

.schedule-button + .schedule-button {
   margin-left: 20px;
}

.schedule-options-card .card-name {
   text-transform: none;
   font-size: 15px;
}

.schedule-level-text li {
   font-size: 15px;
   font-weight: 500;
   color: #c7cbcd;
   margin: 5px 0 30px;
}

.schedule-level-text li:first-child {
   width: 35%;
}

/*-------- books-block --------*/

.books-block {
   color: #fff;
   background: #90ccf0 url(../img/books-back.jpg) calc(50% - 100px) 100% no-repeat;
}

@media (max-width: 1345px) {
   .books-block {
      background-image: none !important;
   }
}

.books-kid-block {
   background-image: url(../img/books-kids-back.jpg);
}

.books-teenage-block {
   background-image: url(../img/books-teenage-block.jpg);
}

.books-children-block {
   background-color: #90ccf0;
   background-image: url(../img/books-children-back.jpg);
}

.border-block {
   border: 2px solid #e1e8ec;
   padding: 45px 60px;
   position: relative;
   font-weight: 600;
}

.books-text-list li {
   font-size: 15px;
   margin-bottom: 20px;
   text-transform: uppercase;
   padding-left: 40px;
   position: relative;
}

.books-text-list li:before,
.books-text-info:before {
   content: '\2015';
   position: absolute;
   left: 0;
   top: 0;
}

.books-text-list li span {
   font-size: 18px;
   font-weight: 900;
}

.books-text-info {
   color: #747e86;
   position: relative;
   padding-left: 40px;
   position: relative;
}

.books-text-info:before {
   content: '*';
}

/*-------- video-classes --------*/

.video-classes {
   background: #0A1E44 url(../img/video-classes-back.jpg) 50% 50% no-repeat;
   background-size: cover;
}

.video-kid-classes {
   background-image: url(../img/video-kid-classes-back.jpg);
   background-position: 50% 0;
}

.video-slider {
   position: relative;
   max-width: 636px;
   border: 2px solid #fff;
   border-radius: 3px;
}

.video-slide iframe {
   display: block;
}

/*-------- question --------*/

.question {
   background: #fff url(../img/question-back.jpg) -65px 50% no-repeat;
}

.question-image {
   width: 160px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   margin: 0 70px 35px 0;
}

.question-text {
   margin: 15px 0 40px;
}

.question-name {
   font-size: 16px;
   font-weight: 700;
   margin-top: 10px;
}

.question-email {
   font-size: 12px;
}

.question-info {
   font-size: 12px;
   line-height: 18px;
   font-weight: 500;
   opacity: .7;
}

/*-------- faq --------*/

.faq-item {
   position: relative;
   transition: all 0.2s ease;
   border: 2px solid #DEE5E9;
   border-radius: 3px;
   margin-bottom: -2px;
}

.faq-title {
   line-height: 30px;
   padding: 25px 30px;
   font-size: 18px;
   font-weight: 700;
   cursor: pointer;
   position: relative;
   transition: color 0.2s ease;
}

.faq-title:after,
.course-footer:after {
   content: '\f107';
   width: 30px;
   height: 30px;
   border-radius: 50%;
   border: 1px solid #FD3051;
   text-align: center;
   line-height: 28px;
   color: #FD3051;
   font-family: 'icon', sans-serif;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   transition: all 0.2s ease;
}

.faq-content {
   padding: 0 30px 20px;
   font-weight: 500;
   display: none;
}

.faq-item:not(.active):hover {
   box-shadow: 3px 3px 20px rgba(10, 21, 44, .12);
   z-index: 2;
}

.faq-item:not(.active):hover .faq-title {
   color: #FD3051;
}

.faq-item:not(.active):hover .faq-title:after {
   background-color: #FD3051;
   color: #fff;
}

.faq-item.active .faq-title:after {
   transform: rotate(-180deg);
   -webkit-transform: rotate(-180deg);
}

.faq-drop {
   margin: 40px 0 0 35px;
}

.faq-drop span {
   position: relative;
   font-weight: 900;
   line-height: 22px;
   color: #ff3757;
   cursor: pointer;
   display: flex;
   font-size: 13px;
}

.faq-drop span:before {
   content: '\f107';
   width: 22px;
   height: 22px;
   border-radius: 50%;
   border: 1px solid #ff3757;
   text-align: center;
   line-height: 20px;
   color: #FD3051;
   font-size: 15px;
   font-family: 'icon', sans-serif;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   margin-right: 15px;
   transition: all 0.2s ease;
}

/*-------- programm-course --------*/

.programm-course {
   background: #ecf0f2 url(../img/programm-course-back.svg) -180px 50% no-repeat;
}

.programm-blue-course {
   background: #90ccf0 url(../img/programm-blue-course-back.jpg) -180px 50% no-repeat;
}

.course-item {
   position: relative;
   background-color: #f7f8f9;
   border: 2px solid #e1e8ec;
   border-top: 4px solid #FD3051;
   min-height: 425px;
   margin-bottom: 35px;
   height: calc(100% - 35px);
}

.course-header {
   margin-top: 20px;
}

.course-header .card-name {
   width: 100%;
   text-align: center;
}

.course-content {
   /*padding: 25px 35px;*/
   padding: 25px 30px;
   position: relative;
   font-weight: 500;
   text-transform: uppercase;
}

.course-kid-content {
   background-color: #d5dfe5;
   margin-top: 30px;
}

.course-kid-text {
   line-height: 18px;
   font-weight: normal;
}

.course-item-title {
   font-size: 13px;
   line-height: 14px;
}

.course-list li {
   margin-top: 7px;
   padding-left: 33px;
}

.course-list li .icon {
   color: #b4c4ce;
   top: 0;
}

.course-footer {
   background-color: #D0DBE1;
   padding: 25px 45px 25px 35px;
   font-size: 12px;
   line-height: 15px;
   font-weight: 500;
   min-height: 160px;
   position: relative;
   cursor: pointer;
}

.course-footer:after {
   content: '\f107';
   width: 22px;
   height: 22px;
   line-height: 20px;
   position: absolute;
   right: 15px;
   top: 25px;
}

.course-item.detail {
   z-index: 2;
}

.course-footer.--full,
.course-item.detail .course-footer {
   display: none;
}

.course-item.detail .course-footer.--full {
   display: block;
}

.course-kid-images {
   margin-top: 15px;
}

/*-------- schema --------*/

.schema {
   background: #174898 url(../img/schema-back.jpg) 50% 0 no-repeat;
   background-size: cover;
}

.schema-back2 {
   background: #174898 url(../img/schema-back2.jpg);
   background-size: cover;
}

.schema-back3 {
   background: #174898 url(../img/schema-red-back.jpg);
   background-size: cover;
}

.schema-back4 {
   background: #174898 url(../img/schema-back4.jpg);
   background-size: cover;
}

.schema-back5 {
   background: #174898 url(../img/schema-back5.jpg);
   background-size: cover;
}

.schema-step-back {
   background: #174898 url(../img/schema-step-back.jpg);
   background-size: cover;
}

.format {
   background-color: #3B6BA7;
}

.format.is-tab-0 {
   background: #3B6BA7 url(../img/format-back-blue.jpg);
   background-size: cover;
}

.format.is-tab-1 {
   background: #F94E69 url(../img/format-back-red.jpg);
   background-size: cover;
}

.schema-item {
   width: 80%;
   position: relative;
   color: #fff;
   min-height: 100px;
   padding-left: 165px;
}

.schema-item-full {
   width: 100%
}

.schema-item-offset {
   margin-left: -165px;
   margin-bottom: -20px;
   padding-top: 90px;
}

.schema-item:not(:last-child) {
   padding-bottom: 32px;
   margin-bottom: 30px;
}

.schema-item:not(:last-child):before {
   content: '';
   position: absolute;
   left: 40px;
   right: 0;
   height: 2px;
   background-color: #e6edf0;
   bottom: 0;
}

.schema-title {
   font-size: 18px;
   font-weight: 500;
}

.schema-text {
   margin-top: 12px;
   line-height: 20px;
}

.schema-value {
   font-size: 30px;
   background: url(../img/card-back-opacity.svg) no-repeat;
   width: 86px;
   height: 64px;
   position: absolute;
   left: 0;
   top: 0;
}

.schema-list {
   margin-bottom: 80px;
}

.schema-list li {
   line-height: 50px;
   color: #6da2dc;
   font-size: 18px;
   font-weight: bold;
   text-transform: uppercase;
   cursor: pointer;
}

.schema-list li.active {
   color: #D0DBE1;
   text-decoration: underline;
}

@media (min-width: 600px) {
   .schema-list li+li {
      margin-left: 20px;
      padding-left: 20px;
      border-left: 2px solid #D0DBE1;
   }
}

.modal-title-name {
   font-size: 20px;
   color: #a7a9ab;
   font-weight: 500;
}

.modal-title-name h2 {
   font-size: 30px;
   font-weight: 700;
   color: #0060c2;
   text-transform: uppercase;
}

/*-------- course-adventages --------*/

.course-adventages-block {
   padding-top: 30px;
}

.course-adventages {
   margin-top: 50px;
   position: relative;
}

.course-adventages-text {
   margin-top: 20px;
   font-size: 15px;
   line-height: 20px;
   font-weight: 500;
}

.course-adventages-image {
   height: 77px;
   margin-bottom: 20px;
}

.course-adventages-back img {
   max-width: none;
   display: block;
   margin-bottom: -45px;
}

/*-------- modules --------*/

.modules {
   background: #F4294A url(../img/modules-back.jpg) 50% 0 no-repeat;
   background-size: cover;
   color: #fff;
}

.modules-intensive-back {
   background-image: url(../img/modules-intensive-back.jpg);
}

.module-item {
   position: relative;
   margin-top: 75px;
}

.modules-image {
   margin-bottom: 15px;
}

.modules-title {
   margin-bottom: 20px;
   font-size: 18px;
   text-transform: uppercase;
   white-space: nowrap;
}

.modules-title strong {
   display: block;
   font-weight: 700;
}

/*-------- international --------*/

.international-block {
   background: #90ccf0 url(../img/international-back.svg) -20% 50% no-repeat;
   background-size: auto 90%;
}

.international-item {
   min-height: calc(100% - 30px);
   height: auto;
}

.course-red-item {
   background-color: #d5dfe5;
}

.international-content {
   height: 215px;
   background-color: #d5dfe5;
   margin-top: 35px;
}

.course-red-item .international-content {
   background-color: #ff3757;
   color: #fff;
}

.course-red-item .card-name {
   color: #ff3757;
}

.international-list li {
   font-size: 26px;
   line-height: 32px;
   font-weight: 500;
}

.international-list li span {
   font-size: 15px;
}

.international-footer {
   font-size: 12px;
   line-height: 15px;
   padding: 20px 35px;
}

.international-item .card-name {
   text-align: left;
   padding-left: 25px;
}

/*-------- structure --------*/

.structure {
   background: url(../img/structure-back.svg) 0 100% no-repeat;
}

.structure-main {
   position: relative;
}

@media (min-width: 1024px) {
   .structure-main:after {
      content: '';
      width: 520px;
      height: 284px;
      position: absolute;
      right: -42px;
      top: -108px;
      background: url(../img/hat.png) no-repeat;
      pointer-events: none;
   }
}

/*-------- ticket --------*/

.ticket-item {
   position: relative;
   margin-bottom: 45px;
   background-color: #d5dfe5;
   height: 110px;
   border: 2px solid #d2dce1;
   border-radius: 3px;
   border-top-width: 4px;
   border-top-color: #ff3e5d;
   padding: 10px 42px 10px 115px;
}

.ticket-item-blue {
   border-top-color: #0066cc;
}

.ticket-item-gradient {
   border-image-slice: 1;
   border-width: 4px 0 0 0;
   border-image: linear-gradient(to left, #08295b 1%, #4f2474 30%, #f93658 100%) 100% 0 100% 0;
}

.ticket-long {
   padding-left: 220px;
}

.ticket-item-middle {
   padding-left: 140px;
}

.ticket-item:after {
   content: '\f105';
   position: absolute;
   width: 22px;
   height: 22px;
   border-radius: 50%;
   border: 1px solid #ff3e5d;
   text-align: center;
   line-height: 20px;
   color: #ff3e5d;
   right: 15px;
   top: 50%;
   margin-top: -11px;
   font-size: 16px;
   font-family: 'icon', sans-serif;
}

.ticket-item-text {
   position: relative;
   font-size: 15px;
   text-transform: uppercase;
   color: #07295b;
   line-height: 18px;
   font-weight: 900;
   /*white-space: nowrap;*/
}

.ticket-item-text i {
   font-style: normal;
}

.ticket-item-text strong,
.ticket-item-text b {
   font-size: 18px;
   line-height: 20px;
   font-weight: 900;
}

.ticket-item-text span {
   font-size: 18px;
   font-weight: 700;
   color: #0066cc;
   line-height: 20px;
   display: block;
}

.ticket-item-image {
   position: absolute;
   left: 0;
   bottom: 0;
}

.ticket-item-image img {
   display: block;
}

.tab-ticket {
   cursor: pointer;
}

.ticket-item.active {
   background-color: #ff3e5d;
   border-top-color: #07295b;
}

.ticket-item.active:after {
   background-color: #fff;
   border-color: #fff;
   transform: rotate(90deg);
}

.active .ticket-item-text {
   color: #d5dfe5;
}

.active .ticket-item-text span {
   color: #fff;
}

.page404 .map-columns li {
   margin-right: 30px;
}

@media (min-width: 1345px) {
   .children-back {
      background: url(../img/children-back.jpg) 0 100% no-repeat;
   }

   .fan-back {
      background: url(../img/fan-back.jpg) -30px 50% no-repeat;
   }

   .teenage-back {
      background: url(../img/teenage-back.jpg) -50px 100% no-repeat;
   }

   .kid-back {
      background: url(../img/kid-back.jpg) -50px 100% no-repeat;
   }

   .intensive-back {
      background: url(../img/intensive-back.svg) 0 100% no-repeat;
   }
}

.ticket-step {
   position: relative;
   min-height: calc(100% - 30px);
   margin-top: 30px;
}

.ticket-step-top {
   position: relative;
   padding: 10px 40px 10px 120px;
   border-top: 4px solid #FA2A4C;
   height: 108px;
   background-color: #F6F7F8;
}

.ticket-step-active .ticket-step-top {
   background-color: #FA2A4C;
   border-top-color: #142348;
}

.ticket-step-active .ticket-item-text {
   color: #fff;
}

.ticket-item-text {
   font-size: 16px;
   line-height: 18px;
}

.ticket-step-footer {
   background-color: #CBD7DD;
   position: relative;
   padding: 15px 75px 15px 20px;
   font-size: 12px;
   line-height: 18px;
   color: #333;
   flex-grow: 1;
}

.ticket-step-footer:after {
   content: '\f107';
   width: 22px;
   height: 22px;
   border-radius: 50%;
   border: 1px solid #FD3051;
   text-align: center;
   line-height: 20px;
   color: #FD3051;
   font-family: 'icon', sans-serif;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   position: absolute;
   font-size: 16px;
   right: 20px;
   top: 20px
}

/*-------- contacts --------*/

.contacts {
   border-top: 2px solid #d5dfe5;
   border-bottom: 2px solid #d5dfe5;
   padding: 35px 0;
   margin-top: 30px;
   margin-bottom: 30px;
}

.contact-item {
   position: relative;
   padding-left: 60px;
   margin: 40px 0;
   line-height: 20px;
   font-weight: 500;
}

.contact-item:before {
   position: absolute;
   left: 0;
   top: 0;
   color: #b4c4ce;
   font-size: 30px;
   line-height: 30px;
   font-family: 'icon', sans-serif;
}

.--admin:before {
   content: '\e816';
}

.--method:before {
   content: '\e815';
}

.--corporate:before {
   content: '\e814';
}

.--marketing:before {
   content: '\e813';
}

.contact-item-phone {
   font-size: 18px;
   font-weight: 900;
   color: #0066cc;
}

/*-------- documents --------*/

.documents li {
   margin-bottom: 30px;
}

.documents .icon {
   font-size: 36px;
   color: #b4c4ce;
   width: 30px;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   margin-right: 30px
}

/*-------- demo-order --------*/

.demo-order {
   position: relative;
   padding-top: 50px;
   color: #08295c;
   display: none;
}

@media (min-width: 1345px) {
   .demo-order:before {
      content: '';
      position: absolute;
      left: 0;
      bottom: -70px;
      width: 321px;
      height: 463px;
      background: url(../img/demo-order-back.png) 0 100% no-repeat;
   }
}

.demo-order-list li {
   margin-top: 20px;
   font-size: 15px;
   line-height: 20px;
   font-weight: 500;
   letter-spacing: .05em;
}

.demo-order-list li span {
   font-size: 15px;
}

.demo-order-title {
   font-size: 18px;
   font-weight: 900;
}

.demo-order-link {
   border-bottom: 2px solid currentColor;
   cursor: pointer;
   transition: all 0.2s ease;
}

.demo-order-link-icon {
   width: 22px;
   height: 22px;
   border-radius: 50%;
   border: 2px solid #08295b;
   display: inline-block;
   vertical-align: middle;
   margin-left: 10px;
   text-align: center;
   line-height: 20px;
   font-weight: normal;
   font-size: 16px;
   position: relative;
   transition: all 0.2s ease;
}

._show .demo-order {
   display: block;
}

._show .demo-order-link {
   color: #0066cc;
}

._show .demo-order-link-icon {
   border-color: #0066cc;
   background-color: #0066cc;
   color: #fff;
   transform: rotate(-180deg);
   -webkit-transform: rotate(-180deg);
}

/*-------- easy-back --------*/

.easy-back {
   background: url(../img/easy-back.svg) 0 50% no-repeat;
   background-size: auto 90%;
}

/*-------- loyalty --------*/

.loyalty {
   font-size: 15px;
   line-height: 26px;
   font-weight: 500;
}

.loyalty-title {
   font-size: 18px;
}

.loyalty-left {
   width: 45%;
   padding: 0 30px;
}

.loyalty-right {
   width: 50%;
}

.loyalty-card {
   position: relative;
   padding-bottom: 100%;
   margin-bottom: 30px;
   background: #ecf0f2 url(../img/why-icon17.svg) 50% 50% no-repeat;
   background-size: 70% auto;
   border: 2px solid #e1e8ec;
   border-radius: 3px;
}

.loyalty-info {
   border-top: 1px solid #B3BABC;
   padding-top: 20px;
   font-size: 18px;
   line-height: 24px;
   font-weight: 500;
}

.loyalty-info span {
   display: block;
   font-weight: 700;
}

/*-------- clients --------*/

.clients {
   background: #dbe6ee url(../img/tie.svg) 70px 0 no-repeat;
   background-size: auto 90%;
}

.clients-more {
   font-size: 18px;
   font-weight: 900;
   text-transform: uppercase;
}

.client-logo {
   text-align: center;
   margin-top: 20px;
   margin-bottom: 20px;
   filter: grayscale(100%);
   opacity: .8;
   transition: all 0.2s ease;
}

.client-logo:hover {
   filter: grayscale(0%);
   opacity: 1;
}

.client-logos {
   padding-top: 30px;
   padding-bottom: 30px;
}

/*-------- steps --------*/

.steps {
   background: #162650 url(../img/steps-back.jpg) 50% 50% no-repeat;
   background-size: cover;
}

.steps-item {
   position: relative;
}

@media (min-width: 1024px) {
   .steps-item:not(:last-child):before {
      content: '';
      left: 75px;
      right: 10%;
      top: 37px;
      height: 14px;
      background: url(../img/step-arrow.svg) 0 0 no-repeat;
      position: absolute;
   }

   .steps-item:not(:last-child):after {
      content: '';
      left: 67px;
      right: 10%;
      top: 22px;
      height: 14px;
      background: url(../img/step-arrow-revert.svg) 0 0 no-repeat;
      position: absolute;
      transform: rotate(-13deg);
      transform-origin: 100% 0;
      opacity: .3;
   }
}

.step-item {
   position: relative;
   z-index: 2;
   margin-top: 20px;
   margin-bottom: 10px;
}

.step-value {
   width: 46px;
   height: 46px;
   border-radius: 50%;
   background-color: #335077;
   border: 2px solid #e2e9ed;
   text-align: center;
   line-height: 42px;
   font-size: 25px;
   margin: 0 0 20px 50px;
}

.step-text {
   font-size: 18px;
   line-height: 24px;
}

/*-------- partner --------*/

.partners {
   background: #fff url(../img/partner-28.jpg) left -130px bottom 100px no-repeat;
}

.partner-number {
   width: 170px;
   font-weight: 500;
   text-transform: uppercase;
   font-size: 22px;
   color: #08295b;
   margin-bottom: 20px;
}

@media (min-width: 1345px) {
   .partner-number {
      margin-top: 80px;
   }
}

.partner-number span {
   display: block;
   font-size: 32px;
   line-height: 30px;
   margin-bottom: 5px;
}

.partner-number .why-value {
   font-size: 115px;
   line-height: 90px;
   font-weight: 700;
}

@media (min-width: 1024px) {
   .partners-map {
      background: url(../img/partner-map.png) 0 100% no-repeat;
      padding-bottom: 95px;
   }

   .partners-cities {
      margin: 255px 100px 0 90px;
   }

   .partners-cities-list li {
      color: #fff;
   }
}

.partners-cities-list {
   margin-top: 20px;
}

.partners-cities-list li {
   font-size: 15px;
   line-height: 20px;
   font-weight: 700;
}

/*-------- order-slider --------*/

.order-slider {
   margin: 0 70px;
   position: relative;
}

.order-slider .slider-dots {
   pointer-events: none;
}

.order-form {
   position: relative;
}

.question-form {
   margin: 30px 0 10px;
   position: relative;
}

.order-form-list li {
   margin: 0 7px 10px;
   font-weight: 13px;
   font-weight: 500;
   color: #08295c;
}

.order-slide {
   width: 100%;
   height: 100%;
   flex-shrink: 0;
}

/*-------- select-town --------*/

.select-town {
   position: relative;
   font-size: 12px;
   font-weight: bold;
}

.select-town-title {
   cursor: pointer;
   position: relative;
   display: flex;
   text-decoration: underline;
   color: #149fff;
   transition: color 0.2s ease;
}

.select-town-title:hover {
   color: #149fff;
}

.select-town-title:after {
   content: '';
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 4px 3px 0 3px;
   border-color: #0066cc transparent transparent transparent;
   position: absolute;
   right: -10px;
   top: 10px;
}

.select-town-list {
   position: absolute;
   right: 0;
   top: 100%;
   display: none;
}

.select-town._show .select-town-list {
   display: block;
}

.select-town._show .select-town-title:after {
   transform: rotate(180deg);
}

.select-town-list li {
   line-height: 20px;
}

.select-town-list li a {
   color: #0066cc;
   transition: color 0.2s ease;
}

.select-town-list li a:hover {
   color: #149fff;
}

.select-metro {
   display: inline-block;
   position: relative;
   color: #0066cc;
   font-weight: 900;
   font-size: 15px;
   text-decoration: underline;
   margin-left: 10px;
   cursor: pointer;
   line-height: 22px;
}

.select-metro:after {
   content: '\f107';
   width: 22px;
   height: 22px;
   border-radius: 50%;
   border: 1px solid #195DC3;
   text-align: center;
   line-height: 20px;
   color: #195DC3;
   font-family: 'icon', sans-serif;
   position: absolute;
   right: -32px;
   top: 0;
   font-weight: normal;
   transition: all 0.2s ease;
}

._show .select-metro:after {
   transform: rotate(-180deg);
   background-color: #195DC3;
   color: #fff;
}

.select-metro-list {
   display: none;
}

._show .select-metro-list {
   display: flex;
}

.select-metro-list li {
   margin: 0 20px 10px 0;
   letter-spacing: .025em;
}

.select-metro-list li a {
   color: #4d4d4d;
   text-transform: uppercase;
   font-weight: 500;
   transition: color 0.2s ease;
}

.select-metro-list li.active a,
.select-metro-list li a:hover {
   color: #149fff;
}

.select-metro-list {
   margin-bottom: -40px;
}

.informer {
   position: relative;
   background-color: #99CCFF;
   padding: 10px 0;
   text-align: center;
   color: #003366;
   font-weight: 500;
   font-size: 16px;
   box-shadow: 0 5px 10px rgba(0, 0, 0, .5);
   z-index: 10;
   display: none;
}

.informer a {
   color: #003366;
   text-decoration: underline;
}

.online-pay {
   margin-bottom: 30px;
}

.online-pay img {
   vertical-align: middle;
   margin-right: 10px;
   margin-top: -2px;
}

/*-------- Test --------*/

.sidebar-useful {
   font-size: 15px;
   line-height: 20px;
   font-weight: 900;
   color: #fff;
   background-color: #FD3051;
   text-transform: uppercase;
   padding: 20px 40px 20px 25px;
   width: 100%;
   position: relative;
   cursor: pointer;
}

.sidebar-rules {
   font-size: 14px;
   color: #7f7f7f;
   padding: 20px 25px;
}

.sidebar-rules-title {
   margin-bottom: 11px;
   color: #454545;
}

.sidebar-rules p {
   margin-bottom: 11px;
}

.gl-test-content {
   background: #fff;
   border: 1px solid #e4eaee;
   margin-bottom: 40px;
}

.gl-test-content {
   font-size: 15px;
   padding: 25px 25px;
}

.gl-test-content-title {
   text-transform: uppercase;
   color: #fd3051;
}

.gl-test-meet-form {
   margin: 30px 0 0 0;
}

.gl-test-meet-form-company {
   margin-top: 20px;
}

.gl-test-agree {
   margin-top: 40px;
   padding-top: 36px;
}

.gl-test-begin-button {
   margin-top: 30px;
   text-align: right;
}

.gl-test-begin-button a {
   width: 300px;
}

.gl-test-count {
   font-size: 15px;
   color: #08295b;
   text-transform: uppercase;
}

.gl-test-count span {
   color: #1397f3;
}

.gl-test-timer {
   display: flex;
   height: 80px;
   padding-top: 20px;
}

.gl-test-timer-minutes,
.gl-test-timer-separator,
.gl-test-timer-seconds {
   font-size: 72px;
   color: #fd3051;
}

.gl-test-timer-separator {
   width: 55px;
   text-align: center;
}

.gl-test-content-result-title {
   text-align: center;
   font-size: 36px;
   color: #07295b;
   text-transform: uppercase;
   font-weight: bold;
   margin-top: 14px;
}

.gl-test-content-result-list {
   display: flex;
   font-size: 24px;
   color: #08295b;
   align-items: center;
   justify-content: center;
   margin: 30px 0 34px 0;
   text-transform: uppercase;
}

.gl-test-content-result-count,
.gl-test-content-result-correct,
.gl-test-content-result-incorrect {
   margin-right: 40px;
}

.gl-test-content-result-correct span {
   color: #1397f3;
}

.gl-test-content-result-incorrect span {
   color: #fd3051;
}

.gl-test-content-result-level {
   text-align: center;
}

.gl-test-content-result-level-title {
   font-size: 15px;
   color: #454545;
   text-transform: uppercase;
}

.gl-test-content-result-level-name {
   font-size: 48px;
   color: #fd3051;
   padding-top: 14px;
   text-transform: uppercase;
}

.gl-test-addtional {
   display: flex;
}

.gl-test-not-agree,
.gl-test-trial-lesson {
   width: 468px;
   height: 252px;
   border: 1px solid #e4eaee;
   color: #fff;
   font-size: 18px;
   text-align: center;
   padding: 40px 77px;
}

.gl-test-not-agree a,
.gl-test-trial-lesson a {
   width: 294px;
   color: #fff;
   border: 2px solid #fff;
   display: block;
   font-size: 16px;
   border-radius: 2px;
   padding: 14px 0;
   margin: 0 auto;
}

.gl-test-not-agree {
   margin-right: 40px;
   background: url(../img/not-agree-bg.png);
}

.gl-test-not-agree-text,
.gl-test-trial-lesson-text {
   height: 90px;
}

.gl-test-trial-lesson {
   background: url(../img/trial-lesson-bg.png);
}

.question-counter-wrapper {
   color: #08295b;
   padding-top: 36px;
}

.gl-test-questions-count {
   color: #1397f3;
}

.overall-course-back {
   background-image: url(../img/all_course_header.jpg);
}

.overall-course-adventages-image {
   margin-bottom: 20px;
}

.overall-course-adventages-text {
   margin-top: 20px;
   font-size: 15px;
   line-height: 20px;
   font-weight: 500;
   text-align: center;
}

.footer-text.small {
   font-size: 15px;
   line-height: 26px;
   font-weight: 500;
   margin-top: 45px;
}

.overall-schema-back2 {
   background: url(../img/how_are_the_classes_overall_courses.jpg);
   background-size: cover;
}

.header-our-schools {
   width: 260px;
}

.footer-main .login {
   margin: 0px 0px 10px 0;
   color: #fff;
   display: inline-block;
}

.footer-main .login a {
   color: #fff;
}

.subscribe-form a {
   line-height: 27px;
}

.business-course-back {
   background-image: url(../img/business_course_header1.jpg);
   background-size: cover;
}

.mixed-course-back {
   background-image: url(../img/mixed_course_back.jpg);
   background-size: cover;
}

.online-course-back {
   background-image: url(../img/online_course_back.jpg);
   background-size: cover;
}

.online-ticket-item {
   position: relative;
   height: 110px;
   border: 2px solid #d2dce1;
   border-radius: 3px;
   border-top-width: 4px;
   border-top-color: #ff3e5d;
   padding: 10px 42px 10px 115px;
}

.online-course-footer {
   background-color: #D0DBE1;
   padding: 25px 60px 25px 35px;
   font-size: 14px;
   line-height: 15px;
   font-weight: 500;
   min-height: 170px;
   position: relative;
   cursor: pointer;
}

.online-course-footer:after {
   content: '\f105';
   width: 22px;
   height: 22px;
   border-radius: 50%;
   border: 1px solid #FD3051;
   text-align: center;
   line-height: 20px;
   color: #FD3051;
   font-family: 'icon', sans-serif;
   flex-shrink: 0;
   -webkit-flex-shrink: 0;
   transition: all 0.2s ease;
   position: absolute;
   top: 70px;
   right: 40px;
}

.online-course-footer.--full {
   display: none;
}

.online-course-wrapper.detail .online-course-footer {
   display: none;
}

.online-course-wrapper.detail .online-course-footer.--full {
   display: block;
}

.input-block-text-small {
   text-align: center;
   font-size: 13px;
   margin-top: -35px;
}

.online-why-left {
   background: url(../img/how_are_the_classes.png) 0 50% no-repeat #fff;
   background-size: auto 90%;
}

.online-course-schema {
   background: #174898 url(../img/online_course_advantages_online-back.jpg) 50% 0 no-repeat;
   background-size: cover;
}

.about-online-course {
   margin: 50px 0;
}

.our-schools-wrap {
   margin: 20px 0;
}

.schools-switch,
.open-school {
   width: 205px;
   text-align: left;
   background: #102651;
}

.schools-map img,
.schools-list img,
.open-school img {
   vertical-align: middle;
   margin-right: 10px;
   margin-top: -2px;
}

.schools-switch {
   background: none;
   border-color: #FD3051;
   color: #FD3051;
}

.schools-switch:hover {
   background: none;
}

.schools-switch.active {
   background-color: #FD3051;
   border-color: #FD3051;
   color: #fff;
}

.our-schools-wrap .tab-item {
   color: #9bafba;
   padding-right: 15px;
   border-right: 0;
   font-weight: 500;
}

.our-schools-wrap .tab-item:first-child {
   padding-left: 15px;
}

.schools-table-column {
   padding: 20px 15px;
   font-size: 14px;
   font-weight: 500;
}

.tab-item-metro,
.schools-table-column-metro {
   width: 15%;
}

.tab-item-address,
.schools-table-column-address {
   width: 40%;
}

.tab-item-phone,
.schools-table-column-phone {
   width: 20%;
}

.tab-item-schedule,
.schools-table-column-schedule {
   width: 25%;
}

.school-detail-address {
   background: #e5ebee;
   padding: 0 20px 0 33px;
   min-height: 480px;
}

.school-detail-map {
   width: 100%;
   height: 480px;
}

.school-detail-address,
.school-detail-map {
   border-top: 4px solid #0066cc;
}

.school-detail-address-title {
   margin: 30px 0 45px 0;
}

.school-detail-address-head-blue {
   font-size: 18px;
   color: #0066cc;
   font-weight: bold;
   text-transform: uppercase;
}

.school-detail-address-head {
   font-size: 18px;
   color: #fd3051;
   font-weight: 500;
   text-transform: uppercase;
   padding-left: 30px;
   position: relative;
}

.school-detail-address-text {
   font-size: 15px;
   color: #323232;
   font-weight: 500;
   padding: 3px 0 35px 30px;
}

.school-detail-address-head::before {
   position: absolute;
   left: 0;
}

.school-detail-address-address .school-detail-address-head::before {
   content: '';
   width: 21px;
   height: 29px;
   background: url(../img/address_map_pin.png);
   top: -3px;
}

.school-detail-address-phone .school-detail-address-head::before {
   content: '';
   width: 22px;
   height: 19px;
   background: url(../img/address_phone_icon.png);
}

.school-detail-address-schedule .school-detail-address-head::before {
   content: '';
   width: 21px;
   height: 21px;
   background: url(../img/address_time_icon.png);
}

.school-detail-address-chief .school-detail-address-head::before {
   content: '';
   width: 21px;
   height: 21px;
   background: url(../img/address_chief_icon.png);
}

.school-photos {
   padding: 40px 0;
}

.school-detail-text {
   font-size: 15px;
   font-weight: 500;
   padding: 0 0 40px 0;
}

.schedule-tabs {
   margin-top: 50px;
}

.school-courses-filter-block-title {
   font-size:15px;
   text-transform: uppercase;
   font-weight: 500;
   padding: 15px 0 32px 0;
   position: relative;
}

.school-courses-filter-block-title::after {
   content: '›';
   width: 5px;
   height: 5px;
   margin-left: 10px;
   color: #bfbfc4;
   transform: rotate(90deg);
   position: relative;
   display: inline-block;
   line-height: 5px;
}

.school-courses-filter-block-item .label-checkbox {
   font-size: 15px;
}

.school-courses-filter-clear {
   line-height: 47px;
   text-decoration: underline;
}

.school-courses-filter-clear:hover {
   text-decoration: none;
}

.school-courses-filter-block-submit {
   padding-top: 20px;
}

.school-courses-filter {
   padding-top: 115px;
}

.school-courses-filter-block-list.hide {
   display: none;
}


.english-clubs {
   background-image: url(../img/speak_clubs_header.jpg);
}

.schema-club-types {
   background: #174898 url(../img/schema_club_types.jpg) 50% 0 no-repeat;
   background-size: cover;
}

.english-clubs-cost-table {
   font-weight: bold;
   padding: 53px 0 60px 0;
   background: url(../img/cost_table_bg.png) 450px 50% no-repeat;
   background-size: auto 90%;
}

.english-clubs-cost-item {

}

.english-clubs-cost-item-title {
   text-transform: uppercase;
   font-size: 18px;
}

.english-clubs-cost-item-title-subscription {
   width: 315px;
   color: #08295b;
   padding: 30px 0 30px 30px !important;
}

.english-clubs-cost-item-title-new {
   width: 330px;
   color: #ff3757;
   text-align: center;
}

.english-clubs-cost-item-title-old {
   width: 330px;
   color: #4179b5;
   text-align: center;
}

.english-clubs-cost-item-subscription {
   width: 315px;
   background: #08295b;
   color: #fff;
   padding: 30px 0 30px 30px;
}

.english-clubs-cost-item-new {
   color: #ff3757;
   width: 331px;
   height: 85px;
   line-height: 85px;
   text-align: center;
   background: #fff;
}

.english-clubs-cost-item-old {
   color: #4179b5;
   width: 330px;
   height: 85px;
   line-height: 85px;
   text-align: center;
   background: #fff;
}

.english-clubs-cost-item-title-subscription,
.english-clubs-cost-item-title-new,
.english-clubs-cost-item-title-old {
   padding: 30px 0;
}

.english-clubs-cost-item-subscription,
.english-clubs-cost-item-new,
.english-clubs-cost-item-old {
   font-size: 18px;
}

.english-clubs-cost-item-overall {
   width: 660px;
   height: 85px;
   padding-left: 130px;
   font-size: 18px;
   color: #08295b;
   padding-top: 20px;
   background: #fff;
}

.course-schedule-tab {
   display: none;
}

.course-schedule-tab.active {
   display: block;
}

.course-schedule-tab .schedule-time:before {
   display: none;
}

.course-schedule-tab-item {
   background: #fff;
   padding: 30px 0;
   border: 2px solid #E1E7EC;
   margin-bottom: 20px;
}

.course-schedule-switch.active {
   background: #fd3051;
}

.course-schedule-title {
   width: 205px;
   padding-left: 20px;
}

.course-schedule-time {
   width: 130px;
}

.course-schedule-time .schedule-time-title,
.course-schedule-age .schedule-time-title,
.course-schedule-lead .schedule-time-title {
   font-size: 18px;
   font-weight: 900;
   text-transform: uppercase;
   color: #b4c4ce;
}

.course-schedule-time-content,
.course-schedule-age-content,
.course-schedule-lead-content {
   height: 30px;
   line-height: 14px;
   font-size: 14px;
   font-weight: 700;
}

.course-schedule-age {
   width: 205px;
   padding-left: 28px;
}

.course-schedule-lead {
   width: 140px;
}

.course-schedule-button {
   margin-left: 43px;
}

.english-clubs-block {
   color: #fff;
   background: #fd3051 url(../img/english-clubs-block-back.jpg) calc(50% - -15px) 100% no-repeat;
}

.english-clubs-text-list li {
   font-size: 15px;
   margin-bottom: 20px;
   text-transform: uppercase;
   padding-left: 40px;
   position: relative;
}

.english-clubs-text-list li:before {
   content: '\2015';
   position: absolute;
   left: 0;
   top: 0;
}

.teacher-tab {
   display: none;
}

.teacher-tab.active {
   display: block;
}

.teachers-group-list {
   margin-top: 40px;
}

.business-english-head {
   background-image: url(../img/business_english_header_back.jpg);
}

.business-how-lesson {
   /*background: #e4e7e9 url(../userfiles/business_how_lesson.png) 0 50% no-repeat;*/
   background: #e4e7e9;
   background-size: auto 90%;
}

.main-banner-mb-image {
   display: none;
}

.individual-english-head {
   background-image: url(../img/individual_header_bg.jpg);
}

.course-individual-english-block {
   margin-bottom: 90px;
}

.course-individual-english-block .head-text {
   text-transform: uppercase;
   font-size: 16px;
}

.individual-course-price-table-header,
.individual-course-price-table-row {
   height: 85px;
}

.individual-course-price-table-header {
   background: #08295b;
   color: #fff;
   font-size: 18px;
   font-weight: 600;
}

.individual-course-price-table-header,
.individual-course-price-table-row {
   padding: 0 30px;
}

.individual-course-price-table-header-time {
   text-align: center;
}

.individual-course-price-table-row-item {
   text-align: center;
}

.individual-course-price-table-row-item.first-name {
   text-align: left;
}

.individual-course-price-table-row-item {
   font-family: 'Roboto';
   font-weight: 600;
   font-size: 18px;
}

.individual-learn-back {
   background: url(../img/individual-learn-back1.jpg) 0 50% no-repeat #e4e7e9;
   background-size: auto 90%;
}

.for-travel-head {
   background-image: url(../img/for_tarvel_header_back.jpg);
}

.share-detail-photo__list {
   display: flex;
   flex-wrap: wrap;
   padding: 20px 0;
}

.share-detail-photo__item {
   width: 25%;
   /*margin-right: 20px;*/
}

@media (max-width: 1345px) {
   .english-clubs-block {
      background-image: none !important;
   }
}

@media (max-width: 768px) {
   .schools-switch,
   .open-school {
      width: 100%;
      margin-bottom: 20px;
   }

   .our-schools-wrap .tab-item:first-child {
      padding-left: 0;
   }

   .tab-item-metro,
   .tab-item-address,
   .tab-item-phone
   .tab-item-schedule {
      width: 100%;
      padding: 0;
   }

   .schools-table .schedule-card {
      max-width: 100%;
   }

   .tab-item-metro, .schools-table-column-metro,
   .tab-item-address, .schools-table-column-address,
   .tab-item-phone, .schools-table-column-phone,
   .tab-item-schedule, .schools-table-column-schedule {
      width: 100%;
   }

   .schools-table-column {
      padding: 0 0 10px 0;
   }

   .school-courses-filter {
      padding-top: 0;
   }

   .course-schedule-title {
      width: 100%;
   }

   .course-schedule-time,
   .course-schedule-age,
   .course-schedule-lead {
      width: 100%;
      padding-left: 20px;
   }

   .english-clubs-cost-item-title-subscription {
      padding: 30px 0 30px 0px !important;
      text-align: center;
   }

   .english-clubs-cost-item-subscription,
   .english-clubs-cost-item-new,
   .english-clubs-cost-item-old {
      width: 100%;
   }

   .english-clubs-cost-item-overall {
      width: 100%;
      height: auto;
      padding: 30px 0 30px 30px;
   }
   .main-banner-mb-image {
      align-self: flex-end;
      -webkit-align-self: flex-end;
      margin-top: -40px;
      display: block;
   }
}

@media (max-width: 460px) {
   .individual-course-price-table-header,
   .individual-course-price-table-row {
      height: 123px;
      text-align: center;
      padding: 10px 0;
   }
   .individual-course-price-table-header-time,
   .individual-course-price-table-row-item {
      width: 100%;
   }
   .individual-course-price-table-row-item.first-name {
      text-align: center;
   }
}