:root{--products-primary:#2c3691;--products-secondary:#e9282a;--white:#ffffff;--dark-bg:#121620;--dark-surface:#1e2030;--dark-elevated:#252a3d;--dark-text-primary:#ffffff;--dark-text-secondary:rgba(255,255,255,0.7);--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--gradient-blue:linear-gradient(135deg,#2c3691 0%,#3a44a0 100%);--gradient-red:linear-gradient(135deg,#e9282a 0%,#c81d1f 100%);--shadow-elegant:0 10px 25px rgba(0,0,0,0.08);--shadow-hover:0 15px 35px rgba(0,0,0,0.12);--border-radius:1.25rem;--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1)}.products-hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:8rem 0 6rem;color:var(--white);overflow:hidden}.products-hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:url("/static/img/products-hero-bg.jpg") center/cover no-repeat;z-index:-2}.products-hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(44,54,145,0.9) 0%,rgba(44,54,145,0.8) 50%,rgba(233,40,42,0.8) 100%);z-index:-1}body.dark-theme .products-hero-overlay{background:linear-gradient(135deg,rgba(17,24,71,0.95) 0%,rgba(44,54,145,0.85) 50%,rgba(103,30,51,0.85) 100%)}.products-hero-content{text-align:center;max-width:1000px;margin:0 auto}.hero-subtitle{display:inline-block;background:rgba(255,255,255,0.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);color:var(--white);padding:0.75rem 1.5rem;border-radius:2rem;font-weight:600;font-size:0.95rem;margin-bottom:1.5rem;text-transform:uppercase;letter-spacing:0.5px}.products-hero-content h1{font-size:4rem;font-weight:700;margin-bottom:1.5rem;text-shadow:0 4px 20px rgba(0,0,0,0.3);line-height:1.2}.products-hero-content p{font-size:1.3rem;opacity:0.95;margin-bottom:3rem;max-width:800px;margin-left:auto;margin-right:auto;line-height:1.6}.product-search-container{max-width:900px;margin:0 auto}.product-search-box{position:relative;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.product-search-box input{width:100%;padding:1.25rem 6rem 1.25rem 2rem;border:none;border-radius:3rem;font-size:1.1rem;background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);box-shadow:var(--shadow-elegant);transition:var(--transition-smooth);color:var(--gray-800)}.product-search-box input:focus{outline:none;background:var(--white);box-shadow:0 0 0 4px rgba(255,255,255,0.3),var(--shadow-hover);transform:translateY(-2px)}.product-search-box input::placeholder{color:var(--gray-500)}.product-search-box button{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:var(--gradient-red);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-smooth);color:var(--white);font-size:1.1rem;box-shadow:0 4px 15px rgba(233,40,42,0.3)}.product-search-box button:hover{transform:translateY(-50%) scale(1.05);box-shadow:0 6px 20px rgba(233,40,42,0.4)}.category-filter-pills{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center}.filter-pill{display:flex;align-items:center;gap:0.75rem;background:rgba(255,255,255,0.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);color:var(--white);padding:1rem 1.5rem;border-radius:2rem;font-size:0.95rem;font-weight:600;cursor:pointer;transition:var(--transition-smooth);text-transform:capitalize}.filter-pill:hover,.filter-pill.active{background:var(--white);color:var(--products-primary);transform:translateY(-3px);box-shadow:var(--shadow-elegant)}.filter-pill i{font-size:1rem}.filter-pill[data-filter="surgical"] i{color:#2c3691}.filter-pill[data-filter="gastro"] i{color:#3b82f6}.filter-pill[data-filter="specialized"] i{color:#e9282a}.filter-pill[data-filter="consumables"] i{color:#10b981}.product-category{padding:6rem 0;background:var(--white)}.product-category.specialized-section{background:var(--gray-50)}body.dark-theme .product-category{background:var(--dark-bg)}body.dark-theme .product-category.specialized-section{background:var(--dark-elevated)}.category-header{text-align:center;margin-bottom:4rem}.category-badge{display:inline-flex;align-items:center;gap:0.75rem;background:var(--gradient-blue);color:var(--white);padding:0.75rem 1.5rem;border-radius:2rem;font-weight:600;font-size:0.9rem;margin-bottom:1.5rem;box-shadow:0 4px 15px rgba(44,54,145,0.3);text-transform:uppercase;letter-spacing:0.5px}.category-badge.surgical{background:var(--gradient-blue);box-shadow:0 4px 15px rgba(44,54,145,0.3)}.category-badge.gastro{background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);box-shadow:0 4px 15px rgba(59,130,246,0.3)}.category-badge.specialized{background:var(--gradient-red);box-shadow:0 4px 15px rgba(233,40,42,0.3)}.category-badge.consumables,.category-badge.nutritional{background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 4px 15px rgba(16,185,129,0.3)}.category-header h2{font-size:3rem;font-weight:700;color:var(--gray-900);margin-bottom:1.5rem;line-height:1.2}body.dark-theme .category-header h2{color:var(--white)}.category-header p{font-size:1.2rem;color:var(--gray-600);max-width:800px;margin:0 auto;line-height:1.6}body.dark-theme .category-header p{color:var(--dark-text-secondary)}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem}.product-card{background:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-elegant);transition:var(--transition-smooth);border:1px solid var(--gray-100);display:flex;flex-direction:column;height:100%;opacity:0;transform:translateY(30px)}.product-card.reveal{opacity:1;transform:translateY(0);animation:slideInUp 0.6s cubic-bezier(0.4,0,0.2,1) forwards}body.dark-theme .product-card{background:var(--dark-surface);border-color:rgba(255,255,255,0.05)}.product-card:hover{transform:translateY(-12px);box-shadow:var(--shadow-hover)}.product-badge{position:absolute;top:1rem;right:1rem;background:var(--gradient-red);color:var(--white);padding:0.5rem 1rem;border-radius:1.5rem;font-size:0.8rem;font-weight:700;z-index:2;box-shadow:0 4px 12px rgba(233,40,42,0.3);text-transform:uppercase;letter-spacing:0.5px}.product-image-container{position:relative;height:280px;background:linear-gradient(135deg,var(--gray-50),#f1f5f9);display:flex;align-items:center;justify-content:center;padding:1.5rem;overflow:hidden}body.dark-theme .product-image-container{background:linear-gradient(135deg,rgba(255,255,255,0.05),rgba(255,255,255,0.08))}.product-image{max-width:90%;max-height:90%;width:auto;height:auto;object-fit:contain;transition:transform 0.5s cubic-bezier(0.4,0,0.2,1);filter:drop-shadow(0 4px 12px rgba(0,0,0,0.08))}.product-card:hover .product-image{transform:scale(1.05)}.product-details{padding:2.5rem;display:flex;flex-direction:column;flex-grow:1}.product-details h3{font-size:1.4rem;font-weight:700;color:var(--products-primary);margin-bottom:1rem;line-height:1.3}body.dark-theme .product-details h3{color:#7b9bd9}.product-price{display:none!important}.product-description{color:var(--gray-600);font-size:1rem;line-height:1.7;margin-bottom:2rem;flex-grow:1}body.dark-theme .product-description{color:var(--dark-text-secondary)}.product-actions{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:auto}.product-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.75rem;padding:1rem 1.5rem;border-radius:0.75rem;font-weight:600;font-size:0.95rem;transition:var(--transition-smooth);text-decoration:none;border:none;cursor:pointer;background:var(--gradient-red);color:var(--white);box-shadow:0 4px 15px rgba(233,40,42,0.3);width:100%}.product-action-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(233,40,42,0.4)}.product-action-btn.full-width{grid-column:1 / -1;width:100%}.no-results-container{padding:4rem 0}.no-results-card{background:var(--white);border-radius:var(--border-radius);padding:4rem 2rem;text-align:center;box-shadow:var(--shadow-elegant);border:1px solid var(--gray-100);max-width:600px;margin:0 auto}body.dark-theme .no-results-card{background:var(--dark-surface);border-color:rgba(255,255,255,0.05)}.no-results-icon{width:80px;height:80px;border-radius:50%;background:rgba(44,54,145,0.1);display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;font-size:2rem;color:var(--products-primary)}body.dark-theme .no-results-icon{background:rgba(123,155,217,0.1);color:#7b9bd9}.no-results-card h3{font-size:1.75rem;font-weight:700;color:var(--gray-900);margin-bottom:1rem}body.dark-theme .no-results-card h3{color:var(--white)}.no-results-card p{font-size:1.1rem;color:var(--gray-600);margin-bottom:2rem;line-height:1.6}body.dark-theme .no-results-card p{color:var(--dark-text-secondary)}.product-modal-overlay,#modal-container{display:none!important}.products-info-section{padding:6rem 0;background:var(--gray-50)}body.dark-theme .products-info-section{background:var(--dark-elevated)}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.section-header{margin-bottom:3rem}.section-subtitle{display:inline-block;background:rgba(44,54,145,0.1);color:var(--products-primary);padding:0.75rem 1.5rem;border-radius:2rem;font-weight:600;font-size:0.9rem;margin-bottom:1rem;text-transform:uppercase;letter-spacing:0.5px}body.dark-theme .section-subtitle{background:rgba(123,155,217,0.15);color:#7b9bd9}.section-header h2{font-size:2.5rem;font-weight:700;color:var(--gray-900);margin-bottom:1.5rem;line-height:1.2}body.dark-theme .section-header h2{color:var(--white)}.section-header p{font-size:1.1rem;color:var(--gray-600);line-height:1.6}body.dark-theme .section-header p{color:var(--dark-text-secondary)}.certification-cards{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.cert-card{display:flex;align-items:center;gap:1.5rem;background:var(--white);padding:1.5rem;border-radius:1rem;box-shadow:0 4px 20px rgba(0,0,0,0.06);border:1px solid var(--gray-100);transition:var(--transition-smooth)}body.dark-theme .cert-card{background:var(--dark-surface);border-color:rgba(255,255,255,0.05)}.cert-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,0.1)}.cert-icon{width:50px;height:50px;border-radius:50%;background:var(--gradient-blue);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:1.25rem;flex-shrink:0}.cert-content h4{font-size:1.1rem;font-weight:700;color:var(--gray-900);margin-bottom:0.5rem}body.dark-theme .cert-content h4{color:var(--white)}.cert-content p{font-size:0.95rem;color:var(--gray-600);margin:0}body.dark-theme .cert-content p{color:var(--dark-text-secondary)}.faq-section h3{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin-bottom:1.5rem}body.dark-theme .faq-section h3{color:var(--white)}.faq-container{background:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-elegant);border:1px solid var(--gray-100)}body.dark-theme .faq-container{background:var(--dark-surface);border-color:rgba(255,255,255,0.05)}.faq-item{border-bottom:1px solid var(--gray-100)}body.dark-theme .faq-item{border-color:rgba(255,255,255,0.05)}.faq-item:last-child{border-bottom:none}.faq-question{width:100%;text-align:left;background:none;border:none;padding:1.5rem;font-size:1rem;font-weight:600;color:var(--gray-900);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:var(--transition-smooth)}body.dark-theme .faq-question{color:var(--white)}.faq-question:hover{background:var(--gray-50)}body.dark-theme .faq-question:hover{background:var(--dark-elevated)}.faq-question i{color:var(--products-primary);transition:transform 0.3s ease}body.dark-theme .faq-question i{color:#7b9bd9}.faq-item.active .faq-question i{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s ease}.faq-item.active .faq-answer{max-height:200px}.faq-answer p{padding:0 1.5rem 1.5rem;margin:0;color:var(--gray-600);line-height:1.6}body.dark-theme .faq-answer p{color:var(--dark-text-secondary)}.product-cta-section{position:relative;padding:6rem 0;color:var(--white);overflow:hidden}.cta-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:url("/static/img/cta-bg.jpg") center/cover no-repeat;z-index:-2}.cta-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(44,54,145,0.95) 0%,rgba(44,54,145,0.85) 50%,rgba(233,40,42,0.85) 100%);z-index:-1}body.dark-theme .cta-overlay{background:linear-gradient(135deg,rgba(17,24,71,0.95) 0%,rgba(44,54,145,0.85) 50%,rgba(103,30,51,0.85) 100%)}.cta-content{max-width:900px;margin:0 auto;text-align:center}.cta-text h2{font-size:3rem;font-weight:700;margin-bottom:1.5rem;text-shadow:0 4px 20px rgba(0,0,0,0.3)}.cta-text p{font-size:1.3rem;opacity:0.95;margin-bottom:3rem;line-height:1.6}.cta-actions{display:flex;gap:1.5rem;justify-content:center}.btn{display:inline-flex;align-items:center;gap:0.75rem;padding:1.25rem 2.5rem;border-radius:0.75rem;font-weight:700;font-size:1.1rem;text-decoration:none;transition:var(--transition-smooth);position:relative;overflow:hidden;z-index:1;border:none;cursor:pointer;text-transform:uppercase;letter-spacing:0.5px}.btn::after{content:"";position:absolute;left:0;top:0;height:100%;width:0;z-index:-1;transition:width 0.4s cubic-bezier(0.4,0,0.2,1)}.btn:hover::after{width:100%}.btn-primary{background:var(--gradient-red);color:var(--white);box-shadow:0 6px 20px rgba(233,40,42,0.4)}.btn-primary::after{background:linear-gradient(135deg,#c81d1f 0%,#a01619 100%)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(233,40,42,0.5)}.btn-white{background:var(--white);color:var(--products-primary);box-shadow:0 6px 20px rgba(255,255,255,0.3)}.btn-white::after{background:var(--gray-100)}.btn-white:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(255,255,255,0.4)}@keyframes slideInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity 0.8s cubic-bezier(0.4,0,0.2,1),transform 0.8s cubic-bezier(0.4,0,0.2,1)}.animate-on-scroll.slide-up,.animate-on-scroll.fade-in{opacity:1;transform:translateY(0)}@media (max-width:1200px){.products-hero-content h1{font-size:3.5rem}.products-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.info-grid{gap:3rem}.cta-text h2{font-size:2.5rem}}@media (max-width:992px){.products-hero-content h1{font-size:3rem}.category-header h2{font-size:2.5rem}.info-grid{grid-template-columns:1fr;gap:3rem}.certification-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.cta-actions{flex-direction:column;align-items:center}.btn{width:100%;max-width:300px}}@media (max-width:768px){.products-hero{padding:6rem 0 4rem}.products-hero-content h1{font-size:2.5rem}.products-hero-content p{font-size:1.1rem}.category-filter-pills{flex-direction:column;gap:0.75rem}.filter-pill{width:100%;max-width:300px;justify-content:center}.products-grid{grid-template-columns:1fr;gap:1.5rem}.product-image-container{height:240px;padding:1rem}.certification-cards{grid-template-columns:1fr}.cert-card{flex-direction:column;text-align:center;gap:1rem}.product-actions{grid-template-columns:1fr;gap:0.75rem}.cta-text h2{font-size:2rem}.cta-text p{font-size:1.1rem}}@media (max-width:576px){.products-hero-content h1{font-size:2.2rem}.category-header h2{font-size:2rem}.section-header h2{font-size:2rem}.product-search-box input{padding:1rem 5rem 1rem 1.5rem}.product-search-box button{width:40px;height:40px;right:6px}.product-image-container{height:200px}.stat-card{flex-direction:column;text-align:center;gap:1rem}.stat-icon{width:50px;height:50px}.btn{padding:1rem 2rem;font-size:1rem}.product-details{padding:2rem 1.5rem}.product-details h3{font-size:1.25rem}}@media (prefers-reduced-motion:reduce){.animate-on-scroll{opacity:1;transform:none;transition:none}.product-card{animation:none;opacity:1;transform:none}.product-card:hover,.stat-card:hover,.cert-card:hover{transform:none}.btn:hover{transform:none}.product-action-btn:hover{transform:none}}.filter-pill:focus,.product-search-box input:focus,.product-search-box button:focus,.product-action-btn:focus,.faq-question:focus,.btn:focus{outline:3px solid var(--products-secondary);outline-offset:2px}body.dark-theme{color:var(--dark-text-primary)}body.dark-theme .product-action-btn{box-shadow:0 4px 15px rgba(233,40,42,0.2)}body.dark-theme .product-action-btn:hover{box-shadow:0 8px 25px rgba(233,40,42,0.3)}button{-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (max-width:768px){.filter-pill{font-size:0.9rem;padding:0.85rem 1.25rem}}.container{opacity:0;animation:fadeIn 0.6s ease-in-out forwards;animation-delay:0.2s}@keyframes fadeIn{from{opacity:0}to{opacity:1}}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media (hover:none){.product-search-box button:hover{transform:translateY(-50%);box-shadow:0 4px 15px rgba(233,40,42,0.3)}.filter-pill:hover{transform:none;box-shadow:none;background:rgba(255,255,255,0.15);color:var(--white)}.filter-pill.active{background:var(--white);color:var(--products-primary)}.product-card:hover{transform:none;box-shadow:var(--shadow-elegant)}.product-card:hover .product-image{transform:none}.product-action-btn:hover{transform:none;box-shadow:0 4px 15px rgba(233,40,42,0.3)}.btn:hover{transform:none}}.product-image-container img{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.no-results-container{display:none}.reset-search-btn{background:var(--gradient-blue);color:var(--white);box-shadow:0 4px 15px rgba(44,54,145,0.3)}.reset-search-btn:hover{box-shadow:0 8px 25px rgba(44,54,145,0.4)}.product-badge{transition:var(--transition-smooth)}.product-card:hover .product-badge{box-shadow:0 6px 20px rgba(233,40,42,0.4)}@media print{.products-hero,.product-search-container,.product-cta-section,.products-info-section{display:none!important}.product-category{page-break-inside:avoid;padding:2rem 0}.product-card{break-inside:avoid;box-shadow:none;border:1px solid #ddd}.product-image-container{height:200px}.product-badge{box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact}.product-action-btn{box-shadow:none;border:1px solid #ddd;print-color-adjust:exact;-webkit-print-color-adjust:exact}}