/* Disalin dari resources/views/gallery.blade.php situs lama */
.gallery-page {
        background: #f7faf8;
    }

    .gallery-page .gallery-list {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 24px;
    }

    .gallery-page .gallery-card {
        overflow: hidden;
        margin: 0;
        border: 1px solid #dfeae5;
        border-radius: 18px;
        background: #fff;
        box-shadow: 0 14px 32px rgba(23, 50, 45, .06);
        transition: transform .2s ease, box-shadow .2s ease;
    }

    .gallery-page .gallery-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 20px 38px rgba(23, 50, 45, .11);
    }

    .gallery-page .gallery-media {
        display: block;
        aspect-ratio: 3 / 2;
        overflow: hidden;
        background: #edf3f0;
    }

    .gallery-page .gallery-media img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform .35s ease;
    }

    .gallery-page .gallery-card:hover .gallery-media img {
        transform: scale(1.04);
    }

    .gallery-page .gallery-caption {
        min-height: 104px;
        padding: 17px 18px 19px;
    }

    .gallery-page .gallery-category {
        display: inline-flex;
        align-items: center;
        min-height: 24px;
        padding: 3px 9px;
        border-radius: 999px;
        background: #e9f5f1;
        color: #00715d;
        font-size: .68rem;
        font-weight: 700;
        letter-spacing: .08em;
        line-height: 1.2;
        text-transform: uppercase;
    }

    .gallery-page .gallery-caption h2 {
        margin: 10px 0 0;
        color: #17322d;
        font-size: 1.05rem;
        font-weight: 600;
        line-height: 1.4;
    }

    .gallery-page .gallery-empty {
        padding: 68px 24px;
        border: 1px dashed #c8ddd5;
        border-radius: 18px;
        background: #fff;
        color: #6d7d78;
        text-align: center;
    }

    .gallery-page .gallery-empty i {
        display: block;
        margin-bottom: 14px;
        color: #00715d;
        font-size: 2rem;
    }

    .gallery-page .gallery-empty p {
        margin: 0;
    }

    @media (max-width: 991.98px) {
        .gallery-page .gallery-list {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    @media (max-width: 575.98px) {
        .gallery-page .gallery-list {
            grid-template-columns: 1fr;
        }
    }

    @media (prefers-reduced-motion: reduce) {
        .gallery-page .gallery-card,
        .gallery-page .gallery-media img {
            transition: none;
        }
    }
