@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=Montserrat:wght@400;500&display=swap";.language-switcher{display:flex;gap:4px;margin-inline-start:0;margin-top:10px;justify-content:center}.language-btn{background:none;border:none;color:var(--secondary-color);padding:6px 10px;border-radius:var(--border-radius);font-size:12px;font-weight:500;cursor:pointer;transition:background-color var(--duration-slow) ease,color var(--duration-slow) ease;display:flex;align-items:center;gap:4px;position:relative}.language-btn:hover,.language-btn.active{background-color:#ffffff1a;color:var(--white-color)}.language-btn.active:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:60%;height:3px;background-color:var(--accent-color);border-radius:2px}.language-btn:focus-visible{outline:2px solid var(--white-color);outline-offset:2px}.language-btn .flag{font-size:16px}.language-btn .language-code{font-weight:500}@media(min-width:768px){.language-switcher{margin-top:0;justify-content:flex-start}.language-btn .flag{font-size:14px}}.theme-slider{--theme-slider-step: 30px;display:flex;align-items:center;position:relative;background-color:var(--theme-slider-bg);border-radius:var(--radius-pill);padding:3px;gap:0}.theme-slider-option{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:30px;height:28px;border-radius:var(--radius-pill);position:relative;z-index:1;color:var(--theme-slider-icon);transition:color var(--duration-normal) ease}.theme-slider-option:hover{color:var(--theme-slider-icon-hover)}.theme-slider-option.active{color:var(--theme-slider-icon-active)}.theme-slider-icon{width:16px;height:16px}.theme-slider-indicator{position:absolute;top:50%;left:4px;width:28px;height:26px;background-color:var(--theme-slider-indicator);border-radius:var(--radius-pill);transition:transform var(--duration-slow) ease,opacity var(--duration-normal) ease;z-index:0}.theme-slider:hover .theme-slider-indicator{opacity:0}.toast-container{position:fixed;top:80px;right:10px;left:10px;z-index:10000;display:flex;flex-direction:column;gap:10px;max-width:none;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);background-color:var(--white-color);border-left:4px solid;animation:toastSlideIn var(--duration-slow) ease forwards;pointer-events:auto}.toast-success{border-left-color:var(--color-success)}.toast-error{border-left-color:var(--color-danger)}.toast-warning{border-left-color:var(--color-warning)}.toast-info{border-left-color:var(--accent-color)}.toast-icon{font-size:1.1rem;font-weight:700;flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--white-color)}.toast-success .toast-icon{background-color:var(--color-success)}.toast-error .toast-icon{background-color:var(--color-danger)}.toast-warning .toast-icon{background-color:var(--color-warning);color:var(--color-gray-800)}.toast-info .toast-icon{background-color:var(--accent-color)}.toast-message{flex:1;font-size:.9rem;color:var(--text-color);line-height:1.4}.toast-close{all:unset;cursor:pointer;font-size:.85rem;color:var(--color-gray-500);padding:2px 4px;border-radius:var(--radius-sm);flex-shrink:0;transition:color var(--duration-normal) ease}.toast-close:hover{color:var(--color-gray-800)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@media(min-width:480px){.toast-container{right:20px;left:auto;max-width:400px}}.not-found-page{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem;text-align:center}.not-found-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.not-found-code{font-size:6rem;font-weight:800;color:var(--primary-color);line-height:1;margin:0}.not-found-message{font-size:1.25rem;color:var(--color-text-light);margin:0}.not-found-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 1.5rem;margin-top:.5rem}.not-found-links a{color:var(--color-text-light);text-decoration:underline}.not-found-links a:hover{color:var(--primary-color)}.skip-link{position:fixed;top:8px;left:8px;z-index:1100;padding:8px 14px;background-color:var(--primary-color);color:var(--white-color);border-radius:var(--border-radius);text-decoration:none;font-weight:600;transform:translateY(-200%);transition:transform var(--duration-slow) ease}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0);outline:2px solid var(--white-color);outline-offset:2px}.header{background-color:var(--primary-color);color:var(--white-color);padding:6px 0;box-shadow:var(--shadow);position:sticky;top:0;z-index:1000;width:100%;min-height:60px}.header .container{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 20px;height:100%}.logo{font-family:var(--font-heading);font-size:clamp(1.2rem,1rem + .68vw,1.8rem);font-weight:700;color:var(--white-color);text-decoration:none;display:flex;align-items:center;gap:8px;height:100%;transition:opacity var(--duration-slow) ease,color var(--duration-slow) ease}.logo-image{height:clamp(44px,11vw,90px);width:auto;filter:brightness(0) invert(1);opacity:1;transition:opacity var(--duration-slow) ease,filter var(--duration-slow) ease}:root[data-theme=dark] .logo-image{filter:brightness(0)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .logo-image{filter:brightness(0)}}.logo:focus-visible{outline:2px solid var(--white-color);outline-offset:2px}.logo:hover{text-decoration:none;color:var(--logo-hover-bg)}.logo:hover .logo-image{opacity:.7}.main-nav{display:flex;position:absolute;left:0;top:100%;flex-direction:column;background-color:var(--primary-color);width:100%;text-align:center;max-height:0;overflow:hidden;transition:max-height var(--duration-slow) ease,visibility 0s linear var(--duration-slow);gap:0;box-shadow:var(--shadow-lg);visibility:hidden}.main-nav.active{max-height:100vh;visibility:visible;transition:max-height var(--duration-slow) ease,visibility 0s linear 0s}.main-nav a{color:var(--secondary-color);font-weight:500;padding:.5rem;width:100%;box-sizing:border-box;border-radius:0;border-bottom:1px solid rgba(255,255,255,.1);transition:background-color var(--duration-slow) ease,color var(--duration-slow) ease;position:relative;text-decoration:none;text-align:center}.main-nav .theme-slider,.main-nav .language-switcher{align-self:center;justify-content:center}.main-nav .theme-slider{--theme-slider-step: 34px;padding:4px;margin-top:1rem}.main-nav .language-switcher{margin-top:1rem;margin-bottom:1rem}.main-nav .theme-slider-option{width:34px;height:32px}.main-nav .theme-slider-indicator{width:32px;height:30px}.main-nav .language-btn{padding:8px 12px}.main-nav .language-btn .flag{font-size:18px}@media(min-width:1024px){.main-nav .theme-slider{--theme-slider-step: 30px;padding:3px;margin-top:0}.main-nav .language-switcher{margin-top:0;margin-bottom:0}.main-nav .theme-slider-option{width:30px;height:28px}.main-nav .theme-slider-indicator{width:28px;height:26px}.main-nav .language-btn{padding:6px 10px}.main-nav .language-btn .flag{font-size:14px}}.main-nav a:hover,.main-nav a.active{background-color:#ffffff1a;color:var(--white-color);text-decoration:none}.main-nav a:focus-visible{background-color:#ffffff1a;color:var(--white-color);outline:2px solid var(--white-color);outline-offset:2px}.hamburger{display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;background:none;border:none;min-width:var(--touch-target-min);min-height:var(--touch-target-min);padding:10px}.hamburger .bar{display:block;width:25px;height:3px;margin:5px auto;transition:transform var(--duration-slow) ease-in-out,opacity var(--duration-slow) ease-in-out,background-color var(--duration-slow) ease-in-out;background-color:var(--white-color)}.hamburger[aria-expanded=true] .bar:nth-child(1){transform:translateY(13px) rotate(45deg)}.hamburger[aria-expanded=true] .bar:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger[aria-expanded=true] .bar:nth-child(3){transform:translateY(-13px) rotate(-45deg)}.footer{background-color:var(--primary-color);color:var(--secondary-color);padding:20px 0;text-align:center;margin-top:auto}.footer .container{max-width:1200px;margin:0 auto;padding:0 20px}@media(min-width:480px){.header{padding:10px 0;min-height:80px}.logo{gap:10px}}@media(min-width:768px){.header{min-height:100px}.logo{gap:15px}}@media(min-width:1024px){.main-nav{position:static;left:auto;top:auto;flex-direction:row;width:auto;background-color:transparent;box-shadow:none;gap:.75rem;visibility:visible;max-height:none;overflow:visible;transition:none}.main-nav a{padding:6px 10px;width:auto;box-sizing:content-box;border-radius:var(--border-radius);border-bottom:none;text-align:left}.main-nav a.active:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:60%;height:3px;background-color:var(--accent-color);border-radius:2px}.hamburger{display:none}}@media(prefers-reduced-motion:reduce){.main-nav,.main-nav.active,.logo,.logo-image,.hamburger .bar,.skip-link{transition:none}}.product-card{border:1px solid var(--color-gray-300);border-radius:var(--radius-md);overflow:hidden;background-color:var(--white-color);transition:transform var(--duration-normal) ease-in-out,box-shadow var(--duration-normal) ease-in-out;display:flex;flex-direction:column;text-decoration:none;color:inherit}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.product-card:has(.skeleton):hover{transform:none;box-shadow:none}.product-card:has(a:focus-visible){transform:translateY(-5px);box-shadow:var(--shadow-md);outline:2px solid var(--accent-color);outline-offset:2px}.product-card a:focus-visible{outline:none}.product-card-main{display:flex;flex-direction:column;flex-grow:1}.product-card-image{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;display:flex;align-items:center;justify-content:center;background-color:var(--color-gray-100)}.product-card-image img{width:100%;height:100%;object-fit:contain;display:block;box-shadow:var(--shadow-sm)}.product-image-skeleton{position:absolute;inset:0;border-radius:0}.product-card-content{padding:15px;flex-grow:1;display:flex;flex-direction:column;justify-content:space-between}.product-card-content h3{font-size:1.2em;margin-top:0;margin-bottom:10px;color:var(--text-color);overflow-wrap:anywhere}.product-details{display:flex;flex-direction:column;gap:2px;margin-bottom:10px;font-size:.75em}.product-details-line{display:flex;flex-wrap:nowrap;gap:2px;white-space:nowrap;overflow:hidden}.product-details span{color:var(--color-text-light);font-weight:500;white-space:nowrap}.product-details .mead-type,.product-details .sweetness,.product-details .abv,.product-details .volume{overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.product-details .mead-type{color:var(--color-gray-800);font-weight:600}.product-details .abv,.product-details .volume,.product-details .sweetness{color:var(--color-gray-800)}.product-details .separator{color:var(--color-gray-500);margin:0 1px;flex-shrink:0}.product-card-content .price{font-size:1.1em;font-weight:700;color:var(--color-primary);text-align:right;margin-top:auto}.placeholder-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--gradient-placeholder);color:var(--color-text-light);font-size:1.1em;font-style:italic}.availability{font-size:.85em;text-align:right;margin-top:5px;color:var(--color-text-light)}.availability.in-stock{color:var(--color-success)}.availability.low-stock{color:var(--color-warning)}.availability.out-of-stock{color:var(--color-danger)}@container (max-width: 320px){.product-card-content{padding:10px}.product-card-content h3{font-size:1em}.product-details{font-size:.7em}}.home-page{animation:fadeIn var(--duration-slower) ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hero-section{background:var(--gradient-hero);color:var(--text-color);text-align:center;padding:40px 20px 60px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:40vh;position:relative;overflow:hidden}.logo-container{position:relative;z-index:1;margin-bottom:.25rem}.hero-logo{width:clamp(180px,18vw + 100px,300px);height:auto;opacity:.8;filter:brightness(1) contrast(1)}:root[data-theme=dark] .hero-logo{filter:brightness(1.2) contrast(1.2);opacity:.8}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .hero-logo{filter:brightness(1.2) contrast(1.2);opacity:.8}}.hero-content{margin-top:0;padding-top:0}.hero-content h1{font-size:clamp(2.2rem,1.52rem + 1.48vw,3.5rem);margin-top:0;margin-bottom:.5em;color:var(--primary-color)}.hero-content p{font-size:clamp(1rem,.89rem + .23vw,1.2rem);max-width:600px;margin:0 auto 1rem;color:var(--text-color)}.section-title,.teaser-content h2,.featured-content h2{text-align:center;font-size:clamp(2rem,1.74rem + .57vw,2.5rem);margin-bottom:2rem;margin-top:0;color:var(--primary-color);background:none;border:none;box-shadow:none;padding:0}.featured-products{background-color:var(--secondary-color);padding:40px 0;text-align:center}.section-content-container{max-width:1200px;margin:0 auto;padding:0 20px;box-sizing:border-box}.featured-products .product-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-top:2rem;container-type:inline-size}.featured-products .product-grid>.product-card{width:100%;max-width:350px}.blog-teaser{background-color:var(--secondary-color);padding:40px 0;text-align:center}.blog-teaser .teaser-content h2{color:var(--primary-color);font-size:clamp(2rem,1.74rem + .57vw,2.5rem);margin-bottom:1rem}.blog-teaser .teaser-content p{font-size:1.1rem;margin-bottom:2rem;color:var(--text-color)}.blog-grid{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:3rem;max-width:100%;margin-inline:auto}.blog-post-card{border:1px solid var(--color-gray-300);border-radius:var(--radius-md);overflow:hidden;background-color:var(--white-color);transition:transform var(--duration-normal) ease-in-out,box-shadow var(--duration-normal) ease-in-out;display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit;padding:1.25rem}.blog-post-header{padding:15px 15px 0;margin-bottom:10px}.blog-post-title{margin:0 0 10px;font-size:1.2rem;color:var(--text-color)}.blog-post-title a{color:var(--text-color);text-decoration:none;transition:color var(--duration-normal) ease}.blog-post-title a:hover{color:var(--primary-color)}.blog-post-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.85rem;color:var(--color-text-light);margin-bottom:10px}.blog-post-date,.blog-post-author{display:flex;align-items:center}.blog-post-excerpt{flex-grow:1;padding:0 15px;margin-bottom:15px;color:var(--color-gray-700);line-height:1.5;font-size:.95em}.blog-post-actions{padding:0 15px 15px;margin-top:auto}.read-more-btn{display:inline-block;padding:8px 16px;background-color:var(--primary-color);color:var(--button-secondary-text);text-decoration:none;border-radius:var(--radius-sm);font-weight:500;font-size:.9em;transition:background-color var(--duration-normal) ease-in-out}.read-more-btn:hover{background-color:var(--primary-color-dark)}.blog-teaser .button-secondary{background-color:var(--primary-color);color:var(--button-secondary-text);border:2px solid var(--primary-color)}.blog-teaser .button-secondary:hover{background-color:var(--primary-color-dark);border-color:var(--primary-color-dark);color:var(--button-secondary-text)}.about-teaser{background-color:var(--secondary-color);padding:40px 0;text-align:center}.teaser-content h2,.featured-content h2{margin-top:1.5rem}.teaser-content h2,.featured-content h2{font-size:clamp(2rem,1.74rem + .57vw,2.5rem)}.teaser-content p{font-size:1.1rem;margin-bottom:2rem}@media(min-width:768px){.hero-section{padding:60px 20px 80px;min-height:50vh}.teaser-content h2,.featured-content h2{margin-top:0}.featured-products,.blog-teaser,.about-teaser{padding:60px 0}.blog-grid{gap:1.5rem;max-width:800px}.blog-post-card{padding:0}.blog-post-title{font-size:1.2em}.blog-post-meta{font-size:.85em;gap:10px}}.pagination-section{border-top:1px solid var(--input-border);margin-top:2rem}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem 0}.pagination-btn{padding:.5rem 1.25rem;min-height:var(--touch-target-min);min-width:var(--touch-target-min);border:1px solid var(--primary-color);border-radius:var(--border-radius);background-color:var(--white-color);color:var(--primary-color);font-size:.9rem;cursor:pointer;transition:background-color var(--duration-normal),color var(--duration-normal)}.pagination-btn:hover:not(:disabled){background-color:var(--primary-color);color:var(--white-color)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.pagination-page{font-size:.95rem;color:var(--text-color);min-width:5rem;text-align:center}.shop-page{max-width:1200px;margin:0 auto;padding:0;animation:fadeIn var(--duration-slower) ease-in-out}@media(min-width:480px){.shop-page{padding:20px}}.shop-header{text-align:center;margin-bottom:3rem}.shop-header h1{font-size:clamp(2.5rem,2.24rem + .57vw,3rem);margin-bottom:.5rem}.shop-header p{font-size:1.1rem;color:var(--text-color)}.shop-content{display:grid;grid-template-columns:1fr;gap:2rem}.filters-sidebar{background-color:var(--white-color);padding:24px;border:1px solid rgba(0,0,0,.05);box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;left:0;width:min(85vw,360px);max-width:100%;z-index:10001;overflow-y:auto;transform:translate(-100%);visibility:hidden;transition:transform var(--duration-slow) ease,visibility 0s linear var(--duration-slow)}.filters-sidebar.is-open{transform:translate(0);visibility:visible;transition:transform var(--duration-slow) ease,visibility 0s linear 0s}.filters-sidebar h3{margin-top:0;font-size:1.5rem;border-bottom:2px solid var(--secondary-color);padding-bottom:12px;margin-bottom:24px;color:var(--primary-color);font-family:var(--font-heading)}.filters-desktop-heading{display:none}.filters-sidebar-mobile-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.filters-sidebar-mobile-header h3{margin:0;border-bottom:none;padding-bottom:0}.filters-close-btn{background:transparent;border:none;color:var(--text-color);font-size:2rem;line-height:1;cursor:pointer;min-width:var(--touch-target-min);min-height:var(--touch-target-min);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);padding:0}.filters-close-btn:hover{background-color:var(--color-surface-alt)}.filters-close-btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.filters-trigger{display:inline-flex;align-items:center;gap:10px;margin-bottom:1.25rem;padding:10px 18px;min-height:var(--touch-target-min);background-color:var(--white-color);color:var(--text-color);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);font-size:1rem;font-weight:500;cursor:pointer;transition:background-color var(--duration-normal) ease,border-color var(--duration-normal) ease}.filters-trigger:hover{border-color:var(--primary-color);background-color:var(--color-surface-alt)}.filters-trigger:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.filters-trigger-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background-color:var(--accent-color);color:#fff;font-size:.8rem;font-weight:600;line-height:1}.filters-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:10000;opacity:0;pointer-events:none;transition:opacity var(--duration-slow) ease}.filters-backdrop.is-open{opacity:1;pointer-events:auto}.filter-group{margin-bottom:1.5rem}.filter-group h4{margin-bottom:.8rem;font-size:1.1rem}.checkbox-group{display:flex;align-items:center;gap:10px;margin-top:10px}.checkbox-group input[type=checkbox]{width:22px;height:22px;flex-shrink:0;cursor:pointer;border:2px solid var(--border-color);border-radius:var(--radius-sm);transition:background-color,border-color,color var(--duration-normal) ease;accent-color:var(--accent-color)}.checkbox-group input[type=checkbox]:hover{border-color:var(--primary-color)}.checkbox-group input[type=checkbox]:checked{background-color:var(--accent-color);border-color:var(--accent-color)}.checkbox-group input[type=checkbox]:focus{outline:none;box-shadow:var(--shadow-focus)}.checkbox-label{display:flex;align-items:center;gap:12px;min-height:var(--touch-target-min);padding:6px 4px;cursor:pointer;font-size:.95rem;color:var(--text-color);-webkit-user-select:none;user-select:none}.clear-filters-btn{width:100%;padding:12px;background-color:var(--secondary-color);color:var(--text-color);border:none;border-radius:var(--border-radius);cursor:pointer;font-size:1rem;transition:background-color,color var(--duration-normal) ease;font-weight:500}.clear-filters-btn:hover{background-color:var(--primary-color);color:#fff}.filter-group .form-group{margin-bottom:0}.filter-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color);font-size:.95rem}.filter-group select{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--white-color);color:var(--text-color);font-family:var(--font-body);font-size:clamp(.95rem,.92rem + .06vw,1rem);cursor:pointer;transition:background-color,color,box-shadow var(--duration-normal) ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232c3e50' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-inline-end:36px}.filter-group select:hover{border-color:var(--primary-color);background-color:var(--color-surface-alt)}.filter-group select:focus{outline:none;border-color:var(--accent-color);box-shadow:var(--shadow-focus-light)}.search-input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--white-color);color:var(--text-color);font-family:var(--font-body);font-size:clamp(.95rem,.92rem + .06vw,1rem);transition:background-color,color,box-shadow var(--duration-normal) ease;box-sizing:border-box}.search-input:hover{border-color:var(--primary-color);background-color:var(--color-surface-alt)}.search-input:focus{outline:none;border-color:var(--accent-color);box-shadow:var(--shadow-focus-light)}.filter-group select option{padding:8px;background-color:var(--white-color);color:var(--text-color)}.filter-group select option:checked{background-color:var(--accent-color);color:#fff}.filter-group select option:hover{background-color:var(--color-surface-blue)}.filter-group .help-text{margin:6px 0 0;font-size:.85rem;color:var(--color-text-light);line-height:1.4}.filter-group .error-message{margin:6px 0 0;font-size:.85rem;color:var(--error-color);line-height:1.4}.product-display{width:100%}.product-display .product-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;container-type:inline-size}@media(min-width:640px){.product-display .product-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}}.error-message{text-align:center;font-size:1.2rem;padding:40px}@media(min-width:768px){.filter-group select{padding:10px 12px}.clear-filters-btn{padding:10px;font-size:.95rem}}@media(min-width:1024px){.shop-content{grid-template-columns:240px 1fr}.filters-trigger,.filters-backdrop{display:none}.filters-sidebar{position:static;transform:none;visibility:visible;width:auto;max-width:none;z-index:auto;overflow-y:visible;height:fit-content;box-shadow:var(--shadow);border-radius:var(--border-radius);margin-bottom:0;transition:none}.filters-sidebar-mobile-header{display:none}.filters-desktop-heading{display:block}.product-display .product-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}}.filter-fieldset{border:none;margin:0;padding:0}.filter-fieldset legend{font-weight:500;font-size:.95rem;color:var(--text-color);margin-bottom:.5rem;padding:0}.collapsible-section{margin-bottom:1.5rem}.collapsible-header{width:100%;min-height:var(--touch-target-min);padding:.75rem .5rem;background:none;border:none;border-bottom:1px solid var(--color-gray-300);text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:1rem;font-weight:500;color:var(--color-gray-800);transition:border-color var(--duration-normal) ease}.collapsible-header:hover{border-color:var(--color-gray-500);background-color:var(--color-gray-100);color:var(--color-gray-800)}.collapsible-header:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.collapsible-title{flex-grow:1}.collapsible-icon{font-size:.8rem;color:var(--color-text-light);transition:transform var(--duration-slow) ease;margin-inline-start:.5rem}.collapsible-content{padding:0;max-height:0;overflow:hidden;transition:max-height var(--duration-slow) ease,padding var(--duration-slow) ease}.collapsible-content.expanded{padding:1rem 0;max-height:1000px}.collapsible-content.collapsed{max-height:0;padding:0}.collapsible-content>*{opacity:0;transition:opacity var(--duration-slow) ease .1s}.collapsible-content.expanded>*{opacity:1}.collapsible-content.collapsed>*{opacity:0}.breadcrumb{font-size:.875rem;color:var(--color-text-light);margin-bottom:1rem}.breadcrumb-item a{color:var(--color-text-light);text-decoration:none;transition:color var(--duration-fast, .15s) ease}.breadcrumb-item a:hover{color:var(--primary-color);text-decoration:underline}.breadcrumb-item span[aria-current=page]{color:var(--color-text);font-weight:500}.breadcrumb-separator{color:var(--color-text-light);opacity:.6}.product-details-page{max-width:1100px;margin:0 auto;padding:20px;animation:fadeIn var(--duration-slower) ease-in-out}.back-to-shop{margin-bottom:2rem}.back-to-shop a,.back-link{color:var(--text-color);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer;font-size:inherit;font-family:inherit}.product-details-content{display:grid;grid-template-columns:1fr;gap:2rem;background-color:var(--white-color);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow);align-items:start}.product-image-column{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%}.product-detail-image-wrapper{position:relative;width:100%;aspect-ratio:4/3}.product-detail-image-wrapper.is-loaded{aspect-ratio:auto}.product-detail-image-skeleton{position:absolute;inset:0;border-radius:var(--radius-lg)}.product-detail-image{width:100%;height:auto;max-width:100%;border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,.08);box-shadow:var(--shadow-md);transition:transform var(--duration-slow) ease,box-shadow var(--duration-slow) ease}.product-detail-image-wrapper:not(.is-loaded) .product-detail-image{position:absolute;inset:0;height:100%;object-fit:contain}@media(hover:hover)and (pointer:fine){.product-detail-image:hover{transform:scale(1.01);box-shadow:var(--shadow-lg)}}.placeholder-image.product-detail-image{width:100%;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;background:var(--gradient-placeholder);color:var(--color-text-light);font-size:1.2rem;font-style:italic;border-radius:var(--radius-lg)}.product-info-section h1{font-size:clamp(2.2rem,1.89rem + .68vw,2.8rem);margin-top:0;margin-bottom:.5rem}.price-large{font-size:clamp(1.8rem,1.7rem + .23vw,2rem);font-weight:700;color:var(--accent-color);margin-bottom:1.5rem}.product-description{line-height:1.7;margin:1.5rem 0}.product-basic-info{display:flex;flex-wrap:wrap;gap:1.5rem;margin:1rem 0}.basic-info-item{display:flex;align-items:center;gap:.5rem;font-size:1rem}.basic-info-label{font-weight:500;color:var(--color-text-light)}.basic-info-value{font-weight:500;color:var(--color-gray-800)}.product-meta{margin-bottom:2rem}.product-meta p{margin:.5rem 0}.add-to-cart-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-gray-300)}.cart-availability-info{display:flex;flex-direction:column;gap:1rem}.availability-info{display:flex;align-items:center;gap:.5rem;font-size:1rem}.availability-label{font-weight:500;color:var(--color-text-light)}.cart-controls{display:flex;flex-direction:column;align-items:stretch;gap:1rem}@media(min-width:640px){.cart-controls{flex-direction:row;align-items:center;gap:1.5rem}}.quantity-selector{display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:var(--border-radius)}.quantity-selector button{background:var(--white-color);border:none;min-width:var(--touch-target-min);min-height:var(--touch-target-min);padding:0 12px;cursor:pointer;font-size:1.2rem;color:var(--color-gray-500);transition:background-color var(--duration-normal) ease,color var(--duration-normal) ease}.quantity-selector button:hover:not(:disabled){background-color:var(--primary-color);color:#fff}.quantity-selector button:disabled{color:var(--color-gray-300);cursor:not-allowed}.quantity-selector button:disabled:hover{background-color:var(--white-color)}.quantity-selector .quantity-input{width:3.5ch;min-height:var(--touch-target-min);padding:0;border:none;text-align:center;font-weight:500;font-size:1.1rem;font-family:inherit;color:var(--text-color);background:transparent;-moz-appearance:textfield}.quantity-selector .quantity-input::-webkit-outer-spin-button,.quantity-selector .quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-selector .quantity-input:focus{outline:none;background-color:var(--color-gray-100)}.add-to-cart-btn{min-height:var(--touch-target-min);width:100%}@media(min-width:640px){.add-to-cart-btn{flex-grow:1;width:auto}}.add-to-cart-btn:disabled{background-color:var(--color-gray-400);cursor:not-allowed;transform:none}.max-quantity-message{margin-top:.5rem;font-size:.9rem;color:var(--error-color);font-style:italic}@media(min-width:768px){.product-details-content{padding:2rem;gap:2.5rem}.product-detail-image,.placeholder-image.product-detail-image{max-width:500px;margin:0 auto}}@media(min-width:1024px){.product-details-content{grid-template-columns:1fr 1fr;gap:4rem;padding:3rem}.product-detail-image,.placeholder-image.product-detail-image{max-width:none;margin:0}}.availability-details{font-weight:700}.availability-details.in-stock-details{color:var(--color-success)}.availability-details.low-stock-details{color:var(--color-warning)}.availability-details.out-of-stock-details{color:var(--color-danger)}.product-info-section>.collapsible-section{margin-bottom:2rem}.product-ingredients{line-height:1.7;white-space:pre-line}.availability-section{margin:1.5rem 0;font-size:1rem}.product-details-grid{display:grid;grid-template-columns:1fr;gap:.5rem;margin-top:.5rem}.detail-item{display:flex;flex-direction:column;justify-content:space-between;padding:.75rem 1rem;background-color:var(--color-gray-100);border-radius:var(--border-radius);gap:.25rem}.detail-label{font-weight:500;color:var(--color-text-light)}.detail-value{font-weight:500;color:var(--color-gray-800)}@media(min-width:768px){.product-details-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem 2rem}.detail-item{flex-direction:row;gap:.5rem;padding:.5rem 0;background-color:transparent;border-radius:0;border-bottom:1px solid var(--color-gray-200)}}.cart-page{max-width:1200px;margin:0 auto;padding:20px;animation:fadeIn var(--duration-slower) ease-in-out}.cart-header{text-align:center;margin-bottom:3rem}.cart-header h1{font-size:clamp(2.5rem,2.24rem + .57vw,3rem)}.cart-warning{position:relative;background-color:var(--alert-warning-bg);border:1px solid var(--alert-warning-border);border-radius:var(--border-radius);padding:20px;padding-inline-end:40px;margin-bottom:2rem;box-shadow:var(--shadow)}.cart-warning-dismiss{position:absolute;top:10px;right:10px;background:none;border:none;font-size:1.4rem;color:var(--alert-warning-text);cursor:pointer;padding:4px 8px;line-height:1;border-radius:var(--radius-sm)}.cart-warning-dismiss:hover{background-color:var(--alert-warning-hover)}.cart-warning h3{color:var(--alert-warning-text);margin-top:0;margin-bottom:10px;font-size:1.3rem;display:flex;align-items:center;gap:10px}.cart-warning h3:before{content:"⚠️"}.cart-warning p{color:var(--alert-warning-text);margin:0;line-height:1.5}.empty-cart{text-align:center;padding:40px;background-color:var(--white-color);border-radius:var(--border-radius);box-shadow:var(--shadow)}.empty-cart p{font-size:1.2rem;margin-bottom:2rem}.cart-content{display:grid;grid-template-columns:1fr;gap:2rem;align-items:flex-start}.cart-items-list{display:flex;flex-direction:column;gap:1.5rem;container-type:inline-size}.cart-item{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;background-color:var(--white-color);padding:1rem;padding-inline-end:3.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow)}.cart-item-details h3{margin:0 0 10px;font-size:1.4rem}.cart-item-price{font-size:1.1rem;color:var(--accent-color);font-weight:700;margin-bottom:1rem}.quantity-selector-cart{display:flex;align-items:center;border:1px solid var(--border-color);border-radius:var(--border-radius);width:fit-content;margin-bottom:1rem}.quantity-selector-cart button{background:var(--white-color);border:none;min-width:var(--touch-target-min);min-height:var(--touch-target-min);padding:0 12px;cursor:pointer;font-size:1.2rem;color:var(--color-gray-500);transition:background-color var(--duration-normal) ease,color var(--duration-normal) ease}.quantity-selector-cart button:hover:not(:disabled){background-color:var(--primary-color);color:#fff}.quantity-selector-cart button:disabled{color:var(--color-gray-300);cursor:not-allowed}.quantity-selector-cart button:disabled:hover{background-color:var(--white-color)}.quantity-selector-cart .quantity-input{width:3.5ch;min-height:var(--touch-target-min);padding:0;border:none;text-align:center;font-weight:500;font-size:1.1rem;font-family:inherit;color:var(--text-color);background:transparent;-moz-appearance:textfield;appearance:textfield}.quantity-selector-cart .quantity-input::-webkit-outer-spin-button,.quantity-selector-cart .quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-selector-cart .quantity-input:focus{outline:none;background-color:var(--color-gray-100)}.cart-item-subtotal{font-weight:700}.cart-max-quantity-message{margin-top:.25rem;font-size:.85rem;color:var(--error-color);font-style:italic}.cart-stock-warning{margin-top:.25rem;font-size:.85rem;color:var(--accent-color);font-weight:500}.remove-item-btn{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;justify-content:center;min-width:var(--touch-target-min);min-height:var(--touch-target-min);background:none;border:none;font-size:1.8rem;line-height:1;color:var(--error-color);cursor:pointer;transition:color var(--duration-slow)}.remove-item-btn:hover{background-color:var(--secondary-color);color:var(--remove-hover)}.cart-summary{background-color:var(--white-color);padding:20px;border-radius:var(--border-radius);box-shadow:var(--shadow);position:static;margin-top:2rem;transition:margin-top var(--duration-normal) ease,box-shadow var(--duration-normal) ease}.cart-summary h3{margin-top:0;font-size:1.5rem;border-bottom:2px solid var(--secondary-color);padding-bottom:10px;margin-bottom:20px}.summary-total{display:flex;justify-content:space-between;font-size:1.3rem;font-weight:700;margin-bottom:1.5rem}.checkout-btn,.clear-cart-btn{width:100%;margin-top:10px;text-align:center}.checkout-message{color:var(--alert-warning-text);background-color:var(--alert-warning-bg);border:1px solid var(--alert-warning-border);border-radius:var(--radius-sm);padding:8px 12px;margin-top:8px;font-size:.9rem;text-align:center}@container (min-width: 500px){.cart-item{flex-direction:row;align-items:center;padding:20px;padding-inline-end:20px}.remove-item-btn{position:static}}@media(min-width:1024px){.cart-content{grid-template-columns:2fr 1fr}.cart-summary{position:sticky;top:100px;margin-top:0}}.about-us-page{animation:fadeIn var(--duration-slower) ease-in-out}.about-hero{background:linear-gradient(#00000080,#00000080),url(https://images.unsplash.com/photo-1516222338279-a7f7e83445e8?q=80&w=2070&auto=format&fit=crop) no-repeat center center/cover;height:40vh;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--overlay-text)}.about-hero-content h1{font-size:clamp(2.2rem,1.78rem + .91vw,3rem);color:var(--overlay-text);max-width:800px}.about-content{max-width:800px;margin:2rem auto 3rem;padding:0 20px}.about-section{margin-bottom:3rem}.about-section h2{font-size:clamp(2rem,1.74rem + .57vw,2.5rem);margin-bottom:1.5rem;text-align:center;position:relative}.about-section h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:3px;background-color:var(--accent-color)}.about-section p{font-size:1.1rem;line-height:1.8;text-align:justify;margin-bottom:1.5rem}@media(min-width:768px){.about-hero{height:50vh}.about-content{margin-top:3rem}}.contact-page{max-width:1100px;margin:0 auto;padding:20px;animation:fadeIn var(--duration-slower) ease-in-out}.contact-header{text-align:center;margin-bottom:3rem}.contact-header h1{font-size:clamp(2.5rem,2.24rem + .57vw,3rem)}.contact-header p{max-width:600px;margin:1rem auto 0;font-size:1.1rem}.contact-content{display:grid;grid-template-columns:1fr;gap:3rem;background-color:var(--white-color);padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow)}.contact-info h3{font-size:1.8rem;margin-top:0;margin-bottom:1rem;color:var(--primary-color)}.contact-info p{margin-bottom:2rem;line-height:1.6}.contact-info ul{list-style:none;padding:0}.contact-info li{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;font-size:1.1rem}.contact-info li span{min-width:0;overflow-wrap:anywhere}.icon-phone,.icon-email,.icon-location{display:inline-block;flex-shrink:0;width:24px;height:24px;background-color:var(--accent-color);-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.icon-phone{-webkit-mask-image:url(/icon-phone.svg);mask-image:url(/icon-phone.svg)}.icon-email{-webkit-mask-image:url(/icon-email.svg);mask-image:url(/icon-email.svg)}.icon-location{-webkit-mask-image:url(/icon-location.svg);mask-image:url(/icon-location.svg)}.contact-form-container{padding-inline-start:0;border-left:none;padding-top:2rem;border-top:1px solid var(--secondary-color)}.form-group label{display:block;margin-bottom:8px;font-weight:500}.contact-form .button{width:100%}@media(min-width:768px){.contact-content{padding:2rem}}@media(min-width:1024px){.contact-content{grid-template-columns:1fr 1fr}.contact-form-container{padding-inline-start:2rem;border-left:1px solid var(--secondary-color);padding-top:0;border-top:none}}.blog-page{max-width:1200px;margin:0 auto;padding:1rem;animation:fadeIn var(--duration-slower) ease-in-out}.blog-header{text-align:center;margin-bottom:3rem}.blog-header h1{font-size:clamp(2.5rem,2.24rem + .57vw,3rem);margin-bottom:.5rem}.blog-header p{font-size:1.1rem;color:var(--text-color)}.blog-content{display:flex;flex-direction:column}.blog-posts{display:flex;flex-direction:column;gap:2rem;container-type:inline-size}.blog-post-card{background:var(--white-color);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);padding:1rem;box-shadow:var(--shadow);transition:transform var(--duration-normal) ease-in-out,box-shadow var(--duration-normal) ease-in-out}.blog-post-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.blog-post-card:has(.skeleton):hover{transform:none;box-shadow:var(--shadow)}.blog-post-header{margin-bottom:1.5rem}.blog-post-title{font-size:clamp(1.5rem,1.34rem + .34vw,1.8rem);margin-bottom:.5rem;color:var(--primary-color);font-family:var(--font-heading)}.blog-post-title a{color:inherit;text-decoration:none;transition:color var(--duration-normal) ease}.blog-post-title a:hover{color:var(--accent-color)}.blog-post-meta{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;color:var(--color-text-light);margin-bottom:1rem}.blog-post-date,.blog-post-author{display:flex;align-items:center;gap:.5rem}.blog-post-excerpt{margin-bottom:1.5rem;line-height:1.7;color:var(--text-color)}.blog-post-excerpt p{margin:0}.blog-post-actions{display:flex;justify-content:flex-end}.read-more-btn{display:inline-block;padding:.75rem 1.5rem;background-color:var(--accent-color);color:#fff;text-decoration:none;border-radius:var(--radius-sm);font-weight:600;transition:background-color var(--duration-normal) ease;border:none;cursor:pointer;font-size:.95rem}.read-more-btn:hover{background-color:var(--accent-color-hover);color:#fff}.no-posts{text-align:center;padding:3rem;font-size:1.2rem;color:var(--color-text-light);background:var(--white-color);border-radius:var(--border-radius);box-shadow:var(--shadow)}.blog-post-detail{width:100%;max-width:800px;margin:0 auto;padding:.75rem .5rem}.blog-post-content{line-height:1.7;font-size:1rem;color:var(--text-color)}.blog-post-content h1,.blog-post-content h2,.blog-post-content h3,.blog-post-content h4{color:var(--primary-color);margin-top:2rem;margin-bottom:1rem;font-family:var(--font-heading)}.blog-post-content h1{font-size:clamp(1.8rem,1.59rem + .45vw,2.2rem)}.blog-post-content h2{font-size:clamp(1.5rem,1.34rem + .34vw,1.8rem)}.blog-post-content h3{font-size:clamp(1.3rem,1.2rem + .23vw,1.5rem)}.blog-post-content h4{font-size:clamp(1.2rem,1.15rem + .11vw,1.3rem)}.blog-post-content p{margin-bottom:1.5rem}.blog-post-content ul,.blog-post-content ol{margin-bottom:1.5rem;padding-inline-start:2rem}.blog-post-content li{margin-bottom:.5rem}.blog-post-content code{background-color:var(--color-surface);padding:.2rem .4rem;border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:.9em}.blog-post-content pre{background-color:var(--color-surface);padding:1rem;border-radius:var(--radius-md);overflow-x:auto;margin-bottom:1.5rem}.blog-post-content blockquote{border-left:4px solid var(--primary-color);padding-inline-start:1rem;margin-inline:0;margin-bottom:1.5rem;color:var(--color-text-light);font-style:italic}.blog-post-content a{color:var(--primary-color);text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--duration-normal) ease}.blog-post-content a:hover{border-bottom:1px solid var(--primary-color)}.blog-back-link{margin-bottom:2rem}.blog-back-link a,.blog-back-link .back-link{color:var(--text-color);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer;font-size:inherit;font-family:inherit}.blog-back-link a:hover,.blog-back-link .back-link:hover{color:var(--accent-color)}.back-to-blog{display:inline-block;margin-top:2rem;padding:.75rem 1.5rem;background-color:var(--color-surface);color:var(--text-color);text-decoration:none;border-radius:var(--radius-sm);font-weight:600;transition:background-color var(--duration-normal) ease;border:1px solid var(--color-border)}.back-to-blog:hover{background-color:var(--color-border)}@media(min-width:480px){.blog-post-detail{padding:1rem .75rem}}@media(min-width:768px){.blog-post-detail{padding:2rem 1rem}}@media(min-width:1024px){.blog-page{padding:2rem 1.5rem}.blog-post-content{font-size:1.1rem;line-height:1.8}}@container (min-width: 480px){.blog-post-card{padding:1.5rem}}@container (min-width: 768px){.blog-post-card{padding:2rem}.blog-post-meta{flex-direction:row;gap:1.5rem}}.blog-post-content .blog-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:2rem 0;max-width:100%}.blog-post-content table.blog-table{margin:0 auto;border-collapse:collapse;width:auto}.blog-post-content table.blog-table td{padding:10px;text-align:center;border:none}.blog-post-content table.blog-table td em{display:block;margin-top:.5rem;font-style:italic;color:var(--color-text-light);font-size:.9rem}.blog-post-content img{max-width:100%;height:auto;border-radius:var(--radius-md);box-shadow:var(--shadow-md)}:root{--primary-color: #2c3e50;--secondary-color: #ecf0f1;--accent-color: #e67e22;--text-color: #34495e;--background-color: #ffffff;--border-color: #bdc3c7;--white-color: #fff;--error-color: #e74c3c;--success-color: #2ecc71;--font-heading: "Playfair Display", serif;--font-body: "Montserrat", sans-serif;--shadow: 0 4px 6px rgba(0,0,0,.1);--border-radius: 8px;--color-primary: var(--primary-color);--color-text: var(--text-color);--color-border: var(--border-color);--color-surface: #f8f9fa;--color-text-light: #666;--color-success: #28a745;--color-warning: #ffc107;--color-danger: #dc3545;--color-gray-100: #f8f9fa;--color-gray-200: #f0f0f0;--color-gray-300: #e0e0e0;--color-gray-400: #ccc;--color-gray-500: #999;--color-gray-600: #666;--color-gray-700: #444;--color-gray-800: #333;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .05);--shadow-md: 0 4px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 6px 16px rgba(0, 0, 0, .12);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-pill: 9999px;--touch-target-min: 44px;--duration-fast: .15s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .5s;--shadow-xl: 0 20px 60px rgba(0, 0, 0, .3);--shadow-focus: 0 0 0 3px rgba(230, 126, 34, .2);--shadow-focus-light: 0 0 0 3px rgba(230, 126, 34, .1);--accent-color-hover: #d35400;--primary-color-dark: #1a252f;--primary-color-blue: #2c5282;--danger-hover: #c82333;--warning-hover: #e0a800;--remove-hover: #c0392b;--secondary-color-hover: #2c5282;--color-surface-alt: #f8fafc;--color-surface-blue: #f0f7ff;--color-surface-hover: #f9f9f9;--badge-success-bg: #d1fae5;--badge-success-text: #065f46;--badge-success-border: #a7f3d0;--badge-warning-bg: #fef3c7;--badge-warning-text: #92400e;--badge-warning-border: #fde68a;--badge-error-bg: #fee2e2;--badge-error-text: #dc2626;--badge-error-border: #fecaca;--input-border: #e2e8f0;--input-bg: var(--white-color);--input-placeholder: #94a3b8;--input-focus-shadow: 0 0 0 3px rgba(66, 153, 225, .1);--alert-warning-bg: #fff3cd;--alert-warning-border: #ffeaa7;--alert-warning-text: #856404;--alert-warning-hover: rgba(133, 100, 4, .1);--hero-gradient-color: #e1d9ba;--gradient-hero: radial-gradient(ellipse at center, var(--hero-gradient-color) 0%, var(--secondary-color) 67%);--gradient-placeholder: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);--gradient-admin-sidebar: linear-gradient(180deg, var(--primary-color) 0%, var(--primary-color-blue) 100%);--logo-hover-bg: rgba(255, 255, 255, .8);--button-secondary-text: white;--overlay-text: white;--login-gradient-start: var(--primary-color);--login-gradient-end: var(--primary-color-blue);--admin-sidebar-text: rgba(255, 255, 255, .8);--admin-sidebar-border: rgba(255, 255, 255, .1);--admin-sidebar-hover: rgba(255, 255, 255, .1);--admin-sidebar-active: rgba(255, 255, 255, .15);--theme-slider-bg: rgba(255, 255, 255, .15);--theme-slider-icon: rgba(255, 255, 255, .6);--theme-slider-icon-hover: rgba(255, 255, 255, .9);--theme-slider-icon-active: var(--primary-color);--theme-slider-indicator: rgba(255, 255, 255, .9)}@media(prefers-reduced-motion:no-preference){@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}@keyframes successPulse{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}}.skeleton{background:linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size:200% 100%;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:no-preference){.skeleton{animation:shimmer 1.5s ease-in-out infinite}}.shake{animation:shake .4s ease}.success-pulse{animation:successPulse .4s ease}body{font-family:var(--font-body);margin:0;padding:0;background-color:var(--secondary-color);color:var(--text-color);line-height:1.6;font-size:16px}@media(min-width:768px){body{line-height:1.8}}#root{display:flex;flex-direction:column;min-height:100vh}main{flex:1;padding:24px 6px;max-width:1200px;width:100%;margin:0 auto;box-sizing:border-box}@media(min-width:480px){main{padding:40px 20px}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--primary-color);margin-top:1.5em;margin-bottom:.8em}a{color:var(--accent-color);text-decoration:none;transition:color var(--duration-slow) ease}a:hover{color:var(--accent-color-hover)}button,.button{background-color:var(--accent-color);color:var(--white-color);border:none;padding:12px 20px;border-radius:var(--border-radius);cursor:pointer;font-size:1rem;font-weight:500;transition:background-color var(--duration-slow) ease,transform var(--duration-normal) ease;display:inline-block;text-align:center;text-decoration:none}button:hover,.button:hover{background-color:var(--accent-color-hover);color:var(--white-color)}button:active,.button:active{transform:scale(.995);transition:transform var(--duration-fast) ease}.button-secondary{background-color:var(--primary-color);color:var(--button-secondary-text)}.button-secondary:hover{background-color:var(--secondary-color-hover);color:var(--button-secondary-text)}input[type=text],input[type=password],input[type=email],input[type=number],textarea,select{width:100%;padding:12px;margin-top:8px;margin-bottom:16px;border:1px solid var(--border-color);border-radius:var(--border-radius);box-sizing:border-box;font-family:var(--font-body);font-size:1rem;transition:border-color var(--duration-normal) ease,box-shadow var(--duration-normal) ease,background-color var(--duration-normal) ease,color var(--duration-normal) ease;background-color:var(--white-color);color:var(--text-color)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232c3e50' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-inline-end:36px;cursor:pointer}select:hover{border-color:var(--primary-color);background-color:var(--color-surface-alt)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-color);box-shadow:var(--shadow-focus)}select option{padding:12px;background-color:var(--white-color);color:var(--text-color)}select option:checked{background-color:var(--accent-color);color:#fff}select option:hover{background-color:var(--color-surface-blue)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color);font-size:1rem}.form-group .help-text{margin:6px 0 0;font-size:.9rem;color:var(--color-text-light);line-height:1.4}.form-group .error-message{margin:6px 0 0;font-size:.9rem;color:var(--error-color);line-height:1.4}.required-indicator{color:var(--color-danger);margin-inline-start:2px}.validation-summary{background:var(--badge-error-bg);border:1px solid var(--badge-error-border);color:var(--badge-error-text);border-radius:var(--radius-md);padding:12px 16px;margin-bottom:1rem;font-size:.9rem}.validation-summary h4{margin:0 0 6px;font-size:.9rem}.validation-summary ul{margin:0;padding-inline-start:1.2rem;line-height:1.6}table{width:100%;border-collapse:collapse;margin-top:2rem;background-color:var(--white-color);box-shadow:var(--shadow);border-radius:var(--border-radius);overflow:hidden}th,td{padding:15px 20px;text-align:left;border-bottom:1px solid var(--border-color)}th{background-color:var(--primary-color);color:var(--secondary-color);font-weight:500;text-transform:uppercase;font-size:.85rem}tr:last-child td{border-bottom:none}tr:hover{background-color:var(--color-surface-hover)}.loader{text-align:center;font-size:1.2rem;padding:40px}*:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}@media(prefers-reduced-motion:reduce){:root{--duration-fast: .01ms;--duration-normal: .01ms;--duration-slow: .01ms;--duration-slower: .01ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--primary-color: #cacbcf;--secondary-color: #1a202c;--accent-color: #f0923e;--text-color: #e2e8f0;--background-color: #1a202c;--border-color: #4a5568;--white-color: #2d3748;--error-color: #fc8181;--success-color: #68d391;--color-primary: var(--primary-color);--color-text: var(--text-color);--color-border: var(--border-color);--color-surface: #2d3748;--color-text-light: #a0aec0;--color-success: #68d391;--color-warning: #f6e05e;--color-danger: #fc8181;--color-gray-100: #2d3748;--color-gray-200: #374151;--color-gray-300: #4a5568;--color-gray-400: #718096;--color-gray-500: #a0aec0;--color-gray-600: #cbd5e0;--color-gray-700: #e2e8f0;--color-gray-800: #f7fafc;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 6px 16px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .6);--accent-color-hover: #e07b2a;--primary-color-dark: #f7fafc;--primary-color-blue: #63b3ed;--danger-hover: #e53e3e;--warning-hover: #ecc94b;--remove-hover: #c0392b;--secondary-color-hover: #63b3ed;--color-surface-alt: #2d3748;--color-surface-blue: #2a3a4e;--color-surface-hover: #374151;--badge-success-bg: #064e3b;--badge-success-text: #6ee7b7;--badge-success-border: #065f46;--badge-warning-bg: #78350f;--badge-warning-text: #fcd34d;--badge-warning-border: #92400e;--badge-error-bg: #7f1d1d;--badge-error-text: #fca5a5;--badge-error-border: #991b1b;--input-border: #4a5568;--input-bg: #2d3748;--input-placeholder: #718096;--input-focus-shadow: 0 0 0 3px rgba(240, 146, 62, .2);--alert-warning-bg: #78350f;--alert-warning-border: #92400e;--alert-warning-text: #fcd34d;--alert-warning-hover: rgba(252, 211, 77, .1);--hero-gradient-color: #354a5f;--gradient-hero: radial-gradient(ellipse at center, var(--hero-gradient-color) 0%, var(--secondary-color) 67%);--gradient-placeholder: linear-gradient(135deg, #2d3748 0%, #4a5568 100%);--gradient-admin-sidebar: linear-gradient(180deg, #1a202c 0%, #2a4365 100%);--logo-hover-bg: rgba(0, 0, 0, .5);--button-secondary-text: #1a202c;--overlay-text: #f7fafc;--login-gradient-start: #1a365d;--login-gradient-end: #2a4365;--admin-sidebar-text: rgba(255, 255, 255, .8);--admin-sidebar-border: rgba(255, 255, 255, .1);--admin-sidebar-hover: rgba(255, 255, 255, .1);--admin-sidebar-active: rgba(255, 255, 255, .15);--shadow-focus: 0 0 0 3px rgba(240, 146, 62, .3);--shadow-focus-light: 0 0 0 3px rgba(240, 146, 62, .15);--theme-slider-bg: rgba(0, 0, 0, .2);--theme-slider-icon: rgba(0, 0, 0, .4);--theme-slider-icon-hover: rgba(0, 0, 0, .7);--theme-slider-icon-active: #1a202c;--theme-slider-indicator: rgba(255, 255, 255, .85)}}:root[data-theme=dark]{--primary-color: #cacbcf;--secondary-color: #1a202c;--accent-color: #f0923e;--text-color: #e2e8f0;--background-color: #1a202c;--border-color: #4a5568;--white-color: #2d3748;--error-color: #fc8181;--success-color: #68d391;--color-primary: var(--primary-color);--color-text: var(--text-color);--color-border: var(--border-color);--color-surface: #2d3748;--color-text-light: #a0aec0;--color-success: #68d391;--color-warning: #f6e05e;--color-danger: #fc8181;--color-gray-100: #2d3748;--color-gray-200: #374151;--color-gray-300: #4a5568;--color-gray-400: #718096;--color-gray-500: #a0aec0;--color-gray-600: #cbd5e0;--color-gray-700: #e2e8f0;--color-gray-800: #f7fafc;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 6px 16px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .6);--accent-color-hover: #e07b2a;--primary-color-dark: #f7fafc;--primary-color-blue: #63b3ed;--danger-hover: #e53e3e;--warning-hover: #ecc94b;--remove-hover: #c0392b;--secondary-color-hover: #63b3ed;--color-surface-alt: #2d3748;--color-surface-blue: #2a3a4e;--color-surface-hover: #374151;--badge-success-bg: #064e3b;--badge-success-text: #6ee7b7;--badge-success-border: #065f46;--badge-warning-bg: #78350f;--badge-warning-text: #fcd34d;--badge-warning-border: #92400e;--badge-error-bg: #7f1d1d;--badge-error-text: #fca5a5;--badge-error-border: #991b1b;--input-border: #4a5568;--input-bg: #2d3748;--input-placeholder: #718096;--input-focus-shadow: 0 0 0 3px rgba(240, 146, 62, .2);--alert-warning-bg: #78350f;--alert-warning-border: #92400e;--alert-warning-text: #fcd34d;--alert-warning-hover: rgba(252, 211, 77, .1);--hero-gradient-color: #4d6984;--gradient-hero: radial-gradient(ellipse at center, var(--hero-gradient-color) 0%, var(--secondary-color) 67%);--gradient-placeholder: linear-gradient(135deg, #2d3748 0%, #4a5568 100%);--gradient-admin-sidebar: linear-gradient(180deg, #1a202c 0%, #2a4365 100%);--logo-hover-bg: rgba(0, 0, 0, .5);--button-secondary-text: #1a202c;--overlay-text: #f7fafc;--login-gradient-start: #1a365d;--login-gradient-end: #2a4365;--admin-sidebar-text: rgba(255, 255, 255, .8);--admin-sidebar-border: rgba(255, 255, 255, .1);--admin-sidebar-hover: rgba(255, 255, 255, .1);--admin-sidebar-active: rgba(255, 255, 255, .15);--shadow-focus: 0 0 0 3px rgba(240, 146, 62, .3);--shadow-focus-light: 0 0 0 3px rgba(240, 146, 62, .15);--theme-slider-bg: rgba(0, 0, 0, .2);--theme-slider-icon: rgba(0, 0, 0, .4);--theme-slider-icon-hover: rgba(0, 0, 0, .7);--theme-slider-icon-active: #1a202c;--theme-slider-indicator: rgba(255, 255, 255, .85)}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;gap:1.5rem;text-align:center;background:var(--white-color);border-radius:var(--border-radius);box-shadow:var(--shadow)}.error-state .error-icon{width:60px;height:60px;background-size:contain;background-repeat:no-repeat;background-position:center;margin:0 auto}.error-state .warning-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23dc2626'%3E%3Cpath d='M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/%3E%3C/svg%3E")}.error-state .error-message{color:#dc2626;margin:0;font-size:1.1rem;max-width:400px}.empty-state{text-align:center;padding:4rem 2rem;background:var(--white-color);border-radius:var(--border-radius);box-shadow:var(--shadow)}.empty-state-icon{width:64px;height:64px;margin:0 auto 1.5rem;background-size:contain;background-repeat:no-repeat;background-position:center}.empty-state h3{margin:0 0 .5rem;font-size:1.5rem;color:var(--text-color)}.empty-state p{color:var(--color-text-light);margin:0 0 1.5rem}.search-empty-icon{background-image:url(/search-empty.svg)}.cart-empty-icon{background-image:url(/cart-empty.svg)}.blog-empty-icon{background-image:url(/blog-empty.svg)}.skip-to-content{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:9999}.skip-to-content:focus{position:fixed;top:10px;left:10px;width:auto;height:auto;padding:12px 20px;background-color:var(--accent-color);color:var(--white-color);border-radius:var(--border-radius);font-size:1rem;font-weight:500;text-decoration:none;box-shadow:var(--shadow-lg)}
