.universal-product-card{display:flex;flex-direction:column;height:100%;width:100%}.universal-product-card--vertical{flex-direction:column}.universal-product-card--compact .card__title{font-size:.9375rem}.universal-product-card--compact .card__price{font-size:1rem}.universal-product-card--horizontal{flex-direction:column;min-height:auto}@media (width >= 768px){.universal-product-card--horizontal{flex-direction:row;min-height:15rem}.universal-product-card--horizontal .card__image{border-bottom:none;border-right:1px solid var(--color-glass-border-neutral);flex:0 0 15rem;height:auto}.universal-product-card--horizontal .card__content{display:flex;flex:1;flex-direction:column;justify-content:space-between;padding:1.25rem}}@media (width >= 1024px){.universal-product-card--horizontal{min-height:17.5rem}.universal-product-card--horizontal .card__image{flex:0 0 18.75rem}.universal-product-card--horizontal .card__content{padding:1.5rem}.universal-product-card--horizontal .card__options-matrix{flex:1}}.card__sku{color:var(--color-text-muted);font-family:var(--font-body);font-size:.75rem;margin-bottom:.75rem}.card__sku span{color:var(--color-text-secondary);font-weight:600}.card__footer-row{align-items:stretch;display:flex;flex-direction:row;gap:.75rem;margin-top:auto}@media (width >= 1024px){.card__footer-row{gap:1rem}}.card__footer-row .card__quantity{align-items:flex-end;display:flex;flex:0 0 auto;margin:0}@media (width >= 1024px){.card__footer-row .card__quantity{align-self:stretch}}.card__price-actions{align-items:flex-end;display:flex;flex:1;flex-direction:column;gap:.25rem;justify-content:flex-end}.card__price-actions .card__price{align-items:flex-start;display:flex;flex-direction:column;gap:.125rem;margin:0}@media (width >= 1024px){.card__price-actions .card__price{align-items:flex-end}}.card__price-actions .card__actions{display:flex;justify-content:flex-end;margin:0}.universal-product-card .card__price-actions .card__actions .btn.btn--icon{height:2.5rem;padding:.75rem;width:2.5rem}.card__options-matrix{display:flex;flex-flow:row wrap}.card__options-matrix,.card__options-matrix--compact{gap:.5rem;margin-bottom:.75rem}.card__options-matrix--compact .product-option-group__label{font-size:.75rem}.card__options-matrix--compact .product-option-group__variants{gap:.375rem}.product-option-group{background:var(--color-glass-surface);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.375rem;padding:.375rem .5rem}.product-option-group__label{color:var(--color-text-secondary);font-family:var(--font-heading);font-size:.875rem;font-weight:500}.product-option-group__variants{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.product-option-badge{align-items:center;backdrop-filter:blur(8px);background:var(--color-glass-surface);border:1.5px solid var(--color-glass-border-neutral);border-radius:var(--radius-xl);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-family:var(--font-heading);font-size:.875rem;font-weight:500;justify-content:center;overflow:hidden;padding:.25rem .75rem;position:relative;transition:var(--transition-smooth);-webkit-user-select:none;-moz-user-select:none;user-select:none}.product-option-badge--sm{border-radius:var(--radius-lg);font-size:.75rem;padding:.375rem .75rem}.product-option-badge--md{font-size:.875rem;padding:.625rem 1rem}.product-option-badge--active{background:linear-gradient(135deg,var(--color-primary-variant),var(--color-secondary-light));border-color:var(--color-primary-soft);box-shadow:var(--shadow-glass-sm);color:var(--color-glass-bg)}.product-option-badge--disabled{background:var(--color-glass-surface);border-color:var(--color-glass-border-subtle);color:var(--color-text-muted);cursor:not-allowed;opacity:.6;pointer-events:none}.product-option-badge--info{background:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-info);cursor:default}.product-option-info{background:var(--color-glass-muted-solid);border:1.5px solid var(--color-glass-border-subtle);border-radius:var(--radius-xl);color:var(--color-text-secondary);font-size:.875rem;font-weight:500;padding:.25rem .75rem}@media (hover:hover) and (pointer:fine){.product-option-badge:hover:not(.product-option-badge--disabled,.product-option-badge--active){background:var(--color-glass-surface-solid);border-color:var(--color-primary-faint);box-shadow:var(--shadow-glass-md);transform:translateY(-1px)}.product-option-badge--active:hover{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));box-shadow:0 4px 16px var(--color-primary-soft)}.universal-product-card:hover>.card__image img,.universal-product-card:hover>.card__image picture img{transform:scale(1.05)}}.universal-product-card .card__image img{transform:scale(1);transition:transform .25s ease-out;will-change:transform}.universal-product-card.card--compact .card__sku{font-size:.75rem;margin-bottom:.5rem}.universal-product-card.card--compact .card__options-matrix{gap:.5rem;margin-bottom:.67rem}.universal-product-card.card--compact .product-option-group{gap:.375rem}.universal-product-card.card--compact .product-option-group__label{font-size:.6875rem}.universal-product-card.card--compact .product-option-group__variants{gap:.375rem}.card.universal-product-card--vip{background:linear-gradient(135deg,var(--color-vip-bg-gradient-1),var(--color-vip-bg-gradient-2),var(--color-vip-bg-gradient-3));border:1px solid var(--color-vip-border);box-shadow:var(--shadow-vip)}.card.universal-product-card--vip:hover{background:var(--color-vip-light-bg);border-color:var(--color-vip);box-shadow:var(--shadow-vip);transform:translateY(-2px)}.universal-product-card--vip .badge--vip{backdrop-filter:blur(14px);background:linear-gradient(135deg,color-mix(in oklch,var(--color-vip-variant) 15%,transparent),color-mix(in oklch,var(--color-vip-light) 20%,transparent));border-color:var(--color-vip-border);border-top-left-radius:0;border-top-right-radius:0;box-shadow:var(--shadow-glass-sm);color:var(--color-text-primary-light);font-weight:600;left:50%;position:absolute;top:0;transform:translateX(-50%);z-index:10}.badge--min-quantity{backdrop-filter:blur(12px);left:.5rem;position:absolute;top:.5rem;z-index:10}.universal-product-card--vip .card__price-current{color:var(--color-vip-dark);font-weight:700}.universal-product-card--vip .card__price-old{color:var(--color-vip-text);opacity:.7}.universal-product-card--vip .btn--primary{background:linear-gradient(135deg,var(--color-vip-variant),var(--color-vip-light));border-color:var(--color-vip);box-shadow:var(--shadow-vip);color:var(--color-vip-text)}.universal-product-card--vip .btn--primary:hover{background:linear-gradient(135deg,var(--color-vip),var(--color-vip-dark));box-shadow:var(--shadow-vip-hover);color:var(--color-text-primary-light)}.universal-product-card--vip .product-option-badge--active{background:linear-gradient(135deg,var(--color-vip-variant),var(--color-vip-light));border-color:var(--color-vip-border);box-shadow:var(--shadow-glass-sm);color:var(--color-vip-text)}@media (hover:none) and (pointer:coarse){.universal-product-card--vip:hover{background:var(--color-vip-bg);transform:none}}.card__price-current--loyalty{color:var(--color-success-dark);font-weight:700}.card__price-current--sale{color:var(--color-danger);font-weight:700}.card__price-actions .card__price{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.25rem .5rem}@media (width >= 1024px){.card__price-actions .card__price{align-items:center;flex-direction:row;flex-wrap:wrap;justify-content:flex-end}}@media (width <= 640px){.universal-product-card--horizontal{flex-direction:column;min-height:auto}.universal-product-card--horizontal .card__image{border-bottom:1px solid var(--color-glass-border-neutral);border-right:none;flex:none;height:var(--card-image-height-mobile)}.card__sku{font-size:.6875rem;margin-bottom:.5rem}.card__options-matrix{gap:.25rem;margin-bottom:.5rem}.product-option-group{gap:.375rem}.product-option-group__label{font-size:.75rem}.product-option-group__variants{gap:.375rem}.card__footer-row{flex-direction:row;gap:.5rem}.card__footer-row .card__quantity{align-self:stretch;flex:0 0 auto}.card__price-actions{align-items:flex-end;flex-direction:column;gap:.25rem}.card__price-actions,.card__price-actions .card__actions,.card__price-actions .card__price{justify-content:flex-end}}@media (width >= 641px) and (width <= 1024px){.universal-product-card--horizontal{min-height:15rem}.universal-product-card--horizontal .card__image{flex:0 0 15rem}}.universal-product-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}@media (prefers-reduced-motion:reduce){.product-option-badge,.universal-product-card{transition:none}}@media (prefers-contrast:high){.universal-product-card{border-width:3px}.product-option-badge{border-width:2px}.product-option-badge--active{border-color:var(--color-primary);box-shadow:var(--shadow-glass-focus)}}@media (hover:none) and (pointer:coarse){.universal-product-card{min-height:20rem}.universal-product-card .card__actions .btn.btn--icon{min-height:2.75rem;padding:.75rem 1rem}.universal-product-card:hover{background:var(--color-glass-surface-heavy);border-color:var(--color-glass-border-neutral);box-shadow:var(--shadow-glass-sm);transform:none}}.card--loading{opacity:.7;pointer-events:none}.card--loading .card__image{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,var(--color-glass-muted) 0,var(--color-glass-surface) 50%,var(--color-glass-muted) 100%);background-size:200% 100%}.card--loading .product-option-badge{background:var(--color-glass-muted);color:transparent;pointer-events:none}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}.card--updating{opacity:.7;transition:var(--transition-smooth)}.card--updated{animation:updated-pulse .6s ease-out}@keyframes updated-pulse{0%{box-shadow:var(--shadow-glass-sm)}50%{box-shadow:var(--shadow-glass-lg)}to{box-shadow:var(--shadow-glass-sm)}}.card--clickable{cursor:pointer;transition:transform .2s var(--transition-smooth),box-shadow .2s var(--transition-smooth)}.card--clickable:hover{box-shadow:var(--shadow-glass-lg);transform:translateY(-2px)}.card--clickable .add-to-cart-btn,.card--clickable .counter-btn,.card--clickable .packaging-select,.card--clickable .product-option-badge,.card--clickable a,.card--clickable button:not(.card__favorite-btn),.card--clickable input,.card--clickable select{cursor:pointer;position:relative;z-index:1}.card--clickable .card__favorite-btn{cursor:pointer;z-index:3}.card--clickable .product-option-badge--disabled,.card--clickable button:disabled{cursor:not-allowed}.card--clickable input[type=number]{cursor:text}.product-filter{backdrop-filter:var(--blur-sm);background:var(--color-glass-surface-heavy);border:2px solid var(--color-glass-border-neutral);border-radius:var(--radius-card);box-shadow:var(--shadow-glass-sm);overflow:hidden;position:relative;transition:var(--transition-smooth)}.product-filter--sidebar{align-self:flex-start;flex-shrink:0;height:-moz-fit-content;height:fit-content;max-height:calc(100vh - 8rem);min-width:18.5rem;overflow-y:auto;position:sticky;top:1.25rem;width:18.5rem}@media (width <= 63.9375rem){.product-filter--sidebar{bottom:0;box-shadow:var(--shadow-glass-lg);left:0;max-height:100vh;max-width:85vw;position:fixed;top:0;transform:translateX(-100%);transition:var(--transition-smooth);width:20rem;z-index:1000}.product-filter--sidebar.is-open{transform:translateX(0)}}.product-filter--horizontal{margin-bottom:1.5rem;width:100%}.product-filter--compact{border-radius:var(--radius-lg);padding:1rem}.product-filter__header{align-items:center;background:var(--color-glass-surface-full);border-bottom:1px solid var(--color-glass-border-neutral);display:flex;gap:.75rem;justify-content:space-between;padding:.875rem 1rem}.product-filter__close-btn{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;display:none;height:2rem;justify-content:center;padding:0;transition:all var(--transition-smooth);width:2rem}.product-filter__close-btn svg{height:1.25rem;width:1.25rem}.product-filter__close-btn:hover{background:var(--color-glass-surface-heavy);color:var(--color-text-primary)}@media (width <= 1023px){.product-filter__close-btn{display:flex}}.product-filter__title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:1.125rem;font-weight:600;margin:0}.product-filter__reset-btn{align-items:center;background:transparent;border:1px solid var(--color-glass-border-subtle);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem .75rem;transition:var(--transition-smooth)}.product-filter__reset-btn:hover{background:var(--color-glass-surface);border-color:var(--color-primary-faint);color:var(--color-text-primary)}.product-filter__toggle-btn{position:relative}.filter-active-count{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border:2px solid var(--color-glass-bg);border-radius:var(--radius-xl);color:var(--color-glass-bg);display:flex;font-size:.75rem;font-weight:600;height:1.25rem;justify-content:center;position:absolute;right:-.5rem;top:-.5rem;width:1.25rem}.filter-active-count--hidden{display:none}.product-filter__content{padding:.875rem 1rem}.product-filter--compact .product-filter__content{padding:0}.product-filter__panel{max-height:62.5rem;opacity:1;overflow:hidden;transition:var(--transition-smooth)}.product-filter__panel--collapsed{max-height:0;opacity:0;padding:0}.filter-group{border-bottom:1px solid var(--color-glass-border-subtle);margin-bottom:.25rem;padding-bottom:.25rem}.filter-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.filter-group__title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:.875rem;font-weight:600;margin-bottom:.125rem}.filter-group__content{display:flex;flex-direction:column;gap:.125rem}.filter-options-grid{display:grid;gap:.125rem;grid-template-columns:repeat(auto-fit,minmax(4.5rem,1fr))}.filter-options-list{display:flex;flex-direction:column;gap:.125rem}.filter-tag{align-items:center;backdrop-filter:blur(8px);background:var(--color-glass-surface);border:1.5px solid var(--color-glass-border-neutral);border-radius:var(--radius-xl);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-family:var(--font-heading);font-size:.875rem;font-weight:500;justify-content:center;padding:.5rem .875rem;transition:var(--transition-smooth);-webkit-user-select:none;-moz-user-select:none;user-select:none}.filter-tag--xs{border-radius:var(--radius-lg);font-size:.75rem;padding:.375rem .625rem}.filter-tag--active{background:linear-gradient(135deg,var(--color-primary-variant),var(--color-secondary-light));border-color:var(--color-primary-soft);box-shadow:var(--shadow-glass-sm);color:var(--color-glass-bg)}@media (hover:hover) and (pointer:fine){.filter-tag:hover:not(.filter-tag--active){background:var(--color-glass-surface-solid);border-color:var(--color-primary-faint);box-shadow:var(--shadow-glass-md);transform:translateY(-1px)}.filter-tag--active:hover{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));box-shadow:0 4px 16px var(--color-primary-soft)}}.price-range-container{display:flex;flex-direction:column;gap:1.25rem;padding:.5rem 0}.price-range-slider{align-items:center;display:flex;height:2.75rem;padding:0 .75rem;position:relative;width:100%}.price-range-track{backdrop-filter:blur(4px);background:var(--color-glass-surface);border:1px solid var(--color-glass-border-light);border-radius:var(--radius-xs);box-shadow:inset 1px 2px 4px var(--color-paper-carving-dark),inset -1px -1px 2px var(--color-paper-carving-medium);height:.375rem;left:.75rem;position:absolute;width:calc(100% - 1.5rem)}.price-range-fill{background:linear-gradient(90deg,var(--color-primary-variant),var(--color-secondary));border-radius:var(--radius-xs);box-shadow:var(--shadow-price-range-fill);height:.375rem;transition:all .15s var(--ease-smooth)}.price-range-fill,.price-range-thumb{pointer-events:none;position:absolute}.price-range-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;height:100%;left:.75rem;margin:0;width:calc(100% - 1.5rem)}.price-range-thumb::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,var(--color-glass-bg),var(--color-glass-surface-heavy));border:2px solid var(--color-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-glass-sm),0 0 0 3px var(--color-primary-faint);cursor:pointer;height:1.375rem;pointer-events:all;-webkit-transition:all .2s var(--ease-smooth);transition:all .2s var(--ease-smooth);width:1.375rem}.price-range-thumb::-moz-range-thumb{background:linear-gradient(135deg,var(--color-glass-bg),var(--color-glass-surface-heavy));border:2px solid var(--color-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-glass-sm),0 0 0 3px var(--color-primary-faint);cursor:pointer;height:1.375rem;pointer-events:all;-moz-transition:all .2s var(--ease-smooth);transition:all .2s var(--ease-smooth);width:1.375rem}.price-range-thumb::-moz-range-track{background:transparent;border:none}.price-range-thumb::-webkit-slider-thumb:hover{background:linear-gradient(135deg,var(--color-glass-bg),var(--color-glass-surface-full));box-shadow:var(--shadow-glass-md),0 0 0 5px var(--color-primary-soft);transform:scale(1.1)}.price-range-thumb::-moz-range-thumb:hover{background:linear-gradient(135deg,var(--color-glass-bg),var(--color-glass-surface-full));box-shadow:var(--shadow-glass-md),0 0 0 5px var(--color-primary-soft);transform:scale(1.1)}.price-range-thumb::-webkit-slider-thumb:active{background:linear-gradient(135deg,var(--color-primary-faint),var(--color-glass-surface-heavy));box-shadow:var(--shadow-glass-sm),0 0 0 6px var(--color-primary-subtle);transform:scale(1.05)}.price-range-thumb::-moz-range-thumb:active{background:linear-gradient(135deg,var(--color-primary-faint),var(--color-glass-surface-heavy));box-shadow:var(--shadow-glass-sm),0 0 0 6px var(--color-primary-subtle);transform:scale(1.05)}.price-range-thumb:focus{outline:none}.price-range-thumb:focus-visible::-webkit-slider-thumb{border-color:var(--color-primary-dark);box-shadow:var(--shadow-glass-focus),0 0 0 4px var(--color-primary-soft)}.price-range-thumb:focus-visible::-moz-range-thumb{border-color:var(--color-primary-dark);box-shadow:var(--shadow-glass-focus),0 0 0 4px var(--color-primary-soft)}.price-range-thumb--min{z-index:2}.price-range-thumb--max{z-index:1}.price-range-inputs{align-items:center;display:flex;gap:.625rem}.price-range-input-group{display:flex;flex:1;flex-direction:column;gap:.375rem;position:relative}.price-range-label{color:var(--color-text-muted);font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.price-range-input{background:var(--color-glass-surface);border:1px solid var(--color-glass-border);border-radius:var(--radius-sm);box-shadow:inset 2px 3px 8px var(--color-paper-carving-dark),inset -1px -1px 4px var(--color-paper-carving-medium);color:var(--color-text-primary);font-size:.875rem;font-weight:500;padding:.5rem 1.75rem .5rem .625rem;transition:var(--transition-smooth);width:100%}.price-range-input::-webkit-inner-spin-button,.price-range-input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.price-range-input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.price-range-input::-moz-placeholder{color:var(--color-text-muted)}.price-range-input::placeholder{color:var(--color-text-muted)}.price-range-input:hover{background:var(--color-glass-surface-full);border-color:var(--color-glass-border-hover)}.price-range-input:focus{background:var(--color-glass-surface-full);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-faint),inset 2px 3px 8px var(--color-paper-carving-focus);outline:none}.price-range-input:focus-visible{border-color:var(--color-primary);box-shadow:var(--shadow-glass-focus);outline:none}.price-range-currency{bottom:.5rem;color:var(--color-text-muted);font-size:.8125rem;font-weight:500;pointer-events:none;position:absolute;right:.625rem}.price-range-separator{color:var(--color-text-muted);font-size:1rem;font-weight:300;margin:1.25rem .25rem 0}@media (width >= 640px){.price-range-container{gap:1.5rem}.price-range-inputs{gap:.875rem}.price-range-input{font-size:.9375rem;padding:.625rem 2rem .625rem .75rem}.price-range-currency{bottom:.625rem;font-size:.875rem;right:.75rem}.price-range-separator{font-size:1.125rem}}@media (width >= 1024px){.price-range-slider{height:2.5rem}.price-range-inputs{gap:1rem}.price-range-input{padding:.625rem 2.25rem .625rem .875rem}}@media (width >= 1280px){.price-range-container{gap:1.75rem}}@media (width >= 1536px){.price-range-thumb::-webkit-slider-thumb{height:1.5rem;width:1.5rem}.price-range-thumb::-moz-range-thumb{height:1.5rem;width:1.5rem}.price-range-fill,.price-range-track{height:.4375rem}}@media (pointer:coarse){.price-range-thumb::-webkit-slider-thumb{height:1.75rem;width:1.75rem}.price-range-thumb::-moz-range-thumb{height:1.75rem;width:1.75rem}.price-range-slider{height:3rem;padding:0 1rem}.price-range-thumb,.price-range-track{left:1rem;width:calc(100% - 2rem)}.price-range-input{min-height:2.75rem;padding:.75rem 2.25rem .75rem .875rem}}@media (prefers-reduced-motion:reduce){.price-range-fill,.price-range-input,.price-range-thumb::-moz-range-thumb,.price-range-thumb::-webkit-slider-thumb{-webkit-transition:none;-moz-transition:none;transition:none}}@media (prefers-contrast:high){.price-range-track{border-color:var(--color-text-primary);border-width:2px}.price-range-thumb::-webkit-slider-thumb{border-width:3px}.price-range-thumb::-moz-range-thumb{border-width:3px}.price-range-input{border-width:2px}}.filter-options-grid .checkbox-advanced,.filter-options-list .checkbox-advanced{gap:.375rem;margin:.125rem 0;min-height:1.5rem}.filter-options-grid .checkbox-advanced .label,.filter-options-list .checkbox-advanced .label{flex:none;margin-left:0}.filter-option-count{color:var(--color-text-muted);font-size:.75rem;margin-left:.25rem}.filter-quick-options{display:grid;gap:1rem;grid-template-columns:1fr;margin-bottom:1.5rem}.filter-quick-option{display:flex;flex-direction:column;gap:.5rem}.filter-quick-option__title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:.875rem;font-weight:600}.filter-quick-option__content{flex:1}.filter-quick-sort{flex-shrink:0}.filter-compact-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.filter-compact-group{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.filter-compact-label{color:var(--color-text-secondary);font-size:.875rem;font-weight:500;white-space:nowrap}.filter-results-info{flex-shrink:0;margin-left:auto}.product-filter .form-input--sm{min-width:3.75rem}.product-filter__footer{background:var(--color-glass-surface-full);border-top:1px solid var(--color-glass-border-neutral);display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem 1.25rem}.product-filter__footer .btn{flex:1;min-width:0}.product-filter__actions{border-top:1px solid var(--color-glass-border-subtle);display:flex;gap:.75rem;padding-top:1rem}.product-filter__apply-btn{flex:1}.product-filter__clear-btn{flex-shrink:0}.filter-tag:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.filter-tag,.product-filter,.product-filter__panel{transition:none}}@media (prefers-contrast:high){.filter-tag{border-width:2px}.filter-tag--active{border-color:var(--color-primary);box-shadow:var(--shadow-glass-focus)}.product-filter{border-width:3px}}.product-filter--loading{opacity:.7;pointer-events:none}.product-filter--loading .filter-tag{background:var(--color-glass-muted);color:transparent;pointer-events:none}.product-filter--applying{opacity:.8}.product-filter--applied{animation:filter-applied-pulse .4s ease-out}@keyframes filter-applied-pulse{0%{box-shadow:var(--shadow-glass-sm)}50%{box-shadow:var(--shadow-glass-lg);transform:translateY(-2px)}to{box-shadow:var(--shadow-glass-sm);transform:translateY(0)}}@media (pointer:coarse){.filter-tag{min-height:2.75rem;min-width:2.75rem;padding:.625rem 1rem}.filter-tag--xs{min-height:2.375rem;min-width:2.375rem}}.product-filter--sidebar::-webkit-scrollbar{width:6px}.product-filter--sidebar::-webkit-scrollbar-track{background:var(--color-glass-muted);border-radius:var(--radius-xs)}.product-filter--sidebar::-webkit-scrollbar-thumb{background:var(--color-glass-border-neutral);border-radius:var(--radius-xs)}.product-filter--sidebar::-webkit-scrollbar-thumb:hover{background:var(--color-primary-faint)}.product-filter-tab{align-items:center;backdrop-filter:blur(12px);background:var(--color-glass-surface-heavy);border:1px solid var(--color-glass-border-light);border-left:none;border-radius:0 var(--radius-md) var(--radius-md) 0;box-shadow:var(--shadow-glass-md);color:var(--color-text-primary);cursor:pointer;display:none;flex-direction:column;font-size:.75rem;font-weight:600;gap:.375rem;left:0;letter-spacing:.05em;padding:.75rem .5rem;position:fixed;text-transform:uppercase;top:50%;transform:translateY(-50%);transition:all var(--transition-smooth);z-index:999}.product-filter-tab svg{color:var(--color-primary);height:1.25rem;width:1.25rem}.product-filter-tab span{text-orientation:mixed;writing-mode:vertical-rl}.product-filter-tab:hover{background:var(--color-glass-surface-full);box-shadow:var(--shadow-glass-lg);padding-right:.625rem}.product-filter-overlay{backdrop-filter:blur(4px);background:var(--color-glass-backdrop);display:none;inset:0;opacity:0;position:fixed;transition:var(--transition-smooth);z-index:999}.product-filter-overlay.is-visible{display:block;opacity:1}body.filter-open{overflow:hidden}@media (width <= 63.9375rem){.product-filter-tab{display:flex}}@media (width >= 64rem){body .product-filter-overlay,body .product-filter-tab{display:none}}.icon-rotated{transform:rotate(180deg);transition:var(--transition-smooth)}.products-grid--updating{opacity:.7;transform:translateY(10px);transition:var(--transition-smooth)}.product-filter--visible{display:block;opacity:1;transform:translateX(0);transition:opacity var(--transition-smooth),transform var(--transition-smooth);visibility:visible}.product-filter-overlay--visible{display:block;opacity:1;pointer-events:auto;visibility:visible}.rating-stars{align-items:center;display:inline-flex;gap:.25rem}.rating-star{color:var(--color-glass-border-neutral);cursor:default;height:1.25rem;transition:var(--transition-smooth);width:1.25rem}.rating-star svg{display:block;height:100%;width:100%}.rating-star--active{color:var(--color-warning)}.rating-star--half{display:inline-block;position:relative}.rating-star--half svg{display:block;height:100%;width:100%}.rating-star--half .star-base{color:var(--color-glass-border-neutral)}.rating-star--half .star-fill{clip-path:inset(0 50% 0 0);color:var(--color-warning);inset:0;position:absolute}.rating-stars--readonly .rating-star{cursor:default;pointer-events:none}.rating-stars--empty .rating-star{color:var(--color-glass-border-light)}.rating-stars--interactive .rating-star{background:none;border:none;cursor:pointer;margin:0;outline:none;padding:0}.rating-stars--interactive .rating-star--hover,.rating-stars--interactive .rating-star:hover{color:var(--color-warning);transform:scale(1.15)}.rating-stars--interactive .rating-star--highlighted{color:var(--color-warning-muted)}.rating-stars--interactive .rating-star--selected{color:var(--color-warning)}.rating-stars--interactive .rating-star:focus-visible{border-radius:var(--radius-xs);outline:2px solid var(--color-primary);outline-offset:2px}.rating-stars--interactive .rating-star:active{transform:scale(.95)}.rating-stars--sm{gap:.1875rem}.rating-stars--sm .rating-star{height:1rem;width:1rem}.rating-stars--readonly--sm{gap:.1875rem}.rating-stars--readonly--sm .rating-star{cursor:default;height:1rem;pointer-events:none;width:1rem}.rating-stars--lg{gap:.375rem}.rating-stars--lg .rating-star{height:1.75rem;width:1.75rem}.product-rating{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.5rem}.product-rating .rating-stars{flex-shrink:0}.product-rating .rating-value{color:var(--color-text-primary);font-family:var(--font-heading);font-size:.875rem;font-weight:600}.product-rating .rating-value--empty{color:var(--color-text-muted);font-family:var(--font-body);font-size:.875rem;font-weight:400}.product-rating .rating-count,.product-rating .reviews-link{color:var(--color-text-secondary);font-family:var(--font-body);font-size:.875rem}.product-rating .reviews-link{text-decoration:none;transition:var(--transition-smooth)}.product-rating .reviews-link:hover{color:var(--color-primary);text-decoration:underline}.product-rating--empty{opacity:.7}.product-rating--empty .rating-stars{opacity:.5}.product-rating--empty .rating-value{display:none}.reviews-section{margin-top:0}.reviews-summary{background:var(--color-glass-muted);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--space-lg);margin-bottom:var(--space-xl);padding:var(--space-lg)}@media (width >= 640px){.reviews-summary{align-items:flex-start;flex-direction:row;gap:var(--space-2xl)}}.reviews-summary__score{align-items:center;display:flex;flex-direction:column;min-width:7.5rem;text-align:center}.reviews-summary__value{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:1}.reviews-summary__stars,.reviews-summary__value{margin-bottom:var(--space-xs)}.reviews-summary__count{color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm)}.rating-distribution{display:flex;flex:1;flex-direction:column;gap:var(--space-xs)}.rating-distribution__row{align-items:center;display:flex;gap:var(--space-sm)}.rating-distribution__label{align-items:center;color:var(--color-text-secondary);display:flex;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:.125rem;min-width:2rem}.rating-distribution__star{color:var(--color-warning);height:.875rem;width:.875rem}.rating-distribution__bar{background:var(--color-glass-border-neutral);border-radius:var(--radius-xl);flex:1;height:.5rem;overflow:hidden}.rating-distribution__fill{background:var(--color-warning);border-radius:var(--radius-xl);height:100%;transition:width .3s ease;width:var(--fill-width,0)}.rating-distribution__count{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);min-width:2rem;text-align:right}.review-form-container{background:var(--color-glass-surface-heavy);border:1px solid var(--color-glass-border-neutral);border-radius:var(--radius-card);margin-bottom:var(--space-xl);padding:var(--space-lg)}.review-form__title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-lg)}.review-form{display:flex;flex-direction:column;gap:var(--space-base)}.review-form__rating-field,.review-form__rating-label{margin-bottom:var(--space-sm)}.review-form__rating-label{display:block}.review-form__actions{display:flex;justify-content:flex-end;margin-top:var(--space-sm)}.review-form__login-prompt{color:var(--color-text-secondary);padding:var(--space-lg);text-align:center}.review-form__login-prompt a{color:var(--color-primary);font-weight:var(--font-weight-medium);text-decoration:none;transition:var(--transition-smooth)}.review-form__login-prompt a:hover{color:var(--color-primary-dark);text-decoration:underline}.reviews-list{display:flex;flex-direction:column;gap:var(--space-lg)}.reviews-list__pending{margin-bottom:var(--space-lg)}.reviews-list__controls{align-items:center;border-bottom:1px solid var(--color-glass-border-neutral);display:flex;flex-wrap:wrap;gap:var(--space-base);justify-content:space-between;padding-bottom:var(--space-base)}.reviews-list__showing{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm)}.reviews-list__sort{min-width:10rem;width:auto}.reviews-list__items{display:flex;flex-direction:column;gap:var(--space-base)}.review-card{background:var(--color-glass-surface);border:1px solid var(--color-glass-border-neutral);border-radius:var(--radius-card);padding:var(--space-lg);transition:var(--transition-smooth)}.review-card:hover{border-color:var(--color-glass-border-hover);box-shadow:var(--shadow-glass-sm)}.review-card__header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-base);justify-content:space-between;margin-bottom:var(--space-base)}.review-card__author{align-items:flex-start;display:flex;gap:var(--space-sm)}.review-card__avatar{align-items:center;background:var(--color-primary-light-bg);border-radius:var(--radius-xl);color:var(--color-primary);display:flex;flex-shrink:0;font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);height:2.5rem;justify-content:center;text-transform:uppercase;width:2.5rem}.review-card__author-info{display:flex;flex-direction:column;gap:.125rem}.review-card__author-name{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.review-card__date{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm)}.review-card__verified{align-items:center;color:var(--color-success);display:inline-flex;font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);gap:.25rem}.review-card__verified-icon{height:.875rem;width:.875rem}.review-card__rating{flex-shrink:0}.review-card__title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-sm)}.review-card__content{color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin:0;white-space:pre-wrap}.review-card__seller-response{background:var(--color-info-bg);border-left:3px solid var(--color-info);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin-top:var(--space-base);padding:var(--space-base)}.review-card__seller-response-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-sm)}.review-card__seller-response-icon{color:var(--color-info);height:1rem;width:1rem}.review-card__seller-response-label{color:var(--color-info);font-family:var(--font-heading);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.review-card__seller-response-date{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs)}.review-card__seller-response-text{color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);margin:0}.review-card__footer{align-items:center;border-top:1px solid var(--color-glass-border-neutral);display:flex;flex-wrap:wrap;gap:var(--space-base);justify-content:space-between;margin-top:var(--space-base);padding-top:var(--space-base)}.review-card__helpful{align-items:center;display:flex;gap:var(--space-sm)}.review-card__helpful-text{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm)}.review-card__helpful-btns{display:flex;gap:var(--space-xs)}.review-card__helpful-btn{align-items:center;background:transparent;border:1px solid var(--color-glass-border-neutral);border-radius:var(--radius-button);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--font-size-sm);gap:.25rem;padding:var(--space-xs) var(--space-sm);transition:var(--transition-smooth)}.review-card__helpful-btn:hover{background:var(--color-primary-faint);border-color:var(--color-primary);color:var(--color-primary)}.review-card__helpful-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.review-card__helpful-btn--active{background:var(--color-primary-faint);border-color:var(--color-primary);color:var(--color-primary)}.review-card__helpful-icon{height:1rem;width:1rem}.review-card__actions{display:flex;gap:var(--space-sm)}.review-card__delete-btn:hover{border-color:var(--color-error);color:var(--color-error)}.reviews-section .empty-state{background:var(--color-glass-muted);border-radius:var(--radius-card);margin-bottom:var(--space-lg);min-height:auto}.reviews-loading{align-items:center;display:flex;justify-content:center;padding:var(--space-2xl)}.reviews-pagination{display:flex;justify-content:center;margin-top:var(--space-xl)}.reviews-pagination .pagination{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.reviews-pagination .pagination__link{align-items:center;background:var(--color-glass-surface);border:1px solid var(--color-glass-border-neutral);border-radius:var(--radius-button);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--font-size-sm);height:2.5rem;justify-content:center;min-width:2.5rem;padding:0 var(--space-sm);transition:var(--transition-smooth)}.reviews-pagination .pagination__link:hover{background:var(--color-primary-faint);border-color:var(--color-primary);color:var(--color-primary)}.reviews-pagination .pagination__link--active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-light);font-weight:var(--font-weight-semibold);pointer-events:none}@media (width <= 639px){.reviews-section{margin-top:var(--space-xl)}.reviews-summary{gap:var(--space-base);padding:var(--space-base)}.reviews-summary__value{font-size:var(--font-size-2xl)}.review-card,.review-form-container{padding:var(--space-base)}.review-card__header{flex-direction:column;gap:var(--space-sm)}.review-card__footer{align-items:flex-start;flex-direction:column}.review-card__helpful{flex-wrap:wrap;width:100%}}@media (width >= 1280px){.reviews-summary{gap:var(--space-3xl);padding:var(--space-xl)}.reviews-summary__score{min-width:10rem}}.reviews-list .alert{border-radius:var(--radius-card);gap:var(--space-sm);margin:0 0 var(--space-base);padding:var(--space-base)}.reviews-list .alert--info{background:var(--color-info-bg);border:1px solid var(--color-info-border)}.reviews-list .alert--warning{background:var(--color-warning-bg);border:1px solid var(--color-warning-border)}.reviews-list .alert__icon{flex-shrink:0;height:1.25rem;width:1.25rem}.reviews-list .alert--info .alert__icon{color:var(--color-info)}.reviews-list .alert--warning .alert__icon{color:var(--color-warning-alt)}.reviews-list .alert__content{flex:1}.reviews-list .alert__message{font-family:var(--font-body);font-size:var(--font-size-base);margin:0}.reviews-list .alert--info .alert__message{color:var(--color-info)}.reviews-list .alert--warning .alert__message{color:var(--color-warning-alt)}.avatar{align-items:center;background:var(--color-glass-muted);border:2px solid var(--color-glass-border-neutral);border-radius:var(--radius-xl);display:flex;flex-shrink:0;height:3rem;justify-content:center;overflow:hidden;position:relative;width:3rem}.avatar--sm{border-width:1px;height:2rem;width:2rem}.avatar--md{height:3rem;width:3rem}.avatar--lg{height:5rem;width:5rem}.avatar--xl{height:8rem;width:8rem}.image-gallery{width:100%}.image-gallery--grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(15.625rem,1fr))}.image-gallery--masonry{-moz-column-count:3;column-count:3;-moz-column-gap:1rem;column-gap:1rem}@media (width <= 64rem){.image-gallery--masonry{-moz-column-count:2;column-count:2}}@media (width <= 40rem){.image-gallery--masonry{-moz-column-count:1;column-count:1}.image-gallery--grid{grid-template-columns:1fr}}.image-gallery__item{background:var(--color-glass-surface);border:1px solid var(--color-glass-border-neutral);border-radius:var(--radius-card);cursor:pointer;overflow:hidden;position:relative;transition:var(--transition-smooth);-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:1rem}@media (hover:hover) and (pointer:fine){.image-gallery__item:hover{border-color:transparent;box-shadow:var(--shadow-glass-md);transform:translateY(-4px) scale(1.02)}.image-gallery__item:hover .image-gallery__overlay{opacity:1}.image-gallery__item:hover .image-gallery__img{transform:scale(1.05)}}.image-gallery__img{display:block;height:auto;transition:var(--transition-smooth);width:100%}.image-gallery__overlay{backdrop-filter:blur(8px) saturate(120%);background:linear-gradient(180deg,transparent 0,var(--color-black-medium) 60%,var(--color-black-heavy) 100%);display:flex;flex-direction:column;inset:0;justify-content:space-between;opacity:0;padding:1.5rem;position:absolute;transition:var(--transition-smooth)}.image-gallery--grid .image-gallery__item{animation:fadeInUp .6s cubic-bezier(.4,0,.2,1) both}.image-gallery--grid .image-gallery__item:first-child{animation-delay:.05s}.image-gallery--grid .image-gallery__item:nth-child(2){animation-delay:.1s}.image-gallery--grid .image-gallery__item:nth-child(3){animation-delay:.15s}.image-gallery--grid .image-gallery__item:nth-child(4){animation-delay:.2s}.image-gallery--grid .image-gallery__item:nth-child(5){animation-delay:.25s}.image-gallery--grid .image-gallery__item:nth-child(6){animation-delay:.3s}.image-gallery--grid .image-gallery__item:nth-child(7){animation-delay:.35s}.image-gallery--grid .image-gallery__item:nth-child(8){animation-delay:.4s}.image-gallery--grid .image-gallery__item:nth-child(9){animation-delay:.45s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.image-gallery--apple-hero{max-width:100%}.gallery-hero{aspect-ratio:1/1;background:var(--color-glass-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-glass-md);margin-bottom:1rem;overflow:hidden;position:relative;width:100%}.gallery-hero__image-wrapper{height:100%}.gallery-hero__image{opacity:1}.gallery-hero__image--active{opacity:1;z-index:1}.gallery-thumbnail--active{border-color:var(--color-primary);box-shadow:var(--shadow-glass-md)}.lightbox{align-items:center;animation:fadeIn .3s ease;display:none;inset:0;justify-content:center;position:fixed;z-index:10100}.lightbox--active{display:flex}.lightbox__overlay{backdrop-filter:blur(12px);background:var(--color-black-soft);inset:0;position:absolute}.lightbox__content{align-items:center;display:flex;justify-content:center;max-height:90vh;max-width:90vw;position:relative;z-index:1}.lightbox__image{border-radius:var(--radius-card);box-shadow:var(--shadow-glass-xl);cursor:zoom-in;max-height:90vh;max-width:100%;-o-object-fit:contain;object-fit:contain;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1)}.lightbox__close{align-items:center;backdrop-filter:blur(20px) saturate(180%);background:var(--color-lightbox-close-bg);border:.5px solid var(--color-lightbox-close-border);border-radius:var(--radius-xl);color:var(--color-glass-bg);cursor:pointer;display:flex;height:2.25rem;justify-content:center;position:absolute;right:1.5rem;top:1.5rem;transition:var(--transition-smooth);width:2.25rem;z-index:10}.lightbox__close:hover{background:var(--color-lightbox-close-bg-hover);border-color:var(--color-lightbox-close-border-hover);transform:scale(1.08)}.lightbox__close:active{transform:scale(.95)}.lightbox__image--active{opacity:1;transform:translateX(0)}@media (width <= 768px){.lightbox__close{height:2rem;right:1rem;top:1rem;width:2rem}.lightbox__close:hover{transform:none}}.js-lightbox-opening{overflow:hidden}.js-gallery-loading .image-gallery__item{opacity:.6;pointer-events:none}.banner-carousel{background-color:var(--color-surface-secondary);border-radius:0;overflow:hidden;position:relative;width:100%}@media (width >= 1024px){.banner-carousel{border-radius:var(--radius-lg,.75rem)}}.banner-carousel--hero{border-radius:0;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);width:100vw}.banner-carousel--standard{max-width:100%}.banner-carousel__slides{display:flex;transition:transform .5s ease-in-out;will-change:transform}.banner-carousel__slide{flex:0 0 100%;min-height:10rem;position:relative}@media (width >= 640px){.banner-carousel__slide{min-height:12.5rem}}@media (width >= 1024px){.banner-carousel__slide{min-height:15rem}}.banner-carousel__image-wrapper{overflow:hidden;position:relative;width:100%}.banner-carousel__image{display:block;height:auto;-o-object-fit:cover;object-fit:cover;width:100%}.banner-carousel__picture{display:block;line-height:0;width:100%}.banner-carousel__picture--light{display:block}.banner-carousel__picture--dark{height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}[data-theme=dark] .banner-carousel__picture--dark{opacity:1;pointer-events:auto}.banner-single__images{position:relative;width:100%}.banner-single__picture{display:block;line-height:0;width:100%}.banner-single__picture--light{display:block}.banner-single__picture--dark{height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}[data-theme=dark] .banner-single__picture--dark{opacity:1;pointer-events:auto}.banner-carousel__content{display:flex;inset:0;padding:1rem;position:absolute;z-index:2}@media (width >= 640px){.banner-carousel__content{padding:1.5rem}}@media (width >= 1024px){.banner-carousel__content{padding:2rem}}.banner-carousel__content--top-left{align-items:flex-start;justify-content:flex-start}.banner-carousel__content--top-center{align-items:flex-start;justify-content:center;text-align:center}.banner-carousel__content--top-right{align-items:flex-start;justify-content:flex-end;text-align:right}.banner-carousel__content--center-left{align-items:center;justify-content:flex-start}.banner-carousel__content--center{align-items:center;justify-content:center;text-align:center}.banner-carousel__content--center-right{align-items:center;justify-content:flex-end;text-align:right}.banner-carousel__content--bottom-left{align-items:flex-end;justify-content:flex-start}.banner-carousel__content--bottom-center{align-items:flex-end;justify-content:center;text-align:center}.banner-carousel__content--bottom-right{align-items:flex-end;justify-content:flex-end;text-align:right}.banner-carousel__text-box{backdrop-filter:blur(8px);background:var(--color-glass-surface);border-radius:var(--radius-sm,.375rem);box-shadow:var(--shadow-glass-md);max-width:80%;padding:.5rem .625rem}@media (width >= 480px){.banner-carousel__text-box{border-radius:var(--radius-md,.5rem);max-width:75%;padding:.625rem .75rem}}@media (width >= 640px){.banner-carousel__text-box{max-width:70%;padding:1rem}}[data-theme=dark] .banner-carousel__text-box{box-shadow:none}.banner-carousel__text-box--transparent{backdrop-filter:none;background:transparent;box-shadow:none;padding:0}.banner-carousel__text-box--transparent .banner-carousel__description,.banner-carousel__text-box--transparent .banner-carousel__subtitle,.banner-carousel__text-box--transparent .banner-carousel__title{color:var(--color-white);text-shadow:0 1px 3px rgb(0 0 0/.5),0 0 8px rgb(0 0 0/.3)}[data-theme=dark] .banner-carousel__text-box--transparent .banner-carousel__description,[data-theme=dark] .banner-carousel__text-box--transparent .banner-carousel__subtitle,[data-theme=dark] .banner-carousel__text-box--transparent .banner-carousel__title{text-shadow:0 1px 3px rgb(0 0 0/.7),0 0 12px rgb(0 0 0/.5)}.banner-carousel__title{color:var(--color-text-primary);font-size:.8125rem;font-weight:700;line-height:1.15;margin:0 0 .125rem}@media (width >= 480px){.banner-carousel__title{font-size:.9375rem;margin-bottom:.25rem}}@media (width >= 640px){.banner-carousel__title{font-size:1.25rem;line-height:1.2;margin-bottom:.5rem}}[data-theme=dark] .banner-carousel__title{color:var(--color-white);text-shadow:var(--shadow-banner-text)}.banner-carousel__title-accent{color:var(--color-primary)}.banner-carousel__title-default{color:var(--color-text-primary)}[data-theme=dark] .banner-carousel__title-accent{color:var(--color-secondary-light)}[data-theme=dark] .banner-carousel__title-default{color:var(--color-white)}.banner-carousel__subtitle-accent{color:var(--color-primary)}.banner-carousel__subtitle-default{color:var(--color-text-secondary)}[data-theme=dark] .banner-carousel__subtitle-accent{color:var(--color-primary-light)}[data-theme=dark] .banner-carousel__subtitle-default{color:var(--color-white-heavy)}.banner-carousel__subtitle{color:var(--color-text-secondary);font-size:.6875rem;line-height:1.2;margin:0 0 .25rem}@media (width >= 480px){.banner-carousel__subtitle{font-size:.75rem;margin-bottom:.375rem}}@media (width >= 640px){.banner-carousel__subtitle{font-size:.875rem;line-height:1.4;margin-bottom:.75rem}}[data-theme=dark] .banner-carousel__subtitle{color:var(--color-white-heavy)}.banner-carousel__description{color:var(--color-text-muted);display:none;font-size:.75rem;line-height:1.4;margin:0 0 .75rem}@media (width >= 640px){.banner-carousel__description{display:block;font-size:.8125rem;line-height:1.5;margin-bottom:1rem}}[data-theme=dark] .banner-carousel__description{color:var(--color-white-text)}.banner-carousel__text-box .btn{font-size:.6875rem;gap:.25rem;padding:.3125rem .5rem}@media (width >= 480px){.banner-carousel__text-box .btn{font-size:.75rem;gap:.375rem;padding:.375rem .625rem}}@media (width >= 640px){.banner-carousel__text-box .btn{font-size:.875rem;gap:.5rem;padding:.625rem 1rem}}@media (width >= 1024px){.banner-carousel__text-box .btn{font-size:1rem;padding:.75rem 1.5rem}}.banner-carousel__text-box .btn svg{height:.75rem;width:.75rem}@media (width >= 480px){.banner-carousel__text-box .btn svg{height:.875rem;width:.875rem}}@media (width >= 640px){.banner-carousel__text-box .btn svg{height:1rem;width:1rem}}.banner-carousel__dots{bottom:1rem;display:flex;gap:.5rem;left:50%;position:absolute;transform:translateX(-50%);z-index:10}.banner-carousel__dot{background-color:var(--color-white-soft);border:2px solid var(--color-white-border);border-radius:var(--radius-xl);cursor:pointer;height:.625rem;padding:0;transition:all .2s;width:.625rem}.banner-carousel__dot:hover{background-color:var(--color-white-medium)}.banner-carousel__dot--active{background-color:var(--color-white);border-color:var(--color-white);transform:scale(1.2)}.banner-carousel__nav{align-items:center;background-color:var(--color-white-heavy);border:none;border-radius:var(--radius-xl);box-shadow:var(--shadow-banner-nav);cursor:pointer;display:flex;height:2.5rem;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s;width:2.5rem;z-index:10}.banner-carousel__nav:hover{background-color:var(--color-white);box-shadow:var(--shadow-banner-nav-hover)}.banner-carousel__nav--prev{left:1rem}.banner-carousel__nav--next{right:1rem}.banner-carousel__nav-icon{color:var(--color-text-primary);height:1.25rem;width:1.25rem}@media (width <= 767px){.banner-carousel__nav{display:none}}.banner-carousel--promotional{border-radius:var(--radius-lg,.75rem);overflow:hidden}.banner-carousel--promotional .banner-carousel__slide{min-height:9.375rem}.banner-carousel--promotional .banner-carousel__text-box{padding:.75rem}.banner-carousel--promotional .banner-carousel__title{font-size:1rem}@media (width >= 768px){.banner-carousel__content{padding:2rem}.banner-carousel__text-box{max-width:50%;padding:1.5rem}.banner-carousel__title{font-size:1.75rem;margin-bottom:.75rem}.banner-carousel__subtitle{font-size:1rem;margin-bottom:1rem}.banner-carousel__description{font-size:.9375rem}}@media (width >= 1024px){.banner-carousel__slide{min-height:25rem}.banner-carousel__content{padding:3rem}.banner-carousel__text-box{max-width:45%;padding:2rem}.banner-carousel__title{font-size:2.25rem}.banner-carousel__subtitle{font-size:1.125rem}.banner-carousel__description{font-size:1rem}}@media (width >= 1536px){.banner-carousel__slide{min-height:31.25rem}.banner-carousel__content{padding:4rem}.banner-carousel__text-box{max-width:40%}.banner-carousel__title{font-size:2.75rem}.banner-carousel__subtitle{font-size:1.25rem}}.banner-single{border-radius:var(--radius-lg,.75rem);overflow:hidden;position:relative;width:100%}.banner-single--hero{border-radius:0}.banner-single__link{display:block;text-decoration:none}.banner-single__image{display:block;height:auto;-o-object-fit:cover;object-fit:cover;width:100%}.banner-carousel__placeholder,.banner-single__placeholder{align-items:center;background:var(--color-surface-secondary);color:var(--color-text-tertiary);display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:12.5rem}.banner-single--hero .banner-single__placeholder{min-height:18.75rem}@media (width >= 768px){.banner-single--hero .banner-single__placeholder{min-height:25rem}}.banner-single__placeholder-text{color:var(--color-text-tertiary);font-size:var(--text-sm)}.banner-carousel--loading{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-surface-secondary) 25%,var(--color-surface-tertiary) 50%,var(--color-surface-secondary) 75%);background-size:200% 100%;min-height:12.5rem}.banner-carousel__dot:focus-visible,.banner-carousel__nav:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.banner-carousel__slides{transition:none}.banner-carousel--loading{animation:none}}.promo-banners{padding:1rem 1rem 0;width:100%}.promo-banners__grid{display:grid;gap:1rem}.promo-banners__item{border-radius:var(--radius-lg);overflow:hidden}.promo-banners__item .banner-single{height:100%;min-height:12rem}@media (width >= 640px){.promo-banners__item .banner-single{min-height:14rem}}@media (width >= 1024px){.promo-banners__item .banner-single{min-height:16rem}}.promo-banners__item .banner-single__image-wrapper,.promo-banners__item .banner-single__images{aspect-ratio:16/9}.promo-banners__item .banner-single__image{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}@media (width <= 639px){.card__body{padding:1rem}.card__header{padding:1rem 1rem .5rem}.card__footer{padding:.75rem 1rem 1rem}.card__title{display:-webkit-box;font-size:.875rem;line-height:1.25;margin-bottom:.5rem;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card__category{font-size:.6875rem;margin-bottom:.375rem}.card__price{gap:.375rem;margin-bottom:.75rem}.price{font-size:1rem}.price--current{font-size:1.0625rem}.price--old{font-size:.875rem}.card__actions{gap:.5rem}.card__actions .btn{font-size:.8125rem;min-height:2.5rem;padding:.5rem .875rem}.card__image-wrapper{aspect-ratio:1/1;height:auto}.product-options-card__header{margin-bottom:.75rem}.product-options-card__title{font-size:.875rem;line-height:1.3;margin-bottom:.375rem}.product-options-card__sku{font-size:.75rem}.product-options-card__options-matrix{gap:.5rem;margin-bottom:.875rem}.product-option-group{gap:.375rem}.product-option-group__label{font-size:.75rem;margin-bottom:.25rem}.product-options-card__option-btn{font-size:.75rem;min-height:2.25rem;min-width:2.25rem;padding:.375rem .625rem}.product-options-card__footer{gap:.625rem;padding:0}.product-options-card__price{font-size:1.0625rem;font-weight:700}.product-options-card__price-note{font-size:.6875rem}.quantity-counter{gap:.375rem}.quantity-counter__btn{font-size:1rem;height:2rem;width:2rem}.quantity-counter__input{font-size:.875rem;padding:.25rem;width:2.5rem}.product-options-card__info-fields{gap:.5rem;margin-bottom:.75rem;padding:0 1rem}.product-option-info{font-size:.75rem;padding:.25rem .75rem}.product-option-info__label{font-size:.6875rem}.product-option-info__value{font-size:.75rem}}@media (width >= 640px){.card__title{-webkit-line-clamp:3}}@media (hover:none) and (pointer:coarse){.card__actions .btn,.product-options-card__option-btn,.quantity-counter__btn{min-height:2.75rem;min-width:2.75rem}.product-option-group{gap:.5rem}.product-options-card__options-matrix{gap:.625rem}}.product-options-card{background:var(--color-glass-surface);border:1px solid var(--color-glass-border-neutral);border-radius:var(--radius-card);display:flex;flex-direction:column;overflow:hidden;position:relative;transition:var(--transition-smooth)}@media (hover:hover) and (pointer:fine){.product-options-card:hover{border-color:var(--color-glass-border-hover);box-shadow:var(--shadow-glass-md);transform:translateY(-2px)}}.product-options-card--horizontal{flex-direction:row}.product-options-card--compact{padding:.75rem}.product-options-card__image-container{aspect-ratio:1/1;overflow:hidden;position:relative}.product-options-card__image{height:100%;-o-object-fit:contain;object-fit:contain;transition:transform var(--transition-smooth);width:100%}.product-options-card:hover .product-options-card__image{transform:scale(1.03)}.product-options-card__availability-badge{border-radius:var(--radius-badge);font-family:var(--font-heading);font-size:.6875rem;font-weight:600;left:.5rem;letter-spacing:.03em;padding:.25rem .5rem;position:absolute;text-transform:uppercase;top:.5rem}.product-options-card__availability-badge--in-stock{background:var(--color-success-bg);color:var(--color-success-dark)}.product-options-card__availability-badge--out-of-stock{background:var(--color-error-bg);color:var(--color-error-dark)}.product-options-card__availability-badge--sale{background:linear-gradient(135deg,var(--color-error),var(--color-error-dark));color:white}.product-options-card__content{display:flex;flex:1;flex-direction:column;padding:1rem}.product-options-card__header{margin-bottom:1rem}.product-options-card__title{color:var(--color-text-primary);display:-webkit-box;font-family:var(--font-heading);font-size:1.125rem;font-weight:600;line-height:1.3;margin:0 0 .5rem;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-options-card__sku{color:var(--color-text-muted);font-size:.75rem}.product-options-card__options-matrix{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.product-options-card__option-btn{background:var(--color-glass-surface);border:1px solid var(--color-glass-border-neutral);border-radius:var(--radius-button);color:var(--color-text-primary);cursor:pointer;font-size:.8125rem;padding:.375rem .75rem;transition:var(--transition-smooth)}.product-options-card__option-btn:hover{background:var(--color-primary-bg);border-color:var(--color-primary-soft)}.product-options-card__option-btn--selected{background:var(--color-primary-bg);border-color:var(--color-primary);color:var(--color-primary)}.product-options-card__option-btn--unavailable{cursor:not-allowed;opacity:.5}.product-options-card__info-fields{color:var(--color-text-secondary);display:flex;flex-direction:column;font-size:.875rem;gap:.5rem;margin-bottom:1rem}.product-options-card__price{align-items:baseline;color:var(--color-text-primary);display:flex;font-family:var(--font-heading);font-size:1.25rem;font-weight:700;gap:.5rem;margin-bottom:.5rem}.product-options-card__price-note{color:var(--color-text-muted);font-family:var(--font-body);font-size:.75rem;font-weight:400}.product-options-card__footer{margin-top:auto;padding-top:1rem}.product-options-card__actions{display:flex;gap:.5rem}.product-options-card__add-to-cart{flex:1}.product-options-card__description{color:var(--color-text-secondary);display:-webkit-box;font-size:.875rem;line-height:1.5;margin-bottom:1rem;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.product-options-card__footer--column{display:flex;flex-direction:column;gap:.75rem}.product-options-card__footer--column .product-options-card__actions{flex-direction:column}.product-options-card__footer--compact{padding-top:.5rem}.product-options-card__options-matrix--compact{gap:.375rem;margin-bottom:.75rem}.product-options-card__options-matrix--compact .product-options-card__option-btn{font-size:.75rem;padding:.25rem .5rem}.product-options-card__price--old{color:var(--color-text-muted);font-size:.875rem;font-weight:400;text-decoration:line-through}.product-options-card__price--current{color:var(--color-success-dark)}.product-options-card__price--sale{color:var(--color-error);font-weight:700}.product-options-card__price-section{display:flex;flex-direction:column;gap:.25rem}.product-options-card__price-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem}.product-options-card__price-quantity-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.product-options-card__quantity{align-items:center;display:flex;gap:.5rem}.product-options-card__title-link{color:inherit;text-decoration:none;transition:color var(--transition-smooth)}.product-options-card__title-link:hover{color:var(--color-primary)}.virtual-scroller-container{height:100%;overflow:hidden auto;position:relative;will-change:scroll-position;-webkit-overflow-scrolling:touch}.virtual-scroller-viewport{position:relative;transform:translateZ(0);width:100%;will-change:transform}.virtual-scroller-item{contain:layout style paint;left:0;position:absolute;width:100%}.scroll-sentinel{bottom:0;height:1px;pointer-events:none;position:absolute;visibility:hidden;width:100%}.virtual-scroller-loading{align-items:center;color:var(--color-text-secondary);display:flex;font-size:var(--font-size-sm);justify-content:center;padding:var(--space-4)}.virtual-scroller-loading:before{animation:spin .6s linear infinite;border:2px solid var(--color-border);border-radius:var(--radius-xl);border-top-color:var(--color-primary);content:"";display:inline-block;height:1rem;margin-right:var(--space-2);width:1rem}.virtual-scroller-empty{align-items:center;color:var(--color-text-secondary);display:flex;flex-direction:column;justify-content:center;padding:var(--space-8);text-align:center}.virtual-scroller-empty svg{height:4rem;margin-bottom:var(--space-4);opacity:.5;width:4rem}.virtual-scroller-container::-webkit-scrollbar{width:.5rem}.virtual-scroller-container::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:var(--radius-sm)}.virtual-scroller-container::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}.virtual-scroller-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.virtual-scroller-item img{transform:translateZ(0);will-change:transform}.div-table.virtual-scrolling{overflow:visible;position:relative}.div-table.virtual-scrolling .div-table-body{min-height:25rem;overflow:visible;position:relative}.virtual-scroller-item,.virtual-scroller-viewport{backface-visibility:hidden;perspective:1000px}@media (width <= 768px){.virtual-scroller-item{contain:content}.virtual-scroller-container{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){.virtual-scroller-container{scroll-behavior:auto}}.product-specs-table{border-collapse:separate;border-spacing:0;font-family:var(--font-body);width:100%}.product-specs-table tbody tr{border-bottom:1px solid var(--color-glass-border-neutral)}.product-specs-table tbody tr:last-child{border-bottom:none}.product-specs-table td{padding:.75rem .5rem;vertical-align:top}.product-specs-table .spec-label{color:var(--color-text-secondary);font-size:.875rem;font-weight:500;width:40%}.product-specs-table .spec-value{color:var(--color-text-primary);font-size:.875rem;font-weight:400;width:60%}@media (width <= 639px){.product-specs-table tr{border-bottom:1px solid var(--color-glass-border-subtle);display:flex;flex-direction:column;padding:.75rem 0}.product-specs-table tr:last-child{border-bottom:none}.product-specs-table .spec-label,.product-specs-table .spec-value{display:block;padding:0;width:100%}.product-specs-table .spec-label{color:var(--color-text-subtle);font-size:.75rem;font-weight:600;letter-spacing:.05em;padding-bottom:.25rem;text-transform:uppercase}.product-specs-table .spec-value{color:var(--color-text-primary);font-size:.9375rem;font-weight:500;padding-top:0}}@media (width >= 640px) and (width <= 1023px){.product-specs-table .spec-label{width:45%}.product-specs-table .spec-value{width:55%}}.products-masonry{-moz-columns:2;column-count:2;-moz-column-gap:.75rem;column-gap:.75rem;overflow-x:hidden}.products-masonry,.products-masonry__item{box-sizing:border-box;max-width:100%;width:100%}.products-masonry__item{margin-bottom:.75rem;-moz-column-break-inside:avoid;break-inside:avoid;opacity:1;overflow:hidden;page-break-inside:avoid}.products-masonry--animated .products-masonry__item{opacity:0;transform:translateY(20px);transition:var(--transition-smooth)}.products-masonry--animated .products-masonry__item--visible{opacity:1;transform:translateY(0)}.products-masonry--series{-moz-columns:1;column-count:1}@media (width >= 768px){.products-masonry--series{-moz-columns:2;column-count:2}}@media (width <= 479px){.products-masonry{-moz-column-gap:.5rem;column-gap:.5rem}.products-masonry__item{margin-bottom:.5rem}}@media (width >= 1024px) and (width <= 1279px){.products-masonry{-moz-columns:3;column-count:3;-moz-column-gap:1rem;column-gap:1rem}.products-masonry__item{margin-bottom:1rem}}@media (width >= 1280px) and (width <= 1535px){.products-masonry{-moz-columns:4;column-count:4;-moz-column-gap:1rem;column-gap:1rem}.products-masonry__item{margin-bottom:1rem}}@media (width >= 1536px) and (width <= 2559px){.products-masonry{-moz-columns:5;column-count:5;-moz-column-gap:1.25rem;column-gap:1.25rem}.products-masonry__item{margin-bottom:1.25rem}}@media (width >= 2560px) and (width <= 3439px){.products-masonry{-moz-columns:6;column-count:6;-moz-column-gap:1.5rem;column-gap:1.5rem}.products-masonry__item{margin-bottom:1.5rem}}@media (width >= 3440px){.products-masonry{-moz-columns:7;column-count:7;-moz-column-gap:1.5rem;column-gap:1.5rem}.products-masonry__item{margin-bottom:1.5rem}}.products-masonry__item .card--product{display:flex;flex-direction:column;height:auto}.products-masonry__item .card__image{aspect-ratio:1/1;flex-shrink:0;width:100%}.products-masonry__item .card__image img,.products-masonry__item .card__image-img{height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.products-masonry__item .card__content{display:flex;flex:1;flex-direction:column}@media (width <= 639px){.products-masonry__item .card__content{padding:.75rem}}.products-masonry__item .card__actions{margin-top:auto}@media (hover:hover) and (pointer:fine){.products-masonry__item .card--product:hover{transform:translateY(-4px) scale(1.01);z-index:10}}@media (hover:none) and (pointer:coarse){.products-masonry__item .card--product:hover{transform:none}.products-masonry__item .card--product:active{opacity:.95;transform:scale(.98)}}@media (prefers-reduced-motion:reduce){.products-masonry__item{opacity:1;transform:none;transition:none}.products-masonry__item .card--product:hover{transform:none}}.products-masonry__item .card--product:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;z-index:10}.products-masonry--loading{opacity:.6;pointer-events:none}.products-masonry--loading:after{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,transparent,var(--color-glass-surface) 50%,transparent);content:"";inset:0;position:absolute}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.products-masonry--empty{-moz-columns:1;column-count:1;padding:4rem 2rem;text-align:center}.product-grid{box-sizing:border-box;display:grid;gap:var(--space-lg,1rem);grid-template-columns:1fr;max-width:100%;overflow-x:hidden;width:100%}.product-grid--mobile-2col{gap:.75rem;grid-template-columns:repeat(2,1fr)}@media (width >= 48rem){.product-grid{grid-template-columns:repeat(2,1fr)}.product-grid,.product-grid--mobile-2col{gap:var(--space-lg,1rem)}}@media (width >= 64rem){.product-grid,.product-grid--mobile-2col{gap:1.25rem;grid-template-columns:repeat(3,1fr)}}@media (width >= 80rem){.product-grid{gap:1.5rem;grid-template-columns:repeat(4,1fr)}.product-grid--mobile-2col{gap:.75rem;grid-template-columns:repeat(4,1fr)}}@media (width >= 160rem){.product-grid,.product-grid--mobile-2col{gap:1.75rem;grid-template-columns:repeat(5,1fr)}}.product-grid--auto-fit{display:grid;gap:var(--space-lg,1rem);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));width:100%}.product-grid--auto-fit-compact{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));width:100%}@media (width >= 48rem){.product-grid--auto-fit{gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.product-grid--auto-fit-compact{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (width >= 64rem){.product-grid--auto-fit{gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.product-grid--auto-fit-compact{gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}.product-grid--compact{gap:.5rem}@media (width >= 48rem){.product-grid--compact{gap:.75rem}}@media (width >= 64rem){.product-grid--compact{gap:1rem}}.product-grid--spacious{gap:1.5rem}@media (width >= 48rem){.product-grid--spacious{gap:2rem}}@media (width >= 64rem){.product-grid--spacious{gap:2.5rem}}.product-grid--portrait .card__image,.product-grid--portrait .product-grid__item .card__image,.product-grid--square .card__image,.product-grid--square .product-grid__item .card__image,.product-grid--wide .card__image,.product-grid--wide .product-grid__item .card__image{aspect-ratio:1/1;height:auto;width:100%}.product-grid--loading{opacity:.6;pointer-events:none;transition:var(--transition-smooth)}.product-grid .empty-state{grid-column:1/-1}@media (hover:none) and (pointer:coarse){.product-grid,.product-grid--mobile-2col{gap:1rem}.product-grid--compact{gap:.75rem}}@media (prefers-reduced-motion:reduce){.product-grid--loading{transition:none}}.product-grid .card,.product-grid .universal-product-card{display:flex;flex-direction:column;height:100%}.product-grid .card__content{display:flex;flex:1;flex-direction:column}.product-grid .card__actions{margin-top:auto}@media (width >= 160rem){.product-grid,.product-grid--mobile-2col{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));max-width:100%}}@media (width <= 23.4375rem){.product-grid--mobile-2col{gap:.5rem}}.home-page{display:flex;flex-direction:column;gap:1.5rem;width:100%}@media (width >= 640px){.home-page{gap:2rem}}@media (width >= 1024px){.home-page{gap:2.5rem}}@media (width >= 1536px){.home-page{gap:3rem}}.home-page>section{padding-bottom:0;padding-top:0}.home-page>section:first-child{padding-top:0}.home-page>section[class*=bg-gradient]{padding-bottom:3rem;padding-top:3rem}@media (width <= 767px){.home-page>section[class*=bg-gradient]{padding-bottom:2rem;padding-top:2rem}}@media (width >= 1024px){.home-page>section[class*=bg-gradient]{padding-bottom:4rem;padding-top:4rem}}@media (width >= 1536px){.home-page>section[class*=bg-gradient]{padding-bottom:5rem;padding-top:5rem}}.hero-image{aspect-ratio:3/2;-o-object-fit:cover;object-fit:cover;width:100%}@media (prefers-reduced-motion:no-preference){.home-page{scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){.home-page{scroll-behavior:auto}}.category-page,.products-grid{max-width:100%;overflow-x:hidden;width:100%}.products-grid{min-width:0}.products-grid--loading{opacity:.6;pointer-events:none;transition:var(--transition-smooth)}.products-grid--loaded{animation:fadeInUp .3s ease-out;opacity:1}.category-loading-spinner--center{left:50%;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:1000}.infinite-scroll-trigger{height:1px;opacity:0;overflow:hidden;transition:opacity var(--transition-smooth);visibility:hidden}.infinite-scroll-trigger--loading{height:auto;opacity:1;padding:2rem 0;text-align:center;visibility:visible}.infinite-scroll-trigger .loading-spinner{color:var(--color-text-secondary);font-size:.875rem}.category-page .products-grid:has(.empty-state) .products-masonry,body .products-grid:has(.empty-state) .products-masonry{-moz-columns:1;column-count:1;display:block}.products-grid:has(.empty-state) .grid{display:block}.products-grid .empty-state{grid-column:1/-1}.catalog-page{background:var(--color-glass-bg);min-height:100vh}.product-card{background:var(--color-glass-surface);border:1px solid var(--color-glass-border);border-radius:var(--radius-card);overflow:hidden;transition:var(--transition-smooth)}.product-card:hover{box-shadow:var(--shadow-glass-sm);transform:translateY(-2px)}.product-image{aspect-ratio:1;background:var(--color-glass-muted);overflow:hidden;width:100%}.product-image img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.product-info{padding:1rem}.product-name{color:var(--color-text-primary);font-size:.9375rem;font-weight:600;margin-bottom:.5rem}.product-name,.product-price{font-family:var(--font-heading)}.product-price{color:var(--color-primary);font-size:1.125rem;font-weight:700}.brand-card{align-items:center;background:var(--color-glass-surface);border:1px solid var(--color-glass-border);border-radius:var(--radius-card);display:flex;justify-content:center;min-height:6.25rem;padding:1.5rem;text-decoration:none;transition:var(--transition-smooth)}.brand-card:hover{border-color:var(--color-primary-soft);box-shadow:var(--shadow-glass-sm)}.brand-logo{max-height:3.75rem;max-width:100%;-o-object-fit:contain;object-fit:contain}.brand-name-fallback{font-weight:600;text-align:center}.brand-name-fallback,.section-title{color:var(--color-text-primary);font-family:var(--font-heading)}.search-page{background:var(--color-glass-bg);min-height:100vh}.search-header{margin-bottom:var(--space-xl)}.search-header h1{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-sm)}.search-header .results-count{color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-base)}.search-header--vip{background:linear-gradient(135deg,var(--color-warning-bg),var(--color-glass-surface));border:1px solid var(--color-warning-soft);border-radius:var(--radius-lg);margin-bottom:var(--space-xl);padding:var(--space-lg)}.search-header__title--vip{color:var(--color-warning-alt)}.search-header--vip .results-count{color:var(--color-warning)}@media (width >= 768px){.search-header h1{font-size:var(--font-size-3xl)}}@media (width < 40rem){.search-page .product-grid--mobile-2col{gap:1rem;grid-template-columns:1fr}.search-page .products-masonry{-moz-columns:1;column-count:1;-moz-column-gap:0;column-gap:0}.search-page .products-masonry__item{margin-bottom:1rem}.search-page [data-layout=list]{display:none!important}}.product-detail{width:100%}.product-detail__grid{margin-bottom:3rem}.product-detail__title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:1.875rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin-bottom:.75rem}@media (width >= 1024px){.product-detail__title{font-size:2.25rem}}.product-detail__sku{color:var(--color-text-muted);font-size:.875rem}.product-detail__sku span{color:var(--color-text-secondary);font-weight:600}.product-detail__info .card__price{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.product-detail__info .card__price-current{color:var(--color-primary);font-family:var(--font-heading);font-size:1.75rem;font-weight:700;line-height:1.2}.product-detail__info .card__price-old{color:var(--color-text-muted);font-family:var(--font-heading);font-size:1.25rem;font-weight:500;text-decoration:line-through}@media (width >= 1024px){.product-detail__info .card__price-current{font-size:2rem}.product-detail__info .card__price-old{font-size:1.5rem}}.product-detail__actions{margin-top:2rem}.product-detail .btn__icon--lg{height:1.75rem;width:1.75rem}.product-detail__stock-info{color:var(--color-text-secondary);font-size:.875rem}.product-detail__stock-info strong{font-weight:600}.product-detail__tabs{margin-top:3rem}.tab-panels{margin-top:1.5rem}.tab-panel{display:none}.tab-panel.active{animation:fadeIn .3s ease;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.product-detail__section-title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:1.5rem;font-weight:700;margin-bottom:1.5rem}.product-detail__related{margin-top:4rem}.product-detail__placeholder{align-items:center;background:var(--color-glass-muted);border-radius:var(--radius-lg);display:flex;height:100%;justify-content:center;width:100%}.product-detail__placeholder-icon{color:var(--color-text-muted);height:6rem;width:6rem}.product-detail__tab-content{color:var(--color-text-secondary)}.product-detail__tab-heading{color:var(--color-text-primary);font-family:var(--font-heading);font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.product-detail__tab-list{color:var(--color-text-secondary);list-style-position:inside;list-style-type:disc}.product-detail__tab-list li{margin-bottom:.25rem}.image-gallery--apple-hero{margin:0 auto;max-width:37.5rem;width:100%}.gallery-hero__image-wrapper{aspect-ratio:1/1;border:1px solid var(--color-glass-border-neutral);border-radius:var(--radius-lg);overflow:hidden;position:relative;width:100%}.gallery-hero__image{cursor:pointer;height:100%;left:0;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;position:absolute;top:0;transition:var(--transition-smooth);width:100%}.gallery-hero__image-wrapper picture{display:block;height:100%;width:100%}@media (hover:hover) and (pointer:fine){.gallery-hero__image:hover{transform:scale(1.05)}}@media (width <= 639px){.product-detail__actions{flex-direction:column}.image-gallery--apple-hero{max-width:100%}.gallery-hero__image-wrapper{padding-bottom:100%}.product-detail__info .card__footer-row{flex-direction:column;gap:1rem}.product-detail__info .card__quantity{width:100%}.product-detail__info .quantity-counter{justify-content:center;width:100%}.product-detail__info .card__price-actions{flex-direction:column;gap:.75rem;width:100%}.product-detail__info .card__price{justify-content:center;order:1;width:100%}.product-detail__info .card__actions{order:2;width:100%}.product-detail__info .card__actions .btn{justify-content:center;width:100%}.product-detail__info .card__price-current{font-size:1.5rem}.product-detail__info .card__price-old{font-size:1.125rem}}@media (width >= 640px) and (width <= 1023px){.gallery-hero__image-wrapper{padding-bottom:100%}}@media (width >= 1536px){.image-gallery--apple-hero{max-width:43.75rem}}.product-detail__options-matrix{display:flex;flex-direction:column;gap:1rem}.product-detail__options-title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:1.125rem;font-weight:600}@media (width >= 640px){.product-detail__options-matrix{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.product-detail__options-title{grid-column:1/-1}}@media (width >= 1024px){.product-detail__options-matrix{gap:1.25rem;grid-template-columns:repeat(2,1fr)}}@media (width >= 1280px){.product-detail__options-matrix{gap:1.5rem;grid-template-columns:repeat(3,1fr)}}.product-detail--with-options{padding-bottom:2rem}.product-detail--with-options .product-detail__actions{margin-bottom:2rem}.product-detail__gallery{position:relative;width:100%}@media (width >= 1024px){.product-detail__gallery{align-self:start;position:sticky;top:2rem}}.product-detail__info{display:flex;flex-direction:column;gap:1.5rem}.product-detail__min-quantity{align-items:center;background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--radius-md);color:var(--color-warning-dark);display:inline-flex;font-size:.75rem;gap:.375rem;padding:.375rem .75rem}.product-detail__min-quantity svg{color:var(--color-warning);height:.875rem;width:.875rem}.product-description{color:var(--color-text-secondary);font-family:var(--font-body);font-size:.9375rem;line-height:1.6}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.gap-0{gap:0}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-16{gap:4rem}@media (width >= 640px){.sm\:hidden{display:none}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:inline{display:inline}.sm\:inline-block{display:inline-block}.sm\:inline-flex{display:inline-flex}.sm\:grid{display:grid}.sm\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:gap-0{gap:0}.sm\:gap-1{gap:.25rem}.sm\:gap-2{gap:.5rem}.sm\:gap-3{gap:.75rem}.sm\:gap-4{gap:1rem}.sm\:gap-5{gap:1.25rem}.sm\:gap-6{gap:1.5rem}.sm\:gap-8{gap:2rem}.sm\:gap-12{gap:3rem}.sm\:p-0{padding:0}.sm\:p-1{padding:.25rem}.sm\:p-2{padding:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:p-8{padding:2rem}.sm\:p-12{padding:3rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-1{padding-left:.25rem;padding-right:.25rem}.sm\:px-2{padding-left:.5rem;padding-right:.5rem}.sm\:px-3{padding-left:.75rem;padding-right:.75rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:px-12{padding-left:3rem;padding-right:3rem}.sm\:py-0{padding-bottom:0;padding-top:0}.sm\:py-1{padding-bottom:.25rem;padding-top:.25rem}.sm\:py-2{padding-bottom:.5rem;padding-top:.5rem}.sm\:py-3{padding-bottom:.75rem;padding-top:.75rem}.sm\:py-4{padding-bottom:1rem;padding-top:1rem}.sm\:py-5{padding-bottom:1.25rem;padding-top:1.25rem}.sm\:py-6{padding-bottom:1.5rem;padding-top:1.5rem}.sm\:py-8{padding-bottom:2rem;padding-top:2rem}.sm\:py-12{padding-bottom:3rem;padding-top:3rem}.sm\:mt-0{margin-top:0}.sm\:mt-1{margin-top:.25rem}.sm\:mt-2{margin-top:.5rem}.sm\:mt-4{margin-top:1rem}.sm\:mt-6{margin-top:1.5rem}.sm\:mt-8{margin-top:2rem}.sm\:mt-10{margin-top:2.5rem}.sm\:mt-12{margin-top:3rem}.sm\:mt-16{margin-top:4rem}.sm\:mb-0{margin-bottom:0}.sm\:mb-4{margin-bottom:1rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:mb-8{margin-bottom:2rem}.sm\:mb-12{margin-bottom:3rem}.sm\:mb-16{margin-bottom:4rem}.sm\:mx-0{margin-left:0;margin-right:0}.sm\:mx-auto{margin-left:auto;margin-right:auto}.sm\:w-5{width:1.25rem}.sm\:w-16{width:4rem}.sm\:w-20{width:5rem}.sm\:w-full{width:100%}.sm\:w-auto{width:auto}.sm\:h-5{height:1.25rem}.sm\:h-16{height:4rem}.sm\:h-20{height:5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.5}.sm\:text-xl{font-size:1.25rem;line-height:1.5}.sm\:text-3xl{font-size:1.875rem;line-height:1.25}.sm\:text-4xl{font-size:2.25rem;line-height:1.25}.sm\:text-left{text-align:left}.sm\:text-center{text-align:center}.sm\:text-right{text-align:right}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:flex-wrap{flex-wrap:wrap}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:justify-start{justify-content:flex-start}.sm\:justify-center{justify-content:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:justify-around{justify-content:space-around}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}}@media (width >= 768px){.md\:hidden{display:none}.md\:block{display:block}.md\:flex{display:flex}.md\:inline{display:inline}.md\:inline-block{display:inline-block}.md\:inline-flex{display:inline-flex}.md\:grid{display:grid}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-3{grid-column:span 3/span 3}.md\:gap-0{gap:0}.md\:gap-1{gap:.25rem}.md\:gap-2{gap:.5rem}.md\:gap-3{gap:.75rem}.md\:gap-4{gap:1rem}.md\:gap-5{gap:1.25rem}.md\:gap-6{gap:1.5rem}.md\:gap-8{gap:2rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-8{padding-bottom:2rem;padding-top:2rem}.md\:flex-row{flex-direction:row}.md\:flex-col{flex-direction:column}.md\:flex-wrap{flex-wrap:wrap}.md\:flex-nowrap{flex-wrap:nowrap}.md\:justify-start{justify-content:flex-start}.md\:justify-center{justify-content:center}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:items-start{align-items:flex-start}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}}@media (width >= 1024px){.lg\:hidden{display:none}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:inline{display:inline}.lg\:inline-block{display:inline-block}.lg\:inline-flex{display:inline-flex}.lg\:grid{display:grid}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:gap-0{gap:0}.lg\:gap-1{gap:.25rem}.lg\:gap-2{gap:.5rem}.lg\:gap-3{gap:.75rem}.lg\:gap-4{gap:1rem}.lg\:gap-5{gap:1.25rem}.lg\:gap-6{gap:1.5rem}.lg\:gap-8{gap:2rem}.lg\:gap-12{gap:3rem}.lg\:p-6{padding:1.5rem}.lg\:p-8{padding:2rem}.lg\:p-12{padding:3rem}.lg\:px-6{padding-left:1.5rem;padding-right:1.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:px-12{padding-left:3rem;padding-right:3rem}.lg\:py-8{padding-bottom:2rem;padding-top:2rem}.lg\:py-12{padding-top:3rem}.lg\:pb-12,.lg\:py-12{padding-bottom:3rem}.lg\:mt-12{margin-top:3rem}.lg\:mt-16{margin-top:4rem}.lg\:mb-6{margin-bottom:1.5rem}.lg\:mb-8{margin-bottom:2rem}.lg\:mb-12{margin-bottom:3rem}.lg\:mb-16{margin-bottom:4rem}.lg\:mx-0{margin-left:0;margin-right:0}.lg\:mx-auto{margin-left:auto;margin-right:auto}.lg\:w-5\/12{width:41.66667%}.lg\:w-full{width:100%}.lg\:text-2xl{font-size:1.5rem;line-height:1.25}.lg\:text-3xl{font-size:1.875rem;line-height:1.25}.lg\:text-4xl{font-size:2.25rem;line-height:1.25}.lg\:text-5xl{font-size:3rem;line-height:1.25}.lg\:text-left{text-align:left}.lg\:text-center{text-align:center}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:flex-wrap{flex-wrap:wrap}.lg\:flex-nowrap{flex-wrap:nowrap}.lg\:justify-start{justify-content:flex-start}.lg\:justify-center{justify-content:center}.lg\:justify-end{justify-content:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:items-start{align-items:flex-start}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}}@media (width >= 1280px){.xl\:hidden{display:none}.xl\:block{display:block}.xl\:flex{display:flex}.xl\:inline{display:inline}.xl\:inline-block{display:inline-block}.xl\:inline-flex{display:inline-flex}.xl\:grid{display:grid}.xl\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.xl\:col-span-1{grid-column:span 1/span 1}.xl\:col-span-2{grid-column:span 2/span 2}.xl\:gap-0{gap:0}.xl\:gap-1{gap:.25rem}.xl\:gap-2{gap:.5rem}.xl\:gap-3{gap:.75rem}.xl\:gap-4{gap:1rem}.xl\:gap-5{gap:1.25rem}.xl\:gap-6{gap:1.5rem}.xl\:gap-8{gap:2rem}.xl\:px-12{padding-left:3rem;padding-right:3rem}.xl\:mt-16{margin-top:4rem}.xl\:w-2\/5{width:40%}.xl\:text-6xl{font-size:3.75rem;line-height:1}.xl\:flex-row{flex-direction:row}.xl\:flex-col{flex-direction:column}.xl\:flex-wrap{flex-wrap:wrap}.xl\:flex-nowrap{flex-wrap:nowrap}.xl\:justify-start{justify-content:flex-start}.xl\:justify-center{justify-content:center}.xl\:justify-end{justify-content:flex-end}.xl\:justify-between{justify-content:space-between}.xl\:items-start{align-items:flex-start}.xl\:items-center{align-items:center}.xl\:items-end{align-items:flex-end}}