.tf-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;font-family:Inter,Arial,sans-serif}
.tf-product-card{position:relative;display:flex;flex-direction:column;border:1px solid #ddd;background:#fff;color:#111;padding:16px 8px 4px;min-width:0;box-sizing:border-box}
.tf-product-card h3{font-size:13px;line-height:1.4;text-align:center;margin:12px 0;min-height:3em;text-transform:uppercase}
.tf-product-card a{color:inherit;text-decoration:none}
.tf-product-card__badge{position:absolute;top:0;left:0;background:#ddd;padding:2px 12px;font-size:11px;font-weight:700}
.tf-product-card__image{position:relative;display:block;aspect-ratio:4/3}
.tf-product-card__image img{position:absolute;inset:0;display:block;max-width:100%;width:100%;height:100%;object-fit:contain}
.tf-product-card__meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;padding:8px 0;margin-top:auto;overflow-wrap:anywhere}
.tf-product-card__meta del{color:#666;font-size:12px}
.tf-product-card .tf-product-card__view{display:block;background:#292929;color:white;text-align:center;padding:10px;min-height:44px;box-sizing:border-box;font-size:12px;font-weight:700}
.tf-product-card .tf-product-card__view--out-of-stock{background:#EFEFEF;color:#5C5C5C;border:1px solid #BBB;text-transform:uppercase;font-size:18px;font-weight:800;white-space:normal;overflow-wrap:anywhere}
.tf-product-card a:focus-visible{outline:2px solid #111;outline-offset:3px}
@media(max-width:1000px){.tf-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.tf-product-grid{grid-template-columns:1fr}}
/* Whole card opens the product (title link stretched over the card); the
   "Visualizza" button stays on top and keeps working. Gentle hover feedback. */
.tf-product-card h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.tf-product-card .tf-product-card__view{position:relative;z-index:2;transition:background-color .2s ease}
.tf-product-card{transition:border-color .2s ease,box-shadow .25s ease}
.tf-product-card:hover{border-color:#111;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.tf-product-card:hover h3 a{text-decoration:underline;text-underline-offset:3px}
.tf-product-card__image img{transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.tf-product-card:hover .tf-product-card__image img{transform:scale(1.04)}
.tf-product-card:hover .tf-product-card__view{background:#000}
.tf-product-card h3 a:focus-visible{outline:none}
.tf-product-card:has(h3 a:focus-visible){outline:2px solid #111;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.tf-product-card,.tf-product-card__image img,.tf-product-card .tf-product-card__view{transition:none}.tf-product-card:hover .tf-product-card__image img{transform:none}}
/* Same button voice as every other Tanfoglio CTA (Impact, uppercase). */
.tf-product-card .tf-product-card__view{font:400 16px/1.5 Impact,"Arial Narrow",sans-serif;letter-spacing:.04em;text-transform:uppercase}
