@charset "UTF-8";
/* CSS Document */

.container {
    display: flex;
    /* justify-content: space-between; */
    justify-content: center;
    flex-wrap: wrap;
    width: 100%; /* Use full viewport width */
    /* background: #eee; */
    margin: 10px 0; /* Remove auto side margins */
    /* padding: 0 10px; /* Add 10px padding to match block margins */
    padding: 0px;
    position: relative;
    text-align: center;
    font-family: sans-serif;
    color: #000;
    box-sizing: border-box;
}
.container a, .container a:hover, .container a:visited, .container .overlay {
    color: #000;
}
.block {
    width: calc(25% - 20px); /* Adjust for 10px padding + 10px margins */
    margin: 10px 10px;
    overflow: hidden;
    box-sizing: border-box;
    position: relative;
    border-radius: 5px;
}
.block::before {
    content: '';
    display: block;
    padding-bottom: 56.25%; /* 9/16 for 16:9 aspect ratio */
}
.block a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
}
.block img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Scale image to cover entire div */
    display: block; /* Remove any default image spacing */
    object-position: center; /* Center image horizontally and vertically */
}
.overlay {
    position: absolute;
    top: 0;
    left: 0;
    min-width: calc(100% - 1em); /* fill width - padding */
    max-width: calc(100% - 1em); /* fill width - padding */
    padding: .5em;
    flex-wrap: wrap;
    background: rgba(255, 255, 255, 0.75);
    opacity: 0;
    transition: opacity 0.3s ease;
}
.block a:hover .overlay {
    opacity: 1;
}
.block a:hover img {
    filter: brightness(50%); /* Darkens the image to 70% of its original brightness */
    transition: opacity 0.3s ease;
}