/* =========================================================
   BẾP SINH — product-detail.css
   ========================================================= */

.pd-layout{display:grid; grid-template-columns:1fr 1fr; gap:56px; padding:44px 0 20px;}

/* Gallery */
.pd-gallery .main-image{
  aspect-ratio:1/1; border:1px solid var(--bs-gray-200); border-radius:4px; overflow:hidden;
  background:var(--bs-gray-50); position:relative; margin-bottom:14px; cursor:zoom-in;
}
.pd-gallery .main-image img{width:100%; height:100%; object-fit:cover; transition:transform .3s;}
.pd-gallery .thumbs{display:flex; gap:10px;}
.pd-gallery .thumbs button{
  width:76px; height:76px; border:2px solid var(--bs-gray-200); border-radius:3px; overflow:hidden; background:none; padding:0;
}
.pd-gallery .thumbs button.active{border-color:var(--bs-green-700);}
.pd-gallery .thumbs img{width:100%; height:100%; object-fit:cover;}

/* Info */
.pd-info .cat-link{font-size:12.5px; color:var(--bs-green-700); font-weight:700; text-transform:uppercase; letter-spacing:.04em;}
.pd-info h1{font-size:clamp(22px,2.6vw,30px); margin:10px 0 12px;}
.pd-info .rating{display:flex; align-items:center; gap:8px; font-size:13px; color:var(--bs-gray-600); margin-bottom:18px;}
.pd-info .rating .stars{color:#E0A32E; letter-spacing:2px;}
.pd-info .desc{color:var(--bs-ink-soft); font-size:14.5px; margin-bottom:22px; padding-bottom:22px; border-bottom:1px solid var(--bs-gray-200);}
.pd-info .price-block{display:flex; align-items:baseline; gap:12px; margin-bottom:22px;}
.pd-info .price-block .now{font-family:var(--font-display); font-size:30px; font-weight:800; color:var(--bs-green-700);}
.pd-info .price-block .old{font-size:16px; color:var(--bs-gray-400); text-decoration:line-through;}
.pd-info .price-block .save{background:#FCEBEA; color:#C0392B; font-size:12px; font-weight:700; padding:3px 8px; border-radius:3px;}

.pd-tech-list{margin-bottom:24px;}
.pd-tech-list li{
  display:flex; gap:10px; align-items:flex-start; font-size:13.5px; color:var(--bs-ink-soft); padding:6px 0;
}
.pd-tech-list li svg{width:16px; height:16px; color:var(--bs-green-700); flex-shrink:0; margin-top:2px;}

.pd-cta-row{display:flex; gap:12px; margin-bottom:26px;}
.pd-cta-row .btn{flex:1;}

.pd-meta-table{width:100%; font-size:13px; border-top:1px solid var(--bs-gray-200);}
.pd-meta-table tr{border-bottom:1px solid var(--bs-gray-200);}
.pd-meta-table td{padding:9px 0; color:var(--bs-ink-soft);}
.pd-meta-table td:first-child{width:130px; color:var(--bs-ink); font-weight:600;}

/* Technology section */
.pd-tech-section{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;}
.pd-tech-section .media{aspect-ratio:4/3; border-radius:4px; overflow:hidden;}
.pd-tech-section .media img{width:100%; height:100%; object-fit:cover;}
.pd-tech-section p{color:var(--bs-ink-soft); margin:16px 0;}

/* Key feature icon grid */
.feature-icon-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
.feature-icon-card{text-align:center; padding:28px 18px; border:1px solid var(--bs-gray-200); border-radius:4px;}
.feature-icon-card .ic{
  width:56px; height:56px; margin:0 auto 16px; border-radius:50%;
  background:var(--bs-green-100); color:var(--bs-green-700); display:flex; align-items:center; justify-content:center;
}
.feature-icon-card h4{font-size:14.5px; margin-bottom:8px;}
.feature-icon-card p{font-size:12.5px; color:var(--bs-ink-soft);}

/* Specifications table */
.spec-table{width:100%; border-collapse:collapse; font-size:14px;}
.spec-table tr{border-bottom:1px solid var(--bs-gray-200);}
.spec-table tr:nth-child(odd){background:var(--bs-off-white);}
.spec-table td{padding:14px 20px; color:var(--bs-ink-soft);}
.spec-table td:first-child{width:260px; font-weight:600; color:var(--bs-ink);}

/* Lifestyle full image */
.pd-lifestyle{position:relative; min-height:420px; border-radius:4px; overflow:hidden;}
.pd-lifestyle img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}

/* Related products carousel (static row w/ scroll) */
.related-scroll{display:flex; gap:20px; overflow-x:auto; padding-bottom:12px; scroll-snap-type:x mandatory;}
.related-scroll .product-card{min-width:260px; scroll-snap-align:start;}
