html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:var(--color-black);text-decoration:none}mark{background-color:#ff9;color:var(--color-black);font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}ul{list-style: none;}input:focus,select:focus,textarea:focus{outline: none;}



html{overflow-x: hidden; position: relative;}

:root{
    --Manrope: "Manrope", sans-serif;
    --Forum: "Forum", serif;
    --TextP: #1A202C;
    --TextS: #4A5568;
    --blue: #38BDF8;
    --blueL: #DAF4FF;
    --blueH: #0EA5E9;
    --sBG: #F7FAFC;


    --radius: 16px;
}


body{
    font-family: var(--Manrope);
	background: #FFFFFF;
    font-size: 16px;
    line-height: 22px;
	color: var(--TextP);
	min-width: 320px;
    font-weight: normal;
    position: relative;
}


body.open:after{position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ''; background: rgba(0, 0, 0, 0.5); z-index: 300}

.container{max-width: 1280px; margin: 0 auto; box-sizing: border-box; width: 100%;}





header{border-bottom: 1px solid #E2E8F0; box-shadow: 0px 16px 16px -8px rgba(12, 12, 13, 0.01); z-index: 600; background: #fff; position: relative;}
    header .flex{align-items: center;}
    header nav ul{display: flex; align-items: center; justify-content: center; gap: 32px;}
        header nav ul li{position: relative; display: flex; height: 120px; align-items: center; justify-content: center;}
            header nav ul li.menu-item-has-children a{padding-right: 28px;}
                header nav ul li.menu-item-has-children a:after{display: block;}
                header nav ul li a:after{position: absolute; top: calc(50% - 10px); right: 0; width: 20px; height: 20px; content: ''; background: url("../img/icon-arrow-down.svg") 50% 50% no-repeat; transition: all 0.2s; display: none;}
                header nav ul li a:before{position: absolute; top: calc(50% - 10px); right: 0; width: 20px; height: 20px; content: ''; background: url("../img/icon-arrow-down-blue.svg") 50% 50% no-repeat; transition: all 0.2s; opacity: 0}
                header nav ul li:hover a:after{opacity: 0; transform: rotate(180deg);}
                header nav ul li.menu-item-has-children:hover a:before{opacity: 1; transform: rotate(180deg);}
                header nav ul li:hover > a{color: var(--blueH);}
            header nav ul li a{color: var(--TextP); position: relative; padding-top: 10px; padding-bottom: 10px; display: flex;}
        header nav ul ul{border-top: 1px solid #E2E8F0; display: block; position: absolute; top: 100%; left: 0; box-sizing: border-box; min-width: 400px; padding: 24px 24px 16px; border-bottom: 1px solid #E2E8F0; box-shadow: 0px 16px 16px -8px rgba(12, 12, 13, 0.05); border-radius: 0px 0px 16px 16px; background: #fff; z-index: 500; display: none;}
            header nav ul li:hover > ul{display: block;}
            header nav ul ul li{margin-bottom: 16px; padding-bottom: 16px; border-bottom: 1px solid transparent; padding: 0; height: auto; display: block; transition: all 0.2s;}
                header nav ul ul li:hover{border-color: #E2E8F0;}
                header nav ul ul li:last-child{margin: 0}
                header nav ul ul li a{display: block; padding: 0; height: auto;}
                    header nav ul ul li a span{display: block; margin-top: 8px; color: #A0AEC0; font-size: 12px;}
                    header nav ul ul li a:after{background: url("../img/icon-arrow-down-blue.svg") 50% 50% no-repeat; transform: rotate(90deg)!important; opacity: 1!important}
                    header nav ul ul li a:before{display: none!important;}





#navigation{display: none; position: fixed;}





#promo{}
    #promo .container{position: relative;}
    #promo .image{width: 600px; height: 100%; overflow: hidden; position: absolute; top: 0; right: 0;}
        #promo .image img{width: 100%; height: 100%; object-fit: cover; border-radius: var(--radius);}
    #promo .text{width: 560px; color: var(--TextS);}
    #promo .actions{padding: 32px 0 175px;}
        #promo .actions .btn{width: calc(50% - 6px)}
    #promo .counts .count{color: var(--blue); margin-bottom: 16px; font-size: 48px; font-family: var(--Forum); line-height: normal;}





#directions{}
    #directions .bt{text-align: center;}
    .item__direction{position: relative; overflow: hidden; border-radius: var(--radius);}
        .item__direction:after{background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.8) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)); position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ''; transition: all 0.2s;}
        .item__direction:hover img{transform: scale(1.1);}
        /*.item__direction a{position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 9}*/
        .item__direction img{width: 100%; height: 400px;}
        .item__direction .data{position: absolute; bottom: 0; left: 0; box-sizing: border-box; padding: 32px; color: #fff; z-index: 5; transform: translateY(50px); transition: all 0.2s;}
            .item__direction:hover .data{transform: translateY(0);}
        .item__direction .type{display: inline-block; margin-bottom: 16px; background: var(--blue); line-height: 24px; border-radius: 8px; padding: 0 8px; font-size: 12px;}
        .item__direction .title{margin-bottom: 16px; font-size: 24px; font-weight: normal;}
        .item__direction .excerpt{margin-bottom: 30px;}





#about__text{}
    #about__text .bt{margin-bottom: 32px;}
    #about__text .text{width: calc(50% - 60px)}
    #about__text .data{width: calc(50% - 60px)}
    #about__text blockquote{position: relative; margin-bottom: 34px;}
        #about__text blockquote:after{position: absolute; bottom: -16px; left: 0; width: 64px; height: 2px; content: ''; background: var(--blue);}
    #about__text .item__box{margin-bottom: 32px;}
        #about__text .item__box:last-child{margin: 0}





#locations{}
    #locations .bt{text-align: center;}
    #locations .location{margin-bottom: 16px; padding: 0 0 0 28px; background: url("../img/icon-location.svg") 0 50% no-repeat; color: var(--TextS);}
    #locations .title{margin-bottom: 16px; justify-content: space-between;}
    #locations.section__locations .item__box{margin-bottom: 24px; cursor: pointer;}
        #locations.section__locations .item__box:last-child{margin: 0}
        #locations.section__locations .item__box.active{border-color: var(--blue);}
    #locations .tab{display: none; height: 100%; border-radius: var(--radius); overflow: hidden;}
        #locations .tab.tab1{display: block;}
        #locations .tab iframe{object-fit: cover; width: 100%; height: 100%;}





#live{}
    #live .bt{text-align: center;}
    #live .swiper{overflow-x: visible;}
    #live .swiper-slide{width: 550px}
    #live img{width: 100%; height: 310px; border-radius: var(--radius); object-fit: cover;}





#consultation{}
    #consultation .bt{text-align: center; margin-bottom: 16px}
    #consultation .bt__note{text-align: center;}
    #consultation .form{box-sizing: border-box; background: var(--sBG); border-radius: var(--radius); padding: 24px;}
    #consultation .image img{width: 100%; height: 100%; border-radius: var(--radius); object-fit: cover;}





#promo__page{text-align: center;}





#team{}
    #team .flex__center{padding: 16px 0 0;}
    #team .bt{text-align: center; margin-bottom: 16px;}
    #team .bt__note{text-align: center;}
    #team .filters__site{background: var(--sBG);}
    #team .item__filter{width: calc(25% - 12px)}
    .item__team{border: 1px solid #E2E8F0; border-radius: var(--radius); overflow: hidden; color: var(--TextS); background: #fff;}
        .item__team .image{height: 190px}
            .item__team .image img{width: 100%; height: 100%; object-fit: cover;}
        .item__team .data{padding: 24px;}
        .item__team .status{color: var(--blue); font-weight: 600; margin-bottom: 16px;}
        .item__team .title{margin-bottom: 16px; font-size: 24px; font-weight: 600; line-height: normal; color: var(--TextP);}
        .item__team .btn{margin-top: 16px; font-weight: 600;}





#promo__events{}
    #promo__events .container{align-items: center;}
    #promo__events .btn{margin-top: 32px}
    #promo__events.section__shop .image{max-width: 600px; position: relative;}
    #promo__events.section__shop .text{max-width: 580px}
    #promo__events .image .item{padding: 16px 16px 16px 88px; position: absolute; bottom: 24px; left: -127px; box-sizing: border-box; background: #fff; border-radius: var(--radius); border: 1px solid #E2E8F0;}
        #promo__events .image .item .icon{position: absolute; left: 16px; width: 64px; height: 64px; top: calc(50% - 32px); background: url("../img/icon-shop.svg") 50% 50% no-repeat;}
            #promo__events .image .item .icon.icon2{background: url("../img/icon-sport.svg") 50% 50% no-repeat;}
        #promo__events .image .item .bt__title{margin-bottom: 4px;}





.event__item{width: calc(100%/3 - 12px); box-sizing: border-box; background: #fff; border-radius: var(--radius); padding: 24px;}
    .event__item.event__full{width: calc(100% / 3 * 2 - 12px); display: flex; justify-content: space-between; flex-wrap: wrap;}
        .event__item.event__full .image{width: calc(50% - 12px); order: 1; margin: 0}
            .event__item.event__full .image img{height: 265px; margin: 0}
        .event__item.event__full .data{width: calc(50% - 12px); position: relative; order: 0; position: relative;}
        .event__item .tags{position: absolute; bottom: 0; left: 0; width: 100%; display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 8px;}
            .event__item .tags .btn{padding: 0 12px; height: 46px; font-weight: normal; color: var(--blue); background: #fff; border-width: 1px;}
    .event__item .image{margin-bottom: 16px;}
    .event__item img{width: 100%; border-radius: var(--radius); height: 156px;}
    .event__item .title{font-weight: 600; margin-bottom: 16px; font-size: 24px; line-height: normal;}





#individual{text-align: center;}
    .item__individual{text-align: center; color: var(--TextS);}
        .item__individual img{margin: 0 auto 16px; width: 100px; height: 100px; object-fit: cover;}





#prices{}
    #prices .bt{text-align: center;}
    #prices .note{padding: 48px 0 0; text-align: center; font-size: 12px; color: var(--TextS);}
    #prices .grid{align-items: center;}
        #prices .grid.grid-2{align-items: stretch;}
        #prices .grid.grid-2 .item__price{padding-bottom: 65px;}
    .item__price{box-sizing: border-box; border-radius: var(--radius); background: #fff; padding: 16px; border: 1px solid #E2E8F0; position: relative; padding-bottom: 110px}
        .item__price.item__popular{color: #fff; background: var(--blue);}
            .item__price.item__popular .excerpt,.item__price.item__popular .bt__title{color: #fff;}
            .item__price.item__popular ul li{background: url("../img/icon-ls-white.svg") 0 50% no-repeat;}
            .item__price .popular{display: inline-block; height: 30px; border-radius: 100px; color: var(--blue); background: #fff; line-height: 30px; padding: 0 16px; margin-bottom: 20px;}
        .item__price.item__popular .btn{background: #fff; color: var(--TextP); font-weight: 600;}
            .item__price.item__popular .btn:hover{background: var(--sBG); color: var(--blueH);}
        .item__price .btn{position: absolute; bottom: 24px; left: 24px; width: calc(100% - 48px)}
        .item__price .bt__title{margin-bottom: 8px}
        .item__price .price{margin-bottom: 8px; font-weight: normal; font-size: 48px; line-height: normal; font-family: var(--Forum);}
        .item__price .excerpt{color: var(--TextS); margin-bottom: 24px;}
        .item__price ul{margin-bottom: 40px;}
            .item__price.item__popular ul{margin: 0}
            .item__price ul li{margin-bottom: 16px; padding: 0 0 0 28px; background: url("../img/icon-ls.svg") 0 50% no-repeat;}
                .item__price ul li:last-child{margin: 0}
        .item__price .time{line-height: 54px; margin-bottom: 24px; text-align: center; border-radius: var(--radius); background: var(--sBG);}
            .item__price.item__popular .time{background: #42C7FF; color: #fff;}




#advantages .bt,#why .bt{text-align: center;}
.item__advantages{padding: 24px; border-radius: var(--radius); border: 1px solid #E2E8F0; color: var(--TextS); background: #fff;}
    .item__advantages.item__center{text-align: center;}
    .item__advantages img{margin-bottom: 24px; width: 64px; height: 64px;}
    .item__advantages .image{margin: 0 auto 24px; display: flex; align-items: center; justify-content: center; width: 150px; height: 150px;}
        .item__advantages .image img{width: auto; height: auto; margin: 0}





#details{text-align: center;}
    #details .gallery .item{width: calc(50% - 12px)}
        #details .gallery .item:nth-child(2),#details .gallery .item:nth-child(3){width: calc(25% - 12px)}
    #details .gallery img{border-radius: 20px; width: 100%; margin-bottom: 24px;}
        #details .gallery .item:nth-child(1) img,#details .gallery .item:nth-child(3) img{height: 100%;}
        #details .gallery img:last-child{margin: 0}
    #details .slider-sw{display: none;}
    #details .gallery.flex-2 .item{width: calc(50% - 12px); margin-bottom: 24px;}
    #details .gallery.flex-2 .item:last-child{margin: 0; width: 100%;}
    #details .gallery.flex-2-full .item{width: calc(100% / 3 - 12px)}
    #details .gallery.flex-2-full .item:nth-child(1){width: calc(100% / 3 * 2 - 12px)}




#location{}
    #location .bt{text-align: center;}





#consultation__block{text-align: center; color: #fff;}
    #consultation__block .data{background: var(--blue); padding: 32px; border-radius: 16px;}
    #consultation__block .bt{color: #fff; margin-bottom: 16px;}
    #consultation__block .bt__note{margin-bottom: 32px; color: #fff;}





#promo__movna{padding: 275px 0; text-align: center;}
    #promo__movna .images{position: absolute; top: 0; left: calc(50% - 640px); width: 1280px; height: 100%;}
        #promo__movna .images .mobile{display: none; position: relative; width: 100%; height: 300px; border-radius: 20px; object-fit: cover;}
        #promo__movna .images img{position: absolute;}
            #promo__movna .images img:nth-child(1){top: 50px; left: 0; width: 300px}
            #promo__movna .images img:nth-child(2){top: 50px; right: 0; width: 380px}
            #promo__movna .images img:nth-child(3){bottom: 30px; left: 0; width: 345px;}
            #promo__movna .images img:nth-child(4){bottom: 50px; right: 0; width: 300px}

            #promo__movna.section__kindy .images img:nth-child(1){top: 110px; width: 235px}
            #promo__movna.section__kindy .images img:nth-child(2){width: 260px}
            #promo__movna.section__kindy .images img:nth-child(3){bottom: 45px; width: 260px}
            #promo__movna.section__kindy .images img:nth-child(4){bottom: 65px; width: 320px}

    #promo__movna .text{margin: 0 auto; max-width: 704px; position: relative; z-index: 3}
    #promo__movna .btn{margin-top: 32px;}
    #promo__movna p{color: var(--TextS);}





#choose__direction{}
    #choose__direction .bt{text-align: center;}





#complex{}
    #complex .bt{text-align: center;}
    #complex .right{width: calc(100%/3 - 12px);}
    #complex .left{width: calc(100%/3 * 2 - 12px);}
        #complex .right .item__complex img{height: 176px;}
        #complex .right .item__complex .status{background: #E2E8F0; color: var(--TextP);}
        #complex .right .item__complex .bt__title{margin: 0 0 16px}
        #complex .right .item__complex .s__tags{padding: 0; gap: 8px}
            #complex .right .item__complex .s__tags a,#complex .right .item__complex .s__tags span{padding: 0 12px; height: 46px;}
            #complex .right .item__complex .s__tags a:after,#complex .right .item__complex .s__tags span:after{display: none}
    .item__complex{box-sizing: border-box; padding: 24px; border-radius: var(--radius); background: var(--sBG); margin-bottom: 24px; position: relative;}
        .item__complex:last-child{margin: 0}
        .item__complex .status{display: inline-block; line-height: 30px; margin-bottom: 32px; border-radius: 100px; color: #fff; background: var(--blue); padding: 0 16px;}
        .item__complex img{width: 100%; height: 240px; border-radius: 20px; object-fit: cover; margin-bottom: 32px;}
        .item__complex p{color: var(--TextS);}
        .item__complex .s__tags{padding: 32px 0 0;}

        .item__complex.item__left{padding-left: 227px;}
            .item__complex.item__left .image{position: absolute; top: 24px; left: 24px; width: 170px; height: calc(100% - 48px)}
                .item__complex.item__left .image img{width: 100%; height: 100%;}

        .item__complex .steps{padding: 16px 0 0; display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; width: 100%;}
            .item__complex .steps ul{width: 100%; text-align: center;}
            .item__complex .steps li{position: relative;}
                .item__complex .steps li:after{position: absolute; top: 30px; right: -100px; width: 80px; height: 2px; background: var(--blueL); content: ''}
                .item__complex .steps li:last-child:after{display: none;}
            .item__complex .steps span{margin: 0 auto 8px; max-width: 32px; height: 32px; border-radius: 50%; background: var(--blue); color: #fff; display: flex; align-items: center; justify-content: center;}
            .item__complex .steps .hidden{opacity: 0.35}





.section__about{}
    .section__about .flex{align-items: center;}
    .section__about .text,.section__about .image{width: calc(50% - 12px);}
    .section__about .image img{border-radius: var(--radius); width: 100%;}
    .section__about .bt{margin-bottom: 16px;}
    .section__about p{color: var(--TextS); margin-bottom: 16px;}
        .section__about p:last-child{margin: 0}
    .section__about ul{margin-top: 32px; display: flex; align-items: center; justify-content: flex-start; gap: 30px; flex-wrap: wrap;}
        .section__about ul li{padding: 0 0 0 30px; background: url("../img/icon-ok.svg") 0 50% no-repeat;}
    .section__about .actions{padding: 32px 0 0;}
        .section__about .actions .btn{width: calc(50% - 6px)}
    .section__about .item{position: relative; margin-bottom: 32px; padding: 0 0 0 72px; position: relative;}
        .section__about .item span{position: absolute; display: flex; align-items: center; justify-content: center; background: var(--blueL); color: var(--blue); width: 48px; height: 48px; border-radius: 50%; font-size: 24px; font-weight: 600; position: absolute; top: 0; left: 0;}





#safety{text-align: center;}
    #safety .bt__title{margin: 0}





#variants{}
    #variants .bt{text-align: center;}
    #variants .item__advantages{position: relative; padding-bottom: 110px;}
        #variants .item__advantages .btn{position: absolute; bottom: 24px; left: 24px; width: calc(100% - 48px);}





#promo__object{position: relative;}
    #promo__object img{width: 100%; height: 530px;}
    #promo__object .data{position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: flex-start; width: 100%; height: 100%;}
    #promo__object .text{background: #fff; border-radius: var(--radius); box-sizing: border-box; padding: 24px; max-width: 650px;}
    #promo__object span{display: block; margin-bottom: 14px; color: #A0AEC0}
    #promo__object .location{padding: 0 0 0 30px; background: url("../img/icon-location.svg") 0 50% no-repeat;}
    #promo__object .btn{margin-top: 24px;}





#how{}
    #how .bt{margin-bottom: 16px!important; text-align: center;}
    #how .bt__note{text-align: center;}





#clubs{}
    #clubs .bt{text-align: center;}
    #clubs .grid-3{margin-bottom: 24px;}




#schedule .bt{text-align: center;}
    .item__schedule{position: relative; padding: 24px 24px 24px 88px; background: #fff; border-radius: var(--radius); border: 1px solid #E2E8F0}
        .item__schedule img{position: absolute; left: 24px; width: 48px; height: 48px; top: calc(50% - 24px)}
        .item__schedule .time{margin: 10px 0;}
        .item__schedule .bt__title{margin: 0}
        .item__schedule p{color: #A0AEC0;}





#contacts{}
    #contacts .bt{margin-bottom: 32px;}
    #contacts .map{width: calc(50% - 12px); border-radius: var(--radius); overflow: hidden;}
        #contacts .map iframe{width: 100%; height: 100%; object-fit: cover;}
    #contacts .data{width: calc(50% - 12px)}
    #contacts .actions .btn{width: calc(50% - 6px); gap: 10px;}
    #contacts .row{margin-bottom: 32px;}
        #contacts .row span{display: block; margin-bottom: 16px;}
        #contacts .row .bt__title{margin: 0}
        #contacts .row p{margin-top: 16px; color: #A0AEC0}
        #contacts .row a{color: var(--TextP);}
            #contacts .row a:hover{color: var(--blue);}





#importantly{}
    #importantly .bt{text-align: center;}
    #importantly .bt__title{margin: 0}





#types .item__price{padding-bottom: 24px;}
    #types .item__price .excerpt{margin: 0}
    #types .item__price .popular{background: var(--blue); color: #fff;}
    #types .item__price.item__popular .popular{background: #fff; color: var(--blue);}





#quote{}
    #quote .data{padding: 48px; border-radius: var(--radius); background: var(--sBG); border: 1px solid #E2E8F0;}
        #quote .data .bt{max-width: 560px;}
        #quote .data .text{width: 530px; color: var(--TextS);}
            #quote .data .text p{margin-bottom: 24px;}





#about__how{}
    #about__how .bt{margin-bottom: 16px!important; text-align: center;}
    #about__how .bt__note{text-align: center;}





#security{}
    #security .bt{text-align: center;}
    .item__sec{background: #fff; padding: 24px 24px 24px 88px; background: #fff url("../img/icon-sec.svg") 24px 50% no-repeat; border-radius: var(--radius); border: 1px solid #E2E8F0;}
        .item__sec .bt__title{margin: 0}





#about__for .image{order: 0}
#about__for .text{order: 1}
#about__for ul{gap: 16px;}
#about__for ul li{width: 100%;}





#smile{text-align: center;}
    #smile .bt__title{margin: 16px 0 0;}
    #smile img{width: 100%; border-radius: var(--radius); height: 230px}





.promo__note{position: absolute; width: 320px; max-width: 100%; box-sizing: border-box; padding: 24px; color: var(--blue); background: var(--blueL); border-radius: var(--radius); border: 1px solid var(--blue); text-align: left;}
    .promo__note span{display: block; font-weight: 600; font-size: 24px; margin-bottom: 12px;}
    .promo__note.note1{top: 65px; left: 105px}
    .promo__note.note2{bottom: 105px; right: 135px}





.item__count{text-align: center; border-right: 1px solid #E2E8F0;}
    .item__count:last-child{margin: 0}
    .item__count img{margin: 0 auto 16px;}
    .item__count .count{font-family: var(--Forum); margin-bottom: 16px; color: var(--blue); font-size: 48px; line-height: normal;}
    .item__count:last-child{border: none}





.blockquote{align-items: center; padding: 24px; background: var(--sBG); border-radius: 20px; border-left: 8px solid var(--blue); margin-top: 24px;}
    .blockquote .text{max-width: calc(100% - 200px)}
    .blockquote .bt__bg{line-height: 48px; padding: 0 24px;}





#timework .bt{text-align: center;}
.item__time{padding: 24px; border-radius: var(--radius); background: var(--sBG); border: 1px solid #E2E8F0; position: relative;}
    .item__time:after{width: 24px; position: absolute; top: calc(50% - 1px); right: -24px; height: 1px; background: #E2E8F0; content: '';}
    .item__time:last-child:after{display: none;}
    .item__time span{display: flex; align-items: center; justify-content: center; border-radius: 50%; margin-bottom: 32px; width: 64px; height: 64px; background: var(--blue); color: #fff; font-size: 24px; font-weight: 600;}





#steps .bt{text-align: center;}
.item__step{background: #fff; border: 1px solid #E2E8F0; border-radius: var(--radius); overflow: hidden;}
    .item__step img{width: 100%; height: 190px;}
    .item__step .data{padding: 24px}
    .item__step .status{display: inline-block; color: #fff; background: var(--blue); border-radius: 100px; padding: 0 12px; font-size: 12px; line-height: 24px; margin-bottom: 16px;}
    .item__step li{position: relative; margin-bottom: 16px; padding: 0 0 0 16px; position: relative; color: var(--TextS);}
        .item__step li:after{position: absolute; top: calc(50% - 4px); left: 0; width: 8px; height: 8px; background: var(--blue); border-radius: 50%; content: ''}
        .item__step li:last-child{margin: 0}





#list__tech .bt{text-align: center;}
    #list__tech .item__advantages{background: var(--sBG);}











footer{padding: 64px 0; background: var(--sBG); position: relative; z-index: 100}
    footer .copyright{padding: 24px 0 0; margin: 32px 0 0; border-top: 1px solid #E2E8F0; width: 100%; color: #A0AEC0;}
    footer .col{max-width: 272px;}
    footer .logo{margin-bottom: 24px;}
    footer .title{font-size: 24px; font-weight: 600; margin-bottom: 24px;}
    footer ul{position: relative}
    footer li{position: relative1; margin-bottom: 16px;}
        footer li:last-child{margin: 0!important}
        footer li a{color: var(--TextP); display: inline-block; position: relative;}
            footer li a:hover{color: var(--blueH);}
            footer li.menu-item-has-children a{padding-right: 28px}
            footer li.menu-item-has-children a:after{position: absolute; top: 0; right: 0; width: 20px; height: 20px; transition: all 0.2s; content: ''; background: url("../img/icon-arrow-down.svg") 50% 50% no-repeat;}
        footer li:hover > .sub-menu{display: block;}
        footer li:hover > a:after{transform: rotate(-90deg);}
        footer li .sub-menu{position: absolute; top: 0; left: 95px; background: #fff; box-sizing: border-box; border-radius: var(--radius); padding: 8px; box-shadow: 0px 16px 16px -8px rgba(12, 12, 13, 0.05); min-width: 370px; z-index: 100; display: none}
            footer li .sub-menu li{margin: 0 0 8px}
                footer li .sub-menu li a{display: flex; height: 30px; justify-content: flex-start; align-items: center; padding: 0 30px 0 8px; border-radius: 8px}
                    footer li .sub-menu li a:after{transform: rotate(-90deg); top: 5px; display: none;}
                    footer li .sub-menu li.menu-item-has-children a:after{display: block;}

            footer li .sub-menu .sub-menu{position: relative; left: 0; display: none1; box-shadow: none; padding: 0 8px; border-left: 1px solid #E2E8F0; width: auto; min-width: 0; border-radius: 0; margin: 0 8px 0 16px;}
                footer li .sub-menu .sub-menu li{margin: 0}
                    footer li .sub-menu .sub-menu li a:after{display: none; border-radius: 0;}
                    footer li .sub-menu .sub-menu li a{background: transparent!important; padding: 0!important}
                footer li .sub-menu .sub-menu li:hover a{color: var(--blue);}
            footer li .sub-menu li:hover > .sub-menu{display: block;}
            footer li .sub-menu li:hover a{background: var(--blueL);}
            footer li .sub-menu li:hover > a:after{transform: rotate(0deg);}













/* common styles */

    .section{padding: 64px 0; overflow: hidden;}

    .section__bg{background: var(--sBG);}



    .item__box{box-sizing: border-box; border: 1px solid #E2E8F0; border-radius: var(--radius); padding: 24px; box-sizing: border-box; background: #fff; transition: all 0.2s;}
        .item__box:hover{border-color: var(--blueH);}
        .item__box .title{align-items: center; justify-content: flex-start; margin-bottom: 16px; gap: 10px; font-size: 24px; font-weight: 600; line-height: normal;}
            .item__box .title span{max-width: calc(100% - 50px)}


    .filters__site{background: #fff; margin-bottom: 32px; text-align: center; border-radius: var(--radius); overflow: hidden;}
        .item__filter{display: flex; align-items: center; justify-content: center; width: calc(50% - 12px); border-radius: var(--radius); height: 54px; font-weight: 600; transition: all 0.2s; cursor: pointer;}
            .item__filter:hover,.item__filter.active{color: #fff; background: var(--blue);}



    .tabs__site .tab{display: none;}
        .tabs__site .tab.tab1{display: block;}



    .s__tags{display: flex; align-items: center; justify-content: flex-start; gap: 16px; flex-wrap: wrap;}
        .s__tags a,.s__tags span{display: flex; align-items: center; box-sizing: border-box; border-radius: var(--radius); background: #fff; border: 1px solid #E2E8F0; height: 54px; padding: 0 16px 0 32px; position: relative; color: var(--blue);}
            .s__tags a:after,.s__tags span:after{position: absolute; top: calc(50% - 4px); left: 16px; width: 8px; height: 8px; border-radius: 50%; background: var(--blue); content: ''; transition: all 0.2s;}
            .s__tags a:hover{background: var(--blue); color: #fff;}
            .s__tags a:hover:after{background: #fff;}





    .bt{font-size: 48px; line-height: normal; font-weight: normal; margin-bottom: 48px; font-family: var(--Forum); color: var(--TextP);}
        .bt.bt__large{font-size: 64px; margin-bottom: 16px;}
        .bt span{color: var(--blue);}


    .bt__title{font-weight: 600; font-size: 24px; line-height: normal; margin-bottom: 16px; color: var(--TextP);}

    .bt__bg{display: inline-block; margin-bottom: 16px; line-height: 30px; padding: 0 16px; background: var(--blueL); color: var(--blue); font-weight: normal; border-radius: 100px;}

    .bt__note{margin-bottom: 48px; color: var(--TextS);}



    .content{font-size: 18px; line-height: 23px;}
        .content .bt{margin-bottom: 10px;}
        .content p{margin-bottom: 25px;}
        .content h2,.content h3,.content h4,.content h5,.content h6{font-weight: 700; margin-bottom: 25px;font-size: 26px; line-height: normal;}
        .content a{color: var(--orange); border-bottom: 1px solid transparent;}
            .content a:hover{border-color: var(--orange);}
        .content ul{padding-left: 20px; list-style: disc; margin-bottom: 25px; line-height: normal;}
        .content .info{padding: 0 0 35px;}
            .content .info div{padding: 0 0 0 30px; margin-bottom: 10px; background: url("../img/calendar.svg") 0 50% no-repeat; background-size: 24px;}
                .content .info div.author{background: url("../img/user.svg") 0 50% no-repeat; background-size: 24px;}
                .content .info div.location{background: url("../img/location.svg") 0 50% no-repeat; background-size: 24px;}
            .content .info a{color: var(--black);}
                .content .info a:hover{color: var(--orange);}







    .socials{display: flex; align-items: center; justify-content: flex-start; gap: 6px; flex-wrap: wrap;}
        .socials a{display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; overflow: hidden; border-radius: 50%; background: var(--red);}
            .socials a:hover{transform: translateY(-2px);}



    .pagination{display: flex; align-items: center; justify-content: center; gap: 9px; padding: 55px 0 0;}
        .pagination a,.pagination span{display: flex; align-items: center; justify-content: center; width: 45px; height: 54px; color: var(--black); background: #fff; box-shadow: 0px 4px 7.1px 2px rgba(0, 0, 0, 0.05); border-radius: 14px; box-sizing: border-box; font-size: 16px; font-weight: 600;}
        .pagination span.current,.pagination a:hover{color: #fff; background: var(--red);}
        .pagination a.prev{background: #fff url("../img/arrow_left_red.svg") 50% 50% no-repeat;}
        .pagination a.next{background: #fff url("../img/arrow_right_red.svg") 50% 50% no-repeat;}
        .pagination a.prev:hover{background: var(--red) url("../img/arrow_left_white.svg") 50% 50% no-repeat;}
        .pagination a.next:hover{background: var(--red) url("../img/arrow_right_white.svg") 50% 50% no-repeat;}



    .form__select{position: relative; cursor: pointer; z-index: 30; font-size: 16px; font-weight: 600;}
        .form__select:after{position: absolute; right: 17px; top: calc(50% - 8px); width: 12px; height: 16px; content: ''; background: url("../img/arrr.svg") 50% 50% no-repeat; transition: all 0.2s;}
        .form__select .select__current{display: flex; height: 58px; box-sizing: border-box; padding: 0 48px 0 17px; align-items: center; width: auto; background: #fff; border-radius: 15px; box-shadow: 0px 4px 7.1px 2px rgba(0, 0, 0, 0.05);}
        .form__select.open:after{transform: rotate(180deg);}
        .form__select ul{position: absolute; font-size: 14px; top: 100%; left: 0; width: 100%; background: #fff; box-sizing: border-box; border-radius: 15px; box-shadow: 0px 4px 7.1px 2px rgba(0, 0, 0, 0.05); overflow: hidden; margin-top: 10px; display: none;}
            .form__select ul li{transition: all 0.2s; padding: 10px 17px; border-bottom: 1px solid rgba(78, 78, 169, 0.2); line-height: 1.2;}
                .form__select ul li:last-child{border: none;}
                .form__select ul li:hover,.form__select ul li.active{color: #fff; background: var(--red);}



/* common styles */











.slider-products .swiper{padding: 0 1px}

.slider-sw,.list__swiper{position: relative;}

.slider-sw .swiper-button-prev,.slider-sw .swiper-button-next{width: 24px; opacity: 1!important; height: 24px; top: 100%!important; transition: all 0.2s ease-out; margin: -24px; border-radius: 50%; overflow: hidden; box-sizing: border-box; background: url("../img/icon-swiper-right.svg") 50% 50% no-repeat;}
.slider-sw .swiper{padding-bottom: 56px;}
.slider-sw .swiper-button-prev{transform: rotate(180deg); left: 360px}



.slider-sw .swiper-button-disabled{opacity: 0.4!important}
.swiper-button-prev:hover,.swiper-button-next:hover{opacity: 1!important;}


.swiper-button-prev:after,.swiper-button-next:after{display: none;}




.slider-sw .swiper-pagination{bottom: 14px!important; display: flex; align-items: center; justify-content: center; padding: 0; margin: 0; width: 160px!important; top: 100%!important; margin-top: -16px!important; left: calc(50% - 80px)!important; border-radius: 10px!important; background: #E2E8F0}
.slider-sw .swiper-pagination span{background: var(--blue);}
.slider-sw .swiper-pagination-bullet{width: 20px; height: 3px; border-radius: 30px; background: rgba(255, 255, 255, 0.7); transition: all 0.2s; opacity: 1!important;}
.slider-sw .swiper-pagination-bullet.swiper-pagination-bullet-active{opacity: 1!important; background: #DDB36B}


.slider-sw .swiper-button-next{right: 365px;}
.slider-sw .swiper-button-prev{left: 365px}






section{position: relative; z-index: 2;}






.flex{display: flex; justify-content: space-between; flex-wrap: wrap;}
    .flex.flex__center{justify-content: center;}
    .flex.flex__start{justify-content: flex-start; gap: 16px;}
    .flex.flex__end{justify-content: flex-end;}




.grid{display: grid; grid-template-columns: repeat(1,1fr); gap: 24px;}
    .grid.grid-2{grid-template-columns: repeat(2,1fr);}
    .grid.grid-3{grid-template-columns: repeat(3,1fr);}
    .grid.grid-4{grid-template-columns: repeat(4,1fr);}
    .grid.grid-5{grid-template-columns: repeat(5,1fr);}
    .grid.grid-6{grid-template-columns: repeat(6,1fr);}
    .grid.grid-7{grid-template-columns: repeat(7,1fr);}










section{box-sizing: border-box; position: relative;}



.form input[type="text"],.form input[type="email"],.form input[type="tel"],.form input[type="password"],.form textarea,.form select{
    width: 100%; height: 54px; padding: 0 16px; border-radius: var(--radius); border: 1px solid #E2E8F0; font-size: 16px; margin-bottom: 32px;
}
.form label{display: block; margin-bottom: 16px; text-align: left;}
.form input:focus{border-color: var(--black)!important;}
.form .btn{width: 100%;}
.form textarea{height: 120px; resize: none; padding: 16px;}
.form select{background: #fff url("../img/icon-arrow-down.svg") calc(100% - 16px) 50% no-repeat;}




::placeholder{color: #C7C7C7;}


.label{line-height: 25px;font-size: 16px;font-weight: 600;}



label.userfile{transition: all 0.2s; cursor: pointer; display: flex; align-items: center; justify-content: flex-start; padding-left: 70px; box-sizing: border-box; width: 155px; border-radius: 10px; border: 1px solid #F3F3F3; background: #F3F3F3 url("../img/icon_file.svg") 43px 50% no-repeat; color: var(--red); line-height: 45px;}
    label.userfile:hover{border-color: var(--red);}





label.user__file{display: flex; align-items: center; justify-content: center; flex-wrap: wrap; box-sizing: border-box; cursor: pointer; transition: all 0.2s; height: 180px; text-align: center; border: 1.5px dashed #E6E6E6; border-radius: 12px;}
    label.user__file:hover{border-color: var(--black); background: var(--white);}
    label.user__file span{display: block; margin-top: 5px; color: var(--blackGrey); font-size: 13px; font-weight: 500;}


input[type="checkbox"],input[type="radio"]{display:none;}


label.checkbox{display: block; position: relative; padding: 0px 0 0px 37px; box-sizing: border-box; font-size: 15px; cursor: pointer; line-height: 20px; margin-bottom: 35px; text-align: left;}
label.checkbox a{color: var(--red); border-bottom: 1px solid transparent;}
label.checkbox a:hover{border-color: var(--red);}
label.checkbox span:after{position: absolute; width: 24px; height: 24px; background: url("../img/check.svg") 0% 0 no-repeat; top: calc(50% - 12px); left: -32px; content: ''}
label.checkbox span{position: relative;}
label.checkbox input:checked + span:after{background: url("../img/checkh.svg") 0% 0 no-repeat; background-size: 100% 100%;}






button{background: transparent;}



.clearfix{clear: both;}
.center{display: inline-block; width: 100%; text-align: center;}


a,svg,svg path,rect{text-decoration: none; transition: all 0.2s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0); cursor: pointer;}
	a:hover{transition: all 0.2s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
a:focus{outline: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}

svg,svg path,rect{transition: all 0.2s ease-out;}

img{display: block;-webkit-tap-highlight-color: rgba(0, 0, 0, 0); max-width: 100%; height: auto; transition: all 0.2s ease-out; object-fit: cover;}
div{-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}



.btn,.btn:after{font-family: var(--Manrope); display: flex; align-items: center; justify-content: center; cursor: pointer; position: relative; text-align: center; cursor: pointer; padding: 0; border: none; transition: all 0.2s ease-out; box-sizing: border-box;-webkit-tap-highlight-color: rgba(0, 0, 0, 0); outline: none;}
	.btn:hover{transition: all 0.2s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}



.btn-blue{height: 54px; padding: 0 24px; color: #fff; background: var(--blue); font-size: 16px; border-radius: var(--radius);}
    .btn-blue:hover{background: var(--blueH); box-shadow: 0px 4px 10px rgba(56, 189, 248, 0.3);}



.btn-grey{height: 54px; padding: 0 24px; color: var(--TextP); border: 2px solid #E2E8F0; background: var(--sBG); font-size: 16px; border-radius: var(--radius); font-weight: 600}
    .btn-grey:hover{border-color: var(--blue); border-width: 2px}



.btn-more{justify-content: flex-start; gap: 16px; font-size: 16px; color: var(--blue); border-bottom: 1px solid transparent; display: inline-block;}
    .btn-more svg{width: 20px; height: 20px; position: relative; top: 5px; margin-left: 5px}
    .btn-more:hover{border-color: var(--blue);}



.btn-instagram{width: 32px; height: 32px; color: var(--blue);}
    .btn-instagram svg{width: 32px; height: 32px;}
    .btn-instagram:hover{color: var(--blueH);}



.btn-white{height: 54px; padding: 0 24px; font-weight: 600; color: var(--TextP); background: #fff; font-size: 16px; border-radius: var(--radius);}
    .btn-white:hover{color: var(--blue); box-shadow: 0px 4px 10px rgba(56, 189, 248, 0.3);}



input,textarea,select,button{-webkit-appearance: none; box-sizing: border-box; font-family: var(--Manrope);}


.box__modal{width: 600px; color: var(--black); font-family: var(--Montserrat); max-width: calc(100% - 32px); overflow: hidden; box-sizing: border-box; text-align: center; padding: 50px 32px 32px!important; display: none; background: #fff; border-radius: 8px; text-align: center;}
    .box__modal .bt{font-size: 32px; margin-bottom: 20px; text-align: center;}

.compensate-for-scrollbar{margin: 0!important}

.fancybox-close-small{top: 15px!important; right: 15px!important; background: url("../img/close.svg") 50% 50% no-repeat!important; transition: all 0.2s; width: 20px; height: 20px;}
    .fancybox-close-small:hover{transform: rotate(90deg);}
    .fancybox-close-small:after{display: none!important;}

.fancybox-is-open .fancybox-bg{opacity: 1; background: rgba(32, 32, 32, 0.65);}


.btn-blue{gap: 10px;}

#team .btn{width: calc(100%/3 - 24px)}

.kids-lead-flash {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99999;
	padding: 14px 16px;
	text-align: center;
	background: #2d3748;
	color: #fff;
	font-size: 15px;
	font-family: var(--Montserrat, system-ui, sans-serif);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.kids-lead-flash--err {
	background: #742a2a;
}

.box__modal .kids-lead-modal-feedback {
	display: none;
	margin-top: 16px;
	padding: 12px 14px;
	border-radius: 8px;
	font-size: 15px;
	line-height: 1.45;
	text-align: center;
	font-family: var(--Montserrat, system-ui, sans-serif);
}

.box__modal .kids-lead-modal-feedback.is-visible {
	display: block;
}

.box__modal .kids-lead-modal-feedback--ok {
	background: #e6fffa;
	color: #234e52;
	border: 1px solid #81e6d9;
}

.box__modal .kids-lead-modal-feedback--err {
	background: #fff5f5;
	color: #742a2a;
	border: 1px solid #feb2b2;
}

/* Повідомлення під сторінковою формою (ті ж стилі, що в модалці) */
.form .kids-lead-page-feedback {
	display: none;
	margin-top: 16px;
	padding: 12px 14px;
	border-radius: 8px;
	font-size: 15px;
	line-height: 1.45;
	text-align: center;
	font-family: var(--Montserrat, system-ui, sans-serif);
}

.form .kids-lead-page-feedback.is-visible {
	display: block;
}

.form .kids-lead-page-feedback--ok {
	background: #e6fffa;
	color: #234e52;
	border: 1px solid #81e6d9;
}

.form .kids-lead-page-feedback--err {
	background: #fff5f5;
	color: #742a2a;
	border: 1px solid #feb2b2;
}

