.header{position:sticky;top:0;z-index:var(--z-sticky);background:#fffffff2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);border-bottom:1px solid var(--color-border-light)}.header-content{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0}.logo{display:flex;align-items:center;text-decoration:none;transition:transform var(--transition-base)}.logo:hover{transform:scale(1.05)}.logo-image{height:60px;width:auto;object-fit:contain}.nav-desktop{display:flex;align-items:center;gap:var(--space-8)}.nav-link{font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-decoration:none;position:relative;transition:color var(--transition-base)}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--color-primary);transition:width var(--transition-base)}.nav-link:hover{color:var(--color-primary)}.nav-link:hover:after{width:100%}.header-actions{display:flex;align-items:center;gap:var(--space-4)}.cart-button{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-text-inverse);transition:all var(--transition-base);text-decoration:none}.cart-button:hover{background:var(--color-primary-dark);transform:scale(1.1)}.cart-icon{width:24px;height:24px}.cart-badge{position:absolute;top:-4px;right:-4px;display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 4px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);background:var(--color-accent);color:var(--color-text-inverse);border-radius:var(--radius-full);border:2px solid white}.mobile-menu-button{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-md);background:transparent;color:var(--color-text-primary);transition:all var(--transition-base)}.mobile-menu-button:hover{background:var(--color-surface-alt)}.menu-icon{width:24px;height:24px}.nav-mobile{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) 0;border-top:1px solid var(--color-border-light)}.nav-link-mobile{font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-decoration:none;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);transition:all var(--transition-base)}.nav-link-mobile:hover{background:var(--color-surface-alt);color:var(--color-primary)}@media(max-width:768px){.nav-desktop{display:none}.mobile-menu-button{display:flex}.logo-text{font-size:var(--font-size-xl)}}@media(min-width:769px){.nav-mobile{display:none}}.footer{background:var(--color-text-primary);color:var(--color-text-inverse);padding:var(--space-16) 0 var(--space-8);margin-top:var(--space-20)}.footer-content{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-8);margin-bottom:var(--space-12)}.footer-section{display:flex;flex-direction:column;gap:var(--space-4)}.footer-brand{font-family:var(--font-heading);font-size:var(--font-size-2xl);font-weight:var(--font-weight-black);background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-secondary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-2)}.footer-description{font-size:var(--font-size-sm);color:var(--color-text-light);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.social-links{display:flex;gap:var(--space-3)}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);background:#ffffff1a;color:var(--color-text-inverse);transition:all var(--transition-base)}.social-link:hover{background:var(--color-primary);transform:translateY(-4px)}.social-icon{width:20px;height:20px}.footer-heading{font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-inverse);margin-bottom:var(--space-2)}.footer-address{font-style:normal;font-size:var(--font-size-sm);color:var(--color-text-light);line-height:var(--line-height-relaxed)}.footer-address p{margin-bottom:var(--space-1);color:var(--color-text-light)}.footer-hours{margin-top:var(--space-2)}.hours-heading{font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-inverse);margin-bottom:var(--space-2)}.footer-hours p{font-size:var(--font-size-sm);color:var(--color-text-light);margin-bottom:var(--space-1)}.closed-day{color:var(--color-accent-light);font-weight:var(--font-weight-medium)}.footer-links{display:flex;flex-direction:column;gap:var(--space-2)}.footer-link{font-size:var(--font-size-sm);color:var(--color-text-light);text-decoration:none;transition:all var(--transition-base);width:fit-content}.footer-link:hover{color:var(--color-primary-light);transform:translate(4px)}.footer-bottom{padding-top:var(--space-8);border-top:1px solid rgba(255,255,255,.1);text-align:center}.copyright{font-size:var(--font-size-sm);color:var(--color-text-light)}@media(max-width:1024px){.footer-content{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.footer-content{grid-template-columns:1fr;gap:var(--space-10)}.footer{padding:var(--space-12) 0 var(--space-6)}}.product-card-image-wrapper{position:relative;width:100%;height:250px;overflow:hidden;background:var(--color-surface-alt)}.sold-out-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1}.sold-out-badge{background:var(--color-error);color:var(--color-text-inverse);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:1px}.newsletter{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:var(--radius-2xl);padding:var(--space-12) var(--space-8);margin:var(--space-16) 0;position:relative;overflow:hidden}.newsletter:before{content:"";position:absolute;top:-50%;right:-10%;width:400px;height:400px;background:#ffffff1a;border-radius:50%;pointer-events:none}.newsletter-content{position:relative;z-index:1;max-width:600px;margin:0 auto;text-align:center}.newsletter-title{font-family:var(--font-heading);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-inverse);margin-bottom:var(--space-3)}.newsletter-description{font-size:var(--font-size-lg);color:#ffffffe6;margin-bottom:var(--space-6)}.newsletter-form{display:flex;gap:var(--space-3);max-width:500px;margin:0 auto}.newsletter-input{flex:1;padding:var(--space-4);font-size:var(--font-size-base);border:2px solid rgba(255,255,255,.3);border-radius:var(--radius-lg);background:#fff3;color:var(--color-text-inverse);outline:none;transition:all var(--transition-base)}.newsletter-input::placeholder{color:#ffffffb3}.newsletter-input:focus{background:#ffffff4d;border-color:#ffffff80}.newsletter-message{margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.newsletter-message.success{background:#10b98133;color:var(--color-text-inverse);border:1px solid rgba(16,185,129,.5)}.newsletter-message.error{background:#ef444433;color:var(--color-text-inverse);border:1px solid rgba(239,68,68,.5)}@media(max-width:640px){.newsletter{padding:var(--space-8) var(--space-5)}.newsletter-title{font-size:var(--font-size-2xl)}.newsletter-description{font-size:var(--font-size-base)}.newsletter-form{flex-direction:column}}.home{min-height:100vh}.hero{position:relative;min-height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%)}.hero-background{position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 0%,transparent 50%);pointer-events:none}.hero-content{position:relative;z-index:1;text-align:center;color:var(--color-text-inverse);max-width:800px;padding:var(--space-8) 0}.hero-title{font-size:var(--font-size-6xl);font-weight:var(--font-weight-black);margin-bottom:var(--space-5);color:var(--color-text-inverse);text-shadow:0 2px 10px rgba(0,0,0,.2)}.hero-subtitle{font-size:var(--font-size-xl);line-height:var(--line-height-relaxed);margin-bottom:var(--space-8);color:#fffffff2}.hero-actions{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.section-header{text-align:center;margin-bottom:var(--space-12)}.section-title{font-size:var(--font-size-4xl);margin-bottom:var(--space-3)}.section-description{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto}.section-cta{text-align:center;margin-top:var(--space-12)}.about-preview{background:var(--color-surface-alt)}.about-preview-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:center}.about-preview-title{font-size:var(--font-size-4xl);margin-bottom:var(--space-5)}.about-preview-description{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:var(--space-6);color:var(--color-text-secondary)}.about-preview-image{width:100%;height:400px;border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-2xl)}.image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-secondary-light) 100%);display:flex;align-items:center;justify-content:center}.image-placeholder-text{font-size:120px;filter:drop-shadow(0 4px 10px rgba(0,0,0,.1))}.location-section{background:var(--color-surface)}.location-content{margin-top:var(--space-8)}.location-info{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.info-card{background:var(--color-surface);padding:var(--space-8);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-md);transition:all var(--transition-base)}.info-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.info-icon{font-size:48px;margin-bottom:var(--space-4)}.info-title{font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-3);color:var(--color-text-primary)}.info-text{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.info-text a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}.info-text a:hover{color:var(--color-primary-dark);text-decoration:underline}.closed{color:var(--color-accent);font-weight:var(--font-weight-medium)}@media(max-width:1024px){.about-preview-content{grid-template-columns:1fr}.about-preview-image{order:-1}.location-info{grid-template-columns:1fr}}@media(max-width:768px){.hero{min-height:500px}.hero-title{font-size:var(--font-size-4xl)}.hero-subtitle{font-size:var(--font-size-lg)}.hero-actions{flex-direction:column;align-items:stretch}.section-title,.about-preview-title{font-size:var(--font-size-3xl)}}@media(max-width:480px){.hero-title{font-size:var(--font-size-3xl)}}.menu-page{min-height:100vh}.menu-hero{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);padding:var(--space-16) 0 var(--space-12);text-align:center;color:var(--color-text-inverse)}.page-title{font-size:var(--font-size-5xl);font-weight:var(--font-weight-black);margin-bottom:var(--space-4);color:var(--color-text-inverse)}.page-subtitle{font-size:var(--font-size-xl);color:#fffffff2;max-width:700px;margin:0 auto}.category-filter{display:flex;gap:var(--space-3);justify-content:center;margin-bottom:var(--space-12);flex-wrap:wrap}.category-btn{padding:var(--space-3) var(--space-6);font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-text-primary);border:2px solid var(--color-border);transition:all var(--transition-base);cursor:pointer}.category-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.category-btn.active{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}.empty-state{text-align:center;padding:var(--space-16) 0;color:var(--color-text-secondary);font-size:var(--font-size-lg)}@media(max-width:768px){.page-title{font-size:var(--font-size-4xl)}.page-subtitle{font-size:var(--font-size-lg)}}.merch-page{min-height:100vh}.merch-hero{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-secondary) 100%);padding:var(--space-16) 0 var(--space-12);text-align:center;color:var(--color-text-inverse)}.about-page{min-height:100vh}.about-hero{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);padding:var(--space-16) 0 var(--space-12);text-align:center;color:var(--color-text-inverse)}.about-content{max-width:900px;margin:0 auto}.about-section{margin-bottom:var(--space-16)}.about-section h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-5);color:var(--color-text-primary)}.about-section p{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);margin-bottom:var(--space-4)}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6);margin-top:var(--space-8)}.feature-card{background:var(--color-surface);padding:var(--space-6);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);text-align:center;transition:all var(--transition-base)}.feature-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.feature-icon{font-size:48px;margin-bottom:var(--space-4)}.feature-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-3);color:var(--color-text-primary)}.feature-card p{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.visit-info{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6);margin-top:var(--space-8)}.visit-card{background:var(--color-surface-alt);padding:var(--space-6);border-radius:var(--radius-lg)}.visit-card h4{font-size:var(--font-size-xl);margin-bottom:var(--space-3);color:var(--color-text-primary)}.visit-card p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin:0}@media(max-width:768px){.features-grid,.visit-info{grid-template-columns:1fr}}.jobs-page{min-height:100vh}.jobs-hero{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);padding:var(--space-16) 0 var(--space-12);text-align:center;color:var(--color-text-inverse)}.jobs-intro{max-width:800px;margin:0 auto var(--space-12);text-align:center}.jobs-intro h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-4)}.jobs-intro p{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}.jobs-list{max-width:900px;margin:0 auto var(--space-16)}.jobs-list h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-8);text-align:center}.job-card{background:var(--color-surface);padding:var(--space-8);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);margin-bottom:var(--space-6);transition:all var(--transition-base)}.job-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.job-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-2);color:var(--color-text-primary)}.job-type{margin-left:var(--space-3)}.job-description{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--space-5);line-height:var(--line-height-relaxed)}.job-requirements{margin-bottom:var(--space-6)}.job-requirements h4{font-size:var(--font-size-lg);margin-bottom:var(--space-3);color:var(--color-text-primary)}.job-requirements ul{list-style:disc;padding-left:var(--space-6)}.job-requirements li{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-2);line-height:var(--line-height-relaxed)}.jobs-cta{max-width:700px;margin:0 auto;text-align:center;background:var(--color-surface-alt);padding:var(--space-10);border-radius:var(--radius-2xl)}.jobs-cta h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-4)}.jobs-cta p{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--space-6);line-height:var(--line-height-relaxed)}.cart-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.cart-item:hover{box-shadow:var(--shadow-md)}.cart-item-image{width:100px;height:100px;object-fit:cover;border-radius:var(--radius-md);background:var(--color-surface-alt)}.cart-item-details{flex:1}.cart-item-name{font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.cart-item-price{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.cart-item-actions{display:flex;align-items:center;gap:var(--space-4)}.quantity-controls{display:flex;align-items:center;gap:var(--space-2);background:var(--color-surface-alt);border-radius:var(--radius-md);padding:var(--space-1)}.quantity-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);transition:all var(--transition-base);border:none;cursor:pointer}.quantity-btn:hover{background:var(--color-primary);color:var(--color-text-inverse)}.quantity-display{min-width:32px;text-align:center;font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.cart-item-subtotal{min-width:80px;text-align:right;font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.remove-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background:transparent;color:var(--color-error);transition:all var(--transition-base);border:none;cursor:pointer}.remove-btn:hover{background:#ef44441a}.remove-icon{width:20px;height:20px}@media(max-width:640px){.cart-item{flex-direction:column;align-items:flex-start}.cart-item-image{width:100%;height:150px}.cart-item-actions{width:100%;justify-content:space-between}.cart-item-subtotal{min-width:auto}}.cart-page{min-height:100vh;padding:var(--space-12) 0}.cart-title{font-size:var(--font-size-4xl);margin-bottom:var(--space-8)}.cart-layout{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-8);align-items:start}.cart-items-section{background:var(--color-surface-alt);padding:var(--space-6);border-radius:var(--radius-xl)}.cart-items-list{display:flex;flex-direction:column;gap:var(--space-4)}.cart-summary{background:var(--color-surface);padding:var(--space-6);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);position:sticky;top:calc(var(--space-16) + 60px)}.summary-title{font-family:var(--font-heading);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;font-size:var(--font-size-base);color:var(--color-text-secondary)}.total-row{font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);padding-top:var(--space-4);margin-top:var(--space-3);border-top:2px solid var(--color-border);margin-bottom:var(--space-5)}.checkout-form{margin-top:var(--space-5);padding-top:var(--space-5);border-top:2px solid var(--color-border)}.checkout-title{font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:var(--space-5)}.error-text{display:block;margin-top:var(--space-1);font-size:var(--font-size-sm);color:var(--color-error)}.empty-cart{text-align:center;padding:var(--space-20) 0}.empty-cart-icon{font-size:120px;margin-bottom:var(--space-6);opacity:.5}.empty-cart-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-3)}.empty-cart-text{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--space-8)}@media(max-width:1024px){.cart-layout{grid-template-columns:1fr}.cart-summary{position:static}}@media(max-width:640px){.cart-title{font-size:var(--font-size-3xl)}.cart-items-section{padding:var(--space-4)}}.legal-page{min-height:100vh}.legal-hero{background:var(--color-text-primary);padding:var(--space-12) 0 var(--space-8);text-align:center;color:var(--color-text-inverse)}.legal-content{max-width:800px;margin:0 auto;font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}.legal-content h2{font-size:var(--font-size-2xl);margin-top:var(--space-8);margin-bottom:var(--space-4);color:var(--color-text-primary)}.legal-content p{margin-bottom:var(--space-4)}.legal-content ul{list-style:disc;padding-left:var(--space-6);margin-bottom:var(--space-4)}.legal-content li{margin-bottom:var(--space-2)}.legal-content a{color:var(--color-primary);text-decoration:underline}.legal-content a:hover{color:var(--color-primary-dark)}:root{--color-primary: #1B4332;--color-primary-light: #2D6A4F;--color-primary-dark: #081C15;--color-secondary: #52B788;--color-secondary-light: #74C69D;--color-secondary-dark: #40916C;--color-accent: #D8F3DC;--color-accent-light: #B7E4C7;--color-accent-dark: #95D5B2;--color-background: #F8F9FA;--color-surface: #FFFFFF;--color-surface-alt: #E9ECEF;--color-text-primary: #1F2937;--color-text-secondary: #6B7280;--color-text-light: #9CA3AF;--color-text-inverse: #FFFFFF;--color-border: #E5E7EB;--color-border-light: #F3F4F6;--color-success: #10B981;--color-error: #EF4444;--color-warning: #F59E0B;--font-heading: "Outfit", sans-serif;--font-body: "Inter", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--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);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--container-max-width: 1280px;--container-padding: var(--space-4);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px}.gradient-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%)}.gradient-secondary{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-light) 100%)}.gradient-accent{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-light) 100%)}.gradient-hero{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%)}.glass{background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}.glass-dark{background:#1f2937b3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-background);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-primary);margin-bottom:var(--space-4)}h1{font-size:var(--font-size-5xl);font-weight:var(--font-weight-black)}h2{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--space-4);color:var(--color-text-secondary)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-primary-dark)}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit}.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.section{padding:var(--space-16) 0}.section-sm{padding:var(--space-12) 0}.section-lg{padding:var(--space-24) 0}@media(max-width:768px){h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}.section{padding:var(--space-12) 0}.section-lg{padding:var(--space-16) 0}}@media(max-width:480px){h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}.section{padding:var(--space-10) 0}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.grid{display:grid}.hidden{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fadeIn{animation:fadeIn var(--transition-slow) ease-out}.animate-slideUp{animation:slideUp var(--transition-slow) ease-out}.animate-slideDown{animation:slideDown var(--transition-slow) ease-out}.animate-scaleIn{animation:scaleIn var(--transition-slow) ease-out}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);border-radius:var(--radius-lg);transition:all var(--transition-base);cursor:pointer;border:none;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-secondary{background:var(--color-secondary);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.btn-secondary:hover:not(:disabled){background:var(--color-secondary-dark);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-accent{background:var(--color-accent);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.btn-accent:hover:not(:disabled){background:var(--color-accent-dark);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-outline{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover:not(:disabled){background:var(--color-primary);color:var(--color-text-inverse)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-lg)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.card-glass{background:#fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}.input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-base);outline:none}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #0d94881a}.input::placeholder{color:var(--color-text-light)}.input-error{border-color:var(--color-error)}.input-error:focus{box-shadow:0 0 0 3px #ef44441a}.label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-2)}.form-group{margin-bottom:var(--space-5)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px}.badge-primary{background:var(--color-primary);color:var(--color-text-inverse)}.badge-secondary{background:var(--color-secondary);color:var(--color-text-inverse)}.badge-success{background:var(--color-success);color:var(--color-text-inverse)}.badge-error{background:var(--color-error);color:var(--color-text-inverse)}.badge-outline{background:transparent;border:1px solid currentColor}.product-card{background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md);transition:all var(--transition-base);height:100%;display:flex;flex-direction:column}.product-card:hover{box-shadow:var(--shadow-2xl);transform:translateY(-8px)}.product-card-image{width:100%;height:250px;object-fit:cover;background:var(--color-surface-alt)}.product-card-content{padding:var(--space-5);flex:1;display:flex;flex-direction:column}.product-card-title{font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.product-card-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-4);flex:1}.product-card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:auto}.product-card-price{font-family:var(--font-heading);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}@media(max-width:1024px){.grid-4{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.alert-success{background:#10b9811a;color:var(--color-success);border:1px solid var(--color-success)}.alert-error{background:#ef44441a;color:var(--color-error);border:1px solid var(--color-error)}.alert-warning{background:#f59e0b1a;color:var(--color-warning);border:1px solid var(--color-warning)}
