@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Lato:wght@300;400;500;700&display=swap";:root{--color-primary: #8B4513;--color-secondary: #8B7355;--color-accent: #C75B3A;--color-background: #F5E6D3;--color-text: #2C1810;--color-text-light: #5D4037;--color-white: #FFFFFF;--color-border: #E0D0C0;--font-heading: "Playfair Display", Georgia, serif;--font-body: "Lato", system-ui, -apple-system, sans-serif;font-family:var(--font-body);font-weight:400;line-height:1.6;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-background);line-height:1.6;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2;color:var(--color-text);margin-bottom:var(--space-md)}h1{font-size:3.5rem;font-weight:700;letter-spacing:.01em}h2{font-size:2.5rem;font-weight:600;letter-spacing:.01em}h3{font-size:1.875rem;font-weight:600}h4{font-size:1.25rem;font-weight:500}p{font-size:1rem;line-height:1.7;color:var(--color-text-light);margin-bottom:var(--space-md)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-sm) var(--space-lg);font-family:inherit;font-weight:500;font-size:1rem;line-height:1.5;border:none;border-radius:0;cursor:pointer;text-decoration:none;white-space:nowrap}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background-color:#6b3410;color:var(--color-white)}.btn-secondary{background-color:var(--color-accent);color:var(--color-white)}.btn-secondary:hover{background-color:#a84a2d}.btn-outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-white)}.btn-lg{padding:var(--space-md) var(--space-xl);font-size:1.125rem}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.container-wide{max-width:1400px;margin:0 auto;padding:0 var(--space-lg)}.grid{display:grid;gap:var(--space-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.text-center{text-align:center}.mt-0{margin-top:0}.mt-1{margin-top:var(--space-xs)}.mt-2{margin-top:var(--space-sm)}.mt-3{margin-top:var(--space-md)}.mt-4{margin-top:var(--space-lg)}.mt-5{margin-top:var(--space-xl)}.mt-6{margin-top:var(--space-2xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-xs)}.mb-2{margin-bottom:var(--space-sm)}.mb-3{margin-bottom:var(--space-md)}.mb-4{margin-bottom:var(--space-lg)}.mb-5{margin-bottom:var(--space-xl)}.mb-6{margin-bottom:var(--space-2xl)}.py-4{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.py-6{padding-top:var(--space-2xl);padding-bottom:var(--space-2xl)}.py-8{padding-top:var(--space-3xl);padding-bottom:var(--space-3xl)}.card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-padding{padding:var(--space-xl)}@media (max-width: 768px){:root{font-size:14px}h1{font-size:2.5rem}h2{font-size:2rem}.container,.container-wide{padding:0 var(--space-md)}.btn-lg{padding:var(--space-sm) var(--space-lg);font-size:1rem}}@media (max-width: 480px){h1{font-size:2rem}h2{font-size:1.5rem}}.header{background-color:var(--color-background);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:1000;transition:all var(--transition-normal);overflow:visible}.header-content{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) 0;overflow:visible;min-height:70px}.logo-image{width:150px;height:150px;object-fit:contain;transition:all .3s ease-in-out;position:fixed;top:0;z-index:1001}.logo-image.logo-scrolled{width:70px;height:70px}.logo-image:hover{transform:scale(1.02)}.logo-text{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--color-primary);margin:0;letter-spacing:.02em}.nav{display:flex;align-items:center}.nav-links{display:flex;align-items:center;gap:var(--space-xl)}.nav-dropdown{position:relative;cursor:pointer}.nav-dropdown>span{color:var(--color-text);font-weight:500;transition:color var(--transition-fast);padding:var(--space-sm) 0}.nav-dropdown:hover>span{color:var(--color-primary)}.dropdown-content{position:absolute;top:100%;left:0;min-width:180px;background-color:var(--color-background);box-shadow:var(--shadow-lg);border-radius:var(--radius-md);padding:var(--space-sm) 0;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-fast);z-index:1001}.nav-dropdown:hover .dropdown-content{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-content a{display:block;padding:var(--space-sm) var(--space-md);color:var(--color-text-light);font-size:.9rem;transition:all var(--transition-fast)}.dropdown-content a:hover{background-color:var(--color-background);color:var(--color-primary)}.nav-link{color:var(--color-text);font-weight:500;transition:color var(--transition-fast);padding:var(--space-sm) 0}.nav-link:hover{color:var(--color-primary)}.mobile-nav{display:none}.header-actions{display:flex;align-items:center;gap:var(--space-md)}.mobile-menu-toggle{display:none;flex-direction:column;justify-content:space-around;width:24px;height:24px;background:transparent;border:none;cursor:pointer;padding:0}.mobile-menu-toggle span{width:100%;height:2px;background-color:var(--color-text);transition:all var(--transition-fast);transform-origin:center}@media (max-width: 768px){.header-content{padding:var(--space-sm) 0;min-height:60px}.logo-image{width:120px;height:120px}.logo-image.logo-scrolled{width:60px;height:60px}.nav{position:absolute;top:100%;left:0;right:0;background-color:var(--color-background);box-shadow:var(--shadow-md);display:none}.nav-open{display:block}.desktop-nav{display:none}.mobile-nav{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:var(--space-xl) var(--space-lg);width:100%}.mobile-nav-link{display:flex;justify-content:center;align-items:center;width:100%;text-align:center;padding:var(--space-lg) var(--space-md);color:var(--color-text);font-size:1.25rem;font-weight:600;letter-spacing:.02em;transition:color var(--transition-fast);background:transparent!important}.mobile-nav-link:hover,.mobile-nav-link:active{color:var(--color-primary);background:transparent!important}.header-actions{display:none}.mobile-menu-toggle{display:flex}}@media (max-width: 480px){.header-content{min-height:50px}.logo-image{width:90px;height:90px}.logo-image.logo-scrolled{width:50px;height:50px}.header-actions{flex-direction:column;gap:var(--space-xs)}.header-actions .btn{padding:var(--space-xs) var(--space-sm);font-size:.8rem}}.cart-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2500;padding:100px var(--space-lg) var(--space-lg);animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cart-modal-content{background-color:var(--color-white);border-radius:var(--radius-xl);box-shadow:0 25px 50px -12px #00000040;max-width:800px;width:100%;max-height:calc(100vh - 120px);position:relative;animation:slideUp .3s ease-out;z-index:2501;display:flex;flex-direction:column;overflow:hidden}.cart-modal-header{padding:var(--space-md);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}.cart-modal-header-content{display:flex;align-items:center;gap:var(--space-lg);flex:1;justify-content:center}.cart-modal-icon{font-size:2rem;flex-shrink:0}.cart-modal-header h2{font-size:1.75rem;font-weight:600;color:var(--color-text);margin:0;text-align:left}.cart-modal-close{background:transparent;border:none;cursor:pointer;padding:var(--space-xs);color:var(--color-text-light);transition:color var(--transition-fast);flex-shrink:0}.cart-modal-close:hover{color:var(--color-text)}.cart-modal-body{padding:var(--space-xl);overflow-y:auto;flex:1;min-height:0}.cart-empty{text-align:center;padding:var(--space-4xl) var(--space-xl)}.cart-empty-icon{font-size:5rem;display:block;margin-bottom:var(--space-lg);opacity:.3}.cart-empty p{font-size:1.25rem;color:var(--color-text);margin-bottom:var(--space-sm)}.cart-empty-subtitle{font-size:1rem!important;color:var(--color-text-light)!important}.cart-items{display:flex;flex-direction:column;gap:var(--space-lg)}.cart-item{background-color:transparent;border:1px solid var(--color-border);border-radius:0;padding:var(--space-lg)}.cart-item-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:var(--space-md);margin-bottom:var(--space-md);border-bottom:1px solid var(--color-border)}.cart-item-info{display:flex;align-items:center;gap:var(--space-md)}.cart-item-icon{font-size:2.5rem;flex-shrink:0}.cart-pack-icons{display:flex;gap:var(--space-xs);flex-shrink:0}.cart-item-icon-small{font-size:1.75rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background-color:var(--color-white);border-radius:var(--radius-md);border:2px solid var(--color-border)}.cart-item-title{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0 0 var(--space-xs) 0}.cart-item-type{display:inline-block;padding:var(--space-xs) var(--space-sm);background-color:var(--color-white);border-radius:var(--radius-sm);font-size:.875rem;color:var(--color-text-light);text-transform:capitalize;font-weight:500;margin-right:var(--space-sm)}.cart-item-price{display:inline-block;padding:var(--space-xs) var(--space-sm);background-color:var(--color-primary);color:var(--color-white);border-radius:var(--radius-sm);font-size:.95rem;font-weight:600}.cart-item-actions{display:flex;gap:var(--space-xs)}.cart-item-edit{background:transparent;border:none;cursor:pointer;padding:var(--space-xs);color:var(--color-text-light);transition:all var(--transition-fast);border-radius:var(--radius-sm)}.cart-item-edit:hover,.cart-item.expanded .cart-item-edit{color:var(--color-primary);background-color:#8b45131a}.cart-item-remove{background:transparent;border:none;cursor:pointer;padding:var(--space-xs);color:var(--color-text-light);transition:color var(--transition-fast);border-radius:var(--radius-sm)}.cart-item-summary{display:flex;flex-direction:column;gap:var(--space-md)}.cart-item-details{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border)}.cart-item-extras{display:flex;gap:var(--space-sm);color:var(--color-text-light);font-size:.95rem}.cart-item-label{font-weight:500;color:var(--color-text)}.cart-item-quantity{display:flex;justify-content:space-between;align-items:center}.cart-quantity-selector{display:flex;align-items:center;gap:var(--space-md);background-color:var(--color-white);border-radius:var(--radius-md);padding:var(--space-xs)}.cart-quantity-btn{width:32px;height:32px;border:2px solid var(--color-border);background-color:var(--color-white);border-radius:var(--radius-sm);font-size:1.125rem;font-weight:600;color:var(--color-primary);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.cart-quantity-btn:hover{border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-white)}.cart-quantity-value{min-width:40px;text-align:center;font-weight:600;color:var(--color-text)}.cart-item-options{margin-top:var(--space-lg);animation:slideDown .24s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.cart-options-divider{height:1px;background-color:var(--color-border);margin-bottom:var(--space-lg)}.cart-form-group{margin-bottom:var(--space-lg)}.cart-form-label{display:block;font-family:var(--font-heading);font-size:1rem;font-weight:500;color:var(--color-text);margin-bottom:var(--space-sm);letter-spacing:.01em}.cart-radio-group{display:flex;gap:var(--space-lg);flex-wrap:wrap}.cart-radio-label{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;padding:var(--space-sm) var(--space-md);background-color:var(--color-white);border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);font-size:.95rem;color:var(--color-text)}.cart-radio-label:hover{border-color:var(--color-primary)}.cart-radio-label input[type=radio]{display:none}.cart-radio-label .radio-custom{width:20px;height:20px;border:2px solid var(--color-border);border-radius:50%;position:relative;transition:all var(--transition-fast);flex-shrink:0}.cart-radio-label input[type=radio]:checked~.radio-custom{border-color:var(--color-primary)}.cart-radio-label input[type=radio]:checked~.radio-custom:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background-color:var(--color-primary);border-radius:50%}.cart-radio-label input[type=radio]:checked{background-color:#8b45130d}.cart-radio-label:has(input[type=radio]:checked){border-color:var(--color-primary);background-color:#8b45130d}.cart-checkbox-label{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;padding:var(--space-sm);border-radius:var(--radius-md);transition:background-color var(--transition-fast);font-size:.95rem;color:var(--color-text)}.cart-checkbox-label:hover{background-color:#8b45130d}.cart-checkbox-label input[type=checkbox]{display:none}.cart-checkbox-label .checkbox-custom{width:20px;height:20px;border:2px solid var(--color-border);border-radius:var(--radius-sm);position:relative;transition:all var(--transition-fast);flex-shrink:0}.cart-checkbox-label input[type=checkbox]:checked~.checkbox-custom{border-color:var(--color-primary);background-color:var(--color-primary)}.cart-checkbox-label input[type=checkbox]:checked~.checkbox-custom:after{content:"";position:absolute;top:2px;left:6px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.cart-ingredients-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-xs);margin-top:var(--space-sm)}.cart-protein-list{display:flex;flex-direction:column;gap:var(--space-sm)}.cart-protein-item-compact{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);background-color:var(--color-white);border-radius:var(--radius-sm);font-size:.95rem}.cart-protein-icon{font-size:1.25rem}.cart-protein-name{font-family:var(--font-heading);font-weight:500;color:var(--color-text);letter-spacing:.01em}.cart-protein-qty{margin-left:auto;color:var(--color-primary);font-weight:600}.cart-protein-list-expanded{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-sm)}.cart-protein-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);background-color:var(--color-white);border:1px solid var(--color-border);transition:all var(--transition-fast)}.cart-protein-info{display:flex;align-items:center;gap:var(--space-sm)}.cart-protein-quantity-control{display:flex;align-items:center;gap:var(--space-xs)}.cart-protein-quantity{min-width:40px;text-align:center;font-weight:600;color:var(--color-primary);font-size:1rem}.cart-quantity-btn:disabled{opacity:.3;cursor:not-allowed}.cart-quantity-btn:disabled:hover{border-color:var(--color-border);background-color:var(--color-white);color:var(--color-primary)}.pack-total-indicator{margin-left:var(--space-sm);font-weight:600;padding:var(--space-xs) var(--space-sm);font-size:1rem}.pack-total-indicator.valid{color:#083a29}.pack-total-indicator.invalid{color:#ef4444}.pack-error-message{margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);background-color:#ef44441a;border-left:3px solid #ef4444;border-radius:var(--radius-sm);color:#ef4444;font-size:.9rem;font-weight:500}.cart-modal-footer{padding:var(--space-lg) var(--space-xl);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-md);flex-shrink:0}.cart-subtotal{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);background-color:var(--color-background);border-radius:var(--radius-md);margin-bottom:var(--space-sm)}.cart-subtotal-label{font-size:1.25rem;font-weight:600;color:var(--color-text)}.cart-subtotal-amount{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.cart-footer-actions{display:flex;justify-content:flex-end;gap:var(--space-md)}.cart-modal-footer .btn{min-width:150px}.cart-modal-footer .btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.cart-modal-overlay{padding:60px 0 0;align-items:stretch;justify-content:stretch}.cart-modal-content{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;animation:fadeIn .2s ease-out}.cart-modal-header{padding:var(--space-lg);gap:var(--space-md)}.cart-modal-icon{font-size:1.75rem}.cart-modal-header h2{font-size:1.5rem}.cart-modal-body{padding:var(--space-lg);flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.cart-modal-footer{padding:var(--space-md) var(--space-lg);padding-bottom:max(var(--space-md),env(safe-area-inset-bottom))}.cart-item-icon{font-size:2rem}.cart-item-title{font-size:1.125rem}.cart-radio-group{flex-direction:column;gap:var(--space-sm)}.cart-radio-label{width:100%}.cart-ingredients-section{grid-template-columns:1fr}.cart-footer-actions{flex-direction:column}.cart-modal-footer .btn{width:100%;min-height:48px}}@media (max-width: 480px){.cart-modal-overlay{padding-top:50px}.cart-modal-header h2{font-size:1.25rem}.cart-item{padding:var(--space-md)}.cart-item-info{flex-direction:column;align-items:flex-start}.cart-item-quantity{flex-direction:column;align-items:flex-start;gap:var(--space-sm);width:100%}.cart-quantity-selector{width:100%;justify-content:space-between}.cart-item-summary{gap:var(--space-sm)}.cart-quantity-btn{width:44px;height:44px;font-size:1.25rem}}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-video-container{position:relative;width:100%;height:100vh;overflow:hidden}.hero-background-image{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:1;background-color:#c75b3a}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#8b451359,#c75b3a40,#2c181033);z-index:2;display:flex;align-items:center;justify-content:center}.hero-content{text-align:center;max-width:800px;padding:var(--space-xl);animation:fadeInUp 1s ease-out}.hero-title{font-family:var(--font-heading);font-size:5.5rem;font-weight:700;color:var(--color-white);margin-bottom:var(--space-lg);line-height:1.1;letter-spacing:.02em;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.highlight{color:#c75b3a;position:relative;text-shadow:2px 2px 4px rgba(0,0,0,.3);font-style:italic}.highlight:after{display:none}.hero-subtitle{font-family:var(--font-body);font-size:1.25rem;color:#fffffff2;margin-bottom:var(--space-2xl);line-height:1.7;font-weight:400;text-shadow:1px 1px 2px rgba(0,0,0,.2)}.hero-actions{display:flex;justify-content:center;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-3xl)}.hero-features{display:flex;justify-content:center;align-items:center;gap:var(--space-2xl);flex-wrap:wrap}.feature{display:flex;align-items:center;gap:var(--space-sm);color:#fffffff2;font-weight:500;font-size:.95rem}.feature-icon{font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-actions .btn{font-weight:600;letter-spacing:.5px;box-shadow:var(--shadow-lg)}.hero-actions .btn:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.hero-actions .btn-primary:hover{color:var(--color-white)}.hero-actions .btn-outline{background-color:#ffffff1a;color:var(--color-white);border-color:#ffffff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-actions .btn-outline:hover{background-color:#fff3;border-color:#ffffff80;color:var(--color-white)}@media (max-width: 768px){.hero-title{font-size:3.5rem}.hero-subtitle{font-size:1.1rem}.hero-actions{flex-direction:column;gap:var(--space-md)}.hero-actions .btn{width:100%;max-width:280px}.hero-features{gap:var(--space-lg)}.feature{font-size:.9rem}}@media (max-width: 480px){.hero-content{padding:var(--space-lg)}.hero-title{font-size:2.75rem}.hero-subtitle{font-size:1rem}.hero-features{flex-direction:column;gap:var(--space-md)}}@media (prefers-reduced-motion: reduce){.hero-content{animation:none}}.meals-section{padding:var(--space-4xl) 0;background-color:var(--color-white)}.meals-header{text-align:center;max-width:600px;margin:0 auto var(--space-3xl)}.meals-header h2{font-size:2.5rem;font-weight:700;color:var(--color-text);margin-bottom:var(--space-lg)}.meals-header p{font-size:1.125rem;color:var(--color-text-light);line-height:1.6}.meals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl);margin-bottom:var(--space-3xl)}.meal-card{display:flex;align-items:center;padding:var(--space-xl);background-color:var(--color-white);border:2px solid var(--color-border);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.meal-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--meal-color),rgba(255,255,255,0));opacity:0;transition:opacity var(--transition-normal)}.meal-card:hover{border-color:var(--color-primary);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.meal-card:hover:before{opacity:1}.meal-icon{font-size:3rem;margin-right:var(--space-lg);background-color:var(--meal-color);border-radius:50%;width:80px;height:80px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--transition-normal)}.meal-card:hover .meal-icon{transform:scale(1.05)}.meal-content{flex:1}.meal-title{font-size:1.25rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}.meal-description{font-size:1rem;color:var(--color-text-light);line-height:1.5;margin:0}.meal-arrow{color:var(--color-text-light);transition:all var(--transition-normal);margin-left:var(--space-md)}.meal-card:hover .meal-arrow{color:var(--color-primary);transform:translate(4px)}.meals-cta{text-align:center;padding-top:var(--space-2xl);border-top:1px solid var(--color-border)}.meals-cta .btn{margin-bottom:var(--space-md)}.meals-cta-center{text-align:center;margin:var(--space-4xl) 0;padding:var(--space-3xl) var(--space-xl)}.meals-cta-center .btn{margin-bottom:var(--space-md);font-size:1.125rem;padding:var(--space-sm) var(--space-xl)}.cta-subtitle{color:var(--color-text-light);font-size:.9rem;margin:0}.cart-badge{position:fixed;bottom:var(--space-2xl);right:var(--space-2xl);background-color:var(--color-primary);color:var(--color-white);border-radius:0;padding:var(--space-md) var(--space-lg);display:flex;align-items:center;gap:var(--space-sm);box-shadow:var(--shadow-lg);cursor:pointer;z-index:1000}.cart-badge:hover{box-shadow:0 15px 30px -10px #8b451366}.cart-icon{font-size:1.5rem}.cart-count{background-color:var(--color-white);color:var(--color-primary);border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}@media (max-width: 768px){.meals-section{padding:var(--space-3xl) 0}.meals-header h2{font-size:2rem}.meals-grid{grid-template-columns:1fr;gap:var(--space-lg)}.meal-card{padding:var(--space-lg)}.meal-icon{width:60px;height:60px;font-size:2rem;margin-right:var(--space-md)}.meal-title{font-size:1.1rem}.meal-description{font-size:.95rem}.cart-badge{bottom:var(--space-lg);right:var(--space-lg);padding:var(--space-sm) var(--space-md)}.cart-icon{font-size:1.25rem}.cart-count{width:24px;height:24px;font-size:.8rem}}@media (max-width: 480px){.meals-header h2{font-size:1.75rem}.meals-header p{font-size:1rem}.meal-card{flex-direction:column;text-align:center;padding:var(--space-lg) var(--space-md)}.meal-icon{margin-right:0;margin-bottom:var(--space-md)}.meal-arrow{margin-left:0;margin-top:var(--space-sm);transform:rotate(90deg)}.meal-card:hover .meal-arrow{transform:rotate(90deg) translateY(4px)}.meals-cta .btn{width:100%;max-width:300px}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2500;padding:100px var(--space-lg) var(--space-lg);animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background-color:var(--color-white);border-radius:var(--radius-xl);box-shadow:0 25px 50px -12px #00000040;max-width:700px;width:100%;max-height:calc(100vh - 120px);position:relative;animation:slideUp .3s ease-out;z-index:2501;display:flex;flex-direction:column;overflow:hidden}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:var(--space-md);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}.modal-header-content{display:flex;align-items:center;gap:var(--space-lg);flex:1;justify-content:center}.modal-close{background:transparent;border:none;cursor:pointer;padding:var(--space-xs);color:var(--color-text-light);transition:color var(--transition-fast);flex-shrink:0}.modal-close:hover{color:var(--color-text)}.modal-protein-icon{font-size:3rem;flex-shrink:0}.modal-header h2{font-size:1.75rem;font-weight:600;color:var(--color-text);margin:0;text-align:left}.modal-body{padding:var(--space-xl);overflow-y:auto;flex:1;min-height:0}.form-group{margin-bottom:var(--space-xl)}.form-group label{display:block;font-family:var(--font-heading);font-weight:500;color:var(--color-text);margin-bottom:var(--space-sm);font-size:1.1rem;letter-spacing:.01em}.quantity-selector{display:flex;align-items:center;gap:var(--space-md)}.quantity-btn{width:40px;height:40px;border:2px solid var(--color-border);background-color:var(--color-white);border-radius:0;font-size:1.25rem;font-weight:600;color:var(--color-primary);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.quantity-btn:hover{border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-white)}.quantity-input{width:80px;height:40px;border:2px solid var(--color-border);border-radius:var(--radius-md);text-align:center;font-size:1rem;font-weight:500;color:var(--color-text);transition:border-color var(--transition-fast)}.quantity-input:focus{outline:none;border-color:var(--color-primary)}.radio-group{display:flex;gap:var(--space-lg);flex-wrap:wrap}.radio-label{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;padding:var(--space-sm) var(--space-md);background-color:var(--color-background);border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);font-size:.95rem;color:var(--color-text);font-weight:400}.radio-label:hover{border-color:var(--color-primary)}.radio-label input[type=radio]{display:none}.radio-custom{width:20px;height:20px;border:2px solid var(--color-border);border-radius:50%;position:relative;transition:all var(--transition-fast);flex-shrink:0}.radio-label input[type=radio]:checked~.radio-custom{border-color:var(--color-primary)}.radio-label input[type=radio]:checked~.radio-custom:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;border-radius:50%;background-color:var(--color-primary)}.radio-label:has(input[type=radio]:checked){border-color:var(--color-primary);background-color:#8b45130d}.checkbox-label{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;padding:var(--space-sm);border-radius:var(--radius-md);transition:background-color var(--transition-fast);font-size:.95rem;color:var(--color-text);font-weight:400}.checkbox-label:hover{background-color:#8b45130d}.checkbox-label input[type=checkbox]{display:none}.checkbox-custom{display:inline-block;width:20px;height:20px;min-width:20px;min-height:20px;border:2px solid var(--color-border);border-radius:var(--radius-sm);position:relative;transition:all var(--transition-fast);flex-shrink:0}.checkbox-label input[type=checkbox]:checked~.checkbox-custom{border-color:var(--color-primary);background-color:var(--color-primary)}.checkbox-label input[type=checkbox]:checked~.checkbox-custom:after{content:"";position:absolute;top:1px;left:5px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.ingredients-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-xs);padding:var(--space-md);background-color:var(--color-background);border-radius:var(--radius-md)}.pack-size-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-sm)}.pack-size-btn{padding:var(--space-md) var(--space-sm);border:2px solid var(--color-border);background-color:var(--color-white);border-radius:0;font-size:.95rem;font-weight:500;color:var(--color-text);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.pack-size-btn:hover{border-color:var(--color-primary);background-color:#8b45130d}.pack-size-btn.active{border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-white)}.protein-selection{display:flex;flex-direction:column;gap:var(--space-md)}.protein-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background-color:var(--color-white);border:1px solid var(--color-border)}.protein-option .checkbox-label{flex:1;min-width:0;display:flex;margin:0}.protein-option .checkbox-label:hover{background:none;color:var(--color-text)}.protein-name{font-family:var(--font-heading);font-weight:500;font-size:1.05rem;letter-spacing:.01em;color:var(--color-text)}.protein-quantity-control{display:flex;align-items:center;gap:var(--space-xs)}.protein-quantity{min-width:40px;text-align:center;font-weight:600;color:var(--color-primary);font-size:1rem}.quantity-btn:disabled{opacity:.3;cursor:not-allowed}.quantity-btn:disabled:hover{border-color:var(--color-border);background-color:var(--color-white);color:var(--color-primary)}.total-display{padding:var(--space-md);text-align:center;font-size:1.75rem;font-weight:600;color:var(--color-text)}.total-display.valid{color:var(--color-text)}.total-display.invalid{color:var(--color-primary)}.error-text{display:block;font-size:.85rem;margin-top:var(--space-xs);font-weight:400}.modal-footer{padding:var(--space-lg) var(--space-xl);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:var(--space-md);flex-shrink:0}.modal-footer .btn{min-width:120px}@media (max-width: 768px){.modal-overlay{padding:60px 0 0;align-items:stretch;justify-content:stretch}.modal-content{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;animation:fadeIn .2s ease-out}.modal-header{padding:var(--space-lg);gap:var(--space-md)}.modal-protein-icon{font-size:2.5rem}.modal-header h2{font-size:1.5rem}.modal-body{padding:var(--space-lg);flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-footer{padding:var(--space-md) var(--space-lg);padding-bottom:max(var(--space-md),env(safe-area-inset-bottom));flex-direction:column}.modal-footer .btn{width:100%;min-height:48px}.radio-group{flex-direction:column;gap:var(--space-sm)}.radio-label{width:100%}.ingredients-section{grid-template-columns:1fr}.pack-size-grid{grid-template-columns:repeat(2,1fr)}.pack-size-grid .quantity-btn{width:44px;height:44px;font-size:1.25rem}@media (max-width: 480px){.modal-overlay{padding-top:50px}.modal-header h2{font-size:1.25rem}.protein-option{flex-direction:column;align-items:stretch;gap:var(--space-sm)}.protein-quantity-control{justify-content:center}}.testimonials-section{padding:var(--space-4xl) 0;background:linear-gradient(135deg,var(--color-background) 0%,#EDD9C4 100%)}.testimonials-header{text-align:center;max-width:600px;margin:0 auto var(--space-3xl)}.testimonials-header h2{font-size:2.5rem;font-weight:700;color:var(--color-text);margin-bottom:var(--space-lg)}.testimonials-header p{font-size:1.125rem;color:var(--color-text-light);line-height:1.6}.testimonials-carousel{position:relative}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-xl);margin-bottom:var(--space-2xl)}.testimonial-card{background-color:var(--color-white);padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:all var(--transition-normal);height:fit-content}.testimonial-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#8b451326}.testimonial-rating{display:flex;align-items:center;margin-bottom:var(--space-md)}.star{font-size:1.2rem;margin-right:var(--space-xs)}.testimonial-title{font-size:1.25rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-md);line-height:1.3}.testimonial-content{font-size:1rem;color:var(--color-text-light);line-height:1.6;margin-bottom:var(--space-lg);font-style:italic}.testimonial-author{display:flex;align-items:center;padding-top:var(--space-md);border-top:1px solid var(--color-border)}.author-info{display:flex;flex-direction:column;gap:var(--space-xs)}.author-name{font-weight:600;color:var(--color-text);font-size:1rem}.dog-name{font-size:.9rem;color:var(--color-text-light)}.location{font-size:.85rem;color:var(--color-secondary);font-weight:500}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:var(--space-lg);margin-bottom:var(--space-2xl)}.carousel-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:var(--color-white);border:2px solid var(--color-border);border-radius:50%;color:var(--color-text-light);cursor:pointer;transition:all var(--transition-fast)}.carousel-btn:hover{border-color:var(--color-primary);color:var(--color-primary);transform:scale(1.05)}.carousel-btn:disabled{opacity:.5;cursor:not-allowed}.carousel-indicators{display:flex;align-items:center;gap:var(--space-sm)}.indicator{width:12px;height:12px;border-radius:50%;background-color:var(--color-border);border:none;cursor:pointer;transition:all var(--transition-fast)}.indicator.active{background-color:var(--color-primary);transform:scale(1.2)}.indicator:hover{background-color:var(--color-secondary)}.testimonials-cta{text-align:center}.testimonials-cta .btn{margin-bottom:var(--space-md)}.cta-subtitle{color:var(--color-text-light);font-size:.9rem;margin:0}.cta-subtitle a{color:var(--color-primary);font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.cta-subtitle a:hover{color:var(--color-accent)}.testimonials-section{padding:var(--space-3xl) 0}.testimonials-header h2{font-size:2rem}.testimonials-grid{grid-template-columns:1fr;gap:var(--space-lg)}.testimonial-card{padding:var(--space-lg)}.carousel-controls{gap:var(--space-md)}.carousel-btn{width:40px;height:40px}@media (max-width: 480px){.testimonials-header h2{font-size:1.75rem}.testimonials-header p{font-size:1rem}.testimonial-card{padding:var(--space-md)}.testimonial-title{font-size:1.1rem}.testimonial-content{font-size:.95rem}.testimonials-cta .btn{width:100%;max-width:300px}.carousel-controls{gap:var(--space-sm)}.carousel-btn{width:36px;height:36px}}.faq-section{padding:var(--space-4xl) 0;background-color:var(--color-white)}.faq-header{text-align:center;max-width:600px;margin:0 auto var(--space-3xl)}.faq-header h2{font-size:2.5rem;font-weight:700;color:var(--color-text);margin-bottom:var(--space-lg)}.faq-header p{font-size:1.125rem;color:var(--color-text-light);line-height:1.6}.faq-list{max-width:800px;margin:0 auto var(--space-3xl)}.faq-item{border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-md);overflow:hidden;transition:all var(--transition-normal)}.faq-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.faq-item.open{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-xl);background-color:var(--color-white);border:none;cursor:pointer;text-align:left;transition:all var(--transition-fast)}.faq-question:hover{background-color:var(--color-background)}.question-text{font-size:1.125rem;font-weight:600;color:var(--color-text);line-height:1.4;flex:1;margin-right:var(--space-md)}.question-icon{color:var(--color-text-light);transition:all var(--transition-fast);flex-shrink:0}.faq-item.open .question-icon{transform:rotate(180deg);color:var(--color-primary)}.faq-answer{max-height:0;overflow:hidden;transition:all var(--transition-normal);background-color:var(--color-background)}.faq-item.open .faq-answer{max-height:200px}.answer-content{padding:0 var(--space-xl) var(--space-lg)}.answer-content p{font-size:1rem;color:var(--color-text-light);line-height:1.6;margin:0}.faq-cta{text-align:center;padding:var(--space-3xl) 0 0;border-top:1px solid var(--color-border)}.faq-cta h3{font-size:1.5rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-sm)}.faq-cta p{font-size:1rem;color:var(--color-text-light);margin-bottom:var(--space-xl)}.cta-buttons{display:flex;justify-content:center;align-items:center;gap:var(--space-lg)}.faq-section{padding:var(--space-3xl) 0}.faq-header h2{font-size:2rem}.faq-question{padding:var(--space-md) var(--space-lg)}.question-text{font-size:1rem}.answer-content{padding:0 var(--space-lg) var(--space-md)}.answer-content p{font-size:.95rem}.cta-buttons{flex-direction:column;gap:var(--space-md)}.cta-buttons .btn{width:100%;max-width:280px}@media (max-width: 480px){.faq-header h2{font-size:1.75rem}.faq-header p{font-size:1rem}.faq-question{padding:var(--space-sm) var(--space-md)}.question-text{font-size:.95rem}.answer-content{padding:0 var(--space-md) var(--space-sm)}.question-icon svg{width:20px;height:20px}.faq-cta h3{font-size:1.25rem}}@media (prefers-reduced-motion: no-preference){.faq-answer{transition:max-height .3s ease-out}.faq-item.open .faq-answer{transition:max-height .3s ease-in}}.faq-question:focus{outline:2px solid var(--color-primary);outline-offset:2px}.faq-question:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.footer{background-color:var(--color-text);color:var(--color-white);padding:var(--space-4xl) 0 var(--space-xl)}.footer-content{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-4xl);margin-bottom:var(--space-3xl)}.footer-section{display:flex;flex-direction:column}.footer-logo h3{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:var(--color-white);margin-bottom:var(--space-md);letter-spacing:.02em}.footer-logo p{color:#fffc;font-size:1rem;line-height:1.6;margin-bottom:var(--space-xl)}.social-links{display:flex;gap:var(--space-md)}.social-links a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:#ffffff1a;border-radius:50%;color:#fffc;transition:all var(--transition-fast)}.social-links a:hover{background-color:var(--color-accent);color:var(--color-white);transform:translateY(-2px)}.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-xl)}.footer-column h4{font-family:var(--font-heading);font-size:1.125rem;font-weight:600;color:var(--color-white);margin-bottom:var(--space-lg);letter-spacing:.02em}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li{margin-bottom:var(--space-sm)}.footer-column a{color:#fffc;font-size:.95rem;transition:color var(--transition-fast)}.footer-column a:hover{color:var(--color-accent)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-xl);border-top:1px solid rgba(255,255,255,.1)}.footer-legal{display:flex;flex-direction:column;gap:var(--space-sm)}.footer-legal p{color:#fff9;font-size:.9rem;margin:0}.legal-links{display:flex;gap:var(--space-lg)}.legal-links a{color:#fff9;font-size:.9rem;transition:color var(--transition-fast)}.legal-links a:hover{color:var(--color-accent)}.footer-contact{text-align:right}.footer-contact p{color:#fff9;font-size:.9rem;margin:0 0 var(--space-xs)}.footer-contact a{color:#fffc;transition:color var(--transition-fast)}.footer-contact a:hover{color:var(--color-accent)}.footer{padding:var(--space-3xl) 0 var(--space-lg)}.footer-content{grid-template-columns:1fr;gap:var(--space-2xl)}.footer-links{grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.footer-bottom{flex-direction:column;gap:var(--space-lg);text-align:center}.footer-contact{text-align:center}.legal-links{justify-content:center}@media (max-width: 480px){.footer-links{grid-template-columns:1fr;gap:var(--space-lg)}.social-links{justify-content:center}.legal-links{flex-direction:column;gap:var(--space-sm);align-items:center}.footer-contact p{font-size:.85rem}}.App{min-height:100vh;background-color:var(--color-background)}main{position:relative;z-index:1}}
