/* ═══════════════════════════════════════════════════════════════════
   JIP Attractions Grid
   Widget: jip_attractions_grid
   @since 1.5.0
   ═══════════════════════════════════════════════════════════════════ */

.jip-ag {
    max-width: var(--container-max);
    margin-inline: auto;
    padding-inline: var(--container-pad);
}

.jip-ag__title {
    font-size: var(--jip-headline-m) !important;
    margin: 0 0 clamp(24px, 3vw, 40px);
}

.jip-ag__grid {
    display: grid;
    grid-template-columns: repeat(var(--jip-ag-cols, 6), 1fr);
    gap: 16px;
}

.jip-ag__card {
    text-decoration: none;
    display: block;
    background-color: var(--jip-secondary-normal);
    border-radius: 12px;
    overflow: hidden;
}

.jip-ag__img-wrap img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

a.jip-ag__card:hover .jip-ag__img-wrap img {
    transform: scale(1.05);
}

.jip-ag__name {
    text-align: left;
    padding: 12px 12px;
    margin: 0;
    color: var(--jip-dark-normal) !important;
    font-size: var(--jip-paragraph-s) !important;
    font-weight: var(--jip-headline-weight) !important;
    font-variation-settings: "wdth" 100;
    text-transform: var(--jip-headline-case);
    line-height: var(--jip-paragraph-lh);
}

.jip-ag__footer {
    text-align: center;
    padding-top: clamp(24px, 3vw, 40px);
}

.jip-ag__footer a {
    text-decoration: underline;
    text-underline-offset: 3px;
}


/* ── Responsive ── */

@media (max-width: 1024px) {
    .jip-ag__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .jip-ag__grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .jip-ag {
        padding-inline: unset;
    }
}