display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; padding-bottom: 15px; border-bottom: 1px solid var(--gray-border); } .product-count { font-size: 0.9rem; color: #666; } .sort-select { padding: 8px 12px; border: 1px solid var(--gray-border); background: #fff; font-size: 0.9rem; outline: none; cursor: pointer; } /* Responsive Product Grid */ .product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px 20px; } .product-card { position: relative; background: #fff; transition: transform 0.3s ease; } .product-image-container { position: relative; width: 100%; padding-top: 125%; /* 4:5 Aspect Ratio for fashion layouts */ background-color: var(--gray-light); overflow: hidden; margin-bottom: 15px; } .product-image-container img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; } .product-card:hover .product-image-container img { transform: scale(1.05); } .badge { position: absolute; top: 15px; left: 15px; background: var(--accent-color); color: #000; font-size: 0.75rem; font-weight: 600; padding: 4px 10px; text-transform: uppercase; letter-spacing: 1px; z-index: 2; } .quick-add-btn { position: absolute; bottom: 0; left: 0; width: 100%; background: rgba(11, 11, 11, 0.9); color: #fff; text-align: center; padding: 12px; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 1px; font-weight: 500; border: none; cursor: pointer; transform: translateY(100%); transition: transform 0.3s ease; } .product-card:hover .quick-add-btn { transform: translateY(0); } .product-info { text-align: left; } .product-title { font-size: 0.95rem; font-weight: 500; margin-bottom: 5px; color: var(--primary-color); text-decoration: none; display: block; } .product-title:hover { color: var(--accent-color); } .product-price { font-size: 0.95rem; font-weight: 600; } .price-compare { text-decoration: line-through; color: #999; font-weight: 400; margin-left: 8px; font-size: 0.85rem; } /* Newsletter Block */ .newsletter { background: var(--gray-light); padding: 80px 5%; text-align: center; border-top: 1px solid var(--gray-border); } .newsletter h2 { font-size: 2rem; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 15px; font-weight: 400; } .newsletter p { color: #666; margin-bottom: 30px; max-width: 500px; margin-left: auto; margin-right: auto; } .newsletter-form { display: flex; max-width: 500px; margin: 0 auto; border-bottom: 2px solid var(--primary-color); } .newsletter-form input { flex-grow: 1; padding: 12px; border: none; background: transparent; font-size: 1rem; outline: none; } .newsletter-form button { background: transparent; border: none; padding: 0 20px; font-size: 0.9rem; text-transform: uppercase; font-weight: 600; letter-spacing: 1px; cursor: pointer; } /* Footer Layout */ .footer { background: var(--primary-color); color: #fff; padding: 70px 5% 30px 5%; } .footer-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; margin-bottom: 50px; } .footer-col h3 { font-size: 0.9rem; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 25px; font-weight: 600; color: var(--accent-color); } .footer-links { list-style: none; } .footer-links li { margin-bottom: 12px; } .footer-links a { color: #ccc; text-decoration: none; font-size: 0.9rem; transition: color 0.3s ease; } .footer-links a:hover { color: #fff; } .footer-bottom { border-top: 1px solid #222; padding-top: 30px; text-align: center; font-size: 0.8rem; color: #888; } /* Responsive Breakpoints */ @media (max-width: 1100px) { .product-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 900px) { .nav-links { display: none; } .menu-toggle { display: block; } .sidebar { display: none; } /* Hide filtering on mobile for design clarity */ .product-grid { grid-template-columns: repeat(2, 1fr); } .footer-grid { grid-template-columns: repeat(2, 1fr); } .carousel-container { height: 350px; } .carousel-caption h1 { font-size: 2.2rem; } } @media (max-width: 480px) { .product-grid { grid-template-columns: repeat(1, 1fr); } .footer-grid { grid-template-columns: repeat(1, 1fr); } .carousel-container { height: 280px; } }
Free Shipping On Orders Over $250