body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

header {
    background: #333;
    color: #fff;
    padding: 10px 0;
    text-align: center;
}

header h1, header p {
    margin: 0;
}

section {
    padding: 10px;
}

.img-clickable {
    cursor: pointer; /* Change cursor to pointer to indicate it's clickable */
    transition: transform 0.2s ease, box-shadow 0.2s ease, border 0.2s ease; /* Smooth transitions for scaling, shadow, and border */
    border: 2px solid transparent; /* Default transparent border */
    border-radius: 8px; /* Rounded corners for aesthetics */
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6); /* Add a shadow effect on hover */
   
}

#bio {
    display: flex;
    align-items: flex-start; /* Align items to the start */
    gap: 20px; /* Space between image and text */
}

#bio img {
    width: 150px;
    height: auto;
    display: block;
    margin: 0; /* Remove the margin so it aligns with the text */
}

#projects {
    margin-top: 0px;
}

#experience-education {
    margin-top: 20px;
}

.categories {
    display: flex;
    justify-content: space-between; /* Space out buttons evenly */
    flex-wrap: wrap; /* Allow items to wrap on smaller screens */
    margin-bottom: 20px;
}

.categories button {
    border: none;
    background: none;
    padding: 0;
    flex: 1 1 calc(20% - 20px); /* Allow buttons to take up 20% of the container width */
    text-align: center; /* Center titles and images */
    margin: 10px; /* Add margin between buttons */
    display: flex; /* Use flexbox to align content */
    flex-direction: column; /* Stack title above the image */
    align-items: center; /* Center items horizontally */
    cursor: pointer; /* Change cursor to pointer on hover */
    transition: background 0.3s, transform 0.2s; /* Smooth transition for background and transform */
    padding: 10px; /* Padding for better touch area */
}

.categories button:hover {
    background: rgba(0, 0, 0, 0.1); /* Light background on hover */
    transform: scale(1.05); /* Slightly enlarge the button on hover */
}

.image-title {
    font-weight: bold;
    margin-bottom: 8px; /* Space between title and image */
    text-align: center; /* Center the title text */
}

.categories img {
    width: 100%; /* Make images responsive */
    max-height: 150px; /* Set a maximum height to maintain aspect ratio */
    height: auto; /* Allow height to adjust based on width */
    object-fit: contain; /* Scale image to fit the container while maintaining aspect ratio */
}

.panel {
    padding: 0 18px;
    background-color: white;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}

.project {
    display: flex;
    align-items: flex-start;
    margin-bottom: 50px;
}

.project img {
    margin-right: 20px;
    width: 150px;
    height: auto;
}

.project div {
    flex: 1;
}

.project h4 {
    margin: 0 0 10px 0;
}

.project p {
    margin: 0 0 10px 0;
}

.project-images {
    display: flex;
    gap: 10px;
}

.project-images img {
    width: 150px;
    height: auto;
}

footer {
    background: #333;
    color: #fff;
    text-align: center;
    padding: 10px 0;
    /* position: fixed; */
    width: 100%;
    bottom: 0;
}

.space {
    margin: 20px;
}

/* zoom */
.zoom-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity 0.3s ease;
}

.zoom-overlay img {
    max-width: 95%;
    max-height: 95%;
    transition: transform 0.3s ease;
}

.zoom-overlay.visible {
    visibility: visible;
    opacity: 1;
}

/* Media Query for smaller screens */
@media (max-width: 800px) {
    .categories button {
        flex: 1 1 calc(45% - 20px); /* Adjust button width for smaller screens */
    }

    #bio {
        flex-direction: column;
        align-items: center;
    }

    #bio img {
        margin-bottom: 20px;
    }
}
