@media (max-width:768px){.mobile-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mobile-spacing{padding:1rem}.mobile-hero-text{font-size:1.875rem;line-height:1.2;font-weight:800}.mobile-hero-subtext{font-size:1.5rem;font-weight:700;color:#f97316}.mobile-section-title{font-size:1.25rem;font-weight:700;color:#334155}.mobile-product-card{border-radius:1rem;overflow:hidden;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:all .2s ease}.mobile-product-card:hover{box-shadow:0 4px 6px rgba(0,0,0,.1);transform:translateY(-2px)}.mobile-bottom-nav-safe{padding-bottom:calc(env(safe-area-inset-bottom, 1.5rem) + .5rem)}.mobile-hero-gradient{background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.mobile-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}}@media (min-width:769px) and (max-width:1024px){.tablet-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.tablet-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}.tablet-hero-image{width:24rem;height:18rem}.tablet-spacing{padding:1.5rem}.tablet-hero-text{font-size:2.25rem;line-height:1.1;font-weight:800}.tablet-section-title{font-size:1.5rem;font-weight:700}.tablet-product-card{border-radius:1rem;box-shadow:0 2px 4px rgba(0,0,0,.1);transition:all .3s ease}.tablet-product-card:hover{box-shadow:0 8px 25px rgba(0,0,0,.15);transform:translateY(-4px)}.tablet-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.tablet-filter-controls{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border-radius:.75rem;box-shadow:0 2px 4px rgba(0,0,0,.05)}.tablet-touch-target{min-height:48px;min-width:48px;display:flex;align-items:center;justify-content:center}.tablet-sidebar{width:320px;background:#fff;border-radius:1rem;box-shadow:0 4px 6px rgba(0,0,0,.07);border:1px solid rgba(241,245,249,.8)}}@media (display-mode:standalone){.pwa-safe-area{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.pwa-bottom-nav{padding-bottom:calc(env(safe-area-inset-bottom) + 1rem)}.pwa-header{padding-top:calc(env(safe-area-inset-top) + 1rem)}.pwa-fullscreen{height:100vh;height:100dvh}}.mobile-card-hover{transition:transform .2s ease,box-shadow .2s ease}.mobile-card-hover:active{transform:scale(.98)}.mobile-scroll::-webkit-scrollbar{width:0;background:transparent}.mobile-spinner{width:1rem;height:1rem;border:2px solid #f3f4f6;border-top-color:#6b7280;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.mobile-shimmer{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);background-size:200% 100%;animation:shimmer 2s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.mamimart-card{background:#fff;border-radius:1rem;box-shadow:0 1px 3px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.06);transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid rgba(241,245,249,.8)}.mamimart-card:hover{box-shadow:0 10px 15px rgba(0,0,0,.1),0 4px 6px rgba(0,0,0,.05);transform:translateY(-2px)}.mamimart-button{transition:all .2s ease;border-radius:.75rem;font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.05)}.mamimart-button:hover{transform:translateY(-1px);box-shadow:0 4px 6px rgba(0,0,0,.1)}.mamimart-button:active{transform:translateY(0);box-shadow:0 1px 2px rgba(0,0,0,.05)}.mamimart-heading{font-weight:800;letter-spacing:-.02em;color:#1e293b}.mamimart-subheading{font-weight:700;letter-spacing:-.01em;color:#475569}.freshness-badge{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534;border-radius:9999px;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.price-naira{font-weight:700;color:#1f2937}.mobile-touch-target{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}.mobile-category-card{border-radius:1rem;overflow:hidden;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:all .2s ease;border:1px solid rgba(241,245,249,.8)}.mobile-category-card:hover{box-shadow:0 4px 8px rgba(0,0,0,.12);transform:translateY(-2px);border-color:rgba(22,163,74,.2)}.mobile-product-grid-enhanced{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media (min-width:640px){.mobile-product-grid-enhanced{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}}.mobile-filter-button{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:.75rem 1rem;transition:all .2s ease;box-shadow:0 1px 2px rgba(0,0,0,.05)}.mobile-filter-button:hover{background:#f9fafb;border-color:#16a34a;box-shadow:0 2px 4px rgba(0,0,0,.1)}.mobile-sidebar-overlay{backdrop-filter:blur(8px);background:rgba(0,0,0,.5)}.mobile-sidebar{background:#fff;box-shadow:0 10px 25px rgba(0,0,0,.15);transform:translateX(0);transition:transform .3s ease}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}@media (min-width:1024px){.desktop-grid-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:2rem}.desktop-grid-6{grid-template-columns:repeat(6,minmax(0,1fr));gap:2rem}.desktop-hero{min-height:80vh;padding:4rem 0}.desktop-hero-text{font-size:4rem;line-height:.85;font-weight:900;letter-spacing:-.03em;text-rendering:optimizeLegibility}.desktop-hero-subtext,.desktop-hero-text{font-family:var(--font-mulish),sans-serif}.desktop-hero-subtext{font-size:2.5rem;font-weight:700;color:#f97316;letter-spacing:-.02em;margin-top:2rem;line-height:.9}.desktop-nav{backdrop-filter:blur(20px);background:hsla(0,0%,100%,.95);border-bottom:1px solid rgba(226,232,240,.8)}.desktop-nav-link{position:relative;font-weight:500;transition:all .2s ease}.desktop-nav-link:hover{color:#15803d}.desktop-nav-link:after{content:"";position:absolute;width:0;height:2px;bottom:-8px;left:50%;background-color:#15803d;transition:all .3s ease;transform:translateX(-50%)}.desktop-nav-link:hover:after{width:100%}.desktop-search{max-width:500px;flex:1}.desktop-search input{font-size:16px;padding:12px 16px 12px 44px;border:2px solid #e2e8f0;border-radius:12px;transition:all .2s ease;background:#fafafa}.desktop-search input:focus{background:#fff;border-color:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.1)}.desktop-product-card{border-radius:1rem;box-shadow:0 2px 4px rgba(0,0,0,.06);transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid rgba(241,245,249,.8);background:#fff}.desktop-product-card:hover{box-shadow:0 12px 24px rgba(0,0,0,.12),0 4px 8px rgba(0,0,0,.08);transform:translateY(-4px);border-color:rgba(22,163,74,.2)}.desktop-product-image{height:12rem;padding:1.5rem}.desktop-promo-banner{border-radius:1.5rem;padding:3rem;min-height:200px;background:linear-gradient(135deg,#15803d,#16a34a 50%,#22c55e);box-shadow:0 8px 32px rgba(21,128,61,.3)}.desktop-promo-title{font-size:2.5rem;font-weight:800;margin-bottom:1.5rem}.desktop-promo-button{padding:1.25rem 3rem;font-size:1.125rem;font-weight:600;border-radius:12px;transition:all .2s ease;background:#f97316;box-shadow:0 4px 12px rgba(249,115,22,.3)}.desktop-promo-button:hover{background:#ea580c;transform:translateY(-2px);box-shadow:0 8px 24px rgba(249,115,22,.4)}.desktop-section-header{margin-bottom:3rem}.desktop-section-title{font-family:var(--font-mulish),sans-serif;font-size:2rem;font-weight:800;color:#334155;letter-spacing:-.025em;line-height:1.1}.desktop-section-subtitle{font-family:var(--font-mulish),sans-serif;font-size:1.125rem;font-weight:400;color:#64748b;letter-spacing:-.005em;margin-top:.5rem;line-height:1.5}.desktop-spacing{padding:2rem 0}.desktop-section-spacing{margin-bottom:4rem}}@media (min-width:1280px){.xl-desktop-grid-6{grid-template-columns:repeat(6,minmax(0,1fr));gap:2.5rem}.xl-desktop-hero-text{font-size:5rem;line-height:.85}.xl-desktop-container{max-width:1400px}.xl-desktop-product-card{border-radius:1.25rem}.xl-desktop-product-card:hover{box-shadow:0 16px 32px rgba(0,0,0,.15),0 6px 12px rgba(0,0,0,.1);transform:translateY(-6px)}.xl-desktop-product-image{height:14rem;padding:2rem}}@media (min-width:1024px){.desktop-fade-in{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.desktop-product-card:first-child{animation-delay:.1s}.desktop-product-card:nth-child(2){animation-delay:.2s}.desktop-product-card:nth-child(3){animation-delay:.3s}.desktop-product-card:nth-child(4){animation-delay:.4s}.desktop-product-card:nth-child(5){animation-delay:.5s}.desktop-hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.desktop-hover-lift:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.15)}.desktop-button-primary{background:linear-gradient(135deg,#15803d,#16a34a);box-shadow:0 4px 12px rgba(21,128,61,.3);transition:all .2s ease}.desktop-button-primary:hover{background:linear-gradient(135deg,#166534,#15803d);box-shadow:0 8px 24px rgba(21,128,61,.4);transform:translateY(-1px)}.desktop-button-secondary{border:2px solid #15803d;background:transparent;transition:all .2s ease}.desktop-button-secondary:hover{background:#15803d;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(21,128,61,.2)}.desktop-footer{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-top:1px solid #e2e8f0}.desktop-footer-link{transition:all .2s ease;position:relative}.desktop-footer-link:hover{color:#15803d;transform:translateX(2px)}}@media (min-width:1024px){::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px;transition:background .2s ease}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.mulish-display{font-family:var(--font-mulish),sans-serif;font-weight:900;letter-spacing:-.04em;line-height:.8;font-feature-settings:"kern" 1,"liga" 1,"ss01" 1}.mulish-display,.mulish-headline{text-rendering:optimizeLegibility}.mulish-headline{font-weight:800;letter-spacing:-.025em;line-height:.9}.mulish-headline,.mulish-title{font-family:var(--font-mulish),sans-serif}.mulish-title{font-weight:700;letter-spacing:-.02em;line-height:1.1}.mulish-body{font-weight:400;letter-spacing:-.01em;line-height:1.7}.mulish-body,.mulish-caption{font-family:var(--font-mulish),sans-serif}.mulish-caption{font-weight:500;letter-spacing:-.005em;line-height:1.4}}