* {
    box-sizing: border-box;
}

body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

img {
    display: block;
    object-fit: cover;
}

h2 {
    text-align: center;
    font-size: 2.6rem;
    text-wrap: pretty;
}

body section {
    padding: 40px 20px;
}

.gallery-inline {
    text-align: center;
}

.gallery-inline img {
    display: inline-block;
    width: 270px;
    height: 160px;
}

.gallery-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.gallery-flex img {
    width: 100%;
    height: 250px;
}

.gallery-flex img:nth-child(3),
.gallery-flex img:nth-child(4),
.gallery-flex img:nth-child(8),
.gallery-flex img:nth-child(9)
.gallery-flex img:nth-child(10),
.gallery-flex img:nth-child(11),
.gallery-flex img:nth-child(15) {
    flex: 1;
    width: 50%;
}

.gallery-grid {
    display: grid;
    grid-template-columns:
    repeat(auto-fill, minmax(250px, 1fr));
    gap: 10px;
    grid-auto-rows: 300px;
}

.gallery-grid img {
    width: 100%;
    height: 100%;
}


@media (min-width: 800px) {
    .gallery-grid img:nth-child(1) {
        grid-column: span 2;
    }

    .gallery-grid img:nth-child(5) {
        grid-row: span 2;
    }

    .gallery-grid img:nth-child(6) {
        grid-column: span 2;
    }
}