:root{--color-primary:#e8dcc7;--color-primary-dark:#c9b48f;--color-accent:#6b4423;--color-text:#2e2118;--color-bg:#faf3e8;--color-white:#fff;--color-badge:#2f726b;--font-heading:Georgia, "Times New Roman", serif;--font-body:"Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);line-height:1.6}main{max-width:1200px;margin:0 auto;padding:32px 24px}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:400}.top-bar{background-color:var(--color-accent);text-align:center;padding:6px 24px}.top-bar-phone{color:var(--color-white);align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:inline-flex}.site-header{background-color:var(--color-white);border-bottom:1px solid var(--color-primary);z-index:100;padding:16px 24px;position:sticky;top:0;box-shadow:0 2px 8px #0000000a}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto;display:flex}.logo-link{align-items:center;gap:10px;display:flex}.logo-img{object-fit:cover;border-radius:50%;width:48px;height:48px}.logo-text{font-family:var(--font-heading);letter-spacing:2px;color:var(--color-text);font-size:1.5rem}.main-nav{gap:24px;display:flex}.main-nav a{text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid #0000;padding-bottom:4px;font-size:.95rem;transition:border-color .2s}.main-nav a:hover{border-color:var(--color-accent)}.lang-switcher{position:relative}.lang-current{border:1px solid var(--color-primary);font-size:.85rem;font-family:var(--font-body);color:var(--color-text);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;display:flex}.lang-arrow{font-size:.65rem;transition:transform .2s}.lang-current[aria-expanded=true] .lang-arrow{transform:rotate(180deg)}.lang-options{background-color:var(--color-white);border:1px solid var(--color-primary);z-index:50;border-radius:4px;min-width:100%;margin-top:4px;display:none;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 4px 12px #00000014}.lang-options.is-open{display:block}.lang-options a{color:var(--color-text);white-space:nowrap;padding:6px 10px;font-size:.85rem;display:block}.lang-options a:hover{background-color:var(--color-primary)}.nav-dropdown{align-items:center;gap:24px;display:flex}.header-right{align-items:center;gap:16px;display:flex}.mobile-menu-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;padding:0;display:none}.mobile-menu-toggle span{background-color:var(--color-text);border-radius:2px;width:100%;height:2px;transition:transform .2s,opacity .2s;display:block}.mobile-menu-toggle.is-active span:first-child{transform:translateY(7px)rotate(45deg)}.mobile-menu-toggle.is-active span:nth-child(2){opacity:0}.mobile-menu-toggle.is-active span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.site-footer{background-color:var(--color-primary);color:var(--color-text);margin-top:60px;padding:40px 24px 20px}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:40px;max-width:1200px;margin:0 auto;display:flex}.footer-col h4{margin-bottom:10px;font-size:1.1rem}.footer-tagline,.footer-delivery,.footer-contact{margin-bottom:6px;font-size:.9rem}.footer-phone{margin-bottom:10px;font-weight:700;display:inline-block}.footer-hours p{margin-bottom:4px;font-size:.9rem}.footer-social{gap:16px;display:flex}.footer-social a{font-size:.85rem;text-decoration:underline}.footer-bottom{text-align:center;border-top:1px solid #00000026;max-width:1200px;margin:30px auto 0;padding-top:16px;font-size:.8rem}.footer-bottom p{margin:2px 0}.filter-row{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.filter-row:last-of-type{margin-bottom:32px}.filter-btn{font-family:var(--font-body);border:1px solid var(--color-accent);color:var(--color-text);cursor:pointer;background-color:#0000;border-radius:20px;padding:8px 16px;font-size:.85rem;transition:background-color .2s,color .2s}.filter-btn:hover{background-color:var(--color-primary)}.filter-btn.active{background-color:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.catalog-grid,.favorites-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:28px;display:grid}.product-card{background-color:var(--color-white);border-radius:8px;transition:transform .2s;position:relative;overflow:hidden;box-shadow:0 2px 10px #0000000f}.product-card:hover{transform:translateY(-4px)}.product-badge{z-index:1;background-color:var(--color-badge);color:var(--color-white);text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:4px 12px;font-size:.75rem;font-weight:700;position:absolute;top:12px;left:12px}.favorite-btn{z-index:2;color:#aaa;cursor:pointer;background-color:#ffffffd9;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.1rem;transition:color .2s,transform .15s;display:flex;position:absolute;top:12px;right:12px}.favorite-btn:hover{transform:scale(1.1)}.favorite-btn.is-active{color:var(--color-accent)}.lightbox-trigger{cursor:zoom-in}.lightbox{z-index:1000;background-color:#2e2118eb;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.lightbox.is-open{display:flex}.lightbox-img{object-fit:contain;border-radius:8px;max-width:90vw;max-height:85vh;box-shadow:0 8px 32px #0006}.lightbox-close{color:var(--color-white);cursor:pointer;background:0 0;border:none;font-size:2.2rem;line-height:1;position:absolute;top:20px;right:24px}.lightbox-prev,.lightbox-next{color:var(--color-white);cursor:pointer;background:#ffffff26;border:none;border-radius:50%;width:48px;height:48px;font-size:2rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-counter{color:var(--color-white);font-size:.9rem;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.product-img{object-fit:cover;width:100%;height:300px;display:block}.product-image-link{display:block}.product-title-link{color:inherit;text-decoration:none;display:block}.product-title{padding:16px 16px 4px;font-size:1.05rem}.product-description{color:#666;padding:0 16px 8px;font-size:.85rem}.product-price{color:var(--color-accent);padding:0 16px 16px;font-size:1.1rem;font-weight:700}.promo-slider{background-color:var(--color-primary);border-radius:12px;margin-top:40px;position:relative;overflow:hidden}.promo-track{transition:transform .5s;display:flex}.promo-slide{text-align:center;color:var(--color-text);flex:0 0 100%;padding:28px 24px;font-size:1.1rem;font-weight:700}.promo-dots{justify-content:center;gap:8px;padding-bottom:16px;display:flex}.promo-dot{background-color:var(--color-white);opacity:.6;cursor:pointer;border:none;border-radius:50%;width:8px;height:8px;padding:0}.promo-dot.active{opacity:1;background-color:var(--color-accent)}@media (prefers-reduced-motion:reduce){.promo-track{transition:none}}.featured-strip{margin-top:60px}.featured-strip-title{color:var(--color-accent);margin-bottom:20px;font-size:1.5rem}.featured-track-wrapper{width:100%;overflow:hidden}.featured-track{gap:20px;width:max-content;animation:26s linear infinite featured-scroll;display:flex}.featured-track:hover{animation-play-state:paused}@keyframes featured-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.featured-track{animation:none}}.featured-mini-card{background-color:var(--color-white);text-align:center;border-radius:8px;flex:0 0 180px;overflow:hidden;box-shadow:0 2px 10px #0000000f}.featured-mini-card img{object-fit:cover;width:100%;height:140px;display:block}.featured-mini-title{padding:10px 10px 2px;font-size:.85rem}.featured-mini-price{color:var(--color-accent);padding:0 10px 10px;font-size:.9rem;font-weight:700}.about-section{max-width:700px}.about-section h2{color:var(--color-accent);margin-bottom:20px;font-size:1.8rem}.about-section p{margin-bottom:16px;font-size:1rem}.reviews-section{max-width:1000px}.reviews-section h2{color:var(--color-accent);margin-bottom:24px;font-size:1.8rem}.reviews-track-wrapper{width:100%;overflow:hidden}.reviews-track{gap:20px;width:max-content;animation:32s linear infinite reviews-scroll;display:flex}.reviews-track:hover{animation-play-state:paused}@keyframes reviews-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.reviews-track{animation:none}}.review-card{background-color:var(--color-white);border:1px solid var(--color-primary);border-radius:8px;flex:0 0 280px;padding:20px}.review-stars{color:var(--color-accent);margin-bottom:8px;font-size:1rem}.review-text{margin-bottom:10px;font-size:.9rem;font-style:italic}.review-name{text-align:right;font-size:.85rem;font-weight:700}.location-section{max-width:800px}.location-section h2{color:var(--color-accent);margin-bottom:16px;font-size:1.8rem}.location-address,.location-phone{margin-bottom:8px;font-size:1rem}.location-phone a{color:var(--color-accent);font-weight:700}.location-hours{margin-top:20px}.location-hours h3{font-family:var(--font-heading);color:var(--color-text);margin-bottom:10px;font-size:1.1rem;font-weight:400}.location-hours-row{justify-content:space-between;max-width:280px;margin-bottom:4px;font-size:.95rem;display:flex}.location-hours-row span:first-child{font-weight:700}.faq-section{margin-top:40px}.faq-list{border-top:1px solid var(--color-primary)}.faq-item{border-bottom:1px solid var(--color-primary)}.faq-question{text-align:left;width:100%;font-family:var(--font-body);color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;font-size:.95rem;font-weight:700;display:flex}.faq-icon{color:var(--color-accent);flex-shrink:0;font-size:1.3rem;line-height:1;transition:transform .2s}.faq-item.is-open .faq-icon{transform:rotate(45deg)}.faq-answer{grid-template-rows:0fr;transition:grid-template-rows .3s;display:grid}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-answer-inner{min-height:0;overflow:hidden}.faq-answer-inner p{color:#555;margin:0;padding:0 0 18px;font-size:.9rem;line-height:1.6}.map-embed{border-radius:8px;margin-top:20px;overflow:hidden}.map-embed iframe{display:block}.review-cta{border-top:1px solid var(--color-primary);text-align:center;margin-top:24px;padding-top:20px}.review-cta-rating{color:var(--color-text);margin-bottom:12px;font-size:.95rem}.review-cta-primary{background-color:var(--color-accent);color:var(--color-white);border-radius:24px;padding:12px 28px;font-size:.95rem;font-weight:700;transition:opacity .2s;display:inline-block}.review-cta-primary:hover{opacity:.85}.review-cta-secondary{color:#666;margin-top:12px;font-size:.85rem;text-decoration:underline;display:block}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.reveal{transition:opacity .6s,transform .6s}.reveal-hidden{opacity:0;transform:translateY(24px)}.hero-section{grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:40px 0 60px;display:grid}.hero-text{text-align:left}.hero-section h1{margin-bottom:12px;font-size:2.2rem}.hero-subtitle{color:#555;margin-bottom:8px;font-size:1.1rem}.hero-delivery{color:var(--color-accent);margin-bottom:24px;font-size:1rem;font-weight:700}.hero-cta{background-color:var(--color-accent);color:var(--color-white);letter-spacing:1px;text-transform:uppercase;border-radius:24px;padding:12px 32px;font-size:.95rem;transition:opacity .2s;display:inline-block}.hero-cta:hover{opacity:.85}.hero-image img{object-fit:cover;object-position:top;border-radius:12px;width:100%;max-height:480px;display:block;box-shadow:0 4px 20px #0000001a}.about-section,.reviews-section,.location-section{margin-top:60px}.cart-link,.favorites-link{align-items:center;gap:4px;font-size:1.1rem;display:flex}.add-to-cart-btn{background-color:var(--color-accent);width:calc(100% - 32px);color:var(--color-white);cursor:pointer;border:none;border-radius:6px;margin:0 16px 16px;padding:10px;font-size:.9rem;transition:opacity .2s;display:block}.add-to-cart-btn:hover{opacity:.85}.cart-section{max-width:800px}.cart-section h1{margin-bottom:24px}.cart-row{border-bottom:1px solid var(--color-primary);grid-template-columns:80px 1fr auto auto;align-items:center;gap:16px;padding:16px 0;display:grid}.cart-row-img{object-fit:cover;border-radius:6px;width:80px;height:80px}.cart-row-title{margin-bottom:4px;font-size:.95rem}.cart-row-price{color:#666;font-size:.85rem}.cart-row-qty{align-items:center;gap:8px;display:flex}.qty-btn{border:1px solid var(--color-accent);cursor:pointer;background-color:#0000;border-radius:4px;width:28px;height:28px;font-size:1rem}.cart-remove-btn{color:#999;cursor:pointer;background:0 0;border:none;font-size:.8rem;text-decoration:underline}.favorites-remove-btn{color:#999;cursor:pointer;text-align:center;background:0 0;border:none;width:calc(100% - 32px);margin:0 16px 16px;font-size:.8rem;text-decoration:underline;display:block}.cart-empty{color:#666;margin:20px 0}.cart-total{text-align:right;margin-top:24px;font-size:1.2rem}.order-form{border-top:1px solid var(--color-primary);flex-direction:column;gap:16px;max-width:500px;margin-top:40px;padding-top:24px;display:flex}.order-form h2{margin-bottom:4px;font-size:1.4rem}.order-form label{flex-direction:column;gap:6px;font-size:.9rem;display:flex}.order-form input,.order-form textarea{font-family:var(--font-body);border:1px solid var(--color-primary-dark);border-radius:6px;padding:10px;font-size:.95rem}.order-form-row{gap:16px;display:flex}.order-form-row label{flex:1}.order-form .order-form-checkbox{color:#666;flex-direction:row;align-items:flex-start;gap:8px;font-size:.8rem}.order-form-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-accent);flex-shrink:0;margin-top:3px}.order-form-subheading{font-family:var(--font-heading);color:var(--color-accent);margin-top:8px;margin-bottom:-4px;font-size:1.05rem;font-weight:400}.order-form-field{flex-direction:column;gap:6px;display:flex}.field-label{font-size:.9rem}.toggle-group{gap:10px;display:flex}.toggle-option{text-align:center;border:1px solid var(--color-accent);cursor:pointer;border-radius:20px;flex:1;padding:10px;font-size:.9rem;transition:background-color .2s,color .2s}.toggle-option input{display:none}.toggle-option.active{background-color:var(--color-accent);color:var(--color-white)}.pickup-note{color:var(--color-accent);background-color:var(--color-primary);border-radius:8px;padding:10px 14px;font-size:.85rem}.order-form button[type=submit]{background-color:var(--color-accent);color:var(--color-white);cursor:pointer;border:none;border-radius:24px;padding:14px;font-size:1rem;transition:opacity .2s}.order-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.order-status-msg{font-size:.9rem}.order-status-msg.success{color:#2e7d32}.order-status-msg.error{color:#c62828}.product-detail{max-width:1000px}.product-detail-back{color:var(--color-accent);margin-bottom:20px;font-size:.9rem;display:inline-block}.product-detail-layout{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.product-detail-image img{border-radius:12px;width:100%;display:block;box-shadow:0 4px 20px #0000001a}.product-detail-info h1{margin-bottom:12px;font-size:1.8rem}.product-detail-description{color:#555;margin-bottom:16px;font-size:1rem;line-height:1.6}.product-detail-price{color:var(--color-accent);margin-bottom:24px;font-size:1.6rem;font-weight:700}.addon-section{margin-bottom:24px}.addon-section h2{color:var(--color-text);margin-bottom:12px;font-size:1.1rem}.addon-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;margin-bottom:12px;display:grid}.addon-item{text-align:center;border:1px solid var(--color-primary);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;padding:12px 8px;transition:border-color .2s,background-color .2s;display:flex;position:relative}.addon-item:has(.addon-checkbox:checked){border-color:var(--color-accent);background-color:var(--color-primary)}.addon-checkbox{width:16px;height:16px;accent-color:var(--color-accent);position:absolute;top:8px;right:8px}.addon-item img{object-fit:contain;width:100%;height:90px;margin-bottom:8px}.addon-item-title{margin-bottom:4px;font-size:.8rem}.addon-item-price{color:var(--color-accent);font-size:.85rem;font-weight:700}.addon-toggle-btn{color:var(--color-accent);cursor:pointer;background:0 0;border:none;margin-bottom:20px;padding:0;font-size:.85rem;text-decoration:underline}.add-to-cart-btn.product-detail-add-btn{width:100%;margin:0}@media (width<=480px){.header-inner{flex-flow:row;justify-content:space-between;align-items:center;position:relative}.logo-link{max-width:calc(100% - 160px)}.logo-img{width:36px;height:36px}.logo-text{letter-spacing:.5px;font-size:.95rem}.header-right{gap:8px}.mobile-menu-toggle{display:flex}.nav-dropdown{background-color:var(--color-white);border-bottom:1px solid var(--color-primary);z-index:99;flex-direction:column;align-items:flex-start;gap:16px;padding:16px 24px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 4px 12px #00000014}.nav-dropdown.is-open{display:flex}.main-nav{flex-direction:column;gap:10px;width:100%}.footer-inner{flex-direction:column;gap:24px}.catalog-grid{grid-template-columns:1fr}.product-img{height:240px}.hero-section{border-radius:12px;align-items:flex-end;min-height:65vh;max-height:640px;padding:0;display:flex;position:relative;overflow:hidden}.hero-section:before{content:"";z-index:1;background:linear-gradient(#2e21180d 0%,#2e211859 50%,#2e2118e0 100%);position:absolute;inset:0}.hero-image{z-index:0;position:absolute;inset:0}.hero-image img{object-fit:cover;width:100%;height:100%;max-height:none;box-shadow:none;border-radius:0}.hero-text{z-index:2;text-align:left;width:100%;padding:32px 24px;position:relative}.hero-section h1{color:var(--color-white)}.hero-subtitle{color:var(--color-white);opacity:.95}.hero-delivery{color:var(--color-white)}.hero-cta{box-shadow:0 2px 10px #0000004d}.order-form-row{flex-direction:column}.product-detail-layout{grid-template-columns:1fr}}
