select {
  padding: 4px;
}
select option {
  padding: 4px; /* Add padding around each option */
}

details > summary {
  list-style: none;
}
details > summary::-webkit-details-marker {
  display: none;
}

details[open] > summary > .icon-carret-right {
  transform: rotate(90deg);
}
.h-inherit {
  height: inherit !important;
}
.break-word {
  word-break: break-word;
}
.addtocart-btn {
  --color-button-primary: var(--color-addtocart-bg);
  --color-button-primary-text: var(--color-addtocart);
}

.card-product .addtocart-btn {
  padding: 7px;
  width: 3.2rem;
  height: 3.2rem;
  position: relative;
  margin-left: auto;
}
@media (min-width: 1024px) {
  .card-product .addtocart-btn {
    padding: 11px 8px;
    width: 100%;
    height: auto;
    border-radius: var(--rounded-button);
    position: relative;
  }
}

.btn:disabled {
  opacity: 0.5;
}
.section-flashsale:after {
  z-index: -1;
}

.overflow-item {
  display: none;
}

.aside-item {
  background: var(--color-background);
}

.filter-container {
  gap: 1px;
}

@media (max-width: 1269px) {
  .collection-filter {
    position: fixed;
    top: 0 !important;
    right: 0;
    width: 100%;
    z-index: 9999;
    max-height: 100vh;
    overflow: auto;
    border-radius: 0px;
  }
}

.is-empty .cart-form {
  display: none;
}

.portal--modal .portal-inner {
  max-height: 690px;
  height: auto;
  max-width: 100.24rem;
  width: 100%;
  border-radius: var(--rounded);
}
@media(max-width: 1024px){
	.portal--modal .portal-inner{
		max-width: 72.4rem
	}
}
.portal--modal.portal--modal-sm .portal-inner {
  height: auto;
  max-width: 50rem;
}

.loading-icon {
  height: 2rem;
}

.loading > span:not(.loading-icon) {
  display: none;
}

.map iframe {
  width: 100%;
}

/** compare qv **/

#quick-view-compare .portal-inner {
  width: calc(100% - var(--container-padding) * 2);
  max-width: calc(1440px - var(--container-padding) * 2);
  height: auto;
  bottom: var(--container-padding) !important;
  top: auto !important;
  overflow: initial;
  box-shadow: var(--shadow-l);
  position: absolute;
}

#PortalClose-quick-view {
  top: -5rem;
}
.compare-product__qv-show {
  grid-column: 4;
}
@media (max-width: 767px) {
  .compare-product__qv-show {
    grid-column: 1 / -1;
  }
}

.color-spot {
  width: 30px;
  height: 30px;
  display: block;
  border-radius: var(--rounded-full);
  overflow: hidden;
  border: #fff;
  display: block;
}
.color-swatch {
  width: 38px;
  height: 38px;
  padding: 0;
  box-shadow: 0 0 0 1px var(--color-neutral-50),
    inset 0 0 0 2px var(--color-background);
  overflow: hidden;
}

.product-gallery {
  --thumbs-size: 9rem;
}
.product-gallery--vertical .embla-thumbs .embla__container {
  overflow: hidden;
}
@media (min-width: 768px) {
  .product-gallery--vertical .embla-thumbs .embla__container {
    touch-action: pan-x pinch-zoom;
    flex-direction: column;
  }
  .product-gallery--vertical .gallery-container {
    padding-left: calc(var(--thumbs-size) + var(--spacing-3));
  }
  #quick-view-product .gallery-container {
    padding-left: 0;
  }
  .product-gallery--vertical .embla-thumbs {
    position: absolute;
    inset: 0;
    height: 100%;
    z-index: 2;
    width: max-content;
  }
  .product-gallery--vertical .embla-thumbs .embla__slide {
    margin: 0;
  }
}

.ega-badge-ctd__item {
  color: var(--color-flashsale-timer);
  background-color: var(--color-flashsale-timer-bg);
}
.stock-percent {
  background: var(--color-flashsale-process);
}
.flashsale-heading {
  font-weight: var(--font-headings-weight);
  font-family: var(--font-headings-family);
}

.flashsale-tab {
  cursor: pointer;
}
.flashsale-tab.ended {
  cursor: not-allowed;
  display: none;
}
.flashsale-tab .status {
  display: inline-block;
  padding: 4px 8px;
  border-radius: var(--rounded-full);
}

.flashsale-tab.ongoing .status {
  background: var(--color-flashsale-tab-bg);
  color: var(--color-flashsale-tab);
}

.product-flashsale-item {
  color: var(--color-flashsale);
  background: var(--color-flashsale-bg);
}

.flashsale-tab.active {
  background: var(--color-flashsale-tab-bg);
  color: var(--color-flashsale-tab);
  border-radius: 12px;
}
.flashsale-nav {
  border-radius: 12px;
}

.flashsale-background {
  --side-width: 120px;
  width: calc(1440px - var(--spacing-3) - 2 * var(--side-width));
}
.flashsale-heading:hover a {
  color: var(--color-flashsale-title-hover);
}
@media (max-width: 976px) {
  .flashsale-background {
    --side-width: 120px;
    width: 100%;
  }
  .flashsale-nav {
    border-radius: 0;
    padding: 12px 12px;
    /* margin: 0 -12px; */
  }
}

@media (max-width: 767px) {
  .flashsale-nav {
    border-radius: 0;
    /* padding: 0;
    margin: 0 -12px; */
  }

  .flashsale-nav > ul {
    grid-template-columns: repeat(3, auto);
    white-space: nowrap;
    gap: var(--spacing-1);
  }
  .flashsale-tab {
    padding-left: var(--spacing-1);
    padding-right: var(--spacing-1);
  }
}
.ega-badge-dot {
  display: none;
}
.product-detail .flashsale__countdown-label {
  display: none !important;
}
.product-flashsale-item .stock-countdown {
  width: 50%;
}
.product-flashsale-item .ega-badge-ctd__item {
  width: 3.2rem;
}
.product-flashsale-item .ega-badge-ctd__h {
  font-size: var(--font-size-h6);
}
.product-flashsale-item .ega-badge-ctd__item span {
  display: none;
}

.product-flashsale-item:has(.active.ongoing) {
  padding: 0.8rem 1.2rem;
}
.product-price-group:has(.active.ongoing) {
  border: 1px solid var(--color-flashsale-bg);
}
.product-price-group:has(.active.ongoing) .price-box {
  padding: 1.2rem 0.8rem 1.2rem;
}

.product-flashsale-item .ega-badge-dot {
  display: block;
}
.coupon-list {
  display: flex;
  flex-direction: column;
  grid-gap: 2rem;
  padding: 2rem;
  border-radius: 4px;
  max-height: 100%;
  overflow: auto;
  padding-bottom: calc(2rem + constant(safe-area-inset-bottom)) !important;
  padding-bottom: calc(2rem + env(safe-area-inset-bottom)) !important;
}
#coupon-modal,
.coupon-item {
  --color-primary: var(--color-coupon-primary);
  /* --color-secondary: var(--color-coupon-secondary); */
  /* box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.04);/ */
}
.coupon-item-bg {
  background: var(--color-coupon-primary);
}

@media (min-width: 768px) {
  .product-flashsale-item .stock-countdown {
    width: 20rem;
  }
}

.cart-drawer-related-products {
  max-width: calc(1440px - var(--dialog-max-width) - 1.6rem);
  padding-left: 0.8rem;
  margin: auto;
  width: calc(100% - var(--dialog-max-width) - 1.6rem);
}

.cart-releated-products .card-product--horizontal .card-product__cta {
  display: block;
}
.card-product__option.selected .card-product__option-dot {
  box-shadow: none;
}
.card-product__option-dot-lg {
  width: 3.2rem;
  height: 3.2rem;
}
.card-product__option-dot-md {
  width: 2.6rem;
  height: 2.6rem;
}
.card-product__option-dot-sm {
  width: 1.4rem;
  height: 1.4rem;
}
.card-product__option-dot-sm {
  border-radius: 100%;
}

@media (max-width: 1024px) {
  .card-product__option-dot-lg {
    width: 2.4rem;
    height: 2.4rem;
  }
  .card-product__option-dot-md {
    width: 2rem;
    height: 2rem;
  }
  .card-product__option-dot-sm {
    width: 1.4rem;
    height: 1.4rem;
  }
}
.card-product--horizontal form {
  padding-inline: 0;
}
@media (max-width: 767px) {
  .card-product--horizontal form {
    padding-inline: 0;
  }
  .card-product--horizontal form {
    grid-template-columns: 8rem 1fr;
  }
}

.card-product .stock-countdown-inner {
  margin-bottom: var(--spacing-3);
}
@media (max-width: 767px) {
  .card-product .stock-countdown-inner {
    margin-bottom: 0;
  }
}
.slide-in-left {
  -webkit-animation: slide-in-left 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  animation: slide-in-left 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;
}
@-webkit-keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.slide-in-right {
  -webkit-animation: slide-in-right 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94)
    both;
  animation: slide-in-right 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

@-webkit-keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(1000px);
    transform: translateX(1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(1000px);
    transform: translateX(1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
.slide-in-bottom {
  -webkit-animation: slide-in-bottom 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94)
    both;
  animation: slide-in-bottom 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

@-webkit-keyframes slide-in-bottom {
  0% {
    -webkit-transform: translateY(1000px);
    transform: translateY(1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes slide-in-bottom {
  0% {
    -webkit-transform: translateY(1000px);
    transform: translateY(1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
.scale-in-hor-left {
  -webkit-animation: scale-in-hor-left 0.4s ease-out both;
  animation: scale-in-hor-left 0.4s ease-out both;
}

@-webkit-keyframes scale-in-hor-left {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    opacity: 1;
  }
  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    opacity: 1;
  }
}
@keyframes scale-in-hor-left {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    opacity: 0;
  }
  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    opacity: 1;
  }
}
animating:not(.fade-in),
.animating:not(.fade-in) > * {
  opacity: 0;
}
.fade-in {
  -webkit-animation: fade-in 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  animation: fade-in 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.animation-reverse {
  animation-direction: reverse !important;
}

.cro-btn-item .cart-count {
  margin-right: -1.6rem;
  top: -0.4rem;
}
.cro-btns .cart-limit-note,
.cro-btns .cart-vat-note {
  display: none;
}
.cro-btns .cart-total {
  padding: 0;
  flex-direction: column;
}
.cro-btns .cart-submit button {
  padding: 0.8rem;
}
cart-form,
productform {
  transition: opacity 0.3s ease-out;
}
product-form.loading .product-cta {
  pointer-events: none;
  opacity: 0.5;
}

cart-form.loading,
product-form.loading .product-cta {
  pointer-events: none;
}
.cart-item.loading .cart-total-col .price,
cart-form.loading .cart-total .price {
  display: none;
}

cart-form.loading .cart-total .loading-icon,
.cart-item.loading .cart-total-col .loading-icon {
  display: inline-flex;
  color: var(--color-neutral-50);
  height: 1.6rem;
}
product-form.loading .product-cta .btn .loading-icon {
  display: none;
}

.variant-picker__input input.disabled ~ label {
  opacity: 0.5;
  position: relative;
  overflow: hidden;
}

.variant-picker__input input.disabled ~ label:after {
  content: "";
  width: 100%;
  height: 1px;
  background: var(--color-neutral-100);
  position: absolute;
  transform: rotate(200deg) scale(1.1);
  left: 0;
}
.variant-picker__input input.disabled ~ label.color-swatch:after {
  transform: rotate(220deg) scale(1.1);
}
.portal--modal .portal-close-button {
  position: absolute;
  right: 1.2rem;
  top: -4.4rem;
}

@media (max-width: 767px) {
  .portal--modal .portal-close-button {
    right: auto;
    left: 0.8rem;
  }
}

.sapo-product-reviews-badge .sapo-product-reviews-star i {
  font-size: var(--font-size-body) !important;
}

.bpr-success-popup .icon-checked {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (max-width: 975px) {
  #product-review {
    display: block;
  }
}
.tiktok-embed {
  margin: 0 auto !important;
}

@media (max-width: 767px) {
  .gallery-main {
    position: relative;
  }
}

.card-product__badges:has(.product-promo-tag) {
  display: block;
}
.card-product__title {
  --font-size-body: 1.6rem;
  font-size: var(--font-size-body);
  font-weight: 500;
  line-height: 1.4;
}
@media (max-width: 767px) {
  .card-product__title {
    --font-size-body: 1.4rem;
  }
}
.card-product--vertical.card-product__title {
  min-height: calc(var(--font-size-body) * 1.4 * 2);
}
.cro-btns {
  display: none;
}

@media (max-width: 767px) {
  .cro-btns:has(.cro-btn-item) {
    display: block;
  }
}
.promo-box__body p {
  margin: 0;
}
.promo-box__body ol,
.promo-box__body ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: var(--spacing-2);
}

@media (max-width: 992px) {
  .promo-box__body ol,
  .promo-box__body ul {
    grid-template-columns: 1fr;
  }
}

.tiktok-embed {
  border-radius: var(--rounded);
}

.btn.coupon-expired {
  color: var(--color-neutral-400);
  background: var(--color-neutral-50);
  border-color: var(--color-neutral-50);
  filter: none;
  opacity: 1;
}

.flashsale-ended .tab-content {
  display: none;
}

.flashsale-ended .flashsale-end-message {
  display: block;
  padding: var(--spacing-6) var(--spacing-2);
}
.flashsale-ended .flashsale-nav {
  display: none;
}

.heading-bar {
  position: relative;
}
.heading-bar a:hover {
  opacity: var(--color-link);
}
.heading {
  font-size: var(--font-size-h3);
  position: relative;
  z-index: 1;
  width: auto;
  display: inline-block;
  font-weight: var(--font-headings-weight);
  font-family: var(--font-headings-family);
}
.heading-bar .heading {
  text-wrap: pretty;
}
.heading-bar .heading .heading-icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 45px;
  height: 45px;
  object-fit: contain;
}
.section-flashsale--single .flashsale__countdown-timer {
  flex-direction: column;
}
.heading:not([class*="mb"]) {
  margin-bottom: 4rem;
}
@media (max-width: 767px) {
  .heading {
    font-size: var(--font-size-h3);
  }
  .heading:not([class*="mb"]) {
    margin-bottom: 2.4rem;
  }
}
.heading:has(.heading-icon) {
  padding-right: 45px;
}

.section-card {
  /* background: var(--color-background); */
}
@media (max-width: 767px) {
  .heading {
    font-size: var(--font-size-h4);
    margin-bottom: 1.2rem;
  }
}
.card-article__desc {
 // min-height: calc(var(--font-size-body) * 1.5 * 3);
}

.card-article__title {
  min-height: calc(var(--font-size-body) * 1.5 * 2);
}

.section-main-cart .cart-summary-info {
  position: relative;
}
.section-main-cart .cart-summary-info:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  box-shadow: 0px 0.8rem 2.4rem 0px var(--primary-color);
  top: 0;
  left: 0;
  opacity: 0.1;
  z-index: -1;
}

@media (max-width: 976px) {
  .header-search {
    display: none;
  }
  .search-opener {
    display: block;
  }
}

.landing-page-section.section-flashsale:before,
.landing-page-section.section-flashsale:after {
  content: none;
}
.product-flashsale-item:has(.not-started),
.product-flashsale-item:has(.ended) {
  display: none;
}
.product-flashsale-item:has(.active.ongoing) ~ .product-flashsale-item {
  display: none;
}

.compare-opener {
  position: fixed;
  bottom: 60px;
  display: block;
  top: auto !important;
  left: 25px;
  transform: translateY(-50%) scale(1);
  z-index: 999;
}
.compare-opener button {
  box-shadow: 0px 12px 32px 0px rgba(0, 0, 0, 0.2);
}

.compare-opener.hidden {
  transform: translateY(-50%) scale(0);
  display: none;
}
#error-modal {
  --dialog-index: 4000;
}
#error-modal .portal-inner {
  max-width: 30rem;
}

.content {
  word-break: break-word;
}

.section-products:has(.no-products) {
  display: none !important;
}

.footer-copyright {
  text-wrap: balance;
}

.card-product--vertical:after {
  opacity: 0.7;
}

.ega-badge-ctd__h {
  position: relative;
  height: 1em;
  overflow: hidden;
  line-height: 1;
}
.ega-badge-ctd--transition::before {
  transition: all 1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.ega-badge-ctd--animate:before {
  position: relative;
  content: "00\a 01\a 02\a 03\a 04\a 05\a 06\a 07\a 08\a 09\a 10\a 11\a 12\a 13\a 14\a 15\a 16\a 17\a 18\a 19\a 20\a 21\a 22\a 23\a 24\a 25\a 26\a 27\a 28\a 29\a 30\a 31\a 32\a 33\a 34\a 35\a 36\a 37\a 38\a 39\a 40\a 41\a 42\a 43\a 44\a 45\a 46\a 47\a 48\a 49\a 50\a 51\a 52\a 53\a 54\a 55\a 56\a 57\a 58\a 59\a";
  white-space: pre;
  top: calc(var(--value) * -1em);
  text-align: center;
}
.product-detail
  .module-buyxgety
  .list-product-buyxgety
  .item-product-buyxgety
  .product-content-buyxgety
  .product-title-buyxgety {
  white-space: initial;
}

.heading-tabs .tab-btn.active {
}

.spl-pane iframe {
  width: 90%;
  height: 90%;
}

#contact_map iframe {
  height: 100%;
}

.card-product .sapo-buyxgety-badge {
  top: auto;
  bottom: 15px;
  right: 15px;
  min-width: 20px;
}

.card-product .sapo-buyxgety-badge .icon-buyxgety {
  max-width: 20px;
}

.card-product .sapo-combo-badge {
  position: absolute;
  left: 15px;
  z-index: 2;
  min-width: 50px;
  bottom: 15px;
  top: auto;
  right: auto;
  font-size: 8px;
}

.card-product .sapo-combo-badge .label-text {
  border-radius: 4px;
}
.card-product .sapo-combo-badge .label-text + .label-text {
  display: none;
}
.ae-lang-selected a {
  display: flex;
  white-space: nowrap;
  overflow: ;
}
img.ae-icon-left {
  object-fit: contain;
  width: 16px;
}

.ae-type-dropdown {
  display: flex;
  align-items: center;
}
.ae-lang-selected a .ae-caret {
  width: auto;
}
.ae-lang-selected a span {
  display: none;
}
.ae-box-lang a span {
  display: inline;
}
#desktop-lang {
  min-width: 50px;
}

.prose :where(img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
  display: inline-block;
}

.no-products {
  display: none;
}
.no-products-content .embla__buttons,
.no-products-content .embla__dots {
  display: none;
}
.sapo-product-reviews-badge:empty {
  display: none;
}

.product-cta .btn,
.product-contact__link {
  min-height: 60px;
}

.product-contact__zalo {
  --color-button-primary: #288ad6;
  --color-button-primary-text: white;
}
.product-contact__messenger {
  --color-button-primary: #3180f3;
  --color-button-primary-text: white;
}
.product-contact__phone {
  --color-button-primary: #d0cfcf;
  --color-button-primary-text: #000;
}

.product-contact__phone:hover {
  filter: brightness(0.9);
}

.btn-live {
  border-radius: 5px;
  padding: 4px 10px 4px 22px;
  color: var(--header-live-color);
  border: 1px solid var(--header-live-color);
  background: transparent;
  outline: none;
  position: relative;
  white-space: nowrap;
  text-overflow: ellipsis;
  vertical-align: middle;
  max-width: 130px;
  cursor: pointer !important;
  overflow: hidden;
  font-size: 13px;
}
.btn-live:after {
  content: " ";
  background: var(--header-live-color);
  width: 8px;
  height: 8px;
  position: absolute;
  left: 7px;
  top: calc(50% - 4px);
  border-radius: 50%;
  animation: pulse-red 1.65s linear infinite;
}

@media (max-width: 991px) {
  .btn-live {
    padding: 2px 5px 0px 20px;
  }
  .btn-live:after {
    left: 6px;
  }
}

@media (max-width: 767px) {
  .addThis_listSharing .btn-live {
    padding: 0;
    width: 40px;
    font-size: 10px;
    height: 40px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    border: none;
  }

  .btn-live:after {
    content: " ";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
  }
}

@keyframes pulselive {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 0.3;
  }
}
@keyframes pulse-red {
  0% {
    transform: scale(0.8);
    box-shadow: 0 0 0 0 var(--header-live-color);
  }

  70% {
    transform: scale(1);
    box-shadow: 0 0 0 10px rgba(255, 82, 82, 0);
  }

  100% {
    transform: scale(0.8);
    box-shadow: 0 0 0 0 rgba(255, 82, 82, 0);
  }
}

/** end naviagtion **/

.modal-live {
  position: fixed;
  max-width: 45%;
  max-height: 75%;
  bottom: 5px;
  top: auto !important;
  left: 50%;
  z-index: 9999;
  transform: translateY(calc(100% + 5px)) translateX(-50%);
  -webkit-transition: all 500ms ease-in-out;
  -moz-transition: all 500ms ease-in-out;
  -ms-transition: all 500ms ease-in-out;
  -o-transition: all 500ms ease-in-out;
  transition: all 500ms ease-in-out;
}
@media (max-width: 767px) {
  .modal-live {
    display: none !important;
  }
}
.modal-live.opened {
  transform: translateY(0) translateX(-50%);
}

.modal-live .btn-close--live {
  position: absolute;
  right: -40px;
  top: 0;
  cursor: pointer;
  opacity: 0;
  padding: 0 10px;
}
.modal-live iframe {
  border-radius: 10px;
  display: block;
  width: 100%;
  height: 100%;
}
.modal-live .modal-live--inner {
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12);
}

.modal-live:hover .btn-close--live {
  opacity: 1;
}

.btn--soldout:not(.hidden) {
  display: flex;
  justify-content: center;
  align-items: center;
}

.price {
  font-family: var(--font-body-family);
}
.compare-price {
  font-family: var(--font-body-family);
}

.aspect-custom {
  aspect-ratio: var(--aspect-ratio);
}
cart-form .product-list > div {
  min-width: 270px;
}

.link-underline {
  text-decoration: none;
  background-image: linear-gradient(currentColor, currentColor);
  background-position: 0% 100%;
  background-repeat: no-repeat;
  background-size: 0% 1px;
  transition: background-size 300ms, color 300ms, width 300ms;
  padding-block-end: 3px;
}
.link-underline:hover {
  background-size: 100% 1px;
}
.main-product {
  --header-offset: 1.2rem;
}
.header-pinned .main-product {
  --header-offset: calc(var(--header-height) - 1.2rem);
}

.font-semibold {
  font-weight: 500;
}
@media(min-width: 1025px){
  .product-bundle-list:has(.active) .product-bundle-card:not(.active) {
    opacity: 0.5;
  }
}


.tab-btn.active {
  background-size: 100% 1px;
}

.scrolling-promotion {
  display: flex;
  overflow: hidden;
}

.scrolling-promotion__container {
  display: flex;
  flex: 0 0 auto;
  width: max-content;
  align-items: center;
}

.scrolling-promotion__container:hover .scrolling-promotion--animated {
  animation-play-state: paused;
}

.scrolling-promotion__item {
  position: relative;
}

@media (min-width: 768px) {
  .scrolling-promotion__item img,
  .scrolling-promotion__item svg {
    height: var(--image-height, 100%);
  }
}

.scrolling-promotion--animated {
  animation: scroll var(--animate-duration, 12s) linear infinite;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-duration: var(--animate-duration, 12s);
  animation-play-state: running;
  will-change: transform;
}

.scrolling-promotion--ltr.scrolling-promotion--animated {
  animation-direction: reverse;
}

.scrolling-promotion--paused.scrolling-promotion--animated,
.scrolling-promotion--hover-pause:hover .scrolling-promotion--animated {
  animation-play-state: paused;
}

@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

.card-product,
.product-gallery {
  --aspect-ratio: var(--product-aspect-ratio, 1 / 1);
}

@media (max-width: 767px) {
  .hot-spot-item[open]{
    z-index: 9000;
  }
  .hot-spot-overlay{
    top: 0!important;
  }
  .hot-spot-content.fixed{
    top: auto!important;
    left: 0 !important;
  }
}



.tiktok-embed:not([data-embed-type]){
	max-width: max-content!important;
}

@media (max-width: 767px) {


.tiktok-embed:not([data-embed-type]){
	max-width: 100%!important;
}
}
.btn.loading .btn-label{
	display: none
}

/* Tăng kích thước voucher giảm giá */
.coupon-item,
.coupon_item,
.voucher-item,
.voucher_item,
.ega-coupon,
.ega-coupon-item,
.section_coupon .item,
.section-coupon .item,
.home-coupon .item {
  width: 380px !important;
  min-width: 380px !important;
  height: auto !important;
  min-height: 150px !important;
  padding: 16px !important;
  overflow: visible !important;
}

/* Cho nội dung voucher hiển thị đầy đủ, không bị cắt chữ */
.coupon-item *,
.coupon_item *,
.voucher-item *,
.voucher_item *,
.ega-coupon *,
.ega-coupon-item * {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  -webkit-line-clamp: unset !important;
}

/* Tăng chữ trong voucher */
.coupon-item,
.coupon_item,
.voucher-item,
.voucher_item,
.ega-coupon,
.ega-coupon-item {
  font-size: 16px !important;
  line-height: 1.4 !important;
}

/* Tăng tiêu đề voucher: Miễn phí vận... */
.coupon-item .title,
.coupon_item .title,
.voucher-item .title,
.voucher_item .title,
.ega-coupon .title,
.ega-coupon-item .title {
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

/* Chỉnh nút sao chép để không che chữ */
.coupon-item button,
.coupon_item button,
.voucher-item button,
.voucher_item button,
.ega-coupon button,
.ega-coupon-item button,
.coupon-item .btn,
.coupon_item .btn,
.voucher-item .btn,
.voucher_item .btn {
  position: relative !important;
  right: auto !important;
  bottom: auto !important;
  margin-top: 8px !important;
  padding: 8px 14px !important;
  font-size: 14px !important;
  width: auto !important;
  height: auto !important;
}

.review-video__item .relative{
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
transition: all .25s ease;
}

.review-video__item:hover .relative{
    transform:translateY(-3px);
    box-shadow:0 14px 32px rgba(0,0,0,.12);
}

/* ===== BO GÓC ẢNH MIX & MATCH ===== */
.review-video__item .relative {
    border-radius: 12px !important;
    overflow: hidden !important;
}

/* ===== BO GÓC ẢNH TIN TỨC ===== */
.card-article__image,
.card-article__image > a {
    display: block !important;
    border-radius: 12px !important;
    overflow: hidden !important;
}

.card-article__image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 12px !important;
}

/* ===== MỞ RỘNG KHUNG WEB ===== */
@media (min-width: 1400px) {
  .container{
      max-width: 1760px !important;
      width: calc(100% - 40px);
      padding-left: 20px;
      padding-right: 20px;
  }
}

/* ===== Chuẩn hóa khung ảnh sản phẩm ===== */
.card-product__image,
.card-product__image-2{
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: translate(-50%,-50%) scale(0.90) !important;
}
/* Giá nguyên giá: màu đen */
.card-product .price-box .price {
  color: #111 !important;
}

/* Sản phẩm có giá gốc/gạch ngang = đang sale: giá bán màu đỏ */
.card-product .price-box:has(.inline-flex span) .price {
  color: #ef3340 !important;
}

/* Giá gốc của sản phẩm sale: màu xám */
.card-product .price-box .inline-flex span {
  color: #999 !important;
}

/* ===== VHT SPORT - VIẾT HOA HÃNG SẢN XUẤT ===== */

[data-group="vendor"] label,
[data-group="vendor"] .checkbox-label,
[data-group="vendor"] span,
.filter-vendor label,
.filter-vendor span {
    text-transform: uppercase !important;
    letter-spacing: 0.5px;
}

/* ===== VHT SPORT - TĂNG CỠ CHỮ TOÀN BỘ BỘ LỌC ===== */

/* Các lựa chọn trong bộ lọc */
.collection-filter .aside-item label.custom-checkbox,
.collection-filter .aside-item label.custom-checkbox span {
    font-size: 16px !important;
    line-height: 24px !important;
}

/* Tiêu đề: Giá, Hãng sản xuất, Loại sản phẩm, Tags */
.collection-filter .aside-title {
    font-size: 17px !important;
    line-height: 25px !important;
    font-weight: 700 !important;
}

/* Tăng khoảng cách giữa từng lựa chọn */
.collection-filter .filter-item {
    margin-bottom: 7px !important;
}

/* ==========================================================
   VHT SPORT - PREMIUM FILTER (Nike / ON Style)
   Dán ở CUỐI file custom.css
========================================================== */

/* ===== Tiêu đề nhóm ===== */

.collection-filter .aside-title{
    font-size:22px !important;
    font-weight:700 !important;
    color:#111 !important;
    margin-bottom:18px !important;
    letter-spacing:.2px;
}

/* ===== Khoảng cách giữa các nhóm ===== */

.collection-filter .aside-item{
    padding:26px 0 !important;
    border-color:#ececec !important;
}

/* ===== Khoảng cách giữa từng dòng ===== */

.collection-filter .filter-item{
    margin-bottom:10px !important;
}

/* ===== Label ===== */

.collection-filter label.custom-checkbox{
    font-size:17px !important;
    font-weight:500 !important;
    color:#222 !important;
    line-height:30px !important;
    transition:.2s;
}

/* ===== Tất cả span bên trong ===== */

.collection-filter label.custom-checkbox span{
    font-size:17px !important;
    line-height:30px !important;
}

/* ===== Hãng viết hoa ===== */

.collection-filter .filter-vendor label,
.collection-filter .filter-vendor span,
.collection-filter [for*="vendor"]{
    text-transform:uppercase !important;
    letter-spacing:.5px;
}

/* ===== Hover ===== */

.collection-filter label.custom-checkbox:hover{
    color:#ef3340 !important;
}

/* ===== Checkbox / Radio to hơn ===== */

.collection-filter input[type="checkbox"],
.collection-filter input[type="radio"]{
    width:20px !important;
    height:20px !important;
    margin-right:10px !important;
    cursor:pointer;
}

/* ===== Circle đẹp hơn ===== */

.collection-filter .checkmark,
.collection-filter .custom-checkbox-box{
    width:20px !important;
    height:20px !important;
    border:1.5px solid #cfcfcf !important;
    border-radius:50% !important;
    transition:.2s;
}

/* ===== Hover circle ===== */

.collection-filter label:hover .checkmark,
.collection-filter label:hover .custom-checkbox-box{
    border-color:#ef3340 !important;
}

/* ===== Đang tick ===== */

.collection-filter input:checked + .checkmark,
.collection-filter input:checked + .custom-checkbox-box{
    background:#ef3340 !important;
    border-color:#ef3340 !important;
}

/* ===== Giá ===== */

.collection-filter .filter-price label,
.collection-filter .filter-price span{
    font-size:17px !important;
    font-weight:500 !important;
}

/* ===== Animation ===== */

.collection-filter label{
    transition:all .18s ease;
}

.collection-filter label:hover{
    transform:translateX(3px);
}

/* ===== Đường kẻ ===== */

.collection-filter hr,
.collection-filter .aside-item{
    border-color:#ededed !important;
}

/* ===== Xem thêm ===== */

.collection-filter .filter-toggle{
    font-size:15px !important;
    font-weight:600 !important;
}

/* ===== Mobile ===== */

@media (max-width:768px){

.collection-filter .aside-title{
    font-size:20px !important;
}

.collection-filter label.custom-checkbox,
.collection-filter label.custom-checkbox span{
    font-size:16px !important;
}

}

/* ==========================================================
   VHT SPORT - PREMIUM COLLECTION FILTER
   Phong cách gọn, thoáng, gần Nike / ON
   Dán ở CUỐI file custom.css
========================================================== */

/* ===== Bố cục tổng thể: sidebar rộng hơn, khoảng cách gọn hơn ===== */

.collection-filter {
    width: 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
}

.collection-filter + * {
    margin-left: 34px !important;
}

/* Một số layout của EGA Chic dùng grid */
@media (min-width: 1024px) {
    .collection-filter,
    .facet-drawer[data-collection] {
        flex: 0 0 280px !important;
    }

    .collection-filter ~ .collection-products,
    .collection-filter ~ .product-list,
    .collection-filter ~ .collection-main {
        width: calc(100% - 314px) !important;
    }
}

/* ===== Tiêu đề nhóm: Giá, Hãng sản xuất, Loại sản phẩm, Tags ===== */

.collection-filter .aside-title,
.collection-filter .filter-title,
.collection-filter .filter-group-title {
    font-size: 20px !important;
    line-height: 28px !important;
    font-weight: 700 !important;
    color: #111111 !important;
    margin: 0 0 18px !important;
    letter-spacing: -0.2px !important;
}

/* ===== Khoảng cách giữa các nhóm filter ===== */

.collection-filter .aside-item {
    padding: 28px 0 !important;
    border-bottom: 1px solid #e9e9e9 !important;
}

.collection-filter .aside-item:first-child {
    padding-top: 0 !important;
}

/* ===== Khoảng cách giữa từng lựa chọn ===== */

.collection-filter .filter-item {
    margin: 0 0 11px !important;
    min-height: 28px !important;
}

.collection-filter .filter-item:last-child {
    margin-bottom: 0 !important;
}

/* ===== Toàn bộ chữ trong filter ===== */

.collection-filter label.custom-checkbox,
.collection-filter label.custom-checkbox span,
.collection-filter .filter-item label,
.collection-filter .filter-item span {
    font-size: 17px !important;
    line-height: 26px !important;
    font-weight: 500 !important;
    color: #202020 !important;
    letter-spacing: -0.1px !important;
}

/* ===== Riêng phần giá: đảm bảo không còn bị bé ===== */

.collection-filter .filter-price label,
.collection-filter .filter-price span,
.collection-filter [class*="filter-price"] label,
.collection-filter [class*="filter-price"] span,
.collection-filter [for*="price"] {
    font-size: 17px !important;
    line-height: 26px !important;
    font-weight: 500 !important;
}

/* ===== Hãng sản xuất viết hoa ===== */

.collection-filter .filter-vendor label,
.collection-filter .filter-vendor span,
.collection-filter [data-group="vendor"] label,
.collection-filter [data-group="vendor"] span,
.collection-filter [for*="filter-vendor"] {
    text-transform: uppercase !important;
    letter-spacing: 0.45px !important;
}

/* ===== Checkbox và radio lớn, cân đối hơn ===== */

.collection-filter input[type="checkbox"],
.collection-filter input[type="radio"] {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    margin: 0 12px 0 0 !important;
    cursor: pointer !important;
}

/* Với checkbox giả lập bằng span/pseudo-element */
.collection-filter .custom-checkbox::before,
.collection-filter .custom-checkbox .checkmark,
.collection-filter .custom-checkbox-box {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    border: 1.5px solid #d2d2d2 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
}

/* Radio giá để tròn */
.collection-filter .filter-price .custom-checkbox::before,
.collection-filter [class*="filter-price"] .custom-checkbox::before,
.collection-filter input[type="radio"] {
    border-radius: 50% !important;
}

/* Checkbox hãng, loại, tag để vuông */
.collection-filter .filter-vendor .custom-checkbox::before,
.collection-filter .filter-type .custom-checkbox::before,
.collection-filter .filter-tag .custom-checkbox::before,
.collection-filter [data-group="vendor"] .custom-checkbox::before {
    border-radius: 2px !important;
}

/* ===== Hover giống website cao cấp ===== */

.collection-filter label.custom-checkbox {
    cursor: pointer !important;
    transition: color 0.18s ease, transform 0.18s ease !important;
}

.collection-filter label.custom-checkbox:hover,
.collection-filter label.custom-checkbox:hover span {
    color: #111111 !important;
}

.collection-filter label.custom-checkbox:hover {
    transform: translateX(3px) !important;
}

.collection-filter label.custom-checkbox:hover::before,
.collection-filter label.custom-checkbox:hover .checkmark,
.collection-filter label.custom-checkbox:hover .custom-checkbox-box {
    border-color: #111111 !important;
}

/* ===== Trạng thái đã chọn: nền đen, chữ đậm ===== */

.collection-filter input:checked + span,
.collection-filter input:checked ~ span {
    color: #111111 !important;
    font-weight: 700 !important;
}

.collection-filter input[type="checkbox"]:checked,
.collection-filter input[type="radio"]:checked {
    accent-color: #111111 !important;
}

.collection-filter input:checked + .checkmark,
.collection-filter input:checked + .custom-checkbox-box {
    background: #111111 !important;
    border-color: #111111 !important;
}

/* ===== Dòng "Xem thêm" ===== */

.collection-filter .filter-toggle,
.collection-filter .toggle-more,
.collection-filter [class*="show-more"] {
    margin-top: 8px !important;
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 600 !important;
    color: #111111 !important;
}

/* ===== Giảm độ dài cảm giác của các khoảng giá ===== */

.collection-filter .filter-price .filter-item,
.collection-filter [class*="filter-price"] .filter-item {
    margin-bottom: 9px !important;
}

/* ===== Tablet và mobile ===== */

@media (max-width: 1023px) {
    .collection-filter {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    .collection-filter + * {
        margin-left: 0 !important;
    }
}

@media (max-width: 767px) {
    .collection-filter .aside-title,
    .collection-filter .filter-title,
    .collection-filter .filter-group-title {
        font-size: 18px !important;
        line-height: 26px !important;
    }

    .collection-filter label.custom-checkbox,
    .collection-filter label.custom-checkbox span,
    .collection-filter .filter-item label,
    .collection-filter .filter-item span {
        font-size: 16px !important;
        line-height: 25px !important;
    }

    .collection-filter .aside-item {
        padding: 22px 0 !important;
    }
}

/* ===== VHT SPORT - FIX HOVER FILTER ===== */

.collection-filter .filter-item label.custom-checkbox:hover,
.collection-filter .filter-item label.custom-checkbox:hover *,
.collection-filter .filter-item:hover label.custom-checkbox,
.collection-filter .filter-item:hover label.custom-checkbox * {
    color: #ef3340 !important;
}

/* Viền checkbox/radio đổi đỏ khi hover */
.collection-filter .filter-item:hover input[type="checkbox"],
.collection-filter .filter-item:hover input[type="radio"],
.collection-filter .filter-item:hover .custom-checkbox::before,
.collection-filter .filter-item:hover .checkmark,
.collection-filter .filter-item:hover .custom-checkbox-box {
    border-color: #ef3340 !important;
}

/* Dòng đang chọn */
.collection-filter .filter-item:has(input:checked) label.custom-checkbox,
.collection-filter .filter-item:has(input:checked) label.custom-checkbox * {
    color: #ef3340 !important;
    font-weight: 700 !important;
}

.collection-filter .aside-title {
    font-size: 19px !important;
    line-height: 27px !important;
}

/* ==========================================================
   VHT SPORT - PREMIUM FILTER FINAL
   Đen / trắng / xám, không còn màu đỏ
========================================================== */

/* ---------- Căn hàng chữ và ô chọn ---------- */
.collection-filter label.custom-checkbox {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;

    color: #242424 !important;
    font-size: 17px !important;
    line-height: 26px !important;
    font-weight: 500 !important;

    cursor: pointer !important;
    transform: none !important;
    transition: color .18s ease, opacity .18s ease !important;
}

/* Bỏ toàn bộ ô giả từ CSS cũ */
.collection-filter label.custom-checkbox::before,
.collection-filter label.custom-checkbox::after {
    content: none !important;
    display: none !important;
}

/* ---------- Thiết kế lại ô thật ---------- */
.collection-filter input.form-checkbox {
    appearance: none !important;
    -webkit-appearance: none !important;

    position: relative !important;
    opacity: 1 !important;
    pointer-events: auto !important;

    flex: 0 0 21px !important;
    width: 21px !important;
    height: 21px !important;
    min-width: 21px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1.5px solid #cfcfcf !important;
    border-radius: 3px !important;
    background-color: #ffffff !important;

    box-shadow: none !important;
    outline: none !important;
    accent-color: #111111 !important;

    cursor: pointer !important;
    transition:
        border-color .18s ease,
        background-color .18s ease,
        box-shadow .18s ease !important;
}

/* ---------- Radio phần Giá ---------- */
.collection-filter .filter-price input.form-checkbox {
    border-radius: 50% !important;
}

/* ---------- Hover: đen/xám, tuyệt đối không đỏ ---------- */
.collection-filter .filter-item:hover label.custom-checkbox,
.collection-filter label.custom-checkbox:hover {
    color: #000000 !important;
    transform: none !important;
}

.collection-filter .filter-item:hover input.form-checkbox,
.collection-filter label.custom-checkbox:hover input.form-checkbox {
    border-color: #666666 !important;
    box-shadow: 0 0 0 4px rgba(0, 0, 0, .045) !important;
}

/* ---------- Checkbox được chọn: đen + tick trắng ---------- */
.collection-filter
.aside-item:not(.filter-price)
input.form-checkbox:checked {
    border-color: #111111 !important;
    background-color: #111111 !important;

    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.4' d='M5 10.5l3 3 7-7'/%3E%3C/svg%3E") !important;

    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 17px 17px !important;

    box-shadow: none !important;
}

/* ---------- Giá được chọn: vòng tròn đen tối giản ---------- */
.collection-filter .filter-price input.form-checkbox:checked {
    border-color: #111111 !important;
    background-color: #111111 !important;
    background-image: none !important;
    box-shadow: inset 0 0 0 5px #ffffff !important;
}

/* ---------- Chữ mục đang chọn: đen, không đỏ ---------- */
.collection-filter label.custom-checkbox:has(input.form-checkbox:checked) {
    color: #111111 !important;
    font-weight: 650 !important;
}

/* Chặn mọi màu đỏ theme gán cho trạng thái checked */
.collection-filter input.form-checkbox:checked,
.collection-filter input.form-checkbox:checked:hover,
.collection-filter input.form-checkbox:checked:focus {
    border-color: #111111 !important;
}

.collection-filter
.filter-item:has(input.form-checkbox:checked)
label.custom-checkbox,
.collection-filter
.filter-item:has(input.form-checkbox:checked)
label.custom-checkbox:hover {
    color: #111111 !important;
}

/* ---------- Khoảng cách từng dòng ---------- */
.collection-filter .filter-item {
    margin-bottom: 13px !important;
}

/* ---------- Tiêu đề nhóm ---------- */
.collection-filter .aside-title {
    color: #181818 !important;
    font-size: 18px !important;
    line-height: 26px !important;
    font-weight: 650 !important;
    letter-spacing: -0.15px !important;
}

/* ---------- Đường phân chia nhóm ---------- */
.collection-filter .aside-item {
    border-bottom: 1px solid #e5e5e5 !important;
}

/* ---------- Hãng sản xuất viết hoa ---------- */
.collection-filter .filter-vendor label.custom-checkbox {
    text-transform: uppercase !important;
    letter-spacing: .45px !important;
}

/* ---------- Chặn màu đỏ tại nút/xóa bộ lọc ---------- */
.collection-filter a,
.collection-filter button,
.collection-filter .filter-item-toggle {
    color: #222222 !important;
}

.collection-filter a:hover,
.collection-filter button:hover,
.collection-filter .filter-item-toggle:hover {
    color: #000000 !important;
}

/* ===== VHT SPORT - GIAO DIỆN BỘ LỌC ===== */

/* Khối bộ lọc */
.filter-container,
.filter-content,
.filter-group {
  font-family: inherit;
}

/* Tiêu đề từng nhóm lọc */
.filter-group .filter-title,
.filter-group-title,
.filter-item-title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #111 !important;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  padding: 14px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid #e8e8e8;
}

/* Khoảng cách danh sách */
.filter-group ul,
.filter-list {
  padding: 10px 0 14px !important;
  margin: 0 !important;
}

/* Từng lựa chọn */
.custom-checkbox,
.filter-item label {
  display: flex !important;
  align-items: center;
  gap: 10px;
  min-height: 36px;
  margin: 0 !important;
  padding: 7px 8px !important;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.2s ease;
}

/* Hover */
.custom-checkbox:hover,
.filter-item label:hover {
  background: #f5f5f5;
}

/* Chữ lựa chọn */
.custom-checkbox span,
.filter-item label span {
  font-size: 14px !important;
  line-height: 1.4;
  color: #222 !important;
}

/* Checkbox gốc */
.custom-checkbox input[type="checkbox"],
.filter-item input[type="checkbox"],
.form-checkbox {
  appearance: none;
  -webkit-appearance: none;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px;
  margin: 0 !important;
  border: 1.5px solid #999 !important;
  border-radius: 3px !important;
  background: #fff;
  position: relative;
  cursor: pointer;
}

/* Checkbox khi chọn */
.custom-checkbox input[type="checkbox"]:checked,
.filter-item input[type="checkbox"]:checked,
.form-checkbox:checked {
  background: #111 !important;
  border-color: #111 !important;
}

/* Dấu tích */
.custom-checkbox input[type="checkbox"]:checked::after,
.filter-item input[type="checkbox"]:checked::after,
.form-checkbox:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 2px;
  width: 4px;
  height: 8px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

/* Nhóm đang mở */
.filter-group {
  border-bottom: 1px solid #ededed;
  margin-bottom: 0 !important;
}

/* Bỏ màu đỏ mặc định */
.filter-group a,
.filter-group label,
.filter-group span {
  color: #222;
}

/* Mobile */
@media (max-width: 767px) {
  .filter-group .filter-title,
  .filter-group-title,
  .filter-item-title {
    font-size: 14px !important;
  }

  .custom-checkbox,
  .filter-item label {
    min-height: 40px;
    padding: 9px 6px !important;
  }
}

/* ==================================================
   VHT SPORT - TRANG SẢN PHẨM LỚN KIỂU SUPERSPORTS
   ================================================== */

@media (min-width: 1024px) {

  /* Mở rộng toàn bộ khu vực sản phẩm */
  .main-product > .container {
    width: calc(100% - 48px) !important;
    max-width: 1600px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Chia hai cột cân đối: ảnh 56%, thông tin 44% */
  .main-product .product-detail {
    grid-template-columns:
      minmax(0, 56fr)
      minmax(440px, 44fr) !important;

    column-gap: 56px !important;
    align-items: start !important;
  }

  /* Hai cột luôn dùng hết diện tích */
  .main-product .product-gallery-wrapper,
  .main-product .product-form-wrapper {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  /* Khung ảnh chính lớn và vuông */
  .main-product .gallery-main,
  .main-product .gallery-main .embla__viewport {
    width: 100% !important;
    max-width: none !important;
  }

  .main-product .gallery-main .embla__slide {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    min-height: 0 !important;
  }

  .main-product .gallery-main-img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  /* Hàng ảnh nhỏ lớn và rõ hơn */
  .main-product .gallery-thumbnails {
    margin-top: 16px !important;
  }

  .main-product .gallery-thumbnails .embla__container {
    gap: 10px !important;
  }

  .main-product .gallery-thumbnails .embla__slide {
    width: 92px !important;
    min-width: 92px !important;
  }

  .main-product .gallery-thumbnails img {
    border-radius: 4px !important;
  }

  /* Tiêu đề và giá bên phải to hơn */
  .main-product .product-form-wrapper h1 {
    font-size: 28px !important;
    line-height: 1.28 !important;
    font-weight: 600 !important;
  }

  .main-product .product-form-wrapper .price,
  .main-product .product-form-wrapper [class*="product-price"] {
    font-size: 27px !important;
    line-height: 1.3 !important;
  }

  /* Nội dung và lựa chọn sản phẩm dễ đọc hơn */
  .main-product .product-form-wrapper {
    font-size: 15px !important;
  }

  .main-product .product-form-wrapper button {
    min-height: 48px;
  }

  /* Nút điều hướng chỉ hiện khi rê chuột vào ảnh */
  .main-product .gallery-main .embla__buttons {
    opacity: 0;
    transition: opacity 0.2s ease;
  }

  .main-product .gallery-main:hover .embla__buttons {
    opacity: 1;
  }

  .main-product .gallery-main .embla__button {
    width: 46px !important;
    height: 46px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.92) !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.14) !important;
  }
}

/* Màn hình cực lớn như iMac */
@media (min-width: 1600px) {
  .main-product > .container {
    max-width: 1680px !important;
  }

  .main-product .product-detail {
    column-gap: 64px !important;
  }

  .main-product .gallery-thumbnails .embla__slide {
    width: 100px !important;
    min-width: 100px !important;
  }
}

/* Đưa nút chuyển ảnh ra ngoài giống Supersports */
.embla__button--prev{
    left:-55px !important;
}

.embla__button--next{
    right:-55px !important;
}

/* Hiệu ứng */
.embla__button{
    width:72px;
    height:72px;
    border-radius:999px;
    background:#fff;
    box-shadow:0 6px 18px rgba(0,0,0,.08);
}

/* Chặn website bị kéo ngang trên điện thoại */
@media (max-width: 767px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
  }

  img,
  video,
  iframe,
  svg {
    max-width: 100%;
    height: auto;
  }
}

/* Accordion nội dung sản phẩm: hover + chuyển động */
.product-content-wide details {
  transition:
    background-color .2s ease,
    border-color .2s ease;
}

.product-content-wide details > summary {
  position: relative;
  padding: 18px 14px !important;
  transition:
    color .2s ease,
    padding-left .2s ease,
    background-color .2s ease;
}

.product-content-wide details > summary::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 2px;
  background: #111;
  transition: width .25s ease;
}

.product-content-wide details > summary:hover {
  color: #111;
  padding-left: 20px !important;
  background: #fafafa;
}

.product-content-wide details > summary:hover::before,
.product-content-wide details[open] > summary::before {
  width: 100%;
}

.product-content-wide details[open] > summary {
  color: #111;
  font-weight: 700;
  background: #fafafa;
}

.product-content-wide details > summary i {
  transition: transform .25s ease;
}

.product-polices .policy-link{
    margin-left:8px;
    color:#111;
    text-decoration:underline;
font-style:italic !important;
    font-size:1.05rem;      /* to hơn */
    font-weight:500;
    transition:.25s;
}

.product-polices .policy-link:hover{
    color:#666;
}

.vht-promo-list{
  margin:0;
  padding-left:22px;
  list-style:disc;
}

.vht-promo-list li{
  margin:8px 0;
  padding-left:2px;
}

.vht-promo-list li::marker{
  color:#111;
  font-size:14px;
}

.vht-promo-list a,
.vht-promo-list span{
  color:#111;
  text-decoration:underline;
  text-underline-offset:3px;
}

.vht-promo-list a:hover{
  color:#666;
}

.promo-box__body{
  display:block !important;
}

.vht-promo-list{
  display:flex !important;
  flex-direction:column !important;
  gap:12px;
  margin:0 !important;
  padding:0 0 0 22px !important;
  list-style:disc !important;
}

.vht-promo-item{
  display:list-item !important;
  margin:0 !important;
  padding-left:2px !important;
  line-height:1.55;
}

.vht-promo-item::marker{
  color:#111;
  font-size:13px;
}

.vht-promo-link,
.vht-promo-text{
  color:#111 !important;
  font-size:16px;
  font-weight:400;
  line-height:1.55;
  text-decoration:underline !important;
  text-underline-offset:3px;
}

.vht-promo-link:hover{
  color:#666 !important;
}

/* VHT - Danh sách khuyến mãi */
.vht-promo-list{
  display:flex !important;
  flex-direction:column !important;
  gap:12px;
  margin:0 !important;
  padding:0 0 0 22px !important;
  list-style:disc !important;
}

.vht-promo-item{
  display:list-item !important;
  margin:0 !important;
  padding-left:2px !important;
  color:#111;
  font-size:16px;
  line-height:1.55;
}

.vht-promo-item::marker{
  color:#111;
  font-size:13px;
}

.vht-promo-text{
  color:#111 !important;
  text-decoration:none !important;
  font-weight:500;
}

.vht-promo-detail{
  display:inline-block;
  margin-left:10px;
  color:#666 !important;
  font-size:13px;
  font-weight:500;
  text-decoration:underline !important;
  text-underline-offset:3px;
  transition:color .2s ease;
}

.vht-promo-detail:hover{
  color:#111 !important;
}

.header-logo img,
.site-logo img,
.logo img,
header .logo a img {
  width: 150px !important;
  height: 24px !important;
  max-width: 150px !important;
  max-height: 24px !important;
}