body#template-product {
  background-color: var(--body-background);
}
/* ========================================================
   CSS LAYOUT 2 CỘT ẢNH (THUMB TRÁI - ẢNH LỚN PHẢI)
======================================================== */
.product-images-inner-wrap {
  display: flex;
  flex-direction: column; /* Mobile mặc định xếp dọc */
  gap: 10px;
}

.product-thumbnails-side-column {
  order: 2; /* Mobile: Nằm dưới */
  width: 100%;
}

.product-main-image-column {
  order: 1; /* Mobile: Nằm trên */
  width: 100%;
  min-width: 0; 
}

@media (min-width: 992px) {
  .product-images-inner-wrap {
    flex-direction: row; /* Desktop: Nằm ngang */
    align-items: flex-start; /* Fix lỗi sập khung flex */
  }
  
  .product-thumbnails-side-column {
    order: 1; /* Desktop: Thumb nằm bên trái */
    flex: 0 0 90px; /* Độ rộng cột Thumbnails */
    width: 90px;
    max-width: 90px;
    min-width: 90px; /* ÉP CỨNG ĐỂ SLICK KHÔNG ĐO SAI 36PX */
  }
  
  .product-main-image-column {
    order: 2; /* Desktop: Ảnh lớn nằm bên phải */
    flex: 1;
    min-width: 0;
    width: calc(100% - 105px); /* Bảo vệ không gian, không cho lấn sang trái */
  }

  /* KHẮC PHỤC LỖI CLASS EMBED-RESPONSIVE CỦA BOOTSTRAP */
  .large-image .embed-responsive,
  .large-image .embed-responsive-1by1 {
    padding-bottom: 0 !important; /* Triệt tiêu tỷ lệ 1:1 mặc định */
    height: 490px !important; /* Ép cứng chiều cao */
  }

  /* ÉP CHIỀU CAO CHO CẢ KHỐI THUMBNAIL */
  #gallery_02.slick-slider,
  #gallery_02:not(.slick-slider),
  #gallery_02 .slick-list {
    height: 500px !important; 
  }
  
  /* CHỐNG LẠI JAVASCRIPT: Fix lỗi slick-track bị set 36px */
  #gallery_02 .slick-track {
    width: 100% !important;
  }
}

/* ===== ẢNH LỚN: Box & Border ===== */
.large-image .item > a {
  display: block;
  background: #fff;
  border: 2px solid #e5e7eb;
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  position: relative;
}

.large-image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: contain;
  width: 100%; /* Lấp đầy khung ngang */
  height: 100%; /* Lấp đầy khung dọc */
  border: 0 !important;
  padding: 10px;
}

@media (min-width: 768px) {
  .large-image .item > a {
    height: 100%;
  }
}

@media (max-width: 991px) {
  .product-thumbnails-side-column {
    display: none !important;
  }
  .product-detail-left {
    padding-bottom: 0 !important;
  }
}

/* ===== Slick arrows chính ===== */
#gallery_1 .slick-arrow {
  background: #fff;
  border: none;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
  display: none !important; /* Ẩn đi để layout sạch */
}

/* ====== Thumbnail: DESKTOP (Nằm dọc) ====== */
@media (min-width: 992px) {
  #gallery_02 .item.slick-slide {
    width: 100% !important; /* Phải 100% của 90px */
    height: 90px !important; /* Vuông vức */
    margin: 0 0 10px 0 !important; /* Chỉ đẩy Margin bên dưới */
    border-radius: 10px;
    overflow: hidden;
    border: 2px solid #e5e7eb;
    background: #fff;
    position: relative;
    cursor: pointer;
    display: block !important;
  }
  #gallery_02 .item.slick-slide img {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  #gallery_02 .item.slick-current.slick-active {
    border-color: #ed3237;
    box-shadow: 0 0 0 2px rgba(237, 50, 55, 0.15);
  }
}

/* ====== Thumbnail: TABLET & MOBILE (Nằm ngang) ====== */
@media (max-width: 991.98px) {
  #gallery_02 .item.slick-slide {
    width: 80px !important;
    height: 80px !important;
    margin: 0 8px 0 0 !important; /* Đẩy margin bên phải */
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid #e5e7eb;
    background: #fff;
    position: relative;
  }
  #gallery_02 .item.slick-slide img {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 4px;
  }
  #gallery_02 .item.slick-current.slick-active {
    border-color: #ed3237;
  }
  #gallery_02 .slick-list {
    overflow: hidden;
  }
}

/* ====== Fallback khi CHƯA slick init ====== */
#gallery_02:not(.slick-slider) {
  display: flex;
  overflow: hidden;
  gap: 12px;
}
@media (min-width: 992px) {
  #gallery_02:not(.slick-slider) {
    flex-direction: column; /* Dọc trên Desktop */
    align-items: center;
  }
  #gallery_02:not(.slick-slider) .item {
    width: 90px; height: 90px; flex: 0 0 90px;
  }
}
@media (max-width: 991.98px) {
  #gallery_02:not(.slick-slider) {
    flex-direction: row; /* Ngang trên Mobile */
    overflow-x: auto;
  }
  #gallery_02:not(.slick-slider) .item {
    width: 80px; height: 80px; flex: 0 0 80px;
  }
}
#gallery_02:not(.slick-slider) .item {
  border: 2px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
  position: relative;
}
#gallery_02:not(.slick-slider) .item img {
  position: absolute; inset: 0; margin: auto;
  width: 100%; height: 100%; object-fit: contain; padding: 6px;
}
#gallery_02:not(.slick-slider) .icon-button-play { display: none; }

#gallery_1:not(.slick-slider) {
  display: flex; align-items: center; overflow: hidden; padding-bottom: 10px;
}
#gallery_1:not(.slick-slider) .item {
  width: 100%; flex: 0 0 100%; text-align: center;
}
#gallery_1:not(.slick-slider) img.lazyload:not(.loaded) { display: none; }

/* ===== SINGLE IMAGE FRAME - luôn có border & chiều cao ===== */
a.product-single-image-frame {
  display: block !important;
  background: #fff;
  border: 2px solid #e5e7eb !important;
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  position: relative;
  min-height: 400px;
}

a.product-single-image-frame img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: contain;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  border: 0 !important;
  padding: 10px;
}

@media (min-width: 768px) {
  a.product-single-image-frame {
    min-height: 510px;
  }
}

/* Ẩn modal trên mobile và tablet */
@media (max-width: 991.98px) {
  #product-gallery-modal {
    display: none !important;
  }
}

@media (min-width: 992px) { .gallery-modal { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; background: rgba(10,16,30,.72); backdrop-filter: blur(6px); opacity: 0; visibility: hidden; transition: opacity .28s ease, visibility .28s ease; }
.gallery-modal[style*="flex"] { opacity: 1; visibility: visible; }
.gallery-modal-content, .gallery-modal-content.gallery-modal-content--new { position: relative; width: min(1120px,78vw); max-width: 1120px; min-width: 860px; height: min(86vh,820px); min-height: 680px; padding: 18px; border-radius: 24px; background: linear-gradient(180deg,#ffffff 0%,#fffaf7 100%); box-shadow: 0 24px 70px rgba(15,23,42,.28); display: flex; flex-direction: column; overflow: hidden; scrollbar-width: none; -ms-overflow-style: none; }
.gallery-modal-content::-webkit-scrollbar, .gallery-modal-content.gallery-modal-content--new::-webkit-scrollbar { display: none; width: 0; height: 0; }
.gallery-close { position: absolute; top: 18px; right: 18px; width: 38px; height: 38px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 24px; line-height: 1; color: #6b7280; background: #ffffff; box-shadow: 0 8px 18px rgba(15,23,42,.10); cursor: pointer; z-index: 40; transition: transform .18s ease, background .18s ease, color .18s ease; }
.gallery-close:hover { color: #dc2626; background: #fff1f2; transform: rotate(90deg); }
.gallery-modal-header { flex-shrink: 0; margin-bottom: 12px; padding-right: 54px; }
.gallery-modal-header__top { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
.gallery-modal-header__titlewrap { min-width: 0; }
.gallery-modal-header__eyebrow { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #94a3b8; margin-bottom: 6px; }
.gallery-modal-header__title { margin: 0; font-size: 24px; line-height: 1.2; font-weight: 800; color: #1e293b; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gallery-tab-nav { display: flex; align-items: center; justify-content: space-between; min-height: 54px; margin-bottom: 12px; gap: 16px; }
.gallery-tab-buttons { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.gallery-tab-btn { height: 44px; padding: 0 18px; border: 1px solid #e7eaf0; border-radius: 12px; background: #f8fafc; color: #334155; font-size: 15px; font-weight: 700; cursor: pointer; transition: all .2s ease; white-space: nowrap; }
.gallery-tab-btn:hover { background: #fff1eb; border-color: #ffd2bf; color: #ef4444; }
.gallery-tab-btn.active { background: linear-gradient(135deg,#ff6a3d 0%,#ff3d54 100%); border-color: transparent; color: #fff; box-shadow: 0 10px 24px rgba(255,87,87,.28); }
.gallery-image-toolbar { display: flex; align-items: center; gap: 10px; margin-left: auto; transition: opacity .2s ease, visibility .2s ease; }
.toolbar-left { display: flex; align-items: center; margin-right: 0; }
.toolbar-center { display: flex; align-items: center; gap: 6px; padding: 6px; border-radius: 14px; background: #fff5ef; border: 1px solid #ffe0d0; margin: 0; }
.toolbar-right { display: flex; align-items: center; gap: 6px; padding: 6px; border-radius: 14px; background: #f8fafc; border: 1px solid #e8edf3; margin-left: 0; }
.image-counter { display: inline-flex; align-items: center; justify-content: center; min-width: 64px; height: 36px; padding: 0 12px; border-radius: 999px; background: #111827; color: #fff; font-size: 13px; font-weight: 800; letter-spacing: .02em; box-shadow: 0 8px 16px rgba(17,24,39,.18); white-space: nowrap; }
.toolbar-btn { width: 36px; height: 36px; border: 1px solid #dde5ee; border-radius: 10px; background: #fff; color: #475569; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 13px; transition: all .18s ease; box-shadow: 0 3px 10px rgba(15,23,42,.05); user-select: none; flex-shrink: 0; }
.toolbar-btn:hover { transform: translateY(-1px); border-color: #cbd5e1; color: #0f172a; background: #f8fafc; box-shadow: 0 6px 14px rgba(15,23,42,.10); }
.toolbar-btn:active { transform: translateY(0) scale(.98); }
.toolbar-btn-primary { width: 40px; height: 40px; border: none; border-radius: 12px; background: linear-gradient(135deg,#ff6a3d 0%,#ff3d54 100%); color: #fff; font-size: 14px; box-shadow: 0 10px 20px rgba(255,87,87,.28); }
.toolbar-btn-primary:hover { background: linear-gradient(135deg,#ff5b2c 0%,#ff3048 100%); color: #fff; transform: translateY(-1px) scale(1.02); box-shadow: 0 12px 22px rgba(255,87,87,.34); }
.gallery-tab-content { display: none; width: 100%; flex: 1 1 auto; min-height: 0; }
.gallery-tab-content.active { display: flex; flex-direction: column; min-height: 0; }
#gallery-tab-images { overflow: hidden !important; }
#gallery-tab-description, #gallery-tab-specs { overflow: hidden !important; }
.gallery-images-layout { display: grid; grid-template-columns: 84px minmax(0,1fr); gap: 14px; height: 100%; min-height: 0; }
.gallery-thumbs-column { height: 100%; min-height: 0; background: linear-gradient(180deg,#fff 0%,#f8fafc 100%); border: 1px solid #eef2f7; border-radius: 20px; padding: 10px 6px; overflow: hidden; }
.gallery-thumbs { display: flex; flex-direction: column; gap: 10px; height: 100%; min-height: 0; overflow-y: auto; overflow-x: hidden; padding-right: 0; scrollbar-width: none; -ms-overflow-style: none; }
.gallery-thumbs::-webkit-scrollbar { display: none; width: 0; height: 0; }
.gallery-thumb { width: 64px; height: 64px; flex: 0 0 64px; padding: 4px; border-radius: 14px; border: 1px solid #e6ebf2; background: #fff; object-fit: contain; cursor: pointer; transition: all .2s ease; box-shadow: 0 4px 12px rgba(15,23,42,.04); }
.gallery-thumb:hover { border-color: #ffb79f; transform: translateY(-2px); box-shadow: 0 10px 24px rgba(255,106,61,.14); }
.gallery-thumb.active { border-color: #ff5a3c; background: linear-gradient(180deg,#fff7f3 0%,#fff 100%); box-shadow: 0 0 0 3px rgba(255,90,60,.18), 0 10px 22px rgba(255,106,61,.16); transform: translateY(-1px); }
.gallery-main-column { min-width: 0; min-height: 0; }
.gallery-large-image { position: relative; height: 100%; min-height: 0; border-radius: 20px; background: linear-gradient(180deg,#ffffff 0%,#f8fafc 100%); border: 1px solid #edf2f7; box-shadow: inset 0 1px 0 rgba(255,255,255,.7); display: flex; align-items: center; justify-content: center; overflow: hidden; text-align: center; margin-bottom: 0; width: 100%; }
.gallery-large-image::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at top,rgba(255,106,61,.08),transparent 38%); pointer-events: none; }
.gallery-large-image img { position: relative; z-index: 2; display: block; max-width: calc(100% - 52px); max-height: calc(100% - 52px); width: auto; height: auto; object-fit: contain; border-radius: 16px; background: transparent; box-shadow: none; }
.gallery-nav-btn { position: absolute; top: 50%; transform: translateY(-50%); width: 50px; height: 50px; border: none; border-radius: 50%; background: rgba(255,255,255,.96); color: #475569; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 17px; box-shadow: 0 10px 24px rgba(15,23,42,.12); z-index: 10; transition: all .18s ease; opacity: 1; }
.gallery-nav-btn:hover { background: #fff; color: #ef4444; transform: translateY(-50%) scale(1.04); box-shadow: 0 12px 26px rgba(15,23,42,.16); }
.gallery-nav-btn:active { transform: translateY(-50%) scale(.98); }
.gallery-nav-prev { left: 18px; }
.gallery-nav-next { right: 18px; }
.gallery-nav-btn.hidden { display: none !important; }
.gallery-nav-btn:disabled { opacity: .35; cursor: not-allowed; transform: translateY(-50%); background: rgba(200,200,200,.5); }
.gallery-nav-btn:disabled:hover { transform: translateY(-50%); background: rgba(200,200,200,.5); box-shadow: 0 10px 24px rgba(15,23,42,.12); color: #475569; }
.gallery-description-content, .gallery-specs-content { height: 100%; min-height: 0; overflow-y: auto; padding: 4px 2px; scrollbar-width: none; -ms-overflow-style: none; }
.gallery-description-content::-webkit-scrollbar, .gallery-specs-content::-webkit-scrollbar { display: none; width: 0; height: 0; }
.modal-description-content, .gallery-specs-content .product-specifications-modal, .gallery-specs-content .fallback-specs { background: #fff; border: 1px solid #eef2f7; border-radius: 20px; padding: 22px 24px; box-shadow: 0 10px 24px rgba(15,23,42,.05); width: 100%; height: auto; }
.custom-modal-heading-bar, .gallery-specs-content .title_module_main { margin-bottom: 16px; padding-bottom: 12px; border-bottom: 2px solid #ffe4d8; flex-shrink: 0; }
.custom-modal-heading-bar { position: relative; margin-bottom: 16px; padding-bottom: 14px; border-bottom: 2px solid #ffe4d8; }
.custom-modal-heading-bar__title { position: relative; display: inline-block; margin: 0; padding-bottom: 14px; font-size: 20px; font-weight: 800; line-height: 1.25; color: #1e293b; text-transform: uppercase; }
.custom-modal-heading-bar__title::after { content: ""; position: absolute; left: 0; bottom: -2px; width: 86px; height: 5px; border-radius: 999px; background: linear-gradient(90deg, #ff3d54 0%, #ff6a3d 100%); }
.modal-product-getcontent, .modal-content-description, .gallery-specs-content .product_getcontent { font-size: 15px; line-height: 1.8; color: #475569; }
.modal-content-description h1, .modal-content-description h2, .modal-content-description h3, .modal-content-description h4, .gallery-specs-content h1, .gallery-specs-content h2, .gallery-specs-content h3, .gallery-specs-content h4 { color: #1e293b; margin-top: 18px; margin-bottom: 10px; }
.modal-content-description p, .gallery-specs-content p { margin-bottom: 12px; }
.modal-content-description ul, .modal-content-description ol, .gallery-specs-content ul, .gallery-specs-content ol { margin-left: 20px; margin-bottom: 12px; }
.modal-content-description img, .gallery-specs-content img { max-width: 100%; height: auto; border-radius: 8px; margin: 8px 0; }
.gallery-specs-content, .gallery-specs-content .product_getcontent, .gallery-specs-content .product-specifications-modal .product_getcontent, .gallery-specs-content .has-overflow { max-height: none !important; overflow: visible !important; height: auto !important; }
.gallery-specs-content .product_getcontent { -webkit-line-clamp: unset !important; line-clamp: unset !important; }
.gallery-modal-footer { padding-top: 12px; margin-top: 10px; border-top: 1px solid #eef1f6; background: transparent; flex-shrink: 0; }
.modal-footer-brand-section { padding: 0; background: none; border: none; }
.footer-brand-container { display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; font-size: 15px; color: #64748b; }
.footer-brand-label { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; color: #64748b; }
.footer-brand-label i { color: #ff6a3d; font-size: 14px; }
.footer-brand-value { font-weight: 700; }
.footer-brand-link { color: #2563eb; text-decoration: none; font-weight: 800; font-size: 16px; transition: color .2s ease; }
.footer-brand-link:hover { color: #1d4ed8; text-decoration: underline; } }

@media (min-width: 992px) and (max-width: 1439px) { .gallery-modal-content, .gallery-modal-content.gallery-modal-content--new { width: min(1060px,76vw); max-width: 1060px; min-width: 760px; min-height: 640px; height: 84vh; padding: 16px; }
.gallery-images-layout { grid-template-columns: 78px minmax(0,1fr); gap: 12px; }
.gallery-thumb { width: 60px; height: 60px; flex-basis: 60px; }
.gallery-modal-header__title { font-size: 22px; }
.gallery-tab-btn { height: 42px; padding: 0 15px; font-size: 14px; }
.toolbar-btn { width: 34px; height: 34px; font-size: 12px; }
.toolbar-btn-primary { width: 38px; height: 38px; font-size: 13px; }
.image-counter { font-size: 12px; min-width: 58px; height: 34px; }
.gallery-nav-btn { width: 44px; height: 44px; font-size: 15px; } }

@media (min-width: 1440px) { .gallery-modal-content, .gallery-modal-content.gallery-modal-content--new { width: min(1180px,76vw); max-width: 1180px; }
.gallery-thumb { width: 68px; height: 68px; flex-basis: 68px; } }

/* Modal Footer - Thương hiệu (Style đơn giản như ảnh) */
.gallery-modal-footer {
  background-color: #ffffff;
  // margin-top: 20px; /* Thêm khoảng cách từ nội dung phía trên */
}

.modal-footer-brand-section {
  padding: 0;
  background: none;
  border: none;
}

.footer-brand-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 16px;
  font-family: inherit;
  color: #495057;
}

.footer-brand-label {
  font-weight: normal;
  color: #6c757d;
  display: flex;
  align-items: center;
  gap: 4px;
}

.footer-brand-label i {
  color: #007bff;
  font-size: 14px;
}

.footer-brand-value {
  font-weight: normal;
}

.footer-brand-link {
  color: #007bff;
  text-decoration: none;
  font-weight: 600;
  font-size: 16px;
  transition: color 0.2s ease;
}

.footer-brand-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

/* Đảm bảo modal content có flex layout */
.gallery-modal-content {
  display: flex;
  flex-direction: column;
  height: 90vh;
  max-height: 90vh;
}

.gallery-tab-content {
  flex: 1;
  overflow-y: auto;
}

.details-right { border:2px solid #e5e7eb; border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.06); background:#fff; padding:13px; box-sizing:border-box; }

@media (min-width:992px) { .details-pro.has-flashsale .details-right { min-height:615px; } }

@media (min-width:992px) { .details-pro:not(.has-flashsale) .details-right:has(.price-sub-row) { min-height:580px !important; } }

@media (min-width:1080px) { .details-right { min-height:550px; } }

@media (min-width:1080px) { .details-pro .title-product { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; } }

@media (min-width:1080px) { .details-pro .title-product + * { margin-top:0; } }

@media (max-width:575px) { .details-right { padding:16px; } }
/* Giữ spacing hợp lý trên mobile */
@media (max-width: 767px) {
  .details-pro {
    padding: 12px;
  }
}

@media (max-width: 767px) {
  .product-policises {
    grid-template-columns: 1fr;
  }
}
// .product-policises-wrapper {
// margin-top: var(--block-spacing);
// padding: var(--block-spacing) 0;
// }
.product-policises .media > div:not(.media-body) {
  width: 24px;
  height: 24px;
}
.product-policises .media + * {
  margin-top: 10px;
  border-top: 1px dashed var(--border-color);
  padding-top: 10px;
}
#content {
  overflow: hidden;
  word-break: break-word;
}
#content img {
  max-width: 100% !important;
  height: auto !important;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  cursor: pointer;
}

#content img:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(0, 0, 0, 0.15);
}
#content iframe,
#content video {
  max-width: 100% !important;
}
.product_getcontent {
  max-height: 500px;
  overflow: hidden;
}

.ega-pro__seemore {
  position: relative;
}
.ega-pro__seemore.show:before {
  content: none;
}
// .ega-pro__seemore:before {
//   position: absolute;
//   content: "";
//   left: 0;
//   right: 0;
//   bottom: 100%;
//   height: 100px;
//   background: linear-gradient(180deg, rgba(255, 255, 255, 0) 17%, #fff 93.12%);
// }
/** Related pro **/

@media (max-width: 768px) {
  .product_related.row {
    flex-wrap: nowrap;
    overflow: auto;
  }
  .product_related.row::-webkit-scrollbar {
    display: none;
  }
  .product_related.row {
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
  }
  .product_related.row .col-12 {
    padding: 5px;
  }
}
#cr-addon-pro,
.crbtn-modal.crbtn-modal---toast .crbtn-modal__body {
  font-size: 14px !important;
  line-height: 21px !important;
}
.crbtn-modal__header {
  font-size: 1rem !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  color: var(--text-color) !important;
}
.crbtn-modal__left {
  border: none !important;
  border-radius: 0 !important;
}
.ega-cr-addon .ega-menu__item.disabled {
  opacity: 0.6 !important;
}
.bpr-products-module-heading {
  padding-top: 5px;
  border-bottom: 1px solid #eee;
}
@media (max-width: 991px) {
  #ega-sticky-addcart {
    display: none;
  }
}
#ega-sticky-addcart .productAnchor_horizonalNavs {
  align-items: center;
  background: #fff;
  top: 0 !important;
  transition: all 0.5s ease;
  z-index: 99;
  width: 100%;
  padding: 5px 0;
}
#ega-sticky-addcart .productAnchor_horizonalNav {
  display: flex;
  align-items: center;
}
#ega-sticky-addcart .product_info_image {
  width: 100px;
  height: 100px;
  margin-right: 10px;
  position: relative;
}
#ega-sticky-addcart .product_info_image img {
  width: auto;
  max-height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#ega-sticky-addcart .product_info_name {
  line-height: 1.1;
  line-height: 1.4;
  color: #191919;
  margin-right: 20px;
  font-size: 16px;
  font-weight: 500;
  margin-top: 0;
  margin-bottom: 4px;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  white-space: initial;
  overflow: hidden;
  padding: 2px 0;
}
#ega-sticky-addcart .product-price {
  font-weight: bold;
  color: var(--price-color);
}
/* ===== Grid layout cho sticky add-to-cart ===== */
#ega-sticky-addcart .product_info_buttons {
  display: grid;
  margin-left: auto;
  align-items: center;
  grid-template-columns: 1fr auto auto;
  /* tự động điều chỉnh */
  grid-gap: 20px;
}

#ega-sticky-addcart .product_info_content {
  max-width: 500px;
}

/* ===== Sticky variables ===== */
#ega-sticky-addcart {
  --sticky-control-h: 45px;
  /* chiều cao đồng bộ */
  --sticky-font: 14px;
  /* font size */
  --sticky-btn-pad-x: 16px;
  /* padding ngang button */
  --sticky-num-btn-w: 36px;
  /* width nút +/- */
}

/* ===== Phần số lượng - gọn gàng hơn ===== */
#ega-sticky-addcart .soluong {
  display: flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}

#ega-sticky-addcart .soluong label {
  font-size: var(--sticky-font);
  color: #666;
  margin: 0;
  font-weight: 500;
}

#ega-sticky-addcart .input_number_product {
  margin: 0;
  display: flex;
  align-items: center;
  border: 1px solid #ddd;
  border-radius: 6px;
  overflow: hidden;
  width: 120px;
  /* chiều rộng cố định */
}

/* ===== Input và buttons trong số lượng ===== */
#ega-sticky-addcart .input_number_product input,
#ega-sticky-addcart .input_number_product .btn_num {
  height: var(--sticky-control-h) !important;
  line-height: var(--sticky-control-h) !important;
  padding: 0 !important;
  box-sizing: border-box;
  font-size: var(--sticky-font) !important;
  border: none;
  background: white;
}

#ega-sticky-addcart .input_number_product input {
  flex: 1;
  text-align: center;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
  width: 48px;
}

#ega-sticky-addcart .input_number_product .btn_num {
  width: var(--sticky-num-btn-w) !important;
  background: #f8f9fa;
  color: #666;
  transition: all 0.2s ease;
}

#ega-sticky-addcart .input_number_product .btn_num:hover {
  background: #e9ecef;
  color: #333;
}

/* ===== Button thêm vào giỏ - nhỏ gọn ===== */
#ega-sticky-addcart .form-product {
  grid-column: 3;
}

#ega-sticky-addcart .button_actions {
  grid-template-columns: 1fr !important;
}

#ega-sticky-addcart .btn_add_cart {
  height: var(--sticky-control-h);
  padding: 0 var(--sticky-btn-pad-x);
  font-size: var(--sticky-font);
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  min-width: 130px;
  /* width tối thiểu */
  font-weight: 500;
}

/* ===== Responsive ===== */
@media (max-width: 1199.98px) {
  #ega-sticky-addcart .product_info_buttons {
    grid-gap: 15px;
  }

  #ega-sticky-addcart .input_number_product {
    width: 110px;
  }

  #ega-sticky-addcart .btn_add_cart {
    min-width: 120px;
    padding: 0 12px;
  }
}

/* ===== Selector cụ thể hơn ===== */
section #ega-sticky-addcart .product_info_buttons .form-product .btn_add_cart.btn {
  height: 40px;
  min-height: 36px;
  padding: 0 16px;
  font-size: 14px;
  min-width: 140px;
  /* tăng từ 110px lên 140px */
  max-width: 140px;
  line-height: 34px;
  /* điều chỉnh theo height */
  border-radius: 6px;
}

/* ===== Input number với selector mạnh ===== */
section #ega-sticky-addcart .soluong .input_number_product {
  width: 110px;
  /* tăng từ 100px lên 110px */
  height: 36px;
}

section #ega-sticky-addcart .soluong .input_number_product input,
section #ega-sticky-addcart .soluong .input_number_product .btn_num {
  height: 36px;
  line-height: 34px;
  /* điều chỉnh theo height */
  font-size: 14px;
}

section #ega-sticky-addcart .soluong .input_number_product .btn_num {
  width: 34px;
  /* nút +/- cũng to hơn một chút */
}

/* Nhãn “Số lượng:” gọn */
#ega-sticky-addcart .soluong > label {
  margin-right: 6px;
  font-size: var(--sticky-font);
  white-space: nowrap;
}

/* ================== VARIANTS – xếp 1 cột ================== */
#ega-sticky-addcart .box-variant {
  display: flex;
  flex-direction: column;
  /* 1 cột */
  align-items: flex-start;
  /* căn trái gọn */
  row-gap: 6px;
  /* khoảng cách mỗi dòng */
  column-gap: 0;
  margin-right: 8px;
  /* tách cụm variants với số lượng */
}

/* Mỗi cặp label + select gọn trên 1 dòng */
#ega-sticky-addcart .box-variant .variant-item,
#ega-sticky-addcart .box-variant .selector-wrapper,
#ega-sticky-addcart .box-variant > label + select {
  /* fallback khi không có wrapper */
  display: inline-flex;
  align-items: center;
  gap: 6px;
  /* khoảng cách label ↔ select */
}

/* Label nhỏ gọn */
#ega-sticky-addcart .box-variant label {
  margin: 0;
  font-size: var(--sticky-font);
  font-weight: 600;
  color: #222;
  white-space: nowrap;
}

/* Select gọn, đồng chiều cao với các control khác */
#ega-sticky-addcart .box-variant select {
  height: var(--sticky-control-h);
  line-height: var(--sticky-control-h);
  font-size: var(--sticky-font);
  padding: 0 22px 0 8px;
  /* chừa chỗ caret */
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  background: #fff;
  min-width: 130px;
  /* gọn – có thể tăng nếu cần */
  max-width: 200px;
  /* tránh choáng chỗ */
}
#ega-sticky-addcart .box-variant select:focus {
  outline: none;
  border-color: #d0d7ff;
  box-shadow: 0 0 0 2px rgba(34, 102, 234, 0.08);
}
#ega-sticky-addcart .box-variant select::-ms-expand {
  display: none;
}

/* ================== Mobile ================== */
@media (max-width: 575.98px) {
  #ega-sticky-addcart {
    --sticky-control-h: 32px;
    --sticky-font: 12px;
  }
  /* Cho mỗi dòng thuộc tính full-width nếu cần */
  #ega-sticky-addcart .box-variant .variant-item,
  #ega-sticky-addcart .box-variant .selector-wrapper {
    width: 100%;
  }
  #ega-sticky-addcart .box-variant select {
    min-width: 0;
    max-width: 100%;
    padding: 0 18px 0 8px;
  }
}

/* Nút THÊM VÀO GIỎ – match height + căn giữa dọc (nhỏ gọn) */
#ega-sticky-addcart button.btn.btn_base.btn_add_cart.btn-cart.add_to_cart {
  height: var(--sticky-control-h) !important;
  padding: 0 var(--sticky-btn-pad-x) !important;
  /* không đội height */
  border-radius: 8px !important;

  background: #ff1a00 !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;

  display: inline-flex !important;
  align-items: center !important;
  /* căn giữa theo chiều dọc */
  justify-content: center !important;
  gap: 8px;
  font-weight: 600;
  font-size: var(--sticky-font) !important;
  line-height: 1 !important;
}

/* đảm bảo mọi phần tử con trong nút đều trắng */
#ega-sticky-addcart button.btn.btn_base.btn_add_cart.btn-cart.add_to_cart * {
  color: #fff !important;
}

/* hover/active */
#ega-sticky-addcart button.btn.btn_base.btn_add_cart.btn-cart.add_to_cart:hover {
  filter: brightness(1.06);
}
#ega-sticky-addcart button.btn.btn_base.btn_add_cart.btn-cart.add_to_cart:active {
  transform: translateY(1px);
}

/* disabled */
#ega-sticky-addcart button.btn.btn_base.btn_add_cart.btn-cart.add_to_cart[disabled] {
  opacity: .6;
  cursor: not-allowed;
  transform: none;
  filter:none;
}

.coupon_item {
  padding: 7px !important;
}
.coupon_item .coupon_body .coupon_title {
  font-size: 14px !important;
}
.coupon_item .coupon_body {
  padding: 5px 5px 5px 10px !important;
}
.coupon_item .coupon_body button span {
  line-height: 22px !important;
  height: 22px !important;
}
.coupon_item .coupon_body .coupon_desc {
  padding-bottom: 10px !important;
}
.flashsale__header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.details-product .flashsale {
  padding: 0;
  border-radius: 4px;
  margin-top: 20px;
}
.details-product .flashsale__title h5 {
  font-size: 14px;
  font-weight: 700;
}
.details-product .flashsale__countdown-label {
  font-size: 14px;
}
.flashsale__header,
.flashsale__product {
  padding: 5px 8px;
}
.details-product .flashsale__bottom {
  padding: 0
}
.flashsale__product {
  background: #FFF6DD;
  border-radius: 0 0 4px 4px;
}
.details-product .ega-badge-ctd__item + span {
  display: none;
}
.details-product .ega-badge-ctd__item {
  font-size: 13px;
}
.details-product .ega-badge-ctd > div:not(.ega-badge-ctd__colon) {
  width: 22px;
  height: 21px;
}
@media (max-width: 575px) {
  .details-product .flashsale__title {
    text-align: center;
    margin-top: 0;
    margin-bottom: 0;
  }
  .details-product .flashsale__countdown-wrapper {
    flex-direction: row;
  }
  .details-product .flashsale__countdown-label {
    display: block !important;
  }
}
@media (max-width: 1024px) {
  .product-sidebar-title {
    display: flex;
    overflow: auto;
  }
  .item_product_main.product--media {
    margin-bottom: 0.75rem;
    flex: 0 0 40%;
  }
}
@media (max-width: 767px) {
  .product-sidebar-title {
    flex-wrap: wrap;
  }
  .item_product_main.product--media {
    flex: 0 0 100%;
  }
}
.filter-item-toggle {
  margin: auto;
  color: var(--primary-color);
}
@media (min-width: 768px) {
  .overflow-item:not(.show) {
    display: none;
  }
}
.filter-item-toggle .fas {
  transitions: all 0.3s ease-out;
}
.filter-item-toggle.show {
  display: inline-block;
}
.filter-item-toggle.show .fas {
  transform: rotate(180deg);
}
.pp_gallery {
  display: none !important;
}
#stock-notify-form {
  max-width: 400px;
}
#stock-notify-form .btn {
  font-size: 14px;
}
.stock-notify-title {
  color: var(--primary-color);
  font-weight: 500;
  font-size: 18px;
  margin-bottom: 8px;
  display: block;
}
div#stock-notify {
  padding: 15px 20px;
  background: #eef2f8;
  border-radius: 4px;
  margin-bottom: 20px;
}
.product-trustbadge .title-menu {
  border-bottom: 1px dashed var(--border-color);
  padding-bottom: 10px;
}
.details-main .heading-bar {
  padding-top: 0;
}
.heading-bar__title {
  font-size: 20px;
}
.product-right > div:not(:first-of-type) {
  margin-top: 15px;
}


/*
   =========================================================
   PRODUCT ACTION BUTTONS – GRID + STYLE + MOBILE RULES
   (giữ nguyên hành vi: PC hiển thị 4 nút; Mobile chỉ còn MUA NGAY)
   =========================================================
*/

/* ---------- GRID 2 NÚT / HÀNG ---------- */
.button_actions .btn-row {
  display: flex;
  gap: 10px;
  width: 100%;
}

.button_actions .btn-row > * {
  flex: 1 1 0 !important;
  width: auto !important;
  margin: 0 !important;
}

.button_actions .btn-cart,
.button_actions .btn-installment,
.buynow {
  width: auto !important;
  margin-top: 0 !important;
}

/* ---------- BASE BUTTON ---------- */
.button_actions .btn,
.button_actions button {
  min-height: 45px;
  border-radius: 12px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-weight: 700;
  line-height: 1.25;
  transition: transform 0.25s, background 0.25s, color 0.25s, border-color 0.25s, box-shadow 0.25s;
}

.button_actions .btn:hover {
  transform: translateY(-2px);
}

.button_actions .btn .text-wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
  line-height: 1.25;
}

.button_actions .btn .btn-title {
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.2px;
}

.button_actions .btn .btn-subtitle {
  font-size: 11px;
  font-weight: 700;
  opacity: .95;
}

/* ---------- HIỆU ỨNG BÓNG VUỐT QUA CHO 4 NÚT ---------- */
.buynow,
.btn-cart,
.btn-call,
.btn-zalo {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.buynow::before,
.btn-cart::before,
.btn-call::before,
.btn-zalo::before {
  content: "";
  position: absolute;
  top: -20%;
  left: -38%;
  width: 32%;
  height: 140%;
  background: linear-gradient(
    115deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.10) 30%,
    rgba(255,255,255,0.82) 50%,
    rgba(255,255,255,0.12) 70%,
    rgba(255,255,255,0) 100%
  );
  transform: skewX(-22deg);
  pointer-events: none;
  z-index: 2;
  animation: btnShineSweep 4.2s ease-in-out infinite;
}

@keyframes btnShineSweep {
  0% {
    left: -38%;
    opacity: 0;
  }
  8% {
    opacity: 1;
  }
  30% {
    left: 112%;
    opacity: 1;
  }
  31% {
    opacity: 0;
  }
  100% {
    left: 112%;
    opacity: 0;
  }
}

/* ---------- VARIANTS (HÀNG 1) ---------- */
/* MUA NGAY */
.buynow {
  background: linear-gradient(135deg, #ff5a1f 0%, #ff2f1f 55%, #ff6a00 100%);
  border: 2px solid #ff5a1f;
  color: #fff !important;
  box-shadow:
    0 10px 22px rgba(255, 90, 31, 0.22),
    inset 0 1px 0 rgba(255,255,255,0.18);
}

.buynow .btn-title,
.buynow .btn-subtitle {
  color: #fff;
  position: relative;
  z-index: 3;
}

.buynow:hover {
  background: linear-gradient(135deg, #ff4d1a 0%, #ff241a 55%, #ff5e00 100%);
  border-color: #ff4d1a;
  box-shadow:
    0 14px 28px rgba(255, 90, 31, 0.28),
    inset 0 1px 0 rgba(255,255,255,0.2);
}

/* THÊM VÀO GIỎ */
.btn-cart {
  background: linear-gradient(135deg, #ff3c2e 0%, #ff2f2f 50%, #ff5a3d 100%);
  border: 2px solid #ff3b30 !important;
  color: #fff !important;
  box-shadow:
    0 10px 22px rgba(255, 59, 48, 0.20),
    inset 0 1px 0 rgba(255,255,255,0.18);
}

.btn-cart .btn-title,
.btn-cart .btn-subtitle {
  color: #fff;
  position: relative;
  z-index: 3;
}

.btn-cart:hover {
  background: linear-gradient(135deg, #ff3426 0%, #ff2424 52%, #ff5133 100%);
  border-color: #ff3426 !important;
  color: #fff !important;
  box-shadow:
    0 14px 28px rgba(255, 59, 48, 0.26),
    inset 0 1px 0 rgba(255,255,255,0.2);
}

/* ---------- VARIANTS (HÀNG 2) ---------- */
.btn-call,
.btn-zalo {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px;
  line-height: 1.3;
  font-weight: 700;
  border-radius: 12px;
  padding: 14px 20px;
  transition: all 0.25s ease;
}

/* GỌI MUA HÀNG */
.btn-call {
  background: #fff1f2;
  color: #dc2626 !important;
  border: 2px solid #ef4444;
  box-shadow: 0 8px 18px rgba(239, 68, 68, 0.08);
}

.btn-call .btn-title,
.btn-call .btn-subtitle {
  position: relative;
  z-index: 3;
}

.btn-call .btn-title {
  color: #dc2626;
}

.btn-call .btn-subtitle {
  color: #ef4444;
}

.btn-call:hover {
  background: #ffe4e6;
  color: #b91c1c !important;
  border-color: #dc2626;
}

/* CHAT ZALO */
.btn-zalo {
  background: #eff6ff;
  color: #2563eb !important;
  border: 2px solid #2563eb;
  box-shadow: 0 8px 18px rgba(37, 99, 235, 0.08);
}

.btn-zalo .btn-title,
.btn-zalo .btn-subtitle {
  position: relative;
  z-index: 3;
}

.btn-zalo .btn-title {
  color: #2563eb;
}

.btn-zalo .btn-subtitle {
  color: #1d4ed8;
}

.btn-zalo:hover {
  background: #dbeafe;
  color: #1d4ed8 !important;
  border-color: #1d4ed8;
}

/* ---------- ICONS ---------- */
.btn-call img,
.btn-zalo img {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  object-fit: contain;
  display: inline-block;
  background: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  position: relative;
  z-index: 3;
}

.button_actions .btn-call img,
.button_actions .btn-zalo img {
  width: 30px;
  height: 30px;
  margin-right: 0 !important;
  background: #fff;
  border-radius: 999px;
  padding: 3px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12), inset 0 0 0 2px rgba(255, 255, 255, 0.6);
  transition: transform 0.18s, box-shadow 0.18s, filter 0.18s;
}

.button_actions .btn-call:hover img,
.button_actions .btn-zalo:hover img {
  transform: translateY(-1px) scale(1.06);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.16), inset 0 0 0 2px rgba(255, 255, 255, 0.8);
}

/* ---------- OPTIONAL: TEXT ALIGN GỌN HƠN ---------- */
.btn-call .text-wrap,
.btn-zalo .text-wrap,
.btn-cart .text-wrap,
.buynow .text-wrap {
  align-items: center;
  text-align: center;
}

/* ---------- MOBILE RULES ---------- */
@media (max-width: 767px) {
  .button_actions .btn,
  .button_actions button {
    border-radius: 10px;
  }

  .button_actions .btn .btn-title {
    font-size: 13px;
  }

  .button_actions .btn .btn-subtitle {
    font-size: 10px;
  }

  .btn-call,
  .btn-zalo {
    padding: 12px 14px;
    gap: 10px;
  }

  .button_actions .btn-call img,
  .button_actions .btn-zalo img {
    width: 28px;
    height: 28px;
  }

  .buynow::before,
  .btn-cart::before,
  .btn-call::before,
  .btn-zalo::before {
    animation-duration: 4.8s;
  }
}
/*
   ---------- MOBILE (≤575px) ----------
   1) Ẩn THÊM GIỎ / GỌI MUA / ZALO vì có sticky bar
   2) Chỉ giữ MUA NGAY (full chiều ngang) 3) Đồng nhất kích thước, icon nhỏ gọn
   --------------------------------------
*/
@media (max-width: 575px) {
  /* ——— SẢN PHẨM CÓ GIÁ (không phải Liên hệ) ——— */
  .button_actions:not(.contact-only) .btn-cart,
  .button_actions:not(.contact-only) .btn-call,
  .button_actions:not(.contact-only) .btn-zalo {
    display: none !important;
  }

  /* Ẩn hẳn hàng 2 (call + zalo) */
  .button_actions:not(.contact-only) .btn-row:last-child {
    display: none !important;
  }

  /* Còn lại 1 nút → full width */
  .button_actions:not(.contact-only) .btn-row {
    flex-direction: column;
    gap: 0;
    margin-bottom: 0;
  }
  .button_actions:not(.contact-only) .btn-row > * {
    width: 100% !important;
  }

  /* Nút MUA NGAY 2 dòng: căn giữa dọc */
  .button_actions:not(.contact-only) .buynow {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* canh giữa dọc */
    // min-height: 64px;
    /* thoáng cho 2 dòng */
    padding: 12px 14px;
    border-radius: 10px;
    font-size: 15px;
  }

  /* Ổn định typography cho 2 dòng trong nút */
  .button_actions .btn-title,
  .button_actions .btn-subtitle {
    margin: 0;
    line-height: 1.2;
  }
  .button_actions .btn-subtitle {
    font-size: 12px;
    opacity: .9;
  }

  /* Icon gọn cho các nút có icon */
  .button_actions .btn-call img,
  .button_actions .btn-zalo img {
    width: 20px;
    height: 20px;
    padding: 2px;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.12)
    , inset 0 0 0 2px rgba(255, 255, 255, 0.6);
  }
}

/* Phòng hờ nếu theme có dùng .hidden */
.hidden {
  display: none !important;
}

/* Phòng hờ nếu theme chưa có */
.hidden {
  display: none !important;
}

/* ---------- SPACING GIỮA HAI HÀNG (PC) ---------- */
.button_actions .btn-row + .btn-row {
  margin-top: 8px;
}


/** =================================================================
 * PRODUCT BUTTONS & ACTIONS
 * ================================================================= */

.button_actions .btn_base {
  width: 100%;
}

.button_actions {
  display: flex;
  // margin-bottom: 10px;
  flex-wrap: wrap;
}

.button_actions .btn {
  transition: all 0.3s ease;
  font-weight: 700;
  text-decoration: none;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 45px;
  font-size: 14px;
  line-height: 12px;
  padding: 5px 10px;
}

.button_actions .btn span {
  font-weight: 600;
  font-size: 12px;
}

@media (min-width: 576px) and (max-width: 991px) {
  .button_actions .btn span {
    font-size: 10px;
  }
}

.buynow,
.quick-view-product .button_actions .btn-cart {
  grid-column: 1 / -1;
  background-color: var(--buynow-bg);
  color: var(--buynow-text-color);
}

.buynow:hover {
  color: var(--buynow-text-color);
  opacity: .8;
}

.button_actions .btn-cart,
.btn-installment {
  color: var(--buynow-bg);
  border: 1px solid var(--buynow-bg);
  margin-top: 10px;
  width: calc(50% - 5px);
}

.button_actions .btn-cart:hover,
.btn-installment:hover {
  background-color: var(--buynow-bg);
  color: #fff;
  filter: brightness(1.2);
}

.button_actions .btn-cart {
  margin-right: 5px;
}

.btn-installment {
  margin-left: 5px;
}

.button_actions .btn:only-child,
.button_actions .btn.is-full {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.button_actions .btn-cart strong {
  font-size: 16px;
}

/* ===== KHUYẾN MÃI & ƯU ĐÃI - VIỀN ĐẦY ĐỦ ===== */
.product-policises-wrapper {
  position: relative;
  margin: 22px 0 12px;
  padding: 0;
  border: 2px solid #e74c3c;
  border-radius: 14px;
  background: #fff;
}

/* Tiêu đề trong wrapper */
.product-policises-wrapper h5 {
  position: absolute;
  top: -14px;
  left: 16px;
  margin: 0 !important;
  padding: 0 12px !important;
  background: #fff;
  color: #e74c3c;
  font-size: 18px !important;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
  z-index: 2;
  border-radius: 4px;
  animation: promoPulse 6s ease-in-out infinite;
}

.product-policises-wrapper h5::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: -8px;
  height: 3px;
  border-radius: 3px;
  background: linear-gradient(90deg,transparent,#ff754c 35%,#ff3d2f,#ff754c 65%,transparent);
  background-size: 200% 100%;
  animation: underlineSweep 3.2s linear infinite;
  pointer-events: none;
}

/* --- ĐÃ SỬA: CHUYỂN VỀ 1 CỘT (100%) --- */
.product-policises {
  display: grid !important;
  grid-template-columns: 100% !important; /* Đổi từ 1fr 1fr thành 100% */
  column-gap: 0;
  row-gap: 6px;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  // padding: 25px 22px 16px !important;
  margin: 0 !important;
  list-style: none;
}

/* Item + nội dung */
.product-policises li.media {
  display: flex;
  align-items: flex-start; /* Chỉnh lại để icon nằm trên cùng nếu text dài xuống dòng */
  gap: 12px; /* Tăng khoảng cách icon và text một chút cho thoáng */
  font-size: 16px;
  color: #222;
  font-weight: 500;
  line-height: 1.4;
  margin: 0;
  padding: 0;
  opacity: 0;
  transform: translateY(6px);
  animation: itemIn 0.5s ease forwards, itemFloat 8s ease-in-out 0.8s infinite;
  border: none !important;
  background: none !important;
}

/* Animation delay cho các phần tử (để mượt mà hơn khi list dài) */
.product-policises li.media:nth-child(odd) { animation-delay: 0.1s, 1.4s; }
.product-policises li.media:nth-child(even) { animation-delay: 0.2s, 1.6s; }

.product-policises .mr-2 {
  margin: 3px 0 0 !important; /* Căn icon xuống 1 xíu cho cân với dòng text đầu tiên */
  flex-shrink: 0;
}

/* Icon style */
.product-policises img {
  width: 26px !important;
  height: 26px !important;
  object-fit: contain;
  // filter: brightness(0) saturate(100%) invert(39%) sepia(96%) saturate(1752%) hue-rotate(345deg) brightness(95%) contrast(94%);
  transition: transform 0.22s ease, filter 0.22s ease;
  animation: iconBeat 2.6s ease-in-out infinite;
  transform-origin: center;
}

.product-policises .media-body {
  font-size: 14px;
  font-weight: 500;
  color: #222;
  margin: 0;
  line-height: 1.5; /* Tăng line-height tí cho dễ đọc khi text dài */
}

/* ===== KEYFRAMES GIỮ NGUYÊN ===== */
@keyframes promoPulse {
  0, 70%, 100% { text-shadow: none; filter:none; }
  20% { text-shadow: 0 0 10px rgba(231, 76, 60, 0.45), 0 0 18px rgba(231, 76, 60, 0.35); }
  25% { text-shadow: 0 0 6px rgba(231, 76, 60, 0.2); }
}
@keyframes underlineSweep {
  0% { background-position: 200% 0; opacity: .25; }
  20% { opacity: .85; }
  100% { background-position: -200% 0; opacity: .25; }
}
@keyframes iconBeat {
  0, 100% { transform: scale(1); }
  15% { transform: scale(1.08); }
  30% { transform: scale(1); }
  45% { transform: scale(1.05); }
  60% { transform: scale(1); }
}
@keyframes itemIn {
  to { opacity: 1; transform: translateY(0); }
}
@keyframes itemFloat {
  0, 100% { transform: translateY(0); }
  50% { transform: translateY(-2px); }
}

@media (prefers-reduced-motion: reduce) {
  .product-policises-wrapper h5,
  .product-policises-wrapper h5::after,
  .product-policises li.media,
  .product-policises img { animation: none !important; }
}

/* ===== RESPONSIVE ===== */
@media (max-width: 600px) {
  .product-policises-wrapper h5 {
    font-size: 15px !important;
    padding: 0 8px !important;
    top: -11px;
    left: 12px;
  }
  .product-policises {
    padding: 18px 12px 10px !important;
  }
  .product-policises li.media {
    font-size: 14px;
    gap: 8px;
  }
  .product-policises .media-body {
    font-size: 14px;
  }
  .product-policises img {
    width: 20px !important;
    height: 20px !important;
  }
}

@media (max-width: 480px) {
  .product-policises {
    padding: 15px 8px 8px !important;
  }
  .product-policises li.media {
    font-size: 13px;
  }
  .product-policises .media-body {
    font-size: 13px;
  }
}

/* ====== MẶC ĐỊNH (desktop & tablet) ====== */
.pd-tabs {
  display: none !important;
} /* ẩn thanh tab */
#tab-desc,
#tab-spec {
  display: block !important;
} /* hiện cả 2 khối như cũ */

#tab-desc {
  border: 1px solid rgba(0, 0, 0, 0.125) !important;
  border-radius: 10px;
  box-shadow: 0 12px 28px rgba(34, 102, 234, 0.08);
}

/* Tiêu đề trong tab mô tả */
#tab-desc .custom-heading-bar {
  border: none;
  padding: 0;
}
#tab-desc .custom-heading-bar__title {
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  text-transform: uppercase;
  color: #ed3237;
  letter-spacing: .5px;
  position: relative;
  display: inline-block;
  padding-bottom: 8px;
}
#tab-desc .custom-heading-bar__title::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0;
  width: 50px; height: 3px;
  background: linear-gradient(90deg,#ed3237,#ff6b6b,transparent);
  border-radius: 2px;
  animation: tabdesc_line_grow .6s ease forwards;
}
@keyframes tabdesc_line_grow {
  from { width: 0; opacity: 0; }
  to   { width: 50px; opacity: 1; }
}
/* tắt gạch trang trí auto */
#tab-desc .title_module_main::before,
#tab-desc .title_module_main::after,
#tab-desc .custom-heading-bar::before,
#tab-desc .custom-heading-bar::after,
#tab-desc .custom-heading-bar__title::before {
  content: none !important;
  display: none !important;
}

/* Nút Xem thêm (giữ logic, chỉ đổi style) */
#tab-desc + .js-seemore {
  display: none;
}
#tab-desc.has-overflow + .js-seemore {
  display: block;
}
#tab-desc + .js-seemore .btn-secondary {
  border: 1px solid rgba(237,50,55,.2);
  background: rgba(237,50,55,.08);
  color: #ed3237;
  border-radius: 999px;
  font-weight: 600;
  padding: 9px 16px;
  transition: background .2s, box-shadow .2s, transform .2s;
}
#tab-desc + .js-seemore .btn-secondary:hover {
  background: rgba(237,50,55,.14);
  box-shadow: 0 6px 18px rgba(237,50,55,.15);
  transform: translateY(-1px);
}

/* Gradient ở cuối nội dung */
#tab-desc .content::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 96px;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
}
/* khi đã "mở rộng" */
#tab-desc.is-expanded .content {
  max-height: none;
}
#tab-desc.is-expanded .content::after {
  display: none;
}

/* ====== MOBILE CHỈ ≤ 768px ====== */
@media (max-width: 767.98px) {
  .pd-tabs {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 12px;
  }
  
  .pd-tab {
    display: block;
    text-align: center;
    padding: 12px 16px;
    background: #f3f4f6;
    border: 2px solid #e5e7eb;
    border-radius: 10px;
    font-weight: 600;
    font-size: 14px;
    color: #374151;
    transition: all 0.3s ease;
    cursor: pointer;
    position: relative;
  }

  .pd-tab:active {
    transform: scale(0.98);
    background: #e5e7eb;
  }

  .pd-tab[aria-selected="true"] {
    background: linear-gradient(135deg, #ff5a1f 0%, #ff2f1f 55%, #ff6a00 100%);
    color: #ffffff !important;
    border-color: #ff5a1f;
    box-shadow:
      0 8px 18px rgba(255, 90, 31, 0.22),
      inset 0 1px 0 rgba(255,255,255,0.18);
    font-weight: 700;
  }

  .pd-tab[aria-selected="true"]::after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid #ff6a00;
  }

  .pd-tab:not([aria-selected="true"]) {
    background: #ffffff;
    border: 2px solid #d1d5db;
    color: #6b7280;
  }

  #tab-desc,
  #tab-spec {
    display: none !important;
  }
  #tab-desc.is-visible,
  #tab-spec.is-visible {
    display: block !important;
  }

  /* Tiêu đề nhỏ lại trên mobile */
  #tab-desc .custom-heading-bar__title {
    font-size: 16px;
  }
}

/* Nút Xem thêm */
#tab-desc + .js-seemore.ega-pro__seemore,
.js-seemore.ega-pro__seemore {
  display: none;
}
#tab-desc.has-overflow + .js-seemore.ega-pro__seemore,
#tab-desc.has-overflow ~ .js-seemore.ega-pro__seemore {
  display: block;
}

.js-seemore.ega-pro__seemore .btn-secondary {
  border: 1px solid rgba(237,50,55,.2) !important;
  background: rgba(237,50,55,.08) !important;
  color: #ed3237 !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  padding: 9px 24px !important;
  font-size: 14px !important;
  transition: background .2s, box-shadow .2s, transform .2s !important;
  text-decoration: none !important;
}
.js-seemore.ega-pro__seemore .btn-secondary:hover {
  background: rgba(237,50,55,.14) !important;
  box-shadow: 0 6px 18px rgba(237,50,55,.15) !important;
  transform: translateY(-1px) !important;
  color: #c0392b !important;
}
.js-seemore.ega-pro__seemore .btn-secondary i {
  color: #ed3237;
  transition: color .2s;
}
.js-seemore.ega-pro__seemore .btn-secondary:hover i {
  color: #c0392b;
}


/* Bất kỳ .card nào có .custom-heading-bar bên trong -> bo viền + shadow */
.card.p-3:has(.custom-heading-bar) {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125) !important;
  border-radius: 10px;
  box-shadow: 0 12px 28px rgba(34, 102, 234, 0.08);
  padding: 16px !important;
  overflow: hidden;
  // margin-bottom:20px;
}
@media (max-width: 767.98px) {
  .card.p-3:has(.custom-heading-bar) {
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(34, 102, 234, 0.08);
    padding: 12px !important;
  }
}

/* ====== RELATED ARTICLES – full CSS (keep your shadow & border) ====== */

/* Biến khoảng cách mặc định (desktop) */#product-related-articles {
  --ra-gap-x: 8px;
  /* ngang giữa các cột */
  --ra-gap-y: 16px;
  /* dọc giữa các hàng */
}

/* === HEADING + NÚT XEM TẤT CẢ === */
#product-related-articles .custom-heading-bar{border:none;padding:0}
#product-related-articles .custom-heading-bar__title{margin:0;font-size:20px!important;font-weight:800!important;text-transform:uppercase!important;color:#ed3237!important;letter-spacing:.5px!important;position:relative!important;display:inline-block!important;padding-bottom:8px!important}
#product-related-articles .custom-heading-bar__title::after{content:'';position:absolute;bottom:0;left:0;width:50px;height:3px;background:linear-gradient(90deg,#ed3237,#ff6b6b,transparent);border-radius:2px;animation:rp_line_grow .6s ease forwards}
@keyframes rp_line_grow{from{width:0;opacity:0}to{width:50px;opacity:1}}

/* Tiêu đề bài viết — ghi đè cả selector gốc theme */
#product-related-articles .blogwp h3,
#product-related-articles .blogwp h3 a.link,
#product-related-articles .content_blog h3,
#product-related-articles .content_blog h3 a {
  font-size: 16px;
  line-height: 1.35;
  margin: 0 0 8px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Mobile */
@media (max-width: 767.98px) {
  #product-related-articles .blogwp h3,
  #product-related-articles .blogwp h3 a.link,
  #product-related-articles .content_blog h3,
  #product-related-articles .content_blog h3 a {
    font-size: 13px !important;
    font-weight: 600;
  }
}

/* Desktop list view */
@media (min-width: 992px) {
  #product-related-articles .blogwp h3,
  #product-related-articles .blogwp h3 a.link,
  #product-related-articles .content_blog h3,
  #product-related-articles .content_blog h3 a {
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.3;
    color: #1a1a1a;
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 5px;
    transition: color 0.2s;
  }

  #product-related-articles .blogwp .content_blog .art-summary {
    -webkit-line-clamp: 2;
  }
}

#product-related-articles .ra-seeall-link{font-weight:600;color:#ed3237;text-decoration:none;padding:8px 14px;border-radius:999px;background:rgba(237,50,55,.08);border:1px solid rgba(237,50,55,.2);transition:background .2s,box-shadow .2s,transform .2s}
#product-related-articles .ra-seeall-link:hover{background:rgba(237,50,55,.14);transform:translateY(-1px);box-shadow:0 6px 18px rgba(237,50,55,.15);color:#c0392b}

#product-related-articles .title_module_main::before,
#product-related-articles .title_module_main::after,
#product-related-articles .custom-heading-bar::before,
#product-related-articles .custom-heading-bar::after,
#product-related-articles .custom-heading-bar__title::before{content:none!important;display:none!important}

/* === GRID mặc định: 4 cột === */
#product-related-articles{--ra-gap-x:10px;--ra-gap-y:14px;--ra-thumb-w:160px;--ra-thumb-h:96px}
#product-related-articles .js-ra-list{display:flex;flex-wrap:wrap;margin-left:calc(var(--ra-gap-x)*-1);margin-right:calc(var(--ra-gap-x)*-1)}
#product-related-articles .js-ra-list>[class^="col-"],
#product-related-articles .js-ra-list>[class*=" col-"]{flex:0 0 25%;max-width:25%;padding-left:var(--ra-gap-x);padding-right:var(--ra-gap-x);margin-bottom:var(--ra-gap-y);box-sizing:border-box}

/* === CARD mobile/tablet: dạng card đứng === */
#product-related-articles .blogwp{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 10px 24px rgba(16,24,40,.12),0 1px 0 rgba(16,24,40,.06);height:100%;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
#product-related-articles .blogwp:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(16,24,40,.16),0 1px 0 rgba(16,24,40,.06)}

#product-related-articles .image-blog{display:block;background:#f6f7f9}
#product-related-articles .image-blog img,
#product-related-articles .image-blog .img_{width:100%;height:auto;display:block;aspect-ratio:16/9;border-radius:10px 10px 0 0}

#product-related-articles .content_blog{padding:14px 16px!important}
#product-related-articles .content_blog h3{font-size:16px;line-height:1.35;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#product-related-articles .content_blog .text-muted{font-size:12px;opacity:.9}
#product-related-articles .content_blog p{margin:10px 0 0}
#product-related-articles .button_custome_35.link{display:inline-block;margin-left:6px}

/* === TABLET ≤ 991px: 2 cột === */
@media(max-width:991.98px){
  #product-related-articles{--ra-gap-x:8px;--ra-gap-y:12px}
  #product-related-articles .js-ra-list>[class^="col-"],
  #product-related-articles .js-ra-list>[class*=" col-"]{flex:0 0 50%;max-width:50%}
  #product-related-articles .content_blog{padding:10px 12px!important}
  #product-related-articles .content_blog .art-summary{display:none!important}
  #product-related-articles .button_custome_35.link{display:inline-block!important;margin-left:0;margin-top:6px}
  #product-related-articles .ra-seeall-link{position:static!important;display:inline-flex!important}
}

/* === MOBILE ≤ 767px === */
@media(max-width:767.98px){
  #product-related-articles{--ra-gap-x:6px;--ra-gap-y:10px}
  #product-related-articles .ra-seeall-link{padding:6px 8px!important;font-size:12px!important}
  #product-related-articles .content_blog p{margin:0!important}
  #product-related-articles .custom-heading-bar__title{font-size:16px!important;margin-bottom:0!important}
  .blogwp h3,.blogwp h3 a.link{font-size:13px;font-weight:600}
}

/* === MÀN NHỎ ≤ 419px: vẫn 2 cột === */
@media(max-width:419.98px){
  #product-related-articles{--ra-gap-x:6px;--ra-gap-y:10px}
  #product-related-articles .js-ra-list>[class^="col-"],
  #product-related-articles .js-ra-list>[class*=" col-"]{flex:0 0 50%;max-width:50%}
}

/* === DESKTOP ≥ 992px: LIST 2 cột, card ngang === */
@media(min-width:992px){
  #product-related-articles{--ra-gap-x:8px;--ra-gap-y:12px;--ra-thumb-w:160px;--ra-thumb-h:96px}

  #product-related-articles .js-ra-list>[class^="col-"],
  #product-related-articles .js-ra-list>[class*=" col-"]{flex:0 0 50%;max-width:50%}

  #product-related-articles .blogwp{display:grid;grid-template-columns:var(--ra-thumb-w) 1fr;column-gap:12px;align-items:center;height:auto;border:1px solid #e9edf4;box-shadow:0 2px 6px rgba(16,24,40,.08);border-radius:8px;padding:8px 10px;background:#fff;transition:box-shadow .2s}
  #product-related-articles .blogwp:hover{transform:none;box-shadow:0 4px 12px rgba(16,24,40,.12)}

  #product-related-articles .image-blog{width:var(--ra-thumb-w);height:var(--ra-thumb-h);border-radius:6px;overflow:hidden}
  #product-related-articles .image-blog img{width:100%;height:100%;display:block;aspect-ratio:unset;border-radius:0}

  #product-related-articles .content_blog{padding:0!important;display:flex;flex-direction:column;justify-content:center}
  #product-related-articles .content_blog h3{font-size:15px;line-height:1.4;margin:0 0 3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  #product-related-articles .content_blog .text-muted{font-size:12px;opacity:.85;margin-bottom:2px}
  #product-related-articles .content_blog p{margin:0;font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  #product-related-articles .button_custome_35.link{display:none!important}
}

/* ===== XEM THÊM/THU GỌN - CSS FIX ===== */
.js-content-wrapper {
  position: relative;
}

/* Trạng thái MẶC ĐỊNH: rút gọn */
.js-content-wrapper.has-overflow .product_getcontent {
  max-height: 500px !important;
  overflow: hidden !important;
  position: relative;
}

/* Trạng thái MỞ RỘNG */
.js-content-wrapper.is-expanded .product_getcontent {
  max-height: none !important;
  overflow: visible !important;
}

/* Fade effect ở cuối nội dung khi rút gọn */
.js-content-wrapper.has-overflow .product_getcontent::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 80px;
  background: linear-gradient(transparent, #fff);
  pointer-events: none;
}

/* Ẩn fade effect khi mở rộng */
.js-content-wrapper.is-expanded .product_getcontent::after {
  display: none !important;
}

/* QUAN TRỌNG: Luôn hiển thị nút, không ẩn khi expanded */
.js-seemore {
  display: block !important;
  transition: all 0.3s ease;
}

/* Animation cho content expansion */
.product_getcontent {
  transition: max-height 0.4s ease-in-out;
} 

.sec_tab .product-content,
.sec_tab .product-content .rte,
.sec_tab .product-content .content {
  max-width: 100%;
}

@media (min-width: 992px) {
  .sec_tab .product-content .content {
    overflow-x: visible !important;
    overflow-y: visible !important;
  }

  .sec_tab .product-content .content table {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
  }

  .sec_tab .product-content .content th,
  .sec_tab .product-content .content td {
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
  }

  .sec_tab .product-content .content th:nth-child(1),
  .sec_tab .product-content .content td:nth-child(1) {
    width: 60px !important;
    text-align: center;
  }

  .sec_tab .product-content .content th:nth-child(2),
  .sec_tab .product-content .content td:nth-child(2) {
    width: 36% !important;
  }

  .sec_tab .product-content .content th:nth-child(3),
  .sec_tab .product-content .content td:nth-child(3) {
    width: 12% !important;
    text-align: center;
  }

  .sec_tab .product-content .content th:nth-child(4),
  .sec_tab .product-content .content td:nth-child(4) {
    width: 10% !important;
    text-align: center;
  }

  .sec_tab .product-content .content th:nth-child(5),
  .sec_tab .product-content .content td:nth-child(5),
  .sec_tab .product-content .content th:nth-child(6),
  .sec_tab .product-content .content td:nth-child(6) {
    width: 18% !important;
    text-align: right;
    white-space: nowrap !important;
  }
}

@media (max-width: 991px) {
  .sec_tab .product-content .content {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .sec_tab .product-content .content table {
    width: max-content !important;
    min-width: 980px !important;
    max-width: none !important;
    table-layout: auto !important;
    border-collapse: collapse !important;
  }

  .sec_tab .product-content .content th,
  .sec_tab .product-content .content td {
    white-space: nowrap !important;
  }

  .sec_tab .product-content .content td:nth-child(2),
  .sec_tab .product-content .content th:nth-child(2) {
    white-space: normal !important;
  }
}