*, *::before, *::after { box-sizing: border-box; }   :root { --background-color: #f8f9fa; --text-color: #333; --banner-background: linear-gradient(90deg, #007bff, #009cfd); --card-background: #fff; --card-shadow: rgba(0, 0, 0, 0.1); --banner-text-color: #fff; --link-color: #007bff; --button-background: #007bff; --button-text-color: #fff; }  body { background-color: var(--background-color); color: var(--text-color); font-family: 'Poppins', sans-serif; }  .category-row { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; justify-items: center;  }  .category-card { background-color: var(--card-background); box-shadow: 0 4px 8px var(--card-shadow); overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease; display: flex; flex-direction: column; width: 100%;  } .category-card:hover { transform: translateY(-5px); box-shadow: 0 6px 12px var(--card-shadow); }  .category-card .img-wrapper { width: 100%; padding-top: 56.25%;  position: relative; overflow: hidden; }  .category-card .img-wrapper img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }  .category-card a { text-decoration: none; color: inherit; flex-grow: 1; display: flex; flex-direction: column; }  .category-card a:hover { text-decoration: none; color: inherit; }  .category-card .category-name { font-size: 1.1rem; font-weight: bold; text-align: center; color: var(--text-color); padding: 10px 0; margin: 0; border-top: 1px solid #ccc; flex-shrink: 0; }  @media (max-width: 1024px) { .category-row { grid-template-columns: repeat(2, 1fr); gap: 8px; }  .category-card .category-name { font-size: 1rem; padding: 8px 0; } }  @media (min-width: 1024px) { .category-row { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; justify-items: center; }  .category-card { max-width: 310px; } }