.work { margin-left: auto; margin-right: auto; margin-top: auto; position: relative; z-index: 2; } /* Ensures the description text doesn't overflow */ .project-description { word-wrap: break-word; margin-bottom: 8px; padding-top: 10px; padding-bottom: 10px; } /* Ensure the card has padding at the bottom */ .project-image-container { position: relative; cursor: pointer; display: block; transition: opacity 0.3s ease-in-out; pointer-events: auto; } /* Project image styling */ .project-image { width: 100%; height: auto; transition: opacity 0.3s ease-in-out; } .project-image-container:hover .project-image { opacity: 0.4; } /* Overlay effect on hover */ .project-image-container::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.4); z-index: 5; opacity: 0; transition: opacity 0.3s ease-in-out; pointer-events: none; } .project-image-container:hover::before { opacity: 0.4; } /* Ensure the eye icon appears with a transition */ .eye-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 10; opacity: 0; /* Initially invisible */ pointer-events: none; transition: opacity 0.5s ease 0.5s; /* Add a delay and ensure gradual transition */ } .eye-icon img { width: 3rem; height: 3rem; border-radius: 50%; background-color: rgba(0, 0, 0, 0.8); padding: 0.6rem; box-shadow: 0 0 8px rgba(0, 0, 0, 0.4); } /* Apply the hover effect and reveal the eye icon gradually */ .project-image-container:hover .eye-icon { opacity: 1; /* Change the opacity on hover */ } /* Project tech/tool icon container */ .tech-tools-container { position: absolute; left: 50%; transform: translateX(-50%); top: 0; background-color: rgba(0, 0, 0, 0.92); padding: 8px; border-radius: 0 0 10px 10px; display: flex; gap: 8px; z-index: 15; } /* Tags styling: Adjust positioning */ .tag-container { position: absolute; bottom: 0; left: 10px; display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-start; max-width: calc(100% - 20px); /* Prevent overflow */ padding-bottom: 10px; /* Adds padding inside */ z-index: 10; } /* Individual tag styling */ .tag { background-color: #4a4a4a; color: #d4d4d4; font-size: 0.9rem; padding: 6px 14px; border-radius: 5px; display: inline-flex; align-items: center; } .tag:hover { background-color: #6a6a6a; }