@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;600;700');


h1, h2, h3, h4, h5{
    font-family: 'Raleway', sans-serif;
    font-style: normal;
    font-weight: 400;
    line-height: 59px;
}
p{
    font-family: 'Raleway', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px; 
}
h2{
    color: #282C71;
    font-size: 30px;
    font-style: normal;
    font-weight: 400;
    line-height: 59px;
    letter-spacing: 0em;
    margin-bottom: 20px;
}
.container{
    margin: 30px auto 30px;
    position: relative;
}
.swiper-wrapper{
    padding: 0 0 50px 0;
}



button{
   background: none;
   border: none;
   font-family: 'Raleway', sans-serif;
}
a{
   font-family: 'Raleway', sans-serif;
}
button:active,button:focus,button:focus-visible,button:hover{
   outline: none;
   box-shadow: none
}
a:hover{
   text-decoration: none;
}
.oh_top{
   overflow: hidden;
}
.container-fluid{
   position: relative;
}
.container .row > div{
   padding: 0;
}
.menu_block.active .logo{
   position: relative;
   padding-bottom: 3px;
   border-bottom: 1px solid #282C71;
}
.menu_block.active .logo img{
   margin: 0 auto;
}

header .container{
   margin: 0 auto 10px;
}
.logo{
   padding: 0;
}
.logo img{
   width: 100%;
   height: auto;
   max-width: 127px;
   display: block;
}
.button_active_body{
   padding: 0;
   display: flex;
   justify-content: flex-end;
   align-items: center;
}
.button_active_body .button_active{
   width: 40px;
   height: 40px;
   position: relative;
}
.button_active_body .button_active span{
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translateX(-50%) translateY(-50%);
   width: 20px;
   height: 2px;
   background: #133355;
   transition: all 0.5s;
}
.button_active_body .button_active span::before, .button_active_body .button_active span:after{
   position: absolute;
   content: "";
   display: block;
   left: 50%;
   transform: translateX(-50%);
   width: 20px;
   height: 2px;
   background: #133355;
   transition: all 0.5s;
}
.button_active_body .button_active span::before{
   top: -6px;
}
.button_active_body .button_active span::after{
   top: 6px;
}
.menu_block{
   position: fixed;
   top:  0%;
   left: -100%;
   transition: all 0.5s;
   z-index: 10;
   height: 100%;
   width: 100vw;
   padding:0 15px 0%;
   background: rgb(255, 255, 255);
   /* background: linear-gradient(180deg, rgb(255, 255, 255) 88%, rgba(0, 0, 0, 0.391) 42%); */
}
.menu_block.active{
   left: 0;
   overflow: auto;
   padding: 0 15px !important;
}
.logo .close_button{
   position: absolute;
   top: 15px;
   right: 0px;
   width: 17px;
   padding: 0;
}


.menu_main{
   padding: 0;
}
.menu_main ul{
   padding: 10px 0 ;
}
.menu_main ul li{
   padding: 0;
}
.menu_main ul li a{
   font-style: normal;
   font-weight: 500;
   font-size: 14px;
   line-height: 20px;
   color: #333333;
   padding: 12px 0 ;
}
.lang_menu{
   padding: 0;
   border-bottom: 1px solid #282C71;
   border-top: 1px solid #282C71;
}
.lang_menu ul{
   padding: 0;
   margin: 10px 0;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-wrap: wrap;
}
.lang_menu ul li{
   display: flex;
   border-right: 1px solid #133355;
}
.lang_menu ul li.current-lang a{
   color: #B71F27
}
.lang_menu ul li:last-child{
   border-right: none;
}
.lang_menu ul a{
   display: block;
   padding: 0 20px;
   color: #04041D;
   font-style: normal;
   font-weight: normal;
   font-size: 19px;
   line-height: 22px;
}
.address_link{
   padding: 0;
   margin: 20px 0 0;
}
.address_link h3{
   font-style: normal;
   font-weight: normal;
   font-size: 14px;
   line-height: 20px;
   margin: 12px 0;
   display: block;
   font-feature-settings: 'pnum' on, 'lnum' on;
}
.address_link h3 a{
   display: block;
   color: #333333;
   white-space: nowrap;
}
.address_link h3 a svg{
   margin-right: 14px;
}
.telephone{
   padding: 0;
}
.telephone p{
   font-style: normal;
   font-weight: normal;
   font-size: 14px;
   line-height: 20px;
   margin: 12px 0;
   display: block;
   font-feature-settings: 'pnum' on, 'lnum' on;
}
.telephone p a{
   display: block;
   color: #333333;
}
.telephone p a svg{
   margin-right: 14px;
}
.network{
   padding: 0;
   margin: 20px 0 100px;
}
.network ul{
   padding: 0;
   display: flex;
   flex-wrap: wrap;

}
.network ul li{
   display: block;
   margin-right: 25px;
}
footer{
   border-top: 2px solid #282C71;
   box-sizing: border-box;
}
.logo_footer img{
   margin: 0 auto;
}
.footer ul{
   padding: 0;
}
.footer ul li{
   display: block;
}
.footer ul li a{
   color: #333333;
   font-style: normal;
   font-weight: normal;
   font-size: 16px;
   line-height: 19px;
   padding: 15px 0;
   display: block;
}
footer .network{
   margin: 20px 0;
}


@media(min-width: 768px){
   .logo img{
      max-width: 170px;
   }
   .logo_footer img{
      margin: 0 auto 0 0;
   }
   .footer ul{
      display: flex;
      flex-wrap: wrap;
   }
   .footer ul li{
      flex: 0 0 50%;
   }
   footer .network{
      margin: 0;
   }
   .footer ul li a{
      padding: 15px 0 15px 20px;
   }
}
@media(min-width: 992px){
   header{
      background: linear-gradient(180deg, rgb(222, 228, 233) 35%, rgb(246, 246, 246) 27%);
   }
   header .container {
      margin: 0 auto;
   }
   .menu_block{
      position: static;
      background: transparent;
      height: auto;
   }
   .menu_main, .lang_menu, .telephone{
      padding: 0 15px;
      margin: 0;
   }
   .address_link{
      margin: 0;
      display: flex;
      flex-wrap: wrap;
   }
   .address_link h3{
      font-size: 12px;
      margin: 13px 21px 13px 0;
   }
   .address_link h3 a svg{
      margin-right: 0;
   }
   .button_blue{
      background: #282C71;
      border-radius: 50px;
      font-style: normal;
      font-weight: 500;
      font-size: 14px;
      line-height: 20px;
      color: #FFFFFF;
      padding: 9px 0;
      display: block;
      text-align: center;
      width: 100%;
      margin: 6px 0;
   }
   .telephone{
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
   }
   .telephone p a{
      font-size: 12px;
   }
   .telephone p a svg{
      margin: 0;
   }
   .menu_main{
      display: flex;
      align-items: center;
      flex-wrap: wrap;
   }
   .menu_main ul{
      width: 100%;
      list-style: none;
      flex-wrap: wrap;
      justify-content: space-evenly;
      align-items: center;
      flex-direction: row;
   }
   .button_coll_red{
      flex-wrap: wrap;
      align-items: center;
   }
   .button_red{
      text-transform: uppercase;
      background: #B71F27;
      border-radius: 50px;
      display: block;
      width: 100%;
      color: #fff;
      padding: 9px 0;
      font-weight: bold;
      font-size: 16px;
      line-height: 20px;
      text-align: center;
      max-height: 38px;
   }
   .menu_block.active .logo {
      border: none;
   }
   .lang_menu{
      border: none;
      display: flex;
      align-items: center;
   }
   .lang_menu ul {
      margin: 0;
   }
   .lang_menu ul a {
      padding: 0 9px;
      font-weight: 600;
      font-size: 16px;
      line-height: 19px;
   }

}
@media(min-width: 1200px){
   .address_link h3{
      font-size: 14px;
   }
   .telephone p a{
      font-size: 14px;
   }
   .address_link h3 a svg{
      margin-right: 10;
   }
   .telephone p a svg{
      margin-right: 10;
   }
   .lang_menu ul a {
      padding: 0 14px;
   }
}


.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
   flex-basis: 100%!important;
   flex-grow: 0;
}
.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:nth-child(2n) {
   margin-left: 0 !important;
}
.wp-block-columns{
   align-items: center;
}
#aboutAs .wp-block-column p{
   font-style: normal;
   font-weight: normal;
   font-size: 16px;
   line-height: 19px;
   margin-bottom: 15px;
}
.wp-block-columns .wp-block-image{
   margin-bottom: 40px;
}

@media(min-width: 768px){
   .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
      flex-basis: calc(50% - var(--wp--style--block-gap, 2em)/2)!important;
      flex-grow: 0;
  }
  #aboutAs .wp-block-column p{
      font-size: 14px;
      line-height: 15px;
  }
  .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:nth-child(2n) {
   margin-left: var(--wp--style--block-gap,2em) !important;
   }
   .wp-block-columns .wp-block-image{
      margin-bottom: 0px;
   }
}
@media(min-width: 992px){
   #aboutAs .wp-block-column p{
      font-size: 16px;
      line-height: 19px;
  }
}




.consult .wp-block-image{
   position: relative;
   z-index: 5;
}
.consult .wp-block-image::after{
   position: absolute;
   z-index: -2;
   content: "";
   display: block;
   top: 50%;
   left: 50%;
   width: 250px; height: 298px;
   background: url('./image/dog.svg') center center no-repeat;
   background-size: 250px 298px;
   transform: translateY(-50%) translateX(-50%);
}
@media(min-width: 576px){
   .programs:after,.programs:before, #aboutAs::after, #aboutAs::before, .our_advantages::before, .teachers::before, .teachers::after{
      position: absolute;
      content: "";
      display: block;
   }
   .programs:after{
      top: 70px;
      left: -120px;
      width: 156px; height: 282px;
      background: url('./image/css_sprites.png') -936px -10px;
   }
   .programs:before{
      top: 40%;
      right: 0;
      width: 85px; height: 334px;
      background: url('./image/css_sprites.png') -207px -528px;
   }
   #aboutAs::after{
      top: 20%;
      left: -40px;
      width: 103px; height: 125px;
      background: url('./image/css_sprites.png') -936px -312px;
   }
   #aboutAs::before{
      top: 50%;
      right: 0;
      width: 56px; height: 344px;
      background: url('./image/css_sprites.png') -740px -10px;
   }
   .our_advantages::before{
      top: 30%;
      left: -120px;
      width: 174px; height: 266px;
      background: url('./image/css_sprites.png') -402px -528px;
   }
   .teachers::after{
      top: 50%;
      right: 0;
      width: 67px; height: 342px;
      background: url('./image/css_sprites.png') -10px -528px;
   }
   .container .row > div{
      padding: 0 15px;
   }
   .consult .wp-block-image::after{
      width: 350px; height: 398px;
      background-size: 350px 398px;
   }
}
@media(min-width: 768px){
   .programs:after{
      left: -120px;
   }
   .programs:before{
      width: 75px;
   }
   #aboutAs::after{
      left: -70px;
      top: 50%;
      transform: translateY(-50%);
   }
   #aboutAs::before{
      width: 95px;
      top: 50%;
      transform: translateY(-50%);
   }

   .our_advantages::before{
      left: -90px;
   }
   .teachers::after{
      width: 107px;
   }
   .consult .wp-block-image::after{
      width: 289px;
      height: 265px;
      background-size: 289px 265px;
      left: -73px;
      transform: translateX(0) translateY(-50%);
   }
}
@media(min-width: 992px){
   .programs:after{
      left: -120px;
   }
   .programs:before{
      width: 75px;
   }
   .teachers::after{
      width: 107px;
   }

   .consult .wp-block-image::after{
      width: 389px;
      height: 365px;
      background-size: 389px 365px;
   }
}
@media(min-width: 1200px){
   .programs:after{
      left: -100px;
   }

   #aboutAs::after{
      left: -60px;
   }
   #aboutAs::before{
      width: 105px;
   }

   .our_advantages::before{
      left: -70px;
   }

   .consult .wp-block-image::after{
      left: -73px;
      width: 450px;
      height: 498px;
      background-size: 450px 498px;
   }

}
@media(min-width: 1300px){
   .programs:after{
      left: -55px;
   }
   .programs:before{
      width: 125px;
   }

   #aboutAs::after{
      left: 0px;
   }

   .our_advantages::before{
      left: -40px;
   }

   .teachers::after{
      width: 137px;
   }
}
@media(min-width: 1440px){
   .programs:after{
      left: 0;
   }
   .programs:before{
      width: 175px; 
   }

   #aboutAs::before{
      width: 176px;
   }

   .our_advantages::before{
      left: 0px;
   }

   .teachers::after{
      width: 177px;
   }
}



.fixed_block_network{
   position: fixed;
   bottom:15px;
   z-index: 10;
   right: 15px;
}
.fixed_block_network button{
   background: #B71F27;
   border-radius: 50%;
   width: 40px;
   height: 40px;
   margin: 0 0 20px;
   display: block;
   position: relative;
   padding: 0;
}
.fixed_block_network button svg{
   width: 19px;
   height: 19px;
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translateX(-50%) translateY(-50%);
}
.network_button svg{
   width: 35px !important;
   height: 35px !important;
}
.fixed_block_network .network_button{
   margin: 0;
   z-index: 10;
}
.fixed_block_network .network_button.active{
   background: #282C71;
}
.network_fixed{
   position: absolute;
   bottom: 0px;
   right: 0;
   margin: 0;
}
.network_fixed.active{
   display: flex !important;
   padding: 0;
}
.network_fixed li{
   position: absolute;
   top: -35px;
   right: 5px;
   display: block;
   background: #fff;
   border-radius: 50%;
   width: 30px;
   height: 30px;
   z-index: -5;
   transition: margin 0.8s;
}
.network_fixed.active li{
   position: relative;
   top: -4px;
   right: 0px;
   margin: 0 20px 0 0;
   z-index: 5;
}
.network_fixed.active li:last-child{
   margin: 0 60px 0 0;
}
.network_fixed li svg{
   width: 40px;
   height: 40px;
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translateX(-50%) translateY(-50%);
}

@media(min-width: 768px){
   .fixed_block_network button svg{
      width: 29px;
      height: 29px;
   }
   .network_button svg{
      width: 50px !important;
      height: 50px !important;
   }
   .fixed_block_network{
      bottom:70px;
      right: 50px;
   }
   .fixed_block_network button{
      margin: 0 0 50px;
      width: 50px;
      height: 50px;
   }
   .network_fixed.active li{
      margin: 0 50px 0 0;
   }
   .network_fixed.active li:last-child{
      margin: 0 100px 0 0;
   }
   .network_fixed li svg{
      width: 50px;
      height: 50px;
   }
   .network_fixed li{
      width: 40px;
      height: 40px;
      top: -45px;
   }
}
@media(min-width: 1200px){
   .fixed_block_network{
      bottom:70px;
      right: 70px;
   }
}

.modal_body{
   display: none;
}
.backgraund_black.active{
   position: fixed;
   z-index: 50;
   width: 100vw;
   height: 100%;
   background: rgba(0, 0, 0, 0.5);
   top: 0;
   left: 0;
}
.modal_body.active{
   display: block;
   width: 300px;
   background: #fff;
   position: fixed;
   top: 50%;
   left: 50%;
   transform: translateX(-50%) translateY(-50%);
   z-index: 55;
   border-radius: 25px;
   padding: 30px 30px;
}
.modal_body:after{
   position: absolute;
   content: "";
   width: 55px;
   height: 68px;
   display: block;
   top: 0;
   left: -10px;
   background: url('./image/Group.svg') center center no-repeat;
   background-size: 55px 68px;
}
.modal_body:before{
   position: absolute;
   content: "";
   width: 59px;
   height: 144px;
   display: block;
   right: -4px;
   bottom: -51px;
   background: url('./image/object5.svg') center center no-repeat;
   background-size: 59px 144px;
}
.modal_head{
   position: relative;
}
.modal_head .close_modal{
   position: absolute;
   top: -15px;
   right: -15px;
   z-index: 5;
}
.modal_content p{
   font-size: 15px;
}




@media(min-width: 576px){
   .modal_body.active{
      width: 530px;
      padding: 60px 60px;
   }
   .modal_body:after{
      left: -30px;
      width: 95px;
      height: 108px;
      background-size: 95px 108px;
   }
   .modal_body:before{
      width: 109px;
      height: 194px;
      right: -28px;
      bottom: -10px;
      background-size: 109px 194px;
   }
}


.wpcf7 form label input:focus, .wpcf7 form label input:focus-visible, .wpcf7 form label input:active, .wpcf7 form label input:hover{
   /* border: 1px solid #DADADA; */
   box-shadow: none;
   outline: none;
}
.wpcf7 form label{
   width: 100%;
   margin-bottom: 25px;
}
.wpcf7 form label span{
   display: block;
}
.wpcf7 form label input{
   box-shadow: none;
   border-radius: 0;
   width: 100%;
   border: none;
   border-bottom: 1px solid #6E727D;
   box-sizing: border-box;
   padding: 5px 0px;
   color: #1C1C1C;
   font-feature-settings: 'pnum' on, 'lnum' on;
   font-size: 16px;
   line-height: 19px;
}
.wpcf7 form label input::placeholder{
color: #A3A3A3;
}
.wpcf7 form.wpcf7-form.invalid input+span{
   padding-top: 8px;
}
.wpcf7 form.wpcf7-form.invalid input{
   border-bottom: 1px solid #F87676;
   
}
.wpcf7-form.invalid input::placeholder{
   color: #F87676;
}
.wpcf7 input[type='submit']{
   background: #B71F27;
   border-radius: 60px;
   max-width: 291px;
   margin: 0 auto;
   border: none !important;
   outline: none !important;
   display: block;
   text-align: center;
   width: 100%;
   font-style: normal;
   font-weight: normal;
   font-size: 20px;
   line-height: 23px;
   text-align: center;
   color: #FFFFFF;
   margin-top: 15px;
   transition: all 0.5s;
   padding: 10px 0;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output, .wpcf7 form.sent .wpcf7-response-output{
   padding: 0;
   margin: 0;
   border: none;
   outline: none;
}
/* .wpcf7 form.sent .wpcf7-response-output{
   display: none;
} */

.cxYZFl{
   display: none !important;
}
.jvOzNe > a{
   display: none !important;
}

.swiper_title{
    line-height: 45px;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0em;
    text-align: left;
    max-width: 719px;
    color: #FFFFFF;
}
.swiper_submit_button{
    text-decoration: none;
    text-transform: uppercase;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 400;
    line-height: 23px;
    letter-spacing: 0em;
    text-align: center;
    background-color: #B71F27;
    padding: 10px 0px;
    border-radius: 50px;
    display: block;
    max-width: 350px; 
}
.swiper_submit_button:hover{
    text-decoration: none;
    color: #FFFFFF;
}
.swiper_text{
    font-size: 18px;
    line-height: 23px;
    letter-spacing: 0em;
    text-align: left;
    color: #FFFFFF;
    margin: 15px 0 41px 0;
}
#swiper_slide .swiper-pagination-bullet{
    opacity: 1;
    background: #BBC9D0;
    position: absolute;
}
.swiper-pagination-bullet{
    width: 15px;
    height: 15px;
}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
    bottom: 0;
}
.swiper-pagination-bullet-active {
    background: #B71F27;
}
.image_specialists>p{
    font-size: 18px;
    text-align: center;
    line-height: 23px;
    color: #333333;
    box-shadow: 0px 2px 4px rgba(122, 122, 122, 0.2);
    margin-bottom: 30px;
    min-height: 80px;
    border-radius: 0 0 20px 20px;
    padding: 17px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.image_specialists>a>img{
    width: 100%;
    height: auto;
}
.benefit_wrapper{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    margin: 60px 0 0 0;
}
.benefit_wrapper > img{
    min-height: 140px;
}
.benefit_wrapper > h3{
    margin: 15px 0;
    line-height: 26px;
    font-style: normal;
    letter-spacing: 0em;
    text-align: center;
    color: #000; 
}
.benefit_wrapper > p{
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 19px;
    letter-spacing: 0em;
    text-align: center;
    color: #333333;
}
.teachers-wrap{
    margin: 0 auto;
}
.swiper-slide > img{
    width: 100%;
}
.swiper1_title{
    line-height: 30px;
    font-size: 26px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0em;
    text-align: center;
    color: #333333;
}
.swiper1_text{

    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 17px;
    letter-spacing: 0em;
    text-align: center;    
    color: #333333;
}
/*/////////////////////////////////////////////////////////////////////////////////////////////*/
.swiper-button-next, .swiper-button-prev{ 
    color: #333333;
    font-size: 16px;
    position: absolute;
    transform: translateY(-50%);
}
.swiper-button-next::after, .swiper-button-prev::after{
    font-size: 25px;
}
.swiper-button-next{ 
    right: -30px;
}
.swiper-button-prev{
    left: -30px;
}
/*/////////////////////////////////////////////////////////////////////////////////////////////*/
@media(min-width: 576px) {
   .image_specialists>p{
      min-height: 126px;
   }
}

@media(min-width: 768px) {
    .swiper_title{
        font-size: 54px;
        line-height: 59px;
    }
    .swiper_text{
        font-size: 20px;
    }
    .swiper_submit_button{
        font-size: 20px;
        font-weight: 700;
    }
    h2{
        font-size: 50px;
        font-weight: 400;
        margin-bottom: 40px;
    }
    .programs_text{
        font-weight: 600;
        font-size: 20px;
    }
    .image_specialists>p{
        font-size: 20px;
        min-height: 103px;
    }
    .benefit_wrapper > h3{
        display: flex;
        min-height: 60px;
        font-size: 23px;
        font-weight: bold;
        line-height: 28px;
        align-items: center;    
    }
    .benefit_wrapper > p{
        font-size: 15px;
    }
    .swiper1_title{
        line-height: 41px;
        font-size: 30px;
        font-weight: 500;
    }
    .swiper1_text{
        line-height: 19px;
        font-size: 16px; 
        font-weight: 400;
    }
}
@media(min-width: 1200px){
    .image_specialists>p{
        min-height: 80px;
    } 
}


/* Set the size of the div element that contains the map */
#map, #map_2 {
  height: 400px;
  /* The height is 400 pixels */
  width: 100%;
  /* The width is the width of the web page */
}