/* SERVIDIS + V25 | Catálogo editorial: filtros, carteles y fichas simétricas */
#catalogo{position:relative;isolation:isolate;padding-top:clamp(50px,5vw,82px);background:radial-gradient(ellipse 50% 22% at 100% 0%,rgba(74,35,128,.08),transparent 82%)}
#catalogo .catalog-heading .eyebrow{font-weight:900;color:#8becb3;letter-spacing:.15em}
#catalogo .section-head{gap:24px;margin-bottom:29px}
#catalogo .catalog-heading h2{font-size:clamp(1.95rem,3.25vw,3.35rem);letter-spacing:-.05em;line-height:1.1}
#catalogo .catalog-heading p{color:#9fa9c1;max-width:640px;line-height:1.55}
#catalogo .catalog-tools input,#catalogo .catalog-tools select{background:#14192b;border:1px solid rgba(164,160,218,.25);box-shadow:0 4px 16px rgba(0,0,0,.1);min-height:46px;border-radius:13px;color:#f9faff}
#catalogo .catalog-tools input:focus-visible,#catalogo .catalog-tools select:focus-visible{outline:2px solid #84ecb4;outline-offset:1px}
#catalogo .category-directory{padding:0!important;margin:0 0 27px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
#catalogo .category-directory-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px}
#catalogo .v25-category-heading{display:flex;align-items:center;gap:11px}
#catalogo .v25-section-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(137,239,187,.23);border-radius:13px;background:linear-gradient(155deg,rgba(104,255,166,.14),rgba(133,87,232,.09));color:#98ffc4;font-size:1.65rem;line-height:1;box-shadow:0 8px 25px rgba(36,217,121,.07)}
#catalogo .category-directory-head .v25-category-heading strong{display:block;font-size:1.35rem;font-weight:900;color:#f7f8ff;letter-spacing:-.035em;line-height:1.2}
#catalogo .category-directory-head .v25-category-heading small{display:block;color:#8794b0;font-size:.76rem;margin-top:3px}
#catalogo .category-directory-head .v19-product-count{border:1px solid rgba(134,236,180,.16);border-radius:999px;background:rgba(91,224,150,.05);color:#a7f2c8;padding:7px 12px;font-size:.77rem;font-weight:800;white-space:nowrap}
#catalogo .v25-chips-frame{position:relative;overflow:hidden;border:1px solid rgba(143,151,201,.24);border-radius:21px;background:linear-gradient(120deg,rgba(25,26,48,.88),rgba(13,21,34,.96) 55%,rgba(17,29,35,.85));box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 18px 38px rgba(0,0,0,.13);padding:13px 14px}
#catalogo .chips{margin:0!important;display:flex;flex-wrap:wrap;align-items:center;gap:10px;max-width:100%}
#catalogo .chips .chip{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;flex:0 0 auto;padding:10px 14px!important;border-radius:13px!important;border:1px solid rgba(144,143,199,.26)!important;background:linear-gradient(165deg,#20213d,#191c31)!important;color:#c7c6df!important;letter-spacing:.01em;font-size:.78rem;font-weight:850;line-height:1.1;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
#catalogo .chips .chip svg{flex:0 0 17px;width:17px;height:17px;color:#a7a5cf;stroke-width:1.85}
#catalogo .chips .chip:hover{background:#2a2947!important;color:#fff!important;border-color:rgba(177,152,248,.48)!important;transform:translateY(-1px)}
#catalogo .chips .chip.active{background:linear-gradient(130deg,#81f5b7,#9bffce)!important;color:#0c261a!important;border-color:#94f7be!important;box-shadow:0 7px 22px rgba(74,241,147,.22),inset 0 1px 0 rgba(255,255,255,.36)}
#catalogo .chips .chip.active svg{color:#0a2c1c}
#catalogo .chips .chip:focus-visible{outline:2px solid #94f7be;outline-offset:3px}
#catalogo .product-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px!important;align-items:stretch;grid-auto-rows:auto}
#catalogo .product-card{position:relative;display:flex;flex-direction:column;min-width:0;width:100%;max-width:none;margin:0;height:100%;background:linear-gradient(180deg,#161b2d 0%,#121725 100%)!important;border:1px solid rgba(147,152,205,.23)!important;border-radius:23px!important;overflow:hidden;box-shadow:0 14px 36px rgba(0,0,0,.16);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
#catalogo .product-card:hover,#catalogo .product-card:focus-within{transform:translateY(-4px);border-color:rgba(156,124,237,.6)!important;box-shadow:0 24px 56px rgba(0,0,0,.30),0 0 0 1px rgba(156,124,237,.06)}
#catalogo .product-card[hidden]{display:none!important}
#catalogo .product-media.v25-media{position:relative;aspect-ratio:16/10!important;height:auto!important;min-height:0!important;max-height:none;display:block;overflow:hidden;background:#12182a;border-bottom:1px solid rgba(158,156,200,.16);isolation:isolate}
#catalogo .v25-poster-frame{position:absolute;inset:0;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 50% 30%,#263154,#111628 70%)}
#catalogo .v25-poster-frame .v25-image-backdrop{position:absolute;inset:-25px;width:calc(100% + 50px);height:calc(100% + 50px);max-width:none;max-height:none;object-fit:cover;filter:blur(27px) brightness(.42) saturate(1.45);transform:scale(1.12);opacity:.86;z-index:0;pointer-events:none}
#catalogo .v25-poster-frame .v25-image-main{position:relative;display:block;z-index:1;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain!important;object-position:center!important;padding:10px 12px!important;filter:drop-shadow(0 10px 20px rgba(0,0,0,.25));background:transparent;transition:transform .3s ease}
#catalogo .product-card:hover .v25-poster-frame .v25-image-main{transform:scale(1.02)}
#catalogo .product-media .badge{top:12px;left:12px;background:#8c66eb;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:7px 11px;font-weight:900;letter-spacing:.03em;font-size:.68rem;z-index:4;box-shadow:0 5px 15px rgba(0,0,0,.22)}
#catalogo .product-media .stock-pill{position:absolute!important;top:auto!important;bottom:12px!important;left:12px!important;right:auto!important;z-index:5;display:flex;align-items:center;gap:7px;padding:7px 11px!important;font-size:.7rem;font-weight:850;color:#e0ffed!important;background:rgba(6,47,30,.90)!important;border:1px solid rgba(118,249,176,.45);box-shadow:0 4px 14px rgba(0,0,0,.24);border-radius:999px;backdrop-filter:blur(8px)}
#catalogo .product-media .stock-pill i{width:7px;height:7px;display:inline-block;background:#54f29a;box-shadow:0 0 11px rgba(82,242,154,.65);border-radius:50%;flex:0 0 7px}
#catalogo .product-media .stock-pill.out{background:rgba(62,18,33,.94)!important;color:#ffd0d8!important;border-color:rgba(255,146,176,.4)}
#catalogo .product-media .stock-pill.out i{background:#ff91a3;box-shadow:none}
#catalogo .v21-favorite{top:12px;right:12px;width:37px;height:37px;border-radius:12px;border:1px solid rgba(230,230,255,.32);background:rgba(12,17,32,.73);backdrop-filter:blur(10px);color:#fff;display:grid;place-items:center;z-index:6;box-shadow:0 5px 13px rgba(0,0,0,.18)}
#catalogo .v21-favorite:hover{border-color:#adffa8;background:rgba(15,35,32,.95)}
#catalogo .v25-placeholder{display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;width:100%;height:100%;padding:40px 30px 38px;background:radial-gradient(ellipse at 50% 25%,rgba(148,72,216,.28),transparent 65%),linear-gradient(135deg,#1e1d38,#111c31);color:#e2d5fa;overflow:hidden}
#catalogo .v25-placeholder svg{width:65px;height:65px;flex:0 0 auto;stroke:#caa4ff;opacity:.95;filter:drop-shadow(0 8px 16px rgba(148,72,216,.22))}
#catalogo .v25-placeholder .v25-placeholder-symbol{font-size:3.5rem;color:#b48ef7;line-height:1.1}
#catalogo .v25-placeholder strong{font-size:clamp(.96rem,1.3vw,1.28rem);line-height:1.25;max-width:220px;font-weight:900;overflow-wrap:anywhere;text-shadow:0 3px 16px rgba(0,0,0,.25)}
#catalogo .v25-placeholder small{font-size:.7rem;letter-spacing:.17em;color:#aab8d5;text-transform:uppercase}
#catalogo .product-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:19px 17px 17px!important;gap:0}
#catalogo .product-meta{font-size:.72rem;letter-spacing:.085em;font-weight:850;color:#aeb3cd;text-transform:uppercase;margin-bottom:8px;line-height:1.4}
#catalogo .product-body h3{font-weight:900;font-size:clamp(1rem,1.3vw,1.16rem);line-height:1.26;letter-spacing:-.025em;color:#f6f7ff;min-height:2.5em;margin:0 0 10px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
#catalogo .product-body .service-type{color:#c9bde8;font-size:.84rem;font-weight:750;min-height:22px;margin-bottom:9px}
#catalogo .product-body .description{color:#8f9ab3;font-size:.82rem;line-height:1.5;min-height:2.95em;margin-bottom:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#catalogo .product-body .v21-variants{margin:0 0 10px}
#catalogo .product-body .v21-variants select{background:#10182b;border-color:rgba(165,156,209,.3);min-height:39px}
#catalogo .product-footer{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:auto 0 0;padding:13px 0 11px;border-top:1px solid rgba(159,161,208,.14);min-height:77px}
#catalogo .product-footer .v19-price-group small{color:#98a3c1;font-size:.73rem}
#catalogo .product-footer .price{font-size:clamp(1.16rem,1.6vw,1.5rem);font-weight:950;white-space:nowrap;color:#fff;line-height:1.14}
#catalogo .qty-control{border-radius:11px;border:1px solid rgba(162,166,211,.24);background:#11182a;flex-shrink:0}
#catalogo .qty-control button{width:28px;min-width:28px;height:34px;background:transparent;color:#d2e2eb}
#catalogo .qty-control button:hover{background:#242943;color:#fff}
#catalogo .qty-input{width:29px;min-width:29px;font-weight:850;background:transparent;font-size:.85rem}
#catalogo .product-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin-top:4px}
#catalogo .product-actions .add-cart{border-radius:12px;min-height:46px;white-space:normal;padding:11px 12px;font-size:.81rem;font-weight:900;background:linear-gradient(120deg,#81efac,#a9ffd0);color:#0b2b1b;box-shadow:none}
#catalogo .product-actions .v21-details{color:#beb8f5;border:1px solid rgba(172,165,228,.22);border-radius:12px;background:rgba(124,106,194,.09);font-size:.76rem;min-height:46px;padding:10px 9px;text-decoration:none!important;white-space:nowrap}
#catalogo .product-actions .v21-details:hover{background:rgba(129,110,203,.18);color:#fff}
#catalogo .product-card :is(button,select):focus-visible{outline:2px solid #8cf4b6;outline-offset:3px}
@media(max-width:1240px){#catalogo .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:950px){#catalogo .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#catalogo .catalog-tools{width:100%}#catalogo .catalog-tools label{min-width:0;flex:1}}
@media(max-width:740px){#catalogo .category-directory-head .v25-category-heading strong{font-size:1.12rem}#catalogo .v25-chips-frame{padding:10px;border-radius:17px}#catalogo .chips{flex-wrap:nowrap;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity;max-width:100%;-webkit-overflow-scrolling:touch}#catalogo .chips::-webkit-scrollbar{display:none}#catalogo .chips .chip{scroll-snap-align:start;min-height:42px;padding:9px 13px!important;font-size:.75rem}}
@media(max-width:580px){#catalogo .section-head{gap:18px}#catalogo .product-grid{grid-template-columns:1fr;gap:17px!important;justify-items:stretch}#catalogo .product-card{width:100%;max-width:480px;margin:0 auto;border-radius:20px!important}#catalogo .product-media.v25-media{aspect-ratio:16/10!important}#catalogo .v25-poster-frame .v25-image-main{padding:7px!important}#catalogo .product-body{padding:17px!important}#catalogo .product-body h3{font-size:1.14rem;min-height:auto;line-height:1.28}#catalogo .catalog-tools{display:grid;grid-template-columns:1fr 138px;gap:9px}#catalogo .catalog-tools .search-box{grid-column:1/-1;grid-row:1}#catalogo .category-directory-head .v25-category-heading small{display:none}#catalogo .category-directory-head .v19-product-count{font-size:.68rem;padding:6px 9px}#catalogo .category-directory{margin-bottom:20px!important}}
@media(max-width:350px){#catalogo .product-actions .add-cart{padding:10px 7px;font-size:.75rem}#catalogo .product-actions .v21-details{padding:9px 7px;font-size:.71rem}#catalogo .product-footer .price{font-size:1.12rem}#catalogo .product-meta{font-size:.66rem}#catalogo .category-directory-head .v19-product-count{display:none}}
@media(prefers-reduced-motion:reduce){#catalogo .product-card,#catalogo .product-card:hover,#catalogo .v25-image-main,#catalogo .chips .chip{transition:none!important;transform:none!important}}
