
/* STLBEAST V339 product page fix: gallery sizing, buy section, details polish */
.stlb335-product-hero{
  gap:28px;
}

.stlb335-gallery-panel{
  padding:22px;
}

.stlb335-main-render{
  min-height:clamp(360px, 62vw, 620px);
  padding:clamp(16px, 3vw, 28px);
  background:
    radial-gradient(circle at 50% 78%, rgba(34,211,238,.16), transparent 36%),
    linear-gradient(180deg, #07101b, #03070e);
}

.stlb335-main-render img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:600px;
  object-fit:contain;
}

.stlb335-angle-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.stlb335-angle-grid figure{
  min-height:172px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 50% 72%, rgba(34,211,238,.12), transparent 44%),
    linear-gradient(180deg,#07111b,#050913);
}

.stlb335-angle-grid img{
  width:100%;
  height:150px;
  padding:10px 12px 18px;
  object-fit:contain;
  object-position:center;
}

.stlb335-angle-grid figcaption{
  bottom:10px;
  left:10px;
}

.stlb335-buy-panel{
  border-color:rgba(125,211,252,.20);
  background:
    radial-gradient(circle at top right,rgba(56,189,248,.20),transparent 34%),
    linear-gradient(180deg,#0b1730,#040912 78%);
}

.stlb335-price-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:end;
  margin:18px 0;
}

.stlb335-price-row strong{
  display:block;
  line-height:1;
}

.stlb335-price-row small{
  display:block;
  margin-top:8px;
  color:#96abc4;
  font-size:.84rem;
  font-weight:800;
  letter-spacing:.01em;
}

.stlb335-price-row > span{
  align-self:center;
  white-space:normal;
  text-align:right;
}

.stlb335-actions{
  display:grid !important;
  grid-template-columns:1fr;
  gap:12px !important;
  margin-top:18px !important;
}

.stlb335-actions .btn{
  width:100%;
  min-height:58px;
  padding:0 20px;
  border-radius:17px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1.1;
}

.stlb336-buy-btn{
  font-size:1.04rem;
  font-weight:950;
  box-shadow:0 14px 32px rgba(14,165,233,.30);
}

.stlb336-member-btn{
  font-size:.96rem;
  font-weight:900;
}

.stlb339-buy-points{
  list-style:none;
  display:grid;
  gap:9px;
  margin:14px 0 16px;
  padding:0;
}

.stlb339-buy-points li{
  position:relative;
  display:flex;
  align-items:center;
  min-height:44px;
  padding:0 14px 0 38px;
  border-radius:14px;
  background:rgba(10,23,41,.82);
  border:1px solid rgba(125,211,252,.18);
  color:#d5f5ff;
  font-size:.9rem;
  font-weight:850;
}

.stlb339-buy-points li:before{
  content:"";
  position:absolute;
  left:15px;
  width:9px;
  height:9px;
  border-radius:999px;
  background:linear-gradient(135deg,#67e8f9,#3b82f6);
  box-shadow:0 0 14px rgba(103,232,249,.65);
}

.stlb335-trust-strip{
  margin-top:14px;
}

.stlb335-detail-card .specs div span{
  word-break:normal;
  overflow-wrap:break-word;
}

@media(max-width:960px){
  .stlb335-main-render{
    min-height:390px;
  }
  .stlb335-price-row{
    grid-template-columns:1fr;
  }
  .stlb335-price-row > span{
    text-align:left;
  }
}

@media(max-width:640px){
  .stlb335-gallery-panel{
    padding:14px;
  }
  .stlb335-main-render{
    min-height:300px;
  }
  .stlb335-angle-grid{
    grid-template-columns:1fr;
  }
  .stlb335-angle-grid figure{
    min-height:190px;
  }
  .stlb335-angle-grid img{
    height:170px;
  }
}
