:root{--color-cream-bg:#faf7f0;--color-cream-surface:#fff;--color-cream-subtle:#f3efe6;--color-cream-alt:#ebe5d8;--color-border:#dcd4c4;--color-border-dark:#c4baa7;--color-olive:#3d5a40;--color-olive-dark:#2a3f2c;--color-olive-light:#527555;--color-olive-tint:#eef3ee;--color-ink:#182633;--color-ink-muted:#4f5e6b;--color-ink-light:#7a8996;--color-terracotta:#be5a38;--color-terracotta-dark:#9f4628;--color-terracotta-light:#d6714e;--color-terracotta-tint:#faeeea;--color-focus:#182633;--color-error:#b3261e;--color-error-bg:#fdf2f2;--color-success:#2e6930;--color-success-bg:#eff7f0;--font-heading:"Georgia", "Cambria", "Times New Roman", serif;--font-body:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4.5rem;--radius-sm:4px;--radius-md:8px;--radius-lg:14px;--radius-pill:9999px;--shadow-sm:0 1px 3px #1826330f;--shadow-md:0 4px 12px #18263314;--shadow-lg:0 12px 28px #1826331c;--transition-fast:.15s ease;--transition-normal:.25s ease;--container-max:1200px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}html{font-family:var(--font-body);color:var(--color-ink);background-color:var(--color-cream-bg);scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:16px;line-height:1.6}body{background-color:var(--color-cream-bg);min-height:100vh;color:var(--color-ink);flex-direction:column;display:flex}main{flex:1 0 auto}:focus-visible{outline:3px solid var(--color-ink);outline-offset:3px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-ink);font-weight:700;line-height:1.25}h1{letter-spacing:-.02em;font-size:clamp(2rem,4.5vw,3.25rem)}h2{letter-spacing:-.015em;font-size:clamp(1.6rem,3.2vw,2.3rem)}h3{font-size:clamp(1.25rem,2.2vw,1.6rem)}p{margin-bottom:var(--space-md);color:var(--color-ink)}p:last-child{margin-bottom:0}a{color:var(--color-olive-dark);text-underline-offset:3px;transition:color var(--transition-fast);text-decoration:underline}a:hover{color:var(--color-terracotta)}img,svg{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}.container{width:100%;max-width:var(--container-max);padding-inline:var(--space-md);margin-inline:auto}@media (width>=768px){.container{padding-inline:var(--space-xl)}}.section{padding-block:var(--space-2xl)}@media (width>=992px){.section{padding-block:var(--space-3xl)}}.btn{justify-content:center;align-items:center;gap:var(--space-xs);border-radius:var(--radius-sm);transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);text-align:center;border:1px solid #0000;padding:.75rem 1.4rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--color-olive);color:#fff;border-color:var(--color-olive)}.btn-primary:hover{background-color:var(--color-olive-dark);border-color:var(--color-olive-dark);color:#fff}.btn-secondary{background-color:var(--color-cream-surface);color:var(--color-ink);border-color:var(--color-border-dark)}.btn-secondary:hover{background-color:var(--color-cream-subtle);border-color:var(--color-ink);color:var(--color-ink)}.btn-terracotta{background-color:var(--color-terracotta);color:#fff;border-color:var(--color-terracotta)}.btn-terracotta:hover{background-color:var(--color-terracotta-dark);border-color:var(--color-terracotta-dark);color:#fff}.btn-sm{padding:.45rem .85rem;font-size:.85rem}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-pill);align-items:center;gap:.25rem;padding:.2rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.badge-olive{background-color:var(--color-olive-tint);color:var(--color-olive-dark);border:1px solid #c9dcbe}.badge-terracotta{background-color:var(--color-terracotta-tint);color:var(--color-terracotta-dark);border:1px solid #f0c4b6}.badge-subtle{background-color:var(--color-cream-subtle);color:var(--color-ink-muted);border:1px solid var(--color-border)}.form-group{margin-bottom:var(--space-lg);gap:var(--space-2xs);flex-direction:column;display:flex}.form-label{color:var(--color-ink);font-size:.95rem;font-weight:600}.form-input,.form-select,.form-textarea{border:1px solid var(--color-border-dark);border-radius:var(--radius-sm);background-color:var(--color-cream-surface);width:100%;color:var(--color-ink);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.75rem .9rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-ink);outline:none;box-shadow:0 0 0 3px #18263326}.form-textarea{resize:vertical;min-height:110px}.form-hint{color:var(--color-ink-muted);font-size:.85rem}.form-error{color:var(--color-error);font-size:.85rem;font-weight:600}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.demo-topbar{background-color:var(--color-ink);color:var(--color-cream-bg);text-align:center;letter-spacing:.02em;padding:.35rem 1rem;font-size:.8rem;font-weight:500}.site-header{z-index:50;background-color:var(--color-cream-bg);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);position:sticky;top:0}.site-header-inner{justify-content:space-between;align-items:center;gap:var(--space-md);padding-block:.9rem;display:flex}.brand-link{color:var(--color-ink);align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand-logo-mark{background-color:var(--color-olive);border-radius:var(--radius-sm);color:#fff;width:40px;height:40px;font-family:var(--font-heading);flex-shrink:0;justify-content:center;align-items:center;font-size:1.4rem;font-weight:700;display:flex}.brand-titles{flex-direction:column;display:flex}.brand-name{font-family:var(--font-heading);color:var(--color-ink);font-size:1.35rem;font-weight:700;line-height:1.1}.brand-subtitle{color:var(--color-ink-muted);font-size:.75rem;font-weight:500}.main-nav{display:none}@media (width>=900px){.main-nav{align-items:center;gap:1.25rem;display:flex}}.nav-link{color:var(--color-ink);transition:color var(--transition-fast);padding:.4rem .2rem;font-size:.95rem;font-weight:600;text-decoration:none;position:relative}.nav-link:hover,.nav-link.active{color:var(--color-olive-dark)}.nav-link.active:after{content:"";background-color:var(--color-terracotta);height:2px;position:absolute;bottom:0;left:0;right:0}.header-actions{align-items:center;gap:var(--space-sm);display:flex}.cart-button-link{background-color:var(--color-cream-subtle);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink);transition:background-color var(--transition-fast), border-color var(--transition-fast);align-items:center;gap:.4rem;padding:.45rem .8rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.cart-button-link:hover{background-color:var(--color-cream-alt);border-color:var(--color-border-dark);color:var(--color-ink)}.cart-counter{background-color:var(--color-olive);color:#fff;border-radius:var(--radius-pill);text-align:center;min-width:1.3rem;padding:.1rem .45rem;font-size:.75rem;font-weight:700}.menu-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-cream-surface);color:var(--color-ink);justify-content:center;align-items:center;padding:.5rem;display:inline-flex}@media (width>=900px){.menu-toggle{display:none}}.menu-toggle-icon{flex-direction:column;justify-content:space-around;width:24px;height:24px;display:flex}.menu-toggle-bar{background-color:var(--color-ink);width:100%;height:2px;transition:transform var(--transition-fast), opacity var(--transition-fast);border-radius:2px}.mobile-drawer-overlay{z-index:99;backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity var(--transition-normal);background-color:#18263373;position:fixed;inset:0}.mobile-drawer-overlay.open{opacity:1;pointer-events:auto}.mobile-drawer{background-color:var(--color-cream-surface);z-index:100;width:min(85vw,360px);padding:var(--space-xl) var(--space-lg);box-shadow:var(--shadow-lg);transition:transform var(--transition-normal);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.mobile-drawer.open{transform:translate(0)}.mobile-drawer-header{margin-bottom:var(--space-xl);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.mobile-nav-list{gap:var(--space-sm);flex-direction:column;list-style:none;display:flex}.mobile-nav-link{color:var(--color-ink);border-radius:var(--radius-sm);transition:background-color var(--transition-fast), color var(--transition-fast);padding:.6rem .5rem;font-size:1.15rem;font-weight:600;text-decoration:none;display:block}.mobile-nav-link:hover,.mobile-nav-link.active{background-color:var(--color-cream-subtle);color:var(--color-olive-dark)}.site-footer{background-color:var(--color-ink);color:var(--color-cream-bg);padding-top:var(--space-2xl);padding-bottom:var(--space-xl);border-top:3px solid var(--color-olive);margin-top:auto}.site-footer a{color:#d5e2d2}.site-footer a:hover{color:#fff}.footer-grid{gap:var(--space-xl);margin-bottom:var(--space-xl);grid-template-columns:1fr;display:grid}@media (width>=640px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=992px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1.5fr}}.footer-col-title{font-family:var(--font-heading);color:#fff;margin-bottom:var(--space-sm);font-size:1.1rem}.footer-nav-list{flex-direction:column;gap:.5rem;list-style:none;display:flex}.footer-nav-list a{font-size:.95rem;text-decoration:none}.footer-nav-list a:hover{text-decoration:underline}.footer-bottom{padding-top:var(--space-lg);color:#a0b0bf;gap:var(--space-xs);text-align:center;border-top:1px solid #ffffff1f;flex-direction:column;font-size:.85rem;display:flex}@media (width>=768px){.footer-bottom{text-align:left;flex-direction:row;justify-content:space-between}}.product-grid{gap:var(--space-lg);grid-template-columns:1fr;display:grid}@media (width>=480px){.product-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=860px){.product-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1100px){.product-grid{grid-template-columns:repeat(4,1fr)}}.product-card{background-color:var(--color-cream-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);flex-direction:column;display:flex;position:relative}.product-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-dark);transform:translateY(-2px)}.product-card-badge-wrap{top:var(--space-sm);left:var(--space-sm);z-index:2;flex-direction:column;gap:.25rem;display:flex;position:absolute}.product-card-illustration{background-color:var(--color-cream-subtle);border-radius:var(--radius-sm);height:180px;margin-bottom:var(--space-md);border:1px solid var(--color-border);justify-content:center;align-items:center;display:flex;overflow:hidden}.product-card-illustration svg{opacity:.9;width:100px;height:100px}.product-card-content{flex-direction:column;flex:1 0 auto;display:flex}.product-card-category{color:var(--color-olive-dark);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.product-card-title{font-family:var(--font-heading);margin-bottom:.35rem;font-size:1.15rem;line-height:1.3}.product-card-desc{color:var(--color-ink-muted);margin-bottom:var(--space-sm);flex-grow:1;font-size:.85rem}.product-card-meta{margin-bottom:var(--space-sm);padding-top:var(--space-xs);border-top:1px dashed var(--color-border);justify-content:space-between;align-items:baseline;display:flex}.product-card-price{font-family:var(--font-heading);color:var(--color-ink);font-size:1.25rem;font-weight:700}.product-card-unit{color:var(--color-ink-muted);font-size:.8rem}.product-card-availability{margin-bottom:var(--space-md);align-items:center;gap:.35rem;font-size:.75rem;display:flex}.availability-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.avail-in-stock{background-color:var(--color-olive)}.avail-low-stock{background-color:var(--color-terracotta)}.avail-on-order{background-color:var(--color-ink-muted)}.category-grid{gap:var(--space-lg);grid-template-columns:1fr;display:grid}@media (width>=600px){.category-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=992px){.category-grid{grid-template-columns:repeat(3,1fr)}}.category-card{background-color:var(--color-cream-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);color:inherit;flex-direction:column;text-decoration:none;display:flex}.category-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-olive);transform:translateY(-3px)}.category-card-icon{background-color:var(--color-olive-tint);border-radius:var(--radius-md);width:64px;height:64px;margin-bottom:var(--space-md);color:var(--color-olive-dark);justify-content:center;align-items:center;display:flex}.category-card-title{font-family:var(--font-heading);margin-bottom:.35rem;font-size:1.35rem}.category-card-desc{color:var(--color-ink-muted);margin-bottom:var(--space-md);flex-grow:1;font-size:.9rem}.category-card-footer{padding-top:var(--space-sm);border-top:1px solid var(--color-border);color:var(--color-olive-dark);justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;display:flex}.catalog-toolbar{background-color:var(--color-cream-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-xl);gap:var(--space-md);flex-direction:column;display:flex}@media (width>=768px){.catalog-toolbar{flex-flow:wrap;justify-content:space-between;align-items:center}}.catalog-search-wrap{flex:240px}.catalog-filters-group{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.catalog-results-info{margin-bottom:var(--space-lg);color:var(--color-ink-muted);justify-content:space-between;align-items:center;font-size:.95rem;display:flex}.demo-notice-box{background-color:var(--color-cream-subtle);border:1px solid var(--color-border);border-left:4px solid var(--color-olive);border-radius:var(--radius-sm);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-lg);align-items:flex-start;gap:var(--space-sm);font-size:.9rem;display:flex}.demo-notice-box.warning{border-left-color:var(--color-terracotta);background-color:var(--color-terracotta-tint)}.cart-table{border-collapse:collapse;width:100%;margin-bottom:var(--space-lg);background-color:var(--color-cream-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.cart-table th,.cart-table td{padding:var(--space-sm) var(--space-md);text-align:left;border-bottom:1px solid var(--color-border)}.cart-table th{background-color:var(--color-cream-subtle);text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-muted);font-size:.85rem}.qty-control{border:1px solid var(--color-border-dark);border-radius:var(--radius-sm);background-color:var(--color-cream-bg);align-items:center;display:inline-flex}.qty-btn{width:28px;height:28px;color:var(--color-ink);transition:background-color var(--transition-fast);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.qty-btn:hover{background-color:var(--color-cream-alt)}.qty-value{text-align:center;min-width:1.5rem;padding-inline:.5rem;font-size:.9rem;font-weight:600}.order-summary-card{background-color:var(--color-cream-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.order-summary-row{padding-block:var(--space-xs);justify-content:space-between;font-size:.95rem;display:flex}.order-summary-row.total{border-top:2px solid var(--color-ink);padding-top:var(--space-sm);margin-top:var(--space-xs);font-size:1.2rem;font-weight:700;font-family:var(--font-heading)}.confirmation-card{background-color:var(--color-success-bg);border:2px solid var(--color-success);border-radius:var(--radius-md);padding:var(--space-xl);margin-top:var(--space-xl)}.confirmation-card-title{color:var(--color-success);margin-bottom:var(--space-sm);font-family:var(--font-heading)}.faq-list{gap:var(--space-sm);flex-direction:column;display:flex}.faq-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-cream-surface);transition:border-color var(--transition-fast)}.faq-item[open]{border-color:var(--color-olive)}.faq-summary{padding:var(--space-md) var(--space-lg);cursor:pointer;justify-content:space-between;align-items:center;gap:var(--space-sm);font-size:1.05rem;font-weight:600;list-style:none;display:flex}.faq-summary::-webkit-details-marker{display:none}.faq-summary:after{content:"+";color:var(--color-olive-dark);transition:transform var(--transition-fast);font-size:1.4rem;font-weight:400}.faq-item[open] .faq-summary:after{content:"−"}.faq-answer{padding:0 var(--space-lg) var(--space-md);color:var(--color-ink-muted);font-size:.95rem;line-height:1.6}
