/* Retail content center: scoped to retail views and editor. */
.retail-sale { background:#fff0ce; color:#764b00; border-radius:20px; padding:5px 10px; font-weight:700; font-size:13px; }
.retail-choose { min-height:44px; display:inline-flex; align-items:center; color:#0f3f67; font-weight:700; }
.retail-gallery { min-width:0; }
.retail-stage { aspect-ratio:1; border-radius:20px; overflow:hidden; background:#f3f7fa; }
.retail-stage img { width:100%; height:100%; object-fit:contain; }
.retail-stage iframe { width:100%; height:100%; border:0; }
.retail-stage [hidden] { display:none; }
.retail-thumbnails { display:flex; gap:10px; overflow-x:auto; padding:12px 3px; }
.retail-thumbnails button { flex:0 0 76px; min-height:76px; padding:3px; border:1px solid #c5d3de; border-radius:12px; background:#fff; color:#0f3f67; font:inherit; cursor:pointer; }
.retail-thumbnails button[aria-pressed=true] { border:2px solid #1f75bc; }
.retail-thumbnails img { width:68px; height:68px; object-fit:cover; border-radius:8px; }
.commerce-product-copy [data-retail-base] { display:block; color:#607086; margin:-8px 0 14px; }
.commerce-product-copy [data-retail-base][hidden] { display:none; }
.commerce-page #dat-hang { scroll-margin-top:100px; }
.retail-editor details { border:1px solid #d4e0e9; border-radius:14px; min-width:0; }
.retail-editor summary { padding:16px; min-height:48px; cursor:pointer; font-weight:800; color:#0f3f67; }
.retail-section { padding:0 16px 16px; display:grid; gap:16px; min-width:0; }
.retail-previews,.retail-media-grid { display:flex; flex-wrap:wrap; gap:16px; }
.retail-previews img,.retail-media-grid img { max-width:100%; object-fit:contain; border:1px solid #d4e0e9; border-radius:12px; }
.retail-media-grid > div { max-width:240px; display:grid; gap:10px; }
.retail-variant-row { margin:14px 0; }
.retail-editor input[type=file] { max-width:100%; font-size:14px; }
.retail-video-strip { padding:14px clamp(16px,5vw,72px); background:#f1f7fb; }
.retail-video-strip details { max-width:1080px; margin:auto; }
.retail-video-strip summary { display:flex; gap:16px; align-items:center; min-height:68px; cursor:pointer; color:#0f3f67; }
.retail-video-strip summary img { width:120px; height:68px; object-fit:cover; border-radius:12px; }
.retail-video-strip small { display:block; margin-top:6px; }
.retail-video-frame { aspect-ratio:16/9; margin-top:16px; }
.retail-video-frame iframe { width:100%; height:100%; border:0; border-radius:16px; }
.home-hero-media picture { display:block; width:100%; height:100%; border-radius:inherit; }
.home-premium .home-video-stage picture img { display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit; }
@media(max-width:600px) {
 .retail-video-strip summary { gap:10px; font-size:14px; }
 .retail-video-strip summary img { width:80px; height:56px; }
 .retail-video-strip small { font-size:12px; }
 .retail-section { padding:0 12px 12px; }
 .retail-gallery { width:100%; }
}
/* Homepage Media FIX1: keep the existing Hero height budget. */
.home-premium .hero.pro-hero { grid-template-columns:minmax(0,55fr) minmax(0,45fr); }
.home-premium .home-hero-media { padding-bottom:8px; }
.home-premium .hero-stage.home-video-stage { max-height:350px; overflow:hidden; box-shadow:0 8px 24px rgba(15,63,103,.09); }
.home-premium .retail-video-strip { padding-block:14px; }
.home-premium .retail-video-strip summary { min-height:76px; }
.home-premium .retail-video-frame { width:min(92vw,960px,924.444px); max-width:100%; max-height:520px; aspect-ratio:16/9; margin:16px auto 0; border-radius:24px; overflow:hidden; box-shadow:0 8px 24px rgba(15,63,103,.1); }
.home-premium .retail-video-frame iframe { display:block; width:100%; height:100%; border:0; border-radius:0; }
.retail-video-close { display:flex; margin:14px auto 0; min-height:44px; }
@media(max-width:980px) { .home-premium .hero.pro-hero { grid-template-columns:minmax(0,1fr); } }
@media(max-width:768px) {
 .home-premium .home-video-stage picture img { object-fit:contain; }
 .home-premium .hero-stage.home-video-stage { border-radius:20px; }
 .home-premium .retail-video-strip { padding-inline:16px; }
 .home-premium .retail-video-frame { width:100%; max-width:100%; max-height:none; border-radius:20px; }
}
