.catalog-hero{background:linear-gradient(135deg,var(--naranja-casther) 0%,#ff9a33 100%);padding:80px 48px;text-align:center;color:var(--blanco)}.catalog-hero h1{font-size:48px;font-weight:900;margin-bottom:16px;font-family:var(--font-primary);text-transform:uppercase}.catalog-hero p{font-size:20px;max-width:700px;margin:0 auto;line-height:1.6}.filters-section{background:var(--blanco);padding:32px 48px;border-bottom:2px solid var(--beige-casther);position:sticky;top:0;z-index:10;box-shadow:0 2px 8px #0000000d}.filters-container{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.filter-group-wrapper{display:flex;flex-direction:column;gap:12px}.swipe-hint{display:none;align-items:center;justify-content:center;gap:12px;color:var(--gris-medio);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.swipe-hint i{font-size:10px;color:var(--naranja-casther);animation:hint-bounce 1.5s infinite ease-in-out}.swipe-hint i:first-child{animation-delay:0s}.swipe-hint i:last-child{animation-delay:.75s}@keyframes hint-bounce{0%,to{transform:translate(0);opacity:.5}50%{transform:translate(4px);opacity:1}}.swipe-hint i:first-child{@keyframes hint-bounce-left{0%,to{transform:translate(0);opacity:.5}50%{transform:translate(-4px);opacity:1}}animation:hint-bounce-left 1.5s infinite ease-in-out}.filter-group{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.filter-btn{padding:12px 24px;border-radius:24px;border:2px solid var(--beige-casther);background:var(--blanco);color:var(--negro-casther);font-weight:600;font-size:14px;cursor:pointer;transition:all .3s;font-family:var(--font-primary)}.filter-btn:hover{border-color:var(--naranja-casther);color:var(--naranja-casther)}.filter-btn.active{background:var(--naranja-casther);border-color:var(--naranja-casther);color:var(--blanco)}.search-filter{display:flex;justify-content:center}.search-wrapper{position:relative;max-width:500px;width:100%}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--gris-medio);font-size:16px}.search-input{width:100%;padding:14px 16px 14px 48px;border-radius:24px;border:2px solid var(--beige-casther);font-size:14px;font-family:var(--font-secondary);transition:all .3s}.search-input:focus{outline:none;border-color:var(--naranja-casther);box-shadow:0 0 0 3px #ff82001a}.products-section{max-width:1400px;margin:0 auto;padding:48px}.category-block{margin-bottom:64px}.category-title{font-size:32px;font-weight:900;margin-bottom:32px;font-family:var(--font-primary);text-transform:uppercase;color:var(--negro-casther)}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:32px}.product-card{background:var(--blanco);border-radius:12px;overflow:hidden;transition:all .3s;border:1px solid #e0e0e0;display:flex;flex-direction:column;height:100%}.product-card:hover{transform:translateY(-8px);box-shadow:0 12px 24px #0000001f}.product-card:hover .product-detail-btn{color:var(--color-primary)!important}.product-card:hover .product-detail-btn .btn-fill{animation:btn-fill-enter 1s cubic-bezier(.3,1,.3,1) forwards!important}.product-card:hover .product-detail-btn{color:var(--naranja-casther)!important}.product-image{width:100%;height:clamp(160px,40vh,220px);background:transparent;display:flex;align-items:center;justify-content:center;font-size:clamp(12px,3vw,14px);color:var(--gris-medio)}.product-card-image{width:100%;height:100%;object-fit:contain;padding:clamp(8px,2vw,16px)}.product-content{padding:clamp(12px,3vw,20px);flex:1;display:flex;flex-direction:column}.product-category{font-size:clamp(11px,3vw,12px);color:var(--naranja-casther);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:clamp(6px,2vw,8px)}.product-name{font-size:clamp(16px,5vw,20px);font-weight:700;margin-bottom:clamp(8px,2.5vw,12px);font-family:var(--font-primary);line-height:1.2}.product-description{font-size:clamp(13px,3.5vw,14px);color:var(--gris-oscuro);line-height:1.6;margin-bottom:clamp(12px,3vw,16px);min-height:clamp(48px,12vh,60px)}.product-features{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.feature-tag{padding:clamp(3px,1vw,4px) clamp(6px,2vw,10px);background:var(--beige-casther);border-radius:12px;font-size:clamp(10px,2.5vw,11px);color:var(--gris-oscuro);font-weight:600}.product-actions{display:flex;gap:6px;margin-top:auto;align-items:stretch}.product-detail-btn{flex:1;min-width:0;padding:clamp(8px,2vw,10px) clamp(6px,2vw,12px);font-size:clamp(11px,3vw,13px);min-height:40px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-pdf-btn{flex-shrink:0;padding:clamp(8px,2vw,10px) clamp(8px,2.5vw,12px);font-size:clamp(11px,3vw,13px);min-height:40px}@media(max-width:480px){.product-actions{gap:4px}.product-detail-btn{font-size:11px;padding:8px 6px;min-height:38px}.product-pdf-btn{font-size:11px;padding:8px;min-height:38px}}.no-results{text-align:center;padding:80px 24px}.no-results i{color:var(--gris-medio);margin-bottom:24px}.no-results p{font-size:18px;color:var(--gris-oscuro);margin-bottom:24px}.reset-btn{padding:12px 32px;font-size:16px}.products-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:48px;text-align:center}.spinner{width:48px;height:48px;border:4px solid #f3f3f3;border-top:4px solid var(--naranja-casther);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.products-loading p{font-size:16px;color:var(--gris-medio)}.products-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:48px;text-align:center}.products-error i{font-size:48px;color:var(--naranja-casther);margin-bottom:16px}.products-error h2{font-size:24px;font-weight:700;margin-bottom:8px}.products-error p{color:var(--gris-medio)}@media(max-width:1024px){.catalog-hero{padding:60px 32px}.catalog-hero h1{font-size:40px}.filters-section{padding:24px 32px}.products-section{padding:32px}.products-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}}@media(max-width:768px){.catalog-hero{padding:48px 24px}.catalog-hero h1{font-size:32px}.catalog-hero p{font-size:16px}.filters-section{padding:20px 24px;position:static}.swipe-hint{display:flex}.filter-group{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.filter-group::-webkit-scrollbar{display:none}.filter-btn{white-space:nowrap;flex-shrink:0}.products-section{padding:24px}.category-title{font-size:24px;margin-bottom:24px}.products-grid{grid-template-columns:1fr;gap:20px}}
