@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Viaoda+Libre&display=swap');

body {
    font-family: "Montserrat", sans-serif !important;
}

.title {
    font-family: 'Viaoda Libre', cursive !important;
}

.logo img {
    object-fit: cover;
    max-width: 100px;
}
.page-header {
    height: 80px !important;
}
.toggle-block{
    transition: 0.3s;
}
.toggle-block:hover {
    transform: translateY(-5px);
    text-shadow: 0px 5px 10px rgba(222, 194, 190, .5);;
}
.cta-background {
    background-image: url(/images/profession-bg.png);
    background-repeat: no-repeat;
    background-position: 20% 100%;
}
.CTA .h2 {
    font-weight: 600;
    letter-spacing: 2px;
}
.CTA h2, header.CTA {
    margin-bottom: 30px;
}
.CTA p:first-of-type, .CTA ul {
    margin-bottom:20px;
}
.CTA p:last-of-type {
    font-style: italic;
}
section.teacher-block.teacher-block_white {
    padding: 8em 0;
}
.slick-list .slick-slide {
    margin-left: 30px;
}
.mb-05 {
    margin-bottom: 0.5em;
}
.mb-1 {
    margin-bottom: 1em;
}
.mb-2 {
    margin-bottom: 2em;
}
.mb-3 {
    margin-bottom: 3em;
}
.mb-4 {
    margin-bottom: 4em;
}
.mt-1 {
    margin-top: 1em;
}
.mt-2 {
    margin-top: 2em;
}
.mt-3 {
    margin-top: 3em;
}
.mt-4 {
    margin-top: 4em;
}
.pl-1 {
    padding-left: 1em !important;
}
.pl-2 {
    padding-left: 2em !important;
}
.pl-3 {
    padding-left: 3em !important;
}
.pl-4 {
    padding-left: 4em !important;
}
.pl-8 {
    padding-left: 8em !important;
}
.pr-1 {
    padding-right: 1em !important;
}
.pr-2 {
    padding-right: 2em !important;
}
.pr-3 {
    padding-right: 3em !important;
}
.pr-4 {
    padding-right: 4em !important;
}
.pr-8 {
    padding-right: 8em !important;
}
.pt-0 {
    padding-top:0 !important;
}
.pt-1 {
    padding-top:1em !important;
}
.font-12px {
    font-size: 12px !important;
}
.pt-2 {
    padding-top:2em !important;
}
.pt-4 {
    padding-top:4em !important;
}
.mt-2 {
    margin-top:4em !important;
}

.mt-10 {
    margin-top:10em !important;
}
.offset-top-right{
    position: absolute;
    top: 0.25em;
    right: -0.2em;
}
.vertical-text {
    transform: translateZ(0) rotate(-90deg);
}
.link:hover {
    color:#c8a09b;
}
.position-relative{
    position: relative;
}
.position-absolute{
    position: absolute;
}
.properties-list-item{
    padding-top: 0.3em !important;
}
.fading-bg-static{
    position: relative;
    z-index:2;
}
.fading-bg-static::after{
    position: absolute;
    width: 170%;
    height: 150%;
    top: -25%;
    left:-30%;
    z-index:-2;
    background-image: linear-gradient(-30deg, 
    rgba(235, 218, 216, 0) 30%,           /* Полностью прозрачное начало */
    #fca6a7 50%,
    rgba(235, 218, 216, 0) 70% );        /* Завершаем непрозрачной полосой */
    content: "";
    opacity: 0.5;
}
.accordion-header > strong {
    font-weight: 600;
}
.accordion > strong > span {
    display: block;
    padding-top: 1em;
}
.accordion > strong {
    font-weight: 500;
}
.accordion-header > strong > span {
    font-size: 18px !important;
}
.fading-bg::after {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(90deg, 
    rgba(235, 218, 216, 0) 0%,           /* Полностью прозрачное начало */
    rgba(235, 218, 216, 1) 100%);        /* Завершаем непрозрачной полосой */

    transition-duration: 0.3s;
    transition-property: left;
    opacity: 0;
    z-index: -6;
    content: ''; /* Не забудь добавить это для псевдоэлемента */
}
.fading-bg:hover::after{
    opacity: 1;
}
.toggle-icon {
    display: inline-block;
    margin-left: 0.5em;
    content: '>';
    transition: 0.3s;
}
.rotate-90 {
    rotate: 90deg !important;
}
ul.program-block-content>li>span {
    font-weight: 700;
}
ul.program-block-content>li>ul {
    margin-top: 0;
}
ul.program-block-content>li:before {
    top: 10px !important;
    background-color: rgba(255, 155, 155, 1) !important;
}
.program-block.program-theory, .program-block.program-practice{
    margin-top: 3em;
}
.page_title{
    display: block;
    width:100%;
    text-align: center;
    padding:0.5em 1em;
    margin: 2em 0em 2em 0em;
}
.background-space-wrapper {
    position:relative;
    overflow: hidden;
    z-index: 1;
    background-color: white;
}
.background-space{
    position: absolute;
    top: 0;
    left:0;
    width: 100%;
    height: 100%;
    z-index: -1;
    display: flex;
    flex-flow:column nowrap;
}
.background-grid {
    display: grid;
    flex: 0 0 calc(100vw);
    width: 100%;
    height: calc(100vw);
    grid-template-columns: repeat(10, 10%);
    grid-template-rows: repeat(10, 10%);
    grid-template-areas: 
        "x x x x x x k k m m"
        "x x x x x x k k m m"
        "y y o o z z z z z z"
        "y y o o z z z z z z"
        "i i i i i i i i i i"
        "u u u u p p p l l l"
        "u u u u p p p l l l"
        "u u u u p p p l l l"
        "v c c w b j j j j j"
        "v c c w n j j j j j";
}
.x, .y, .z, .u, .i, .j, .l, .c, .w, .b, .m, .v, .n{
    background-color: #f8f3f2;
    }
.o, .p, .c, .k, .b {
        background-size: 100%;
        border-radius: 0%;
}
.o {
    background: radial-gradient(circle, rgba(0,0,0,0) 50%, #f8f3f2 50%, #f8f3f2 100%) !important;
}
.b {
    background: radial-gradient(circle, rgba(255,100,50,0.2) 50%, #f8f3f2 50%, #f8f3f2 100%) !important;
}
.k {
    background: radial-gradient(circle, rgba(255,100,50,0.1) 50%, #f8f3f2 50%, #f8f3f2 100%) !important;
}
.p {
    background: radial-gradient(circle, rgba(230,200,50,0.1) 50%, #f8f3f2 50%, #f8f3f2 100%) !important;
}
.c {
    background: radial-gradient(circle, rgba(250,200,50,0.3) 50%, #f8f3f2 50%, #f8f3f2 100%) !important;
}
.learn-circle {
    position:relative;
    left: -200px;
    width: 700px;
    height: 700px;
    background: radial-gradient(circle, rgba(255,155,155,0.5) 50%, rgba(0,0,0,0) 50%, rgba(0,0,0,0) 100%) !important;
    background-position:left 20% top 50%;
}
.spacer {
    flex:1;
    background: #f8f3f2;
}
.x {
    grid-area: x; 
}
.n {
    grid-area: n; 
}
.m {
    grid-area: m; 
}
.v {
    grid-area: v; 
}
.w {
    grid-area: w; 
}
.c {
    grid-area: c; 
}
.k {
    grid-area: k; 
}
.b {
    grid-area: b; 
}

.y {
    grid-area: y; 
}


.z {
    grid-area: z; 
}

.u {
    grid-area: u; 
}

.i {
    grid-area: i; 
}

.j {
    grid-area: j; 
}
.l {
    grid-area: l; 
}

.o {
    grid-area: o;
}

.p {
    grid-area: p;
}
.course-item-layout__program_list{
    z-index: 3;
}
@media (max-width: 1200px) {   
    .course-item-layout__program_list:before {
        z-index:-1;
    }
    .learn-circle {
        left: -300px;
        width: 700px;
        height: 700px;
    }
    .main-page-layout__types .list {
        flex-flow: row wrap;
        gap: 25px;
    }
    .course-item-layout__about .text-block {
        margin-bottom: 4em;
    } 

    .page-header__menu {
        background-color: #f8f3f2 !important;
    }

    .page-header .logo {
        display: flex !important;
        justify-content: center;
        margin-left: -52px !important;
    }

    .page-header .logo img {
        height: 100%;
    }

    .main-page-layout__header .slick-item.slick-current .buttons {
        left: 1rem !important;
        right: 1rem !important;
        bottom: 1rem !important;
    }
}
@media (min-width: 1200px) {
    .mt-lg-8 {
        margin-top:8em;
    }
    .pl-lg-8 {
        padding-left: 8em !important;
    }
    .pl-lg-2 {
        padding-left: 2em !important;
    }
    .page-header__main {
        margin-top: 10px;
    }

    .questioning-background {
        background-image:url('/promo/images/content/questioning.png');
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: 50%;
    }

    .page-header__menu {
        margin-top: 10px;
        background-color: transparent !important;
    }

    .logo img {
        height: 200%;
        margin-top: -23px;
    }

    .page-header__menu .menu li > ul {
        top: calc(100% + 10px) !important;
    }
}


.main-page-layout__decors {
    display: none !important;
}

#shedule a.button-default, #sсhedule a.button-default, a.button-default-dark, .course-item-layout a.button-default {
    width: initial;
    margin-right: auto;
    border-radius: 2rem;
    background-color: #c07080 !important;
    padding: 0 2rem;
}
.button-default-dark:hover {
    background-color: #eb7e94 !important;
}

.main-page-layout__header .slick-item .buttons .button-default {
    border-radius: 2rem;
    background-color: #F090A1 !important;
    padding: 0 2rem;
}

.contacts-block__form .h2, .contacts-block__form h2, .course-choose .h3, .course-choose h3, .lk-profile-form .h3, .lk-profile-form h3, .main-page-layout__courses .h2, .main-page-layout__courses h2, .main-page-layout__shedule .h2, .main-page-layout__shedule h2, .main-page-layout__teachers .h2, .main-page-layout__teachers h2, .read-more-block .h2, .read-more-block h2, .set-courses-block .h2, .set-courses-block h2, .subscribe-block__head .h2, .subscribe-block__head h2, .teacher-item__info_head .h3, .teacher-item__info_head h3, .text-block .h3, .text-block h3 {
    font-family: 'Viaoda Libre', cursive !important;
}

.about-layout__numbers .h2, .about-layout__numbers h2, .about-layout__students .h2, .about-layout__students h2, .block-default__header .h1, .block-default__header .h2, .block-default__header h1, .block-default__header h2, .course-shedule-inner .h2, .course-shedule-inner h2, .faq-block .h2, .faq-block h2, .main-page-layout__types .h2, .main-page-layout__types h2, .register-course-layout__form .h2, .register-course-layout__form h2, .sales-inner-block .h2, .sales-inner-block h2, .teacher-block .h2, .teacher-block h2, .text-block .h1, .text-block .h2, .text-block h1, .text-block h2 {
    font-family: 'Viaoda Libre', cursive !important;
}

.h2, .h3,
h1, h2, h3, h4 {
    font-family: 'Viaoda Libre', cursive !important;
}
.button-default {
    border-radius: 1rem;
}


.main-page-layout__courses_slider .slick-slide {
    border-radius: 2rem;
    overflow: hidden;
}

.main-page-layout__types.support-block .list:before {
    left: -88x !important;
    right: -88px !important;
}
.h-100vh{
    height: 100vh;
}
.main-page-layout__types.support-block .list > a {
    min-width: 350px !important;
    width: 30% !important;
    transition: all 0.3s;
}
@media (max-width:450px) {
    section.support-block {
        display: flex;
        justify-content: center;
    }
    section.support-block .wrapper{
        margin: 0;
        width: auto !important;
    }
    .slick-list .slick-slide {
        margin-left: auto !important;
        margin-right: auto !important;
        left: -15px;
    }
}
.reviewer-photo{
    float: right;
    width: 170px;
    height: 170px;
    object-fit: cover;
    border-radius: 50%;
}
.d-flex{
    display: flex;
}
.w-100 {
    width:100% !important; 
}
.center {
    text-align: center;
}
.contact-bg{
    background-image:url('/promo/images/contact.png');
    background-repeat: no-repeat;
    background-position: right 0 bottom 0;
    background-size: auto 100%;
}
.info.wrapper {
    margin-top: 2em !important;
    padding-top:2em !important;
}
.float-left {
    float: left;
}
.float-right {
    float: right;
}

s.red-stroke{
    align-items: baseline;
    position: relative;
    text-decoration: none;
    height: 1em;
    width: 100%;
}
s.red-stroke::before {
    color:white;
    content:'';
    position: absolute;
    top: calc(50% - 0.05em);
    left: -0.25em;
    width: calc(100% + 0.5em);
    height: 0.2em;
    background-color: rgba(240, 100,100,0.8);
    rotate: 30deg;
}
.blog.article.wrapper{
    max-width: 1024px;
    justify-content: center;
    margin-bottom: 4em;
    margin-top: 50px;
    padding-top:2em !important;
    background-color: rgb(255, 250, 249);
    padding: 4em 4em 8em 4em !important;
    border-radius: 30px;
    flex-flow: column wrap;
    -webkit-box-shadow: 0px 0px 20px rgba(222, 194, 190, .5);
    box-shadow: 0px 0px 20px rgba(222, 194, 190, .5);
}
.button-CTA {
    background: linear-gradient(45deg, rgba(255, 173, 220, 0.8) 0, rgba(205, 97, 255, 0.6) 50%, rgba(255, 101, 157, 0.6) 100%);
    background-position: -5px;
    background-size: 200% 100px;
    transition: background 0.5s;
}
#mainPageHeadSlider > div > div > div {
    margin-left:0;
}
.rounded-xl {
    border-radius: 30px;
}
.rounded-top-right-xl {
    border-top-right-radius: 30px;
}

.button-CTA:hover {
    box-shadow: 0 6px 8px rgba(50, 30, 50, 0.5);
    background-position: 100% 0; /* Сдвиг градиента на ширину элемента */
}
.shadow-xxl {
    -webkit-box-shadow: 0px 0px 20px rgba(222, 194, 190, .5);
    box-shadow: 0px 0px 20px rgba(222, 194, 190, .5);
}
.big-button {
    width: 12em !important;
    height: 2.75em !important;
    font-size: 1.5em;
    border: 4px solid;
    animation: borderGlow 5s infinite linear;
}
.big-button:hover {
    background-color: #f8f3f2 !important;
    animation: borderGlow 5s infinite linear;
}
@media (max-width: 640px) {
    .cta-background {
        background-image: url(/images/profession-bg.png);
        background-repeat: no-repeat;
        background-position: 5  0% 100%;
    }
}

@keyframes borderGlow {
    0% {
        border-color: rgba(255, 64, 129, 0.15); /* полупрозрачный розовый */
    }
    25% {
        border-color: rgba(255, 171, 64, 0.15); /* полупрозрачный оранжевый */
    }
    50% {
        border-color: rgba(64, 196, 255, 0.15); /* полупрозрачный голубой */
    }
    75% {
        border-color: rgba(171, 64, 255, 0.15); /* полупрозрачный фиолетовый */
    }
    100% {
        border-color: rgba(255, 64, 129, 0.15); /* возвращаемся к полупрозрачному розовому */
    }
}

.all-courses-link {
    position:relative;
    -webkit-text-shadow: 0px 0px 20px rgba(222, 194, 190, .5);
    text-shadow: 15px 15px 10px rgba(20, 15, 13, 0.2);
    transition: 0.5s;
}
.all-courses-link:hover{
    transform: translate(5px, 0px);
    transition: 0.5s;
}
.arrow-to-courses{
    position: absolute;
    z-index:10;
    object-fit: cover;
    transition: 0.5s;
    opacity: 0.5;
    width:200px;
    height:75px;
}
.h-100{
    height: 100%;
}
.arrow-at-top {
    top: 0.3em;
}
.arrow-at-bottom{
    bottom:0%;
}
.main-page-layout__types .list > a {
    border-radius: 2rem;
}
.post-img {
    margin-left: auto;
    margin-right: auto;
    width: 50%;
}
.article {
    margin-bottom: 2em;
}
.alert-success {
    position: absolute;
    top:200px;
    width:100vh;
    background: rgba(220,250,200,0.5);
    color: black;
    padding:20px;
    border-top: 2px solid rgba(120,150,50,0.5); /* Верхняя граница */
    border-bottom: 2px solid rgba(120,150,50,0.5); /* Нижняя граница */
    border-left: none; /* Без левой границы */
    border-right: none; /* Без правой границы */
    border-top-right-radius: 30px;
    border-bottom-right-radius: 30px;
    -webkit-box-shadow: 0px 15px 20px rgba(22, 34, 30, .5);
    box-shadow: 0px 15px 20px rgba(22, 34, 30, .5);
    transition: transform 0.5s;
}
.alert-success:hover{
    transform: translate(-25px, 0px);
}
.justify-content-center{
    justify-content: center;
}
.column {
    flex-flow: column nowrap;
    align-items: center;
}
.flex-grow-1{
    flex-grow: 1;
}
.read-button {
    min-width: 150px;
    width: 40%;
    max-width: 300px;
    line-height: 1em;
    height: 3em;
    padding:1em;
    bottom: 1em;
    right: 1em;
    background-color: rgba(50, 43,40,0.5);
}
.blog-row {
    flex-flow: row wrap;
    gap: 2em;
    justify-content: space-around;
    align-items:stretch;
}
.post-card {
    display: flex;
    flex: 1 0 450px;
    max-width: 600px;
    background-color: rgba(255, 250, 249, 0.8);
    padding: 20px;
    border-radius: 30px;
    -webkit-box-shadow: 0px 15px 20px rgba(222, 194, 190, .5);
    box-shadow: 0px 15px 20px rgba(222, 194, 190, .5);
}
.post-card > a > h2:hover{
    color: rgba(155, 148, 146, 1);
}
.img-container{
    padding: 0em 1em;
    display: flex;
    justify-content: center;
}
.blog-image {
    max-width: 600px;
    min-width: 270px;
    width:50%;
}
.blog-image > img {
    object-fit: cover;
    border-radius: 30px;
}
.active-nav-item{
    font-weight: 700;
}
.top-flat{
    border-top-left-radius: 0px !important;
    border-top-right-radius: 0px !important;
}
.img-container > a > img {
    border-radius: 30px;
    overflow: hidden;
    border: 1px solid rgba(195, 188, 186, 0.5);
    object-fit: cover; /* Масштабирует изображение, сохраняя пропорции */
}
@media (max-width: 600px) {
    .float-md-right, .float-md-left {
        margin-left: auto;
        margin-right: auto;
    }
    .w-sm-100 {
        width:100% !important; 
    }
}
@media (max-width: 560px) {
    .half-lineheight-sm-p > *{
        line-height: 1.5em !important;
    }
    .position-sm-relative{
        position: relative;
    }
    .position-sm-absolute{
        position: absolute;
    }
    .set-height-sm {
        height: 322px !important;
    }
    .mt-sm-0 {
        margin-top:0em !important;
    }
    .mb-sm-0 {
        margin-bottom:0em !important;
    }
    .mb-sm-1 {
        margin-bottom:1em !important;
    }
    .mt-sm-05 {
        margin-top:0.5em !important;
    }
    .mb-sm-05 {
        margin-bottom:0.5em !important;
    }
    .pb-sm-05 {
        padding-bottom:0.5em !important;
    }
    .child-p-mt-sm-0 + p {
        margin-top: 0 !important;
    }
    .child-p-mt-sm-0 + p {
        margin-bottom: 0 !important;
    }
    .mb-sm-05 {
        margin-bottom:0.5em !important;
    }
    .mt-sm-1 {
        margin-top:1em !important;
    }
    .mt-sm-2 {
        margin-top:2em !important;
    }
    .mx-sm-0{
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .mx-sm-1{
        margin-left: 1em !important;
        margin-right: 1em !important;
    }
    .mx-sm-2{
        margin-left: 2em !important;
        margin-right: 2em !important;
    }
    .px-sm-2{
        padding-left: 2em !important;
        padding-right: 2em !important;
    }
    .top-sm-0 {
        top: 0;
    }
    .left-sm-0 {
        top: 0;
    }
    .pt-sm-0 {
        padding-top:0 !important;
    }
    .pt-sm-05 {
        padding-top:0.5em !important;
    }
    .pt-sm-1 {
        padding-top:1em !important;
    }
    .pt-sm-2 {
        padding-top:2em !important;
    }
    .pb-sm-0 {
        padding-bottom:0 !important;
    }
    .pb-sm-1 {
        padding-bottom:1em !important;
    }
    .py-sm-0 {
        padding-top:0 !important;
        padding-bottom:0 !important;
    }
    .py-sm-1 {
        padding-top:1em !important;
        padding-bottom:1em !important;
    }
    .sm-center {
        text-align: center;
    }
    .purchase_background-gradient-sm{
        z-index: -2;
    }
    .z--1 {
        z-index:-3;
    }
    .purchase_background-gradient-sm:before{
        content: '';
        z-index: -1;
        position: absolute;
        width: 100%;
        height: 100%;
        background: radial-gradient(ellipse at top right,transparent,rgba(248,243,242,1) 70%,rgba(248,243,242,1) 100%),
                    linear-gradient(90deg, rgba(248,243,242,1) 0%, rgba(248,243,242,1) 2%, rgba(248,243,242,0) 10%, rgba(248,243,242,0) 100%),
                    linear-gradient(0, rgba(248,243,242,1) 0%, rgba(248,243,242,1) 2%, rgba(248,243,242,0) 10%, rgba(248,243,242,0) 100%);
        top: 0; 
        left: 0;
    }
}
@media (min-width: 560px){
    .register-course-layout__header .img {
        width: 390px;
        height: 440px;
        margin-bottom: 0;
        position: absolute;
        top: 0;
        left: 0
    }
}

@media (min-width: 560px) and (max-width: 1200px) {
    .register-course-layout__form .h2,
    .register-course-layout__form h2{
        font-size: 24px;
        line-height: 39px;
    }
    .position-md-relative{
        position: relative;
    }
    .position-md-absolute{
        position: absolute;
    }
    .pt-md-80px {
        padding-top: 80px !important;
    }
    .pt-md-100px {
        padding-top: 100px !important;
    }
    .pt-md-120px {
        padding-top: 120px !important;
    }
    .pt-md-140px {
        padding-top: 140px !important;
    }
    .register-course-layout__form {
        padding-top: 207px;
        padding-bottom: 40px;
        -ms-flex-item-align: stretch;
        align-self: stretch;
        width: 40%;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    .register-course-layout__form .wrapper {
        width: 100% !important;
        padding: 0 60px
    }

    .register-course-layout__form h2 {
        margin-bottom: 35px
    }

    .register-course-layout__form .input-container {
        margin-bottom: 35px
    }

    .register-course-layout__form .buttons {
        margin-top: 40px
    }
    .register-course-layout__header .course-properties .date,
    .register-course-layout__header .course-properties .duration {
        margin-left: 0;
        margin-right: 20px
    }

    .block-default.register-course-layout__header {
        flex-grow: 1;
        padding-bottom: 0 !important;
        padding-top: 100px;
    }
    .block-default .register-course-layout__header {
        padding-bottom: 0 !important;
    }
    .block-default .register-course-layout__header {
        padding-bottom: 0 !important;
    }
    .register-course-layout__header .block-default__header {
        margin-bottom: 40px
    }

    .register-course-layout__header .wrapper {
        width: auto !important;
        margin-right: 0px;
        height: 100% !important;
    }

    .register-course-layout__header .head {
        background: rgba(240,230,230,0.9);
        margin-left: 250px;
        justify-content: space-between;
        padding: 2em;
        position: absolute;
        top:0;
        bottom: 0;
        right: 0;
        min-width: 300px;
        max-width: 500px;
        width: 50%;
        min-height: 440px;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -moz-box-orient: vertical;
        -moz-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -moz-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .register-course-layout__header .course-properties {
        margin-bottom: 20px
    }

    .register-course-layout__header .course-properties .date,
    .register-course-layout__header .course-properties .duration {
        margin-left: 0;
        margin-right: 20px
    }

    .register-course-layout__header .course-properties .time {
        margin-left: auto;
        margin-right: 0
    }

    .register-course-layout__header .edit {
        width: 240px;
        margin-top: auto
    }

    .register-course-layout__form {
        z-index:5;
        padding-top: 207px;
        padding-bottom: 40px;
        -ms-flex-item-align: stretch;
        align-self: stretch;
        width: 40%;
        -webkit-box-flex: 0;
        -moz-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    .register-course-layout__form .wrapper {
        width: 100% !important;
        padding: 0 60px
    }

    .register-course-layout__form h2 {
        margin-bottom: 35px
    }
    .register-course-layout {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -moz-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
    .register-course-layout__form .input-container {
        margin-bottom: 35px
    }

    .register-course-layout__form .buttons {
        margin-top: 40px
    }
    .register-course-layout__header .wrapper {
        margin-left: 50px;
    }
    .register-course-layout__header .wrapper {
        margin-left: 50px;
    }

    .register-course-layout__form .buttons {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -moz-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: start;
        -moz-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    .register-course-layout__form .buttons .button-default {
        margin-bottom: 0;
        width: 48%;
        -webkit-box-ordinal-group: 3;
        -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .register-course-layout__form .buttons .button-default.hollow {
        -webkit-box-ordinal-group: 2;
        -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
    .register-course-layout__header .course-properties .date {
        margin-right: 10px
    }
    .register-course-layout__header .course-properties .price_old {
        display: block;
        text-decoration: line-through;
        font-size: 90%
    }
}
@media (min-width: 600px) and (max-width:768px) {
    .main-page-layout__types.support-block .list > a {
        left: -10%;
    }
    .float-md-right {
        float: right;
    }
    .float-md-left {
        float: left;
    }
}
@media (min-width: 440px) and (max-width:768px) {
    .mt-sm-4 {
        margin-top:4em;
    }
    .mt-sm-8 {
        margin-top:8em;
    }
}
@media (min-width: 768px) {
    .float-md-right {
        float: right;
    }
    .float-md-left {
        float: left;
    }
    .left-md-10 {
        left:10%;
    }
    .mt-md-8 {
        margin-top:8em;
    }
    .program-blocks {
        display: flex;
        flex-flow: row nowrap;
        justify-content: space-between;
        gap: 20px;
    }
    .program-blocks-images{
        display: flex;
        position: relative;
        flex-flow: column nowrap;
        justify-content: space-around;
        align-items: center;
        flex: 1 0 150px;
        gap: 40px;
        background: transparent;
    }
    .program-image {
        display: block;
        position: relative;
        top: -30px;
        object-fit: cover;
        opacity: 0.9999;
        transition: 0.3s;
        margin-top: 1em;
        margin-bottom: 1em;
        width: 100%;
        max-width: 400px;
        float: right;
    }
    .program-image img {
        border-radius: 10%;
        z-index: -3;
        width: 100%;
        width: 100%;
        object-fit: cover;
        -webkit-box-shadow: 0px 0px 20px rgba(222, 194, 190, .5);
        box-shadow: 0px 0px 50px rgba(222, 194, 190, 1);
    }
}
.program-blocks-text {
    position: relative;
    flex: 1 1 400px;
}
@media (max-width:768px) {
    .program-blocks-images{
        display: flex;
        position: relative;
        flex-flow: row nowrap;
        justify-content: space-around;
        align-items: center;
        flex: 1 0 150px;
        gap: max(40px, 10%);
        background: transparent;
    }
    .program-image {
        display: block;
        object-fit: cover;
        opacity: 0.9999;
        transition: 0.3s;
        margin-top: 1em;
        margin-bottom: 1em;
        width: 100%;
        max-width: 400px;
        float: right;
    }
    .program-image img {
        border-radius: 10%;
        z-index: -3;
        width: 100%;
        width: 100%;
        object-fit: cover;
        -webkit-box-shadow: 0px 0px 20px rgba(222, 194, 190, .5);
        box-shadow: 0px 0px 50px rgba(222, 194, 190, 1);
    }
    .program-blocks {
        display: flex;
        flex-flow: column-reverse nowrap;
        justify-content: space-between;
        gap: 20px;
    }
    .main-page-layout__types.support-block .list > a {
        background: rgba(255,255,255,0.95)
    }
    .arrow-to-courses{
        left:35%;
        transform: scale(0.5, 0.5);
    }
    .course-property{
        padding-right: 4em;
    }
    .clocks-icon:before{
        width: 2em;
        height: 2em;
        right: -1em;
        top: -0.4em;
    }
    .grades-icon:before{
        width: 3.5em;
        height: 4em;
        right: -1em;
        top: -0.3em;
    }
}
@media (min-width:768px) and (max-width: 1200px) {
    .clocks-icon:before{
        width: 2em;
        height: 2em;
        right: -4em;
        top: -0.4em;
    }
    .grades-icon:before{
        width: 3.5em;
        height: 4em;
        right: -4em;
        top: -0.3em;
    }
    .arrow-to-courses{
        left:43%;
        transform: scale(0.75, 0.75);
    }
}
.cta-background-color{
    background-color: rgb(73, 56, 56, 0);
}
@media (max-width: 1200px) {
    .mb-sm-0 {
        margin-bottom: 0 !important;
    }
    .cta-background-color{
        background-color: rgb(73, 56, 56, 0.7);
    }
    
    .first-bright-circle {
        position:absolute;
        left: 10%;
        top: 50%;
        width: 300px;
        height: 300px;
        background: radial-gradient(circle, rgba(255,155,155,0.7) 50%, #493838 50%, #493838 100%) !important;
        background-position:left 20% top 50%;
    }
    
    .second-bright-circle {
        position: absolute;
        top: 0%;
        left: 46%;
        width: 250px;
        height: 250px;
        background: radial-gradient(circle, rgba(205,185,155,0.7) 50%, #493838 50%, #493838 100%) !important;
        background-position: left 20% top 50%;
    }
    .third-bright-circle {
        position:absolute;
        left: 80%;
        top:30%;
        width: 100px;
        height: 100px;
        background: radial-gradient(circle, rgba(255,155,185,0.7) 50%, #493838 50%, #493838 100%) !important;
        background-position:left 20% top 50%;
    }
    .about-us-text {
        max-width: 70%;
    }
    a:hover > .arrow-to-courses{
        translate: 20px, 0px;
    }
    span:hover > .arrow-to-courses{
        transform: translate(20px,0px) scale(0.5, 0.5);
    }
    .img-container > img {
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .d-none-sm{
        display: none;
    }
    .all-courses-link {
        padding-bottom:1.5em !important;
    }
}
.properties > ul {
    position: relative;
    z-index: 1;
}
.properties > ul > li, .properties > ul > span{
    z-index: 1;
}

.course-icon {
    background: none;
    z-index: 1;
}

.course-icon:before{
    content: '';
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    z-index: -1;
}
.clocks-icon:before{
    background-image: url(/promo/images/content/icons/clock.svg);
}
.grades-icon:before{
    background-image: url(/promo/images/content/icons/grades.svg);
}
@media (min-width: 1200px) {
    .register-course-layout__header .img {
        position: relative;
    }
    .wrapper.CTA {
        padding-left: 8em;
    }
    .mt-lg-10{
        margin-top:10em;
    }
    .clocks-icon:before{
        width: 3em;
        height: 3em;
        right: 1em;
        top: -1em;
    }
    .grades-icon:before{
        width: 5em;
        height: 4em;
        right: -0.4em;
        top: -0.3em;
    }    
    .about-us-text {
        max-width: 66%;
    }
    .about-us-bg-lg{
        background-image:url('/promo/images/content/about/about.png');
        background-repeat: no-repeat;
        background-position: right 0 bottom 25%;
        background-size: auto 50%;
    }
    .contact-bg-lg{
        position: relative;
        z-index: 1;
    }
    .contact-bg-lg:before{
        content: '';
        position: absolute;
        z-index: -1;
        width: 100%;
        height: 120%;
        background-image:url('/promo/images/contact.png');
        background-repeat: no-repeat;
        background-position: right 0 bottom 0;
        background-size: auto 100%;
    }
    .arrow-to-courses{
        left:35%;
    }
    a:hover > .arrow-to-courses{
        transform: translate(20px, 0px);
    }
    span:hover > .arrow-to-courses{
        transform: translate(20px, 0px);
    }
    .img-container{
        flex:2;
    }
    .img-container > img {
        max-width: 100% !important;
    }
    .about-numbers {
        font-size:0.5em;
    }
}


.main-page-layout__types .list:before {
    border-radius: 2rem;
}

.course-directions__item .properties .difficulty .counter, .course-directions__item .properties .difficulty em, .course-item-layout .properties .difficulty .counter, .course-item-layout .properties .difficulty em, .course-list__item .properties .difficulty .counter, .course-list__item .properties .difficulty em {
    background-color: #F090A1 !important;
}

.forms__input {
    border-radius: 2rem !important;
    padding:0.3em 1em;
}

.forms__button {
    border-radius: 2rem !important;
}

body > div.page-wrap.main-page > main > footer > div > div.page-footer__main > div:nth-child(1) > a > img{
    -webkit-filter: invert(.75); /* safari 6.0 - 9.0 */
    filter: invert(.75);
}

@media (min-width: 768px) {
    .main-page-layout__types.support-block .list > a {
        left: -30%;
    }
    .forms__input {
        border-radius: 2rem 0 0 2rem !important;
        padding:0.3em 1em !important;
    }

    .forms__button {
        border-radius: 0 2rem 2rem 0 !important;
    }
}

.page-footer__main .button-default {
    border-radius: 2rem !important;
}


.about-layout__numbers ul li {
    border-radius: 2rem;
}

a i.ruble:before {
    content: '₽';
}

.course-item-layout__program ol {
    counter-reset: list-item;
}

.course-item-layout__program ol {
list-style-type: decimal;
}

.course-item-layout__program ol ol {
list-style-type: lower-alpha;
}

.course-item-layout__program ol ol ol {
list-style-type: lower-roman;
}
.course-item-layout__program ol ul {
list-style-type: none; /* Простые кружки */
}

.course-item-layout__program .text-block ol li{
font-weight: 700;
padding-left: 5px;
margin-left: 30px;
}
.course-item-layout__program .text-block ol ul li{
        font-weight: 500;
}
.course-item-layout__program .text-block ol li:before {
    content: '';
}
.course-item-layout__program_list ul li {
    padding-left: 30px !important;
}
.course-item-layout__program_list ul li:before{
    background-color: #f8f3f2 !important;
}

.text-block ul li:before {
    content: ''; /* Пустое содержимое, чтобы создать маркер */
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%); /* Центрируем кружок по вертикали */
    width: 10px; /* Размер кружка */
    height: 10px; /* Размер кружка */
    border-radius: 50%; /* Делаем его кругом */
    background-color: #ebdad8;
}

.block-default__header.CTA p{
    line-height: 2em;
    color: white !important;
    font-size: 1.1em;
    font-weight: 400;
}
.block-default__header.CTA ul li{
    position: relative;
    padding-left: 30px;
    line-height: 2em;
}
.block-default__header.CTA ul li:before {
    content: ''; /* Пустое содержимое, чтобы создать маркер */
    position: absolute;
    left: 0;
    transform: translateY(10px); /* Центрируем кружок по вертикали */
    width: 10px; /* Размер кружка */
    height: 10px; /* Размер кружка */
    border-radius: 50%; /* Делаем его кругом */
    background-color: #ebdad8;
}

.course-item-layout__program  .text-block ol ul li:before {
    transform: translate(-1em,-50%);
}
.CTA ul li:before {
    background-color: transparent !important;
    top: -10px !important;
    left: -5px !important;
    background: url('../images/icons/tick.svg') !important;
    background-repeat: no-repeat !important;
    border-radius: 0 !important;
    width: 30px!important;
    height: 30px !important;
}
.CTA ul li:before svg {
    stroke-width: 5px;
}