:root {
	--black: #333;
	--white: #fff;
	--violet-dark: #5e447f;
	--violet-light: #cbc3ec;
	--violet-dop: #735c90;
	--violet-accent-text: #9570cf;
	--bg: #f6f6f6;
	--gray-bg: #ececec;
	--dop-text: #7c7685;
	--gray-light: #b3b3b3;
	--stroke-bg: #e1e1e1;
	--stroke-gray-bg: #dadada;
    --font-family: "Manrope", sans-serif;
    --tr_time: .2s;
    --header_top_height: 40px;
}

@media (min-width: 1600px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1520px;
    }
}
@media (max-width: 575px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
       padding-left: 10px;
       padding-right: 10px;
    }
}

.default_btn{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 125%;
    color: var(--white);
    border: 1px solid var(--violet-dark); ;
    border-radius: 60px;
    background: var(--violet-dark);
    max-width: 236px;
    width: 100%;
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    
}
.twice-bg{
    background: var(--gray-bg);
    border-radius: 60px;
    padding: 90px 0;
}

.section{
    margin-bottom: 90px;
}
.section-title{
    font-weight: 700;
    font-size: 54px;
    color: var(--violet-dark);
    margin-bottom: 45px;
}
.section-title--with-sub{
    margin-bottom: 17px;
}
.section-subtitle{
    font-weight: 400;
    font-size: 20px;
    line-height: 110%;
    color: var(--black);
    margin-bottom: 40px;
}
.transparent_btn{
    background: transparent;
    border-color: rgba(255, 255, 255, 0.3);
}
/* .header__body{
    position: absolute;
    top: 40px;
    left: 0;
    width: 100%;
} */
 header{
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 2;
 }
.header__top{
    padding: 10px 0;
    background: var(--violet-dark);
    min-height: var(--header_top_height);
}
.header__top-content{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}
.header__top-content p,.header__top-content a{
    font-weight: 400;
    font-size: 15px;
    line-height: 125%;
    color: var(--white);
}
.header__top-contacts{
    display: flex;
    align-items: center;
    gap: 40px;
}
.header__top-contacts p, .header__top-contacts a{
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 7px;
}
.header__top-contacts a span{
    transition: all var(--tr_time) ease;
    border-bottom: 1px solid transparent;
}
.header__top-contacts a:hover span{
    border-color: var(--white);
}
.header__top-logo{
    display: none;
}
.header__body{
    margin-top: 20px;
}
.header__body-btns{
    display: flex;
    align-items: center;
    gap: 20px ;
}
.header__body-logo{
    text-align: center;
    margin-top: -20px;
}
.header__body-logo img{
    max-width: 100%;
    height: auto;
}
.consultation_btn{
    max-width: 300px;
}
.header__body-messangers{
    display: flex;
    align-items: center;
    gap: 12px;
}
.header__body-messangers__list{
    display: flex;
    align-items: center;
    gap: 12px;
}
.header__body-messangers__list a{
    width: 52px;
    height: 52px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-button--navigation{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.swiper-button--navigation--absolute{
    position: absolute;
    right: 0;
    top: -97px;
}
.navigation-btn svg circle{
    fill: transparent;
    transition: all var(--tr_time) ease;
}
.navigation-btn:hover svg circle{
   fill: var(--violet-dark);
}
.navigation-btn svg path{
   
    transition: all var(--tr_time) ease;
}
.navigation-btn:hover svg path{
   stroke: var(--white);
}
.swiper-button--navigation--full{
        position: absolute;
        inset: 0 0 0 -28px;
        max-height: max-content;
        justify-content: space-between;
        margin: auto;
        z-index: 2;
        width: calc(100% + 56px);
}
.swiper-button--navigation--full svg circle{
    fill:#ECECEC;
}
.swiper-button--navigation--map{
    margin-top: 20px;
    justify-content: flex-start;
}
.title-tag{
    font-weight: 400;
    font-size: 20px;
    line-height: 117%;
    text-align: center;
    color: rgba(124, 118, 133, 0.77);
    margin-bottom: 20px;
}
.tag-block-title{
    font-weight: 700;
    font-size: 40px;
    line-height: 117%;
    text-align: center;
    color: var(--violet-dark);
    max-width: 850px;
    margin: 0 auto  40px;
}
.tag-block-title span{
    color: var(--violet-accent-text);
}
.show-more_btn{
    margin: 30px  auto 0;
}

@media(max-width:1599px){
    .consultation_btn{
        font-size: 14px;
        padding: 16px 8px;
    }
}
@media(max-width:1399px){
    .consultation_btn{
        display: none;
    }
    .header__body-messangers{
        justify-content: flex-end;
    }
}
@media(max-width:991px){
    :root {
        --header_top_height: 110px;
    }
    /* .header__top-content{
        gap: 10px;
        flex-direction: column;
    } */
    .services_btn{
        display: none;
    }
    .header__top-content{
        display: none;
    }
    .header__top-logo{
        display: block;
        text-align: center;
    }
    .header__top-logo img{
        max-width: 100%;
        height: auto;
    }
    .consultation_btn{
        display: flex;
    }
}


@media(max-width:767px){
    .consultation_btn{
        display: none;
    }
    .swiper-button--navigation--absolute{
        position: static;
        margin-top: 40px;
    }
    .section-title{
        font-size: 50px;
    }
}
@media(max-width:575px){
    .header__body-messangers__list{
        gap: 10px;
    }
    .default_btn{
        min-width: 154px;
    }
    .section-title{
        font-size: 32px;
    }
    .section-subtitle{
        font-size: 16px;
    }
    .section{
        margin-bottom: 60px;
    }
    .twice-bg{
        border-radius: 30px;
        padding: 45px 0;
    }
    .swiper-button--navigation--full{
        position: static;
        width: 100%;
        justify-content: center;
        margin-top: 20px;
    }
    .tag-block-title{
        font-size: 25px;
    }
    .title-tag{
        font-size: 16px;
    }
}