/* ── Gallery show page hero ──────────────────────────────── */

.gallery-hero__img {
    width: 100%;
    height: 70vh;
    object-fit: cover;
    display: block;
}

.gallery-hero-splide .splide__track {
    height: 70vh;
}

.gallery-hero-splide .splide__slide img {
    width: 100%;
    height: 70vh;
    object-fit: cover;
}

/* ── Info panel ──────────────────────────────────────────── */

.gallery-detail-type {
    font-size: 0.65rem;
    letter-spacing: 0.2em;
    color: var(--bs-secondary);
}

.gallery-detail-title {
    letter-spacing: 0.1em;
    font-size: 1.2rem;
}

.gallery-detail-link {
    color: var(--bs-primary);
}

/* ── Related projects ────────────────────────────────────── */

.gallery-related-heading {
    font-size: 0.75rem;
    letter-spacing: 0.15em;
    color: var(--bs-secondary);
    font-weight: 500;
}

.gallery-related-img {
    height: 220px;
    object-fit: cover;
}

.gallery-related-placeholder {
    height: 220px;
}

.gallery-related-title {
    letter-spacing: 0.05em;
    font-size: 0.7rem;
}

/* ── Splide arrows (default / show page) ─────────────────── */

.splide__arrow {
    background: transparent;
    border: 2px solid var(--bs-secondary);
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
    opacity: 1;
    transition: background 0.2s, border-color 0.2s;
}

.splide__arrow:hover {
    background: var(--bs-secondary);
}

.splide__arrow svg {
    fill: var(--bs-secondary);
    width: 1rem;
    height: 1rem;
}

.splide__arrow:hover svg {
    fill: #fff;
}

@media (max-width: 991.98px) {
    .gallery-hero__img,
    .gallery-hero-splide .splide__track,
    .gallery-hero-splide .splide__slide img {
        height: 50vh;
    }
}
