.header{background-color:var(--color-white);box-shadow:var(--shadow-sm);position:-webkit-sticky;position:sticky;top:0;transition:box-shadow var(--transition-normal);z-index:100}.header.scrolled{box-shadow:var(--shadow-md)}.header-container{justify-content:space-between;margin:0 auto;max-width:1400px;padding:var(--spacing-md) var(--spacing-lg)}.header-container,.logo{align-items:center;display:flex}.logo{text-decoration:none}.logo-text{color:var(--color-primary);font-family:var(--font-heading);font-size:1.5rem;font-weight:600;letter-spacing:.5px}.logo-image{height:48px;max-width:200px;object-fit:contain;width:auto}.main-nav{gap:var(--spacing-xl)}.main-nav,.nav-list{align-items:center;display:flex}.nav-list{gap:var(--spacing-lg);list-style:none;margin:0;padding:0}.nav-list a{color:var(--color-text);font-size:.9rem;font-weight:500;padding:var(--spacing-xs) 0;position:relative;text-decoration:none;transition:color var(--transition-fast)}.nav-list a:after{background-color:var(--color-primary);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width var(--transition-normal);width:0}.nav-list a.active,.nav-list a:hover{color:var(--color-primary)}.nav-list a.active:after,.nav-list a:hover:after{width:100%}.secondary-nav{font-size:.85rem}.secondary-nav a{color:var(--color-text-light)}.cart-link{align-items:center;color:var(--color-text);display:flex;justify-content:center;padding:var(--spacing-sm);position:relative;transition:color var(--transition-fast)}.cart-link:hover{color:var(--color-primary)}.cart-icon{height:24px;width:24px}.cart-count{align-items:center;background-color:var(--color-primary);border-radius:var(--radius-full);color:var(--color-white);display:flex;font-size:.7rem;font-weight:600;height:18px;justify-content:center;position:absolute;right:0;top:0;width:18px}.cart-link.pulse .cart-count{animation:cartPulse .5s ease-out}@keyframes cartPulse{0%{transform:scale(1)}50%{background-color:var(--color-success);transform:scale(1.4)}to{transform:scale(1)}}.mobile-menu-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;height:18px;justify-content:space-between;padding:0;width:24px}.mobile-menu-toggle span{background-color:var(--color-text);display:block;height:2px;transition:all var(--transition-normal);width:100%}.mobile-menu-toggle.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.tagline-banner{background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-sm) var(--spacing-md);text-align:center}.tagline-banner p{font-size:.85rem;font-style:italic;letter-spacing:.5px;margin:0}@media (max-width:1024px){.nav-list{gap:var(--spacing-md)}.nav-list a{font-size:.85rem}}@media (max-width:768px){.mobile-menu-toggle{display:flex;z-index:101}.main-nav{align-items:center;background-color:var(--color-white);bottom:0;flex-direction:column;gap:var(--spacing-xl);justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity var(--transition-normal),visibility var(--transition-normal);visibility:hidden}.main-nav.open{opacity:1;visibility:visible}.nav-list{flex-direction:column;gap:var(--spacing-md);text-align:center}.nav-list a{font-size:1.25rem}.secondary-nav a{font-size:1rem}.header-container{padding:var(--spacing-md)}}@media (max-width:576px){.logo-text{font-size:1.25rem}.tagline-banner p{font-size:.75rem}}.footer{background-color:var(--color-background-alt)}.newsletter-section{background-color:var(--color-white);border-top:1px solid var(--color-border);padding:var(--spacing-xxl) 0;text-align:center}.newsletter-section h3{color:var(--color-primary);font-size:1.5rem;margin-bottom:var(--spacing-md)}.newsletter-section>.container>p{color:var(--color-text-light);margin:0 auto var(--spacing-lg);max-width:600px}.newsletter-form{display:flex;gap:var(--spacing-sm);margin:0 auto;max-width:500px}.newsletter-form input{border:2px solid var(--color-border);border-radius:var(--radius-sm);flex:1 1;font-size:1rem;padding:var(--spacing-md)}.newsletter-form input:focus{border-color:var(--color-primary);outline:none}.newsletter-form .btn{white-space:nowrap}.newsletter-success{color:var(--color-success);font-weight:600}.privacy-note{color:var(--color-text-muted);font-size:.8rem;margin-top:var(--spacing-md)}.footer-main{padding:var(--spacing-xxl) 0}.footer-grid{grid-gap:var(--spacing-xl);display:grid;gap:var(--spacing-xl);grid-template-columns:repeat(4,1fr)}.footer-section h4{color:var(--color-primary);font-family:var(--font-heading);font-size:1.1rem;font-weight:600;margin-bottom:var(--spacing-md)}.footer-section address{color:var(--color-text-light);font-style:normal;line-height:1.8;margin-bottom:var(--spacing-md)}.footer-email{color:var(--color-primary);font-weight:500}.footer-email:hover{text-decoration:underline}.hours-list li{border-bottom:1px solid var(--color-border);color:var(--color-text-light);padding:var(--spacing-xs) 0}.hours-list li:last-child{border-bottom:none}.hours-list span:first-child{color:var(--color-text);font-weight:500}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:var(--spacing-sm)}.footer-links a{color:var(--color-text-light);transition:color var(--transition-fast)}.footer-links a:hover{color:var(--color-primary)}.social-links{display:flex;gap:var(--spacing-md)}.social-links a{align-items:center;background-color:var(--color-primary);border-radius:var(--radius-full);color:var(--color-white);display:flex;height:40px;justify-content:center;transition:background-color var(--transition-fast),transform var(--transition-fast);width:40px}.social-links a:hover{background-color:var(--color-primary-dark);transform:translateY(-2px)}.social-links svg{height:20px;width:20px}.footer-bottom{background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-lg) 0;text-align:center}.footer-bottom p{color:#ffffffe6;font-size:.9rem;margin:0}.footer-bottom .tagline{font-style:italic;margin-top:var(--spacing-sm);opacity:.8}@media (max-width:992px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.footer-grid{grid-template-columns:1fr;text-align:center}.hours-list li{gap:var(--spacing-xl)}.hours-list li,.social-links{justify-content:center}.newsletter-form{flex-direction:column}.newsletter-form .btn,.newsletter-form input{width:100%}}.block{position:relative;width:100%}.block-renderer{display:flex;flex-direction:column}.block .container{margin:0 auto;max-width:1200px;padding:0 24px}.padding-none{padding-bottom:0;padding-top:0}.padding-small{padding-bottom:24px;padding-top:24px}.padding-medium{padding-bottom:48px;padding-top:48px}.padding-large{padding-bottom:80px;padding-top:80px}.padding-xlarge{padding-bottom:120px;padding-top:120px}.block-header{margin-bottom:40px}.block-title{color:#333;color:var(--color-text,#333);font-family:Playfair Display,serif;font-family:var(--font-heading,"Playfair Display",serif);font-size:2.25rem;font-weight:600;margin:0 0 16px}.block-subtitle{color:#666;color:var(--color-textLight,#666);font-size:1.125rem;margin:0;max-width:600px}.block-header.text-center .block-subtitle{margin-left:auto;margin-right:auto}.rich-text{color:#333;color:var(--color-text,#333);font-family:Open Sans,sans-serif;font-family:var(--font-body,"Open Sans",sans-serif);font-size:1rem;line-height:1.7}.rich-text h1,.rich-text h2,.rich-text h3,.rich-text h4{font-family:Playfair Display,serif;font-family:var(--font-heading,"Playfair Display",serif);margin-bottom:.5em;margin-top:1.5em}.rich-text h2{font-size:1.75rem}.rich-text h3{font-size:1.5rem}.rich-text h4{font-size:1.25rem}.rich-text p{margin:0 0 1em}.rich-text strong{font-weight:600}.rich-text blockquote{background:#f5f5f5;background:var(--color-backgroundAlt,#f5f5f5);border-left:4px solid #4a6741;border-left:4px solid var(--color-primary,#4a6741);font-style:italic;margin:1.5em 0;padding:1em 1.5em}.rich-text a{color:#4a6741;color:var(--color-primary,#4a6741);text-decoration:underline}.rich-text ol,.rich-text ul{margin:1em 0;padding-left:1.5em}.rich-text li{margin-bottom:.5em}.btn{align-items:center;display:inline-flex;font-family:Open Sans,sans-serif;font-family:var(--font-body,"Open Sans",sans-serif);font-size:1rem;gap:8px;justify-content:center;padding:12px 24px;transition:all .2s ease}.btn-primary{background:#4a6741;background:var(--color-primary,#4a6741);border-color:#4a6741;border-color:var(--color-primary,#4a6741)}.btn-primary:hover{background:#3d5636;background:var(--color-secondary,#3d5636);border-color:#3d5636;border-color:var(--color-secondary,#3d5636)}.btn-secondary{background:#8b7355;background:var(--color-secondary,#8b7355);border-color:#8b7355;border-color:var(--color-secondary,#8b7355);color:#fff}.btn-outline{border-color:#4a6741;border-color:var(--color-primary,#4a6741);color:#4a6741;color:var(--color-primary,#4a6741)}.btn-outline:hover{background:#4a6741;background:var(--color-primary,#4a6741);color:#fff}.btn-white{background:#fff;color:#4a6741;color:var(--color-primary,#4a6741)}.btn-white:hover{background:#ffffffe6}.btn-outline-white{background:#0000;border-color:#fff;color:#fff}.btn-outline-white:hover{background:#fff;color:#4a6741;color:var(--color-primary,#4a6741)}.btn-lg{font-size:1.125rem;padding:16px 32px}.btn-sm{font-size:.875rem;padding:8px 16px}.block-hero{align-items:center;background-position:50%;background-size:cover;color:#fff;display:flex;justify-content:center;min-height:70vh;position:relative}.hero-overlay{bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.hero-content{padding:60px 0;width:100%;z-index:2}.hero-headline{font-family:Playfair Display,serif;font-family:var(--font-heading,"Playfair Display",serif);font-size:3.5rem;font-weight:700;line-height:1.2;margin:0 0 16px;text-shadow:0 2px 4px #0000004d}.hero-subheadline{font-size:1.375rem;font-weight:400;margin:0 0 32px;max-width:600px;opacity:.95;text-shadow:0 1px 2px #0000004d}.block-hero[style*="text-align: center"] .hero-subheadline{margin-left:auto;margin-right:auto}.hero-buttons{flex-wrap:wrap;gap:16px}.block-hero[style*="text-align: center"] .hero-buttons{justify-content:center}.block-text .text-content{max-width:800px}.two-col-grid{grid-gap:48px;display:grid;gap:48px;grid-template-columns:1fr 1fr}.two-col-grid.align-top{align-items:start}.two-col-grid.align-center{align-items:center}.two-col-grid.align-bottom{align-items:end}.two-col-image img{border-radius:8px;box-shadow:0 4px 20px #0000001a;height:auto;width:100%}.two-col-content{display:flex;flex-direction:column;justify-content:center}.two-col-cta{margin-top:24px}@media (max-width:768px){.two-col-grid{gap:32px;grid-template-columns:1fr}.two-col-left{order:1}.two-col-right{order:2}}.gallery-grid{grid-gap:16px;gap:16px}.gallery-grid.gap-small{gap:8px}.gallery-grid.gap-medium{gap:16px}.gallery-grid.gap-large{gap:24px}.gallery-item{border-radius:8px;cursor:pointer;transition:transform .2s ease}.gallery-item:hover{transform:scale(1.02)}.gallery-item img{display:block}.gallery-item.aspect-1-1{aspect-ratio:1/1}.gallery-item.aspect-4-3{aspect-ratio:4/3}.gallery-item.aspect-16-9{aspect-ratio:16/9}.gallery-caption{background:linear-gradient(#0000,#000000b3);bottom:0;color:#fff;font-size:.875rem;left:0;padding:12px;position:absolute;right:0}.gallery-lightbox{align-items:center;background:#000000f2;bottom:0;display:flex;justify-content:center;left:0;padding:40px;position:fixed;right:0;top:0;z-index:9999}.gallery-lightbox img{max-height:100%;max-width:100%;object-fit:contain}.lightbox-close{background:none;border:none;color:#fff;cursor:pointer;font-size:2rem;line-height:1;padding:10px;position:absolute;right:20px;top:20px}.lightbox-caption{bottom:20px;color:#fff;font-size:1rem;left:50%;position:absolute;text-align:center;transform:translateX(-50%)}.block-cta{background-position:50%;background-size:cover}.cta-content{margin:0 auto;max-width:800px}.cta-headline{font-family:Playfair Display,serif;font-family:var(--font-heading,"Playfair Display",serif);font-size:2.5rem;font-weight:600;margin:0 0 16px}.cta-subheadline{font-size:1.25rem;margin:0 0 32px;opacity:.95}.cta-buttons{display:flex;flex-wrap:wrap;gap:16px}.block-cta[style*="text-align: center"] .cta-buttons,.block-cta[style*="text-align: center"] .cta-content{justify-content:center}.faq-container{margin:0 auto;max-width:800px}.faq-list{gap:12px}.faq-item{border:1px solid #e0e0e0;border:1px solid var(--color-border,#e0e0e0);border-radius:8px}.faq-list.style-minimal .faq-item{border:none;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--color-border,#e0e0e0);border-radius:0}.faq-list.style-cards .faq-item{box-shadow:0 2px 8px #00000014}.faq-question{color:#333;color:var(--color-text,#333);font-family:Open Sans,sans-serif;font-family:var(--font-body,"Open Sans",sans-serif);font-size:1.125rem;padding:20px 24px;transition:background-color .2s}.faq-question:hover{background-color:#f5f5f5;background-color:var(--color-backgroundAlt,#f5f5f5)}.faq-icon{color:#4a6741;color:var(--color-primary,#4a6741);font-weight:300;margin-left:16px}.faq-answer-content{color:#666;color:var(--color-textLight,#666);padding:0 24px 24px}.faq-answer-content p{margin:0 0 1em}.contact-info-grid{display:flex;flex-direction:column;gap:24px}.contact-info-grid.layout-cards,.contact-info-grid.layout-horizontal{flex-direction:row;flex-wrap:wrap}.contact-info-grid.layout-cards .contact-info-item{background:#f5f5f5;background:var(--color-backgroundAlt,#f5f5f5);border-radius:8px;flex:1 1;min-width:200px;padding:24px}.contact-info-item{display:flex;gap:16px}.contact-icon{background:#4a6741;background:var(--color-primary,#4a6741);color:#fff}.contact-text h4{color:#666;color:var(--color-textLight,#666);font-size:.875rem;font-weight:600;letter-spacing:.5px;margin:0 0 4px;text-transform:uppercase}.contact-text p{color:#333;color:var(--color-text,#333);font-size:1rem}.contact-text a{color:#4a6741;color:var(--color-primary,#4a6741)}.hours-list{list-style:none;margin:0;padding:0}.hours-list li{display:flex;gap:16px;justify-content:space-between;padding:4px 0}.hours-day{font-weight:500}.hours-time{color:#666;color:var(--color-textLight,#666)}.contact-form-container{margin:0 auto;max-width:600px}.form-description{color:#666;color:var(--color-textLight,#666);margin-bottom:24px}.contact-form .form-fields{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.contact-form .form-group{display:flex;flex-direction:column;gap:6px}.contact-form label{color:#333;color:var(--color-text,#333);font-size:.9375rem;font-weight:500}.contact-form .required{color:#dc3545}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid #ddd;border:1px solid var(--color-border,#ddd);border-radius:6px;font-family:Open Sans,sans-serif;font-family:var(--font-body,"Open Sans",sans-serif);font-size:1rem;padding:12px 16px;transition:border-color .2s,box-shadow .2s}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#4a6741;border-color:var(--color-primary,#4a6741);box-shadow:0 0 0 3px #4a67411a;outline:none}.contact-form textarea{min-height:120px;resize:vertical}.form-success{padding:48px 24px}.form-success svg{color:#4a6741;color:var(--color-primary,#4a6741);margin-bottom:16px}.form-success h3{font-size:1.5rem;margin:0 0 8px}.form-success p{color:#666;color:var(--color-textLight,#666);margin:0}.form-error{background:#fee;border:1px solid #dc3545;border-radius:6px;color:#dc3545;margin-bottom:20px;padding:12px 16px}.feature-cards-grid{grid-gap:24px;display:grid;gap:24px}.feature-card{padding:32px 24px;text-align:center}.feature-cards-grid.style-bordered .feature-card{border:1px solid #e0e0e0;border:1px solid var(--color-border,#e0e0e0);border-radius:8px}.feature-cards-grid.style-filled .feature-card{background:#f5f5f5;background:var(--color-backgroundAlt,#f5f5f5);border-radius:8px}.feature-icon{align-items:center;background:#4a6741;background:var(--color-primary,#4a6741);border-radius:50%;color:#fff;display:inline-flex;height:64px;justify-content:center;margin-bottom:16px;width:64px}.feature-icon svg{height:28px;width:28px}.feature-icon-text{font-size:1.5rem}.feature-title{color:#333;color:var(--color-text,#333);font-family:Playfair Display,serif;font-family:var(--font-heading,"Playfair Display",serif);font-size:1.25rem;font-weight:600;margin:0 0 8px}.feature-description{color:#666;color:var(--color-textLight,#666);line-height:1.6;margin:0}.block-image .image-figure{margin:0}.image-figure.size-small{max-width:400px}.image-figure.size-medium{max-width:600px}.image-figure.size-large{max-width:900px}.image-figure.size-full{max-width:100%}.block-image[style*="text-align: center"] .image-figure{margin-left:auto;margin-right:auto}.block-image img{border-radius:8px;height:auto;width:100%}.block-image figcaption{color:#666;color:var(--color-textLight,#666);font-size:.875rem;font-style:italic;margin-top:12px}.video-wrapper{background:#000;border-radius:8px;margin:0 auto;max-width:900px;overflow:hidden;position:relative;width:100%}.video-wrapper.aspect-16-9{aspect-ratio:16/9}.video-wrapper.aspect-4-3{aspect-ratio:4/3}.video-wrapper.aspect-1-1{aspect-ratio:1/1}.video-wrapper iframe,.video-wrapper video{height:100%;left:0;position:absolute;top:0;width:100%}.video-placeholder{align-items:center;color:#666;display:flex;height:100%;justify-content:center}.video-caption{color:#666;color:var(--color-textLight,#666);font-size:.875rem;margin-top:12px}.testimonials-grid{grid-gap:24px;display:grid;gap:24px}.testimonials-grid.layout-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.testimonials-grid.layout-stacked{margin:0 auto;max-width:700px}.testimonial-card{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--color-border,#e0e0e0);border-radius:8px;padding:32px}.testimonial-quote{margin-bottom:20px;position:relative}.quote-icon{color:#4a6741;color:var(--color-primary,#4a6741);height:32px;margin-bottom:12px;opacity:.3;width:32px}.testimonial-quote p{color:#333;color:var(--color-text,#333);font-size:1.125rem;font-style:italic;line-height:1.6;margin:0}.testimonial-author{align-items:center;display:flex;gap:12px}.author-image{border-radius:50%;height:48px;object-fit:cover;width:48px}.author-info{display:flex;flex-direction:column}.author-name{color:#333;color:var(--color-text,#333);font-weight:600}.author-location,.author-role{color:#666;color:var(--color-textLight,#666);font-size:.875rem}.testimonial-rating{margin-top:12px}.testimonial-rating .star{color:#ddd}.testimonial-rating .star.filled{color:#f5a623}.products-grid{grid-gap:24px;gap:24px;margin-bottom:32px}.products-loading{color:#666;color:var(--color-textLight,#666);padding:48px;text-align:center}.product-card{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--color-border,#e0e0e0);border-radius:8px;display:block;text-decoration:none;transition:transform .2s,box-shadow .2s}.product-card:hover{box-shadow:0 8px 24px #0000001a}.product-image{aspect-ratio:4/3;background:#f5f5f5;background:var(--color-backgroundAlt,#f5f5f5)}.product-image-placeholder{align-items:center;color:#999;color:var(--color-textLight,#999);display:flex;font-size:.875rem;height:100%;justify-content:center;width:100%}.product-info{padding:16px}.product-name{color:#333;color:var(--color-text,#333);font-family:Playfair Display,serif;font-family:var(--font-heading,"Playfair Display",serif);font-size:1.125rem;font-weight:600;margin:0 0 8px}.product-description{color:#666;color:var(--color-textLight,#666);font-size:.875rem;line-height:1.5;margin:0 0 12px}.product-price{color:#4a6741;color:var(--color-primary,#4a6741);font-size:1.125rem}.product-unit{color:#666;color:var(--color-textLight,#666);font-size:.875rem;font-weight:400}.products-cta{margin-top:32px}@media (max-width:1024px){.hero-headline{font-size:2.75rem}.block-title,.cta-headline{font-size:2rem}}@media (max-width:768px){.block .container{padding:0 16px}.padding-large{padding-bottom:48px;padding-top:48px}.padding-xlarge{padding-bottom:80px;padding-top:80px}.hero-headline{font-size:2.25rem}.hero-subheadline{font-size:1.125rem}.hero-buttons{align-items:center;flex-direction:column}.block-title,.cta-headline{font-size:1.75rem}.feature-cards-grid{grid-template-columns:1fr}.products-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:480px){.products-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr!important}.contact-info-grid.layout-cards,.contact-info-grid.layout-horizontal{flex-direction:column}}.dynamic-page{min-height:60vh}.dynamic-page--loading{align-items:center;display:flex;justify-content:center;min-height:60vh}.loading-spinner{color:#666;color:var(--color-textLight,#666);text-align:center}.spinner{animation:spin .8s linear infinite;border:3px solid #e0e0e0;border-top-color:#4a6741;border:3px solid var(--color-border,#e0e0e0);border-top-color:var(--color-primary,#4a6741);margin:0 auto 16px}.dynamic-page--error{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:48px 24px;text-align:center}.error-message h1{color:#333;color:var(--color-text,#333);font-family:Playfair Display,serif;font-family:var(--font-heading,"Playfair Display",serif);font-size:2rem;margin:0 0 16px}.error-message p{color:#666;color:var(--color-textLight,#666);font-size:1.125rem;margin:0}.dynamic-page--empty{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:48px 24px;text-align:center}.empty-message h1{color:#333;color:var(--color-text,#333);font-family:Playfair Display,serif;font-family:var(--font-heading,"Playfair Display",serif);font-size:2rem;margin:0 0 16px}.empty-message p{color:#666;color:var(--color-textLight,#666);margin:0}.shop-page{min-height:80vh;padding:var(--spacing-xxl) 0}.shop-container{grid-gap:var(--spacing-xl);display:grid;gap:var(--spacing-xl);grid-template-columns:220px 1fr;margin:0 auto;max-width:1400px;padding:0 var(--spacing-lg)}.shop-sidebar{height:-webkit-fit-content;height:fit-content;position:-webkit-sticky;position:sticky;top:120px}.shop-sidebar h3{border-bottom:1px solid var(--color-border);color:var(--color-text-light);font-size:1rem;letter-spacing:1px;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);text-transform:uppercase}.category-list{list-style:none;margin:0;padding:0}.category-list li{margin-bottom:var(--spacing-xs)}.category-btn{background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-light);cursor:pointer;font-size:.95rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:all var(--transition-fast);width:100%}.category-btn:hover{background-color:var(--color-background-alt);color:var(--color-text)}.category-btn.active{background-color:var(--color-primary);color:var(--color-white)}.shop-main{min-height:400px}.products-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.product-card{background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;position:relative;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.product-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.product-card a{display:block;text-decoration:none}.product-image{background-color:var(--color-background-alt);overflow:hidden;padding-top:100%;position:relative}.product-image img{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform var(--transition-slow);width:100%}.product-card:hover .product-image img{transform:scale(1.05)}.product-image .badge{left:var(--spacing-sm);position:absolute;top:var(--spacing-sm)}.product-info{padding:var(--spacing-md)}.product-name{color:var(--color-text);font-family:var(--font-heading);font-size:1rem;font-weight:500;line-height:1.4;margin-bottom:var(--spacing-xs)}.product-price{color:var(--color-primary);font-size:.95rem;font-weight:600;margin:0}.quick-view-btn{background-color:var(--color-primary);border:none;bottom:0;color:var(--color-white);cursor:pointer;font-size:.85rem;font-weight:500;left:0;letter-spacing:1px;padding:var(--spacing-sm);position:absolute;right:0;text-transform:uppercase;transform:translateY(100%);transition:transform var(--transition-normal),background-color var(--transition-fast)}.product-card:hover .quick-view-btn{transform:translateY(0)}.quick-view-btn:hover{background-color:var(--color-primary-dark)}.no-products{padding:var(--spacing-xxl);text-align:center}.no-products p{color:var(--color-text-light);font-size:1.1rem;margin-bottom:var(--spacing-lg)}@media (max-width:992px){.shop-container{gap:var(--spacing-lg);grid-template-columns:180px 1fr}}@media (max-width:768px){.shop-container{grid-template-columns:1fr}.shop-sidebar{align-items:center;border-bottom:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);position:static}.shop-sidebar h3{border-bottom:none;margin-bottom:var(--spacing-sm);padding-bottom:0;width:100%}.category-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.category-list li{margin-bottom:0}.category-btn{border:1px solid var(--color-border);border-radius:20px;font-size:.85rem;padding:var(--spacing-xs) var(--spacing-md)}.category-btn.active{border-color:var(--color-primary)}.products-grid{gap:var(--spacing-md);grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.products-grid{gap:var(--spacing-sm)}.product-info{padding:var(--spacing-sm)}.product-name{font-size:.9rem}.product-price{font-size:.85rem}}.error-state,.loading-state{padding:var(--spacing-xxl)}.product-card.out-of-stock .product-image img{opacity:.6}.member-price{color:var(--color-primary);font-weight:700}.regular-price{color:var(--color-text-light);font-size:.9em;margin-left:var(--spacing-xs);text-decoration:line-through}.badge-featured{background-color:#e6a756;background-color:var(--color-accent,#e6a756)}.product-detail-page{padding:var(--spacing-xl) 0 var(--spacing-xxxl)}.product-detail-grid{grid-gap:var(--spacing-xxl);align-items:start;display:grid;gap:var(--spacing-xxl);grid-template-columns:1fr 1fr}.product-images{position:-webkit-sticky;position:sticky;top:120px}.main-image{border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden}.main-image img{height:auto;width:100%}.product-info-detail h1{font-size:2rem;margin-bottom:var(--spacing-md)}.product-info-detail .price{color:var(--color-primary);font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-lg)}.product-info-detail .description{color:var(--color-text-light);font-size:1.05rem;line-height:1.8;margin-bottom:var(--spacing-xl)}.product-options{margin-bottom:var(--spacing-lg)}.product-options label{display:block;font-weight:600;margin-bottom:var(--spacing-sm)}.product-options select{background-color:var(--color-white);border:2px solid var(--color-border);border-radius:var(--radius-sm);font-size:1rem;padding:var(--spacing-md);width:100%}.product-options select:focus{border-color:var(--color-primary);outline:none}.quantity-selector{margin-bottom:var(--spacing-lg)}.quantity-selector label{display:block;font-weight:600;margin-bottom:var(--spacing-sm)}.quantity-controls{align-items:center;display:flex;gap:0;max-width:150px}.quantity-controls input{border:2px solid var(--color-border);border-left:none;border-right:none;font-size:1rem;padding:var(--spacing-sm);text-align:center;width:60px}.qty-btn{align-items:center;background-color:var(--color-background-alt);border:2px solid var(--color-border);cursor:pointer;display:flex;font-size:1.25rem;height:45px;justify-content:center;transition:background-color var(--transition-fast);width:45px}.qty-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.qty-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.qty-btn:hover{background-color:var(--color-border)}.add-to-cart{margin-bottom:var(--spacing-xl);width:100%}.add-to-cart.disabled{background-color:var(--color-text-muted);border-color:var(--color-text-muted);cursor:not-allowed}.add-to-cart.added{background-color:var(--color-success);border-color:var(--color-success)}.qty-btn:disabled{cursor:not-allowed;opacity:.5}.qty-btn:disabled:hover{background-color:var(--color-background-alt)}.product-details{border-top:1px solid var(--color-border);padding-top:var(--spacing-lg)}.product-details h3{font-size:1.1rem;margin-bottom:var(--spacing-md)}.product-details ul{list-style:none;margin:0;padding:0}.product-details li{color:var(--color-text-light);margin-bottom:var(--spacing-sm);padding-left:var(--spacing-lg);position:relative}.product-details li:before{color:var(--color-primary);content:"✓";left:0;position:absolute}@media (max-width:992px){.product-detail-grid{gap:var(--spacing-xl)}.product-images{position:static}}@media (max-width:768px){.product-detail-grid{gap:var(--spacing-lg);grid-template-columns:1fr}.product-info-detail h1{font-size:1.5rem}.product-info-detail .price{font-size:1.25rem}}.price-container{margin-bottom:var(--spacing-lg)}.member-price-display{display:flex;flex-direction:column}.member-price-display .price-label{color:var(--color-success);font-size:.8rem;font-weight:400;letter-spacing:.5px;text-transform:uppercase}.regular-price-display{color:var(--color-text-light);font-size:1rem;margin-top:var(--spacing-xs);text-decoration:line-through}.low-stock-warning{background-color:#d977061a;border-radius:var(--radius-sm);color:#d97706;color:var(--color-warning,#d97706);font-weight:600;margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.sold-out-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.sold-out-overlay span{background-color:var(--color-white);color:var(--color-error);font-weight:700;letter-spacing:1px;padding:var(--spacing-sm) var(--spacing-lg);text-transform:uppercase}.shipping-info{border-top:1px solid var(--color-border);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.shipping-info h3{font-size:1.1rem;margin-bottom:var(--spacing-sm)}.shipping-info p{color:var(--color-text-light);font-size:.95rem}.menu-page{background-color:var(--color-background);min-height:100vh}.menu-hero{align-items:center;background:linear-gradient(135deg,var(--color-primary-dark) 0,var(--color-primary) 100%);display:flex;justify-content:center;min-height:300px;overflow:hidden;position:relative}.menu-hero-image{height:100%;left:0;position:absolute;top:0;width:100%}.menu-hero-image img{height:100%;object-fit:cover;opacity:.3;width:100%}.menu-hero-default{padding:var(--spacing-xl)}.menu-logo{height:auto;max-width:200px}.menu-hero-content{color:var(--color-white);padding:var(--spacing-xl);position:relative;text-align:center;z-index:1}.menu-hero-content h1{font-size:2.5rem;margin-bottom:var(--spacing-md);text-shadow:2px 2px 4px #0000004d}.menu-description{font-size:1.1rem;margin:0 auto var(--spacing-md);max-width:600px;opacity:.95}.menu-season{background-color:#fff3;border-radius:20px;display:inline-block;font-size:.9rem;padding:var(--spacing-xs) var(--spacing-md);text-transform:capitalize}.dietary-legend{background-color:var(--color-white);border-bottom:1px solid var(--color-border)}.legend-items{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);justify-content:center}.legend-item{align-items:center;color:var(--color-text-light);display:flex;font-size:.85rem;gap:var(--spacing-xs)}.legend-item .icon{align-items:center;background-color:var(--color-primary-light);border-radius:4px;color:var(--color-primary-dark);display:inline-flex;font-size:.7rem;font-weight:700;height:24px;justify-content:center;width:24px}.menu-content{padding:var(--spacing-xxl) 0}.menu-section{margin-bottom:var(--spacing-xxl)}.menu-section:last-child{margin-bottom:0}.section-header{border-bottom:2px solid var(--color-primary);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);text-align:center}.section-header h2{color:var(--color-primary);font-size:1.75rem;margin-bottom:var(--spacing-sm)}.section-header p{color:var(--color-text-light);font-style:italic}.menu-items{display:flex;flex-direction:column;gap:var(--spacing-md)}.menu-items.columns-2{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(2,1fr)}.menu-items.columns-3{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(3,1fr)}.menu-item{background-color:var(--color-white);border-radius:var(--radius-md);display:flex;gap:var(--spacing-md);padding:var(--spacing-md);transition:box-shadow var(--transition-fast)}.menu-item:hover{box-shadow:var(--shadow-sm)}.menu-item.featured{background-color:var(--color-primary-light);border:2px solid var(--color-primary)}.menu-item.unavailable{opacity:.6}.item-image{border-radius:var(--radius-sm);flex-shrink:0;height:100px;overflow:hidden;width:100px}.item-image img{height:100%;object-fit:cover;width:100%}.item-content{flex:1 1;min-width:0}.item-header{align-items:flex-start;display:flex;gap:var(--spacing-md);justify-content:space-between;margin-bottom:var(--spacing-xs)}.item-name{color:var(--color-text);font-size:1.1rem;font-weight:600;margin:0}.featured-badge{color:var(--color-accent);margin-left:var(--spacing-xs)}.item-price{color:var(--color-primary);font-weight:700}.item-description{color:var(--color-text-light);font-size:.9rem;line-height:1.5;margin-bottom:var(--spacing-sm)}.item-meta{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.dietary-icons{display:flex;gap:var(--spacing-xs)}.dietary-icon{align-items:center;background-color:var(--color-primary-light);border-radius:4px;color:var(--color-primary-dark);display:inline-flex;font-size:.65rem;font-weight:700;height:22px;justify-content:center;min-width:22px;padding:0 4px}.unavailable-label{color:var(--color-error);font-size:.8rem;font-style:italic}.allergen-warning{border-top:1px dashed var(--color-border);color:var(--color-text-muted);font-size:.8rem;margin-top:var(--spacing-xs);padding-top:var(--spacing-xs)}.no-items{color:var(--color-text-light);padding:var(--spacing-xxl)}.menu-footer,.no-items{text-align:center}.menu-footer p{color:var(--color-text-light);font-style:italic;margin:0 auto;max-width:600px}.menu-nav{text-align:center}.error-state,.loading-state{padding:var(--spacing-xxxl) var(--spacing-md)}.error-state p{color:var(--color-text-light);margin-bottom:var(--spacing-xl)}@media (max-width:768px){.menu-hero-content h1{font-size:1.75rem}.legend-items{gap:var(--spacing-md)}.legend-item{font-size:.8rem}.menu-items.columns-2,.menu-items.columns-3{grid-template-columns:1fr}.menu-item{flex-direction:column}.item-image{height:150px;width:100%}.item-header{flex-direction:column;gap:var(--spacing-xs)}.section-header h2{font-size:1.4rem}}@media (max-width:480px){.legend-items{justify-content:flex-start}}.blog-page{min-height:100vh}.blog-hero{align-items:center;display:flex;height:50vh;justify-content:center;min-height:350px;overflow:hidden;position:relative}.blog-hero-image{height:100%;left:0;position:absolute;top:0;width:100%}.blog-hero-image img{height:100%;object-fit:cover;width:100%}.blog-hero-image:after{background:linear-gradient(180deg,#0000004d,#00000080);content:"";height:100%;left:0;position:absolute;top:0;width:100%}.blog-hero-content{color:var(--color-white);position:relative;text-align:center;z-index:1}.blog-hero-content h1{font-size:3rem;margin:0 0 var(--spacing-sm);text-shadow:2px 2px 4px #0000004d}.blog-hero-content p{font-size:1.2rem;margin:0;opacity:.9}.blog-content{padding:var(--spacing-xxl) 0}.blog-grid{grid-gap:var(--spacing-xl);display:grid;gap:var(--spacing-xl);grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.blog-card{background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.blog-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.blog-card a{display:block;text-decoration:none}.blog-card-image{background-color:var(--color-background-alt);overflow:hidden;padding-top:60%;position:relative}.blog-card-image img{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform var(--transition-slow);width:100%}.blog-card:hover .blog-card-image img{transform:scale(1.05)}.blog-card-content{padding:var(--spacing-lg)}.blog-date{color:var(--color-text-light);display:block;font-size:.85rem;margin-bottom:var(--spacing-sm)}.blog-card-content h2{color:var(--color-text);font-size:1.25rem;line-height:1.4;margin-bottom:var(--spacing-sm)}.blog-card-content p{color:var(--color-text-light);font-size:.95rem;line-height:1.6;margin-bottom:var(--spacing-md)}.blog-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.blog-tag{background-color:var(--color-primary-light);border-radius:12px;color:var(--color-primary-dark);display:inline-block;font-size:.75rem;padding:2px var(--spacing-sm)}.read-more{color:var(--color-primary);display:inline-block;font-size:.9rem;font-weight:500}.blog-card:hover .read-more{text-decoration:underline}.error-state,.loading-state,.no-posts{padding:var(--spacing-xxxl) 0;text-align:center}.no-posts h2{color:var(--color-text);margin-bottom:var(--spacing-md)}.no-posts p{color:var(--color-text-light)}@media (max-width:768px){.blog-hero{height:40vh;min-height:250px}.blog-hero-content h1{font-size:2rem;padding:0 var(--spacing-md)}.blog-hero-content p{font-size:1rem}.blog-grid{grid-template-columns:1fr}.blog-card-content h2{font-size:1.1rem}}.blog-post-page{min-height:100vh}.post-hero{height:50vh;max-height:500px;min-height:300px;overflow:hidden}.post-hero-image,.post-hero-image img{height:100%;width:100%}.post-hero-image img{object-fit:cover}.post-content{padding:var(--spacing-xxl) 0}.back-link{color:var(--color-primary);display:inline-block;font-weight:500;margin-bottom:var(--spacing-xl);text-decoration:none;transition:color var(--transition-fast)}.back-link:hover{color:var(--color-primary-dark);text-decoration:underline}.post-header{margin-bottom:var(--spacing-xxl);text-align:center}.post-header h1{color:var(--color-text);font-size:2.5rem;line-height:1.3}.post-header h1,.post-meta{margin-bottom:var(--spacing-md)}.post-meta{color:var(--color-text-light);display:flex;font-size:.95rem;gap:var(--spacing-lg);justify-content:center}.post-author:after{color:var(--color-border);content:"•";margin-left:var(--spacing-lg)}.post-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.post-tag{background-color:var(--color-primary-light);border-radius:20px;color:var(--color-primary-dark);display:inline-block;font-size:.85rem;padding:var(--spacing-xs) var(--spacing-md);text-decoration:none;transition:background-color var(--transition-fast)}.post-tag:hover{background-color:var(--color-primary);color:var(--color-white)}.post-body{color:var(--color-text);font-size:1.1rem;line-height:1.9}.post-body p{margin-bottom:var(--spacing-lg)}.post-body h2{color:var(--color-primary);font-size:1.75rem;margin-top:var(--spacing-xxl)}.post-body h2,.post-body h3{margin-bottom:var(--spacing-md)}.post-body h3{font-size:1.4rem;margin-top:var(--spacing-xl)}.post-body img{border-radius:var(--radius-md);height:auto;margin:var(--spacing-xl) 0;max-width:100%}.post-body blockquote{border-left:4px solid var(--color-primary);color:var(--color-text-light);font-style:italic;margin:var(--spacing-xl) 0;padding-left:var(--spacing-lg)}.post-body ol,.post-body ul{margin-bottom:var(--spacing-lg);padding-left:var(--spacing-xl)}.post-body li{margin-bottom:var(--spacing-sm)}.post-body a{color:var(--color-primary);text-decoration:underline}.post-body a:hover{color:var(--color-primary-dark)}.post-footer{align-items:center;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-xl);margin-top:var(--spacing-xxl);padding-top:var(--spacing-xl)}.share-section{text-align:center}.share-section span{color:var(--color-text-light);display:block;margin-bottom:var(--spacing-md)}.share-buttons{display:flex;gap:var(--spacing-sm)}.share-btn{border-radius:var(--radius-sm);display:inline-block;font-size:.9rem;font-weight:500;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;transition:opacity var(--transition-fast)}.share-btn:hover{opacity:.8}.share-btn.facebook{background-color:#1877f2;color:#fff}.share-btn.twitter{background-color:#1da1f2;color:#fff}.share-btn.email{background-color:var(--color-text-light);color:#fff}.error-state,.loading-state{padding:var(--spacing-xxxl) 0;text-align:center}.error-state h2{color:var(--color-text);margin-bottom:var(--spacing-md)}.spinner{animation:spin 1s linear infinite;border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:40px;margin:0 auto var(--spacing-md);width:40px}@media (max-width:768px){.post-header h1{font-size:1.75rem}.post-meta{flex-direction:column;gap:var(--spacing-xs)}.post-author:after{display:none}.post-body{font-size:1rem}.post-hero{height:40vh;min-height:200px}.share-buttons{flex-wrap:wrap;justify-content:center}}.cart-page{background-color:var(--color-background-alt);min-height:100vh}.cart-hero{background-color:var(--color-primary);padding:var(--spacing-xl) 0;text-align:center}.cart-hero-content h1{color:var(--color-white);font-size:2.5rem;margin:0}.cart-content{padding:var(--spacing-xxl) 0}.empty-cart{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xxxl) 0;text-align:center}.empty-cart svg{color:var(--color-text-light);height:80px;margin-bottom:var(--spacing-lg);width:80px}.empty-cart h2{color:var(--color-text);margin-bottom:var(--spacing-sm)}.empty-cart p{color:var(--color-text-light);margin-bottom:var(--spacing-xl)}.cart-grid{grid-gap:var(--spacing-xl);align-items:start;display:grid;gap:var(--spacing-xl);grid-template-columns:1fr 380px}.cart-items{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.cart-header{background-color:var(--color-background-alt);color:var(--color-text-light);font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:var(--spacing-md) var(--spacing-lg);text-transform:uppercase}.cart-header,.cart-item{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:2fr 1fr 120px 1fr 40px}.cart-item{align-items:center;border-bottom:1px solid var(--color-border);padding:var(--spacing-lg)}.cart-item:last-child{border-bottom:none}.cart-item-product{align-items:center;display:flex;gap:var(--spacing-md)}.cart-item-image{border-radius:var(--radius-md);flex-shrink:0;height:80px;overflow:hidden;width:80px}.cart-item-image img{height:100%;object-fit:cover;width:100%}.cart-item-info h3{color:var(--color-text);font-size:1rem;margin:0 0 var(--spacing-xs)}.cart-item-info .variant{color:var(--color-text-light);font-size:.9rem;margin:0}.cart-item-price,.cart-item-total{color:var(--color-text);font-weight:600}.cart-item-quantity{align-items:center;display:flex;gap:var(--spacing-xs)}.cart-item-quantity button{align-items:center;background-color:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;transition:all var(--transition-fast);width:32px}.cart-item-quantity button:hover:not(:disabled){background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.cart-item-quantity button:disabled{cursor:not-allowed;opacity:.5}.cart-item-quantity span{font-weight:600;min-width:40px;text-align:center}.cart-item-remove{align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;transition:background-color var(--transition-fast);width:36px}.cart-item-remove:hover{background-color:var(--color-error-bg)}.cart-item-remove svg{color:var(--color-text-light);height:20px;transition:color var(--transition-fast);width:20px}.cart-item-remove:hover svg{color:var(--color-error)}.cart-summary{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xl);position:-webkit-sticky;position:sticky;top:var(--spacing-lg)}.cart-summary h2{border-bottom:1px solid var(--color-border);color:var(--color-primary);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.summary-row{padding:var(--spacing-sm) 0}.summary-total{border-top:2px solid var(--color-border);color:var(--color-text);display:flex;font-size:1.2rem;font-weight:700;justify-content:space-between;margin-top:var(--spacing-md);padding:var(--spacing-lg) 0}.btn-checkout{margin-top:var(--spacing-md);width:100%}.continue-shopping{color:var(--color-primary);display:block;font-weight:500;margin-top:var(--spacing-md);text-align:center;text-decoration:none}.continue-shopping:hover{text-decoration:underline}.cart-note{background-color:var(--color-background-alt);border-radius:var(--radius-md);margin-top:var(--spacing-lg);padding:var(--spacing-md)}.cart-note p{color:var(--color-text-light);font-size:.9rem;margin:0}.cart-note a{color:var(--color-primary)}.loading{color:var(--color-text-light);padding:var(--spacing-xxxl) 0;text-align:center}@media (max-width:992px){.cart-grid{grid-template-columns:1fr}.cart-summary{position:static}}@media (max-width:768px){.cart-header{display:none}.cart-item{gap:var(--spacing-sm);grid-template-columns:1fr;padding:var(--spacing-md)}.cart-item-product{margin-bottom:var(--spacing-sm)}.cart-item-price:before{color:var(--color-text-light);content:"Price: ";font-weight:400}.cart-item-total:before{color:var(--color-text-light);content:"Total: ";font-weight:400}.cart-item-remove{position:absolute;right:var(--spacing-md);top:var(--spacing-md)}.cart-item{position:relative}}.checkout-page{background-color:var(--color-background-alt);min-height:100vh}.checkout-hero{background-color:var(--color-primary);padding:var(--spacing-xl) 0;text-align:center}.checkout-hero-content h1{color:var(--color-white);font-size:2.5rem;margin:0}.checkout-content{padding:var(--spacing-xxl) 0}.checkout-grid{grid-gap:var(--spacing-xl);align-items:start;display:grid;gap:var(--spacing-xl);grid-template-columns:1fr 400px}.checkout-main{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xl)}.checkout-section{border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl)}.checkout-section:last-of-type{border-bottom:none;margin-bottom:var(--spacing-lg);padding-bottom:0}.checkout-section h2{color:var(--color-primary);font-size:1.25rem;margin-bottom:var(--spacing-lg)}.form-row-3{grid-template-columns:2fr 1fr 1fr}.form-group label{font-size:.9rem}.form-group textarea{min-height:80px}.delivery-options{display:flex;flex-direction:column;gap:var(--spacing-md)}.delivery-option{align-items:flex-start;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;display:flex;padding:var(--spacing-md);transition:all var(--transition-fast)}.delivery-option:hover{border-color:var(--color-primary-light)}.delivery-option.selected{background-color:#7a8b6e0d;border-color:var(--color-primary)}.delivery-option input[type=radio]{margin-right:var(--spacing-md);margin-top:4px;width:auto}.option-content{display:flex;flex-direction:column}.option-title{color:var(--color-text);font-weight:600}.option-subtitle{color:var(--color-primary);font-size:.9rem;margin-top:var(--spacing-xs)}.option-detail{color:var(--color-text-light);font-size:.85rem;margin-top:var(--spacing-xs)}.card-element-container{background-color:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.card-element-container:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #7a8b6e26}.payment-security{align-items:center;color:var(--color-text-light);display:flex;font-size:.85rem;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.payment-security svg{color:var(--color-success);height:16px;width:16px}.checkout-error{align-items:center;background-color:var(--color-error-bg);border-radius:var(--radius-md);color:var(--color-error);display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.checkout-error svg{flex-shrink:0;height:20px;width:20px}.btn-checkout-submit{font-size:1.1rem;padding:var(--spacing-md) var(--spacing-lg);width:100%}.btn-checkout-submit:disabled{cursor:not-allowed;opacity:.7}.checkout-sidebar{position:-webkit-sticky;position:sticky;top:var(--spacing-lg)}.order-summary{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xl)}.order-summary h2{border-bottom:1px solid var(--color-border);color:var(--color-primary);font-size:1.25rem;padding-bottom:var(--spacing-md)}.order-summary h2,.summary-items{margin-bottom:var(--spacing-lg)}.summary-item{align-items:center;display:flex;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.summary-item .item-image{border-radius:var(--radius-sm);flex-shrink:0;height:60px;overflow:hidden;position:relative;width:60px}.summary-item .item-image img{height:100%;object-fit:cover;width:100%}.item-quantity{align-items:center;background-color:var(--color-primary);border-radius:50%;color:var(--color-white);display:flex;font-size:.7rem;font-weight:600;height:20px;justify-content:center;position:absolute;right:-6px;top:-6px;width:20px}.item-details{flex:1 1;min-width:0}.item-details h4{font-size:.9rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-details .variant{color:var(--color-text-light);font-size:.8rem;margin:2px 0 0}.item-price{color:var(--color-text);font-weight:600;white-space:nowrap}.summary-totals{border-top:1px solid var(--color-border);padding-top:var(--spacing-md)}.summary-row{color:var(--color-text-light);display:flex;font-size:.95rem;justify-content:space-between;padding:var(--spacing-xs) 0}.edit-cart-link{border-top:1px solid var(--color-border);color:var(--color-primary);display:block;font-weight:500;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);text-align:center;text-decoration:none}.edit-cart-link:hover{text-decoration:underline}@media (max-width:992px){.checkout-grid{grid-template-columns:1fr}.checkout-sidebar{order:-1;position:static}}@media (max-width:576px){.checkout-hero-content h1{font-size:2rem}.checkout-main{padding:var(--spacing-lg)}.form-row,.form-row-3{grid-template-columns:1fr}.order-summary{padding:var(--spacing-lg)}}.confirmation-page{align-items:center;background-color:var(--color-background-alt);display:flex;min-height:80vh}.confirmation-content{padding:var(--spacing-xxl) 0;width:100%}.confirmation-card{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:0 auto;max-width:600px;padding:var(--spacing-xxl);text-align:center}.confirmation-icon{margin-bottom:var(--spacing-lg)}.confirmation-icon svg{color:var(--color-success);height:80px;width:80px}.confirmation-card h1{color:var(--color-primary);font-size:2.5rem;margin-bottom:var(--spacing-sm)}.confirmation-subtitle{color:var(--color-text-light);font-size:1.2rem;margin-bottom:var(--spacing-xl)}.order-number{align-items:center;background-color:var(--color-background-alt);border-radius:var(--radius-md);display:inline-flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);padding:var(--spacing-md) var(--spacing-lg)}.order-number span{color:var(--color-text-light)}.order-number strong{color:var(--color-primary);font-family:monospace;font-size:1.2rem}.confirmation-details{background-color:var(--color-background-alt);border-radius:var(--radius-md);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);text-align:left}.confirmation-details>p{color:var(--color-text);margin-bottom:var(--spacing-lg)}.delivery-info,.pickup-info{border-top:1px solid var(--color-border);padding-top:var(--spacing-md)}.delivery-info h3,.pickup-info h3{color:var(--color-primary);font-size:1.1rem;margin-bottom:var(--spacing-md)}.delivery-info p,.pickup-info p{color:var(--color-text);margin-bottom:var(--spacing-sm)}.pickup-info address{background-color:var(--color-white);border-radius:var(--radius-sm);color:var(--color-text);font-style:normal;margin:var(--spacing-md) 0;padding:var(--spacing-md)}.delivery-info ul{list-style:none;margin:var(--spacing-md) 0 0;padding:0}.delivery-info li{color:var(--color-text);padding:var(--spacing-xs) 0;padding-left:var(--spacing-md);position:relative}.delivery-info li:before{color:var(--color-primary);content:"•";left:0;position:absolute}.confirmation-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-xl)}.confirmation-contact{border-top:1px solid var(--color-border);padding-top:var(--spacing-lg)}.confirmation-contact p{color:var(--color-text-light);font-size:.9rem;margin:0}.confirmation-contact a{color:var(--color-primary);text-decoration:none}.confirmation-contact a:hover{text-decoration:underline}@media (max-width:576px){.confirmation-card{padding:var(--spacing-lg)}.confirmation-card h1{font-size:2rem}.confirmation-actions{flex-direction:column}.confirmation-icon svg{height:60px;width:60px}}.login-page{background-color:var(--color-background-alt);min-height:100vh}.login-hero{background-color:var(--color-primary);padding:var(--spacing-xl) 0;text-align:center}.login-hero-content h1{color:var(--color-white);font-size:2.5rem;margin-bottom:var(--spacing-xs)}.login-hero-content p{color:#ffffffe6;font-size:1.1rem;margin:0}.login-content{padding:var(--spacing-xxl) 0}.login-container{margin:0 auto;max-width:500px}.login-tabs{background-color:var(--color-white);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-sm);display:flex;overflow:hidden}.login-tab{background-color:var(--color-background-alt);border:none;color:var(--color-text-light);cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:var(--spacing-md) var(--spacing-lg);transition:all var(--transition-fast)}.login-tab.active{background-color:var(--color-white);color:var(--color-primary)}.login-tab:hover:not(.active){background-color:var(--color-background)}.login-form{background-color:var(--color-white);border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xl)}.form-group input{border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:1rem;padding:var(--spacing-sm) var(--spacing-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #7a8b6e26;outline:none}.form-error{align-items:center;background-color:var(--color-error-bg);border-radius:var(--radius-md);color:var(--color-error);display:flex;font-size:.9rem;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.form-error svg{flex-shrink:0;height:20px;width:20px}.btn-submit{margin-top:var(--spacing-sm);width:100%}.btn-submit:disabled{cursor:not-allowed;opacity:.7}.form-links{margin-top:var(--spacing-md);text-align:center}.form-links a{color:var(--color-primary);font-size:.9rem;text-decoration:none}.form-links a:hover{text-decoration:underline}.login-benefits{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-top:var(--spacing-xl);padding:var(--spacing-lg)}.login-benefits h3{color:var(--color-primary);font-size:1.1rem;margin-bottom:var(--spacing-md)}.login-benefits ul{list-style:none;margin:0 0 var(--spacing-md);padding:0}.login-benefits li{align-items:center;color:var(--color-text);display:flex;font-size:.95rem;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.login-benefits li svg{color:var(--color-success);flex-shrink:0;height:18px;width:18px}.learn-more{color:var(--color-primary);display:inline-block;font-size:.95rem;font-weight:500;text-decoration:none}.learn-more:hover{text-decoration:underline}@media (max-width:576px){.login-hero-content h1{font-size:2rem}.login-form{padding:var(--spacing-lg)}.form-row{grid-template-columns:1fr}.login-tab{font-size:.9rem;padding:var(--spacing-sm) var(--spacing-md)}}.notfound-page{align-items:center;background-color:var(--color-background-alt);display:flex;justify-content:center;min-height:80vh;padding:var(--spacing-xxl)}.notfound-content{max-width:600px;text-align:center}.notfound-icon{margin-bottom:var(--spacing-lg)}.notfound-icon svg{color:var(--color-primary);height:120px;opacity:.6;width:120px}.notfound-content h1{color:var(--color-primary);font-size:6rem;font-weight:700;line-height:1;margin:0}.notfound-content h2{color:var(--color-text);font-size:1.75rem;margin:var(--spacing-sm) 0 var(--spacing-lg)}.notfound-content>p{color:var(--color-text-light);font-size:1.1rem;line-height:1.7;margin-bottom:var(--spacing-xl)}.notfound-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-xxl)}.notfound-suggestions{border-top:1px solid var(--color-border);padding-top:var(--spacing-xl)}.notfound-suggestions h3{color:var(--color-text);font-size:1rem;margin-bottom:var(--spacing-md)}.notfound-suggestions ul{display:flex;flex-wrap:wrap;gap:var(--spacing-md) var(--spacing-lg);justify-content:center;list-style:none;margin:0;padding:0}.notfound-suggestions a{color:var(--color-primary);font-weight:500;text-decoration:none}.notfound-suggestions a:hover{text-decoration:underline}@media (max-width:576px){.notfound-content h1{font-size:4rem}.notfound-content h2{font-size:1.5rem}.notfound-actions{flex-direction:column}.notfound-icon svg{height:80px;width:80px}}.hero{align-items:flex-start;display:flex;height:90vh;justify-content:center;min-height:600px;padding-top:20px;position:relative}.hero-image{height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.hero-image img{height:100%;object-fit:cover;width:100%}.hero-image:after{background:linear-gradient(180deg,#0003 0,#0006);content:"";height:100%;left:0;position:absolute;top:0;width:100%}.hero-content{position:relative;text-align:center;z-index:1}.hero-buttons{display:flex;gap:var(--spacing-md);justify-content:center}.hero .btn-secondary{background-color:initial;border-color:var(--color-white);color:var(--color-white)}.hero .btn-secondary:hover{background-color:var(--color-white);color:var(--color-primary)}.scroll-indicator{animation:bounce 2s infinite;bottom:var(--spacing-xl);color:var(--color-white);left:50%;position:absolute;text-align:center;transform:translateX(-50%)}.scroll-indicator span{display:block;font-size:.8rem;letter-spacing:2px;margin-bottom:var(--spacing-xs);text-transform:uppercase}.scroll-indicator svg{height:24px;width:24px}@keyframes bounce{0%,20%,50%,80%,to{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}.mission-section{padding:var(--spacing-xxxl) 0}.mission-grid{grid-gap:var(--spacing-xxl);align-items:center;display:grid;gap:var(--spacing-xxl);grid-template-columns:1fr 1fr}.mission-image{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.mission-image img{height:auto;width:100%}.mission-content h2{color:var(--color-primary);margin-bottom:var(--spacing-lg)}.mission-content p{line-height:1.8;margin-bottom:var(--spacing-md)}.mission-content .highlight{background-color:var(--color-background-alt);border-left:4px solid var(--color-primary);color:var(--color-primary);font-size:1.1rem;font-weight:600;margin:var(--spacing-lg) 0;padding:var(--spacing-md)}.welcome-section{padding:var(--spacing-xxxl) 0}.welcome-content{margin:0 auto;max-width:900px}.welcome-image{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin-bottom:var(--spacing-xl);overflow:hidden}.welcome-content h2{color:var(--color-primary);margin-bottom:var(--spacing-lg)}.welcome-content p{font-size:1.1rem;line-height:1.8}.gallery-preview{padding:var(--spacing-xxl) 0}.gallery-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin:0 auto;max-width:800px;overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.gallery-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.gallery-card a{display:block;text-decoration:none}.gallery-card-image{overflow:hidden;position:relative}.gallery-card-image img{height:400px;object-fit:cover;transition:transform var(--transition-slow);width:100%}.gallery-card:hover .gallery-card-image img{transform:scale(1.05)}.gallery-card-content{background-color:var(--color-white);padding:var(--spacing-lg);text-align:center}.gallery-card-content h3{color:var(--color-primary);margin-bottom:var(--spacing-xs)}.gallery-card-content p{color:var(--color-text-light);margin:0}.regenerative-section{color:var(--color-white);padding:var(--spacing-xxxl) 0}.regenerative-section h2{color:var(--color-white);font-size:2rem;margin:0 auto var(--spacing-lg);max-width:700px}.regenerative-section p{color:#ffffffe6;font-size:1.1rem;margin:0 auto var(--spacing-xl);max-width:600px}.instagram-section{padding:var(--spacing-xxxl) 0}.instagram-section h2{color:var(--color-primary);margin-bottom:var(--spacing-sm)}.instagram-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:900px}.instagram-item{border-radius:var(--radius-md);overflow:hidden;padding-top:100%;position:relative}.instagram-item img{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform var(--transition-slow);width:100%}.instagram-item:hover img{transform:scale(1.1)}@media (max-width:992px){.hero{height:70vh;min-height:500px}.mission-grid{gap:var(--spacing-xl);grid-template-columns:1fr}.mission-image{order:-1}}@media (max-width:768px){.hero{height:60vh;min-height:400px}.hero-buttons{flex-direction:column;gap:var(--spacing-sm)}.gallery-card-image img{height:250px}.instagram-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.hero{height:50vh;min-height:350px}.regenerative-section h2{font-size:1.5rem}.instagram-grid{grid-template-columns:1fr;max-width:300px}}.food-trailer-hero{background-color:var(--color-background-alt);padding:var(--spacing-xxl) 0;text-align:center}.hero-logo{margin:0 auto;max-width:400px}.hero-logo img{height:auto;width:100%}.food-trailer-gallery{padding:var(--spacing-xxl) 0}.gallery-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr)}.gallery-item{border-radius:var(--radius-md);overflow:hidden;padding-top:100%;position:relative}.gallery-item img{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform var(--transition-slow);width:100%}.gallery-item:hover img{transform:scale(1.05)}.food-trailer-about{text-align:center}.about-content{margin:0 auto;max-width:800px}.about-content h2{color:var(--color-primary);margin-bottom:var(--spacing-lg)}.about-content p{font-size:1.05rem;line-height:1.8;margin-bottom:var(--spacing-lg)}.about-content .btn{margin-bottom:var(--spacing-xl)}.social-cta{color:var(--color-text-light)}.social-cta a{color:var(--color-primary);font-weight:600}.social-cta a:hover{text-decoration:underline}.food-trailer-actions{border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);padding:var(--spacing-xl) 0;text-align:center}.action-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);justify-content:center}.food-trailer-events h2{color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.events-list{margin:0 auto;max-width:900px}.event-card{grid-gap:var(--spacing-lg);align-items:center;background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid;gap:var(--spacing-lg);grid-template-columns:auto 1fr auto;margin-bottom:var(--spacing-md);padding:var(--spacing-lg);transition:box-shadow var(--transition-normal)}.event-card:hover{box-shadow:var(--shadow-md)}.event-date-box{align-items:center;background-color:var(--color-primary);border-radius:var(--radius-sm);color:var(--color-white);display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-md);text-align:center;width:80px}.event-date-box .month{font-size:.8rem;letter-spacing:1px;text-transform:uppercase}.event-date-box .day{font-size:1.75rem;font-weight:700;line-height:1;margin-top:var(--spacing-xs)}.event-details h3{color:var(--color-text);font-size:1.1rem;margin-bottom:var(--spacing-xs)}.event-datetime{color:var(--color-text-light);display:flex;flex-direction:column;font-size:.9rem;margin-bottom:var(--spacing-xs)}.event-datetime .time{color:var(--color-text-muted)}.event-location{color:var(--color-text-light);font-size:.9rem;margin-bottom:var(--spacing-xs)}.event-location a{color:var(--color-primary);font-size:.85rem;margin-left:var(--spacing-xs)}.event-description{color:var(--color-primary);font-size:.9rem;font-style:italic;margin:0}.event-actions{flex-shrink:0}@media (max-width:768px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.event-card{grid-template-columns:1fr;text-align:center}.event-date-box{flex-direction:row;gap:var(--spacing-md);justify-content:center;padding:var(--spacing-sm) var(--spacing-md);width:100%}.event-date-box .day{margin-top:0}.event-datetime{align-items:center}}@media (max-width:480px){.gallery-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.items-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:var(--spacing-md);position:fixed;right:0;top:0;z-index:1000}.items-modal{background:var(--color-white);border-radius:var(--radius-lg);display:flex;flex-direction:column;max-height:90vh;max-width:700px;width:100%}.items-modal-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--spacing-lg)}.items-modal-header h2{color:var(--color-primary-dark);font-size:1.4rem;margin:0}.items-modal-header .modal-close{background:none;border:none;color:var(--color-text-light);cursor:pointer;font-size:2rem;line-height:1;padding:0}.items-modal-header .modal-close:hover{color:var(--color-text)}.items-modal-body{overflow-y:auto;padding:var(--spacing-lg)}.items-intro{color:var(--color-text-light);font-size:1rem;margin-bottom:var(--spacing-lg);text-align:center}.items-loading{padding:var(--spacing-xl);text-align:center}.items-list{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md)}.item-card{background:var(--color-background);border-left:3px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--spacing-md)}.item-card h4{color:var(--color-text);font-size:1.05rem;margin:0 0 var(--spacing-xs)}.item-card .item-description{color:var(--color-text-light);font-size:.9rem;line-height:1.5;margin:0 0 var(--spacing-sm)}.item-card .dietary-icons{display:flex;gap:var(--spacing-xs)}.item-card .dietary-icon{align-items:center;background-color:var(--color-primary-light);border-radius:4px;color:var(--color-primary-dark);display:inline-flex;font-size:.65rem;font-weight:700;height:22px;justify-content:center;min-width:22px;padding:0 4px}.items-cta{border-top:1px solid var(--color-border);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);text-align:center}.items-cta p{color:var(--color-text);font-weight:600;margin-bottom:var(--spacing-md)}.btn-outline{background:#0000;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:var(--color-white)}.faq-page{min-height:100vh}.faq-hero{align-items:center;display:flex;height:50vh;justify-content:center;min-height:350px;overflow:hidden;position:relative}.faq-hero-image{height:100%;left:0;position:absolute;top:0;width:100%}.faq-hero-image img{height:100%;object-fit:cover;width:100%}.faq-hero-image:after{background:linear-gradient(180deg,#0000004d,#00000080);content:"";height:100%;left:0;position:absolute;top:0;width:100%}.faq-hero-content{color:var(--color-white);position:relative;text-align:center;z-index:1}.faq-hero-content h1{font-size:3rem;margin:0;text-shadow:2px 2px 4px #0000004d}.faq-section{padding:var(--spacing-xxl) 0}.faq-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.faq-item{background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.faq-question{align-items:center;background:none;border:none;color:var(--color-text);cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;justify-content:space-between;padding:var(--spacing-lg);text-align:left;transition:background-color var(--transition-fast);width:100%}.faq-question:hover{background-color:var(--color-background-alt)}.faq-icon{color:var(--color-primary);flex-shrink:0;font-size:1.5rem;margin-left:var(--spacing-md)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease-out}.faq-item.open .faq-answer{max-height:1000px}.faq-answer-content{color:var(--color-text-light);line-height:1.8;padding:0 var(--spacing-lg) var(--spacing-lg)}.faq-answer-content p{margin-bottom:var(--spacing-md)}.faq-answer-content p:last-child{margin-bottom:0}.links-section{padding:var(--spacing-xxl) 0}.links-section h2{color:var(--color-primary);text-align:center}.link-category,.links-section h2{margin-bottom:var(--spacing-xl)}.link-category-title{align-items:center;border-bottom:2px solid var(--color-primary-light);color:var(--color-primary);display:flex;font-size:1.25rem;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}.link-category-title.expandable{cursor:pointer}.link-category-title.expandable:hover{color:var(--color-primary-dark)}.expand-icon{font-size:1.5rem;font-weight:400}.link-list{list-style:none;margin:0;padding:0}.link-list li{border-left:2px solid #0000;padding:var(--spacing-sm) 0;padding-left:var(--spacing-md);transition:border-color var(--transition-fast)}.link-list li:hover{border-left-color:var(--color-primary)}.link-list a{color:var(--color-text);font-weight:500;text-decoration:none;transition:color var(--transition-fast)}.link-list a:hover{color:var(--color-primary);text-decoration:underline}.link-author,.link-date,.link-event,.link-note,.link-type{color:var(--color-text-light);font-size:.9rem;margin-left:var(--spacing-sm)}.link-author,.link-type{font-style:italic}.link-note{color:var(--color-text-muted)}.link-quotes{list-style:none;margin-top:var(--spacing-sm);padding-left:var(--spacing-lg)}.link-quotes li{color:var(--color-text-light);font-size:.9rem;padding:var(--spacing-xs) 0}.link-quotes li,.link-quotes li:hover{border-left:none}.subcategories{max-height:0;overflow:hidden;padding-left:var(--spacing-lg);transition:max-height .5s ease-out}.subcategories.open{max-height:5000px}.subcategory{margin-top:var(--spacing-lg)}.subcategory h4{color:var(--color-text);font-size:1.05rem;font-weight:600;margin-bottom:var(--spacing-sm)}.glossary-section{padding:var(--spacing-xxl) 0}.glossary-section h2{color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.glossary-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.glossary-item{background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.glossary-item dt{color:var(--color-primary);font-size:1.1rem;font-weight:700;margin-bottom:var(--spacing-sm)}.glossary-item dd{color:var(--color-text-light);line-height:1.7;margin:0}@media (max-width:768px){.faq-hero{height:40vh;min-height:250px}.faq-hero-content h1{font-size:2rem;padding:0 var(--spacing-md)}.faq-question{font-size:1rem;padding:var(--spacing-md)}.faq-answer-content{padding:0 var(--spacing-md) var(--spacing-md)}.link-category-title{font-size:1.1rem}.subcategories{padding-left:var(--spacing-sm)}}.gallery-hero{background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-xxl) 0;text-align:center}.gallery-hero h1{color:var(--color-white);margin-bottom:var(--spacing-sm)}.gallery-hero p{color:#ffffffe6;font-size:1.1rem;margin:0}.gallery-content{padding:var(--spacing-xxxl) 0}.gallery-masonry{column-count:3;column-gap:var(--spacing-md)}.gallery-image-item{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);break-inside:avoid;margin-bottom:var(--spacing-md);overflow:hidden;page-break-inside:avoid;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.gallery-image-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.gallery-image-item img{display:block;height:auto;width:100%}@media (max-width:992px){.gallery-masonry{column-count:2}}@media (max-width:576px){.gallery-masonry{column-count:1}.gallery-hero{padding:var(--spacing-xl) 0}}.story-page{min-height:100vh}.story-hero{align-items:center;display:flex;height:50vh;justify-content:center;min-height:400px;position:relative}.story-hero-image{height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.story-hero-image img{height:100%;object-fit:cover;width:100%}.story-hero-image:after{background:linear-gradient(180deg,#0000004d 0,#00000080);content:"";height:100%;left:0;position:absolute;top:0;width:100%}.story-hero-content{position:relative;text-align:center;z-index:1}.story-hero-content h1{color:var(--color-white);font-size:3.5rem;margin:0;text-shadow:2px 2px 8px #0000004d}.story-content{padding:var(--spacing-xxxl) 0}.story-text h2{color:var(--color-primary);font-size:2rem;margin-bottom:var(--spacing-lg)}.story-text h3{color:var(--color-primary);font-size:1.5rem;margin-top:var(--spacing-xl)}.story-text h3,.story-text p{margin-bottom:var(--spacing-md)}.story-text p{color:var(--color-text);font-size:1.1rem;line-height:1.8}.story-text blockquote{background-color:var(--color-background-alt);border-left:4px solid var(--color-primary);color:var(--color-primary);font-size:1.2rem;font-style:italic;font-weight:600;margin:var(--spacing-xl) 0;padding:var(--spacing-lg)}.story-text .cta-text{border-top:1px solid var(--color-border);color:var(--color-primary);font-size:1.3rem;font-weight:600;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);text-align:center}@media (max-width:768px){.story-hero{height:40vh;min-height:300px}.story-hero-content h1{font-size:2.5rem}.story-text h2{font-size:1.75rem}.story-text h3{font-size:1.25rem}.story-text p{font-size:1rem}}@media (max-width:576px){.story-hero-content h1{font-size:2rem}}.contact-page{min-height:100vh}.contact-hero{background-color:var(--color-primary);padding:var(--spacing-xxxl) 0;text-align:center}.contact-hero-content h1{color:var(--color-white);font-size:3rem;margin-bottom:var(--spacing-sm)}.contact-hero-content p{color:#ffffffe6;font-size:1.25rem;margin:0}.contact-content{padding:var(--spacing-xxxl) 0}.contact-grid{grid-gap:var(--spacing-xxl);align-items:start;display:grid;gap:var(--spacing-xxl);grid-template-columns:1fr 1.5fr}.contact-info h2{color:var(--color-primary);margin-bottom:var(--spacing-md)}.contact-info>p{color:var(--color-text-light);line-height:1.7}.contact-details,.contact-info>p{margin-bottom:var(--spacing-xl)}.contact-item{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.contact-icon{align-items:center;background-color:var(--color-primary);border-radius:50%;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.contact-icon svg{color:var(--color-white);height:24px;width:24px}.contact-text h4{color:var(--color-text);font-size:1rem;margin-bottom:var(--spacing-xs)}.contact-text p{color:var(--color-text-light);line-height:1.6;margin:0}.contact-text a{color:var(--color-primary);text-decoration:none}.contact-text a:hover{text-decoration:underline}.social-links h4{color:var(--color-text);margin-bottom:var(--spacing-md)}.social-icons{display:flex;gap:var(--spacing-md)}.social-icons a{align-items:center;background-color:var(--color-background-alt);border-radius:50%;display:flex;height:44px;justify-content:center;transition:all var(--transition-fast);width:44px}.social-icons a:hover{background-color:var(--color-primary)}.social-icons a svg{color:var(--color-text);height:22px;transition:color var(--transition-fast);width:22px}.social-icons a:hover svg{color:var(--color-white)}.contact-form-container{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-xl)}.contact-form h2{color:var(--color-primary);margin-bottom:var(--spacing-lg)}.form-row{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:1fr 1fr}.form-group{margin-bottom:var(--spacing-md)}.form-group label{color:var(--color-text);display:block;font-weight:500;margin-bottom:var(--spacing-xs)}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:1rem;padding:var(--spacing-sm) var(--spacing-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #7a8b6e26;outline:none}.form-group textarea{min-height:120px;resize:vertical}.contact-form .btn{width:100%}.form-success{padding:var(--spacing-xxl) var(--spacing-lg);text-align:center}.form-success svg{color:var(--color-success);height:64px;margin-bottom:var(--spacing-lg);width:64px}.form-success h3{color:var(--color-primary);margin-bottom:var(--spacing-md)}.form-success p{color:var(--color-text-light)}@media (max-width:992px){.contact-grid{gap:var(--spacing-xl);grid-template-columns:1fr}.contact-info{order:1}.contact-form-container{order:0}}@media (max-width:576px){.contact-hero-content h1{font-size:2rem}.form-row{grid-template-columns:1fr}.contact-form-container{padding:var(--spacing-lg)}}:root{--color-primary:#4a6741;--color-accent:#d4a574;--color-background:#fdfbf7;--color-background-alt:#f5f1eb;--color-text:#333;--color-border:#e0d5c7;--font-body:"Open Sans",-apple-system,BlinkMacSystemFont,sans-serif}body{background-color:#fdfbf7;color:#333;font-family:Open Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;margin:0}h1,h2,h3,h4,h5,h6{color:#333;color:var(--color-text)}a{color:#4a6741}a:hover{text-decoration:underline}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity .2s ease}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #e0d5c7;border-radius:50%;border-top-color:#4a6741;border:3px solid var(--color-border);border-top-color:var(--color-primary);display:inline-block;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.loading-container{align-items:center;display:flex;justify-content:center;min-height:200px}.page-header{background-color:#f5f1eb;background-color:var(--color-background-alt);padding:var(--spacing-xxl) 0;text-align:center}.page-header h1{margin-bottom:var(--spacing-sm)}.page-header .subtitle{font-size:1.1rem}.breadcrumbs,.page-header .subtitle{color:#666;color:var(--color-text-light)}.breadcrumbs{font-size:.9rem;padding:var(--spacing-md) 0}.breadcrumbs a{color:#666;color:var(--color-text-light)}.breadcrumbs a:hover{color:#4a6741;color:var(--color-primary)}.breadcrumbs span{margin:0 var(--spacing-sm)}.card-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.card{background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.card-image{overflow:hidden;padding-top:100%;position:relative}.card-image img{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform var(--transition-slow);width:100%}.card:hover .card-image img{transform:scale(1.05)}.card-body{padding:var(--spacing-md)}.card-title{font-size:1.1rem;margin-bottom:var(--spacing-xs)}.card-price{color:#4a6741;color:var(--color-primary);font-weight:700}.badge{border-radius:var(--radius-sm);display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:var(--spacing-xs) var(--spacing-sm);text-transform:uppercase}.badge-sale{background-color:var(--color-error);color:var(--color-white)}.badge-sold-out{background-color:var(--color-text-muted);color:var(--color-white)}.badge-low-stock{background-color:#d4a574;background-color:var(--color-accent);color:var(--color-black)}.alert{border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-info{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity var(--transition-normal),visibility var(--transition-normal);visibility:hidden;z-index:1000}.modal-overlay.active{opacity:1;visibility:visible}.modal{background-color:var(--color-white);border-radius:var(--radius-md);max-height:90vh;max-width:600px;overflow-y:auto;transform:scale(.9);transition:transform var(--transition-normal);width:90%}.modal-overlay.active .modal{transform:scale(1)}.modal-header{align-items:center;border-bottom:1px solid #e0d5c7;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--spacing-lg)}.modal-header h3{margin:0}.modal-close{background:none;border:none;color:#666;color:var(--color-text-light);cursor:pointer;font-size:1.5rem;padding:var(--spacing-xs)}.modal-close:hover{color:#333;color:var(--color-text)}.modal-body,.modal-footer{padding:var(--spacing-lg)}.modal-footer{border-top:1px solid #e0d5c7;border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-md);justify-content:flex-end}@media (max-width:768px){.card-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:576px){.card-grid{gap:var(--spacing-sm);grid-template-columns:1fr 1fr}.card-body{padding:var(--spacing-sm)}.card-title{font-size:.95rem}}*{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#3a7233;--color-primary-dark:#2d5a27;--color-primary-light:#4a8f42;--color-secondary:#8b7355;--color-accent:#c9a962;--color-background:#faf8f5;--color-background-alt:#f5f2ed;--color-text:#2c2c2c;--color-text-light:#666;--color-text-muted:#999;--color-white:#fff;--color-black:#1a1a1a;--color-border:#e0ddd8;--color-success:#4caf50;--color-error:#e74c3c;--font-heading:"Playfair Display",Georgia,serif;--font-body:"Lato","Helvetica Neue",Arial,sans-serif;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-xxl:3rem;--spacing-xxxl:4rem;--transition-fast:0.15s ease;--transition-normal:0.3s ease;--transition-slow:0.5s ease;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 25px #00000026;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:50%}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#faf8f5;background-color:var(--color-background);color:#2c2c2c;color:var(--color-text);font-family:Lato,Helvetica Neue,Arial,sans-serif;font-family:var(--font-body);font-weight:400;line-height:1.6}h1,h2,h3,h4,h5,h6{color:#1a1a1a;color:var(--color-black);font-family:Playfair Display,Georgia,serif;font-family:var(--font-heading);font-weight:600;line-height:1.3;margin-bottom:1rem;margin-bottom:var(--spacing-md)}h1{font-size:2.75rem}h2{font-size:2.25rem}h3{font-size:1.75rem}h4{font-size:1.375rem}h5{font-size:1.125rem}h6{font-size:1rem}p{color:#2c2c2c;color:var(--color-text);margin-bottom:1rem;margin-bottom:var(--spacing-md)}a{color:#3a7233;color:var(--color-primary);text-decoration:none;transition:color .15s ease;transition:color var(--transition-fast)}a:hover{color:#2d5a27;color:var(--color-primary-dark)}.container{margin:0 auto;max-width:1200px;padding:0 1.5rem;padding:0 var(--spacing-lg);width:100%}.container-narrow{max-width:900px}.container-wide{max-width:1400px}.btn{border:2px solid #0000;border-radius:4px;border-radius:var(--radius-sm);cursor:pointer;display:inline-block;font-family:Lato,Helvetica Neue,Arial,sans-serif;font-family:var(--font-body);font-size:.9rem;font-weight:600;letter-spacing:1px;padding:.5rem 1.5rem;padding:var(--spacing-sm) var(--spacing-lg);text-align:center;text-decoration:none;text-transform:uppercase;transition:all .3s ease;transition:all var(--transition-normal)}.btn-primary{background-color:#3a7233;background-color:var(--color-primary);border-color:#3a7233;border-color:var(--color-primary)}.btn-primary,.btn-primary:hover{color:#fff;color:var(--color-white)}.btn-primary:hover{background-color:#2d5a27;background-color:var(--color-primary-dark);border-color:#2d5a27;border-color:var(--color-primary-dark)}.btn-secondary{background-color:initial;border-color:#3a7233;border-color:var(--color-primary);color:#3a7233;color:var(--color-primary)}.btn-secondary:hover{background-color:#3a7233;background-color:var(--color-primary);color:#fff;color:var(--color-white)}.btn-accent{background-color:#c9a962;background-color:var(--color-accent);border-color:#c9a962;border-color:var(--color-accent);color:#1a1a1a;color:var(--color-black)}.btn-accent:hover{background-color:#b8983d;border-color:#b8983d}.btn-white{background-color:#fff;background-color:var(--color-white);border-color:#fff;border-color:var(--color-white);color:#3a7233;color:var(--color-primary)}.btn-white:hover{background-color:#faf8f5;background-color:var(--color-background);border-color:#faf8f5;border-color:var(--color-background)}.btn-lg{font-size:1rem;padding:1rem 2rem;padding:var(--spacing-md) var(--spacing-xl)}.btn-sm{font-size:.8rem;padding:.25rem 1rem;padding:var(--spacing-xs) var(--spacing-md)}input,select,textarea{background-color:#fff;background-color:var(--color-white);border:1px solid #e0ddd8;border:1px solid var(--color-border);border-radius:4px;border-radius:var(--radius-sm);color:#2c2c2c;color:var(--color-text);font-family:Lato,Helvetica Neue,Arial,sans-serif;font-family:var(--font-body);font-size:1rem;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:border-color .15s ease,box-shadow .15s ease;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input:focus,select:focus,textarea:focus{border-color:#3a7233;border-color:var(--color-primary);box-shadow:0 0 0 3px #4a7c591a;outline:none}img{display:block;height:auto;max-width:100%}ol,ul{margin-bottom:1rem;margin-bottom:var(--spacing-md);padding-left:1.5rem;padding-left:var(--spacing-lg)}li{margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-0{margin-top:0}.mt-1{margin-top:.5rem;margin-top:var(--spacing-sm)}.mt-2{margin-top:1rem;margin-top:var(--spacing-md)}.mt-3{margin-top:1.5rem;margin-top:var(--spacing-lg)}.mt-4{margin-top:2rem;margin-top:var(--spacing-xl)}.mt-5{margin-top:3rem;margin-top:var(--spacing-xxl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.mb-4{margin-bottom:2rem;margin-bottom:var(--spacing-xl)}.mb-5{margin-bottom:3rem;margin-bottom:var(--spacing-xxl)}.py-1{padding-bottom:.5rem;padding-bottom:var(--spacing-sm);padding-top:.5rem;padding-top:var(--spacing-sm)}.py-2{padding-bottom:1rem;padding-bottom:var(--spacing-md);padding-top:1rem;padding-top:var(--spacing-md)}.py-3{padding-bottom:1.5rem;padding-bottom:var(--spacing-lg);padding-top:1.5rem;padding-top:var(--spacing-lg)}.py-4{padding-bottom:2rem;padding-bottom:var(--spacing-xl);padding-top:2rem;padding-top:var(--spacing-xl)}.py-5{padding-bottom:3rem;padding-bottom:var(--spacing-xxl);padding-top:3rem;padding-top:var(--spacing-xxl)}.section{padding:4rem 0;padding:var(--spacing-xxxl) 0}.section-sm{padding:2rem 0;padding:var(--spacing-xl) 0}.bg-white{background-color:#fff;background-color:var(--color-white)}.bg-light{background-color:#f5f2ed;background-color:var(--color-background-alt)}.bg-primary{background-color:#3a7233;background-color:var(--color-primary)}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (max-width:1200px){h1{font-size:2.5rem}h2{font-size:2rem}}@media (max-width:992px){h1{font-size:2.25rem}h2{font-size:1.75rem}h3{font-size:1.5rem}}@media (max-width:768px){html{font-size:15px}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.container{padding:0 1rem;padding:0 var(--spacing-md)}.section{padding:3rem 0;padding:var(--spacing-xxl) 0}}@media (max-width:576px){html{font-size:14px}h1{font-size:1.75rem}h2{font-size:1.375rem}}
/*# sourceMappingURL=main.3318131e.css.map*/