/*DESKTOP*/
@media screen and (min-width: 1024px){
    .coach-top-block{
        gap: 40px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .coach-top .blocks{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 5px 10px;
    }
    .coach-top .blocks .item{
        width: calc(50% - 5px);
    }
}
/*DESKTOP*/

body{
    font-family: 'Onest', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 118%;
    color: #000000;
}

h1, .h1{
    font-family: 'Onest', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 38px;
    line-height: 38px;
    color: #000000;
    margin: 0 0 30px;
}
h2, .h2{
    font-family: 'Onest', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 28px;
    line-height: 31px;
    color: #000000;
    margin: 0 0 33px 0;
    text-align: left;
}
h3, .h3{
    font-family: 'Onest', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 26px;
    color: #000;
    margin: 0 0 30px 0;
    text-align: left;
}
h4, .h4{
    font-family: 'Onest', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 22px;
    text-align: center;
    color: #000000;
    margin: 0 0 15px 0;
}
.white{
    color: #fff;
}
.button, form [type="submit"].wpcf7-form-control{
    background: #B6000D;
    border-color: #B6000D;
    font-family: 'Onest', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 20px;
    line-height: 20px;
    text-align: center;
    color: #FFFFFF;
    max-width: fit-content;
    width: auto;
    min-height: 78px;
    box-shadow: 0 4px 2.5px rgba(0, 0, 0, 0.11);
}
.button:hover, form [type="submit"].wpcf7-form-control:hover{
    background: #c2101e;
    border-color: #c2101e;
}

.top-line, .coach-top{
    background: #ECF5F7;
}
.coach-top{
    padding-bottom: 44px;
}
.menu-button{
    width: 40px;
    height: 40px;
    background: url("images/coach-menu.svg") no-repeat center;
}
.menu-button span{
    display: none;
}

.coach-top .divider-line{
    height: 1px;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(7, 117, 122, 0.59) 50%, rgba(0, 0, 0, 0) 97.6%);
    margin: 5px auto 14px;
}
.coach-program{
    font-weight: 400;
    font-size: 16px;
    line-height: 17px;
    min-height: 75px;
    background: #FFFFFF;
    border-radius: 16px;
    position: relative;
    padding: 10px 20px 10px 76px;
    display: flex;
    align-items: center;
    margin: 0 0 15px;
}
.coach-program:before{
    position: absolute;
    left: 15px;
    top: 0;
    bottom: 0;
    margin: auto;
    display: block;
    content: '';
    width: 33px;
    height: 33px;
    background: url("images/coach-ic.svg") no-repeat center;
    border-radius: 50%;
}
.coach-program:after{
    position: absolute;
    right: -16px;
    bottom: -69px;
    display: block;
    content: url("images/hit2.svg");
}
.coach-top .h1{
    margin: 0 0 10px;
}
.coach-top .sub-title{
    font-weight: 500;
    font-size: 26px;
    line-height: 28px;
    color: #07757A;
    margin: 0 0 10px;
}
.coach-top .bold-p{
    font-weight: 600;
    font-size: 18px;
    line-height: 18px;
    margin: 0 0 16px;
}
.coach-top .p{
    margin: 0 0 19px;
}
.coach-top .button{
    margin: 0 auto;
}
.blocks .item{
    background: #FFFFFF;
    border: 1px solid #C6DBDD;
    border-radius: 12px;
    padding: 12px;
    margin: 0 0 5px;
    font-weight: 400;
    font-size: 17px;
    line-height: 20px;
    text-align: center;
}
.coach-top .ser-title{
    font-weight: 400;
    font-size: 20px;
    line-height: 26px;
    margin: 30px 0 25px;
}
.coach-top .ser-items{
    gap: 24px;
}
.coach-resume{
    padding: 50px 0 48px;
}
.coach-resume .h2{
    font-size: 32px;
    line-height: 38px;
}
.coach-resume .h2 span{
    color: #07757A;
}
.coach-resume .button{
    margin: 0 auto;
}
.resume{
    background: #F5F5F5;
    border: 1.5px solid #AEAEAE;
    border-radius: 14px;
    padding: 20px 14px 31px 14px;
    margin: 0 0 24px;
    font-weight: 400;
    font-size: 16px;
    line-height: 27px;
}
.resume .r-title{
    position: relative;
    padding: 0 0 0 166px;
    margin: 0 0 33px;
}
.resume .r-title img{
    position: absolute;
    left: -32px;
    top: -32px;
}
.resume .r-title .p1{
    font-weight: 700;
    font-size: 22px;
    line-height: 27px;
    margin: 0 0 20px;
}
.resume .r-title .p2{
    margin: 0;
    font-weight: 400;
    font-size: 16px;
    line-height: 27px;
}
.resume .r-title .p2 span{
    display: inline-block;
    font-weight: 700;
    font-size: 22px;
    line-height: 27px;
    color: #1E8185;
}
.resume .txt{
    margin: 0 0 27px;
}
.resume ul{
    padding: 0;
    margin: 0;
    list-style: none;
    font-weight: 400;
    font-size: 16px;
    line-height: 21px;
    color: #FFFFFF;
}
.resume ul li{
    position: relative;
    padding: 10px 15px 10px 60px;
    margin: 0 0 12px;
    background: #5F9C9F url(images/res-li.svg) no-repeat left 15px center;
    border: 1.5px solid #AEAEAE;
    border-radius: 14px;
}
.resume ul li:last-child{
    margin: 0;
}
.resume .list-title{
    position: relative;
    padding: 0 60px 0 0;
    margin: 0 0 41px;
}
.resume .list-title:before{
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 50px;
    height: 65px;
    background: url("images/res-pic.png") no-repeat center;
    content: '';
}
.resume .txt2{
    margin: 30px 0 0;
    font-size: 18px;
    line-height: 20px;
}
.coach-structure{
    margin-top: 30px;
    padding-top: 35px;
    padding-bottom: 59px;
    background: #ECF5F7;
    border-radius: 18px;
}
.coach-structure .h2{
    font-size: 32px;
}
.coach-structure .h2 span{
    color: #07757A;
}
.structure-item{
    border-bottom: 1px solid #07757A;
    padding: 21px 20px;
}
.structure-item .structure-title{
    margin: 0;
    font-weight: 600;
    font-size: 18px;
    line-height: 20px;
    cursor: pointer;
    position: relative;
    padding: 0 30px 0 0;
}
.structure-item .structure-title span{
    color: #07757A;
}
.structure-item .structure-title:before{
    position: absolute;
    display: block;
    content: '';
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    background: url("images/plus-2.svg") no-repeat center;
    width: 21px;
    height: 21px;
}
.structure-item.active .structure-title:before{
    background: url("images/close-white.svg") no-repeat center;
}
.structure-item.active{
    color: #fff;
    background: #07757A;
    border-radius: 16px 16px 0 0;
}
.structure-item.active .structure-title, .structure-item.active .structure-title span{
    color: #fff;
}
.structure-item .si-lines{
    margin: 18px 0 0 0;
    font-weight: 400;
    font-size: 16px;
    line-height: 18px;
}
.structure-item .si-lines p{
    margin: 0;
    padding: 8px 0 9px;
    border-top: 1px solid #fff;
}
.structure-item .structure-inner{
    max-height: 0;
    transition: height 0.5s ease-in-out;
    overflow: hidden;
}
.structure-item.active .structure-inner{
    max-height: fit-content;
}
.structure-item.active:not(:first-child){
    margin-top: 20px;
}
.coach-case .slide .author{
    font-size: 30px;
    line-height: 30px;
    margin: 0 0 10px;
}
.coach-case .p2{
    text-align: center;
    margin: 0 0 20px;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #07757A;
}
.coach-case .slide{
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
    margin: 16px;
}
.coach-case .slide .p1{
    font-weight: 700;
    font-size: 20px;
    line-height: 20px;
    margin: 0 0 20px;
}
.coach-case .slide .p1 span{
    color: #07757A;
}
.slider-dots .slick-dots{
    padding: 0;
    margin: 20px auto 0;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.slider-dots .slick-dots li{
    padding: 0;
    margin: 0;
}
.slider-dots .slick-dots button{
    display: block;
    padding: 0;
    margin: 0;
    position: relative;
    -webkit-appearance: none;
    box-shadow: none;
    outline: none;
    border: none;
    font-size: 0;
    line-height: 0;
    background: #33313E;
    width: 8px;
    height: 8px;
    z-index: 1;
    transition: all .3s linear;
    cursor: pointer;
    border-radius: 8px;
}
.slider-dots .slick-dots .slick-active button{
    width: 36px;
    height: 8px;
    background: #07757A;
}
.team-slider{
    margin: 0 -15px;
}
.team-slider .slick-track,  .reviews-slider2 .slick-track{
    display: flex;
}
.reviews-slider2 .slick-track .slide{
    height: auto;
}
.t-slide{
    border: 1px solid #27858C;
    border-radius: 14px;
    overflow: hidden;
    margin: 0 15px 2px;
    height: auto;
}
.t-slide .image{
    display: flex;
    align-items: flex-end;
    justify-content: center;
    height: 330px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 140, 147, 0.48) 82.21%);
}
.t-slide .image img{
    height: auto;
    max-width: 100%;
}
.t-slide .text{
    padding: 22px 14px;
}
.t-slide .h3{
    margin: 0 0 19px;
    text-align: center;
    text-transform: uppercase;
}
.t-slide ul{
    padding: 0;
    margin: 0;
    list-style: none;
}
.t-slide ul li{
    padding: 0 0 0 23px;
    margin: 0 0 20px;
    position: relative;
}
.t-slide ul li:last-child{
    margin: 0;
}
.t-slide ul li:before{
    position: absolute;
    left: 0;
    top: 2px;
    display: block;
    content: '';
    background: url("images/t-li.svg") no-repeat center;
    width: 11px;
    height: 11px;
}
.coach-form{
    padding-top: 42px;
    padding-bottom: 30px;
}
.coach-form .h2{
    font-size: 38px;
    line-height: 42px;
    margin: 0 0 15px;
}
.coach-form .p1{
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #07757A;
    margin: 0 0 34px;
}
.cf-wrap{
    background: #FFFFFF;
    box-shadow: 0 4px 20.1px rgba(0, 0, 0, 0.39);
    border-radius: 18px;
    padding: 0 10px 20px;
}
.cf-wrap.flex{
    display: flex;
    flex-direction: row-reverse;
    gap: 15px;
    align-items: center;
}
.cf-wrap.flex > .text_center{
    width: 500px;
}
.cf-wrap.flex .cf-fr{
    padding: 15px 5px 0;
}
.cf-wrap.flex .cf-fr .button{
    margin: 0 auto;
}
.cf-wrap img{
    max-width: 280px;
    height: auto;
}
.coach-form .notice{
    font-weight: 400;
    font-size: 13px;
    line-height: 16px;
    color: #717171;
    margin: 30px 0 0;
}
.coach-form .notice a{
    text-decoration: underline;
    color: inherit;
}
.coach-form .notice a:hover{
    text-decoration: none;
}
form [type="text"].wpcf7-form-control, form [type="tel"].wpcf7-form-control, form [type="email"].wpcf7-form-control{
    min-height: 53px;
    background: #FFFFFF;
    border: 1px solid #07757A;
    border-radius: 47px;
}
.cf-fr{
    padding: 0 5px;
}
@media screen and (max-width: 390px){
    .coach-img1{
        max-width: 100%;
    }
}
.popup2 .inner{
    background: #FFFFFF;
    box-shadow: 0 4px 20.1px rgba(0, 0, 0, 0.39);
    border-radius: 18px;
}
.popup2 .coach-form{
    padding: 0;
}
.popup2 .cf-wrap {
    background: none;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
}
.popup .inner{
    padding: 30px;
}
.popup2 .cf-fr{
    padding: 0;
}
.popup2 .coach-form .h2{
    font-size: 20px;
    line-height: 24px;
    text-align: center;
    margin: 0 0 10px;
}
.popup2 .coach-form .p1{
    text-align: center;
    font-size: 16px;
    line-height: 22px;
    margin: 0;
}
.popup2 form [type="text"].wpcf7-form-control, .popup2 form [type="tel"].wpcf7-form-control, .popup2 form [type="email"].wpcf7-form-control{
    min-height: 40px;
}
.popup2 form [type="submit"].wpcf7-form-control{
    margin: 5px auto 0;
    font-size: 16px;
    min-height: 50px;
}
.popup2 .coach-form .notice{
    margin: 12px 0 0;
}
.slider-dots .slick-arrow{
    width: 30px;
    height: 30px;
    background-size: 30px;
    top: 50%;
}
.slider-dots .slick-arrow.slick-next{
    right: -40px;
}
.slider-dots .slick-arrow.slick-prev{
    left: -40px;
}
@media screen and (max-width: 1150px){
    .slider-dots .slick-arrow.slick-next{
        right: 0;
    }
    .slider-dots .slick-arrow.slick-prev{
        left: 0;
    }
}
@media screen and (max-width: 767px){
    .cf-wrap.flex{
        display: block;
    }
    .cf-wrap.flex > .text_center{
        width: auto;
    }
    .cf-wrap.flex .cf-fr{
        padding: 0 5px;
    }
}