*, :after, :before {
    box-sizing: border-box
}

:root {
    font-size: 18px
}

@font-face {
    font-family: 'Suisse Intl';
    src: url('../fonts/SuisseIntl-Thin.eot');
    src: url('../fonts/SuisseIntl-Thin.eot?#iefix') format('embedded-opentype'),
    url('../fonts/SuisseIntl-Thin.woff2') format('woff2'),
    url('../fonts/SuisseIntl-Thin.woff') format('woff'),
    url('../fonts/SuisseIntl-Thin.ttf') format('truetype'),
    url('../fonts/SuisseIntl-Thin.svg#../fonts/SuisseIntl-Thin') format('svg');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Suisse Intl';
    src: url('../fonts/SuisseIntl-Regular.eot');
    src: url('../fonts/SuisseIntl-Regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/SuisseIntl-Regular.woff2') format('woff2'),
    url('../fonts/SuisseIntl-Regular.woff') format('woff'),
    url('../fonts/SuisseIntl-Regular.ttf') format('truetype'),
    url('../fonts/SuisseIntl-Regular.svg#../fonts/SuisseIntl-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Suisse Intl';
    src: url('../fonts/SuisseIntl-Medium.eot');
    src: url('../fonts/SuisseIntl-Medium.eot?#iefix') format('embedded-opentype'),
    url('../fonts/SuisseIntl-Medium.woff2') format('woff2'),
    url('../fonts/SuisseIntl-Medium.woff') format('woff'),
    url('../fonts/SuisseIntl-Medium.ttf') format('truetype'),
    url('../fonts/SuisseIntl-Medium.svg#../fonts/SuisseIntl-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Suisse Intl';
    src: url('../fonts/SuisseIntl-Bold.eot');
    src: url('../fonts/SuisseIntl-Bold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/SuisseIntl-Bold.woff2') format('woff2'),
    url('../fonts/SuisseIntl-Bold.woff') format('woff'),
    url('../fonts/SuisseIntl-Bold.ttf') format('truetype'),
    url('../fonts/SuisseIntl-Bold.svg#../fonts/SuisseIntl-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Suisse Intl';
    src: url('../fonts/SuisseIntl-Light.eot');
    src: url('../fonts/SuisseIntl-Light.eot?#iefix') format('embedded-opentype'),
    url('../fonts/SuisseIntl-Light.woff2') format('woff2'),
    url('../fonts/SuisseIntl-Light.woff') format('woff'),
    url('../fonts/SuisseIntl-Light.ttf') format('truetype'),
    url('../fonts/SuisseIntl-Light.svg#../fonts/SuisseIntl-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}



body {
    margin: 0;
    --color-text: #fff;
    --color-bg: #000;
    --color-link: #fff;
    --color-link-hover: #ccc;
    --color-border: #ccc;
    --marquee-bg: #000;
    --marquee-text: #fff;
    --menu-focus: #775e41;
    color: var(--color-text);
    background-color: var(--color-bg);
    /*font-family: 'Ubuntu', sans-serif;*/
    font-family: 'Suisse Intl';
    /*font-family: reason-new, -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif;*/
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

a {
    text-decoration: underline;
    color: var(--color-link)
}

a, a:hover {
    outline: none
}

a:hover {
    color: var(--color-link-hover);
    text-decoration: none
}

a:focus {
    outline: none;
    background: #d3d3d3
}

a:focus-visible, a:focus:not(:focus-visible) {
    background: transparent
}

a:focus-visible {
    outline: 2px solid red
}
.button-cls:active,
a:active {
    transform: scale3d(.98,.98,.98) !important;
    transition-delay: 0s !important;
    transition: all .2s !important;
}
h2.span {
    display: inline-block;
}
h2 {
    perspective: 600px;
    -webkit-perspective: 600px;
}

.first-time, .loader {
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: 100;
    background: #000;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
}
.loaders {
    position: relative;
    width: 100px;
    height: 100px;
}

.loaders:before , .loaders:after{
    content: '';
    border-radius: 50%;
    position: absolute;
    inset: 0;
    box-shadow: 0 0 2px 0px rgba(255, 255, 255, 1) inset;
}
.loaders:after {
    box-shadow: 0 3px 0 #FF3D00 inset;
    animation: rotate 2s linear infinite;
}

@keyframes rotate {
    0% {  transform: rotate(0)}
    100% { transform: rotate(360deg)}
}
.loader.hide .loader-logo-pages,
.first-time .loader-logo {
    width: 0;
    overflow: hidden;
}
.first-time.start .loader-logo {
    width: 13vw;
    overflow: visible;
}
.loader-logo-pages {
    width: 8vw;
    overflow: visible;
}
.loader-logo-pages svg,
.loader-logo svg {
    overflow: visible;
}
.first-time .loader-logo .logo-line-first,
.first-time .loader-logo .logo-line-second {
    transform: translate3d(10px, -15px, 0);
    opacity: 0;
    animation: none;
}
.loader-logo-pages .logo-line-first,
.loader-logo-pages .logo-line-second {
    animation: loader 3s infinite;
}
.loader-logo-pages .logo-line-second {
    animation-delay: .3s;
}
@keyframes loader {
    0% {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
    11% {
        opacity: 0;
    }
    19% {
        transform: translate3d(-3px, 6px, 0);
        opacity: 0;
    }
    41% {
        transform: translate3d(3px, -6px, 0);
        opacity: 0;
    }
    53% {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}
.first-time .logo-circle {
    opacity: 0;
}
.first-time .logo-education {
    opacity: 0;
    transform: translate3d(-20px, 0, 0);
}
.first-time .logo-asap {
    opacity: 0;
    transform: translate3d(-10px, 0, 0);
}
.first-time.start .logo-asap,
.first-time.start .loader-logo .logo-line-first,
.first-time.start .loader-logo .logo-line-second {
    transform: translate3d(0, 0, 0) scale3d(1,1,1);
    opacity: 1;
    transition: all 1s cubic-bezier(.215, .61, .355, 1);
}
.first-time.start .loader-logo .logo-line-second {
    transition-delay: .3s;
}
.first-time.start .logo-asap {
    transition: all 1s 1s cubic-bezier(.215, .61, .355, 1);
}
.first-time.start .logo-education {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition: all 1s 1.5s cubic-bezier(.215, .61, .355, 1);
}
.first-time.start .logo-circle {
    transform: translate3d(0, 0, 0) scale3d(1,1,1);
    opacity: 1;
    transition: all 1s 2s cubic-bezier(.215, .61, .355, 1);
}
.loader .overlay-block {
    display: none;
}
.main-page .first-time .overlay-block {
    display: block;
}
.first-time .main-overlay,
.first-time .main-overlay-three,
.first-time .main-overlay-two {
    opacity: 0;
}
.main-page .first-time.start .main-overlay-two {
    opacity: 1;
    transition: all 1.5s 1s;
}
.main-page .start.first-time .main-overlay {
    opacity: 1;
    transition: all 2s 1.5s;
}
.main-page .start.first-time .main-overlay-three {
    opacity: 1;
    transition: all 2s 1.5s;
}
.first-time.full-load svg,
.loader.full-load .loader-logo svg {
    transform: scale3d(.8,.8,.8);
    transition: all .5s;
}
.first-time.full-load,
.loader.full-load {
    opacity: 0;
    transition: all .6s;
}
.next-page {
    opacity: 0;
    visibility: hidden;
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: 100;
    background: #ffffff;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
}
.next-page.active {
    opacity: 1;
    visibility: visible;
    transition: all .3s;
}
.next-page .loader-logo {
    width: 8vw;
}
.next-page .loader-logo .logo-line-first,
.next-page .loader-logo .logo-line-second {
    transform: translate3d(3px, -6px, 0);
    opacity: 0;
    animation: none;
}
.next-page.active .loader-logo .logo-line-first,
.next-page.active .loader-logo .logo-line-second {
    transform: translate3d(0, 0, 0) scale3d(1,1,1);
    opacity: 1;
    transition: all 1s cubic-bezier(.215, .61, .355, 1);
}
.next-page.active .loader-logo .logo-line-second {
    transition-delay: .3s;
}


section.special {
    display: flex;
    flex-direction: row;
    background: #f2f2f2;
    align-items: center;
    overflow: hidden;
}
section.special .special-lent {
    display: flex;
    flex-direction: row;
    animation: marquee-lent 20s linear infinite;
}
section.special .special-item-name {
    color: #000;
    font-size: 2.5vw;
    line-height: 1.2;
    font-weight: 600;
    padding: 2vh 1vw;
    text-transform: uppercase;
}
section.special .special-item-img svg {
    width: 2vw;
    margin: 4px 2vw 0;
}
section.special .special-item {
    display: flex;
    flex-direction: row;
    white-space:nowrap;
    align-items: center;
}
.main-page span.green {
    position: relative;
    display: inline-block;
}
.main-page span.green:after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0.2vw;
    left: 0;
    z-index: -1;
    background: #ff4c02;
}
.colors.green:after {
    background: #00EA7A;
}
.colors.yellow:after {
    background: #ffec9c;
}
.colors.blue:after {
    background: #2ECDFF;
}
.colors.black {
    color: #fff
}
.colors.black:after {
    background: #000;
}
span.colors {
    position: relative;
    display: inline-block;
}
span.colors:after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

body .logo {
    opacity: 1;
    transition: all .2s;
    margin-top: 10px;
}

body .logo svg {
    width: 6.5vw;
}

body.open .logo, body.open .header-menu-block {
    opacity: 0;
    transition: all .3s;
}

/* gift */
.gift {
    width: 24vw;
    background: #000;
    position: fixed;
    bottom: 15px;
    display: flex;
    margin: 0 auto;
    left: 38vw;
    border-radius: 40px;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-direction: row;
    box-shadow: 0 0 50px 0 rgb(0 0 0 / 20%);
}
.gift-icon img {
    width: 1.5vw;
    margin: 15px 15px 15px 40px;
    display: flex;
}
.gift-button span:hover {
    background: #1225EF;
    color: #ffffff;
    border: 2px solid #1225EF;
    transition: all .3s;
}
.gift-text span {
    font-weight: 400;
    color: #999;
    font-size: .6vw;
    transition: all .2s;
}
.gift-button span:active {
    transform: scale3d(.97,.97,.97);
    transition: all .2s;
}
.gift-text {
    color: #fff;
    font-weight: 600;
    margin: 0 20px;
    font-size: .7vw;
}
.gift-button span {
    display: block;
    font-size: .8vw;
    color: #000;
    margin-right: 30px;
    background: #fff;
    border-radius: 1vw;
    border: 2px solid #fff;
    padding: 5px 20px 8px;
    transition: all .2s;
    cursor: pointer;
    text-align: center;
}

/* sale */
.sale-header {
    margin: 0;
    background: #ffec9c;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
    position: fixed;
    width: 100vw;
    z-index: 99;
    transition: all .2s;
}
.sale-header h3 {
    margin: 0 auto;
    font-size: 1vw;
    padding: 15px;
    font-weight: 400;
}
.sale-header:hover {
    background: #000;
    color: #fff;
    transition: all .3s;
}
header {
    /*margin-top: 50px;*/
    position: fixed;
    z-index: 90;
    width: 100vw;
    padding: 20px 50px;
    display: flex;
    align-items: center;
    /*border-bottom: 1px solid var(--color-border);*/
    background: rgb(0,0,0);
    background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
    transition: all .2s;
    top: 0;
}

body.open header {
    border-bottom: none;
    transition: all .3s;
    height: 98px;
    overflow: hidden;
}
.header-menu {
    margin: 0 0 0 auto;
    display: flex;
    align-content: center;
    align-items: flex-start;
}
.header-menu-block {
    width: 42vw;
}
.header-menu ul {
    width:100%;
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    vertical-align: top;
    flex-direction: row;
    justify-content: space-around;
}
header.hide .header-menu ul li {
    height: 0;
    transition: height 0s .7s;
}
.header-menu ul li {
    display: block;
    overflow: hidden;
    height: 100%;
}
.header-menu ul li a sup {
    font-size: .7vw;
    color: #fff;
    margin-left: 5px;
    padding: 2px 4px;
    position: absolute;
}
.header-menu ul li a sup.sup-course {
    background: #7709ff;
}
.header-menu ul li a sup.sup-corp {
    background: #2ECDFF;
}
.header-menu ul li a {
    font-size: 1.4vw;
    text-decoration: none;
    display: inline-block;
    padding-bottom: 2px;
    padding-top: 2px;
    transition: color .2s 0s;
}
.header-menu ul li a.inactive-link span {
    color: #999;
}
.header-menu ul li a span {
    color: #fff;
}
.header-menu ul li.active a span,
.header-menu ul li a:hover span {
    color: #000;
    transition: color .4s 0s;
}
.header-menu ul li a.inactive-link:active {
    transform: none !important;
}
.header-menu ul li a.inactive-link:hover span {
    color: #999;
}
.header-menu ul li.active a:after,
.header-menu ul li a:hover:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left center;
    transform-origin: left center;
}
.header-menu ul li a:after {
    -webkit-transition: transform .5s cubic-bezier(.215, .61, .355, 1);
    transition: transform .5s cubic-bezier(.215, .61, .355, 1);
    background-color: #fff;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
    content: '';
    width: 100%;
    height: 100%;
    bottom: 0;
    top: 0;
    left: 0;
    position: absolute;
    z-index: -1;
}
.header-menu ul li a.inactive-link:after {
    display: none;
}

.burger {
    width: 70px;
    height: 33px;
    position: relative;
    margin: 10px 0 0 auto;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}
.buy {
    font-size: 1.4vw;
    display: flex;
    padding: 10px 20px;
    margin-top: -7px;
    background: #fff;
    color: #000;
    cursor: pointer;
    transition: all .2s;
}
.buy:hover {
    background: #000;
    color: #fff;
    transition: all .3s;
}


.burger span {
    display: block;
    position: absolute;
    height: 5px;
    width: 50%;
    background: #000;
    opacity: 1;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

.burger span:nth-child(even) {
    left: 50%;
}

.burger span:nth-child(odd) {
    left: 0;
}

.burger span:nth-child(1), .burger span:nth-child(2) {
    top: 0;
}

.burger span:nth-child(3), .burger span:nth-child(4) {
    top: 14px;
}

.burger span:nth-child(5), .burger span:nth-child(6) {
    top: 28px;
}

.burger.open span:nth-child(1), .burger.open span:nth-child(6) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.burger.open span:nth-child(2), .burger.open span:nth-child(5) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.burger.open span:nth-child(1) {
    left: 5px;
    top: 7px;
}

.burger.open span:nth-child(2) {
    left: calc(50% - 5px);
    top: 7px;
}

.burger.open span:nth-child(3) {
    left: -50%;
    opacity: 0;
}

.burger.open span:nth-child(4) {
    left: 100%;
    opacity: 0;
}

.burger.open span:nth-child(5) {
    left: 5px;
    top: 29px;
}

.burger.open span:nth-child(6) {
    left: calc(50% - 5px);
    top: 29px;
}

/* menu overlay */
body.open {
    height: 100vh;
    overflow: hidden;
}

.menu-block {
    position: fixed;
    background: #fff;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    transform: translate3d(0, 0, 0);
}

.menu-block:before {
    content: '';
    width: 100vw;
    height: 100vh;
    position: absolute;
    z-index: 1;
}

.menu-block.open:before {
    z-index: -1;
    transition: all 0s 1s;
}

.menu-block.open {
    z-index: 1;
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition: all .6s;
}

section.main {
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden !important;
    position: relative;
    /*position: fixed;*/
    /*top: 0;*/
}
.about-asap {
    margin: 2vw;
    display: flex;
    flex-direction: row;
}
.about-asap h2 {
    font-size: 3vw;
    width: 20vw;
    display: none;
}
.about-asap-block {
    width: 25%;
    font-size: 1.5vw;
    margin: 3vw;
}

.gradient {
    background: #CF1512;
    background: -webkit-linear-gradient(to right, #FA5229 0%, #FA31B1 100%);
    background: -moz-linear-gradient(to right, #FA5229 0%, #FA31B1 100%);
    background: linear-gradient(to right, #FA5229 0%, #FA31B1 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.main-overlay {
    position: absolute;
    background: radial-gradient(circle, #c1d0f3 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
    width: 77vw;
    height: 48vw;
    left: 26vw;
    top: 1vw;
    opacity: 1;
    pointer-events: none;
    z-index: -3;
}

.main-overlay-two {
    position: absolute;
    background: radial-gradient(circle, #f9eae2 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
    width: 49vw;
    height: 52vw;
    right: -4vw;
    top: 3vw;
    opacity: 1;
    pointer-events: none;
    z-index: -2;
}
.main-overlay-three {
    position: absolute;
    background: radial-gradient(circle, #d3c8ef80 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
    width: 29vw;
    height: 24vw;
    left: 19vw;
    top: 5vw;
    opacity: 1;
    pointer-events: none;
    z-index: -1;
}
.main-overlay-four {
    position: absolute;
    background: radial-gradient(circle, #ff0decb0 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
    width: 78vw;
    height: 80vw;
    left: -29vw;
    top: -30vw;
    opacity: .4;
    pointer-events: none;
    z-index: -2;
}
.main-img {
    position: absolute;
    top: 0;
    width: 100vw;
    height: 100vh;
}
.main-img img {
    width: 100%;
    opacity: .7;
}
.main-text {
    top: -3vw;
    display: flex;
    flex-direction: column;
    padding: 0;
    position: relative;
    perspective: 600px;
    -webkit-perspective: 600px;
}

.main-text i {
    display: inline-block;
    width: 100vw;
    font-style: normal;
}
.main-text h1 {
    background: #FF4B02;
    color: #000;
    font-size: 7vw;
    font-weight: 500;
    letter-spacing: -0.3vw;
    line-height: 0.9;
    margin: 0;
    position: relative;
    padding: 0.5vw 2vw 1.5vw;
    display: inline-block;
}

.main-text-row svg {
    width: 7vw;
    margin-top: 1.4vw;
    margin-left: 1.5vw;
}
.main-text-row {
    position: relative;
}

.main-text-row-img {
    display: inline-flex;
    height: 4.7vw;
    border-radius: 5vw;
    margin: 1vw 2vw 0;
    align-items: center;
    width: 10vw;
}
.main-text-row-avatar {
    border-radius: 50%;
    width: 5vw;
    display: inline-block;
    margin-top: 1.6vw;
    margin-left: 9vw;
    vertical-align: top;
}

.main-text-row:nth-child(1) h1 {
    transform: translate3d(8vw, 0, 0);
    border-radius: 8vw;
}

.main-text-row:nth-child(2) h1 {
    /*display: flex;*/
    /*flex-direction: row;*/
    /*justify-content: flex-end;*/
    margin-top: -2px;
    transform: translate3d(5vw, 0, 0);
}

.main-text-row:nth-child(3) h1 {
    /*display: flex;*/
    /*flex-direction: row;*/
    /*align-items: center;*/
    margin-top: -2px;
    border-top-right-radius: 8vw;
    border-bottom-right-radius: 8vw;
    transform: translate3d(37vw, 0, 0);
}


.main-text-row-special {
    width: 11vw;
    text-align: right;
    line-height: 0;
    margin-right: 30px;
    height: 3.5vw;
    margin-top: 2.1vw;
    font-weight: 400;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    align-content: space-around;
    justify-items: center;
}

.main-text-row-special a {
    font-size: .75vw;
    text-decoration: none;
    letter-spacing: normal;
    border: 1px solid #000;
    border-radius: 20px;
    padding: 0.6vw 1vw;
    position: relative;
    z-index: 2;
}

.main-text-row-special a:hover {
    background: #000000;
    color: #fff;
    transition: all .3s;
}

@-webkit-keyframes scalegradientShape {
    0%, 100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    50% {
        -webkit-transform: scale(2);
        transform: scale(2)
    }
}

@keyframes scalegradientShape {
    0%, 100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    50% {
        -webkit-transform: scale(2);
        transform: scale(2)
    }
}
.main-slogan-content {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}
section.main-slogan.boss {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    margin-top: 10vw;
}
section.main-slogan {
    margin: 5vw 0;
    width: 100vw;
    overflow: hidden;
}
section .main-slogan-text {
    margin-top: 11vw;
}
section.main-slogan h3 {
    margin: 0 8vw 0 0;
    padding: 0;
    display: inline-block;
    font-weight: 500;
    font-size: 2vw;
    width: 31vw;
}
.main-slogan-faces-block {
    width: 40vw;
    margin-right: 10vw;
}
.main-slogan-faces img {
    width: 100%;
}
.main-slogan-desc {
    font-size: .8vw;
    margin-top: 5px;
    color: #6a6a6a;
}
.main-slogan-name {
    margin-top: 50px;
    font-size: 2vw;
    font-weight: 400;
    color: #6a6a6a;
}
.c-fixed_wrapper {
    height: 100vh;
    overflow: hidden;
    position: relative;
    background: #ffffff;
}
.c-fixed, .c-fixed_target {
    left: 0;
    position: absolute;
    right: 0;
    top: -100vh;
}
.c-fixed_target {
    bottom: -100vh;
}
.c-fixed {
    background-position: 50%;
    background-size: cover;
    height: 100%;
}



section.courses {
    margin-top: 10vw;
    /*background: #f0f0f0;*/
    position: relative;
    padding: 3vw 0;
    /*border-radius: 80px 80px 0 0;*/
    /*-webkit-box-shadow: 0 0 100px 0 rgb(0, 0, 0, 0.1);*/
    /*-moz-box-shadow: 0 0 100px 0 rgba(0, 0, 0, 0.10);*/
    /*box-shadow: 0 0 100px 0 rgb(0, 0, 0, 0.1);*/
}
section.courses .courses-block-item-add span:hover a {
    color: #ffffff;
}
section.courses .courses-block-item-add span a {
    text-decoration: none;
}
section.courses .courses-block-item-add span {
    display: block;
}
section.courses h2 {
    font-size: 10vw;
    margin: 0 2vw 1.5vw;
    font-weight: 500;
    letter-spacing: -.3vw;
}
section.courses.corp h3 span {
    display: block;
}
section.courses.corp h2 span {
    position: relative;
}
section.courses h2 span {
    margin-bottom: 1vw;
}
section.courses h2 span svg {
    position: absolute;
    z-index: -1;
    width: 100%;
    bottom: -90%;
    left: 0;
    overflow: visible;
    stroke-width: .2vw;
}
section.courses h2 span {
    position: relative;
}
section.courses.corp h2 span svg {
    position: absolute;
    stroke-width: 1vw;
    z-index: -1;
    width: 120%;
    top: -86%;
    left: -6%;
    overflow: visible;
}
section.courses.corp h2 span svg path {
    stroke: #1225EF;
}
section.courses ul {
    list-style: none;
    margin: 25px 2vw 0 2vw;
    padding: 0;
}
section.courses ul li {
    display: inline-block;
    margin-right: 20px;
}
section.courses .courses-block-item-add span:nth-child(2),
section.courses .soon .courses-block-item-add span,
section.courses ul li span {
    font-size: 1vw;
    color: #000;
    background: transparent;
    border-radius: 1vw;
    border: 2px solid #000;
    padding: 5px 20px 8px;
    transition: all .2s;
    cursor: pointer;
    text-align: center;
}
section.courses ul li span:hover,
section.courses .courses-block-item-add span {
    font-size: 1vw;
    border-radius: 1vw;
    border: 2px solid #000;
    padding: 5px 20px 8px;
    background: #000000;
    color: #fff;
    transition: all .3s;
    text-align: center;
}
.button-cls:hover,
section.courses .courses-block-item-add span:hover,
section.courses .courses-block-item-add span:nth-child(2):hover,
section.courses .soon .courses-block-item-add span:hover {
    background: #1225EF;
    color: #ffffff;
    border: 2px solid #1225EF;

}
section.courses ul li span.active {
    background: #000000;
    color: #fff;
}
section.courses .block__title:nth-child(1) {
    border-top: 1px solid #00000060;
}
section.courses .courses-block {
    padding: 0 2vw 3vw;
}
section.courses .block__title {
    width: 96vw;
    border-bottom: 1px solid #00000060;
    display: flex;
    text-decoration: none;
    padding: 2vw 0;
    align-content: center;
    justify-content: space-between;
    align-items: center;
    transition: all .2s;
}
section.courses .block__title.soon {
    cursor: default;
}
section.courses .block__title:hover {
    width: 98vw;
    margin-left: -1vw;
    transition: all .3s;
}
section.courses .block__title.soon:hover {
    width: 96vw;
    margin-left: 0;
}
section.courses .block__title .courses-block-item-name sup {
    font-size: 1vw;
    color: #770aff;
}
section.courses .block__title.soon .courses-block-item-desc,
section.courses .block__title.soon .courses-block-item-price,
section.courses .block__title.soon .courses-block-item-name {
    opacity: .6;
}
section.courses .block__title .courses-block-item-name {
    display: inline-block;
    vertical-align: top;
    font-size: 3.5vw;
    font-weight: 400;
}
section.courses .block__title .courses-block-item-date span:nth-child(2) {
    font-weight: 600;
    font-size: 1vw;
    color: #770aff;
}
section.courses .block__title .courses-block-item-date span {
    display: block;
    font-size: 16px;
    font-weight: 300;
}
section.courses .block__title .courses-block-item-long span:nth-child(1) {
    font-weight: 600;
    font-size: 1vw;
}
section.courses .block__title .courses-block-item-long span {
    font-size: 16px;
    font-weight: 300;
}
section.courses .block__title .courses-block-item-price .old-price {
    font-size: 3vw;
    font-weight: 400;
    text-decoration: line-through;
    opacity: .6;
}
section.courses .block__title .courses-block-item-price .new-price {
    font-size: 1.5vw;
    font-weight: 600;
    position: absolute;
    display: inline-block;
    background: #ffec9c;
    border-radius: 2vw;
    padding: 5px 25px;
    top: 10px;
    left: 0;
    transform: rotate(-10deg);
}
#services {
    display: none !important;
}
.iprice {
    font-size: 2vw;
    width: 40%;
    background: transparent;
    border: none;
    color: #fff;
    font-family: 'Suisse Intl';
}
.ibilet {
    font-size: 18px;
    font-weight: bold;
    background: transparent;
    border: none;
    color: #8a8a8a;
    font-family: 'Suisse Intl';
}
section.courses .block__title .courses-block-item-price {
    font-size: 16px;
    font-weight: 300;
    position: relative;
}
section.courses .block__title .courses-block-item-desc {
    width: 30vw;
    font-size: 16px;
    font-weight: 300;
    margin-top: 0.8vw;
    margin-left: 0.2vw;
}
.courses-block-item-date, .courses-block-item-name-people {
    padding: 0 1vw;
}
section.courses .block__title .courses-block-item-name-people-list  {
    font-size: 16px;
    font-weight: 300;

}
section.courses .block__title .courses-block-item-name-people-list:nth-child(2)  {
    margin-top: 10px;
}
section.courses .block__title .courses-block-item-name-people-list span  {
    display: block;
    margin-bottom: 7px;
}
section.courses .block__title .courses-block-item-name-people-list img  {
    width: 3vw;
    border-radius: 1vw;
    display: inline-block;
    margin-right: -.8vw;
    border: 3px solid #ffffff;
    position: relative;
    z-index: 1;
}
.courses-block-item-name-people {
    min-width: 15vw;
}
section.courses .courses-block-item-add span {
    display: block;
}
section.courses .courses-block-item-add span:nth-child(2) {
    margin-top: 10px;
}


/* courses-corp */
section.corp {
    margin-top: 5vw;
    position: relative;
}
section.corp h3 {
    margin: 1vw 2vw 2vw;
    font-weight: 300;
    width: 50vw;
}
section.courses.corp .block__title .courses-block-item-name sup {
    color: #000000;
    padding: 0 5px;
}
section.courses.corp .block__title.training .courses-block-item-name sup {
    background: #2ECDFF;
}
section.courses.corp .block__title.course .courses-block-item-name sup {
    background: #AAFEA3;
}
section.courses.corp .block__title .courses-block-item-desc {
    width: 30vw;
}


/*section reviews*/
section.reviews {
    width: 100vw;
    padding: 2vw;
    margin: 8vw 0;
}
section.reviews h2 {
    font-size: 10vw;
    letter-spacing: -.3vw;
    font-weight: 500;
    padding-bottom: 25px;
    margin: 20px 0 50px;
    border-bottom: 1px solid #000;
}
section.reviews .reviews-block {
    display: flex;
}
section.reviews .reviews-block-item {
    display: inline-block;
    vertical-align: top;
    margin-right: 4%;
}
section.reviews .reviews-block-item:nth-last-child(1) {
    margin-right: 0;
}
section.reviews .reviews-block-item-video img,
section.reviews .reviews-block-item-video {
    width: 100%;
}
section.reviews .reviews-block-item .reviews-block-item-name {
    font-size: 1.5vw;
    margin-top: 15px;
}
section.reviews .reviews-block-item .reviews-block-item-course {
    font-size: .7vw;
    margin-top: 5px;
}


section.team .team-block-item-img {
    position: relative;
    margin: 0 auto;
}
section.team {
    padding: 4vw 2vw;
    margin: 8vw 0;
    overflow: hidden;
}
section.team h2 {
    text-transform: uppercase;
    font-size: 10vw;
    letter-spacing: -.3vw;
    font-weight: 500;
    width: 600%;
    padding-bottom: 25px;
    margin: 20px -100% 20px;
}
section.team .team-block-item-img img {
    width: 100%;
    opacity: .9;
}
section.team .team-block {
    display: flex;
    width: 96vw;
    padding-top: 60px;
    border-top: 1px solid #000;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}
section.team .team-block-item {
    margin-right: 2%;
    width: 30%;
    position: relative;
    margin-bottom: 4%;
}
.img-text {
    position: relative;
}
.team-block-item-text {
    width: 95%;
    font-size: 2vw;
    margin-bottom: 5%;
    margin-top: 15px;
}
section.team .team-block-item-name {
    display: inline-block;
    background: #FFEE4B;
    text-transform: uppercase;
    font-size: 2vw;
    color: #000;
    margin-top: 15px;
    font-weight: 500;
    position: absolute;
    bottom: 4vw;
    left: 1vw;
    padding: 0 .6vw;
}
section.team .team-block-item-desc svg {
    position: absolute;
    width: 2.4vw;
    margin-left: 5px;
    margin-top: -1px;
}
section.team .team-block-item-desc {
    background: #FFEE4B;
    display: inline-block;
    text-transform: uppercase;
    font-size: 2vw;
    color: #000;
    margin-top: 5px;
    font-weight: 500;
    position: absolute;
    left: 1vw;
    bottom: 1.8vw;
    border-top-left-radius: 5vw;
    border-bottom-left-radius: 5vw;
    padding: 0 1vw 0 .6vw;
}


/*section blog*/
section.blog {
    /*background: #FAF9F6;*/
    padding: 3vw 0;
    margin-top: 10vw;
}
section.blog h2 {
    font-size: 10vw;
    letter-spacing: -.3vw;
    margin: 0 2vw 2vw;
    font-weight: 500;
    border-bottom: 1px solid #00000040;
    padding-bottom: 1vw;
}
section.blog .blog-block {
    display: flex;
    width: 100vw;
}
section.blog .blog-block-item:hover .blog-block-item-img {
    transform: rotate3d(0, 0, 1, 0deg);
    transition: all .3s;
}
section.blog .blog-block-item:hover .blog-block-item-header h3 {
    text-decoration: none;
    transition: all .3s;
}
section.blog .blog-block-item {
    text-decoration: none;
    width: 25vw;
    padding: 2vw;
    border-right: 1px solid #00000040;
    display: inline-block;
    vertical-align: top;
    position: relative;
}
section.blog .blog-block-item-img {
    transform: rotate3d(0, 0, 1, -3deg);
    width: 96%;
    margin-left: 2%;
    margin-bottom: 2vw;
    transition: all .2s;
}
section.blog .blog-block-item-category.blue {
    background: #3E2DFD;
    color: #fff;
}
section.blog .blog-block-item-category.green {
    background: #f84233;
    color: #fff;
}
section.blog .blog-block-item-category {
    padding: 4px 15px;
    font-size: 16px;
    top: 4vw;
    left: 3vw;
    border-radius: 20px;
    z-index: 1;
    position: absolute;
}
section.blog .blog-block-item-data {
    text-align: left;
    /*color: #6a6a6a;*/
}
section.blog .blog-block-item-header h3 {
    font-size: 1.5vw;
    font-weight: 400;
    margin: 12px 0 0 0;
    text-decoration: underline;
    transition: all .2s;
}
section.blog .blog-block-item:nth-last-child(1) {
    border: none;
}
section.blog .blog-block-item .blog-block-item-img img {
    width: 100%;
}

section .help-block {
    width: 80vw;
    border: 1px solid #000;
    border-radius: 20px;
    background-image: url('data:image/svg+xml;utf8,<svg width="287" height="336" viewBox="0 0 287 336" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(https://outhere-music.com/modules/custom/outhere_app/dist/%2523clip0)"><rect width="287" height="336" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M289.284 122.347C306.043 92.3132 309.554 62.3245 296.276 39.3262C282.998 16.328 255.272 4.3745 220.882 3.87159C186.517 3.36904 145.69 14.3203 106.584 36.8982C67.4778 59.4762 37.5804 89.3575 20.8329 119.37C4.07375 149.404 0.562421 179.392 13.8405 202.391C27.1185 225.389 54.8452 237.342 89.2347 237.845C123.6 238.348 164.427 227.397 203.533 204.819C242.639 182.241 272.536 152.359 289.284 122.347ZM204.033 205.685C282.504 160.38 324.19 85.6745 297.142 38.8262C270.094 -8.02201 184.555 -9.27293 106.084 36.0322C27.6131 81.3373 -14.0734 156.042 12.9744 202.891C40.0223 249.739 125.562 250.99 204.033 205.685Z" fill="%23FD0330"/><path fill-rule="evenodd" clip-rule="evenodd" d="M298.284 158.347C315.043 128.313 318.554 98.3245 305.276 75.3262C291.998 52.328 264.272 40.3745 229.882 39.8716C195.517 39.369 154.69 50.3203 115.584 72.8982C76.4778 95.4762 46.5804 125.357 29.8329 155.37C13.0737 185.404 9.56242 215.392 22.8405 238.391C36.1185 261.389 63.8452 273.342 98.2347 273.845C132.6 274.348 173.427 263.397 212.533 240.819C251.639 218.241 281.536 188.359 298.284 158.347ZM213.033 241.685C291.504 196.38 333.19 121.674 306.142 74.8262C279.094 27.978 193.555 26.7271 115.084 72.0322C36.6131 117.337 -5.07339 192.042 21.9744 238.891C49.0223 285.739 134.562 286.99 213.033 241.685Z" fill="%23FD0330"/><path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M307.284 194.347C324.043 164.313 327.554 134.324 314.276 111.326C300.998 88.328 273.272 76.3745 238.882 75.8716C204.517 75.369 163.69 86.3203 124.584 108.898C85.4778 131.476 55.5804 161.357 38.8329 191.37C22.0737 221.404 18.5624 251.392 31.8405 274.391C45.1185 297.389 72.8452 309.342 107.235 309.845C141.6 310.348 182.427 299.397 221.533 276.819C260.639 254.241 290.536 224.359 307.284 194.347ZM222.033 277.685C300.504 232.38 342.19 157.674 315.142 110.826C288.094 63.978 202.555 62.7271 124.084 108.032C45.6131 153.337 3.92661 228.042 30.9744 274.891C58.0223 321.739 143.562 322.99 222.033 277.685Z" fill="%23FD0330"/><path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M316.284 230.347C333.043 200.313 336.554 170.324 323.276 147.326C309.998 124.328 282.272 112.374 247.882 111.872C213.517 111.369 172.69 122.32 133.584 144.898C94.4778 167.476 64.5804 197.357 47.8329 227.37C31.0737 257.404 27.5624 287.392 40.8405 310.391C54.1185 333.389 81.8452 345.342 116.235 345.845C150.6 346.348 191.427 335.397 230.533 312.819C269.639 290.241 299.536 260.359 316.284 230.347ZM231.033 313.685C309.504 268.38 351.19 193.674 324.142 146.826C297.094 99.978 211.555 98.7271 133.084 144.032C54.6131 189.337 12.9266 264.042 39.9744 310.891C67.0223 357.739 152.562 358.99 231.033 313.685Z" fill="%23FD0330"/><path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M325.284 266.347C342.043 236.313 345.554 206.324 332.276 183.326C318.998 160.328 291.272 148.374 256.882 147.872C222.517 147.369 181.69 158.32 142.584 180.898C103.478 203.476 73.5804 233.357 56.8329 263.37C40.0737 293.404 36.5624 323.392 49.8405 346.391C63.1185 369.389 90.8452 381.342 125.235 381.845C159.6 382.348 200.427 371.397 239.533 348.819C278.639 326.241 308.536 296.359 325.284 266.347ZM240.033 349.685C318.504 304.38 360.19 229.674 333.142 182.826C306.094 135.978 220.555 134.727 142.084 180.032C63.6131 225.337 21.9266 300.042 48.9744 346.891C76.0223 393.739 161.562 394.99 240.033 349.685Z" fill="%23FD0330"/><path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M334.284 302.347C351.043 272.313 354.554 242.324 341.276 219.326C327.998 196.328 300.272 184.374 265.882 183.872C231.517 183.369 190.69 194.32 151.584 216.898C112.478 239.476 82.5804 269.357 65.8329 299.37C49.0737 329.404 45.5624 359.392 58.8405 382.391C72.1185 405.389 99.8452 417.342 134.235 417.845C168.6 418.348 209.427 407.397 248.533 384.819C287.639 362.241 317.536 332.359 334.284 302.347ZM249.033 385.685C327.504 340.38 369.19 265.674 342.142 218.826C315.094 171.978 229.555 170.727 151.084 216.032C72.6131 261.337 30.9266 336.042 57.9744 382.891C85.0223 429.739 170.562 430.99 249.033 385.685Z" fill="%23FD0330"/><path opacity="0.3" fill-rule="evenodd" clip-rule="evenodd" d="M343.284 338.347C360.043 308.313 363.554 278.324 350.276 255.326C336.998 232.328 309.272 220.374 274.882 219.872C240.517 219.369 199.69 230.32 160.584 252.898C121.478 275.476 91.5804 305.357 74.8329 335.37C58.0737 365.404 54.5624 395.392 67.8405 418.391C81.1185 441.389 108.845 453.342 143.235 453.845C177.6 454.348 218.427 443.397 257.533 420.819C296.639 398.241 326.536 368.359 343.284 338.347ZM258.033 421.685C336.504 376.38 378.19 301.674 351.142 254.826C324.094 207.978 238.555 206.727 160.084 252.032C81.6131 297.337 39.9266 372.042 66.9744 418.891C94.0223 465.739 179.562 466.99 258.033 421.685Z" fill="%23FD0330"/><path opacity="0.1" fill-rule="evenodd" clip-rule="evenodd" d="M352.284 374.347C369.043 344.313 372.554 314.324 359.276 291.326C345.998 268.328 318.272 256.374 283.882 255.872C249.517 255.369 208.69 266.32 169.584 288.898C130.478 311.476 100.58 341.357 83.8329 371.37C67.0737 401.404 63.5624 431.392 76.8405 454.391C90.1185 477.389 117.845 489.342 152.235 489.845C186.6 490.348 227.427 479.397 266.533 456.819C305.639 434.241 335.536 404.359 352.284 374.347ZM267.033 457.685C345.504 412.38 387.19 337.674 360.142 290.826C333.094 243.978 247.555 242.727 169.084 288.032C90.6131 333.337 48.9266 408.042 75.9744 454.891C103.022 501.739 188.562 502.99 267.033 457.685Z" fill="%23FD0330"/></g><defs><clipPath id="clip0"><rect width="287" height="336" fill="white"/></clipPath></defs></svg>');
    background-position: 100% 100%;
    background-repeat: no-repeat;
    background-size: 30% auto;
    position: relative;
    padding: 4vw;
    margin: 6vw auto 10vw;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
section.help .help-text {
    width: 30vw;
}
section.help .help-text h3 span {
    color: #1804f7;
}
section.help .help-text p {
    width: 80%;
}
section.help .help-text span {
    color: #979797;
}
section.help .help-text h3 {
    font-size: 2vw;
    font-weight: 500;
    margin: 20px 0;
}
section.help .help-form {
    width: 30vw;
    margin-right: 4vw;
}
section.help .help-ok {
    width: 30vw;
    margin-right: 4vw;
    font-size: 1vw;
    display: none;
}
#helpform .help-ok {
    font-size: 1vw;
    display: none;
}
#helpform.form-send .form {
    display: none;
}
#helpform.form-send .help-ok {
    display: block;
}
section.help.form-send .help-form {
    display: none;
}
section.help.form-send .help-ok {
    display: block;
}
section.help .help-form-name:hover {
    border-color: #c3c2be;
}
section.help .help-form input {
    display: block;
    width: 100%;
    padding: 20px;
    border: 1px solid #e4e4e4;
    border-radius: 10px;
    overflow: hidden;
    color: #000;
    font-size: 16px;
    font-family: inherit;
    line-height: 20px;
    white-space: nowrap;
    text-overflow: ellipsis;
    background-color: #f7f7f5;
    box-shadow: none;
    transition: border-color .2s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
section.help .help-form input:focus-visible {
    border-color:#c3c2be;
    background-color:#fff;
    outline:none
}
section.help .help-form input.help-form-email,
section.help .help-form input.help-form-phone {
    width: 48%;
    display: inline-block;
}
section.help .help-form input.help-form-phone {
    margin: 4% 4% 4% 0;
}
section.help .help-form button {
    font-family: 'Suisse Intl';
    vertical-align: top;
    font-size: 22px;
    height: 62px;
    border-radius: 100px;
    background: #000000;
    color: #fff;
    cursor: pointer;
    width: 48%;
    display: inline-block;
    border: 1px solid #000;
    margin-top: 5px;
    transition: all .2s;
}
section.help .help-form button:hover {
    background: #fff;
    color: #000;
    transition: all .3s;
}
section.help .help-form button:active {
    transform: scale3d(.98,.98,.98);
    transition: all .2s;
}
section.help .help-form .help-form-text {
    width: 48%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4%;
    font-size: 13px;
    margin-top: 17px;
}
section.partners {
    width: 50vw;
    margin: 10vw 10vw 0 auto;
}
section.partners p {
    width: 80%;
}
section.partners ul {
    margin: 1vw 0 0 0;
    padding: 0;
    display: flex;
    justify-content: start;
    flex-direction: row;
    flex-wrap: wrap;
    list-style: none;
    align-items: center;
}
section.partners ul li {
    margin: 1.5vw 3vw 1.5vw 0;
}
section.partners p span,
section.partners h3 span {
    display: block;
}
section.partners h3 {
    font-size: 2vw;
    font-weight: 500;
    margin: 20px 0;
}
.about-page .course-all-header h2 {
    width: 80vw;
}
.about-page .course-item-description-block-overlay-three {
    width: 40vw;
    height: 40vw;
    left: -82vw;
    top: -2vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #6dddff 100%, rgb(38 143 203) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
}
.about-page .course-item-description-block-overlay-two {
    width: 30vw;
    height: 29vw;
    top: 9vw;
    left: -61vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #ff5dcd 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
.about-page .course-item-description-block-overlay-one {
    width: 30vw;
    height: 30vw;
    top: 0;
    left: -56vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #f5b4fd 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
.c_list {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
}
.c_list_block_content {
    font-size: 1vw;
    line-height: 132%;
    font-weight: 400;
    letter-spacing: -.03em;
}
.c_list_block_content ul {
    list-style: none;
    margin-left: 0;
    padding: 0;
}
.c_list_block_content ul li svg {
    width: 1vw;
    margin-right: .3vw;
    margin-top: .2vw;
}
.c_list_block_content ul li {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    margin-bottom: 0.3vw;
}
.c_list_block_content ul li.option {
    font-weight: 600;
}
.c_list_block_name {
    font-size: 1vw;
    line-height: 132%;
    font-weight: 400;
    letter-spacing: -.03em;
    border-bottom: 2px solid #000000;
    padding-bottom: 0.05em;
    display: inline-block;
}
.c_list_block_desc {
    font-size: 1.5vw;
    line-height: 132%;
    font-weight: 400;
    letter-spacing: -.03em;
}
.c_list_block {
    width: 20vw;
    background: #fff;
    border-radius: 2vw;
    padding: 2vw;
    margin: 0 1vw;
    color: #000;
}
.c_list_block_price_desc {
    font-size: 1vw;
    line-height: 132%;
    font-weight: 400;
    letter-spacing: -.03em;
    margin-top: -0.3vw;
    opacity: .5;
}
.c_list_block_price {
    font-size: 2.5vw;
    line-height: 124%;
    letter-spacing: -.04em;
    font-weight: 400;
    margin-top: 3vw;
}
.c_list_block_buttons {
    margin-top: 1vw;
    padding: 0.7vw;
    text-align: center;
    border: 1px solid #000;
    background: #000;
    color: #fff;
    border-radius: 3vw;
    width: 100%;
    font-size: 1vw;
    line-height: 132%;
    font-weight: 400;
    letter-spacing: -.03em;
}
.c_list_block_buttons:hover {
    background: #fff;
    color: #000;
    transition: all .2s;
}
.button_center {
    width: 100%;
    text-align: center;
    margin-top: 2vw;
}
#program {
    display: flex;
}
.why {
    width: 100vw;
    position: relative;
    margin-top: 5vw;
}
.whom {
    width: 100vw;
    display: flex;
    position: relative;
    margin-top: 5vw;
}
.why {
    padding: 4vw;
}
.whom-left {
    width: 70vw;
    padding-left: 5vw;
}
.whom-right {
    width: 30vw;
    position: sticky;
}
.whom-right img {
    width: 100%;
}
.w_right {
    display: flex;
    flex-direction: column;
    margin-top: 5vw;
    margin-right: 10vw;
}
.w_right_block {
    font-size: 2vw;
    line-height: 124%;
    letter-spacing: -.04em;
    width: 100%;
    margin-bottom: 5vw;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    border-top: #ffffff40 solid 1px;
}
.w_right_block_number {
    position: relative;
    padding: 1vw 2vw;
}
.w_right_block_number:after {
    content: '';
    width: 1px;
    background: #ffffff40;
    height: 3vw;
    position: absolute;
    display: block;
    top: 0;
    right: 0;
}
.w_right_block_text {
    max-width: 35vw;
    padding: 1vw 2vw;
}
section.cost h2 {
    font-size: 10vw;
    margin: 0 1.5vw 2vw;
    font-weight: 500;
    letter-spacing: -.3vw;
}

footer {
    margin-top: 10vw;
    padding: 4vw 2vw 2vw;
    background: #1f1f1f;
}
footer .social-block {
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    width: 100vw;
    margin-left: -2vw;
    text-align: center;
}
footer .social-item:nth-child(1) {
    border-left: 1px solid #000;
}
footer .social-item a {
    padding: .9vw 3vw;
    display: block;
    transition: all .2s;
}
footer .social-item a:hover {
    background: #000;
    color: #fff;
    text-decoration: none;
    transition: all .3s;
}
footer .social-item {
    display: inline-block;
    border-right: 1px solid #000;
}
footer .copyright {
    width: 96vw;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 2vw;
}
footer .copyright-police {
    width: 20vw;
}
footer .copyright-police span {
    font-weight: 600;
}
footer .copyright-police p {
    font-size: 14px;
}
footer .copyright-tdsgn {
    text-align: right;
}
footer .copyright-tdsgn svg {
    height: 25px;
}

footer .social-menu {
    width: 96vw;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
footer .social-menu .social-menu-subscribe {
    width: 30vw;
}
footer .social-menu .social-menu-subscribe h3 {
    font-size: 2vw;
    font-weight: 400;
    margin:0 0 40px 0;
}
footer .social-menu .social-menu-subscribe form {
    position: relative;
    margin-bottom: 4vw
}
footer .social-menu .social-menu-subscribe input {
    display: block;
    width: 90%;
    padding: 20px 100px 20px 30px;
    border: 1px solid #000;
    border-radius: 50px;
    overflow: hidden;
    color: #000;
    font-size: 19px;
    font-family: inherit;
    line-height: 20px;
    white-space: nowrap;
    text-overflow: ellipsis;
    background-color: transparent;
    box-shadow: none;
    transition: border-color .2s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
}
footer .social-menu .social-menu-subscribe button {
    background: transparent;
    border: none;
    right: calc(10% + 30px);
    top: 19px;
    position: absolute;
    cursor: pointer;
}
footer .social-menu .social-menu-subscribe svg {
    width: 49px;
}
footer .social-menu .social-menu-subscribe button:hover svg path {
    fill: #770aff;
    transition: all .3s;
}
footer .social-menu .social-menu-subscribe svg path {
    stroke-width: 0 !important;
    transition: all .2s;
}
footer .social-menu-menu  {
    margin-right: 5vw;
}
footer .social-menu-menu ul {
    display: inline-block;
    vertical-align: top;
    margin: 0 0 0 3vw;
    padding: 0;
    list-style: none;
}
footer .social-menu-menu ul:nth-last-child(1) {
    margin-left: 6vw;
}
footer .social-menu-menu ul li {
    font-size: 1vw;
    margin-bottom: 10px;
}
footer .social-menu-menu ul p {
    color: #505050;
    font-size: 16px;
}
footer .social-menu-menu ul li a {
    text-decoration: none;
    /*transition: color .2s;*/
    position: relative;
    padding-bottom: 2px;
}
footer .social-menu-menu ul li a:hover {
    color: #fff;
    /*transition: color .3s;*/
}
footer .social-menu-menu ul li a:hover:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left center;
    transform-origin: left center;
}
footer .social-menu-menu ul li a:after {
    -webkit-transition: transform .5s cubic-bezier(.215, .61, .355, 1);
    transition: transform .5s cubic-bezier(.215, .61, .355, 1);
    background-color: #000;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    position: absolute;
    z-index: -1;
}
footer .copyright-gov {
    margin: 0 auto 0 5vw;
}
footer .gov-logo {
    background: right top url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAAnCAYAAACSamGGAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAA0KSURBVHgBrZlpcF1VHcDPXd7+8rK/JG3atDW0TZoudqFQSlWmFUeZoh1wGQZnOjoyjrvyEb/4QUc/uiuj4yiIfHFEB0a2aSmUgiVQKA2FFtIlfU3eS17Wt9537/H3v/elgDSp1t6Zk3vuOf/z37fzYqhr9HR0dCRc1/2YMs2l49nsb9Q1fEx1jZ6xsbGyaZp5Q+u8usaPdSWArq6uvkgksiHR1lYpzszMXg6mra1tSzweX20YxkqtdXcymUwXCoWTC+Fs72q/OR6Nt0Wj0UKpVKqo/4PJWHNHx1pM2G+bZr/nuulSOHxWlctOa2vrEphKQcBnOp5MfkUJg563BEbTzFfFY7FjxWKxhASJlG0nKxWfl1prOr3b8FQHwnRZlhW1GhuL1bm54iJ8vGtutNEg45K07e1rTK03MZogXOX9OYi1A5MA+YCM3t7eiMAaSu0BZiv+uEQr1cr3Gr57u7u7QyDsisVi13V2dnbUYb/BK8l+gveOkOtuAS4me1gt3tjY2Nzf3x++LJMQ+J4/3v3+AWp+e3x8/A9o8zm00zmTy51GA2s9ZBI5JicnN/qwhnGIdQd/dCzTzGrDKOdyuUMjIyPVkOf11LTeUqvV1tUxX3ANYwqcj8HooGUY+8u12i3CKGt3hCKRr2ez2T0fYFIiEwIh0zBWY467ZU277hswcyum3fK+A5b1NQ7tQWO7ZS5rruP8itdpmItwxuDsgbo1brJCob3gvdOwrM+0pNM3cvYBxgptWSs904wgXDRkGAcQqMR8udJ6QJtmz3tp+j6Jk3v41U6mG0HYzvdfcf5GfGzGtu0Rx3GmYCgWTqXOYPYIJvNg0jFM82gqmXTQ+p2MA55h/FM7zilcoRmfHfA87y3W24BvgoEzbrX6DzLArdD4V9W2T4ZNM8lew9jo6JMItB/N3gL8jKf1sVKxOHSJyabOzhWxUMjDTF0AJJFExxKJBsxwwrPtDFJkOTzDet7SugbSrWgs5RtZqWbW+2DYhvlnxsfGTiUSiSmYi8HMHWgvxv4SYMXnStC4wN4c2WJoPJOZjEUiDlqbCSeTCtx7wNgNrhPQfp7IbyYwJwLP87zrwuGwmNTE5GcAKkP8E2gv6UYiF0dHRyeWL19OcFbOwv8aEH0E2KUwvkx53k0wvIv18SqYBMf4wEAJ7Y+Bp5v9TwO/hvUU86VQ+xTzWXBVeXv4e07VaqdsrXeALwTdAq5QwjdbReOXNJmMx7eC/UuYrh+pmzCFmPM5tPBNs1I5ShrJANeCCXdB8Pu+MJgPWInQEmvnQOwarnseE8/YMzNxtLKd/Xb2iwgh0Z5gLhG7GTq3sXcEvBfx9y6YEQb3sWYixAjCrWbtC+DdWCwUfuszCfAJ/LEBLX4IoDhAOdb7VZBKVuKbkuDe8UXS+rxEJ4QnIfY28INocZkWn/O8pycmJjKN0WgKXB+GyCbgJ9Hgk7zf4TvEuB+B3uLMS5jcssLhT8Lgt5X4t2QMcSdSE/PhXDa7T7TtJw/y3j1sTDJPQ1yk9/Mi30UIzEn6Amkek/84k8n04lMW6WQSaWOGbW9QpA3OWTB2tFqtPqXCYR1S6j4IOVrpvKGMh1g/gY8JXvHVLObuYX6jaJazE8wvwGAXQsSheYH1HGsOdF7GOu/YmFWibzNABhqZ1iI9/gRRSb4FRieI1p8/f77K3i9FMjRWXrFihY1zhQgs7ZuKzIB2JKXkGSa4kp7pPVzW5dOFqcIU+zMtLS1JMxLpxQJ7odmrJe3hKsIg8BJUs6YEMCbnO45vP4FwnhVLJluUMCQ+hL+xWUIKSU1tKnBmYT7KviTjs4xzuEh5amqqlohGxRVWst8usLxTmL1VLMR3tFZx/jibnx2rmy0E0ZhtWXcxX8t+A7jLMAo5o5GzotEwa63MMYYaweSP5vN5x8TJX0DFhwDIcCBC+LdJTvN8jXo5UGTQagakMeb3cjg5H3Xj6XQF2MfZcxjTDNcQN+BbIpUoldruqKBihKxodBnrtwsuOQ7n07ynwDsMD6KcZhGI95Cr1IOUXbEQZtH6IVR8n5gL0zscGGGnE2SrDC2+6cWlYajzlSmXy7VLpWAoyLcI0cRrCdruFtNBpJUzEV+j88/YmEOqydbhJX218RaGbM5sk0xBpRr2/VLrfbZSv5+dnd0k/YSPpLGtbXOI1ADgOhYionq/zGm9Xr7rZHow5T3pdPo4veNOBFtHIrZM8UHJBqQPgkgCTaQXrcu5MQh+1I/WXO6HgoTzLwJfgZlZGJ1haQ48Lxqedztzm3OSq5+fyGb/NC+fTTm6GQL7QLReEjlIz/qmoylgbdQ3jdZLg8xv9lH83yL5v0aynwHxAPuPYzYPLWUgYGJi0c5JWjvTI82EarUJAuJSIyww4LMYJWFQ3APhtwPzNpZsgWYPuboLYXZA66s+k2zmEP0FpClysFHKFxqUFCRDTBF612ZqF2mnyfG8il/yiAcihLSgN7laiwNdhMFpRg/J/xRMvk5FSTFfjzL6fO0SKCoIxhAMWryrfsDY9hnJ20r8X+tznvj5vCZJJycbGhpykXhcomwjUkXRThJGpZKk/UgzjDnJhRzezP5GQ7SBKaE3CJdSTbawFwVWuvEc8DcwP1grl9+0cSEVdE3VuutU/AxCA4y5PS3BpnWBNcm1WopFzbKeyY+Onphn0m/V5HoAwE7pFaWMQXA1US7pZQbVzxpCWOtXlSR4ekapDEq0TV+If47g8G+yN8l3D9q5QQUpJG4UoC2MaG2LYFLjpaJJjwDOM3V8Yj3XDyYaDOYfp5/Yr97z+K0aee8MdfKxeEODOPouEHaDZEpSCf7WqIM6LLnvqGisnj9FY8dSDQ0X2Zfq0aaDzkjS0Sw3xv1Umipd0fWGZAvDkHz5Bu8+VDOBBWj3MD/MG9KA0MuC+8/4+o/yExN//wCT9ScWj0Yb5RDaq0JwVZ2oBELZ1yCa4x0H4hjzIeYJ1LRbqoeScioaDKpPKp5I9CNAnnzngE8qmQ2+ZbRrx6VE4SqSuEV4KQC/Y/4y8wLBOYfS8gsxqUKhUJGyMA5iqRpihlckcGBA6qpoNg6yFYzDDk0DNmyluz7kM4mPGkFFksZjGE6HJCmb0uQrJQyljABvJxocNwILFRjP0lBLR/4UmeEc3jFJLn7fDdJ+z7w2PT09qfr7C23ZbDMEWriLHDelfaLR4C3JNgsDVRAO43RzNc+LVwqFs9F43DFFYMPPA1KFspypym2SUtjNkAgehIFxfH6zpChgRpmXSGNPS18KTIZcetlb4wevtLmci7rP0p1vIy0N5kOhI2j3JRJ1IZ/LPRKNBBdEntWmRaAoYxhz9iCENCSr2VkqAQK78n2E9LNDWVa6bs7XeY9UK5WnpUtHaLFOlub32bm5OUct8NgLbVhCjPSguCBRFiTxHvbXbfvLvDpAnkejx7gxHuciJ/3mXjS1W4LODAJhkKts1XHdFUTubfjjDhi8nwT9hODhUrYW2G1YZiWfD6lFngWZhODP2LydzL8MxI/Lml+dCIC6BeSOnW7v6GiVxoQxTIQdqAu4maywrea63zKkFaPMyj0Ixj/P3GeSxqYMfB5zT6krPAtr0rJGILQELYzOr6HZ7Xy3QEzCs8y7gDQ/hYHr5KZnBi2Y5/uwYfycI+OMDV5gernktQgeBP8uuAZMKY/4ON97wPcTfHL0crws+IMVSVoib5KxBHNuZykM4lcYh1TQusl1QptBaybtVlQiljX5FcTwg4c5Q6JaKslp/jx4ia7nTfN9VsoyME1E9II+ueivamweh3gLSL6IqfdSh6W3lHZLqlAZ5vhxQsvvOrtYb/TmNY5nkBnWc1buLHJHl7AvsnYklUq1eEETLP2jpBopuWewnLsQH4v+qka5bCQK+yGyE83txAdKMLPBv1RRMqGcqXjeUWC+w7ckc2EmQrKXW2eNFHUYQRPMxUXikqZCko6Cxles0wujnQh5DAu89p/5cf6xF2MSU0Z1kMz9b6kQlK17adX6WV9KtbH4FeLX7L/Gd6shPubHjSGBdD096lZatgeY/wVNtbqh0LDlunfP+6YhBcAwDnJN+MVifCyqyb6+vgvcMfJoRvqr1U61es/Upk1z0Wz2LiT4LOt9MPgqRDexf4G5lD65XowzH8GMKxF0O2MARnMTfX0vRjKZY9Vw+BGYfbhs23/zyuWX0WB5MT4W1eTg4KDT1NR0knQhQdPB5WsqPTS0g1LYQ+qQXCg/JDTXL05zfo9Ined9mvV1RK8Eh9xbVpm2vVYdPFibDO41alb99499JQBhrLm5+VXKlh8X3GtLIako0mzI7TBosWRLNBj3f6mg8ZAbKAxKoyClrugFV4Wreq74c7Q84tCUynP+vFicppLIHcbD5LPSiStJPUH3lJDEriQ5BVGbxUFP8y2BMTiP4399DHX1j5y1uM3JrxLy34YETEnnJI3u6yTQw9T7R6nLcyrIk1f9/BsK/L6ggJdSlQAAAABJRU5ErkJggg==') no-repeat;
    background-position: 50% 0;
    display: inline-block;
    width: 38px;
    height: 38px;
    text-decoration: none;
    vertical-align: top;
}
footer .copyright-gov a {
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
    margin-left: 5px;
    margin-top: 2px;
}

section.corp-text {
    width: 70vw;
    margin: 8vw 0 8vw auto;
    position: relative;
}
section.corp-text h3 {
    font-size: 4vw;
    font-weight: 400;
}

section.course-item-main {
    width: 100vw;
    height: 80vh;
    display: flex;
    align-content: center;
    align-items: center;
}
section .course-item-main-text {
    margin: 5vw 2vw 0;
    width: 45vw;
}
section .course-item-main-text span {
    background: #2ECDFF;
    font-size: 1vw;
    padding: 2px 5px 5px;
    display: inline-block;
}
section .course-item-main-text-header {
    display: block;
    margin: 0 0 20px;
}
section .course-item-main-text-header h1 {
    font-size: 5vw;
    font-weight: 500;
    color: #000;
    margin: 0;
    letter-spacing: -.2vw;
    line-height: 100%;
    display: inline;
    /*text-shadow: 0 0 10px rgb(0,0,0,.2);*/
}
section .course-item-main-text p {
    margin: 0;
    color: #000;
    font-size: 1vw;
    font-weight: 300;
    width: 80%;
}
.course-cover {
    width: 100vw;
    height: 80vh;
    position: absolute;
    top:0;
    left: 0;
    overflow: hidden;
    z-index: -1;
}
.course-cover img {
    width: 100%;
}
.course-item-numbers {
    padding: 3vw 2vw;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #00000060;
}
.course-item-numbers .course-item-numbers-block-text {
    color: #8d8d8d;
    margin-top: 10px;
}
.course-item-numbers .course-item-numbers-block-number {
    color: #000;
    font-size: 2vw;
    font-weight: 500;
    position: relative;
}
.button-cls {
    font-size: 1vw;
    border-radius: 1vw;
    border: 2px solid #000;
    padding: 5px 20px 8px;
    background: #000000;
    color: #fff;
    transition: all .3s;
    text-align: center;
    cursor: pointer;
}
.course-item-sales {
    text-align: center;
    color: #fff;
    transform: rotate(-10deg);
    width: 7vw;
    height: 7vw;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    margin-top: -15vh;
    justify-content: center;
    background: #fa4b4e;
    border-radius: 50%;
}
.course-item-sales p {
    font-size: .6vw;
    margin: 0;
}
.course-item-sales span {
    font-size: 2vw;
}
.new-price {
    font-size: 1.5vw;
    font-weight: 600;
    position: absolute;
    display: inline-block;
    background: #ffec9c;
    white-space: nowrap;
    color: #000;
    border-radius: 2vw;
    padding: 5px 25px;
    top: 0;
    left: 0;
    transform: rotate(-10deg);
}
.price-up {
    margin-top: 2vw;
}
section .course-item-main-text .price-up p {
    margin-top: 7px;
    font-size: .7vw;
}
section .course-item-main-text .price-up span {
    background: #ffec9c;
}
.course-item-target {
    width: 50vw;
    margin: 10vw 5vw 10vw 45vw;
}
.course-item-target h2 {
    margin: 0;
    font-weight: 400;
    font-size: 3vw;
}
.course-item-target h2 b {
    font-weight: 500;
}
.course-item-teacher {
    margin-top: 10vw;
}
.contacts h2,
.course-item-reviews h2,
.course-item-how h2,
.course-item-price h2,
.course-item-form h2,
.course-item-description h2,
.course-item-result h2,
.course-item-whom h2,
.main-slogan h2,
.course-item-program h2,
.course-item-teacher h2 {
    font-size: 10vw;
    margin: 0 2vw 1.5vw;
    font-weight: 500;
    letter-spacing: -.3vw;
}
.course-item-teacher-all {
    margin: 2vw;
    display: flex;
}
.course-item-teacher-block:nth-child(1) {
    width: 25%;
}
.course-item-teacher-block:nth-child(2) {
    width: 75%;
    margin-left: 5%;
}
.course-item-teacher-block-item {
    margin-right: 2%;
}
.course-item-teacher-block-item:nth-last-child(1) {
    margin-right: 0;
}
.course-item-teacher-block-list {
    display: flex;
}
.course-item-teacher-block h3 {
    font-size: 2vw;
    font-weight: 500;
    margin: 0 0 15px 0;
}
.course-item-teacher-block-item {
    display: inline-block;
    max-width: 20vw;
}
.course-item-teacher-block-item-photo img {
    width: 100%;
}
.course-item-teacher-block-item-photo {
    max-width: 15vw;
    overflow: hidden;
    -webkit-mask: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2aWV3Qm94PSIwIDAgNjYwIDUwNSIgd2lkdGg9IjY2MCIgaGVpZ2h0PSI1MDUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHBhdGggZD0iTSA0MTQuMTE0IDQ3Mi41NDQgQyA1ODkuOTYxIDQwNS4wODcgNjk0LjcxMiAyNTEuODYyIDY0OC4wODIgMTMwLjMwNiBDIDYwMS40NTIgOC43NSA0MjEuMDk4IC0zNS4xMDYgMjQ1LjI1MSAzMi4zNTEgQyA2OS40MDQgOTkuODA4IC0zNS4zNDcgMjUzLjAzMyAxMS4yODMgMzc0LjU4OSBDIDU3LjkxMyA0OTYuMTQ1IDIzOC4yNjcgNTQwLjAwMSA0MTQuMTE0IDQ3Mi41NDQgWiIgZmlsbD0iYmxhY2siLz4KPC9zdmc+);
    mask: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2aWV3Qm94PSIwIDAgNjYwIDUwNSIgd2lkdGg9IjY2MCIgaGVpZ2h0PSI1MDUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHBhdGggZD0iTSA0MTQuMTE0IDQ3Mi41NDQgQyA1ODkuOTYxIDQwNS4wODcgNjk0LjcxMiAyNTEuODYyIDY0OC4wODIgMTMwLjMwNiBDIDYwMS40NTIgOC43NSA0MjEuMDk4IC0zNS4xMDYgMjQ1LjI1MSAzMi4zNTEgQyA2OS40MDQgOTkuODA4IC0zNS4zNDcgMjUzLjAzMyAxMS4yODMgMzc0LjU4OSBDIDU3LjkxMyA0OTYuMTQ1IDIzOC4yNjcgNTQwLjAwMSA0MTQuMTE0IDQ3Mi41NDQgWiIgZmlsbD0iYmxhY2siLz4KPC9zdmc+);
    -webkit-mask-size: 100% auto;
    mask-size: 100% auto;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    position: relative;
}
.course-item-teacher-block-item h5 {
    margin: 10px 0 0 0;
    font-size: 16px;
    font-weight: 400;
    max-width: 70%;
    line-height: 120%;
    color: #999;
}
.course-item-teacher-block-item h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 400;
    max-width: 70%;
    line-height: 120%;
    color: #999;
}
.course-item-teacher-block-item h3 {
    font-size: 1vw;
    margin-top: 10px;
}
.course-item-teacher-block-one {
    margin-bottom: 40px;
}
.course-item-teacher-block-one .course-item-teacher-block {
    width: 100%;
}
.course-item-program-list span {
    margin-left: 5px;
}
.course-item-program-list .ul-inside li {
    padding: 0;
    margin-bottom: 5px;
    border: none;
}
.course-item-program-list .ul-inside li:before {
    content: "—";
    display: block;
    position: absolute;
    left: -22px;
}
.course-item-program-list .ul-inside {
    margin: 0 0 0 22px;
    list-style: none;
}
.course-item-program-list {
    border: 1px solid #000;
    border-radius: 40px;
    padding: 5vw;
    width: 45vw;
    margin-left: 15vw;
    margin-top: 3vw;
    position: relative;
}
.course-item-program-list:before {
    position: absolute;
    top: -1px;
    right: -1px;
    width: 41px;
    height: 41px;
    background-image: linear-gradient(45deg,#000000 50%,#ffffff 50%,#ffffff 100%);
    content: '';
}
.course-item-program-list ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.course-item-program-list ul li {
    position: relative;
    padding: 2vw 0 1vw;
    cursor: pointer;
    border-bottom: 1px solid #000;
    transition: all .2s;
}
.course-item-program-list ul li:active h3 {
    transform: scale3d(.98,.98,.98);
    transition: all .3s;
}
.course-item-program-list ul li:hover h3 {
    color: #3E2DFD;
    transition: all .3s;
}
.course-item-program-list ul li h3:after {
    transform: rotate(90deg);
    transition: all .2s;
}
.course-item-program-list ul li.open h3:after {
    transform: rotate(0deg);
    transition: all .3s;
}
.course-item-program-list ul li:hover h3:before,
.course-item-program-list ul li:hover h3:after {
    background: #3E2DFD;
    transition: all .3s;
}
.course-item-program-list ul li h3:before,
.course-item-program-list ul li h3:after {
    content: '';
    position: absolute;
    width: 1vw;
    height: 2px;
    top: 47%;
    right: 2%;
    background: #000000;
    transition: all .2s;
}
.course-item-program-list ul li h3 {
    font-size: 1.5vw;
    font-weight: 400;
    margin: 0;
    padding-right: 100px;
    position: relative;
    transition: all .2s;
}
.course-item-program-list ul li span {
    height: 0;
    overflow: hidden;
    display: block;
    margin-top: 15px;
    margin-right: 100px;
    transition: all .2s;
}
.course-item-program-list ul li.open span {
    height: auto;
    overflow: visible;
    display: block;
    margin-top: 15px;
    margin-right: 100px;
    transition: all .3s;
}
.course-item-result {
    margin: 10vw 0;
}
.course-item-result ul {
    width: 70vw;
    margin: 0 0 0 20vw;
    padding: 0;
    list-style: none;
}
.course-item-result ul li {
    display: flex;
    align-items: center;
    margin: 1.5vw 0;
}
.course-item-result ul span {
    font-size: 1.8vw;
    display: inline-block;
    width: 55vw;
    margin-left: 6vw;
}
.course-item-result ul h4 {
    font-size: 6vw;
    font-weight: 400;
    display: inline-block;
    vertical-align: top;
    margin: 0;
    width: 4vw;
    text-align:center;
    position: relative;
}
.course-item-result ul h4:after {
    content: '';
    display: block;
    background: #000;
    position: absolute;
    width: 0.5vw;
    border-radius: 0.6vw;
    transform: rotate3d(1, 1, 1, 30deg);
    height: 100%;
    top: 0;
    right: -3vw;
}
.course-item-description-block {
    width: 50vw;
    margin-left: 10vw;
    position: relative;
}
.course-item-description-block p {
    font-size: 1.8vw;
}
.course-item-description-block-overlay {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
}
.courses-block-item-price p {
    max-width: 300px;
    font-size: 14px;
}
.courses-block h3 {
    font-size: 2vw;
    font-weight: 400;
    margin-bottom: 0;
    margin-top: 5vw;
    color: #ffffff;
    background: #000;
    display: inline-block;
}
.about-page-desc-gradient .course-item-description-block-overlay-one,
.course-item-description-block-overlay-one {
    width: 30vw;
    height: 30vw;
    top: 0;
    left: 8vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #fdb4b4 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
.about-page-desc-gradient .course-item-description-block-overlay-two,
.course-item-description-block-overlay-two {
    width: 20vw;
    height: 20vw;
    top: 9vw;
    left: 9vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #ffbe5d 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
.about-page-desc-gradient .course-item-description-block-overlay-three,
.course-item-description-block-overlay-three {
    width: 40vw;
    height: 40vw;
    left: -10vw;
    top: -5vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #fff46d 100%, rgb(38 143 203) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
}

.course-item-whom {
    margin: 10vw 0 10vw 35vw;
    width: 60vw;
}
.course-item-whom h2 {
    margin: 0 0 3vw 0;
}
.course-item-whom-block-item {
    display: flex;
    margin-bottom: 3vw;
    padding-bottom: 3vw;
    border-bottom: 1px solid #00000060;
}
.course-item-whom-block-item-number,
.course-item-whom-block-item-header {
    font-size: 2.5vw;
    text-transform: uppercase;
}
.course-item-whom-block-item-header {
    width: 44vw;
    margin-left: .5vw;
}
.course-item-whom-block-item-number {
    width: 5vw;
}
.course-item-whom-block-item-text {
    width: 45vw;
    margin-left: 5vw;
    font-size: 1vw;
    font-weight: 300;
    display: flex;
    align-content: center;
    align-items: center;
}
section.reviews.course-item-page {
    background: #000;
    padding: 4vw 2vw 6vw;
}
section.reviews.course-item-page h2 {
    color: #ffffff;
    border-bottom: 1px solid #ffffff60;
}
section.reviews.course-item-page .reviews-block-item .reviews-block-item-course,
section.reviews.course-item-page .reviews-block-item .reviews-block-item-name {
    color: #fff;
}

.swiper {
    width: 70vw;
    margin-left: 4vw;
    margin-top: 3vw;
}

.swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 3vw;
    -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.15);
    -moz-box-shadow:    0 0 30px 0 rgba(0, 0, 0, 0.15);
    box-shadow:         0 0 30px 0 rgba(0, 0, 0, 0.15);
}

.modal:before {
    content: '';
    position: absolute;
    z-index: -1;
    width: 100vw;
    height: 100vh;
    background: #00000070;
    top: 0;
    left: 0;
    opacity: 0;
}
.modal {
    opacity: 0;
    visibility: hidden;
    position: fixed;
    z-index: -1;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    display: flex;
}
.modal.open {
    opacity: 1;
    z-index: 99;
    visibility: visible;
}
.modal.open:before {
    opacity: 1;
    transition: all .4s;
}
.request-form-wrap {
    width: 35vw;
    min-width: 760px;
    padding: 2vw 4vw;
    background: #222;
    border-radius: 2vw;
    margin: auto;
    transform: scale3d(.8, .8, .8);
    transition: all .3s;
}
.modal.open .request-form-wrap {
    transform: scale3d(1, 1, 1);
    transition: all .5s .2s;
}
.request-form-wrap form {
    display: flex;
    flex-wrap: wrap;
    margin-top: 0;
    justify-content: space-around;
    flex-direction: column;
}
.request-form-wrap form .input--kozakura:nth-child(2) {
    margin-right: 2vw;
}
.request-form-wrap form .input--kozakura:nth-child(2),
.request-form-wrap form .input--kozakura:nth-child(3) {
    width: calc(50% - 1vw);
}
.request-form-wrap form button {
    font-family: 'Suisse Intl';
    vertical-align: top;
    font-size: 20px;
    padding: 14px 60px;
    height: 62px;
    border-radius: 100px;
    background: #ff4c02;
    color: #000;
    cursor: pointer;
    width: calc(50% - 1vw);
    display: inline-block;
    border: 1px solid #ff4c02;
    margin-top: 5px;
    transition: all .2s;
}
.request-form-wrap form button:hover {
    background: #fff;
    color: #000;
    border: 1px solid #000;
    transition: all .3s;
}
.request-form-wrap form button:active {
    transform: scale3d(.98,.98,.98);
    transition: all .2s;
}
.request-form-wrap h2 {
    font-size: 4vw;
    font-weight: 500;
    letter-spacing: -0.2vw;
    margin: 0;
}
.button-block {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}
.button-block p a {
    color: #767676;
}
.button-block p {
    width: calc(50% - 1vw);
    font-size: 14px;
    color: #767676;
}


.input {
    position: relative;
    z-index: 1;
    display: inline-block;
    vertical-align: top;
}

.input__field {
    position: relative;
    display: block;
    float: right;
    padding: 0.8em;
    width: 60%;
    border: none;
    border-radius: 0;
    background: #000;
    color: #aaa;
    font-weight: 400;
    font-family: 'Suisse Intl';
    -webkit-appearance: none; /* for box shadows to show on iOS */
}
.big-input {
    width: 100%;
}

.input__field:focus {
    outline: none;
}

.input__label {
    display: inline-block;
    float: right;
    padding: 0;
    width: 40%;
    color: #696969;
    font-weight: 400;
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.input__label-content {
    position: relative;
    display: block;
    padding: 1.6em 0;
    width: 100%;
}

.graphic {
    position: absolute;
    top: 0;
    left: 0;
    fill: none;
}
.input--kozakura {
    overflow: hidden;
    padding-bottom: .5vw;
}

.input__field--kozakura {
    padding: 0.5em 0.5em;
    margin-top: 1em;
    width: 100%;
    background: transparent;
    color: #2F3238;
    font-size: 1.55em;
    opacity: 0;
}

.input__label--kozakura {
    width: 100%;
    text-align: left;
    position: absolute;
    top: .2vw;
    pointer-events: none;
    overflow: hidden;
    -webkit-transform: translate3d(1em, 2.75em, 0);
    transform: translate3d(1em, 2.75em, 0);
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
}

.input__label-content--kozakura {
    color: #A4A5A6;
    padding: 0;
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
}

.input__label-content--kozakura::after {
    content: attr(data-content);
    position: absolute;
    font-weight: 400;
    top: 100%;
    left: 0;
    height: 100%;
    width: 100%;
    color: #999;
    padding: 0;
    font-size: 18px;
}

.graphic--kozakura {
    fill: #f7f7f5;
    pointer-events: none;
    top: 1em;
    bottom: 0;
    height: 4.5em;
    z-index: -1;
    -webkit-transition: -webkit-transform 0.7s, fill 0.7s;
    transition: transform 0.7s, fill 0.7s;
    -webkit-transition-timing-function: cubic-bezier(0, 0.25, 0.5, 1);
    transition-timing-function: cubic-bezier(0, 0.25, 0.5, 1);
}

.input__field--kozakura:valid,
.input__field--kozakura:focus,
.input--filled .input__field--kozakura {
    -webkit-transition: opacity 0s 0.35s;
    transition: opacity 0s 0.35s;
    opacity: 1;
}

.input__field--kozakura:valid + .input__label--kozakura,
.input__field--kozakura:focus + .input__label--kozakura,
.input--filled .input__label--kozakura {
    -webkit-transition-delay: 0.15s;
    transition-delay: 0.15s;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.input__field--kozakura:valid + .input__label--kozakura .input__label-content--kozakura,
.input__field--kozakura:focus + .input__label--kozakura .input__label-content--kozakura,
.input--filled .input__label-content--kozakura {
    -webkit-transition-delay: 0.15s;
    transition-delay: 0.15s;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
}

.input__field--kozakura:valid ~ .graphic--kozakura,
.input__field--kozakura:focus ~ .graphic--kozakura,
.input--filled .graphic--kozakura {
    fill: #e5e5e5;
    -webkit-transform: translate3d(-66.6%, 0, 0);
    transform: translate3d(-66.6%, 0, 0);
}
.modal-close-overlay {
    width: 100vw;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
}
.modal.close .request-form-wrap {
    transform: scale3d(.8, .8, .8);
    opacity: 0;
    transition: all .3s;
}
.modal.close:before {
    opacity: 0;
    transition: all .2s .2s;
}
.modal-close {
    position: absolute;
    top: 0;
    right: 0;
    width: 3.5vw;
    height: 3vw;
    border-radius: 0 2vw 0 1vw;
    background: #3b3b3b;
    cursor: pointer;
}
.modal-close:before,
.modal-close:after {
    content: '';
    width: 1.2vw;
    height: 1px;
    background: #999999;
    position: absolute;
    transform: rotate(45deg);
    top: 1.5vw;
    left: 1vw;
    border-radius: 50%;
    transition: all .2s;
}
.modal-close:after {
    transform: rotate(-45deg);
}
.modal-close:hover {
    background: #dfdfdf;
}
.modal-close:hover:before,
.modal-close:hover:after {
    background: #000;
    transition: all .3s;
}
.pay-done {
    margin: 5vw;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
    justify-content: center;
}
.pay-done h1 {
    font-size: 2vw;
}
.pay-done span {
    font-size: 2vw;
}
.pay-done .pay-enter {
    margin-top: 2vw;
    text-decoration: none;
    display: inline-block;
    background: #ff4c02;
    color: #000;
    font-size: 2vw;
    padding: 0.5vw 1vw;
    cursor: pointer;
    transition: all .2s;
}
.course-item-price {
    margin: 10vw 0;
}

.course-item-price-wrap {
    display: flex;
    align-items: flex-start;
    width: 76vw;
    margin: 0 3vw;
}
.course-item-price-block {
    width: 50%;
    border: 1px solid #000;
    border-radius: 40px;
    margin-right: 2vw;
    padding: 2vw;
}
.course-item-price-block h3 {
    margin: 0;
    padding: 5px 20px;
    background: #2ECDFF;
    border-radius: 20px;
    font-weight: 400;
    font-size: .8vw;
    display: inline-block;
}
.course-item-price-block:nth-last-child(1) {
    background: #000;
    color: #fff;
}
.course-item-price-block:nth-last-child(1) h3 {
    background: #AAFEA3;
    color: #000;
}
.course-item-price-block h4 {
    font-size: 2.5vw;
    font-weight: 400;
    width: 90%;
    margin: 2vw 0 0 0;
}
.course-item-price-howmuch {
    display: flex;
    justify-content: flex-start;
    margin-top: 2vw;
}
.course-item-price-howmuch div {
    margin-right: 10%;
}
.course-item-price-howmuch-people span,
.course-item-price-howmuch-time span {
    font-size: 3vw;
    display: block;
}
.course-item-price-block .price {
    position: relative;
    font-size: 5vw;
    display: block;
    border-top: 1px solid;
    margin-top: 4vw;
    padding-top: 2vw;
}
.course-item-price-block .price .new-price {
    font-size: 3vw;
    font-weight: 600;
    position: absolute;
    display: inline-block;
    background: #ffec9c;
    white-space: nowrap;
    color: #000;
    border-radius: 2vw;
    padding: 5px 25px;
    top: 2.5vw;
    left: 3vw;
    transform: rotate(-10deg);
}
.open-modal-request {
    cursor: pointer;
}
.courses-block-item-name a {
    text-decoration: none;
}
.course-item-price-block .open-modal-request {
    vertical-align: top;
    font-size: 1.5vw;
    padding: 1vw 0;
    border-radius: 100px;
    background: #000000;
    color: #fff;
    cursor: pointer;
    width: 100%;
    text-align: center;
    display: inline-block;
    border: 1px solid #000;
    margin: 4vw 0 1vw 0;
    transition: all .2s;
}
.course-item-price-block .open-modal-request:hover {
    background: #fff;
    color: #000;
    transition: all .3s;
}
.course-item-price-block .open-modal-request:active {
    transform: scale3d(.98,.98,.98);
    transition: all .2s;
}
.course-item-price-block .open-modal-request.invert:hover {
    background: #000000;
    color: #fff;
    border: 1px solid #fff;
}
.course-item-price-block .open-modal-request.invert {
    background: #fff;
    color: #000;
    border: 1px solid #fff;
}
section.course-item-form .help-block {
    background-image: none;
    padding: 4vw 3vw;
    margin: 0 3vw 0 45vw;
    width: 50vw;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
section.course-item-form .help-form {
    width: 100%;
    margin-right: 0;
}
.course-item-form.help .course-item-description-block-overlay {
    left: 0;
}
.course-item-form.help .course-item-description-block-overlay-three {
    width: 50vw;
    height: 50vw;
    left: 6px;
    top: -5vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #6dddff 100%, rgb(38 143 203) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
}
.course-item-form.help .course-item-description-block-overlay-two {
    width: 30vw;
    height: 30vw;
    top: 9vw;
    left: 0;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #ec8ef7 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 0%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
.course-item-form.help .course-item-description-block-overlay-one {
    width: 30vw;
    height: 30vw;
    top: 0;
    left: 8vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #b4fdd5 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
.course-item-form.help h2 {
    margin-left: 45vw;
}

.course-all-header {
    padding-top: 12vw;
    margin-left: 2vw;
}
.course-all-header h2 {
    font-size: 5vw;
    width: 60vw;
    margin: 0;
    padding: 0;
    font-weight: 500;
}
.course-page section.courses {
    margin-top: 3vw;
}
.course-page .course-all-header .course-item-description-block-overlay {
    position: absolute;
    top: 2vw;
    left: 8vw;
    z-index: -1;
}

.course-page .course-all-header .course-item-description-block-overlay-three {
    width: 80vw;
    height: 50vw;
    left: -30vw;
    top: -5vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #7ed7f3 100%, rgb(38 143 203) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
}
.course-page .course-all-header .course-item-description-block-overlay-two {
    width: 30vw;
    height: 30vw;
    top: -5vw;
    left: 5vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #d0aefb 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
.course-page .course-all-header .course-item-description-block-overlay-one {
    width: 30vw;
    height: 30vw;
    top: -4vw;
    left: 15vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #fff297 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}

.course-page section.corp {
    margin-top: 0;
}

.course-page .course-all-header.corp .course-item-description-block-overlay {
    left: 50vw;
}
.course-page .course-all-header.corp .course-item-description-block-overlay-three {
    width: 80vw;
    height: 50vw;
    left: -25vw;
    top: -5vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #9bfd94 100%, rgb(38 143 203) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
}
.course-page .course-all-header.corp .course-item-description-block-overlay-two {
    width: 50vw;
    height: 35vw;
    top: 11vw;
    left: -28vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #80f0fb 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
.course-page .course-all-header.corp .course-item-description-block-overlay-one {
    width: 50vw;
    height: 50vw;
    top: -4vw;
    left: 15vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #fcff59 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}

section.contacts {
    padding-top: 12vw;
}
.contacts-block-wrap {
    display: flex;
    margin: 3vw;
    flex-wrap: wrap;
    width: 70vw;
}
.contacts-block-wrap .contacts-block span {
    color: #999;
    font-size: .7vw;
}
.contacts-block-wrap .contacts-block h3 {
    font-size: 2vw;
    font-weight: 400;
    margin: 1vw 0;
    padding: 0;
}
.contacts-block-wrap .contacts-block {
    width: 30vw;
    margin-right: 5vw;
    margin-bottom: 5vw;
}

section.contacts .help-form-name:hover {
    border-color: #c3c2be;
}
section.contacts .help-form textarea,
section.contacts .help-form input {
    display: block;
    width: 100%;
    padding: 20px;
    border: 1px solid #e4e4e4;
    border-radius: 10px;
    overflow: hidden;
    color: #000;
    font-size: 16px;
    font-family: inherit;
    line-height: 20px;
    white-space: nowrap;
    text-overflow: ellipsis;
    background-color: #f7f7f5;
    box-shadow: none;
    transition: border-color .2s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
section.contacts .help-form textarea {
    min-width: 24vw;
    max-width: 24vw;
    min-height: 6vw;
    max-height: 6vw;
    margin-bottom: 4%;
}
section.contacts .help-form textarea:focus-visible,
section.contacts .help-form input:focus-visible {
    border-color:#c3c2be;
    background-color:#fff;
    outline:none
}
section.contacts .help-form input.help-form-email,
section.contacts .help-form input.help-form-phone {
    width: 48%;
    display: inline-block;
}
section.contacts .help-form input.help-form-phone {
    margin: 4% 4% 4% 0;
}
section.contacts .help-form button {
    font-family: 'Suisse Intl';
    vertical-align: top;
    font-size: 22px;
    padding: 14px 70px;
    height: 62px;
    border-radius: 100px;
    background: #000000;
    color: #fff;
    cursor: pointer;
    width: 48%;
    display: inline-block;
    border: 1px solid #000;
    margin-top: 5px;
    transition: all .2s;
}
section.contacts .help-form button:hover {
    background: #fff;
    color: #000;
    transition: all .3s;
}
section.contacts .help-form button:active {
    transform: scale3d(.98,.98,.98);
    transition: all .2s;
}
section.contacts .contacts-block form {
    border: 1px solid #000;
    border-radius: 2vw;
    padding: 3vw;
    margin-top: 1vw;
}
section.contacts .help-form .help-form-text {
    width: 48%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4%;
    font-size: 13px;
    margin-top: 17px;
}
section.contacts .course-item-description-block-overlay-one {
    width: 40vw;
    height: 40vw;
    top: 0;
    left: 7vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #fdb4b4 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
section.contacts .course-item-description-block-overlay-two {
    width: 30vw;
    height: 30vw;
    top: 9vw;
    left: 9vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #ffbe5d 100%, rgba(74, 156, 203, 0) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 50%);
    mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
}
section.contacts .course-item-description-block-overlay-three {
    width: 50vw;
    height: 50vw;
    left: -19vw;
    top: -5vw;
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, #fff46d 100%, rgb(38 143 203) 100%);
    -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 10%, transparent 50%);
}
section.contacts .course-item-description-block-overlay {
    left: 50vw;
}
footer .social-menu-menu ul li a.inactive-link {
    cursor: default;
    color: #999;
}
section.courses .courses-menu span.inactive-link:hover {
    background: none;
}
section.courses .courses-menu span.inactive-link {
    cursor: default;
    color: #707070;
    border: 2px solid #707070;
}

/* why page */
.why-page .course-item-description-block-overlay-one {
    left: -40vw;
    background: radial-gradient(circle, #d4b4fd 100%, rgba(74, 156, 203, 0) 100%);
}
.why-page .course-item-description-block-overlay-three {
    left: -55vw;
    background: radial-gradient(circle, #6dfff6 100%, rgb(255 255 255) 100%);
}
.why-page .course-item-description-block-overlay-two {
    top: 3vw;
    left: -40vw;
    background: radial-gradient(circle, #5ddeff 100%, rgba(74, 156, 203, 0) 100%);
}
.why-block-list {
    margin-top: 1vw;
    display: flex;
    flex-wrap: wrap;
}
.why-block span {
    font-size: 1.8vw;
    color: #ffffff90;
    width: 15%;
}
.why-photo img:nth-child(1) {
    margin-left: 0;
}
.why-photo img {
    border-radius: 6vw;
    margin-left: -2vw;
    width: 5vw;
    position: relative;
    transition: all .2s;
}
.buy_ticket {
    display: inline-block;
    background: #ff4c02;
    color: #000;
    font-size: 2vw;
    padding: 0.5vw 1vw;
    cursor: pointer;
    transition: all .2s;
}
.buy_ticket:hover {
    color: #fff;
    background: #d44103;
    transition: all .3s;
}
.why-photo img:hover {
    z-index: 1;
    transition: all .2s;
}
.why-block {
    width: 100%;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #ffffff40;
}
.why-block p {
    font-size: 1.8vw;
    padding: 1.5vw 3vw;
    width: 40%;
}
.why-photo {
    width: 40%;
}
.why-block h3 {
    font-weight: 500;
    font-size: 3vw;
    border-top: 3px solid #000;
    padding-top: 20px;
}
section.why h2 {
    font-size: 10vw;
    margin: 0 0 1.5vw;
    font-weight: 500;
    letter-spacing: -.3vw;
}

.course-item-how {
    width: 100vw;
    overflow: hidden;
}
.schedule {
    margin-left: 2vw;
    margin-top: 5vw;
}
.schedule-desc {
    margin-left: 2vw;
    padding-bottom: 10vw;
}
.schedule h2 {
    margin-left: 2vw;
    font-size: 1vw;
    color: #770aff;
    margin-bottom: 30px;
}
.schedule-desc h3 {
    font-size: 1vw;
    font-weight: 400;
    width: 30%;
    margin-left: 2vw;
}
.schedule ul {
    list-style: none;
    margin: 0 0 0 2vw;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: flex-start;
}
.schedule ul li {
    width: 40vw;
    display: flex;
    border-radius: 20px;
    border: 1px solid #000;
    margin-bottom: 20px;
    transition: all .1s;
    margin-right: 20px;
}
.schedule ul li span {
    font-size: 2.5vw;
}
.schedule ul li div {
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
}
.schedule ul li a p {
    opacity: .6;
}
.schedule ul li a {
    text-decoration: none;
    width: 100%;
    padding: 50px;
}
.schedule ul li:hover a {
    color: #fff;
}
.schedule ul li:hover {
    background: #000;
    transition: all .2s;
}
.partners-list {
    margin-left: 10vw;
    margin-top: 5vw;
    margin-bottom: 8vw;
}
.partners-list-item {
    width: 30vw;
}
.partners-list-item h3 {
    font-weight: 500;
    border-top: 3px solid #000;
    padding-top: 20px;
    font-size: 3vw;
    margin: 50px 0 0;
}
.partners-list-item p {
    font-size: 1.8vw
}
.partners-list-item img {
    width: 10vw;
}

/* консультант */
.online {
    position: fixed;
    z-index: 1;
    bottom: 40px;
    right: 50px;
}
.online-user-photo:hover {
    transform: scale3d(1.05, 1.05, 1.05);
    transition: all .3s;
}
.online-user-photo:active {
    transform: scale3d(.98, .98, .98);
    transition: all .1s;
}
.online-user-photo .online-user-photo img {
    -webkit-box-shadow: 0 5px 40px 0 rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 5px 40px 0 rgb(0 0 0, .1);
    box-shadow: 0 5px 40px 0 rgb(0 0 0 / 10%);
    transition: all .3s;
}
.online-user-photo {
    cursor: pointer;
    transition: all .2s;
}
.online-user-photo img {
    width: 5vw;
    border-radius: 50%;
    border: 5px solid #efefef;
    -webkit-box-shadow: 0 5px 20px 0 rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 5px 20px 0 rgb(0 0 0, .1);
    box-shadow: 0 5px 20px 0 rgb(0 0 0 / 10%);
    transition: all .2s;
}
.online-user-text {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    bottom: 0;
    transform: translate3d(-95%,0,0);
    transition: all .2s;
    width: 13vw;
    background: #efefef;
    padding: 10px 30px;
    font-size: 16px;
    border-radius: 20px;
    -webkit-box-shadow: 0 5px 40px 0 rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 5px 40px 0 rgb(0 0 0, .1);
    box-shadow: 0 5px 40px 0 rgb(0 0 0 / 10%);
}
.online-user-text.visible {
    transform: translate3d(-105%,0,0);
    transition: all .3s;
    opacity: 1;
    visibility: visible;
}
.online-buttons {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
}
.online-buttons-tg, .online-buttons-wa {
    width: 50%;
    display: flex;
    justify-content: center;
    background: #e4e4e4;
    padding: 10px;
    border-radius: 10px;
    margin: 0 2px;
    text-decoration: none;
    transition: all .1s;
}
.online-buttons-tg:hover, .online-buttons-wa:hover {
    background: #c3c3c3;
    transition: all .3s;
}
.online-buttons-tg {
    padding: 12px 10px;
}
.online-buttons-tg svg {
    width: 30px;
}
.online-buttons-wa svg {
    width: 34px;
}

.why-block span.speaker_link {
    font-size: 1.4vw;
    text-decoration: underline;
    transition: all .1s;
    cursor: pointer;
}
.why-block span.speaker_link:hover {
    text-decoration: none;
    transition: all .2s;
}

@media only screen and (max-width: 1920px) {
    .gift {
        width: 26vw;
    }
    .gift-icon img {
        margin: 15px 15px 15px 20px;
    }
    .gift-text {
        margin: 0 20px 0 0;
    }
    .gift-button span {
        margin-right: 15px;
    }

}
@media only screen and (max-width: 1440px) {
    section.contacts .help-form button {
        padding: 14px 0;
        text-align: center;
    }
    section.courses.corp .block__title .courses-block-item-desc {
        width: 50vw;
    }
    .burger {
        width: 50px;
        height: 26px;
    }
    .burger span {
        height: 4px;
    }
    .burger span:nth-child(3), .burger span:nth-child(4) {
        top: 11px;
    }
    .burger span:nth-child(5), .burger span:nth-child(6) {
        top: 22px;
    }
    .burger.open span:nth-child(6) {
        left: calc(50% - 5px);
        top: 22px;
    }
    .burger.open span:nth-child(5) {
        left: 5px;
        top: 22px;
    }
}
@media only screen and (max-width: 768px) {
    .header-menu-block {
        display: none;
    }
    body .logo svg {
        width: 30vw;
    }
    .main-img img {
        width: auto;
        margin-left: -120vw;
        opacity: .7;
        height: 100vh;
    }
    .buy {
        font-size: 5vw;
        margin-top: 20px;
    }
    .main-text h1 {
        background: #FF4B02;
        border-radius: 0 !important;
        transform: none !important;
        color: #000;
        font-size: 14vw;
    }
    section.special .special-item-name {
        color: #000;
        font-size: 6vw;
    }
    .about-asap {
        flex-direction: column;
    }
    .about-asap-block {
        width: 90%;
        font-size: 5vw;
        margin: 5vw;
    }
    .tiles--fixed .tiles__line-img {
        --tile-margin: 3px !important;
        -webkit-filter: brightness(0.6) !important;
        width: calc(24.6666% - var(--tile-margin) * 2) !important;
        height: calc( var(--tileswrap-height) / 3 - (3 * var(--tile-margin) / 2)) !important;
    }
    .tiles--fixed {
        --tiles-height: 40vh !important;
    }
    .tiles__wrap h2 {
        width: 93% !important;
        margin-left: 3% !important;
        font-size: 7vw !important;
    }
    .tiles__line:nth-child(5) {
        display: none;
    }
    section.partners ul {
        grid-template-columns: repeat(1,1fr);
    }
    section.partners ul li {
        margin: 20px 0;
    }
    .course-item-teacher-block-item {
        max-width: 100%;
        margin: 20px 0 50px;
    }
    .partners-list {
        margin-left: 20px;
        margin-top: 50px;
        margin-bottom: 100px;
    }
    .partners-list-item {
        width: calc(100% - 20px);
    }
    .partners-list-item img {
        width: 40vw;
    }
    .partners-list-item h3 {
        margin: 20px 0 0;
        font-size: 30px;
    }
    .partners-list-item p {
        font-size: 20px;
    }
    .schedule ul {
        flex-direction: column;
        flex-wrap: nowrap;
        align-content: center;
        align-items: flex-start;
    }
    .schedule ul li {
        width: calc(100% - 4vw);
    }
    .schedule ul li a {
        padding: 20px;
    }
    .schedule ul li span {
        font-size: 38px;
    }
    .schedule-desc h3 {
        font-size: 18px;
        width: 80%;
    }
    .schedule h2 {
        font-size: 20px;
        margin-top: 50px;
    }
    .gift {
        width: 98vw;
        left: 1vw;
    }
    .gift-icon img {
        width: 7vw;
    }
    .gift-text {
        font-size: 3vw;
    }
    .gift-text span {
        font-size: 2vw;
    }
    .gift-button span {
        border-radius: 20vw;
        font-size: 4vw;
    }
    .mobile-bg section {
        /*background: #fff;*/
    }
    .contacts h2 {
        margin-top: 10vh;
    }
    .contacts-block-wrap {
        display: block;
        width: 94vw;
    }
    .contacts-block-wrap .contacts-block {
        width: 100%;
    }
    .contacts-block-wrap .contacts-block span {
        font-size: 3vw;
    }
    .contacts-block-wrap .contacts-block h3 {
        font-size: 7vw;
    }
    section.contacts .help-form textarea {
        min-width: 100%;
        max-width: 100%;
        min-height: 14vh;
        max-height: 14vh;
    }
    section .course-item-main-text span {
        margin-bottom: 15px;
    }
    section .course-item-main-text .price-up p {
        font-size: 3vw;
    }
    section.course-item-main {
        display: block;
        margin-top: 20vh;
    }
    section .course-item-main-text {
        width: 95vw;
    }
    section.course-item-main {
        height: auto;
    }
    .course-item-program-list ul li h3:before, .course-item-program-list ul li h3:after {
        width: 7vw;
    }
    .course-item-sales {
        margin-top: -32vh;
        right: 3vw;
        position: absolute;
        width: 19vw;
        height: 19vw;
    }
    .course-item-numbers {
        display: block;
    }
    .course-item-numbers {
        padding: 8vw 2vw 3vw;
        border: none;
    }
    .course-item-numbers .course-item-numbers-block-number {
        font-size: 8vw;
        padding-top: 20px;
    }
    .course-item-numbers .course-item-numbers-block-text {
        padding-bottom: 20px;
        border-bottom: 1px solid #00000040;
    }
    .new-price {
        font-size: 8vw;
        border-radius: 8vw;
        top: 4vw;
    }
    .course-item-numbers-block:nth-last-child(1) .course-item-numbers-block-text {
        border:none;
        text-align: center;
        margin-top: 50px;
    }
    .mobile-bg .course-item-target {
        width: 90vw !important;
        margin: 10vh 5vw 10vh 5vw !important;
    }
    section.courses .block__title {
        align-content: flex-start;
        justify-content: space-between;
        align-items: flex-start;
    }
    .courses-block-item-date, .courses-block-item-name-people {
        padding: 0;
        margin-top: 20px;
        font-size: 15px;
    }
    section.courses .block__title .courses-block-item-date span:nth-child(2) {
        font-size: 7vw;
    }
    .courses-block-item-long {
        margin-top: 15px;
    }
    section.courses .block__title .courses-block-item-long span:nth-child(1) {
        font-size: 7vw;
    }
    section.courses .block__title .courses-block-item-name-people-list img {
        width: 17vw;
        border-radius: 7vw;
        margin-right: -5vw;
    }
    section.courses .block__title .courses-block-item-price .old-price {
        margin-top: 15px;
        font-size: 16vw;
    }
    section.courses ul li span:hover, section.courses .courses-block-item-add span {
        font-size: 4vw;
        border-radius: 5vw;
    }
    section.courses .block__title .courses-block-item-price .new-price {
        font-size: 11vw;
        border-radius: 11vw;
        top: 17px;
        left: -3%;
        /*padding: 9vw 5vw;*/
    }
    .course-item-program-list {
        width: 90vw;
        margin-left: 5vw;
    }
    .course-item-program-list ul li h3 {
        font-size: 5vw;
    }
    .course-item-program-list ul li.open span {
        margin-right: 0;
        margin-bottom: 30px;
    }
    .course-item-program-list ul li:nth-last-child(1) {
        border: none;
    }
    .course-item-whom {
        margin: 10vw 5vw;
        width: 90vw;
    }
    .course-item-whom-block-item-number, .course-item-whom-block-item-header {
        font-size: 3.5vw;
    }
    .button-cls {
        font-size: 9vw;
        border-radius: 8vw;
    }
    .course-item-whom-block-item-text {
        font-size: 3vw;
    }
    .course-item-price-wrap {
        display: block;
        width: 94vw;
    }
    .course-item-price-block {
        width: 100%;
        border-radius: 20px;
        padding: 7vw;
    }
    .course-item-price-howmuch-people span, .course-item-price-howmuch-time span {
        font-size: 20vw;
    }
    .course-item-price-block h3 {
        font-size: 2vw;
    }
    .course-item-price-howmuch {
        margin-top: 20px;
    }
    .course-item-price-block .price {
        font-size: 13vw;
    }
    .course-item-price-block .price .new-price {
        font-size: 8vw;
        border-radius: 8vw;
        top: 3.5vw;
    }
    .course-item-price-block .open-modal-request {
        font-size: 6vw;
        padding: 2vw 0;
        margin: 10vw 0 1vw 0;
    }
    .course-item-form.help h2 {
        margin-left: 5vw;
    }
    section.course-item-form .help-block {
        margin: 0 3vw 0 3vw;
        width: 93vw;
    }
    .course-item-description-block-overlay {
        display: none;
    }
    .course-item-price-block h4 {
        font-size: 7.5vw;
    }
    .course-item-sales p {
        font-size: 2vw;
    }
    .course-item-sales span {
        font-size: 4vw;
    }
    section .course-item-main-text span {
        font-size: 3vw;
    }
    section .course-item-main-text-header h1 {
        font-size: 12vw;
    }
    header {
        padding: 10px;
    }
    body .logo svg {
        width: 32vw;
        margin-top: -12px;
    }
    .main-text-row:nth-child(1) h1 {
         transform: translate3d(0, 0, 0);
    }
    .main-text h1 {
        font-size: 13vw;
    }
    .main-text-row-avatar {
        display: none;
    }
    .main-text-row-img {
        height: 8vw;
        width: 17vw;
    }
    .main-text-row:nth-child(2) h1 {
        transform: translate3d(-7vw, 0, 0);
    }
    .main-text-row:nth-child(3) h1 {
        transform: translate3d(0vw, 0, 0);
        white-space: nowrap;
    }
    .main-text {
        top: -27vw;
    }
    .main-text-row-img {
        height: 6.5vw;
        margin: -0.3vw 0.7vw;
        width: 12vw;
    }
    section.main-slogan {
        display: block;
    }
    .main-slogan-faces-block {
        width: 100vw;
        margin-right: 0;
    }
    .c-fixed_wrapper {
        height: 60vh;
    }
    .c-fixed {
        background-position: 50% 0%;
    }
    section.main-slogan h3 {
        font-size: 6vw;
        width: 100vw;
        padding: 0 5vw;
    }
    .main-slogan-name {
        font-size: 7vw;
        padding: 0 5vw;
        margin-top: 20px;
    }
    .mobile-buy {
        display: none;
    }
    .iprice {
        font-size: 9vw;
        text-align: center;
        width: 100%;
    }
    .main-slogan-desc {
        font-size: 4vw;
        padding: 0 5vw;
        margin-bottom: 20px;
    }
    section.main-slogan.boss {
        display: block;
    }
    .c-fixed, .c-fixed_target {
        top: 0;
    }
    section.team .team-block {
        display: block;
    }
    section.team .team-block-item-name {
        font-size: 10vw;
        margin-top: 0;
        bottom: 17vw;
    }
    section.team .team-block-item-desc {
        font-size: 10vw;
        padding: 0 6vw 0 4vw;
        bottom: 5.8vw;
    }
    section.team .team-block {
        padding-top: 0;

    }
    .team-block-item-text {
        width: 95%;
        font-size: 6vw;
        margin-bottom: 15%;
        margin-top: 15px;
    }
    section.team .team-block-item-desc svg {
        position: absolute;
        width: 13.4vw;
        margin-left: 1px;
    }

    section.team {
        padding: 10vw 2vw;
        overflow: hidden;
    }
    section .help-block {
        width: 92vw;
        display: flex;
        flex-direction: column;
        align-content: flex-start;
        align-items: center;
    }
    section.help .help-form {
        width: 100%;
        margin-right: 0;
        margin-top: 4vw;
        order: 2;
    }
    section.help .help-text {
        width: 100%;
        margin-top: 6vw;
        order: 1;
    }
    section.help .help-text span {
        color: #979797;
        font-size: 3vw;
    }
    section.help .help-text h3, section.help .help-text h3 span {
        font-size: 6vw;
    }
    section.help .help-text p {
        width: 100%;
        font-size: 3vw;
    }
    section.help .help-form input.help-form-email, section.help .help-form input.help-form-phone {
        width: 100%;
    }
    section.help .help-form .help-form-text {
        width: 100%;
        font-size: 10px;
    }
    section.help .help-form button {
        width: 100%;
        margin-top: 15px;
    }
    footer .social-menu .social-menu-subscribe {
        width: 96vw;
    }
    footer .social-menu .social-menu-subscribe h3 {
        font-size: 5vw;
        font-weight: 400;
        padding: 0 10px;
        margin: 10px 0 20px 0;
    }
    footer .social-menu .social-menu-subscribe input {
        width: 100%;
    }
    footer .social-menu .social-menu-subscribe button {
        right: calc(0% + 30px);
    }
    footer .social-block {
        margin-top: 20px;
    }
    footer .social-item a {
        padding: 2vw 5vw;
    }
    footer .copyright {
        margin-top: 6vw;
        display: block;
        margin-bottom: 4vw;
    }
    footer .copyright-police {
        width: 100%;
    }
    footer .copyright-police p {
        font-size: 12px;
    }
    footer .copyright-gov {
        margin: 0;
        width: 65vw;
        display: inline-block;
    }
    footer .copyright-gov a {
        font-size: 14px;
    }
    footer .copyright-tdsgn a {
        transform: translateY(13px);
        display: block;
    }
    footer .copyright-tdsgn {
        text-align: right;
        width: 27vw;
        display: inline-block;
    }
    footer .copyright-tdsgn svg {
        height: 20px;
    }
    .main-text-row-special {
        display: none;
    }
    .header-menu-block {
        display: none;
    }
    .marquee span, .menu__item-link {
        font-size: 12vw;
        line-height: 2;
    }
    nav.menu {
        margin-top: 200px;
    }
    section.main {
        height: 80vh;
    }
    .main-overlay-two {
        position: absolute;
        background: radial-gradient(circle, #f9eae2 100%, rgba(74, 156, 203, 0) 100%);
        -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
        mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
        width: 123vw;
        height: 152vw;
        right: -50vw;
        top: 52vw;
        opacity: 1;
        pointer-events: none;
        z-index: -2;
    }
    .main-overlay {
        position: absolute;
        background: radial-gradient(circle, #c1d0f3 100%, rgba(74, 156, 203, 0) 100%);
        -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
        mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
        width: 95vw;
        height: 99vw;
        left: 23vw;
        top: 61vw;
        opacity: 1;
        pointer-events: none;
        z-index: -3;
    }
    .main-overlay-three {
        position: absolute;
        background: radial-gradient(circle, #d3c8ef80 100%, rgba(74, 156, 203, 0) 100%);
        -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
        mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 30%, transparent 50%);
        width: 73vw;
        height: 66vw;
        left: -1vw;
        top: 72vw;
        opacity: 1;
        pointer-events: none;
        z-index: -1;
    }
    .c-fixed {
        height: 100%;
    }
    section .main-slogan-text {
        margin-top: 7vw;
    }
    section.courses h2 {
        font-size: 15vw;
        margin: 0 4vw 1.5vw;
    }
    section.courses ul {
        margin: 25px 4vw 0 4vw;
    }
    section.courses .courses-block-item-add span:nth-child(2), section.courses .soon .courses-block-item-add span, section.courses ul li span {
        font-size: 4vw;
        border-radius: 10vw;
        padding: 5px 12px 8px;
    }
    section.courses ul li {
        display: inline-block;
        margin-right: 5px;
        margin-bottom: 16px;
    }
    section.courses .courses-block {
        padding: 3vw 4vw;
        width: 100%;
    }
    section.courses .block__title {
        flex-direction: column;
        width: 100%;
    }
    section.courses .block__title .courses-block-item-name {
        width: 100%;
    }
    section.courses .block__title .courses-block-item-name {
        font-size: 8vw;
        margin-top: 10px;
    }
    section.courses .block__title .courses-block-item-name sup {
        font-size: 4.5vw;
    }
    section.courses .block__title .courses-block-item-desc {
        width: 100%;
        font-size: 15px;
        margin-top: 13px;
    }
    section.courses .block__title .courses-block-item-price {
        width: 100%;
        font-size: 15px;
        margin-top: 15px;
    }
    .courses-block-item-add {
        width: 100%;
        margin-top: 25px;
        margin-bottom: 15px;
    }
    section.courses .soon .courses-block-item-add span {
        padding: 3vw;
    }
    section.corp h3 {
        margin: 1vw 4vw 2vw 4vw;
        width: 92vw;
    }
    section.courses.corp h3 span {
        font-size: 16px;
    }
    section.courses.corp .block__title .courses-block-item-desc {
        width: 100%;
    }
    section.help .help-form button {
        font-size: 19px;
        padding: 3vw;
    }
    footer .social-menu-menu {
        margin-right: 0;
        margin-top: 25px;
        width: 96vw;
    }
    footer .social-menu-menu ul p {
        color: #505050;
        font-size: 14px;
    }
    footer .social-menu-menu ul li {
        font-size: 5vw;
        margin-bottom: 10px;
    }
    footer .social-menu-menu ul:nth-last-child(1) {
        margin-top: 6vw;
        margin-left: 3vw;
    }
    .request-form-wrap {
        width: 96%;
        min-width: 96%;
    }
    .modal-close {
        width: 13vw;
        height: 10vw;
    }
    .modal-close:before, .modal-close:after {
        top: 5vw;
        left: 3vw;
        width: 6vw;
    }
    .request-form-wrap h2 {
        font-size: 12vw;
        margin: 15px 0 0 0;
    }
    .request-form-wrap form {
        flex-direction: column;
    }
    .request-form-wrap form .input--kozakura:nth-child(2), .request-form-wrap form .input--kozakura:nth-child(3) {
        width: 100%;
    }
    .request-form-wrap p {
        display: none;
    }
    .button-block {
        flex-direction: column;
    }
    .button-block p {
        font-size: 12px;
        width: 100%;
        margin-top: 10px;
        display: block;
    }
    .input__field--kozakura {
        font-size: 1.35em;
    }
    .request-form-wrap form button {
        width: 98%;
        margin-bottom: 15px;
        font-size: 30px;
        margin-top: 15px;
    }
    .request-ok .request-form-wrap h2 {
        margin: 15px 0;
    }
    footer .social-menu {
        flex-direction: column;
    }
    .course-all-header {
        padding-top: 22vh;
        margin-left: 4vw;
        margin-right: 4vw;
        width: 92vw;
    }
    .course-all-header h2 {
        font-size: 10vw;
        width: 100%;
    }
    .swiper {
        width: 90vw;
    }
    .swiper-cards .swiper-slide {
        /*height: 60vh;*/
    }
    .swiper-slide img {
        width: 100%;
    }
    .course-item-how {
        margin: 5vh 0 10vh;
    }
    .course-item-description {
        overflow: hidden;
    }
    /*.course-item-description-block-overlay {*/
    /*    right: 44vw;*/
    /*}*/
    .course-page .course-all-header .course-item-description-block-overlay {
        top: 25vh;
    }
    .course-page .course-all-header .course-item-description-block-overlay-one {
        width: 83vw;
        height: 85vw;
    }
    .course-page .course-all-header .course-item-description-block-overlay-two {
        width: 74vw;
        height: 96vw;
    }
    .course-page .course-all-header .course-item-description-block-overlay-three {
        width: 99vw;
        height: 124vw;
    }
    .course-page .course-all-header.corp .course-item-description-block-overlay-one {
        width: 94vw;
        height: 94vw;
    }
    .course-page .course-all-header.corp .course-item-description-block-overlay-two {
        width: 108vw;
        height: 78vw;
        top: -6vw;
        left: -51vw;
    }
    .course-page .course-all-header.corp .course-item-description-block-overlay-three {
        width: 80vw;
        height: 60vw;
        left: -13vw;
    }
    .about-page .course-all-header h2 {
        width: 96vw;
        overflow: hidden;
    }
    .course-item-target h2 {
        font-size: 6vw;
    }
    .course-item-target {
        width: 70vw;
        margin: 10vh 5vw 10vh 25vw;
    }
    .course-item-teacher-all {
        flex-direction: column;
    }
    .course-item-teacher-block:nth-child(1) {
        width: 100%;
    }
    .course-item-teacher-block:nth-child(2) {
        width: 100%;
        margin-left: 0;
    }
    .course-item-teacher-block h3 {
        font-size: 8vw;
    }
    .course-item-teacher-block-list {
        flex-direction: column;
    }
    .course-item-teacher-block-item-photo {
        max-width: 96%;
    }
    .course-item-teacher-block-item h3 {
        font-size: 5vw;
    }
    .course-item-result ul {
        width: 96vw;
        margin: 4vw 2vw;
    }
    .course-item-result ul h4 {
        font-size: 13vw;
        width: 8vw;
    }
    .course-item-result ul span {
        font-size: 6vw;
        width: 83vw;
    }
    .course-item-description-block {
        width: 96vw;
        margin: 2vw;
    }
    .course-item-description-block p {
        font-size: 6vw;
    }
    .first-time.start .loader-logo,
    .loader-logo-pages {
        width: 30vh;
    }
    section.team .team-block {
        width: 94vw;
    }
    .why-block:nth-child(odd) {
        padding-right: 0;
    }
    .why-block {
        width: 100%;
    }
    .why-block h3 {
        font-size: 8vw;
    }
    .why-block p {
        font-size: 6vw;
    }
    .sale-header h3 {
        font-size: 3vw;
    }
    section.partners {
        width: 90vw;
        margin: 12vh 5vw;
    }
    section.partners h3 {
        font-size: 8vw;
    }
    section.partners p {
        width: 100%;
        font-size: 6vw;
    }
    .partners ul li a img {
        width: 40vw !important;
        margin-right: 5vw;
    }
    .whom {
        flex-direction: column;
        widht: 100% !important;
    }
    .whom-left {
        padding-left: 0;
        width: 90%;
    }
    .w_right {
        margin-right: 0;
    }
    .w_right_block {
        font-size: 5vw;
        margin-bottom: 7vw;
        margin-top: 4vw;
    }
    .w_right_block_text {
        max-width: 85%;
    }
    .buy_ticket {
        font-size: 10vw;
        padding: 2vw 5vw;
        margin-top: 20px;
    }
    .whom-right {
        width: 100%;
        margin-top: 30px;
    }
    section.why h2 {
        font-size: 15vw;
    }
    .why-block {
        align-items: flex-start;
        flex-direction: column;
    }
    .why-block span {
        font-size: 6vw;
        margin-top: 25px;
        width: 100%;
    }
    .why-block span.speaker_link {
        font-size: 5.4vw;
        margin-top: 5px;
        display: block;
    }
    .why-block p {
        font-size: 7vw;
        padding: 0;
        width: 90%;
    }
    .why-photo {
        width: 100%;
        margin-bottom: 22px;
    }
    .why-photo img {
        margin-left: -4.5vw;
        width: 12vw;
        border-radius: 15vw;
    }
    section.team .team-block-item {
        width: 100%;
    }
    .contacts h2, .course-item-reviews h2, .course-item-how h2, .course-item-price h2, .course-item-form h2, .course-item-description h2, .course-item-result h2, .course-item-whom h2, .main-slogan h2, .course-item-program h2, .course-item-teacher h2 {
        font-size: 15vw;
    }
    section.cost h2 {
        font-size: 15vw;
    }
    .c_list {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .c_list_block {
        width: 94%;
        margin: 4vw 1vw;
        padding: 10vw 7vw;
    }
    .c_list_block_name {
        font-size: 7vw;
    }
    .c_list_block_desc {
        font-size: 7vw;
    }
    .c_list_block_content {
        font-size: 5vw;
    }
    .c_list_block_content ul li svg {
        width: 6vw;
        margin-right: 2vw;
    }
    .c_list_block_price {
        font-size: 15vw;
    }
    .c_list_block_price_desc {
        font-size: 5vw;
    }
    .c_list_block_buttons {
        border-radius: 10vw;
        font-size: 10vw;
        margin-top: 6vw;
    }
    .main-slogan-content {
        display: block;
    }
}

.tiles {
    --tiles-height: 52vw;
    height: var(--tiles-height);
    position: relative;
    overflow: hidden;
}

.tiles--columns-rotated {
    --tiles-height: 180vmax;
}

.tiles--columns {
    --tiles-height: 140vh;
}

.tiles--oneline {
    --tiles-height: 50vh;
    min-height: 400px;
    margin: 10vh 0;
}

.tiles--small {
    --tiles-height: 100px;
    margin: 10vh 0 0;
}

.tiles--fixed {
    --tiles-height: 150vh;
    /*margin-top: 5vw;*/
}

.tiles--perspective {
    overflow: visible;
    perspective: 1000px;
    --tiles-height: 500px;
}
.tiles__wrap h2 {
    position: absolute;
    z-index: 1;
    width: 70%;
    margin-left: 15%;
    display: flex;
    font-size: 4vw;
    text-align: center;
    justify-content: center;
    font-weight: 400;
    letter-spacing: -.05em;
    /* font-size: 5vw; */
    margin-top: 7vw;
    line-height: 103%;
    background: #FFFFFF;
    background: -webkit-linear-gradient(to bottom, #FFFFFF 40%, #7a7a7a 100%);
    background: -moz-linear-gradient(to bottom, #FFFFFF 40%, #7a7a7a 100%);
    background: linear-gradient(to bottom, #FFFFFF 40%, #7a7a7a 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.tiles__wrap {
    width: 150%;
    --tileswrap-height: var(--tiles-height);
    height: var(--tileswrap-height);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate3d(-50%,-50%, 0);
}

.tiles--rotated .tiles__wrap {
    --tileswrap-height: calc(var(--tiles-height) * 1.8);
    transform: translate3d(-50%,-50%, 0) rotate(22.5deg);
}

.tiles--columns-rotated .tiles__wrap {
    width: 150%;
    display: flex;
    transform: translate3d(-50%,-50%,0) rotate(-22.5deg);
    left: 50%;
    top: 50%;
    align-items: center;
    justify-content: center;
}

.tiles--columns .tiles__wrap {
    width: 100%;
    display: flex;
    --tileswrap-height: calc(var(--tiles-height) * 1.4);
    transform: translate3d(0,-50%,0);
    left: 0;
    top: 50%;
}

.tiles--perspective .tiles__wrap {
    width: 200%;
    transform: translate3d(-50%,-50%,0) translateX(-25%) translateZ(-1200px) rotateX(75.5deg) rotateZ(12deg);
}

.tiles--fixed .tiles__wrap {
    width: 100%;
}

.tiles__line {
    display: flex;
}

.tiles--columns .tiles__line {
    width: 25%;
    padding: 0 1rem;
    display: block;
}

.tiles--columns-rotated .tiles__line {
    width: 320px;
    flex: none;
    padding: 0 1.5vw;
    display: block;
}

.tiles--columns-rotated .tiles__line:nth-child(even) {
    margin-top: -160px;
}

.tiles--oneline .tiles__line {
    height: 100%;
}

.tiles--small .tiles__line {
    height: 100%;
}

.tiles__line-img {
    --tile-margin: 2vw;
    flex: none;
    width: calc(16.6666% - var(--tile-margin) * 2);
    height: calc( var(--tileswrap-height) / 3 - (3 * var(--tile-margin) / 2));
    margin: var(--tile-margin);
    background-size: cover;
    background-position: 50% 50%;
}

.tiles--perspective .tiles__line-img {
    backface-visibility: hidden;
    outline: 1px solid transparent;
    --tile-margin: 1vw;
    width: calc(16.6666% - var(--tile-margin) * 2);
    height: calc(16.666vw * 1.3);
}

.tiles--oneline .tiles__line-img {
    --tile-margin: 1vw;
    margin: 0 var(--tile-margin);
    width: calc(25% - var(--tile-margin) * 2);
    height: 100%;
}

.tiles--small .tiles__line-img {
    --tile-margin: 5px;
    margin: 0 var(--tile-margin);
    width: calc(12.5% - var(--tile-margin) * 2);
    height: 100%;
}

.tiles--rotated .tiles__line-img {
    --tile-margin: 1vw;
    width: calc(16.6666% - var(--tile-margin) * 2);
    height: calc( var(--tileswrap-height) / 5 - (4 * var(--tile-margin) / 2));
}

.tiles--columns-rotated .tiles__line-img {
    --tile-margin: 3vw 0;
    width: 100%;
    height: 400px;
}

.tiles--columns .tiles__line-img {
    --tile-margin: 2rem 0;
    width: 100%;
    height: calc(25vw * 1.3);
}

.tiles--fixed .tiles__line-img {
    --tile-margin: 10px;
    -webkit-filter: brightness(0.6);
    width: calc(16.6666% - var(--tile-margin) * 2);
    height: calc( var(--tileswrap-height) / 3 - (3 * var(--tile-margin) / 2));
}

.tiles--darker .tiles__line-img {
    opacity: 0.7;
}

.tiles__title {
    position: absolute;
    height: 100vh;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 10vw;
    padding: 3rem;
    margin: 0;
    line-height: 0.8;
    font-family: span, serif;
    font-weight: 700;
    font-style: normal;
}

.tiles__title--alt {
    font-size: 9vw;
    font-size: clamp(2rem, 9vw, 7.25rem);
}

.tiles__title--intro {
    padding-top: 10vh;
    align-items: flex-start;
    justify-content: flex-start;
}

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

.tiles__title--left {
    justify-content: flex-start;
}

.tiles__title--full {
    height: 100%;
}

.backtop {
    align-self: center;
    margin: auto 0;
    font-size: 6vw;
    cursor: pointer;
    text-decoration: none;
}

.backtop::after {
    content: "\2934";
    font-size: 3vw;
    vertical-align: top;
    margin-left: 1rem;
}

@media screen and (min-width: 53em) {
    .frame {
        display: grid;
        align-content: space-between;
        width: 100%;
        grid-gap: 5vw;
        grid-template-columns: auto auto auto 1fr;
        grid-template-areas: 'title title links demos';
    }
    .frame__title {
        margin: 0;
        grid-area: title;
    }
    .frame__demos {
        margin: 0;
        grid-area: demos;
        justify-self: end;
    }
    .frame__links {
        grid-area: links;
        padding: 0;
        justify-self: end;
    }
    .tiles--columns-rotated .tiles__line {
        width: 33vmax;
    }
    .tiles--columns-rotated .tiles__line:nth-child(even) {
        margin-top: -20vmax;
    }
    .tiles--columns-rotated .tiles__line-img {
        height: 40vmax;
    }
    .content--numbered::after {
        counter-increment: contentSection;
        content: counter(contentSection,decimal-leading-zero);
        position: absolute;
        top: 50%;
        right: 3rem;
        border: 1px solid;
        color: var(--color-alt);
        width: 4rem;
        height: 4rem;
        margin-top: -2rem;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
    }
    .content__text {
        max-width: 800px;
        width: 50vw;
        min-width: calc(300px - 6rem);
    }
    .content__text--wide {
        max-width: 1000px;
        width: 65vw;
    }
    .tiles--small {
        --tiles-height: 240px;
    }
}