.products-grid {display:grid; gap:32px; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); align-items:stretch;}
.product-card {background:#fff; border:1px solid #e5e7eb; border-radius:16px; display:flex; flex-direction:column; overflow:hidden; position:relative; box-shadow:0 4px 12px rgba(0,0,0,0.05); transition:box-shadow .3s, transform .3s;}
.product-card:hover {box-shadow:0 10px 28px -4px rgba(0,0,0,0.15); transform:translateY(-4px);}
.product-media {position:relative; aspect-ratio:4/3; overflow:hidden; background:linear-gradient(145deg,#f0f9ff,#e0f2fe);}
.product-media img {width:100%; height:100%; object-fit:cover; display:block; transition:scale .5s;}
.product-card:hover .product-media img {scale:1.06;}
.badge {position:absolute; top:12px; left:12px; background:#0369a1; color:#fff; font-size:12px; padding:4px 10px; border-radius:20px; letter-spacing:.5px; text-transform:uppercase;}
.product-body {padding:16px; display:flex; flex-direction:column; gap:10px; flex:1;}
.product-title {margin:0; font-size:18px; font-weight:600; color:#0f172a;}
.product-desc {margin:0; font-size:14px; line-height:1.5; color:#475569; flex:1;}
.product-meta {display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto;}
.price {font-size:20px; font-weight:700; background:linear-gradient(90deg,#0ea5e9,#0369a1); -webkit-background-clip:text; background-clip:text; color:transparent;}
.btn-outline {background:#fff; color:#0369a1; border:1px solid #0369a1;}
.btn-outline:hover {background:#0369a1; color:#fff;}
@media (max-width:640px){.products-grid{gap:20px;} .product-card{border-radius:14px;} .product-title{font-size:16px;} .price{font-size:18px;}}
