/* Reset and box-sizing */ * { margin: 0; padding: 0; box-sizing: border-box; } /* General Styles */ body { font-family: Arial, sans-serif; background-color: #282c34; color: #ffffff; margin: 0; } header { background-color: #4CAF50; color: white; text-align: center; padding: 1em 0; font-size: 1.5rem; } footer { background-color: #333; color: white; text-align: center; padding: 1em 0; margin-top: 20px; } /* Grid Styles */ .grid-container { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; /* Space between items */ padding: 20px; /* Space around the grid */ } /* Game Item */ .item { position: relative; background-color: #444; border-radius: 10px; overflow: hidden; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease; width: 100%; /* Ensure it takes full width of the column */ height: 400px; /* Set a fixed height for all items */ display: flex; flex-direction: column; /* Stack children vertically */ } /* Ensure the image takes the top part of the card */ .item img { width: 100%; height: 100%; /* Set a height for the image */ object-fit: cover; } .item .description { padding: 30px; font-size: 1rem; color: #ddd; background-color: rgba(0, 0, 0, 0.5); border-radius: 0 0 10px 10px; flex-grow: 1; /* Allow description to take remaining space */ } p { text-decoration: none; } /* Hover effect for scaling and glowing */ .item:hover { transform: scale(1.05); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4); filter: brightness(1.2); } .item:hover img { transform: scale(1.1); /* Slight zoom-in effect for the image */ filter: brightness(1.1); /* Increase image brightness */ } .item h2 { position: absolute; top: 10%; left: 50%; transform: translateX(-50%); color: white; font-size: 1.5rem; background-color: rgba(0, 0, 0, 0.6); padding: 5px 15px; border-radius: 5px; text-align: center; opacity: 0; transition: opacity 0.3s ease, transform 0.3s ease; } .item:hover h2 { opacity: 1; transform: translateX(-50%) translateY(-10px); /* Move the title upwards with hover */ } /* Mobile Optimization */ @media (max-width: 600px) { header { font-size: 1.2rem; } .item { height: auto; /* Allow auto height on mobile for better responsiveness */ width: auto; } .grid-container{ grid-template-columns: repeat(1, 1fr); } }