.cart-link{ width:90%; margin:0 auto; }
.product-container { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; width: 90%; margin: 0 auto; padding: 1rem; }
.product-card { width: calc(25% - 1rem); display: flex; flex-direction: column; align-items: center; text-align: center; background-color: rgba(0, 0, 0, 0.25); border: 1px solid var(--apald-darkpurple); border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.3) 0 5px 15px; padding: 0.75rem; min-height: auto; }
.product-card h3 { font-size: 1.1rem; margin: 0 0 0.3rem; color: var(--apald-honeydew); }
.product-image { max-width: 100%; height: auto; max-height: 150px; object-fit: contain; margin-bottom: 0.3rem; border-radius: 4px; }
.product-description { font-size: 0.8rem; margin: 0 0 0.3rem; color: var(--apald-honeydew); text-indent: 0; }
.product-details { display: flex; flex-wrap: wrap; gap: 0.2rem 0.5rem; font-size: 0.8rem; margin: 0 0 0.3rem; color: var(--apald-honeydew); text-indent: 0; }
.product-details span { white-space: nowrap; }
.product-price { font-size: 0.9rem; font-weight: bold; margin: 0 0 0.3rem; color: var(--apald-honeydew); text-indent: 0; }
.product-form { margin-top: 0.3rem; width: 100%; }
.cart-action { display: flex; gap: 0.5rem; align-items: center; justify-content: center; margin-bottom: 0.3rem; }
.product-quantity { width: 40px; font-size: 0.8rem; background-color: var(--apald-black); border: 1px solid var(--apald-honeydew); border-radius: 4px; color: var(--apald-honeydew); padding: 0.2rem; }
.product-button { display: block; width: 100%; padding: 0.4rem; border: none; border-radius: 4px; color: var(--apald-honeydew); font-family: Montserrat, sans-serif; font-size: 0.8rem; cursor: pointer; box-shadow: rgba(0, 0, 0, 0.3) 0 5px 15px; }
.product-button.add-to-cart { background-image: linear-gradient(var(--apald-litepurple), var(--apald-darkpurple)); }
.product-button.add-to-cart:hover:not(:disabled) { background-color: var(--apald-darkpurple); background-image: none; }
.product-button.add-to-cart:disabled { background-image: linear-gradient(var(--apald-litepurple), var(--apald-darkpurple)); cursor: not-allowed; opacity: 0.7; }
.product-button.buy-now { background-image: linear-gradient(var(--apald-cyan), var(--apald-darkpurple)); }
.product-button.buy-now:hover:not(:disabled) { background-color: var(--apald-darkpurple); background-image: none; }
.product-button.buy-now:disabled { background-image: linear-gradient(var(--apald-cyan), var(--apald-darkpurple)); cursor: not-allowed; opacity: 0.7; }
.no-products { background-color: rgba(0, 0, 0, 0.25); margin: 0.5rem auto; padding: 1rem; text-align: center; width: fit-content; color: var(--apald-honeydew); }

.desktop-filters { display: block; }
.mobile-filters { display: none; }

@media (max-width: 768px) {
  .desktop-filters { display: none; }
  .mobile-filters { display: block; width:90%; margin:0 auto; }
  .collapsible-header { background-color: rgba(0,0,0,0.3); padding: 1.2rem; font-size: 1.4rem; cursor: pointer; user-select: none; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--apald-darkpurple); }
  .collapsible-header .arrow { transition: transform 0.3s; }
  .collapsible-header.active .arrow { transform: rotate(180deg); }
  .collapsible-content { max-height: 0; overflow: hidden; transition: max-height 0.4s ease; background-color: rgba(0,0,0,0.2); padding: 0 1.2rem; font-size: 1.3rem; }
  .collapsible-content.open { max-height: 500px; padding: 1.2rem; }
  .collapsible-content a { display: inline-block; padding: 0.8rem 1rem; }
  .product-card { width: 90%; }
  .product-image { max-height: 200px; }
  .product-card h3 { font-size: 1.5rem; }
  .product-description { font-size: 1.1rem; }
  .product-details { font-size: 1.1rem; }
  .product-price { font-size: 1.6rem; }
  .product-quantity { width: 60px; font-size: 1.2rem; padding: 0.6rem; }
  .product-button { font-size: 1.2rem; padding: 1rem; }
  .cart-action { gap: 1rem; }
}