@keyframes nav-gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.navbar{width:100%;height:80px;z-index:var(--z-fixed);background:#fff0;border-bottom:1px solid #0000;transition:all .4s cubic-bezier(.25,1,.5,1);position:fixed;top:0;left:0;right:0}.navbar:after{content:"";background:linear-gradient(90deg, var(--color-primary-light), var(--color-primary-deeper), var(--color-primary), var(--color-primary-light));filter:blur(8px);opacity:0;z-index:-1;height:10px;transition:opacity var(--transition-slow);background-size:300% 100%;animation:6s linear infinite nav-gradient-shift;position:absolute;top:100%;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(16px);background:#ffffffd9;border-bottom:1px solid #0000000d;height:70px;box-shadow:0 4px 30px #00000008}.navbar.scrolled:after{opacity:.3}.navbar-inner{max-width:var(--max-width);padding:0 var(--space-6);justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.navbar-logo{margin-left:var(--space-8);flex-shrink:0;align-items:center;display:flex}.navbar-logo img{width:auto;height:64px;transition:transform var(--transition-base)}.navbar-logo:hover img{transform:scale(1.05)}.navbar-links{align-items:center;gap:var(--space-1);display:flex}.navbar-link{padding:var(--space-2) var(--space-5);font-size:var(--text-sm);color:var(--color-text-secondary);letter-spacing:.03em;transition:all var(--transition-base);border-radius:var(--radius-lg);font-weight:500;position:relative}.navbar-link:hover{color:var(--color-primary-medium)}.navbar-link.active{color:var(--color-primary-medium);background:#0284c71a}.navbar-link:after{content:"";background:var(--color-primary-medium);border-radius:var(--radius-full);width:20px;height:2px;transition:transform var(--transition-base);position:absolute;bottom:0;left:50%;transform:translate(-50%)scaleX(0)}.navbar-link:hover:after,.navbar-link.active:after{transform:translate(-50%)scaleX(1)}.navbar-cart{border-radius:var(--radius-full);width:44px;height:44px;color:var(--color-text-secondary);transition:all var(--transition-base);justify-content:center;align-items:center;display:flex;position:relative}.navbar-cart:hover{color:var(--color-primary-medium);background:#0284c71a}.navbar-cart-badge{background:var(--color-primary-medium);min-width:18px;height:18px;color:var(--color-white);border-radius:var(--radius-full);justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:800;line-height:1;display:flex;position:absolute;top:2px;right:2px}.navbar-hamburger{border-radius:var(--radius-lg);width:44px;height:44px;transition:background var(--transition-base);flex-direction:column;justify-content:center;align-items:center;display:none}.navbar-hamburger:hover{background:#0284c71a}.hamburger-line{background:var(--color-text-primary);border-radius:var(--radius-full);width:22px;height:2px;transition:all var(--transition-base);display:block}.hamburger-line+.hamburger-line{margin-top:5px}.navbar-hamburger.open .hamburger-line:first-child{transform:rotate(45deg)translate(5px,5px)}.navbar-hamburger.open .hamburger-line:nth-child(2){opacity:0}.navbar-hamburger.open .hamburger-line:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.navbar-mobile-overlay{z-index:290;opacity:0;pointer-events:none;transition:opacity var(--transition-base);background:#0000004d;display:none;position:fixed;inset:0}.navbar-mobile-overlay.open{opacity:1;pointer-events:auto}.navbar-mobile-menu{background:var(--color-white);width:min(320px,85vw);height:100vh;z-index:var(--z-modal);padding:var(--space-24) var(--space-8) var(--space-8);gap:var(--space-2);transition:right var(--transition-slow);box-shadow:var(--shadow-2xl);flex-direction:column;display:none;position:fixed;top:0;right:-100%}.navbar-mobile-menu.open{right:0}.mobile-link{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4);font-size:var(--text-lg);color:var(--color-text-secondary);border-radius:var(--radius-lg);transition:all var(--transition-base);font-weight:500;display:flex}.mobile-link:hover,.mobile-link.active{color:var(--color-primary-medium);background:#0284c71a}.mobile-link svg{width:20px;height:20px}@media (width<=992px){.navbar{height:70px}.navbar.scrolled{height:60px}.navbar:before{border-radius:0}.navbar-links{display:none}.navbar-hamburger{display:flex}.navbar-mobile-overlay{display:block}.navbar-mobile-menu{display:flex}.navbar-logo img{height:52px}}.footer{background:linear-gradient(135deg, var(--color-primary-deeper) 0%, var(--color-primary-dark) 100%);color:#ffffffd9;padding:var(--space-20) 0 var(--space-8);position:relative;overflow:hidden}.footer:before{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#0284c726 0%,#0000 50%);position:absolute;inset:0}.footer-grid{gap:var(--space-12);margin-bottom:var(--space-12);grid-template-columns:1.5fr 1fr 1fr;display:grid}.footer-brand{gap:var(--space-4);flex-direction:column;display:flex}.footer-logo{filter:brightness(0)invert();object-fit:contain;width:auto;max-width:220px;height:55px}.footer-description{font-size:var(--text-sm);color:#fff9;max-width:300px;line-height:1.7}.footer-social{gap:var(--space-3);margin-top:var(--space-2);display:flex}.footer-social-link{border-radius:var(--radius-full);color:#ffffffb3;width:38px;height:38px;transition:all var(--transition-base);background:#ffffff1a;justify-content:center;align-items:center;display:flex}.footer-social-link:hover{background:var(--color-primary-medium);color:var(--color-white);transform:translateY(-2px)}.footer-column h4{color:var(--color-white);font-family:var(--font-body);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-6);font-weight:600}.footer-links{gap:var(--space-3);flex-direction:column;display:flex}.footer-links a{font-size:var(--text-sm);color:#fff9;transition:all var(--transition-base)}.footer-links a:hover{color:var(--color-primary);padding-left:var(--space-2)}.footer-contact-item{align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);color:#fff9;margin-bottom:var(--space-3);display:flex}.footer-contact-item svg{color:var(--color-primary);flex-shrink:0;margin-top:2px}.footer-bottom{padding-top:var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-4);border-top:1px solid #ffffff1a;flex-wrap:wrap;display:flex}.footer-copyright{font-size:var(--text-xs);color:#fff6}.footer-developer{align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:#fff6;margin-right:var(--space-24);display:flex}.footer-dev-logo{opacity:.8;width:auto;height:24px;transition:opacity var(--transition-base), transform var(--transition-base)}.footer-developer:hover .footer-dev-logo{opacity:1;transform:scale(1.05)}@media (width<=992px){.footer-grid{gap:var(--space-8);grid-template-columns:1fr 1fr}}@media (width<=576px){.footer-grid{gap:var(--space-8);grid-template-columns:1fr}.footer-bottom{text-align:center;flex-direction:column}.footer-developer{margin-right:0}}.whatsapp-btn{z-index:var(--z-whatsapp);border-radius:var(--radius-full);background:var(--color-whatsapp);color:#fff;width:60px;height:60px;transition:all var(--transition-base);justify-content:center;align-items:center;animation:2s ease-in-out infinite whatsappPulse;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 20px #25d36666}.whatsapp-btn:hover{animation:none;transform:scale(1.1);box-shadow:0 6px 28px #25d36680}.whatsapp-btn:active{transform:scale(1.05)}.whatsapp-btn svg{width:30px;height:30px}.whatsapp-tooltip{white-space:nowrap;background:var(--color-white);color:var(--color-text-primary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);box-shadow:var(--shadow-lg);opacity:0;transition:all var(--transition-base);pointer-events:none;font-weight:500;position:absolute;right:72px;transform:translate(8px)}.whatsapp-btn:hover .whatsapp-tooltip{opacity:1;transform:translate(0)}@keyframes whatsappPulse{0%,to{box-shadow:0 4px 20px #25d36666}50%{box-shadow:0 4px 30px #25d36699,0 0 0 8px #25d3661a}}@media (width<=576px){.whatsapp-btn{width:52px;height:52px;bottom:16px;right:16px}.whatsapp-btn svg{width:26px;height:26px}.whatsapp-tooltip{display:none}}.cart-toast{background-color:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-border);z-index:9999;opacity:0;pointer-events:none;flex-direction:column;width:340px;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .4s;display:flex;position:fixed;top:90px;right:20px;overflow:hidden;transform:translate(120%);box-shadow:0 10px 40px -10px #0003}.cart-toast.visible{opacity:1;pointer-events:auto;transform:translate(0)}.cart-toast-header{background-color:var(--color-bg);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.cart-toast-title{color:var(--color-text-primary);align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:flex}.cart-toast-title .text-green-500{color:#10b981}.cart-toast-close{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:background-color .2s,color .2s;display:flex}.cart-toast-close:hover{background-color:var(--color-border);color:var(--color-text-primary)}.cart-toast-content{gap:16px;padding:16px;display:flex}.cart-toast-image{border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:70px;height:70px;display:flex;overflow:hidden}.cart-toast-image img{object-fit:contain;width:100%;height:100%;padding:4px}.cart-toast-details{flex-direction:column;flex-grow:1;justify-content:center;display:flex}.cart-toast-name{color:var(--color-text-primary);margin:0 0 4px;font-size:.95rem;font-weight:600;line-height:1.3}.cart-toast-variants{color:var(--color-text-secondary);margin:0 0 8px;font-size:.8rem}.cart-toast-price-row{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.cart-toast-qty{color:var(--color-text-tertiary);font-size:.85rem}.cart-toast-price{color:var(--color-primary);font-size:1rem;font-weight:700}.cart-toast-actions{border-top:1px solid var(--color-border);background-color:var(--color-bg);grid-template-columns:1fr 1fr;gap:8px;padding:12px 16px;display:grid}.btn-toast{border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.btn-toast-outline{color:var(--color-text-primary);border:1px solid var(--color-border);background-color:#0000}.btn-toast-outline:hover{background-color:var(--color-border)}.btn-toast-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-toast-primary:hover{background-color:var(--color-primary-dark)}@media (width<=480px){.cart-toast{pointer-events:none;width:auto;inset:auto 10px 20px;transform:translateY(120%)}.cart-toast.visible{pointer-events:auto;transform:translateY(0)}}.app{flex-direction:column;min-height:100vh;display:flex}.app-main{padding-top:var(--navbar-height);flex:1}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transition:opacity .4s,transform .4s;transform:translateY(0)}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity .2s}.loading-screen{justify-content:center;align-items:center;min-height:60vh;display:flex}.loading-spinner{border:3px solid var(--color-border-light);border-top-color:var(--color-primary-medium);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.section-divider{background:linear-gradient(90deg, var(--color-primary-medium), var(--color-primary-light));border-radius:var(--radius-full);width:60px;height:3px;margin:var(--space-6) auto}:root{--color-white:#fff;--color-bg:#fafafa;--color-bg-alt:#f5f5f5;--btn-primary:#0284c7;--btn-primary-dark:#0369a1;--btn-primary-light:#38bdf8;--btn-primary-shadow:#0284c74d;--btn-primary-shadow-lg:#0284c773;--btn-primary-shadow-glow:#0284c71f;--color-primary:#0284c7;--color-primary-light:#f0f9ff;--color-primary-medium:#0ea5e9;--color-primary-dark:#0369a1;--color-primary-deeper:#075985;--color-text-primary:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-success:#10b981;--color-error:#ef4444;--color-warning:#f59e0b;--color-whatsapp:#25d366;--color-overlay:#0f172a80;--font-heading:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--text-7xl:4.5rem;--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;--space-32:8rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-3xl:2rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #00000005;--shadow-base:0 2px 6px -1px #00000008, 0 1px 4px -1px #00000005;--shadow-md:0 4px 12px -2px #0000000a, 0 2px 6px -2px #00000005;--shadow-lg:0 12px 24px -4px #0000000d, 0 6px 12px -4px #00000005;--shadow-xl:0 20px 30px -5px #0000000f, 0 10px 15px -6px #00000005;--shadow-2xl:0 30px 60px -12px #00000014;--shadow-primary:0 4px 14px #0284c726;--shadow-primary-lg:0 10px 30px #0284c733;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.35s ease;--transition-spring:.4s cubic-bezier(.34, 1.56, .64, 1);--max-width:1280px;--max-width-narrow:900px;--navbar-height:80px;--z-base:1;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-whatsapp:600;--z-toast:700}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-body);color:var(--color-text-primary);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.7;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;transition:color var(--transition-base);text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none}ul,ol{list-style:none}input,textarea,select{font-family:inherit;font-size:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-primary);font-weight:600;line-height:1.2}h1{letter-spacing:-.02em;font-size:clamp(2.5rem,5vw,4rem)}h2{letter-spacing:-.02em;font-size:clamp(2rem,4vw,3.2rem)}h3{letter-spacing:-.01em;font-size:clamp(1.5rem,3vw,2.25rem)}h4{font-size:clamp(1.25rem,2vw,1.75rem)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{color:var(--color-text-secondary);line-height:1.8}.container{max-width:var(--max-width);padding:0 var(--space-6);margin:0 auto}.container-narrow{max-width:var(--max-width-narrow);padding:0 var(--space-6);margin:0 auto}.section{padding:var(--space-24) 0}.section-sm{padding:var(--space-16) 0}.text-primary{color:var(--color-primary-medium)}.text-center{text-align:center}.text-elegant{font-family:var(--font-heading);font-style:italic;font-weight:400}.section-label{font-family:var(--font-body);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-primary);margin-bottom:var(--space-4);font-weight:600;display:inline-block}.section-title{margin-bottom:var(--space-6);color:var(--color-text-primary);letter-spacing:-.02em;font-size:clamp(2rem,4vw,3.2rem)}.section-subtitle{color:var(--color-text-secondary);max-width:700px;margin:0 auto;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.8}@keyframes btn-shimmer{0%{transform:translate(-100%)skew(-15deg)}to{transform:translate(200%)skew(-15deg)}}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-8);border-radius:var(--radius-full);font-family:var(--font-body);font-weight:600;font-size:var(--text-base);letter-spacing:.03em;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(105deg,#0000 20%,#ffffff40 50%,#0000 80%);width:40%;height:100%;position:absolute;top:0;left:0}.btn:hover:after{opacity:1;animation:.8s ease-out btn-shimmer}.btn-primary{background:linear-gradient(135deg, var(--btn-primary), var(--btn-primary-dark));color:var(--color-white);box-shadow:0 4px 15px var(--btn-primary-shadow)}.btn-primary:hover{box-shadow:0 8px 30px var(--btn-primary-shadow-lg), 0 0 0 3px var(--btn-primary-shadow-glow);transform:translateY(-3px)scale(1.04)}.btn-primary:active{box-shadow:0 4px 12px var(--btn-primary-shadow);transition-duration:.1s;transform:translateY(-1px)scale(1.01)}.btn-outline{color:var(--btn-primary);border:2px solid var(--btn-primary);background:0 0;box-shadow:0 0 #0284c700}.btn-outline:hover{background:var(--btn-primary);border-color:var(--btn-primary);color:var(--color-white);box-shadow:0 8px 25px var(--btn-primary-shadow-lg), 0 0 0 3px var(--btn-primary-shadow-glow);transform:translateY(-3px)scale(1.04)}.btn-outline:active{transition-duration:.1s;transform:translateY(-1px)scale(1.01)}.btn-ghost{color:var(--color-text-secondary);padding:var(--space-3) var(--space-4);box-shadow:none;background:0 0}.btn-ghost:hover{color:var(--btn-primary);background:#0284c71a;transform:translate(4px)}.btn-ghost:active{transition-duration:.1s;transform:translate(2px)}.btn-lg{padding:var(--space-4) var(--space-10);font-size:var(--text-lg)}.btn-sm{padding:var(--space-2) var(--space-6);font-size:var(--text-sm)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-primary-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-medium)}::selection{color:var(--color-primary-dark);background:#0284c71a}@media (width<=768px){.section{padding:var(--space-16) 0}}@media (width<=480px){html{font-size:14px}.container{padding:0 var(--space-4)}}.hover-zoom{transition:transform .6s cubic-bezier(.25,1,.5,1)}.hover-zoom:hover{transform:scale(1.05)}
