/* Tecnogran – Tienda (archivo de productos) */
.pg-head{background:#fff;border-bottom:1px solid var(--bd);padding:28px 0}
.pg-head h1{font-size:1.5rem;font-weight:800;color:var(--fg);margin:0;letter-spacing:-.01em}
.pg-head p{font-size:.82rem;color:var(--fg3);margin-top:2px}
.shop-layout{display:grid;grid-template-columns:220px 1fr;gap:32px;padding-block:32px 56px;align-items:start}
.shop-side{position:sticky;top:80px;display:flex;flex-direction:column;gap:20px}
.side-box{background:#fff;border:1px solid var(--bd);border-radius:10px;padding:16px}
.side-title{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fg3);margin:0 0 12px}
.cat-list{display:flex;flex-direction:column;gap:2px}
.cat-list a{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:7px;font-size:.82rem;font-weight:500;color:var(--fg2);transition:background .12s}
.cat-list a span{font-size:.7rem;opacity:.6}
.cat-list a:hover{background:var(--bg2)}
.cat-list a.on{background:var(--g);color:#fff;font-weight:700}
.price-form .row{display:flex;gap:8px;align-items:center}
.price-form input[type=number]{border:1px solid var(--bd);border-radius:6px;padding:7px 10px;font-size:.78rem;width:80px;font-family:inherit;outline:none;min-width:0;flex:1}
.price-form input:focus{border-color:var(--g)}
.price-form .sep{color:var(--fg3);font-size:.8rem}
.price-form button{margin-top:10px;width:100%;background:var(--g-lt);color:var(--g-acc);border:1px solid var(--bd);border-radius:6px;padding:8px;font-size:.78rem;font-weight:600;font-family:inherit;cursor:pointer}
.price-form button:hover{background:#d4f5e4}
.active-filters{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.active-filters .lbl-f{font-size:.75rem;color:var(--fg3)}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--g-lt);color:var(--g-acc);border:1px solid #b2dfc4;border-radius:20px;padding:4px 10px;font-size:.72rem;font-weight:600}
.chip a{opacity:.7;font-size:.9rem;line-height:1}
.chip a:hover{opacity:1}
.clear-f{font-size:.72rem;color:var(--fg3);margin-left:4px}
.clear-f:hover{color:var(--g-acc)}
ul.products,.shop-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.p-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--bd);border-radius:10px;overflow:hidden;position:relative;transition:box-shadow .15s,transform .15s;list-style:none}
.p-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.10);transform:translateY(-2px)}
.p-card__img{background:#fff;height:180px;display:flex;align-items:center;justify-content:center;padding:16px}
.p-card__img img{max-height:148px;max-width:140px;width:auto;height:auto;object-fit:contain}
.p-card__body{padding:14px 16px 16px;flex:1;display:flex;flex-direction:column;gap:6px}
.p-card__cat{font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--g)}
.p-card__name{font-size:.82rem;font-weight:600;color:var(--fg);line-height:1.3;margin:0}
.p-card__name a{color:inherit}
.p-card__name a::after{content:"";position:absolute;inset:0;z-index:1}
.p-card__ft{margin-top:auto;padding-top:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;position:relative;z-index:2}
.price-block{display:flex;flex-direction:column;gap:2px}
.tg-price{font-size:1rem;font-weight:700;color:var(--fg)}
.tg-price--fum{color:var(--g-acc)}
.tg-price small{font-size:.62rem;background:var(--g);color:#fff;padding:2px 6px;border-radius:10px;font-weight:700;margin-left:6px;vertical-align:middle}
.p-card .btn-card{background:var(--g);color:#fff;border:none;border-radius:6px;padding:6px 12px;font-size:.72rem;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;text-decoration:none;display:inline-block}
.p-card .btn-card:hover{background:var(--g-dk)}
.p-card .btn-card.loading{opacity:.6}
.p-card .btn-card.added{background:var(--g-acc)}
.p-card .added_to_cart{display:none}
.p-card .btn-card--ghost{background:var(--g-lt);color:var(--g-acc)}
.shop-empty{background:#fff;border:1px dashed var(--bd);border-radius:10px;padding:48px 24px;text-align:center;color:var(--fg2)}
/* paginación */
.woocommerce-pagination{margin-top:32px;display:flex;justify-content:center}
.woocommerce-pagination ul.page-numbers{list-style:none;display:flex;gap:6px;margin:0;padding:0;border:0}
.woocommerce-pagination ul.page-numbers li{border:0;margin:0;overflow:visible}
.woocommerce-pagination .page-numbers a,.woocommerce-pagination .page-numbers span{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 12px;border:1px solid var(--bd);background:#fff;border-radius:7px;font-size:.82rem;color:var(--fg2);line-height:1}
.woocommerce-pagination .page-numbers a:hover{border-color:var(--g);color:var(--g-acc);background:var(--g-lt)}
.woocommerce-pagination .page-numbers .current{background:var(--g);border-color:var(--g);color:#fff;font-weight:700}
@media(max-width:1000px){.shop-layout{grid-template-columns:1fr}.shop-side{position:static;display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:900px){ul.products,.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){ul.products,.shop-grid{grid-template-columns:1fr}.shop-side{grid-template-columns:1fr}}
