/* Tecnogran – Ficha de producto */
/* ── PRODUCTO ─────────────────────────────────────────────────── */
.product-wrap{max-width:1200px;margin:0 auto;padding:40px 24px 64px}
.product-main{display:flex;gap:48px;align-items:flex-start;flex-wrap:wrap}
.product-gallery{flex-shrink:0;width:460px;max-width:100%}
.product-gallery__main{
  width:100%;height:380px;border-radius:12px;overflow:hidden;
  background:#fff;border:1px solid var(--bd)}
.product-gallery__main img{
  width:100%;height:100%;object-fit:contain;display:block}
.product-gallery__thumbs{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.product-gallery__thumb{
  width:80px;height:72px;border-radius:8px;overflow:hidden;
  border:2px solid var(--bd);cursor:pointer;transition:border-color .15s;
  background:var(--bg2);flex-shrink:0}
.product-gallery__thumb.active{border-color:var(--g)}
.product-gallery__thumb img{width:100%;height:100%;object-fit:contain}
.product-info{flex:1;min-width:280px}
.product-info__familia{font-size:.78rem;color:var(--fg3);font-weight:600;
  text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.product-info__title{font-size:1.65rem;font-weight:800;color:var(--fg);
  margin-bottom:6px;line-height:1.15}
.product-info__sku{font-size:.82rem;color:var(--fg3);margin-bottom:20px}
.product-info__sku span{color:var(--fg2);font-weight:600}
.product-info__price-block{background:var(--bg2);border:1px solid var(--bd);
  border-radius:12px;padding:20px 24px;margin-bottom:16px}
.product-info__price-label{font-size:.72rem;color:var(--fg3);text-transform:uppercase;
  letter-spacing:.07em;margin-bottom:4px;font-weight:600}
.product-info__price{font-size:2rem;font-weight:800;color:var(--fg);margin-bottom:2px}
.product-info__price-note{font-size:.73rem;color:var(--fg3)}
.fumigador-price{display:flex;align-items:center;gap:12px;background:#e8faf1;
  border:1px solid #b8e8cc;border-radius:10px;padding:14px 16px;margin-bottom:20px}
.product-info__qty-row{display:flex;gap:12px;align-items:center;margin-bottom:20px}
.qty-input{width:72px;height:48px;border:1px solid var(--bd);border-radius:8px;
  text-align:center;font-size:1rem;font-family:inherit;font-weight:700;color:var(--fg)}
.btn-add{flex:1;height:48px;background:var(--g);color:#fff;border:none;
  border-radius:8px;font-size:.95rem;font-weight:700;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:8px;
  transition:background .15s}
.btn-add:hover{background:var(--g-dk)}
.product-info__meta{font-size:.83rem;color:var(--fg3);line-height:1.9;
  border-top:1px solid var(--bd);padding-top:16px}
.product-info__meta span{color:var(--fg2);font-weight:600}
/* TABS */
.product-tabs{margin-top:48px}
.tabs-nav{display:flex;gap:0;border-bottom:2px solid var(--bd)}
.tab-btn{padding:12px 24px;font-size:.9rem;font-weight:600;color:var(--fg3);
  background:none;border:none;cursor:pointer;transition:color .15s;
  border-bottom:2px solid transparent;margin-bottom:-2px;font-family:inherit}
.tab-btn.active{color:var(--g-acc);border-bottom-color:var(--g)}
.tab-panel{display:none;padding:28px 0;font-size:.9rem;color:var(--fg2);line-height:1.7}
.tab-panel.active{display:block}
.tab-panel p{margin-bottom:10px}
.ficha-table{width:100%;border-collapse:collapse;font-size:.86rem}
.ficha-table tr{border-bottom:1px solid var(--bd)}
.ficha-table td{padding:10px 12px;color:var(--fg2)}
.ficha-table td:first-child{font-weight:600;color:var(--fg);width:45%;
  background:var(--bg2)}
.docs-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}
.docs-list a{display:flex;align-items:center;gap:10px;padding:12px 16px;
  border:1px solid var(--bd);border-radius:8px;color:var(--fg2);
  transition:border-color .15s,background .15s}
.docs-list a:hover{border-color:var(--g);background:var(--g-lt)}
@media(max-width:780px){
  .product-main{flex-direction:column}
  .product-gallery{width:100%}
}

/* PRODUCTOS RELACIONADOS */
.relacionados{padding:48px 24px 64px;background:var(--bg2)}
.relacionados__inner{max-width:1200px;margin:0 auto}
.rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:28px}
@media(max-width:900px){.rel-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.rel-grid{grid-template-columns:1fr}}
.rel-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--bd);
  border-radius:10px;overflow:hidden;color:inherit;text-decoration:none;
  transition:box-shadow .15s,transform .15s}
.rel-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.10);transform:translateY(-2px)}
.rel-card__img-wrap{background:#fff;height:160px;display:flex;align-items:center;
  justify-content:center;padding:12px;border-bottom:1px solid var(--bd)}
.rel-card__img{max-height:136px;max-width:100%;object-fit:contain;display:block}
.rel-card__body{padding:12px 14px 16px;flex:1;display:flex;flex-direction:column;gap:4px}
.rel-card__cat{font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--g)}
.rel-card__name{font-size:.82rem;font-weight:600;color:var(--fg);line-height:1.3}
.rel-card__price{font-size:.95rem;font-weight:700;color:var(--fg);margin-top:auto;padding-top:8px}


.product-info__qty-row form.cart,.product-info form.cart{display:flex;gap:12px;align-items:center;margin-bottom:20px}
.product-info form.cart .quantity{flex-shrink:0}
.product-info form.cart .qty{width:72px;height:48px;border:1px solid var(--bd);border-radius:8px;text-align:center;font-size:1rem;font-family:inherit;font-weight:700;color:var(--fg)}
.product-info form.cart .single_add_to_cart_button{flex:1;height:48px;background:var(--g);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:700;cursor:pointer;font-family:inherit;transition:background .15s}
.product-info form.cart .single_add_to_cart_button:hover{background:var(--g-dk)}
.product-info form.cart .single_add_to_cart_button.loading{opacity:.7}
.product-back{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:var(--g-acc);margin-bottom:16px;opacity:.85;transition:opacity .15s}
.product-back:hover{opacity:1}
.consulta-box{background:var(--bg2);border:1px solid var(--bd);border-radius:12px;padding:18px 20px;margin-bottom:20px;font-size:.88rem;color:var(--fg2)}
.section-title{font-size:1.4rem;font-weight:800;letter-spacing:-.02em;color:var(--fg)}
.product-wrap{padding-inline:max(24px,env(safe-area-inset-left,0px))}
.fumigador-price strong{font-size:1.6rem;font-weight:800;color:var(--fg);line-height:1.1}
.fumigador-price .fp-label{font-size:.7rem;color:var(--fg3);font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.fumigador-price .fp-note{font-size:.73rem;color:var(--fg3);margin-top:2px}
.fumigador-price .fp-tag{margin-left:auto;font-size:.7rem;background:var(--g);color:#fff;padding:3px 8px;border-radius:20px;font-weight:700}
.product-wrap .woocommerce-notices-wrapper{margin-bottom:16px}
.relacionados .rel-card__img{width:auto;height:auto}
