/* Basic page resets */
body {
    margin: 0;
    font-family: Arial, sans-serif;
    background-color: #f9f9f9;
    padding: 20px;
}

.gallery-wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

h1 {
    text-align: center;
    color: #1a2e40;
    margin-bottom: 30px;
}

/* THE MAGIC GRID */
.gallery-grid {
    display: grid;
    /* Automatically creates columns that are at least 280px wide */
    grid-template-columns: 1fr;
    gap: 20px; /* Space between the photos */
}

/* The photo containers */
.gallery-item {
    overflow: hidden;
    border-radius: 8px; /* Slightly rounded corners for a modern look */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    background-color: #eee; /* Light gray placeholder while loading */
    aspect-ratio: 3 / 2; /* Forces all images to a uniform shape (change to 1/1 for square) */
}

/* The actual images */
.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Crops the image perfectly into the aspect-ratio box without squeezing */
    display: block;
    transition: transform 0.3s ease;
}

/* Subtle hover effect for desktop users */
@media (hover: hover) {
    .gallery-item img:hover {
        transform: scale(1.05);
    }
}