.gal__grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: 160px;
    width: 100%;
    gap: 16px;
    margin-bottom: 32px;
}

.gal__item {
    position: relative;
    grid-column: span 1;
    grid-row: span 1;
    border-radius: 16px;
    overflow: hidden;
    background: var(--color-dark-900);
}
.gal__item.is-hidden {
    display: none;
}

.gal__item--large {
    grid-column: span 3;
    grid-row: span 2;
}

.gal__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.gal__item:hover img {
    transform: scale(1.04);
}

.gal__item-caption {
    position: absolute;
    left: 14px;
    bottom: 14px;
    right: 14px;
    padding: 8px 12px;
    border-radius: 8px;
    background: rgba(7, 10, 15, 0.72);
    backdrop-filter: blur(4px);
    color: #fff;
    font-family: var(--font-sans);
    font-size: 13px;
    font-weight: 500;
}

.gal__cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 28px;
    border: 1px solid var(--color-gold-500);
    border-radius: 14px;
    background: none;
    color: var(--color-gold-600);
    font-family: var(--font-sans);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}
.gal__cta svg { width: 17px; height: 17px; }
.gal__cta:hover {
    background: var(--color-gold-500);
    color: #fff;
}

/* ===== Адаптив ===== */

@media (max-width: 1199px) {
    .gal__grid {
        grid-template-columns: repeat(4, 1fr);
        grid-auto-rows: 140px;
    }
    .gal__item {
        grid-column: span 2;
    }
    .gal__item--large {
        grid-column: span 4;
        grid-row: span 2;
    }
}

@media (max-width: 640px) {
    .gal__grid {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 140px;
    }
    .gal__item {
        grid-column: span 1;
    }
    .gal__item--large {
        grid-column: span 2;
        grid-row: span 2;
    }
}
