.boutique-page{max-width:1400px;margin:0 auto;padding:2rem 1.5rem 4rem}.boutique-header{text-align:center;margin-bottom:var(--space-12)}.boutique-breadcrumb{display:flex;justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-gray-400);margin-bottom:var(--space-4)}.boutique-breadcrumb a{color:var(--color-gray-400);text-decoration:none;transition:color var(--transition-fast)}.boutique-breadcrumb a:hover{color:var(--color-accent)}.boutique-title{font-size:var(--text-4xl);font-weight:var(--fw-extrabold);color:var(--color-primary-900);margin:0 0 var(--space-2);letter-spacing:-.02em}.boutique-subtitle{font-size:var(--text-lg);color:var(--color-gray-500);margin:0}.boutique-content{display:grid;grid-template-columns:220px 1fr;grid-gap:var(--space-8);gap:var(--space-8);margin-bottom:var(--space-16)}.boutique-filters{position:-webkit-sticky;position:sticky;top:100px;height:-moz-fit-content;height:fit-content}.filter-section{margin-bottom:var(--space-8)}.filter-section h3{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-gray-700);text-transform:uppercase;letter-spacing:.08em;margin:0 0 var(--space-4)}.filter-options{display:flex;flex-direction:column;gap:var(--space-1)}.filter-btn{background:transparent;border:none;padding:var(--space-2) var(--space-4);text-align:left;font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--color-gray-500);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);font-family:var(--font-sans)}.filter-btn:hover{background:var(--color-gray-100);color:var(--color-gray-900)}.filter-btn.active{background:var(--color-accent);color:#fff}.filter-select{width:100%;padding:var(--space-2) var(--space-4);border:1.5px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-gray-900);background:var(--surface-card);cursor:pointer;font-family:var(--font-sans);transition:border-color var(--transition-fast)}.filter-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.boutique-products{min-height:400px}.products-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-gray-200)}.products-count{font-size:var(--text-sm);color:var(--color-gray-400)}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:var(--space-6);gap:var(--space-6)}.products-empty{text-align:center;padding:4rem 2rem;color:var(--color-gray-500)}.product-card{background:var(--surface-card);border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--color-gray-200);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);cursor:pointer}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-300)}.product-image{position:relative;aspect-ratio:1;background:var(--color-gray-50);display:flex;align-items:center;justify-content:center}.product-placeholder{color:var(--color-gray-400);font-size:var(--text-sm)}.product-badge{position:absolute;top:12px;left:12px;background:var(--color-accent);color:#fff;font-size:var(--text-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em;padding:.3rem .65rem;border-radius:var(--radius-sm)}.product-badge-out{background:var(--color-danger)}.product-info{padding:var(--space-4)}.product-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-primary-900);margin:0 0 var(--space-1)}.product-variant{display:block;font-size:var(--text-xs);color:var(--color-gray-500);margin-bottom:var(--space-2)}.product-price{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--color-primary-900)}.product-sizes{display:flex;gap:var(--space-1);margin-top:var(--space-3);flex-wrap:wrap}.product-size{font-size:var(--text-xs);color:var(--color-gray-500);padding:.2rem .45rem;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm)}.boutique-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:var(--space-6);gap:var(--space-6);margin-bottom:var(--space-12)}.info-card{background:var(--color-primary-50);border:1px solid var(--color-primary-100);border-radius:var(--radius-xl);padding:var(--space-6);text-align:center;transition:box-shadow var(--transition-base)}.info-card:hover{box-shadow:var(--shadow-md)}.info-icon{width:48px;height:48px;background:var(--color-accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4);box-shadow:var(--shadow-blue)}.info-card h4{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--color-primary-900);margin:0 0 var(--space-2)}.info-card p{font-size:var(--text-sm);color:var(--color-gray-500);margin:0;line-height:var(--leading-relaxed)}.boutique-contact{text-align:center;padding:var(--space-8);background:linear-gradient(135deg,var(--color-primary-800) 0,var(--color-primary-700) 100%);border-radius:var(--radius-xl);color:#fff;box-shadow:var(--shadow-lg)}.boutique-contact h3{font-size:var(--text-xl);font-weight:var(--fw-bold);margin:0 0 var(--space-2)}.boutique-contact p{font-size:var(--text-base);color:hsla(0,0%,100%,.75);margin:0}.boutique-contact a{color:#fff;text-decoration:underline;text-underline-offset:3px;font-weight:var(--fw-medium)}.boutique-contact a:hover{color:hsla(0,0%,100%,.85)}@media (max-width:900px){.boutique-content{grid-template-columns:1fr}.boutique-filters{position:static;display:flex;flex-wrap:wrap;gap:var(--space-4);padding:var(--space-4);background:var(--color-gray-50);border-radius:var(--radius-xl);border:1px solid var(--color-gray-200);margin-bottom:var(--space-4)}.filter-section{margin-bottom:0}.filter-options{flex-direction:row;flex-wrap:wrap}.boutique-title{font-size:var(--text-3xl)}}@media (max-width:600px){.boutique-page{padding:1.5rem 1rem 3rem}.boutique-title{font-size:var(--text-2xl)}.products-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.product-info{padding:var(--space-3)}.product-name,.product-variant{font-size:var(--text-xs)}.product-price{font-size:var(--text-sm)}}