.advanced-banner-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, auto);
    gap: 15px;
    margin: -7px 0 5px 0; /* This removes the top margin */
}

.grid-item {
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.grid-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0,0,0,0.15);
}

.grid-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Define grid placements based on the image provided */
.item-a { grid-column: 1 / 2; grid-row: 1 / 2; } /* Small Top Left */
.item-b { grid-column: 2 / 4; grid-row: 1 / 2; } /* Wide Top Middle */
.item-c { grid-column: 4 / 5; grid-row: 1 / 3; } /* Tall Top Right */
.item-d { grid-column: 1 / 2; grid-row: 2 / 4; } /* Tall Left */
.item-e { grid-column: 2 / 3; grid-row: 2 / 3; } /* Square Middle */
.item-f { grid-column: 3 / 4; grid-row: 2 / 3; } /* Small Middle */
.item-g { grid-column: 4 / 5; grid-row: 3 / 5; } /* Tall Right */
.item-h { grid-column: 1 / 3; grid-row: 4 / 5; } /* Wide Bottom Left */
.item-i { grid-column: 3 / 4; grid-row: 4 / 5; } /* Small Bottom Middle */

/* Responsive adjustments */
@media (max-width: 992px) {
    .advanced-banner-grid {
        grid-template-columns: repeat(2, 1fr);
        /* Reset grid placements for tablet view - they will stack in order */
        .item-a, .item-b, .item-c, .item-d, .item-e, .item-f, .item-g, .item-h, .item-i {
            grid-column: auto;
            grid-row: auto;
        }
    }
}

@media (max-width: 767px) {
    .advanced-banner-grid {
        grid-template-columns: 1fr;
    }
}