/* Cartes produit style "London Studios" — appliquées en dernier pour prendre le dessus */
:root{--card-bg:#15121f;--card-bg-2:#1e192f;--card-border:rgba(255,255,255,.08)}

.product-grid{grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:22px}

.product{
  background:linear-gradient(180deg,var(--card-bg-2),var(--card-bg));
  border:1px solid var(--card-border);
  border-radius:18px;
  overflow:hidden;
  min-height:0;
  box-shadow:0 14px 30px rgba(10,8,20,.35);
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
  display:flex;
  flex-direction:column;
  cursor:pointer;
}
.product:hover{
  transform:translateY(-6px);
  border-color:rgba(255,78,134,.5);
  box-shadow:0 22px 40px rgba(10,8,20,.5);
}

.product-art{
  position:relative;
  height:auto;
  aspect-ratio:16/11;
  padding:0;
  overflow:hidden;
  background:radial-gradient(circle at 30% 15%,rgba(255,255,255,.14),transparent 60%),var(--bg);
  transition:none;
}
.product-art:before,.product-art:after{display:none}
.product:hover .product-art{transform:none}
.product-art[data-cover="true"]{transition:background-size .35s ease}
.product:hover .product-art[data-cover="true"]{background-size:112%!important}

.badge{
  position:absolute;
  z-index:2;
  top:14px;left:14px;right:auto;
  background:rgba(0,0,0,.55);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  color:#fff;
  font:600 10px/1 var(--apple-font,Arial);
  text-transform:uppercase;
  letter-spacing:.4px;
  padding:6px 10px;
  border-radius:999px;
  box-shadow:none;
}
.new-badge{
  display:inline-flex;
  position:absolute;z-index:2;
  top:14px;right:14px;
  background:var(--pink);
  color:#fff;
  font:700 9px/1 var(--apple-font,Arial);
  text-transform:uppercase;
  letter-spacing:.4px;
  padding:6px 9px;
  border-radius:999px;
  box-shadow:0 4px 10px rgba(255,78,134,.4);
}

.product-info{
  margin:0!important;
  min-height:0;
  padding:16px 18px 18px;
  border-radius:0;
  background:transparent;
  text-align:left;
  display:flex;
  flex-direction:column;
  gap:10px;
  flex:1;
  transition:none;
}
.product-info>div{display:contents}
.product-info h3{
  font-family:var(--apple-font,Manrope,sans-serif);
  font-size:15px;
  font-weight:700;
  color:#fff;
  letter-spacing:0;
  line-height:1.3;
  margin:0;
}
.product-info>p{
  margin:0;
  color:#a49dba;
  font-size:12px;
  line-height:1.55;
  max-height:none;
  opacity:1;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.product-info>p span{display:none}

.product-footer{
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.product-footer b{
  font:700 15px 'DM Mono',monospace;
  color:#fff;
  padding:0;
  background:transparent;
  border-radius:0;
}
.view-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font:700 10px/1 var(--apple-font,Arial);
  text-transform:uppercase;
  letter-spacing:.4px;
  color:#fff;
  background:transparent;
  border:1px solid rgba(255,255,255,.25);
  padding:8px 13px;
  border-radius:999px;
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;
  white-space:nowrap;
}
.product:hover .view-btn{
  background:var(--pink);
  border-color:var(--pink);
  box-shadow:0 6px 14px rgba(255,78,134,.35);
}

@media(max-width:800px){
  .product-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .product-info{padding:13px 14px 14px}
  .badge{font-size:9px;padding:5px 8px}
}
