@keyframes heroFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes heroLineExpand{0%{width:0;opacity:0}to{width:4rem;opacity:1}}.hero-title{opacity:0;animation:heroFadeIn .8s cubic-bezier(.2,.8,.2,1) .2s forwards}.hero-line{width:0;opacity:0;animation:heroLineExpand .6s cubic-bezier(.2,.8,.2,1) .6s forwards}.hero-subtitle{opacity:0;animation:heroFadeIn .8s cubic-bezier(.2,.8,.2,1) .8s forwards}.products-mosaic{display:contents}@keyframes productReveal{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.product-card{opacity:0;animation:productReveal .8s cubic-bezier(.2,.8,.2,1) forwards;will-change:transform,opacity}.product-card:first-child{animation-delay:.1s}.product-card:nth-child(2){animation-delay:.2s}.product-card:nth-child(3){animation-delay:.3s}.product-card:nth-child(4){animation-delay:.4s}.product-card:nth-child(5){animation-delay:.5s}.product-card:nth-child(6){animation-delay:.6s}.product-card:nth-child(7){animation-delay:.7s}.product-card:nth-child(8){animation-delay:.8s}.product-card:nth-child(9){animation-delay:.9s}.product-card:nth-child(n+10){animation-delay:1s}.product-card{position:relative;overflow:hidden;border-radius:2px;transition:all .4s cubic-bezier(.2,.8,.2,1);background:white;box-shadow:0 2px 20px rgba(0,0,0,.04)}.product-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,.12)}.product-image-container{position:relative;overflow:hidden;background:#fafafa}.product-image{transition:all .6s cubic-bezier(.2,.8,.2,1);will-change:transform}.product-card:hover .product-image{transform:scale(1.05) rotate(.5deg)}.product-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,transparent 50%,rgba(0,0,0,.8));opacity:0;transition:opacity .4s cubic-bezier(.2,.8,.2,1);display:flex;align-items:flex-end;padding:1.5rem}.product-card:hover .product-overlay{opacity:1}.product-badges{position:absolute;top:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:2}.product-badge{padding:.25rem .75rem;font-size:.75rem;font-weight:500;letter-spacing:.05em;border-radius:1rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);transition:all .3s ease}.product-badge.femme{background:rgba(219,39,119,.1);color:#be185d;border-color:rgba(219,39,119,.2)}.product-badge.homme{background:rgba(59,130,246,.1);color:#1d4ed8;border-color:rgba(59,130,246,.2)}.product-badge.unisex{background:rgba(147,51,234,.1);color:#7c2d12;border-color:rgba(147,51,234,.2)}.product-badge.nouveau{background:rgba(34,197,94,.1);color:#15803d;border-color:rgba(34,197,94,.2)}.product-cta{position:absolute;bottom:0;left:0;right:0;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);padding:1rem;transform:translateY(100%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}.product-card:hover .product-cta{transform:translateY(0)}.product-cta-button{width:100%;padding:.75rem 1rem;background:black;color:white;border:none;font-size:.875rem;font-weight:500;letter-spacing:.05em;cursor:pointer;transition:all .3s ease;border-radius:2px}.product-cta-button:hover{background:#333;transform:translateY(-1px)}.product-cta-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.product-info{padding:1.5rem}.product-category{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}.product-name{font-size:1rem;font-weight:400;color:black;margin-bottom:.75rem;line-height:1.3}.product-price{font-size:1.125rem;font-weight:600;color:black}.filters-sidebar{background:white;border:1px solid #e5e7eb;border-radius:4px;padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,.04);transition:all .3s ease}.filters-title{font-size:1.25rem;font-weight:300;color:black;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb;letter-spacing:.05em}.filter-section,.filters-title{margin-bottom:2rem}.filter-section:last-child{margin-bottom:0}.filter-section-title{font-size:.875rem;font-weight:500;color:black;margin-bottom:1rem;letter-spacing:.05em;text-transform:uppercase}.filter-category-button{display:block;width:100%;text-align:left;padding:.5rem 0;font-size:.875rem;color:#666;background:none;border:none;cursor:pointer;transition:all .3s ease;position:relative}.filter-category-button:after{content:"";position:absolute;bottom:.25rem;left:0;width:0;height:1px;background:black;transition:width .3s cubic-bezier(.2,.8,.2,1)}.filter-category-button.active,.filter-category-button:hover{color:black}.filter-category-button.active:after,.filter-category-button:hover:after{width:2rem}.filter-category-button.active{font-weight:500}.filter-checkbox{display:flex;align-items:center;margin-bottom:.75rem;cursor:pointer;transition:all .3s ease}.filter-checkbox:hover{color:black}.filter-checkbox input[type=checkbox]{appearance:none;width:1rem;height:1rem;border:2px solid #d1d5db;border-radius:2px;margin-right:.75rem;position:relative;cursor:pointer;transition:all .3s ease}.filter-checkbox input[type=checkbox]:checked{background:black;border-color:black}.filter-checkbox input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:white;font-size:.75rem;font-weight:600}.filter-checkbox label{font-size:.875rem;color:#666;cursor:pointer;transition:color .3s ease}.filter-checkbox input[type=checkbox]:checked+label,.filter-checkbox:hover label{color:black}.results-header{opacity:0;animation:heroFadeIn .6s cubic-bezier(.2,.8,.2,1) .4s forwards}.results-count{font-size:.875rem;color:#666;font-weight:400}.sort-select{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:2px;background:white;font-size:.875rem;color:#333;cursor:pointer;transition:all .3s ease}.sort-select:focus,.sort-select:hover{border-color:black;outline:none}.empty-state{opacity:0;animation:heroFadeIn .8s cubic-bezier(.2,.8,.2,1) .6s forwards}.empty-state-icon{color:#d1d5db;margin:0 auto 1rem}.empty-state-title{font-size:1.25rem;color:#666;margin-bottom:1rem}.empty-state-button{color:black;padding-bottom:.125rem;font-size:.875rem;transition:all .3s ease;background:none;border:none;border-bottom:1px solid black;cursor:pointer}.empty-state-button:hover{color:#666;border-bottom-color:#666}.product-breadcrumb{opacity:0;animation:heroFadeIn .6s cubic-bezier(.2,.8,.2,1) .2s forwards}.breadcrumb-link{display:inline-flex;align-items:center;font-size:.875rem;color:#666;transition:color .3s ease;text-decoration:none}.breadcrumb-link:hover{color:black}.product-gallery{opacity:0;animation:heroFadeIn .8s cubic-bezier(.2,.8,.2,1) .4s forwards}.main-image-container{position:relative;overflow:hidden;border-radius:4px;background:#fafafa;cursor:zoom-in}.main-image{transition:transform .4s cubic-bezier(.2,.8,.2,1)}.main-image-container:hover .main-image{transform:scale(1.02)}.thumbnails-container{display:flex;gap:1rem;overflow-x:auto;padding:.5rem 0;scrollbar-width:none;-ms-overflow-style:none}.thumbnails-container::-webkit-scrollbar{display:none}.thumbnail-button{flex-shrink:0;width:5rem;height:5rem;border-radius:4px;overflow:hidden;border:2px solid transparent;transition:all .3s ease;cursor:pointer;background:#fafafa}.thumbnail-button.active{border-color:black}.thumbnail-button:hover{border-color:#666}.thumbnail-image{transition:transform .3s ease}.thumbnail-button:hover .thumbnail-image{transform:scale(1.05)}.product-details{opacity:0;animation:heroFadeIn .8s cubic-bezier(.2,.8,.2,1) .6s forwards}.product-category-detail{font-size:.875rem;color:#666;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}.product-title{font-size:2rem;font-weight:300;color:black;margin-bottom:1rem;line-height:1.2}.product-price-detail{font-size:1.75rem;font-weight:600;color:black;margin-bottom:2rem}.product-description{font-size:1rem;line-height:1.6;color:#333;margin-bottom:2rem}.variants-section{margin-bottom:2rem}.variant-option-title{font-size:1rem;font-weight:500;color:black;margin-bottom:.75rem}.variant-options{display:flex;flex-wrap:wrap;gap:.5rem}.variant-button{padding:.75rem 1.5rem;border:2px solid #e5e7eb;border-radius:2px;background:white;font-size:.875rem;color:#333;cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1)}.variant-button:hover{border-color:#666;color:black}.variant-button.selected{border-color:black;background:black;color:white}.quantity-section{margin-bottom:2rem}.quantity-title{font-size:1rem;font-weight:500;color:black;margin-bottom:.75rem}.quantity-controls{display:inline-flex;border:2px solid #e5e7eb;border-radius:2px;overflow:hidden}.quantity-button{width:3rem;height:3rem;border:none;background:white;color:#333;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.quantity-button:hover:not(:disabled){background:#f5f5f5;color:black}.quantity-button:disabled{opacity:.5;cursor:not-allowed}.quantity-display{width:4rem;height:3rem;border:2px solid #e5e7eb;border-top:none;border-bottom:none;text-align:center;font-size:1rem;font-weight:500;background:white}.stock-warning{font-size:.875rem;color:#f59e0b;margin-top:.5rem}.action-buttons{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}@media (min-width:1024px){.action-buttons{flex-direction:row}}.add-to-cart-button{flex:1;padding:1rem 2rem;background:black;color:white;border:none;border-radius:2px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);display:flex;align-items:center;justify-content:center;gap:.5rem}.add-to-cart-button:hover:not(:disabled){background:#333;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.add-to-cart-button:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.add-to-cart-button.added{background:#10b981}.wishlist-button{flex:1;padding:1rem 2rem;background:white;color:black;border:2px solid black;border-radius:2px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);display:flex;align-items:center;justify-content:center;gap:.5rem}.wishlist-button:hover{background:#f5f5f5;transform:translateY(-1px)}.wishlist-button.added{background:#fef3f2;border-color:#ef4444;color:#ef4444}.services-section{border-top:1px solid #e5e7eb;padding-top:2rem}.service-item{display:flex;align-items:center;margin-bottom:1rem}.service-icon{width:1.5rem;height:1.5rem;margin-right:1rem;flex-shrink:0}.service-icon.delivery{background:#10b981;border-radius:50%}.service-icon.returns{background:#3b82f6;border-radius:50%}.service-text{font-size:.875rem;color:#333}@media (max-width:640px){.products-mosaic{gap:1.5rem}.product-card{grid-column:span 12!important;grid-row:span 1!important}.filters-sidebar{position:fixed;top:0;left:0;right:0;bottom:0;z-index:50;transform:translateX(-100%);transition:transform .4s cubic-bezier(.2,.8,.2,1);border-radius:0}.filters-sidebar.open{transform:translateX(0)}.product-price-detail,.product-title{font-size:1.5rem}.action-buttons{position:sticky;bottom:0;background:white;padding:1rem;border-top:1px solid #e5e7eb;margin:0 -1rem}}.add-to-cart-button,.product-card,.product-image,.variant-button,.wishlist-button{will-change:transform;backface-visibility:hidden}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.product-card:hover{transform:none}.product-image{transform:none!important}}