#new-map{
    margin-top: 70px;
    margin-bottom: 70px;
}
#new-map{

}
#new-map .title{
    color: #000000;
    text-align: left;
    font-family: "Mulish", sans-serif;
    font-size: 80px;
    line-height: 90px;
    font-weight: 700;
}
#new-map .sub-title{
    position: absolute;
    max-width: 987px;
    top: 64px;
    left: 225px;
}
#new-map .sub-title img{
    width: 100%;
}
#new-map .map-element-type{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 90px;
    gap: 2px;
}
#new-map .map-element-type .item{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 18px;
    width: 33%;
}
#new-map .map-element-type svg{
    width: 62px;
    min-width: 62px;
    max-width: 62px;
}
#new-map .map-element-type span{
    color: #000000;
    text-align: left;
    font-family: "GolosText", sans-serif;
    font-size: 24px;
    font-weight: 400;
}
#new-map .map{
    width: 100%;
    margin-top: 28px;
    position: relative;
}
#new-map .map #main-map{
    width: 100%;
    height: auto;
}
#new-map .map .item{
    position: absolute;
    width: 84px;
    height: 84px;
    background: #ffb60d;
    border-radius: 50%;
    color: #000000;
    text-align: center;
    font-family: "Mulish", sans-serif;
    font-size: 44.3485221862793px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    -webkit-box-shadow: 6.02px 6.02px 6.02px 0px #00000080; 
    box-shadow: 6.02px 6.02px 6.02px 0px #00000080;
}
#new-map .map .item:nth-child(2){
    top: 49.5%;
    left: 27.3%;
}
#new-map .map .item:nth-child(3){
    top: 52.8%;
    left: 37.4%;
}
#new-map .map .item:nth-child(4){
    top: 47.8%;
    left: 43.4%;
}
#new-map .map .item:nth-child(5){
    top: 47%;
    left: 50.6%;
}
#new-map .map .item:nth-child(6){
    top: 36%;
    left: 53%;
}
#new-map .map .item:nth-child(7){
    top: 46.6%;
    left: 60%;
}
#new-map .map .item:nth-child(8){
    top: 70.6%;
    left: 72%;
}
#new-map .map .item:nth-child(9){
    top: 73.5%;
    left: 39.7%;
}
#new-map .map .item:nth-child(10){
    top: 71%;
    left: 45%;
}
#new-map .map .item:nth-child(11){
    top: 67.5%;
    left: 36.5%;
}
#new-map .map .item:nth-child(12){
    top: 57.5%;
    left: 44.5%;
}
#new-map .map .item:nth-child(13){
    top: 70%;
    left: 54%;
}
#new-map .map .item:nth-child(14){
    top: 61%;
    left: 50%;
}
#new-map .map .item:nth-child(15){
    top: 58.4%;
    left: 56.3%;
}
#new-map .map .item:nth-child(16){
    top: 61%;
    left: 65%;
}
#new-map .map .item:nth-child(17){
    top: 53%;
    left: 71.7%;
}
#new-map .map .item:nth-child(18){
    top: 36.6%;
    left: 71%;
}
#new-map .map .item:nth-child(19){
    top: 30%;
    left: 61%;
}
#new-map .map .item:nth-child(20){
    top: 29.8%;
    left: 40.5%;
}
#new-map .map .item:nth-child(21){
    top: 24.8%;
    left: 52.5%;
}
#new-map .map .item:nth-child(22){
    top: 14.8%;
    left: 48.5%;
}
#new-map .map .item:nth-child(23){
    top: 37%;
    left: 36%;
}
#new-map .map .item:nth-child(24){
    top: 38%;
    left: 29%;
}
#new-map .map .item:nth-child(25){
    top: 22.5%;
    left: 31.7%;
}
#new-map .map .item:nth-child(26){
    top: 15.5%;
    left: 37.7%;
}
#new-map .map .item:nth-child(27){
    top: 15%;
    left: 24.7%;
}
#new-map .map .item:nth-child(28){
    top: 29.4%;
    left: 25.7%;
}
#new-map .map .item:nth-child(29){
    top: 24.4%;
    left: 18.7%;
}
#new-map .map .item:nth-child(30){
    top: 64%;
    left: 46%;
}
#new-map .map .item:nth-child(31){
    top: 59.5%;
    left: 39.5%;
}
#new-map .map .item:nth-child(32){
    top: 66.5%;
    left: 41.5%;
}
#new-map .map .item:nth-child(33){
    top: 49.5%;
    left: 32.3%;
}
#new-map .map .item:nth-child(34){
    top: 43.5%;
    left: 34.3%;
}
#new-map .list .title{
    margin-bottom: 22px;
}
#new-map .list .list-wrapper{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 100px;
}
#new-map .list .item{
    width: calc(50% - 50px);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding-left: 33px;
    box-sizing: border-box;
    text-decoration: none;
    padding-top: 17px;
    padding-bottom: 17px;
    padding-right: 24px;
    border-bottom: 1px solid black;
}
#new-map .list .item:hover{
    background: rgba(255, 182, 13, 0.3); /* 0.3 = 30% непрозрачности */
}
#new-map .list .item::after{
    display: block;
    content: '';
    background: url('data:image/svg+xml,<svg class="vector-101" width="22" height="42" viewBox="0 0 22 42" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.570312 41.5742L21.1425 21.002L0.570311 0.429852" stroke="black" stroke-width="2.74296" /></svg>');
    width:  22px;
    height: 42px;
    min-width:  22px;
    min-height: 42px;
    max-width:  22px;
    max-height: 42px;
}
#new-map .list .item img{
    width: 49.62px;
    height: 60.05px;
    min-width: 49.62px;
    min-height: 60.05px;
    max-width: 49.62px;
    max-height: 60.05px;
}
#new-map .list .item span{
    color: #0e1014;
    text-align: left;
    font-family: "Mulish", sans-serif;
    font-size: 24px;
    line-height: 32.92px;
    font-weight: 500;
    text-transform: uppercase;
    flex: 1;
    padding-left: 20px;
}
#new-map.mo-edition{
    margin-bottom: 30px;
}
#mo-map{
    margin-bottom: 50px;
}
#mo-map .container{}
#mo-map .control{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}
#mo-map .control .link-back{
    text-decoration: none;
    color: #000000;
    font-family: "GolosText", sans-serif;
    font-size: 29.830303192138672px;
    font-weight: 400;
    display: flex;
    flex-direction: row;
    gap: 13px;
}
#mo-map .control .link-back::before{
    display: block;
    content: '';
    width: 30px;
    height: 34px;
    background: url('data:image/svg+xml,<svg class="group-282" width="30" height="34" viewBox="0 0 30 34" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17.1504 0.368164L0.735202 16.7834L17.1504 33.1985" stroke="black" stroke-width="2.73586" /><line x1="0.735352" y1="16.7834" x2="29.4619" y2="16.7834" stroke="black" stroke-width="2.73586" /></svg>');
}
#mo-map .control .map-name{
    color: #000000;
    font-family: "GolosText", sans-serif;
    font-size: 29.830303192138672px;
    font-weight: 400;
    text-transform: uppercase;
}
#mo-map #map{
    width: 100%;
    height: 740px;
}

#mo-map .list-objects{
    margin-top: 23px;
}
#mo-map .list-objects .title{
    color: #000000;
    font-family: "Mulish", sans-serif;
    font-size: 82.0759506225586px;
    line-height: 123.11px;
    font-weight: 700;
    margin-bottom: 26px;
}
#mo-map .list-objects__wrapper{
    display: flex;
    flex-direction: column;
    border-top: 1px solid black;
}
#mo-map .list-objects__wrapper .item{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    text-decoration: none;
    justify-content: space-between;
    padding: 30px;
    border-bottom: 1px solid black;
    box-sizing: border-box;
}
#mo-map .list-objects__wrapper .item:hover{
    background: rgba(255, 182, 13, 0.3); /* 30% opacity */
}
#mo-map .list-objects__wrapper .item div{
    display: flex;
    flex-direction: row;
    gap: 50px;
    align-items:center;
}
#mo-map .list-objects__wrapper .item img{
    width: 73.47px;
    height: 73.47px;
    min-width: 73.47px;
    min-height: 73.47px;
    max-width: 73.47px;
    max-height: 73.47px;
}
#mo-map .list-objects__wrapper .item span{
    color: black;
    font-family: "Mulish-SemiBold", sans-serif;
    font-size: 24px;
    line-height: 30.09px;
    font-weight: 400;
    display: block;
    width: 100%;
}
#mo-map .list-objects__wrapper .item svg{
    min-width: 21px;
    min-height: 42px;
}
#new-map.mo-edition .description{
    color: #000000;
    text-align: left;
    font-family: "Mulish", sans-serif;
    font-size: 42.286903381347656px;
    line-height: 56.38px;
    font-weight: 700;
    text-transform: uppercase;
    margin-top: 115px;
}
#mo-map .objects-description{
    margin-top: 35px;
    display: flex;
    flex-direction: column;
}
#mo-map .objects-description .row{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding-top: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid black;
}
#mo-map .objects-description .row .col-title{
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 25%;
    gap: 22px;
}
#mo-map .objects-description .row .col-title svg{
    width: 42px;
}
#mo-map .objects-description .row .col-title span{
    color: #0e1014;
    font-family: "Mulish", sans-serif;
    font-size: 32px;
    line-height: 32.1px;
    font-weight: 500;
    text-transform: uppercase;
}
#mo-map .objects-description .row .col-description{
    width: 75%;
    color: #000000;
    font-family: "Mulish", sans-serif;
    font-size: 24px;
    line-height: 32.1px;
    font-weight: 500;
}
#mo-map .swiper-button-prev{
    color: black;
}
#mo-map .swiper-button-next{
    color: black;
}
.mobile-version{
    display: none;
}
#mo-map .objects-description .row .col-description .producers__item.swiper-slide{
    height: 21vw;
}
#mo-map .objects-description .row .col-description .producers__item.swiper-slide .producers__item-img{
    width: 100%;
    height: 100%;
}
#mo-map .objects-description .row .col-description .producers__item.swiper-slide .producers__item-img img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}
@media (max-width: 1600px){
    #new-map .map .item{
        width: 50.22px;
        height: 50.22px;
        font-size: 29.48px;
    }
    #new-map .list .title{
        font-size: 60px;
    }
    #new-map .title{
        font-size: 80px;
        line-height: 120%;
    }
    #new-map .sub-title{
        max-width: 741px;
    }
    #new-map .list .item img{
        width: 36px;
        height: 44px;
        min-width: 36px;
        min-height: 44px;
        max-width: 36px;
        max-height: 44px;
    }
    #new-map .list .item::after{
        width: 30px;
        height: 15px;
        min-width: 30px;
        min-height: 15px;
        max-width: 30px;
        max-height: 15px;
        background-size: 100% 100%;
    }
    #mo-map .list-objects .title{
        font-size: 60px;
    }
    #mo-map .list-objects__wrapper .item span{
        font-size: 18px;
        line-height: 120%;
    }
    #mo-map .list-objects__wrapper .item img{
        width: 53.71px;
        height: 53.71px;
        min-width: 53.71px;
        min-height: 53.71px;
        max-width: 53.71px;
        max-height: 53.71px;
    }
    #mo-map #map{
        height: 541px;
    }
    #new-map.mo-edition .description{
        font-size: 30px;
    }
    #mo-map .objects-description .row .col-title span{
        font-size: 24px;
    }
    #mo-map .objects-description .row .col-description{
        font-size: 20px;
        line-height: 120%;
    }
}
#mo-map .swiper-button-prev{
    left: -45px;
}
#mo-map .swiper-button-next{
    right: -45px;
}
@media (max-width: 1024px){
    #new-map .map .item{
        width: 28.59px;
        height: 28.59px;
        font-size: 12px;
    }
    #new-map .map-element-type{
        flex-direction: column;
        gap: 17px;
    }
    #new-map .map-element-type .item{
        width: 100%;
    }
    #new-map .map-element-type svg{
        width: 29px;
        min-width: 29px;
        max-width: 29px;
    }
    #new-map .list .title{
        font-size: 40px;
    }
    #new-map .list .list-wrapper{
        flex-direction: column;
    }
    #new-map .list .item{
        width: 100%;
    }
    #new-map .list .item span{
        font-size: 14px;
    }
    #new-map .list .item::after{
        width: 18.06px;
        height: 9.03px;
        min-width: 18.06px;
        min-height: 9.03px;
        max-width: 18.06px;
        max-height: 9.03px;
        background-size: 100% 100%;
    }
    #new-map .list .item img{
        width: 21.78px;
        height: 26.36px;
        min-width: 21.78px;
        min-height: 26.36px;
        max-width: 21.78px;
        max-height: 26.36px;
    }
    #mo-map .control .map-name{
        font-size: 14px;
    }
    #mo-map .control .link-back{
        font-size: 14px;
    }
    #mo-map .control .link-back::before{
        width: 14px;
        height: 17px;
        background-size: 100% 100%;
    }
    #mo-map #map{
        height: 337px;
    }
    #mo-map .list-objects .title{
        font-size: 40px;
    }
    #mo-map .list-objects__wrapper .item span{
        font-size: 12px;
    }
    #new-map.mo-edition .description{
        font-size: 20px;
        line-height: 120%;
    }
    #mo-map .objects-description .row{
        flex-direction: column;
    }
    #mo-map .objects-description .row .col-title{
        width: 100%;
        gap:10px
    }
    #mo-map .objects-description .row .col-description{
        width: 100%;
        font-size: 14px;
        padding-left: 24px;
    }
    #mo-map .objects-description .row .col-title span{
        font-size: 16px;
    }
    #mo-map .objects-description .row .col-title svg{
        width: 14px;
    }
    #mo-map .objects-description .row:last-child .col-description{
        padding-left: 0;
    }
}
@media (max-width:992px){
    #new-map .title{
        font-size: 40px;
        line-height: 120%;
    }
    .full-width-version{
        display: none;
    }
    #new-map .sub-title{
        max-width: 281.69px;
        top: 85px;
        left: 60px;
    }
    .mobile-version{
        display: block;
    }
}
@media (max-width:640px){
    #mo-map .objects-description .row .col-description .producers__item.swiper-slide{
        height: 198.08px;
    }
}
@media (max-width:640px){
    #new-map .map .item{
        width: 18px;
        height: 18px;
        font-size: 12px;
    }
    #mo-map .list-objects__wrapper .item{
        padding-left: 0;
    }
    #mo-map .list-objects__wrapper .item div{
        gap:14px;
    }
    #mo-map .list-objects__wrapper .item img{
        width: 33.57px;
        height: 33.57px;
        min-width: 33.57px;
        min-height: 33.57px;
        max-width: 33.57px;
        max-height: 33.57px;
    }
    #mo-map .list-objects__wrapper .item span{
        width:80%;
    }
}
.type-filter {
            position: absolute;
            opacity: 0;
            width: 0;
            height: 0;
            margin: 0;
        }
        .custom-checkbox {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 28px;
            height: 28px;
            border: 1px solid #000;
            margin-right: 12px;
            cursor: pointer;
            transition: all 0.2s ease;
            flex-shrink: 0;
            background-color: white;
            position: relative;
        }
        .check-icon {
            opacity: 0;
            transform: scale(0.8);
            transition: all 0.2s ease;
            position: absolute;
            top: -2px;
            left: 6px;
            width: auto !important;
            min-width: auto !important;
            max-width: none !important;
            height: auto;
        }
        
        .type-filter:checked + .custom-checkbox .check-icon {
            opacity: 1;
            transform: scale(1);
        }
        .checkbox-label {
            display: flex;
            align-items: center;
            cursor: pointer;
            padding: 10px 15px;
            border-radius: 8px;
            transition: background-color 0.3s;
            margin-bottom: 8px;
            position: relative;
            user-select: none;
        }
        
        .checkbox-label:hover {
            background-color: #f8f8f8;
        }
        .checkbox-label span:last-child {
            font-family: 'Mulish', sans-serif;
            font-size: 16px;
            font-weight: 500;
            color: #333;
        }