/* ABOUT     */
body {
    font-family: 'Arial Narrow', sans-serif;
    font-size: 16px;
}

h1, h2 {
    text-align: left;
    font-family: 'Arial Narrow', sans-serif;
    font-size: 22px;
}

.custom-list {
    list-style-type: disc;
    padding: 0;
    margin-left: 20px;
}

.custom-list-item {
    margin-bottom: 5px;
}

.image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0); /* Transparent background */
    pointer-events: none; /* Allow interaction with elements beneath the overlay */
    z-index: 2; /* Adjust the z-index to make sure it's above the image */
}

.image-container {
    position: relative;
}

.grid-item {
    position: relative;
}

.grid-item img {
    width: 100%;
    height: auto;
    border-radius: 0px;
    cursor: pointer;
    margin-bottom: 0px;
}

.overlay {
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    visibility: hidden;
    pointer-events: none;
    border-radius: 0px;
    padding: 0px;
}

.overlay img {
    width: 100%;
    height: auto;
    object-fit: contain;
    border-radius: 0px;
}

.grid-item:hover .overlay {
    visibility: visible;
    pointer-events: auto;
}

.more-link {
    position: absolute;
    color: white;
    text-decoration: underline;
    cursor: pointer;
    top: 0;
    left: 0;
    margin: 10px;
    font-size: 12px;
}

.top-large {
    margin-top: 80px;
}

.grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 0px;
}

/* Media query for smaller screens */
@media (max-width: 767px) {
    .small-top {
        margin-top:200px;
    }

    h1, h2 {
        text-align: left;
        font-family: 'Arial Narrow', sans-serif;
        font-size: 22px;
        margin-top: 20px
    }

    .grid-item {
        width: 90%;
        margin-bottom: 20px;
        align-items: center;
        margin-bottom: 0px;
    }

    /* Add styles for the button and hide links by default on smaller screens */
    .w3-hide-medium,
    .w3-hide-large {
        display: none;
    }

    .w3-bar-item {
        padding: 14px 16px !important; /* Adjust padding for better appearance */
    }

    .grid-container {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
        margin-bottom: 0px;
    }

    /* Move sidebar to the left side */
    @media (max-width: 767px) {
        /* Display the button and hide links on smaller screens */
        .w3-hide-small {
            display: none;
        }

        .w3-hide-medium,
        .w3-hide-large {
            display: block;
            width: 100%;
        }

        .w3-bar {
            display: flex; /* Use flexbox for the container */
            flex-direction: column; /* Align items vertically */
            align-items: flex-start; /* Align items to the left */
        }

        .w3-bar-item {
            width: 100%; /* Make sure each item takes the full width */
            box-sizing: border-box; /* Include padding and border in the width */
        }

        /* Position toggleMenu to the right */
        .w3-right {
            text-align: right;
        }
        
        .image-grid {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            margin-top: 160px;
            margin-bottom: 20px;
        }

    }

    .w3-show {
        display: block !important;
    }

    .top-small {
        margin-top: 140px;
    }
}

/* Media query to hide the button when screen width is larger than 767px */
@media screen and (min-width: 768px) {
    .hide-on-large {
        display: none !important; /* Add !important to ensure higher specificity */
    }
}



.grid-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center; /* Center items horizontally */
    text-align: center; /* Center text horizontally */
    margin-bottom: 0px;
}

.square-image {
    width: 100px; /* Set a specific width */
    height: 100px; /* Set a specific height to maintain square proportions */
    background-size: cover;
    background-position: center;
}

.text-description {
    padding: 0px;
}