/* Frosty Gallery — frontend */
.gallery-images { width: 100%; max-width: 100%; }

/* ── Главный слайдер ───────────────────── */
.gallery-main-swiper {
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(0, 210, 255, 0.35);
/*    aspect-ratio: 16 / 7;*/
    background: #050b18;
border-radius: 16px;
overflow: hidden;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 210, 255, 0.15), 0 0 18px rgba(0, 210, 255, 0.12), 0 0 40px rgba(0, 210, 255, 0.06);
transition: box-shadow 0.3s ease, border-color 0.3s ease;
position:relative;
}

.gallery-main-swiper:before{
    content:'';
        position: absolute;
    inset: -20px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(28px) saturate(1.4) brightness(0.45);
    transform: scale(1.05);
    z-index: 0;
    transition: background-image .25s ease;
    background-image:url('/wp-content/themes/frosty/inc/editor/slide-gallery/../../../media/img/gallery-slider-bg.webp');
}
.gallery-main-swiper__slide {
    overflow: hidden;
    position: relative;
    width: 100%;
    overflow: hidden;
    cursor: zoom-in;
    margin-bottom: 10px;

}

.gallery-images .gallery-main-swiper .gallery-main-swiper__slide img {
    width: auto;
    height: 100%;
    margin:0px auto;
    display: block;
}
.gallery-main-swiper__link{
    display: block;
    width: 100%;
    height: 100%;
}
.gallery-images .gallery-main-swiper__link:before{
    content:none;
}
.gallery-images .gallery-main-swiper__link:hover{
   border-color: transparent;
   text-shadow: unset;
}
/* Подпись поверх главного фото */
.gallery-main-swiper__overlay {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    padding: 32px 36px 28px;
    background: linear-gradient(to top, rgba(0,0,0,.68) 0%, transparent 100%);
    color: #fff;
    pointer-events: none;
}
.gallery-main-swiper__title {
    margin: 0 0 6px;
    font-size: clamp(18px, 2.8vw, 34px);
    font-weight: 700;
    line-height: 1.2;
    text-shadow: 0 2px 8px rgba(0,0,0,.4);
}
.gallery-main-swiper__caption {
    margin: 0;
    font-size: 15px;
    opacity: .88;
    position:absolute;
    bottom:0px;
    left:0px;
    color: #fff;
    z-index:4;
    width:100%;
    padding: 12px 14px 12px 14px;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px); 
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.1) 0%,     
        rgba(0, 0, 0, 0.6) 50%,   
        rgba(13, 13, 13, 0.95) 100% /
    );
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    font-size: 12px;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.75);
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.8);
}


/* Стрелки */

.gallery-slider-button{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 4;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid rgba(0, 210, 255, 0.35);
    background: rgba(5, 11, 24, 0.85);
    backdrop-filter: blur(6px);
    color: #00d2ff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: background .2s, border-color .2s, transform .2s;
    user-select: none;
    flex-shrink: 0;
}
.gallery-slider-button.button--prev:hover,
.gallery-slider-button.button--next:hover {
 background: rgba(0, 210, 255, 0.18);
 border-color: rgba(0, 210, 255, 0.7);
 transform: translateY(-50%) scale(1.1);
}
/* ── Слайдер миниатюр ──────────────────── */
.gallery-thumb-swiper {
    position:relative;
    overflow: hidden;
    margin-top: 8px;
}
.gallery-thumb-swiper__slide {

    aspect-ratio: 16 / 9;
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid rgba(255, 255, 255, 0.08);
    cursor: pointer;
    transition: border-color 0.2s, transform 0.2s;
    background: rgba(0, 0, 0, 0.4);

}

.gallery-slider-button.button--next{
    right: -14px;
}
.gallery-slider-button.button--prev{
    left:-14px;
}
.gallery-thumb-swiper__slide img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.gallery-thumb-swiper__slide:hover {
 border-color: rgba(0, 210, 255, 0.45);
}
.gallery-thumb-swiper__slide.swiper-slide-thumb-active {
    border-color: #00d2ff;
    box-shadow: 0 0 0 1px rgba(0, 210, 255, 0.3), 0 0 10px rgba(0, 210, 255, 0.35), 0 0 22px rgba(0, 210, 255, 0.15);
}

/* ── Lazy preloader ────────────────────── */
.swiper-lazy-preloader {
    --swiper-preloader-color: rgba(255,255,255,.5);
}



.gallery-main-swiper .swiper-slide:not(:first-child){
    display: none;
}
.gallery-thumb-swiper.swiper-container-initialized{
    display: block;
}
.gallery-thumb-wrap{
    position:relative;
}
.gallery-main-swiper.swiper-container-initialized .swiper-slide{
    display: block;
}


/* Before init — mobile default: 2 per row */
.gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-wrapper {
    display: flex;
    gap: 8px;
}

.gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide {
    flex: 0 0 calc(33.333% - 6px);
}

.gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide:nth-child(n+3) {
    display: block;
}

.gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide:nth-child(n+4) {
    display: none;
}

/* 576px — 3 per row */
@media (min-width: 576px) {
    .gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide {
        flex: 0 0 calc(33.333% - 6px);
    }

    .gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide:nth-child(n+3) {
        display: block;
    }

    .gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide:nth-child(n+4) {
        display: none;
    }
}

/* 992px — 4 per row */
@media (min-width: 992px) {
    .gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide {
        flex: 0 0 calc(25% - 6px);
    }

    .gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide:nth-child(n+4) {
        display: block;
    }

    .gallery-thumb-swiper:not(.swiper-container-initialized) .swiper-slide:nth-child(n+5) {
        display: none;
    }
}