:root {
    --font-title: 'Palatino Linotype';
    --font-main: 'Manrope';

    --fs-h1: 55px;
    --fs-h2: 45px;
    --fs-h3: 40px;
    --fs-1: 14px;
    --fs-2: 16px;
    --fs-3: 18px;
    --fs-4: 30px;

    --color-bg: #F4F4F4;
    --color-text: #171717;
    --color-light: #C8DFFE;
    --color-grey: #EBEBEB;
    --color-1: #9D8EF3;
    --color-2: #63D69D;
    --color-3: #1D3748;
    --color-4: #99FFA7;
    --color-5: #FFA662;
    --color-6: #8BF199;

    --hover-1: #7968D8;

    --br-1: 5px;
    --br-2: 7px;
    --br-3: 15px;
    --br-4: 18px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-main);
    font-size: var(--fs-1);
    background: var(--color-bg);
    color: var(--color-text);
}

h1,h2,h3,h4,h5,h6 {
    font-family: var(--font-title);
}

h1 {    
    font-size: var(--fs-h1);
}
h2 {
    font-size: var(--fs-h2);
}
h3 {
    font-size: var(--fs-h3);
}
h3 {
    font-size: var(--fs-4);
}

img {
    display: block;
}
address {
    font-style: normal;
}
ul, ol {
    list-style: none;
}

a {
    cursor: pointer;
    color: var(--color-text);
    text-decoration: none;
}
button, input,select {
    font-family: var(--font-main);
    font-size: var(--fs-1);
}
.mainContent {
    padding-bottom: 20px;
}
.container {
    max-width: 1500px;
    padding: 0 30px;
    margin: 0 auto;
}

.bg-cloud {
    background: url(../img/pop-image-5.png) no-repeat ;
}

.bg-white {
    background: #fff;
}

.bg-0 {
    background: var(--hover-1);
    color: #ffffff;
}
.bg-1 {
    background: var(--color-1);
    color: #ffffff;
}

.bg-2 {
    background: var(--color-2);
}

.bg-3 {
    background: var(--color-3);
    color: #ffffff;
}

.bg-4 {
    background: var(--color-4);
}

.bg-5 {
    background: var(--color-5);
}
.bg-6 {
    background: linear-gradient(260.58deg, #D9EAFF 28.73%, #C8E1FF 97.05%);
}
.bg-7 {
    background: var(--color-6);
}
.bg-8  {
    background: linear-gradient(180deg, #A7CCFF 0%, #F1C3B2 100%);
}
.bg-9  {
    background: linear-gradient(180deg, #BFE4FF 0%, #FFFFFF 100%);
}
.bg-10 {
    background: linear-gradient(265.3deg, #D5F2FF 19.41%, #C5DEE9 111.61%);
}

.icon {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.btn {
    background: var(--color-1);
    color: #ffffff;
    border: 0;
    cursor: pointer;
}
.btnLight {
    color: var(--color-1);
    border: 1px solid ;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    border-radius: var(--br-1);
    font-weight: 600;
    padding: 9px 10px 9px 40px;
}
.btnLight:hover {
    background: var(--hover-1);
    color: #fff;
}
.btnLight .icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--color-1);
}
.btn.more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--br-1);
}
.btn.more .icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #fff;
}
.btn-main {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--br-1);
    height: 50px;
    min-width: 270px;
    position: relative;
}
.btn-main:hover {
    background: var(--hover-1);
}
.btn-main .icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    right: 10px;
}
.btn-main .icon  img {
    width: auto;
    margin: 0;
}
.topLineSection {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 30px;
}
.active {
    background: var(--color-5);
}

.banner {
    position: relative;
    border-radius: var(--br-3);
    padding: 70px 65px;
    min-height: 386px;
}
.banner .bannerTitle {
    max-width: 400px;
    font-weight: 400; 
    text-transform: uppercase;
}
.banner  .desc {
    margin: 20px 0 30px;
    max-width: 300px;
}
.banner .image {
    position: absolute;
    right: 0;
    bottom: 0;
}
.searchClose,
.searchBth {
    cursor: pointer;
} 
input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;

}
.searchPopup {
    transform: translate(0, -100%);
    transition: all .3s ease;
    width: 100%;
    max-width: 1440px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    border-radius: var(--br-3);
    background: #fff;
    height: 110px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.searchPopup.open {
    transform: translate(0, 0);
    transition: all .3s ease;
}
.searchPopup form {
    width: 100%;
    max-width: 744px;
}
.searchPopup label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    position: relative;
}
.searchPopup label button {
    background: transparent;
    border: 0;
    cursor: pointer;
    position: absolute;
    left: 20px;
}
.searchPopup label input {
    max-width: 700px;
    width: 100%;
    height: 70px;
    border: 1px solid #DBDBDB;
    border-radius: 500px;
    padding-left: 70px;
    font-size: 16px;
    color: #9d9d9d;
}
.searchPopup .delete {
    cursor: pointer;
}
#mainPopupMenu {
    background: #F4F4F4;
    display: block;
    padding:  30px 90px 30px 30px;
}
.mainPopupMenu_content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
#mainPopupMenu .logo {
    margin-bottom: 70px;
}
#mainPopupMenu .title {
    font-size: var(--fs-4);
    font-family: var(--font-title);
    text-transform: uppercase;
    margin-bottom: 30px;
}
.mainPopupMenu_content__col {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.mainPopupMenu_content__col ul {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
#mainPopupMenu .wrap {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 30px;
}
#mainPopupMenu .name {
    opacity: .5;
    margin-bottom: 10px;
    display: block;
}
#mainPopupMenu .address,
#mainPopupMenu .phone{
    font-size: var(--fs-4);
    font-weight: 500;
} 
#mainPopupMenu .address {
    margin-bottom: 70px;
    max-width: 455px;
}
#mainPopupMenu .btn {

}
/* Top panel */
.topPanel {
    background: #fff;
    border-radius: var(--br-3);
    padding: 15px 20px;
    margin-top: 20px;
}
.topPanel,
.menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.navigation {
    margin: 0 auto;
}
.menu  {
    gap: 25px;
}
.dropmenu {
    display: none;
}
.burgerMenu {
    color: #fff;
    background: var(--color-1);
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    padding: 10px 16px;
    border-radius: var(--br-2);
}
.burgerMenu:hover {
    background: var(--hover-1);
}
.burderIcon {
    display: grid;
    grid-template-columns: repeat(2, 5px);
    grid-gap: 2px;

}
.burderIcon span {
    display: block;
    width: 5px;
    height: 5px;
    border-radius: 1px;
    background: #fff;
}

.topPanel  .phone {
    font-size: var(--fs-3);
    font-weight: 600;
}
.topPanel .info {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 0 30px 0 21px;
}
.mainBanner {
    background: var(--color-light);
    border-radius: var(--br-3);
    margin-top: 35px;
    padding: 70px 65px;
    position: relative;
}
.mainBanner .image {
    position: absolute;
    bottom: -4px;
    right: 0;
    z-index: 0;
}
.mainBannerContent {
    position: relative;
    z-index: 1;
}
.mainTitle {
    color: #141414;
    text-transform: uppercase;
    font-weight: 400;
}
.mainBannerContent .desc {
    max-width: 535px;
    margin: 30px 0;
}
.formSearchTour {
    display: flex;
    flex-direction: column;
    margin: 20px 0 0;
    gap: 20px;
}
.formSearchTour .wrap {
    background: var(--color-6);
    border-radius: var(--br-4);
    padding: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}
.checkboxLabel {
    cursor: pointer;
}

.checkboxLabel input {
    display: none;
}
.checkboxLabel span {
    padding: 3px 20px;
    display: inline-flex;
    border-radius: 500px;

}
.checkboxLabel input:checked ~ span {
    background: var(--color-5);
}
.formSearchTour .wrap .input,
.formSearchTour .wrap .select {
    width: 100%;
    height: 50px;
    border: 0;
    border-radius: 6px;
    padding: 14px 18px;
}
.searchBtnTour {
    display: flex;
    align-items: center;
    gap: 25px;
    width: 100%;
    padding: 10px;
    justify-content: center;
    border-radius: 6px;
    font-weight: 600;
}
.searchBtnTour .icon {
    font-weight: 600;
    background: #fff;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.wrapCheckbox {
    display: flex;
    align-items: center;
    gap: 15px;
}
.section {
    padding-top: 100px;
}
.sectionTitle {
    text-transform: uppercase;
    margin-bottom: 25px;
}
.sectionDesc {
    margin-bottom: 35px;
    max-width: 680px;
}
.topLineSection .sectionTitle {
    margin-bottom: 0;
}
.popularBlock_wrap {
    display: flex;
    gap: 20px;
}
.popularBlock_wrap.big .popularBlockCol {
    width: 100%;
    height: 100%;
}
.popularBlock_wrap.small {
    margin-top: 20px;
}
.popularBlock_wrap.big .popularBlockCol:not(:last-child) {
    max-width: 345px;
    min-height: 430px;
}
.popularBlock_wrap.big .popularBlockCol:not(:last-child) .popularBlockItem {
    min-height: 430px;
}
.popularBlock_wrap.big .popularBlockCol:last-child {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.popularBlock_wrap.big .popularBlockCol:last-child .popularBlockItem {
    min-height: 205px;
}
.popularBlock_wrap.small .popularBlockItem {
    width: 100%;
    min-height: 205px;
}
.popularBlockItem {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: var(--br-3);
    position: relative;
}
.popularBlockItem_image {
    position: absolute;
}
.popularBlockItem_icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    position: absolute;
    right: 20px;
    bottom: 20px;
}
.popularBlockItem_image {
    position: absolute;
    right: 0;
    bottom: 0;
}
.popularBlockItem_price {
    position: absolute;
    bottom: 20px;
    left: 20px;
}
.popularBlockItem_title { 
    position: absolute;
    top: 20px;
    left: 20px;
}
.popularBlockItemMore_title  {
    font-family: var(--font-title);
    font-size: 34px;
    text-transform: uppercase;
    position: absolute;
    top: 20px;
    left: 20px;
}
.popularBlockItem.bg-white .popularBlockItem_icon {
    background: var(--color-1);
}
.popularBlockItem.bg-white .popularBlockItem_icon img {
    filter: invert(1);
}
.swiper-horizontal>.swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
    background: #fff;
}
.swiper-scrollbar-drag {
    background: var(--color-6)
}
.catalog {
    position: relative;
}
.catalogCard {
    padding: 20px;
    padding-top: 250px;
    position: relative;
    background: #fff;
    border-radius: var(--br-3);
    overflow: hidden;
    font-weight: 500;
}
.catalogCard .title {
    margin: 20px 0;
}
.catalogCard .image {
    position: absolute;
    top: 0;
    left: 0;
}
.catalogCard  .more {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    border-radius: var(--br-2);
    padding: 11px 0;
    margin-top: 30px;
}
.catalogCard  .more  .icon {
    background: #fff;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    position: absolute;
    top: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 10px;
}
.catalog .swiper {
    padding-bottom: 40px;
}
.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after,
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    display: none;
}
.swiper-button-prev,
.swiper-button-next {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff;
}

.swiper-button-prev {
    transform: rotate(180deg);
    left: -20px
}
.swiper-button-next  {
    right: -20px;
}
.howList_item span {
    border-radius: var(--br-1);
    padding: 5px 15px;
    display: inline-flex;
    font-size: 20px;
    font-weight: 600;
    position: relative;
}
.howList_item  .white {
    background: #fff;
    color: var(--color-1)
}
.howList_item   .bg-5 {
    color: #fff;
}
.howList {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
}
.howList {
    margin-bottom: 15px;
}
.howList_item:last-child,
.howList_item:first-child,
.howList_item:nth-child(2) {
    display: flex;
    align-items: center;
}
.textDinamic {
    position: absolute;
    left: 0;
    font-size: 70px;
    color: #A8A8A833;
    z-index: 0;
    font-family: var(--font-title);
    overflow: hidden;
    width: 100%;
}
.textDinamic p {
    width: 9000px;
}
p.right {
    transform: translate(-90vw, .0);
}
p.left {
    transform: translate(-45vw, .0);
}
.categoryCards {
    display: flex;
    gap: 20px;
}
.categoryCards_card {
    padding: 20px;
    width: 100%;
    position: relative;    
    height: 350px;
    border-radius: var(--br-3);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.categoryCards_card .image {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
}

.categoryCards_card .image img {
    width: 100%;

}
.categoryCards_card:first-child  {
    background: linear-gradient(180deg, #A7CCFF 0%, #F1C3B2 100%);
}
.categoryCards_card .icon {
    width: 40px;
    height: 40px;
    background: var(--color-1);
}
.categoryCards_card .title {
    width: 90px;
}
.categoryList {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.categoryList a {
    font-size: var(--fs-2);
    font-weight: 600;
    background: #fff;
    border-radius: var(--br-1);
    padding: 15px 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.banner .btn.more {
    font-weight: 600;
    padding: 10px 10px 10px 50px;
    gap: 35px;
}
.video {
    margin-top: 20px;
    position: relative;
}
.playVideo {
    position: absolute;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    border: 4px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
}


.grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.gridCard {
    border-radius: var(--br-3);
    padding: 20px;
    position: relative;
    min-height: 185px;
}
.gridCard .title {
    font-size: 16px;
    font-weight: 500;
    width: 240px;
}
.gridCard .image {
    position: absolute;
    bottom: 0;
    right: 0;
}
.grid_1 { grid-area: 1 / 1 / 2 / 3; }
.grid_2 { grid-area: 1 / 3 / 2 / 4; }
.grid_3 { grid-area: 1 / 4 / 2 / 5; }
.grid_4 { grid-area: 2 / 1 / 3 / 3; }
.grid_5 { grid-area: 2 / 3 / 3 / 4; }
.grid_6 { grid-area: 2 / 4 / 3 / 5; }
.grid_7 { grid-area: 3 / 1 / 4 / 3; }
.grid_8 { grid-area: 3 / 3 / 4 / 4; }
.grid_9 { grid-area: 3 / 4 / 4 / 5; }

.grid_3,.grid_5,.grid_9 {
    background: #fff;
}
.grid_1,
.grid_4,
.grid_7 {
    background: var(--color-3);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.gridCard .bigText {
    font-size: 120px;
    position: relative;
    
    font-family: var(--font-title);
}
.gridCard .bigText .icon {
    position: absolute;
    text-transform: uppercase;
    font-size: 25px;
    font-weight: 500;
    border-radius: var(--br-1);
    background: #fff;
    color: var(--color-3);
    padding: 4px 14px;
    top: 44%;
    right: -20px;
    transform: translate(0, -50%);
    border: 5px solid;
    
    font-family: var(--font-main);
}
.grid_4 .bigText .icon {
    right: -40px;
    padding: 4px 7px;
}
.grid_7 .bigText .icon {
    right: -66px;
    padding: 4px 7px;
}
.grid_4 .text {
    font-size: 15px;
    margin-left: 75px;
}
.grid_1 .text {
    font-size: 15px;
    margin-left: 50px;
}
.grid_7 .text {
    font-size: 15px;
    margin-left: 100px;
}
.gridCard .flag {
    color: #2C2C2C78;
    background: #99FFA7;
    padding: 3px 11px;
    font-size: 12px;
    margin-top: 50px;
    display: inline-flex;
}
.reviewList {
    position: relative;
}
.reviewCard {
    background: #fff;
    border-radius: var(--br-3);
    padding: 20px;
}
.reviewCard .avatar {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    position: relative;
    z-index: 1;
}
.reviewCard_top {
    position: relative;
    margin-bottom: 25px;
}
.reviewCard_top__bg {
    background: #F4F4F4;
    border-radius: 500px;
    display: flex ;
    align-items: center;
    justify-content: flex-end;
    width: 95%;
    gap: 15px;
    padding: 15px 17px;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 0;
}
.reviewCard_top__bg {
    text-decoration: underline;
    font-weight: 500;
}
.reviewCard  .name {
    font-size: var(--fs-3);
    font-weight: 600;
    margin-bottom: 15px;
}
.reviewCard  .text {
    line-height: 24px;
    opacity: .8;
    margin-bottom: 30px;
}
.reviewCard  time {
    font-size: 13px;
    font-weight: 500;
    opacity: .4;
}

.accordion .ui-accordion-header {
	position: relative;
}
.accordion .ui-accordion-header-icon {
	content: '';
	position: absolute;
	top: 63%;
	right: 10px;    
	display: flex;
    width: 30px;
    height: 30px;
    border-radius: 50%;
	background: var(--color-1) url(../img/faq.svg) 50% 50% no-repeat;
    transform: translate(0, -50%);
}
.accordion-item:hover .ui-accordion-header-icon {
    background: var(--hover-1)   url(../img/faq.svg) 50% 50% no-repeat

}
.accordion .ui-accordion-header-active .ui-accordion-header-icon {
	transform: translate(0, -50%) rotate(45deg);
}
.ui-accordion .ui-accordion-header {
    background: #fff;
    color: #171717;
    padding: 10px 10px 10px 30px;
    font-size: 16px;
    font-weight: 500;
    border: 0;
    margin: 0;
    border-radius: 6px;
}
.ui-accordion .ui-accordion-content {
    padding: 20px 30px;
    border: 0;
    overflow: auto;
    border-top: 1px solid #E5E5E5;
}
div#accordion {
    display: flex;
    flex-wrap: wrap;
    column-gap: 20px;
    row-gap: 15px;
}
.accordion-item {
    width: 49%;
}
.feedbackWrap {
    position: relative;
}
.formFeedback {
    position: absolute;
    bottom: 50px;
    left: 50px;
    padding: 65px 70px;
    border-radius: var(--br-3);
}
.formFeedback .sectionTitle {
    font-weight: 400;
}
.formFeedback  input {
    background: #25465B;
    color: #fff;
    border: 0;
    width: 100%;
    margin: 30px 0 20px;
    font-size: 13px;
    border-radius: var(--br-1);
    padding: 11px 20px;
    outline: none;
}
.formFeedback .btn {
    color: #fff;
    border: 0;
    width: 100%;
    padding: 11px 20px;
    border-radius: var(--br-1);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.formFeedback .btn .icon {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translate(0, -50%);
}

.footerBottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0;
}
.footerBody {
    display: flex;
    gap: 20px;
    justify-content: space-between;
}
.footerInfo {
    border-radius: var(--br-3);
    background: #EBEBEB;
    padding: 40px 30px 30px;
    width: 100%;
}
.footerBanner {
    border-radius: var(--br-3);
    overflow: hidden;
}
.footerInfo .logo {
    margin-bottom: 40px;
}
.footerInfoMain {
    display: flex;
    justify-content: space-between;
    padding-bottom: 37px;
    border-bottom: 1px solid #D8D8D8;
}
.social {
    display: flex;
    align-items: center;
    gap: 10px;
}
.footer .title {
    opacity: .5;
    margin-bottom: 10px;
}
.footer  .phone {
    font-size: var(--fs-4);
    font-weight: 500;
    margin-bottom: 30px;
    display: block;
}
.footer ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.footerInfoBottom address {
    display: flex;
    flex-direction: column;
}
.footerInfoBottom {
    display: flex;
    align-items: flex-end;
    padding-top: 45px;
    justify-content: space-between;
}
.searchBtn {
    border-radius: var(--br-1);
    display: flex;
    align-items: center;
    gap: 40px;
    padding: 10px 10px 10px 20px;
}
.searchBtn .icon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #fff;
}
.catalogBlock {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.catalogBlock .catalogCard {
    max-width: 345px;
}
.catalogBlock .catalogCard .title {
    margin: 20px 0;
    font-size: 16px;
    font-weight: 500;
}
.favLink {
    display: flex;
    color: #6c6c6c;
    font-size: 14px;
    font-weight: 500;
    gap: 15px;
}
.fav {
    background: #8BF199;
    width: 27px;
    height: 27px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    cursor: pointer;
}
.close {
    background: #fff;
    width: 27px;
    height: 27px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    cursor: pointer;
}
.catalogBlock .catalogCard .fav,
.catalogBlock .catalogCard .close  {
    position: absolute;
    top: 10px;
    right: 10px;

}
.infoList {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.infoListItem {
    color: #6C6C6C;
    font-size: 13px;
    background: #F5F5F5;
    border-radius: 5px;
    padding: 5px;
}
.catalogBlock .catalogCard .price {
    font-size: 15px;
    margin-top: 25px;
}
.catalogBlock .catalogCard .price span {
    font-size: 14px;
    margin-left: 10px;
    opacity: .5;
    text-decoration: line-through;
}
.contactsPage_col {
    border-radius: var(--br-3);
    overflow: hidden;
}
.contactsPage {
    display: flex;
    gap: 20px;
}
.contactsPage_col {
    width: 100%;
    position: relative;
}

.contactsPage_col:first-child {
    background: #fff;
}
.contactsPage_col:not(:last-child) {
    max-width: 345px;
    padding: 30px;
}
.contactsPage_col h3 {
    text-transform: uppercase;
    font-weight: 400;
    margin-bottom: 15px;
}
.contactsPage_col .image {
    position: absolute;
    bottom: 0;
}
.contactsPage_col.bg-1 .btn {
    background: #fff;
    color: var(--color-1);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--br-1);
    padding: 16px 0;
    font-weight: 600;
    position: relative;
    margin-top: 30px;
}
.contactsPage_col.bg-1 .btn .icon {
    background: #9D8EF3;
    width: 30px;
    height: 30px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translate(0, -50%);
}
.contactsPage_col .title {
    opacity: .5;
    margin-bottom: 15px;
}
.contactsPage_col:first-child address,
.contactsPage_col:first-child a,
.contactsPage_col:first-child time {
    font-size: 22px;
    font-weight: 500;
    display: inline-block;
    margin-bottom: 30px;
}
.contactsPage_col:first-child .buttonsMessangers{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.contactsPage_col:first-child .buttonsMessangers a {
    color: var(--color-1);
    border: 1px solid ;
    font-size: 14px;
    margin: 0;
    width: 100%;
    border-radius: var(--br-1);
    text-align: center;
    padding: 6px 0;
}

.gidyWrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.gidyItemInfo_about {
    display: flex;
    align-items: center;
    gap: 10px;
}
.gidyItem {
    background: #fff;
    border-radius: var(--br-3);
    padding: 20px;
    display: flex;
    gap: 30px;   
    width: 49%;
}
.gidyItemInfo_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}
.gidyItem .fav {
    background: #F5F5F5;
}
.gidyItem .name {
    font-size: 20px;
    font-weight: 500;
}
.gidyItem time{
    color: #6C6C6C;
    margin-bottom: 20px;
    display: inline-block;
}
.gidyItemInfo_about {
    margin-bottom: 25px;
}
.gidyItemInfo_about a {
    border-radius: 500px;
    color: #6C6C6C;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 16px;
}
.gidyItemInfo_review {
    background: #F5F5F5;
}
.gidyItemInfo_soc {
    border: 1px solid #EAEAEA;
}

.gidyItemInfo_soc img {
    width: 14px;
}
.gidyItemInfo_buttons {
    display: flex;
    gap: 10px;
    margin-top: 35px;

}
.gidyItemInfo_buttons a {
    width: 100%;
    height: 40px;
    position: relative;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--br-1);
    padding: 0;
}
.gidyItemInfo_buttons a .icon {
    background: #fff;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 10px;
}

.catalogSales {
    margin-top: 30px;
}
.catalogSales .catalogCard {
    max-width: 710px;
    width: 100%;
    padding-top: 350px;
}
.catalogSales .catalogCard .image {
    width: 100%;
    max-height: 350px;
    height: 100%;
}
.catalogSales .catalogCard .image img {
    width: 100%;
}
.catalogSales .catalogCard .image {
    width: 100%;
    max-height: 350px;
    height: 100%;
    overflow: hidden;
}
.catalogSales .catalogCard .image:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 55.14%, #000000 136%);
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
}
.catalogSales .catalogCard .title {
    font-size: 18px;
}
.catalogButtons {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 25px;
}
.catalogButtons .btn {
    margin: 0;
    min-width: 255px;
}
.catalogButtons p {
    display: flex;
    flex-direction: column;
    opacity: .5;
    font-size: 13px;
}
.salesInfo {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 10px;
    bottom: 10px;
    left: 10px;
    color: #fff;
    font-size: 24px;
    font-weight: 500;
    z-index: 3;
}
.salesDiscount {
    background: var(--color-6);
    color: var(--color-text);
    border-radius: 500px;
    display: flex;align-items: center;
    justify-content: center;
    height: 47px;
    min-width: 172px;

}
.blog {
    margin-top: 30px;
}
.blog .catalogCard .image {
    width: 100%;
    height: 100%;
    overflow: hidden;
    max-height: 250px;
}
.blog .catalogCard .image img {
    width: 100%;
}
.blog .catalogCard p {
    opacity: .6;
}
.blog .catalogCard .title {
    font-size: 16px;
}
.blog .catalogCard {
    max-width: 465px;
}
.blog .catalogCard:nth-child(5n+1),
.blog .catalogCard:nth-child(5n+2) {
    max-width: 710px;
    padding-top: 350px;
}
.blog .catalogCard:nth-child(5n+1 ) .image,
.blog .catalogCard:nth-child(5n+2)  .image{
    max-height: 350px;
}

.filterCategory {
    display: flex;
    align-items: center;
    margin-top: 30px;
    gap: 20px;
}
.filterCategory_link {
    background: #fff;
    padding: 13px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    border-radius: var(--br-1);
    font-size: 16px;
}

.innerPage {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 50px;
    position: relative;
}
.innerContent {
    max-width: 1075px;
}
.innerPage h1,
.innerPage h2,
.innerPage h3,
.innerPage h4,
.innerPage h5 {
    font-weight: 400;
    text-transform: uppercase;
}
.innerPage h3 {
    font-size: var(--fs-h3);
}
.sidebar {
    position: sticky;
    top: 10px;
}
.sidebar ul {
    display: flex;
    flex-direction: column;
    gap: 25px;
}
.autorBlock {
    display: flex;
    gap: 15px;
    align-items: center;
    margin: 35px 0;
}
.autorBlock .image {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden;
}

.autorBlock .image img {
    width: 100%;
    height: 100%;object-fit: cover;
}
.autorBlock .name {
    font-size: 20px;
    font-weight: 500;
}
.autorBlock .position {
    color: #6C6C6C;
    font-size: 13px;
}
.quote {
    background: #EFEFEF;
    padding: 40px;
    border-left: 3px solid var(--color-5);
    border-radius: 0 15px 15px 0;
    line-height: 27px;
    font-size: var(--fs-3);
    position: relative;
}
.quote:after {
    content: url(../img/quote.svg);
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F4F4F4;
    border-radius: 50%;
    width: 68px;
    height: 68px;
    position: absolute;
    right: -25px;
    top: -17px;
}
.innerContent h2 {
    margin-bottom: 30px;
}
.innerContent img {
    width: 100%;
    border-radius: var(--br-3);
    overflow: hidden;
    margin-bottom: 30px;
}
.innerContent p {
    font-size: var(--fs-3);
}
.innerContent ol {
    counter-reset: counter; /* Создаем новый счетчик */
    list-style-type: none; /* Убираем стандартные маркеры */
}
.innerContent  ol li {
    padding: 70px 0;
    border-bottom: 1px solid #C2C2C2;
    position: relative; /* Устанавливаем позицию для настройки псевдоэлемента */
}
.innerContent ol li::before {
    content: "0" counter(counter);
    counter-increment: counter;
    font-family: var(--font-title);
    color: var(--color-5);
    font-size: var(--fs-h2);
    position: absolute;
    right: 0;
}
.aboutPage .innerContent h1 {
    margin-bottom: 25px;
}
.aboutPage .innerContent p {
    margin-bottom: 15px;
}
.blockExpert {
    display: flex;
    gap: 50px;
    margin-bottom: 70px;
}
.blockExpert .image {
    min-width: 345px;
}
.blockExpert_content .btn {
    margin-top: 50px;
}
.blockExpert_content {
    padding-top: 60px;
}

.bannerSlider {
    margin: 45px 0;
    padding: 20px 20px 20px 60px;
    border-radius: var(--br-3);
}
.swiper-one {
    overflow: hidden;
    position: relative;
}
.bannerSlider_slide {
    display: flex;
    gap: 10px;
}
.bannerSlider_slide_content {
    padding-top: 100px;
}
.bannerSlider_slide .image {
    min-width: 385px;
    border-radius: var(--br-3);
    overflow: hidden;
}
.bannerSlider_slide .image img {
    margin: 0;
}
.bannerSlider_slide .bannerSlider_slide_content p {
    font-size: var(--fs-2);
    font-weight: 400;
    margin: 20px 0;
    display: inline-block;
}
.swiper-buttonWrapper {
    position: absolute;
    top: 40px;
    left: 0;
    display: flex;
    gap: 10px;
}
.swiper-buttonWrapper .swiper-button-prev, 
.swiper-buttonWrapper .swiper-button-next {
    background: #8BF199;
    border: 1px solid #8BF199;
    position: relative;
    margin: 0;
    top: 0;
    left: 0;
    right: 0;
    transform: rotate(180deg);
}
.swiper-buttonWrapper .swiper-button-prev path,
.swiper-buttonWrapper .swiper-button-next path {
    stroke: var(--color-3);
}
.swiper-buttonWrapper .swiper-button-next.swiper-button-disabled,
.swiper-buttonWrapper .swiper-button-prev.swiper-button-disabled {    
    background: transparent;
    opacity: 1;
}
.swiper-buttonWrapper .swiper-button-next.swiper-button-disabled path,
.swiper-buttonWrapper .swiper-button-prev.swiper-button-disabled path {    
    stroke: #8BF199;
}
.swiper-buttonWrapper .swiper-button-prev {
    transform: rotate(360deg);
}
.swiper-buttonWrapper svg {
    width: 4px;
}
.bannerReestr {
    padding: 65px;
    border-radius: var(--br-3);
    position: relative;
    margin: 70px 0;
}
.bannerReestr_content {
    max-width: 516px;
}
.bannerReestr_content h3 {
    margin-bottom: 20px;
}
.bannerReestr_content span {
    font-size: 16px;
    opacity: 0.5;
    font-weight: 400;
    margin-bottom: 10px;
    display: block;
}
.bannerReestr_content p {
    font-size: 16px;
}
.bannerReestr img {
    width: auto;
}
.bannerReestr .image {
    position: absolute;
    right: 0;
    bottom: -130px;
}
.mainContent .image img,
.mainContent .icon img {
    width: auto;
    margin: 0;
}
.blogSlider {
    position: relative;
}
.mainContent .swiper-button-prev img, 
.mainContent .swiper-button-next img {
    width: auto;
    margin: 0;
}
.blogSlider .swiper-button-prev, 
.blogSlider .swiper-button-next {
    box-shadow: -5px 0px 15px 0px #00000040;
}
.innerContent .blogSlider  p {
    font-size: 13px;
    opacity: .6 ;
}
.innerContent .blogSlider img {
    margin-bottom: 0;
    border-radius: 0;
}
.vacancy {
    margin-top: 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.innerContent ul li {
    position: relative;
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 18px;
}
.vacancyContent span.desc {
    font-size: 14px;
    font-weight: 500;
    opacity: .5;
    margin-bottom: 18px;
    display: block;
}
.innerContent ul li:before {
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    background: #FFA662;
    border-radius: 50%;
    border: 5px solid #fff;
    box-shadow: 0 0 0px 1px #FFA662;
}
.vacancyContent .btn {
    min-width: 400px;
}

.formPartner .formFeedback {
    position: unset;
    padding: 0;
    background: transparent;
}
.formPartner .feedbackWrap {
    display: flex;
    padding: 20px 20px 20px 60px;
    gap: 120px;
    border-radius: var(--br-3);
    align-items: center;
}
.formPartner .formFeedback ul {
    column-count: 2;
}
.formPartner .formFeedback input {
    margin: 0;
    margin-bottom: 10px;    
}
.formPartner ul {
    margin-bottom: 15px;
}
.formPartner ul li:before {
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    background: #FFA662;
    border-radius: 50%;
    border: 5px solid var(--color-3);
    box-shadow: 0 0 0px 1px #FFA662;
}
.policy {
    display: flex;
    gap: 15px;
    margin: 15px 0;
}
.policy a {
    color: #fff;
    text-decoration: underline;
}
.policy p {
    font-size: 12px;
    opacity: .7;
    font-weight: 400;
}
.policy input {
    margin: 0;
}
.policy label span {
    position: relative;
    cursor: pointer;
}
.policy label input {
    display: none;
}
.policy label span:before {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    border: 1px solid hsl(0deg 0% 100% / 46%);
    border-radius: 2px;
}

.policy label input:checked ~ span:after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 2px;
}

.detailPage .topLineSection {
    align-items: flex-start;
}
.detailPage .sectionTitle {
    max-width: 1000px;
}
.detailAbout {
    display: flex;
    gap: 30px;
    justify-content: space-between;
}
.detailAbout_buttons a {
    height: 40px;
}

.detailAbout_buttons a .icon {
    width: 20px;
    height: 20px;
}
.detailAbout_buttons {
    display: flex;
    gap: 10px;
}
.detailAbout_content {
    max-width: 860px;
}

.detailAbout_content p {
    margin-bottom: 35px;
}
.detailAbout_content .price {
    margin-bottom: 25px;
    font-size: 20px;
    font-weight: 600;
}

.detailAbout_content .price span {
    font-size: 16px;
    font-weight: 400;
    opacity: 0.5;
    text-decoration: line-through;
    margin-left: 20px;
}


.detailAbout_sidebar__item .icon {
    width: 22px;
}
.detailAbout_sidebar__item {
    display: flex;
    gap: 20px;
}
.detailAbout_sidebar__item:not(:last-child) {
    margin-bottom: 20px;
}
.detailAbout_sidebar__item .name {
    font-size: 16px;
    font-weight: 600;
}
.detailAbout_sidebar {
    border-radius: var(--br-3);
    background: #fff;
    padding: 15px 70px 15px 20px;
    min-width: 345px;
    max-width: 345px;
}
.hidden {
    display: none;
}
.gridSecond {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}

.gridSecond_1 { grid-area: 1 / 1 / 3 / 3; }
.gridSecond_2 { grid-area: 1 / 3 / 2 / 4; }
.gridSecond_3 { grid-area: 1 / 4 / 2 / 5; }
.gridSecond_4 { grid-area: 2 / 3 / 3 / 4; }
.gridSecond_5 { grid-area: 2 / 4 / 3 / 5; }
.gridSecond_item {
    position: relative;
    overflow: hidden;
    border-radius: var(--br-3);
}
.gridSecond_5 .wrapper {
    position: absolute;
    top: 0;
    left: 0;
}
.gridSecond_item .wrapper {
    position: absolute;
    top: 0;
    left: 0;
    background: rgb(155 140 243 / 95%);
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 15px;
    color: #ffff;
    justify-content: center;
    transition: all .3s ease;

}
.gridSecond_item .wrapper:hover {
    opacity: .8;
    transition: all .3s ease;
}
.gridSecond_item .wrapper .icon {
    background: #fff;
    width: 30px;
    height: 30px;
}
.programm {
    display: flex;
    align-items: flex-start;
    gap: 25px;
    justify-content: space-between;
}
.programm_col__about {
    max-width: 680px;
}
.programm h2 {
    text-transform: uppercase;
    margin-bottom: 30px;
}
.programm ol {
    margin-bottom: 70px;
}
.programm ol li {
    margin-bottom: 30px;
}
.programm ol li .title {
    font-size: var(--fs-3);
    font-weight: 500;
    margin: 0 0 15px 0;
}
.programm ul {
    margin-bottom: 15px;
}
.programm ul li {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}
.programm ul li:before {
    content: '';
    display: block;
    width:10px;
    height: 10px;
    background: #FFA662;
    border-radius: 50%;
    border: 7px solid var(--color-bg);
    box-shadow: 0 0 0px 1px #FFA662;
}

.programm ol {
    counter-reset: counter; /* Создаем новый счетчик */
    list-style-type: none; /* Убираем стандартные маркеры */
}
.programm  ol li {
    padding-left: 60px;
    position: relative;
}
.programm ol li::before {
    background: var(--color-6);
    position: absolute;
    left: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    content: "0" counter(counter);
    counter-increment: counter;
}

.route {
    border-left: 1px dashed var(--color-text);
    display: flex;
    flex-direction: column;
    gap: 25px;
    margin-left: 15px;
}
.route>div {
    position: relative;
    padding-left: 30px;
}
.route_item::before {
    content: '';
    width: 15px;
    height: 15px;
    background: var(--color-5);
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: absolute;
    left: -8px;
    top: 3px;
}
.start,
.end {
    font-size: 16px;
    font-weight: 600;
}
.start::before,
.end::before {
    content: url(../img/geo.svg);
    display: flex;
    width: 35px;
    height: 35px;
    background: var(--color-5);
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: absolute;
    left: -18px;
    top: -7px;
}
.programm_col__route {
    max-width: 345px;
}
.infoBanner {
    background: var(--color-6);
    padding: 20px;
    border-radius: 10px;
    margin-top: 56px;
}
.infoBannerTop {
    display: flex;
    align-items: center;
    gap: 15px;
}
.infoBanner  .icon {
    font-family: --font-title;
    width: 43px;
    min-height: 43px;
    background: #AAFFB6;
    font-size: 30px;
    font-weight: 700;
}
.infoBanner  h3 {
    font-size: 25px;
    text-transform: uppercase;
    font-weight: 400;
    width: 215px;
}
.programm .detailAbout_sidebar {
    padding: 20px;
}
.programm .detailAbout_sidebar .autorBlock {
    margin-top: 0;
}

.pay h2 {
    text-transform: uppercase;
    margin-bottom: 30px;
}


.categoryCards_card:hover .icon,
.popularBlockItem:hover .popularBlockItem_icon {
    background: var(--hover-1);

}
.popularBlockItem:hover .popularBlockItem_icon img {
    filter: invert(1);
}
.searchBtn:hover,
.formFeedback .btn:hover,
.banner .btn.more:hover,
.catalogCard .more:hover,
.checkboxLabel span:hover,
.searchBtnTour:hover {
    background: var(--hover-1);
}
.categoryList a:hover {
    background: var(--color-6);
}

.popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 99;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: scale(0);
    transition: all .3s ease;
}
.popup.open {
    transform: scale(1);
    transition: all .3s ease;
}
.popup .overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgb(0 0 0 / 50%);
    z-index: 999;
}
.popup .feedbackWrap {
    position: relative;
    z-index: 9999;
    max-width: 1000px;
    width: 100%;
    gap: 50px;
    display: flex;
    padding: 50px;
    border-radius: var(--br-3);
}
.popup .formFeedback {
    position: unset;
    padding: 0;
}
.popup .formFeedback .desc {
    margin-bottom: 30px;
}
.popup  .closePopup {
    position: absolute;
    right: 30px;
    top: 30px;
    cursor: pointer;
}
.popup select,
.popup textarea::placeholder,
.popup input::placeholder {
    color: #fff;
}
.popup textarea {
    height: 120px;
}
.popup select,
.popup textarea,
.popup input {
    font-family: var(--font-main);
    background: #25465B;
    color: #fff;
    opacity: .37;
    border: 0;
    width: 100%;
    margin: 30px 0 20px;
    font-size: 13px;
    border-radius: var(--br-1);
    padding: 11px 20px;
    outline: none;
    resize: none;
    margin: 0 0 10px 0;
}
.popup .feedbackWrap .image img {
    height: 100%;
}