/* Glitch light text for dark banner */
.nlc-glitch-light .elementor-heading-title,
.nlc-glitch-light {
  color: #ffffff !important;
  text-shadow:
    2px 0 #00e5ff,
    -2px 0 #ff00d4;
}
/* No Limits Club Rewards Banner */
.nlc-rewards-banner {
  position: relative;
  overflow: hidden;
  background: linear-gradient(90deg, #06111d 0%, #071827 55%, #06111d 100%) !important;
}

.nlc-rewards-banner::before,
.nlc-rewards-banner::after {
  content: "";
  position: absolute;
  width: 90px;
  height: 4px;
  background: linear-gradient(90deg, #00e5ff, #ff00d4);
  opacity: 0.9;
  z-index: 1;
}

.nlc-rewards-banner::before {
  left: 0;
  top: 28px;
}

.nlc-rewards-banner::after {
  right: 0;
  bottom: 28px;
}

.nlc-rewards-banner > * {
  position: relative;
  z-index: 2;
}
/* ===== NLC Featured Products - Fixed Layout ===== */

.nlc-featured-products .woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.nlc-featured-products .woocommerce ul.products::before,
.nlc-featured-products .woocommerce ul.products::after {
  display: none !important;
}

.nlc-featured-products .woocommerce ul.products li.product {
  width: auto !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  padding: 18px !important;
  background: #f0f0ee !important;
  border-radius: 10px !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 390px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.nlc-featured-products .woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
  display: block !important;
  width: 100% !important;
}

.nlc-featured-products .woocommerce ul.products li.product img {
  width: 100% !important;
  height: 210px !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 0 14px 0 !important;
  background: #f7f7f5 !important;
  border-radius: 8px !important;
}

.nlc-featured-products .woocommerce ul.products li.product .woocommerce-loop-product__title {
  min-height: 44px !important;
  margin: 0 0 8px 0 !important;
  padding: 0 !important;
  color: #101820 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.nlc-featured-products .woocommerce ul.products li.product .price {
  min-height: 22px !important;
  margin: 0 0 12px 0 !important;
  color: #101820 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.nlc-featured-products .woocommerce ul.products li.product .button {
  margin-top: auto !important;
  align-self: flex-start !important;
  background: #06111D !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  padding: 12px 20px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  line-height: 1 !important;
}

.nlc-featured-products .woocommerce ul.products li.product .tinv-wraper,
.nlc-featured-products .woocommerce ul.products li.product .yith-wcwl-add-to-wishlist {
  margin-top: 16px !important;
  min-height: 24px !important;
}

.nlc-featured-products .woocommerce ul.products li.product .tinv-wraper a,
.nlc-featured-products .woocommerce ul.products li.product .yith-wcwl-add-to-wishlist a {
  color: #a54bd8 !important;
  font-size: 14px !important;
  text-decoration: none !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .nlc-featured-products .woocommerce ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }

  .nlc-featured-products .woocommerce ul.products li.product {
    min-height: 370px !important;
  }

  .nlc-featured-products .woocommerce ul.products li.product img {
    height: 200px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .nlc-featured-products .woocommerce ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .nlc-featured-products .woocommerce ul.products li.product {
    min-height: 330px !important;
    padding: 12px !important;
  }

  .nlc-featured-products .woocommerce ul.products li.product img {
    height: 150px !important;
  }

  .nlc-featured-products .woocommerce ul.products li.product .woocommerce-loop-product__title {
    min-height: 40px !important;
    font-size: 12px !important;
  }

  .nlc-featured-products .woocommerce ul.products li.product .price {
    font-size: 12px !important;
  }

  .nlc-featured-products .woocommerce ul.products li.product .button {
    padding: 10px 14px !important;
    font-size: 12px !important;
  }

  .nlc-featured-products .woocommerce ul.products li.product .tinv-wraper,
  .nlc-featured-products .woocommerce ul.products li.product .yith-wcwl-add-to-wishlist {
    margin-top: 12px !important;
  }
}
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
}

#page,
.site,
.site-content,
.wp-site-blocks,
.entry-content,
.elementor,
.elementor-section,
.elementor-container,
.elementor-widget-wrap {
  max-width: 100% !important;
  overflow-x: hidden;
}
.nlc-glitch-title,
.nlc-glitch-title .elementor-heading-title {
  color: #101820 !important;
  text-shadow:
    3px 0 #00E5FF,
    -3px 0 #FF00D4;
}
/* NO LIMITS CLUB - Product Search */
.ncl-product-search {
  display: flex;
  align-items: center;
  width: 230px;
  height: 40px;
  background: #050505;
  border: 1px solid #2a2a2a;
  overflow: hidden;
}

.ncl-product-search:focus-within {
  border-color: #bfc3c7;
}

.ncl-search-input {
  flex: 1;
  height: 100%;
  min-width: 0;
  padding: 0 14px;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  color: #ffffff !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.ncl-search-input::placeholder {
  color: #8f8f8f;
  opacity: 1;
}

.ncl-search-btn {
  width: 46px;
  height: 100%;
  background: #111111;
  color: #ffffff;
  border: none;
  border-left: 1px solid #2a2a2a;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  transition: 0.25s ease;
}

.ncl-search-btn:hover {
  background: #ffffff;
  color: #050505;
}

/* Ẩn nút X mặc định trong ô search */
.ncl-search-input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

.ncl-search-input::-ms-clear {
  display: none;
}
/* NO LIMITS CLUB - HERO BANNER */
.ncl-hero {
  min-height: 900px;
  display: flex;
  align-items: center;
  position: relative;
  background-color: #050505;
}

.ncl-hero .wp-block-cover__inner-container {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding-left: 6%;
  padding-right: 6%;
}

.ncl-hero-content {
  max-width: 720px;
}

.ncl-hero h1,
.ncl-hero .ncl-hero-title {
  color: #ffffff;
  font-size: clamp(52px, 8vw, 120px);
  line-height: 0.9;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 900;
  margin: 0 0 22px;
}

.ncl-hero .ncl-hero-subtitle {
  color: #ffffff;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.ncl-hero .ncl-hero-desc {
  color: #b8b8b8;
  font-size: 16px;
  line-height: 1.6;
  max-width: 520px;
  margin-bottom: 30px;
}

.ncl-hero-buttons {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.ncl-hero .wp-block-button__link {
  border-radius: 0;
  padding: 14px 30px;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  transition: 0.25s ease;
}

.ncl-btn-main .wp-block-button__link {
  background: #ffffff !important;
  color: #050505 !important;
  border: 1px solid #ffffff;
}

.ncl-btn-main .wp-block-button__link:hover {
  background: #bfc3c7 !important;
  border-color: #bfc3c7;
}

.ncl-btn-outline .wp-block-button__link {
  background: transparent !important;
  color: #ffffff !important;
  border: 1px solid #ffffff;
}

.ncl-btn-outline .wp-block-button__link:hover {
  background: #ffffff !important;
  color: #050505 !important;
}

/* Mobile */
@media (max-width: 768px) {
  .ncl-hero {
    min-height: 680px;
  }

  .ncl-hero .wp-block-cover__inner-container {
    padding-left: 5%;
    padding-right: 5%;
  }

  .ncl-hero h1,
  .ncl-hero .ncl-hero-title {
    font-size: 54px;
  }

  .ncl-hero .ncl-hero-subtitle {
    font-size: 14px;
  }

  .ncl-hero .ncl-hero-desc {
    font-size: 15px;
  }

  .ncl-hero-buttons {
    flex-direction: column;
    gap: 12px;
  }

  .ncl-hero .wp-block-button,
  .ncl-hero .wp-block-button__link {
    width: 100%;
    text-align: center;
  }
}
/* NO LIMITS CLUB - CATEGORY BAR BY BUTTONS */
.ncl-shop-category-section {
  background: #050505;
  border-top: 1px solid #1e1e1e;
  border-bottom: 1px solid #1e1e1e;
  padding: 22px 6%;
  margin: 0;
  overflow: hidden;
}

.ncl-shop-category-section .ncl-shop-cats-buttons {
  width: min(1440px, 100%);
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.ncl-shop-cats-buttons .wp-block-button {
  margin: 0;
}

.ncl-shop-cats-buttons .wp-block-button__link {
  min-height: 40px;
  padding: 0 20px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #0b0b0b !important;
  color: #ffffff !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 0 !important;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.8px;
  line-height: 1;
  transition: 0.25s ease;
}

.ncl-shop-cats-buttons .wp-block-button__link:hover,
.ncl-shop-cats-buttons .ncl-cat-active .wp-block-button__link {
  background: #ffffff !important;
  color: #050505 !important;
  border-color: #ffffff !important;
}

/* Mobile */
@media (max-width: 768px) {
  .ncl-shop-category-section {
    padding: 18px 5%;
  }

  .ncl-shop-category-section .ncl-shop-cats-buttons {
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 10px;
    padding-bottom: 8px;
  }

  .ncl-shop-cats-buttons .wp-block-button {
    flex: 0 0 auto;
  }

  .ncl-shop-cats-buttons .wp-block-button__link {
    white-space: nowrap;
    min-height: 38px;
    padding: 0 16px !important;
    font-size: 11px !important;
  }
}
/* NO LIMITS CLUB - CLICK AVATAR ACCOUNT MENU */
.ncl-avatar-account {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 999999;
}

/* Avatar button */
.ncl-avatar-trigger {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid #2a2a2a;
  background: #0b0b0b;
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: 0.25s ease;
}

.ncl-avatar-trigger:hover {
  background: #ffffff;
  color: #050505;
  border-color: #ffffff;
}

.ncl-avatar-trigger img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}

.ncl-avatar-icon {
  font-size: 18px;
  line-height: 1;
}

/* Panel mặc định bị ẩn */
.ncl-avatar-panel {
  position: absolute;
  top: calc(100% + 14px);
  right: 0;
  width: 280px;
  background: #050505;
  border: 1px solid #2a2a2a;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.55);
  padding: 10px;
  z-index: 999999;

  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  pointer-events: none;

  transition: 0.25s ease;
}

/* Chỉ khi click avatar thì mới hiện */
.ncl-avatar-account.is-open .ncl-avatar-panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

/* Đầu bảng */
.ncl-avatar-panel-head {
  padding: 16px 12px;
  border-bottom: 1px solid #1e1e1e;
  margin-bottom: 8px;
  text-align: center;
}

.ncl-avatar-panel-head img,
.ncl-avatar-circle {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  margin: 0 auto 10px;
  border: 1px solid #2a2a2a;
  background: #111111;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  object-fit: cover;
  font-weight: 900;
}

.ncl-avatar-panel-head strong {
  display: block;
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 4px;
}

.ncl-avatar-panel-head span {
  display: block;
  color: #b8b8b8;
  font-size: 12px;
  line-height: 1.4;
}

/* Link menu */
.ncl-avatar-panel a {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 0 12px;
  color: #ffffff !important;
  text-decoration: none !important;
  border: 1px solid transparent;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  transition: 0.25s ease;
}

.ncl-avatar-panel a:hover {
  background: #ffffff;
  color: #050505 !important;
  border-color: #ffffff;
}

/* Điểm hiện có */
.ncl-avatar-points {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #111111;
  border: 1px solid #2a2a2a;
  padding: 12px;
  margin: 8px 0;
}

.ncl-avatar-points span {
  color: #b8b8b8;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.7px;
}

.ncl-avatar-points strong {
  color: #ffffff;
  font-size: 15px;
  font-weight: 900;
}

.ncl-avatar-logout {
  color: #bfc3c7 !important;
  border-top: 1px solid #1e1e1e !important;
  margin-top: 8px;
}

/* Mobile */
@media (max-width: 768px) {
  .ncl-avatar-panel {
    right: -16px;
    width: 260px;
  }
}
/* NO LIMITS CLUB - NOTIFICATION PAGE */
.ncl-notice-page {
  background: #050505;
  color: #ffffff;
  padding: 90px 6%;
}

.ncl-notice-hero {
  width: min(1200px, 100%);
  margin: 0 auto 36px;
  padding: 46px;
  background: #0b0b0b;
  border: 1px solid #2a2a2a;
}

.ncl-notice-hero span {
  display: block;
  color: #bfc3c7;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.ncl-notice-hero h1 {
  color: #ffffff;
  font-size: clamp(46px, 7vw, 86px);
  line-height: 0.9;
  margin: 0 0 18px;
  text-transform: uppercase;
  font-weight: 900;
  letter-spacing: 1px;
}

.ncl-notice-hero p {
  color: #b8b8b8;
  max-width: 720px;
  font-size: 16px;
  line-height: 1.7;
  margin: 0;
}

.ncl-notice-tabs {
  width: min(1200px, 100%);
  margin: 0 auto 28px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.ncl-notice-tabs a {
  min-height: 40px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #0b0b0b;
  color: #ffffff;
  border: 1px solid #2a2a2a;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.8px;
  transition: 0.25s ease;
}

.ncl-notice-tabs a:hover,
.ncl-notice-tabs a.active {
  background: #ffffff;
  color: #050505;
  border-color: #ffffff;
}

.ncl-notice-list {
  width: min(1200px, 100%);
  margin: 0 auto;
  display: grid;
  gap: 16px;
}

.ncl-notice-item {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 18px;
  background: #0b0b0b;
  border: 1px solid #2a2a2a;
  padding: 22px;
  transition: 0.25s ease;
}

.ncl-notice-item:hover {
  border-color: #bfc3c7;
  transform: translateY(-2px);
}

.ncl-notice-icon {
  width: 54px;
  height: 54px;
  background: #111111;
  border: 1px solid #2a2a2a;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 900;
}

.ncl-notice-top {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 10px;
}

.ncl-notice-top h3 {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  margin: 0;
}

.ncl-notice-top time {
  color: #8f8f8f;
  font-size: 12px;
  white-space: nowrap;
}

.ncl-notice-content p {
  color: #b8b8b8;
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 12px;
}

.ncl-notice-link {
  color: #bfc3c7;
  text-decoration: none;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}

.ncl-notice-link:hover {
  color: #ffffff;
}

.ncl-notice-empty {
  width: min(1200px, 100%);
  margin: 0 auto;
  background: #0b0b0b;
  border: 1px solid #2a2a2a;
  padding: 42px;
  text-align: center;
}

.ncl-notice-empty h2 {
  color: #ffffff;
  font-size: 34px;
  text-transform: uppercase;
  margin: 0 0 12px;
}

.ncl-notice-empty p {
  color: #b8b8b8;
  margin-bottom: 20px;
}

.ncl-notice-actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

.ncl-notice-actions a {
  min-height: 42px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  background: #ffffff;
  color: #050505;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.8px;
}

@media (max-width: 768px) {
  .ncl-notice-page {
    padding: 60px 5%;
  }

  .ncl-notice-hero {
    padding: 30px 22px;
  }

  .ncl-notice-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 8px;
  }

  .ncl-notice-tabs a {
    white-space: nowrap;
    font-size: 11px;
  }

  .ncl-notice-item {
    grid-template-columns: 1fr;
    padding: 18px;
  }

  .ncl-notice-top {
    flex-direction: column;
    gap: 6px;
  }
}
/* NCL - Đổi nền trang thông báo thành trong suốt */
.ncl-notice-page,
.ncl-notice-hero,
.ncl-notice-list,
.ncl-notice-item,
.ncl-notice-empty {
  background: transparent !important;
}

/* Nếu khung tab đang có nền đen thì đổi thành trong suốt */
.ncl-notice-tabs,
.ncl-notice-tabs a {
  background: transparent !important;
}

/* Giữ viền mảnh để vẫn nhìn rõ bố cục */
.ncl-notice-hero,
.ncl-notice-item,
.ncl-notice-empty,
.ncl-notice-tabs a {
  border-color: rgba(255, 255, 255, 0.18) !important;
}

/* Nút tab bình thường trong suốt */
.ncl-notice-tabs a {
  color: #ffffff !important;
}

/* Nút đang chọn vẫn nổi bật */
.ncl-notice-tabs a.active,
.ncl-notice-tabs a:hover {
  background: #ffffff !important;
  color: #050505 !important;
  border-color: #ffffff !important;
}

/* Icon thông báo cũng trong suốt */
.ncl-notice-icon {
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
}

/* Nếu theme hoặc block cha đang có nền đen */
.page-id-THAY_ID_TRANG_THONG_BAO .entry-content,
.page-id-THAY_ID_TRANG_THONG_BAO .wp-site-blocks,
.page-id-THAY_ID_TRANG_THONG_BAO main {
  background: transparent !important;
}
/* ================================
   NCL - FIX NOTIFICATION TAB STYLE
================================ */

/* Toàn trang thông báo không dùng nền đen đặc */
.ncl-notice-page {
  background: transparent !important;
}

/* Khung chứa các tab */
.ncl-notice-tabs {
  width: min(1200px, 100%) !important;
  margin: 0 auto 32px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;

  gap: 14px !important;
  padding: 18px 22px !important;

  background: rgba(18, 18, 42, 0.58) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 18px !important;

  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;

  box-sizing: border-box !important;
}

/* Nút tab */
.ncl-notice-tabs a {
  height: 44px !important;
  min-height: 44px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 0 22px !important;
  margin: 0 !important;

  background: rgba(255, 255, 255, 0.05) !important;
  color: #ffffff !important;

  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 12px !important;

  line-height: 1 !important;
  text-align: center !important;
  vertical-align: middle !important;

  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;

  box-sizing: border-box !important;
  transition: 0.25s ease !important;
}

/* Nút đang chọn */
.ncl-notice-tabs a.active {
  background: #ffffff !important;
  color: #050505 !important;
  border-color: #ffffff !important;
}

/* Hover */
.ncl-notice-tabs a:hover {
  background: #ffffff !important;
  color: #050505 !important;
  border-color: #ffffff !important;
}

/* Bo tròn các khung khác trong trang thông báo */
.ncl-notice-hero,
.ncl-notice-item,
.ncl-notice-empty {
  background: rgba(18, 18, 42, 0.50) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 18px !important;

  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

/* Icon trong từng thông báo */
.ncl-notice-icon {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 12px !important;
}

/* Mobile */
@media (max-width: 768px) {
  .ncl-notice-tabs {
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    padding: 14px !important;
    gap: 10px !important;
    border-radius: 16px !important;
  }

  .ncl-notice-tabs a {
    flex: 0 0 auto !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 16px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
    border-radius: 10px !important;
  }
}
/* ================================
   NCL - NOTIFICATION TABS SPACE THEME
   Phù hợp nền vũ trụ đen/vàng/cam
================================ */

/* Khung chứa tab */
.ncl-notice-tabs {
  width: min(1200px, 100%) !important;
  margin: 0 auto 32px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;

  gap: 14px !important;
  padding: 20px 24px !important;

  background: rgba(5, 7, 18, 0.58) !important;
  border: 1px solid rgba(216, 178, 95, 0.28) !important;
  border-radius: 20px !important;

  box-shadow:
    0 0 22px rgba(216, 178, 95, 0.10),
    inset 0 0 24px rgba(255, 255, 255, 0.035) !important;

  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;

  box-sizing: border-box !important;
}

/* Nút tab bình thường */
.ncl-notice-tabs a {
  height: 46px !important;
  min-height: 46px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 0 24px !important;
  margin: 0 !important;

  background: rgba(10, 12, 25, 0.72) !important;
  color: #f5f1e6 !important;

  border: 1px solid rgba(216, 178, 95, 0.24) !important;
  border-radius: 14px !important;

  line-height: 1 !important;
  text-align: center !important;

  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.9px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;

  box-shadow:
    inset 0 0 14px rgba(255, 255, 255, 0.035),
    0 0 12px rgba(0, 0, 0, 0.35) !important;

  transition: 0.25s ease !important;
}

/* Nút đang chọn */
.ncl-notice-tabs a.active {
  background: linear-gradient(135deg, #fff7df 0%, #d8b25f 100%) !important;
  color: #050505 !important;
  border-color: #f1d99b !important;

  box-shadow:
    0 0 18px rgba(216, 178, 95, 0.32),
    inset 0 0 12px rgba(255, 255, 255, 0.28) !important;
}

/* Hover nút */
.ncl-notice-tabs a:hover {
  background: rgba(216, 178, 95, 0.18) !important;
  color: #ffffff !important;
  border-color: rgba(241, 217, 155, 0.65) !important;

  box-shadow:
    0 0 18px rgba(216, 178, 95, 0.22),
    inset 0 0 14px rgba(255, 255, 255, 0.06) !important;
}

/* Mobile */
@media (max-width: 768px) {
  .ncl-notice-tabs {
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    padding: 14px !important;
    gap: 10px !important;
    border-radius: 18px !important;
  }

  .ncl-notice-tabs a {
    flex: 0 0 auto !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 18px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
    border-radius: 12px !important;
  }
}
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

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

.site,
.site-content,
.content-area,
.entry-content,
.wp-site-blocks,
.elementor,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap,
.e-con,
.e-con-inner {
  max-width: 100% !important;
}
@media (max-width: 767px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  .site,
  .site-content,
  .content-area,
  .entry-content,
  .wp-site-blocks,
  .elementor,
  .elementor-section,
  .elementor-container,
  .elementor-column,
  .elementor-widget-wrap,
  .e-con,
  .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .elementor-widget-wrap,
  .e-con,
  .e-con-inner {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  h1,
  h2,
  h3,
  p,
  span,
  a,
  div {
    max-width: 100%;
  }

  h1,
  h2,
  h3 {
    overflow-wrap: anywhere;
    word-break: normal;
  }

  table {
    display: block;
    width: 100%;
    overflow-x: auto;
  }

  .woocommerce ul.products {
    width: 100% !important;
    max-width: 100% !important;
  }
}
@media (max-width: 767px) {
  /* Xóa khoảng trống dư của khu vực chứa Smart Slider trên mobile */
  .n2-section-smartslider,
  .n2-ss-slider,
  .n2-ss-slider-wrapper,
  .n2-ss-align,
  .elementor-widget-shortcode,
  .elementor-shortcode {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Ép khung shortcode không tạo chiều cao dư */
  .elementor-widget-shortcode {
    line-height: 0 !important;
  }

  .elementor-widget-shortcode .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Không cho slider tạo vùng trống ngoài nội dung */
  .n2-ss-slider {
    overflow: hidden !important;
  }
}
/* FIX WPForms full width trong Flex Container */
.ncl-contact-form-box,
.ncl-contact-form-box .wp-block-shortcode,
.ncl-contact-form-box .wpforms-container,
.ncl-contact-form-box form.wpforms-form,
.ncl-contact-form-box .wpforms-field-container {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* Ép toàn bộ field lấp đầy khung */
.ncl-contact-form-box .wpforms-field,
.ncl-contact-form-box .wpforms-field-row,
.ncl-contact-form-box .wpforms-field-row-block,
.ncl-contact-form-box input,
.ncl-contact-form-box select,
.ncl-contact-form-box textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Input / textarea nhìn đồng bộ với giao diện */
.ncl-contact-form-box input,
.ncl-contact-form-box select,
.ncl-contact-form-box textarea {
  background: rgba(10, 12, 25, 0.72) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  min-height: 46px !important;
}

/* Textarea cao hơn */
.ncl-contact-form-box textarea {
  min-height: 160px !important;
}

/* Label */
.ncl-contact-form-box .wpforms-field-label {
  color: #ffffff !important;
  font-weight: 900 !important;
  margin-bottom: 8px !important;
}

/* Nút SEND MESSAGE full ngang */
.ncl-contact-form-box .wpforms-submit-container,
.ncl-contact-form-box button[type="submit"],
.ncl-contact-form-box .wpforms-submit {
  width: 100% !important;
  max-width: 100% !important;
}

.ncl-contact-form-box .wpforms-submit {
  height: 50px !important;
  background: linear-gradient(135deg, #fff7df 0%, #d8b25f 100%) !important;
  color: #050505 !important;
  border: none !important;
  border-radius: 14px !important;
  font-weight: 900 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

/* Nếu field Name bị tách Tên/Họ quá nhỏ thì cho nó full */
.ncl-contact-form-box .wpforms-field-name .wpforms-field-row {
  display: flex !important;
  gap: 18px !important;
}

.ncl-contact-form-box .wpforms-field-name .wpforms-field-row-block {
  flex: 1 1 0 !important;
}

/* Mobile: Tên/Họ xếp dọc */
@media (max-width: 768px) {
  .ncl-contact-form-box .wpforms-field-name .wpforms-field-row {
    display: block !important;
  }

  .ncl-contact-form-box .wpforms-field-name .wpforms-field-row-block {
    width: 100% !important;
    margin-bottom: 14px !important;
  }
}