.photogallery .photo-item { margin:6px; }
.photogallery .photogallery__nav { margin-top:20px; clear:both; display:block; }
.photogallery .photo-item img { display:block; border-radius:4px; }



.photofilter { margin-bottom:12px; }
.photofilter-btn { margin-right:6px; padding:6px 10px; border:1px solid #ccc; background:#fff; cursor:pointer; }
.photofilter-btn.active { background:#222; color:#fff; border-color:#222; }




.photogallery__items {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 100px;
}
.photogallery__item {
    flex: 0 0 calc(33.3333% - 20px);
    position: relative;
}
.photogallery__item a {
    display: block;
    width: 100%;
    height: 100%;
}
.photogallery__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: none;
}
.photogallery__item a.photogallery-item__download-link {
    position: absolute;
    inset: auto 15px 15px auto;
    display: inline-block;
    padding: 3px 7px;
    background-color: rgb(0, 0, 0);
    color: rgb(255, 255, 255);
    border-radius: 4px;
    width: auto;
    height: auto;
    text-decoration: none;
    transition: 0.3s;
}
.photogallery__item:hover .photogallery-item__download-link {
    background-color: var(--accent);
    color: #fff;
}
@media (max-width: 1400px) {
    .photogallery__item img {
        object-fit: cover;
    }
}
@media (max-width: 1023px) {
    .photogallery__items {
        gap: 20px;
    }
    .photogallery__item {
        flex: 0 0 calc(33.3333% - 13.3333px);
    }
}
@media (max-width: 767px) {
    .photogallery__items {
        gap: 10px;
    }
    .photogallery__item {
        /* flex: 0 0 calc(33.3333% - 6.66667px); */
        flex: 0 0 calc(50% - 5px);
    }
}








.preloaderFullScreen {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99999999;
    background-color: #444444b3;
    backdrop-filter: blur(8px);
    display: none;
}
.preloaderFullScreenAnimation {
    /* color: #65abf8; */
    color: var(--accent);
    font-size: 20px;
    margin: auto;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    position: relative;
    top: 50%;
    text-indent: -9999em;
    /* -webkit-transform: translateZ(0); */
    /* -ms-transform: translateZ(0); */
    /* transform: translateZ(0); */
    transform: translateY(-50%);
}
.preloaderFullScreen.active {
    display: block;
}
.preloaderFullScreen.active .preloaderFullScreenAnimation {
    -webkit-animation: load4 1.3s infinite linear;
    animation: load4 1.3s infinite linear;
}
@-webkit-keyframes load4 {
    0%,
    100% {
        box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
    }
    12.5% {
        box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    }
    25% {
        box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    }
    37.5% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
    }
    50% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
    }
    62.5% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
    }
    75% {
        box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
    }
    87.5% {
        box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
    }
}
@keyframes load4 {
    0%,
    100% {
        box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
    }
    12.5% {
        box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    }
    25% {
        box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    }
    37.5% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
    }
    50% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
    }
    62.5% {
        box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
    }
    75% {
        box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
    }
    87.5% {
        box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
    }
}
















/* -------------------------------------------------------------- Фильтр архива -------------------------------------------------------------- */
.filterPhotogallery {
    min-width: 220px;
    display: flex;
    gap: 60px;
    margin-top: 40px;
    justify-content: flex-start;
    margin-bottom: 80px;
}
.filter__top {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    /* margin-bottom: 24px; */
    font-size: 20px;
}
.filter__select {
    position: relative;
    /* width: 100%; */
    user-select: none;
    /* max-width: 100px; */
}
.filter__trigger {
    border-bottom: 1px solid rgb(230, 230, 230);
    /* padding: 0px 0px 8px; */
    font-size: 20px;
    font-weight: 500;
    cursor: pointer;
    position: relative;
    padding: 10px 12px;
}
.filter__options {
    display: none;
    position: absolute;
    left: 0px;
    right: 0px;
    top: 100%;
    background: rgb(255, 255, 255);
    border-right: 1px solid rgb(230, 230, 230);
    border-bottom: 1px solid rgb(230, 230, 230);
    border-left: 1px solid rgb(230, 230, 230);
    border-image: initial;
    border-top: none;
    z-index: 10;
    max-height: 260px;
    overflow: auto;
}
.filter__select.open .filter__options {
    display: block;
}
.filter__option {
    display: block;
    padding: 10px 12px;
    cursor: pointer;
    border-bottom: 1px solid rgb(230, 230, 230);
    text-align: center;
}
.filter__option.selected {
    color: var(--accent);
}
@media screen and (max-width: 576px) {
    .filterPhotogallery {
        /* min-width: auto; */
        /* width: 100%; */
    }
    .filter__top {
        /* margin-bottom: 9px; */
    }
    .filter__trigger {
        /* padding-bottom: 2px; */
    }
}
/* -------------------------------------------------------------- / Фильтр архива -------------------------------------------------------------- */