
/** {
    border: 2px solid red;
}*/

.shop-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: var(--primary-colour);
    color: var(--secondary-colour);
    margin-top: -13rem;
    padding: 22rem 1rem 5rem 1rem;
}

.product-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start; /* Align items to the left */
    gap: 20px;
    margin-bottom: 3rem;
    width: 100%;
    max-width: 1200px;
}

.product {
    width: calc(25% - 40px); /* 4 per row, fixed width */
    text-align: center;
    margin: 0.5rem;
}

/* Target the anchor when it *is* the product element */
a.product,
a.product:link,
a.product:visited {
  display: block;     
  text-decoration: none;   
  color: inherit;          
}

a.product:hover,
a.product:focus {
  text-decoration: none;
  transform: translateY(-2px);
  transition: transform .12s ease;
}

a.product h2,
a.product p {
  text-decoration: none;
  color: inherit;
}

a.product:focus {
  outline: 3px solid rgba(0,123,255,0.15);
  outline-offset: 3px;
}

.product-image {
    width: auto;
    height: 15rem;
    object-fit: cover;
}

.product-title {
    font-size: var(--text-font-size);
    margin-top: 10px;
}

.product-price {
    font-size: 18px;
    color: white;
    margin-top: 5px;
}

@media (max-width: 1280px) {

    .shop-container {
        padding-top: 25rem;
    }

    .product {
        width: calc(33.33% - 40px);
    }

    .product-image {
        width: 80%;
        height: auto;
    }

}

@media (max-width: 768px) {

    .shop-container {
        padding-top: 23rem;
    }

    .product {
        width: calc(50% - 40px);
    }
}

@media (max-width: 480px) {

    .product {
        width: 100%;
    }

    .product-image {
        width: 60%;
    }

}
