/* =========================================================
   HATI · THEME OVERRIDE — Final consistent colors & fonts
   Áp cho TẤT CẢ trang · Fix contrast · Fix readability
   ========================================================= */

/* ============ TYPOGRAPHY — Inter mọi chỗ ============ */
html, body, .header, .topbar, .footer, input, button, textarea, select, .drawer, .mega,
.hero__title, .hero__title-premium, .pd-title, .review__text, .product__name,
.post__title, .post-card__title, .section-head h1, .section-head h2 {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
/* Chỉ giữ Cormorant cho em italic */
em {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic;
}

/* ============ PALETTE · CSS variables ============ */
:root {
  --c-bg:        #0A0A0A;     /* nền đen chính */
  --c-bg-soft:   #141414;     /* nền phụ */
  --c-surface:   #1A1A1A;     /* card */
  --c-text:      #F5F1E8;     /* chữ chính - kem */
  --c-text-soft: #D8D3C3;     /* chữ phụ */
  --c-muted:     #A09A87;     /* chữ mờ */
  --c-gold:      #C9A96E;     /* gold chính */
  --c-gold-light:#E5CC8F;     /* gold sáng */
  --c-gold-dark: #8B7746;     /* gold tối */
  --c-line:      rgba(201,169,110,0.18);
  --c-line-soft: rgba(201,169,110,0.1);
}

/* ============ TEXT COLORS — toàn site ============ */
body { color: var(--c-text) !important; background: var(--c-bg) !important; }

h1, h2, h3, h4, h5, h6 { color: #FFFFFF !important; }
p { color: var(--c-text) !important; }
strong, b { color: #FFFFFF !important; font-weight: 700; }
small { color: var(--c-muted) !important; }

a { color: var(--c-gold-light); transition: color .2s ease; }
a:hover { color: var(--c-gold); }

/* ============ PRODUCT CARDS — fix price visibility ============ */
.product,
article.product {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.product:hover { border-color: var(--c-gold) !important; }

.product__brand {
  color: var(--c-gold) !important;
  letter-spacing: 0.18em !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
}
.product__name {
  color: #FFFFFF !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}
.product__rating { color: var(--c-gold) !important; }
.product__rating span { color: var(--c-muted) !important; }

.product__price__current,
.product__price-now,
.pd-price__now {
  color: var(--c-gold) !important;
  font-weight: 700 !important;
}
.product__price__old,
.product__price-old,
.pd-price__old {
  color: var(--c-muted) !important;
  text-decoration: line-through;
}
.product__btn {
  background: var(--c-gold) !important;
  color: var(--c-bg) !important;
  font-weight: 600 !important;
  transition: background .2s ease !important;
}
.product__btn:hover {
  background: var(--c-gold-light) !important;
  color: var(--c-bg) !important;
}
.product__tag,
.product__tag--gold {
  background: var(--c-gold) !important;
  color: var(--c-bg) !important;
  font-weight: 700 !important;
}

/* ============ FILTERS SIDEBAR (collections page) ============ */
.filters {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.filters h4 {
  color: var(--c-gold) !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-size: 0.72rem !important;
}
.filters__item {
  color: var(--c-text) !important;
  border-radius: 2px !important;
}
.filters__item:hover {
  background: rgba(201,169,110,0.1) !important;
  color: var(--c-gold) !important;
}
.filters__item.is-active {
  background: rgba(201,169,110,0.12) !important;
  color: var(--c-gold) !important;
  border-left: 2px solid var(--c-gold) !important;
  padding-left: 10px !important;
}
.filters__item .count {
  background: var(--c-bg) !important;
  color: var(--c-muted) !important;
  border: 1px solid var(--c-line) !important;
}
.filters__divider {
  border-top-color: var(--c-line) !important;
}
.filters__range input {
  background: var(--c-bg) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.filters__range input:focus { border-color: var(--c-gold) !important; }

/* ============ PAGE HEAD (breadcrumb area) ============ */
.pagehead {
  background: linear-gradient(180deg, var(--c-bg) 0%, var(--c-bg-soft) 100%) !important;
  color: var(--c-text) !important;
}
.pagehead h1 { color: #FFFFFF !important; }
.pagehead p { color: var(--c-text-soft) !important; }
.breadcrumb { color: var(--c-muted) !important; }
.breadcrumb a { color: var(--c-gold-light) !important; }
.breadcrumb a:hover { color: var(--c-gold) !important; }
.breadcrumb span { color: var(--c-gold-dark) !important; }

/* ============ SORT BAR / SEARCH ============ */
.sort-bar__count { color: var(--c-text) !important; }
.sort-bar__count b { color: var(--c-gold) !important; }
.sort-bar select {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}

/* ============ EYEBROW · CHIP ============ */
.eyebrow, .chip-luxe {
  background: rgba(201,169,110,0.08) !important;
  border: 1px solid rgba(201,169,110,0.3) !important;
  color: var(--c-gold) !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
}

/* ============ BUTTONS ============ */
.btn--primary, .btn--gold, .btn-luxe {
  background: var(--c-gold) !important;
  color: var(--c-bg) !important;
  border: 0 !important;
  box-shadow: 0 4px 14px rgba(201,169,110,0.25) !important;
}
.btn--primary:hover, .btn--gold:hover, .btn-luxe:hover {
  background: var(--c-gold-light) !important;
  color: var(--c-bg) !important;
  transform: translateY(-1px);
}
.btn--ghost {
  background: transparent !important;
  color: var(--c-text) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
}
.btn--ghost:hover {
  border-color: var(--c-gold) !important;
  color: var(--c-gold) !important;
}

/* ============ TOP BAR · HEADER ============ */
.topbar {
  background: var(--c-bg-soft) !important;
  color: var(--c-text-soft) !important;
  border-bottom: 1px solid var(--c-line) !important;
}
.topbar a { color: var(--c-gold-light) !important; }
.topbar a:hover { color: var(--c-gold) !important; }
.topbar__mark { color: var(--c-gold) !important; }

.header {
  background: rgba(10,10,10,0.92) !important;
  border-bottom: 1px solid var(--c-line) !important;
  backdrop-filter: blur(20px);
}
.brand__name { color: #FFFFFF !important; }
.brand__tag { color: var(--c-gold) !important; letter-spacing: 0.2em !important; }
.nav__link { color: var(--c-text) !important; font-weight: 500; }
.nav__link:hover { color: var(--c-gold) !important; background: transparent !important; }
.icon-btn { color: var(--c-text) !important; }
.icon-btn:hover { color: var(--c-gold) !important; background: rgba(201,169,110,0.1) !important; }

/* ============ MARQUEE ============ */
.marquee {
  background: var(--c-bg-soft) !important;
  color: var(--c-gold) !important;
  border-top: 1px solid var(--c-line) !important;
  border-bottom: 1px solid var(--c-line) !important;
}

/* ============ FOOTER ============ */
.footer,
footer {
  background: var(--c-bg) !important;
  color: var(--c-text-soft) !important;
  border-top: 1px solid var(--c-line) !important;
}
.footer a,
footer a { color: var(--c-text-soft) !important; }
.footer a:hover,
footer a:hover { color: var(--c-gold) !important; }
.footer h4 { color: var(--c-gold) !important; letter-spacing: 0.2em !important; text-transform: uppercase; }
.footer__grid { border-bottom: 1px solid var(--c-line) !important; }
.footer__socials a,
.footer__social a {
  background: transparent !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text-soft) !important;
}
.footer__socials a:hover,
.footer__social a:hover {
  border-color: var(--c-gold) !important;
  color: var(--c-gold) !important;
  background: transparent !important;
}
.footer__bottom { color: var(--c-muted) !important; }

/* ============ REVIEWS ============ */
.review {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.review__text { color: var(--c-text) !important; }
.review__name { color: #FFFFFF !important; }
.review__role { color: var(--c-muted) !important; }
.review__stars { color: var(--c-gold) !important; }

/* ============ BLOG ============ */
.post-card {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.post-card__title { color: #FFFFFF !important; }
.post-card:hover .post-card__title { color: var(--c-gold) !important; }
.post-card__meta { color: var(--c-muted) !important; }
.cat-pill {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.cat-pill:hover, .cat-pill.is-active {
  background: var(--c-gold) !important;
  color: var(--c-bg) !important;
  border-color: var(--c-gold) !important;
}
.sidebar-pop {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.sidebar-pop h4 { color: var(--c-gold) !important; }
.pop-item { border-bottom-color: var(--c-line-soft) !important; }
.pop-item__num { color: var(--c-gold) !important; }
.pop-item__title { color: #FFFFFF !important; }
.pop-item__meta { color: var(--c-muted) !important; }

/* ============ PRODUCT DETAIL ============ */
.pd-title { color: #FFFFFF !important; }
.pd-brand { color: var(--c-gold) !important; }
.pd-rating__stars { color: var(--c-gold) !important; }
.pd-rating__count { color: var(--c-muted) !important; }
.pd-price-box {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.pd-price__now { color: var(--c-gold) !important; }
.pd-price__old { color: var(--c-muted) !important; }
.pd-price__save {
  background: var(--c-gold) !important;
  color: var(--c-bg) !important;
}
.pd-benefit { color: var(--c-text) !important; }
.pd-benefit b { color: var(--c-gold) !important; }
.pd-meta { border-top: 1px solid var(--c-line) !important; border-bottom: 1px solid var(--c-line) !important; }
.pd-meta__item strong { color: #FFFFFF !important; }
.pd-qty {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.pd-qty button { color: var(--c-text) !important; }
.pd-qty button:hover { background: rgba(201,169,110,0.1) !important; color: var(--c-gold) !important; }
.pd-qty input { color: #FFFFFF !important; background: transparent !important; }
.pd-trust__item {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.pd-trust__ico {
  background: rgba(201,169,110,0.1) !important;
  color: var(--c-gold) !important;
}
.pd-trust__item small { color: var(--c-muted) !important; }
.pd-tabs { border-bottom: 2px solid var(--c-line) !important; }
.pd-tab { color: var(--c-text-soft) !important; }
.pd-tab.is-active {
  color: var(--c-gold) !important;
  border-bottom-color: var(--c-gold) !important;
}
.pd-tab-content { color: var(--c-text) !important; }
.pd-tab-content h4 { color: var(--c-gold) !important; }
.pd-tab-content ul { color: var(--c-text) !important; }
.pd-tab-content li { color: var(--c-text) !important; }

/* ============ CONTACT PAGE ============ */
.contact-info-card {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.info-row { border-bottom: 1px solid var(--c-line-soft) !important; }
.info-row__ico {
  background: linear-gradient(135deg, var(--c-gold), var(--c-gold-dark)) !important;
  color: var(--c-bg) !important;
}
.info-row__lead { color: var(--c-gold) !important; }
.info-row__val { color: #FFFFFF !important; }
.info-row__val a { color: var(--c-gold-light) !important; }
.info-row__sub { color: var(--c-muted) !important; }
.map-embed {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-gold) !important;
}
.map-embed a { color: var(--c-gold) !important; border-color: var(--c-gold) !important; }
.form-card {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.form-card h3 { color: #FFFFFF !important; }
.form-card .field input,
.form-card .field textarea,
.form-card .field select {
  background: var(--c-bg) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.faq-item {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.faq-q { color: #FFFFFF !important; }
.faq-q:hover { background: rgba(201,169,110,0.05) !important; }
.faq-q::after { color: var(--c-gold) !important; }
.faq-a { color: var(--c-text) !important; }

/* ============ MEMBERSHIP PAGE ============ */
.tier {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.tier h3, .tier__name { color: #FFFFFF !important; }
.tier__desc { color: var(--c-muted) !important; }
.tier__price { color: var(--c-gold) !important; }
.tier__price small { color: var(--c-muted) !important; }
.tier__list li { color: var(--c-text) !important; }
.tier__list li::before { color: var(--c-gold) !important; }
.tier__list li b { color: var(--c-gold) !important; }
.tier--vip {
  background: linear-gradient(160deg, #1A1A1A, #0A0A0A) !important;
  border: 1px solid var(--c-gold) !important;
}
.perk {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.perk:hover { border-color: var(--c-gold) !important; }
.perk__icon {
  background: linear-gradient(135deg, var(--c-gold), var(--c-gold-dark)) !important;
  color: var(--c-bg) !important;
}
.perk h4 { color: #FFFFFF !important; }
.perk p { color: var(--c-text-soft) !important; }

/* ============ ABOUT PAGE ============ */
.region-card {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.region-card__name { color: #FFFFFF !important; }
.region-card__body h4 { color: var(--c-gold) !important; }
.region-card__body p { color: var(--c-text-soft) !important; }
.region-card__stat b { color: var(--c-gold) !important; }
.region-card__stat span { color: var(--c-muted) !important; }
.region-card__stats { border-top: 1px solid var(--c-line) !important; }
.age-card {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.age-card h3 { color: #FFFFFF !important; }
.age-card .age-num { color: var(--c-gold) !important; }
.age-card ul li { color: var(--c-text) !important; }
.age-card ul li::before { color: var(--c-gold) !important; }
.age-card--hero {
  background: linear-gradient(160deg, #1A1A1A, #0A0A0A) !important;
  border: 1px solid var(--c-gold) !important;
  color: var(--c-text) !important;
}
.ginseng-tile {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.ginseng-tile h5 { color: var(--c-gold) !important; }
.ginseng-tile p { color: var(--c-text-soft) !important; }
.ginseng-tile__tag {
  background: rgba(201,169,110,0.1) !important;
  color: var(--c-gold) !important;
}
.timeline::before { background: var(--c-gold) !important; }
.timeline__item::before {
  background: var(--c-gold) !important;
  box-shadow: 0 0 0 4px var(--c-bg) !important;
}
.timeline__year { color: var(--c-gold) !important; }
.timeline__title { color: #FFFFFF !important; }
.timeline__desc { color: var(--c-text) !important; }

/* ============ BENTO ============ */
.bento__tile {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.bento__tile:hover { border-color: var(--c-gold) !important; }
.bento__title { color: #FFFFFF !important; }
.bento__sub { color: var(--c-text-soft) !important; }
.bento__cat { color: var(--c-gold) !important; }
.bento__arrow {
  background: rgba(201,169,110,0.1) !important;
  color: var(--c-gold) !important;
}
.bento__tile--dark {
  background: linear-gradient(160deg, #1A1A1A, #0A0A0A) !important;
}

/* ============ TRUST BAR ============ */
.trust {
  background: var(--c-bg-soft) !important;
  border-top: 1px solid var(--c-line) !important;
  border-bottom: 1px solid var(--c-line) !important;
}
.trust__ico {
  background: rgba(201,169,110,0.1) !important;
  color: var(--c-gold) !important;
}
.trust__title { color: #FFFFFF !important; }
.trust__sub { color: var(--c-text-soft) !important; }
.trust__item + .trust__item { border-left-color: var(--c-line) !important; }

/* ============ BRANDS ============ */
.brand-pill {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
}
.brand-pill:hover { border-color: var(--c-gold) !important; }
.brand-pill__name { color: var(--c-gold) !important; }
.brand-pill__desc { color: var(--c-muted) !important; }

/* ============ STORY SECTION ============ */
.story {
  background: linear-gradient(160deg, var(--c-bg), var(--c-bg-soft)) !important;
  color: var(--c-text) !important;
}
.story h2 { color: #FFFFFF !important; }
.story__lead { color: var(--c-text-soft) !important; }
.story__points li { color: var(--c-text) !important; }
.story__points li b { color: var(--c-gold) !important; }
.story__points li::before {
  background: var(--c-gold) !important;
  color: var(--c-bg) !important;
}

/* ============ CTA STRIP ============ */
.ctastrip {
  background: linear-gradient(135deg, var(--c-bg), var(--c-bg-soft)) !important;
  border-top: 1px solid var(--c-line) !important;
  border-bottom: 1px solid var(--c-line) !important;
}
.ctastrip h2 { color: #FFFFFF !important; }
.ctastrip h2 em { color: var(--c-gold) !important; }
.ctastrip__lead { color: var(--c-text-soft) !important; }

/* ============ FIELDS ============ */
.field label { color: var(--c-text) !important; }
.field input, .field textarea, .field select {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}
.field input:focus, .field textarea:focus, .field select:focus {
  border-color: var(--c-gold) !important;
}

/* ============ CHATBOT ============ */
.chatbot__launcher {
  background: var(--c-gold) !important;
  color: var(--c-bg) !important;
  border: 1px solid var(--c-gold-dark) !important;
}
.chatbot__launcher:hover { background: var(--c-gold-light) !important; }

/* ============ FLOAT CTA ============ */
.float-cta a, .float a {
  background: var(--c-gold) !important;
  color: var(--c-bg) !important;
}
.float-cta a.zalo, .float a.zalo {
  background: #0068FF !important;
  color: #FFFFFF !important;
}

/* ============ CATEGORIES (homepage) ============ */
.cat-card {
  background: var(--c-bg) !important;
  border-color: var(--c-line) !important;
  color: var(--c-text) !important;
}
.cat-card:hover { background: var(--c-bg-soft) !important; }
.cat-card h3 { color: #FFFFFF !important; }
.cat-card p { color: var(--c-text-soft) !important; }
.cat-card__num { color: var(--c-gold-dark) !important; }
.cat-card__arrow { color: var(--c-gold) !important; }

/* ============ YT / PHONE on new home ============ */
.yt { background: var(--c-bg-soft) !important; }
.yt__play { background: var(--c-gold) !important; color: var(--c-bg) !important; }
.yt__title { color: #FFFFFF !important; }
.phone-col__label { color: var(--c-gold) !important; }
.phone-col a { color: #FFFFFF !important; border-bottom-color: var(--c-line-soft) !important; }
.phone-col a:hover { color: var(--c-gold) !important; }
.phone-col a::before { background: var(--c-gold-dark) !important; }
.phones-section {
  background: var(--c-bg-soft) !important;
  border-top: 1px solid var(--c-line) !important;
  border-bottom: 1px solid var(--c-line) !important;
}

/* ============ SCROLLBAR ============ */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--c-bg); }
::-webkit-scrollbar-thumb { background: var(--c-gold-dark); border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: var(--c-gold); }

/* ============ SELECTION ============ */
::selection { background: var(--c-gold); color: var(--c-bg); }

/* ============ SITE-WIDE MAP SECTION (pre-footer) ============ */
.site-map {
  background: linear-gradient(160deg, var(--c-bg-soft), var(--c-bg)) !important;
  border-top: 1px solid var(--c-line) !important;
  padding: 56px 0 !important;
}
.site-map__wrap {
  max-width: 1400px; margin: 0 auto; padding: 0 clamp(20px, 4vw, 48px);
  display: grid; grid-template-columns: 380px 1fr; gap: 32px; align-items: stretch;
}
.site-map__info {
  background: rgba(26,26,26,.6); border: 1px solid var(--c-line);
  border-radius: 16px; padding: 28px 26px; display: flex; flex-direction: column; justify-content: center;
}
.site-map__info .eyebrow,
.site-map__eyebrow {
  display: inline-block; background: rgba(201,169,110,.08) !important; border: 1px solid rgba(201,169,110,.3) !important;
  color: var(--c-gold) !important; padding: 6px 14px; border-radius: 999px;
  font-size: .7rem !important; letter-spacing: .22em !important; text-transform: uppercase !important;
  font-weight: 700 !important; width: fit-content; margin-bottom: 14px;
}
.site-map__info h3 {
  font-size: 1.5rem !important; color: #FFFFFF !important; margin: 0 0 6px !important;
  font-weight: 700 !important; letter-spacing: -.01em; line-height: 1.25;
}
.site-map__info p { color: var(--c-text-soft) !important; margin: 0 0 6px !important; font-size: .95rem; line-height: 1.55; }
.site-map__info p.addr { font-size: .88rem; color: var(--c-muted) !important; }
.site-map__actions { display: flex; gap: 10px; margin-top: 18px; flex-wrap: wrap; }
.site-map__btn {
  display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px;
  background: linear-gradient(135deg, var(--c-gold), var(--c-gold-dark)) !important; color: var(--c-bg) !important;
  border-radius: 10px; font-weight: 700; font-size: .88rem; letter-spacing: .02em;
  box-shadow: 0 6px 18px rgba(201,169,110,.25); transition: transform .2s, box-shadow .2s;
  text-decoration: none;
}
.site-map__btn:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(201,169,110,.35); color: var(--c-bg) !important; }
.site-map__btn--ghost {
  background: transparent !important; color: var(--c-gold) !important;
  border: 1px solid var(--c-gold) !important; box-shadow: none;
}
.site-map__btn--ghost:hover { background: rgba(201,169,110,.1) !important; color: var(--c-gold) !important; }
.site-map__frame {
  position: relative; border-radius: 16px; overflow: hidden;
  border: 1px solid var(--c-line); min-height: 300px;
  box-shadow: 0 16px 40px rgba(0,0,0,.4);
}
.site-map__frame iframe { width: 100%; height: 100%; min-height: 300px; border: 0; filter: saturate(.95) contrast(1.02); display: block; }
.site-map__pin {
  position: absolute; left: 18px; top: 18px; z-index: 3;
  background: rgba(26,26,26,.92); backdrop-filter: blur(10px);
  border: 1px solid var(--c-gold); border-radius: 12px;
  padding: 10px 14px; display: inline-flex; align-items: center; gap: 10px;
  font-size: .86rem; color: #FFFFFF !important; font-weight: 600;
}
.site-map__pin b { color: var(--c-gold) !important; }

@media (max-width: 900px) {
  .site-map__wrap { grid-template-columns: 1fr; }
  .site-map__frame { min-height: 260px; }
}

/* =====================================================================
   GLOBAL KILL-SWITCH · đồng bộ tông đen + gold + Inter CHO TẤT CẢ TRANG
   Áp sau cùng để override mọi inline style cũ còn sót
   ===================================================================== */

/* 1) Override ANY inline white background → dark surface */
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background:#FFF"],
[style*="background: #FFF"],
[style*="background:white"],
[style*="background: white"] {
  background: #1A1A1A !important;
  color: #F5F1E8 !important;
}

/* 2) Override ANY inline light-palette color → gold / cream */
[style*="color:var(--red-800)"],
[style*="color: var(--red-800)"],
[style*="color:var(--red-700)"],
[style*="color: var(--red-700)"],
[style*="color:var(--red-900)"],
[style*="color: var(--red-900)"] { color: #C9A96E !important; }

[style*="color:var(--ink-900)"],
[style*="color: var(--ink-900)"],
[style*="color:var(--ink-800)"],
[style*="color: var(--ink-800)"],
[style*="color:var(--ink-700)"],
[style*="color: var(--ink-700)"] { color: #F5F1E8 !important; }

[style*="color:var(--ink-500)"],
[style*="color: var(--ink-500)"],
[style*="color:var(--ink-400)"],
[style*="color: var(--ink-400)"] { color: #A09A87 !important; }

[style*="color:var(--gold-600)"],
[style*="color: var(--gold-600)"],
[style*="color:var(--gold-700)"],
[style*="color: var(--gold-700)"] { color: #C9A96E !important; }

[style*="color:var(--gold-100)"],
[style*="color: var(--gold-100)"] { color: #E5CC8F !important; }

[style*="background:var(--gold-100)"],
[style*="background: var(--gold-100)"],
[style*="background:var(--gold-200)"],
[style*="background: var(--gold-200)"] {
  background: rgba(201,169,110,.12) !important;
}

/* 3) Force Inter font everywhere, kill serif */
[style*="font-family:var(--f-serif)"],
[style*="font-family: var(--f-serif)"],
[style*="font-family:'DM Serif"],
[style*="font-family: 'DM Serif"],
[style*="font-family:'Cormorant"],
[style*="font-family: 'Cormorant"] {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: .005em !important;
}

/* 4) Card-like surfaces — unify dark */
.contact-info-card,
.form-card,
.faq-item,
.cat-pill,
.sidebar-pop,
.featured-post,
.post-card,
.region-card,
.ginsenoside-tile,
.ginseng-tile,
.age-card,
.tier,
.perk,
.pd-trust__item,
.pd-qty,
.pd-price-box,
.pop-item,
.vip-result,
.info-row,
.info-row__sub {
  background-color: #1A1A1A !important;
  color: #F5F1E8 !important;
  border-color: rgba(201,169,110,.18) !important;
}
.info-row__val,
.pop-item__title,
.post-card__title,
.region-card__name,
.age-card h3,
.tier__name,
.perk h4,
.pd-title,
.pd-brand,
.pd-price__now,
.ginsenoside-tile h5,
.region-card__body h4,
.pd-tab-content h4,
.timeline__year,
.timeline__title,
.age-num,
.sidebar-pop h4 {
  color: #FFFFFF !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
}
.pd-price__now,
.age-num,
.timeline__year,
.region-card__stat b,
.sidebar-pop__num,
.pop-item__num,
.region-card__body h4,
.pd-tab-content h4,
.ginsenoside-tile h5 { color: #C9A96E !important; }

/* 5) TIGHTEN section padding across ALL subpages */
.section, section.section {
  padding: clamp(48px, 6vw, 84px) 0 !important;
}
.section--tight,
section.section--tight {
  padding: clamp(32px, 4vw, 56px) 0 !important;
}
.pagehead {
  padding: clamp(56px, 7vw, 84px) 0 clamp(32px, 4vw, 48px) !important;
}
.section-head,
.section-head--center {
  margin-bottom: clamp(24px, 3vw, 44px) !important;
}

/* 6) UPPERCASE keywords across all pages */
.pagehead h1,
.section-head h1,
.section-head h2,
.section-head h3,
.pd-title,
.tier__name,
.region-card__name,
.age-card h3,
.age-card--hero h3,
.perk h4,
.post-card__title,
.featured-post h2,
.featured-post h3,
.vip-result h4,
.site-map__info h3,
h1.hero__title,
h1.hero__title-premium,
.cta h2,
.ctastrip h2,
.story h2,
.bento__title,
.trust__title,
.faq-q,
.ginsenoside-tile h5,
.pd-tab-content h4,
.sidebar-pop h4,
.product__name,
.product .product__name,
h1 b, .hero__title b, .cta h2 b,
.brand-pill__name {
  text-transform: uppercase !important;
  letter-spacing: .01em !important;
  font-family: 'Inter', sans-serif !important;
}

/* Product name smaller uppercase, still readable */
.product__name {
  font-weight: 700 !important;
  font-size: .88rem !important;
  line-height: 1.35 !important;
  letter-spacing: .005em !important;
}

/* Smaller/secondary h don't over-uppercase */
.pd-tab,
.filters__summary,
.eyebrow,
.chip-luxe,
.cat-pill,
.sort-bar__count {
  font-family: 'Inter', sans-serif !important;
}

/* 7) Italic em keywords keep italic but no serif */
em {
  font-family: 'Inter', sans-serif !important;
  font-style: italic;
  font-weight: 500;
  color: #C9A96E !important;
}
h1 em, h2 em, h3 em { color: #E5CC8F !important; }

/* 8) Links inside cards readable */
.info-row a, .tier a, .perk a, .pop-item a {
  color: #E5CC8F !important;
}
.info-row a:hover { color: #C9A96E !important; }

/* 9) Map overlay on contact page — keep white pill readable */
.map-embed__overlay {
  background: rgba(26,26,26,.92) !important;
  border-color: rgba(201,169,110,.3) !important;
  color: #F5F1E8 !important;
}
.map-embed__overlay b { color: #C9A96E !important; }

/* 10) Placeholder text visible on dark */
input::placeholder, textarea::placeholder {
  color: #8B7746 !important;
  opacity: 1 !important;
}

/* 11) FINAL NUKE — force Inter on all text, gold on red, dark bg on card-like */
body, body *, h1, h2, h3, h4, h5, h6, p, span, a, li, td, th, button, input, textarea, select, label, b, strong, em, small, .brand__name, .shimmer, .pop-item__num, .pop-item__title, .hero__stat__num, .hero__stat__label, .chatbot__launcher, .chatbot__body, .chatbot__panel, .chatbot__head-info h5, .chatbot__avatar, .chatbot__head-ava, .msg, .msg__ava, .msg__text, .age-num, .timeline__year, .region-card__stat b, .founder__content h2, .section-head h1, .section-head h2, .featured-post h2, .featured-post h3 {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

/* Chatbot specific dark mode */
.chatbot__panel,
.chatbot__body,
.chatbot__input,
.chatbot__footer-note {
  background: #1A1A1A !important;
  color: #F5F1E8 !important;
  border-color: rgba(201,169,110,.18) !important;
}
.chatbot__head {
  background: linear-gradient(135deg, #0A0A0A, #1A1A1A) !important;
  border-bottom: 1px solid rgba(201,169,110,.2) !important;
}
.chatbot__head-info h5,
.chatbot__head-info span { color: #E5CC8F !important; }
.chatbot__input input {
  background: #0A0A0A !important;
  border: 1px solid rgba(201,169,110,.2) !important;
  color: #F5F1E8 !important;
}
.chatbot__input input::placeholder { color: #8B7746 !important; }
.chatbot__footer-note { color: #A09A87 !important; }
.msg__text,
.msg--bot .msg__text {
  background: #0A0A0A !important;
  color: #F5F1E8 !important;
  border: 1px solid rgba(201,169,110,.15) !important;
}
.msg--me .msg__text {
  background: linear-gradient(135deg, #C9A96E, #8B7746) !important;
  color: #0A0A0A !important;
  border: 0 !important;
}

/* Hero stat numbers (on about page) → gold */
.hero__stat__num { color: #C9A96E !important; }
.hero__stat__label { color: #A09A87 !important; }

/* Stat numbers general */
.pop-item__num,
.region-card__stat b,
.age-num,
.timeline__year { color: #C9A96E !important; }

/* All `<b>` inside content text stays inherited color */
p b, p strong, li b, .founder__content p b { color: #C9A96E !important; font-weight: 700 !important; }

/* Brand/shimmer always Inter gold */
.brand__name { color: #E5CC8F !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.shimmer, em.shimmer { color: #E5CC8F !important; font-family: 'Inter', sans-serif !important; }

/* Section with inline light bg */
.section--tight,
section.section,
section {
  background-color: transparent !important;
}
body, body.admin { background: #0A0A0A !important; }

/* Ensure gold on interactive elements */
.breadcrumb a { color: #E5CC8F !important; }
.breadcrumb a:hover { color: #C9A96E !important; }
.btn--primary, .btn--gold { background: linear-gradient(135deg, #C9A96E, #8B7746) !important; color: #0A0A0A !important; border: 0 !important; }
.btn--primary:hover, .btn--gold:hover { background: linear-gradient(135deg, #E5CC8F, #C9A96E) !important; }

/* SVG text on about regional cards — keep gold stroke */
svg text { fill: #C9A96E; }

/* =====================================================================
   PREMIUM LUXURY UPGRADES v2 · SSENSE/NET-A-PORTER polish
   ===================================================================== */

/* 1) MICRO-INTERACTIONS — cards lift + gold glow + image zoom */
.product,
.tier,
.perk,
.post-card,
.cat-card,
.region-card,
.ginseng-tile,
.ginsenoside-tile,
.age-card {
  transition: transform .4s cubic-bezier(.22,.61,.36,1),
              box-shadow .4s cubic-bezier(.22,.61,.36,1),
              border-color .3s !important;
  will-change: transform;
}
.product:hover,
.tier:hover,
.perk:hover,
.post-card:hover,
.cat-card:hover,
.region-card:hover,
.ginseng-tile:hover,
.ginsenoside-tile:hover,
.age-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 20px 50px rgba(201,169,110,.15), 0 2px 8px rgba(0,0,0,.4) !important;
}
.product__media,
.cat-card__media,
.post-card__media,
.founder__photo {
  overflow: hidden;
}
.product__media img,
.cat-card__media img,
.post-card__media img,
.founder__photo img {
  transition: transform .7s cubic-bezier(.22,.61,.36,1), filter .4s !important;
  filter: saturate(.92) contrast(1.02);
}
.product:hover .product__media img,
.cat-card:hover .cat-card__media img,
.post-card:hover .post-card__media img,
.founder__photo:hover img {
  transform: scale(1.045);
  filter: saturate(1.05) contrast(1.06);
}

/* 2) TYPOGRAPHY RHYTHM — big headlines tighter, small labels wider */
h1, h2, .section-head h2, .section__head h2, .pd-title, .hero__title, .founder__content h2, .cta h2 {
  letter-spacing: -.015em !important;
}
h3, .tier__name, .perk h4, .post-card__title, .product__name {
  letter-spacing: -.005em !important;
}
.eyebrow,
.chip-luxe,
.breadcrumb,
.product__brand,
.brand__tag,
.site-map__eyebrow,
.filters__summary,
.sidebar__section,
.footer h4,
footer h4 {
  letter-spacing: .26em !important;
  font-size: .68rem !important;
  font-weight: 700 !important;
}

/* 3) IMAGE TREATMENT — subtle gold overlay on hover for art-direction */
.cat-card,
.founder__photo {
  position: relative;
}
.cat-card::after,
.founder__photo::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(201,169,110,.12), transparent 60%);
  pointer-events: none;
  mix-blend-mode: overlay;
  opacity: 0;
  transition: opacity .4s;
  z-index: 1;
}
.cat-card:hover::after,
.founder__photo:hover::after { opacity: 1; }

/* 4) GRADIENT HAIRLINE BORDERS — replaces solid frame */
.tier,
.perk,
.post-card,
.pd-trust__item,
.contact-info-card,
.form-card,
.faq-item,
.sidebar-pop,
.region-card,
.age-card,
.featured-post {
  border: 1px solid transparent !important;
  background:
    linear-gradient(#1A1A1A, #1A1A1A) padding-box,
    linear-gradient(135deg, rgba(201,169,110,.35) 0%, rgba(201,169,110,.08) 40%, rgba(201,169,110,.2) 100%) border-box !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 4px 16px rgba(0,0,0,.25) !important;
}
.tier:hover,
.perk:hover,
.post-card:hover,
.region-card:hover,
.age-card:hover {
  background:
    linear-gradient(#1A1A1A, #1A1A1A) padding-box,
    linear-gradient(135deg, #C9A96E 0%, rgba(201,169,110,.3) 50%, #8B7746 100%) border-box !important;
}

/* 5) WHITESPACE RHYTHM — alternate section padding for breathing */
main section:nth-of-type(even),
body > section:nth-of-type(even) {
  padding-block: clamp(64px, 8vw, 112px) !important;
}
main section:nth-of-type(odd),
body > section:nth-of-type(odd) {
  padding-block: clamp(40px, 5vw, 72px) !important;
}
.hero, section.hero { padding-block: 0 !important; }
.site-map { padding-block: clamp(48px, 6vw, 72px) !important; }

/* 6) ACCESSIBILITY — focus ring gold + reduced motion */
*:focus { outline: 0; }
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
[role="button"]:focus-visible,
.filters__item:focus-visible,
.cat-card:focus-visible,
.product:focus-visible,
.post-card:focus-visible {
  outline: 2px solid #C9A96E !important;
  outline-offset: 3px;
  border-radius: 4px;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* 7) MOBILE OPTIMIZATION — 48px tap targets + sticky product actions */
@media (max-width: 768px) {
  .btn-sm,
  .filters__item,
  .price-pill,
  .filters__summary,
  .cat-pill,
  .nav__link,
  .pd-tab,
  .iconbtn2,
  .icon-btn {
    min-height: 44px !important;
    padding: 12px 16px !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  .hero__title { font-size: clamp(1.8rem, 8vw, 2.4rem) !important; }
  .section-head h2,
  .section__head h2 { font-size: clamp(1.5rem, 6vw, 1.9rem) !important; }
  body { padding-bottom: env(safe-area-inset-bottom); }
  .float, .float-cta { bottom: 16px !important; }
  .products,
  .products-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
  .product__body { padding: 12px !important; }
  .product__name { font-size: .78rem !important; line-height: 1.3 !important; }
  /* Larger hit area for filter accordion arrows */
  .filters__summary { padding: 16px 12px !important; }
  /* Site map stacked on mobile */
  .site-map__actions { flex-direction: column; }
  .site-map__btn { width: 100%; justify-content: center; }
}

/* Tablet mid-range */
@media (min-width: 769px) and (max-width: 1024px) {
  .products,
  .products-grid { grid-template-columns: repeat(3, 1fr) !important; }
}

/* =====================================================================
   GOLD LUXURY · Minimal premium — KHÔNG shimmer, KHÔNG animation loè loẹt
   Font: Inter 100% · Palette: #0A0A0A / #1A1A1A / #C9A96E / #F5F1E8
   ===================================================================== */

/* === HARD ENFORCE FONT & PALETTE === */
html, body, body * {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
body { background: #0A0A0A !important; color: #F5F1E8 !important; }

/* Headings: bold Inter, gold accent on <b>, uppercase for H1-H2 */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', sans-serif !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
  letter-spacing: -.01em !important;
  line-height: 1.2 !important;
}
h1, h2, .hero__title, .section-head h2, .section__head h2, .cta h2, .founder__content h2, .pagehead h1, .pd-title {
  text-transform: uppercase !important;
  letter-spacing: .005em !important;
  font-weight: 800 !important;
}
h1 b, h2 b, h3 b,
.hero__title b, .section-head h2 b, .section__head h2 b, .founder__content h2 b, .cta h2 b {
  color: #C9A96E !important;
  font-weight: 800 !important;
  background: none !important;
  -webkit-text-fill-color: #C9A96E !important;
  text-shadow: none !important;
  animation: none !important;
}

/* Big "8" number — clean gold gradient, no animation */
.big-num {
  background: linear-gradient(135deg, #E5CC8F, #C9A96E 50%, #8B7746) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: none !important;
  font-weight: 800 !important;
}

/* Body text → cream */
p, li, span, div, td { color: #F5F1E8 !important; }
p { line-height: 1.7 !important; }
small, .text-muted, .product__brand, .post-card__meta { color: #A09A87 !important; }

/* Gold accents */
a { color: #E5CC8F !important; transition: color .2s ease !important; }
a:hover { color: #C9A96E !important; }
.breadcrumb span:last-child { color: #C9A96E !important; background: none !important; -webkit-text-fill-color: #C9A96E !important; animation: none !important; }
strong, p b, li b { color: #C9A96E !important; font-weight: 700 !important; }

/* === CARDS · unified gold hairline === */
.product,
.tier,
.perk,
.post-card,
.cat-card,
.region-card,
.age-card,
.ginsenoside-tile,
.contact-info-card,
.form-card,
.faq-item,
.pd-trust__item,
.pd-price-box,
.sidebar-pop,
.featured-post,
.panel,
.kpi {
  background: #1A1A1A !important;
  border: 1px solid rgba(201,169,110,.2) !important;
  transition: border-color .25s ease, transform .25s ease !important;
}
.product:hover,
.tier:hover,
.perk:hover,
.post-card:hover,
.cat-card:hover,
.region-card:hover,
.age-card:hover {
  border-color: #C9A96E !important;
  transform: translateY(-3px) !important;
}

/* VIP tier — slightly brighter */
.tier--vip {
  background: linear-gradient(160deg, #1A1A1A, #0A0A0A) !important;
  border: 1px solid #C9A96E !important;
  animation: none !important;
}
.tier--vip::before, .tier--vip::after { content: none !important; }

/* === BUTTONS · clean gold === */
.btn, .btn-sm {
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-size: .82rem !important;
  transition: background .2s ease, transform .2s ease !important;
}
.btn--gold, .btn--primary, .btn-sm--primary, .price-apply, .site-map__btn:not(.site-map__btn--ghost) {
  background: #C9A96E !important;
  color: #0A0A0A !important;
  border: 0 !important;
}
.btn--gold:hover, .btn--primary:hover, .btn-sm--primary:hover, .price-apply:hover, .site-map__btn:not(.site-map__btn--ghost):hover {
  background: #E5CC8F !important;
  color: #0A0A0A !important;
  transform: translateY(-1px) !important;
}
.btn--ghost, .btn--outline, .site-map__btn--ghost {
  background: transparent !important;
  color: #E5CC8F !important;
  border: 1px solid #C9A96E !important;
}
.btn--ghost:hover, .site-map__btn--ghost:hover {
  background: rgba(201,169,110,.1) !important;
  color: #C9A96E !important;
}
/* Remove all shine sweep */
.btn::after, .btn--gold::after, .btn--primary::after, .btn-sm--primary::after,
.site-map__btn::after, .price-apply::after { content: none !important; }

/* === CAT CARD · remove underline line === */
.cat-card::before, .cat-card::after { content: none !important; }

/* === PRODUCT CARD · remove corner glints === */
.product::before, .product::after { content: none !important; }
.product:hover .product__price__current { text-shadow: none !important; }

/* === HERO · clean, no sparkle === */
.hero::before, .hero::after { content: none !important; }
.header::after { content: none !important; }

/* === CTA · no animated glow === */
.cta::after { content: none !important; }

/* === FOUNDER photo frame · clean === */
.founder__photo::before {
  border: 1px solid rgba(201,169,110,.3) !important;
  animation: none !important;
  transition: none !important;
}
.founder__photo::after { content: none !important; }

/* === CHATBOT · no glow pulse === */
.chatbot__launcher { animation: none !important; }
.chatbot__launcher:hover { transform: translateY(-2px); }

/* === FLOAT CTA · clean, no pulse ring === */
.float a::before, .float-cta a::before { content: none !important; }

/* === SITE MAP frame · clean === */
.site-map__frame {
  border: 1px solid rgba(201,169,110,.2) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.4) !important;
  transition: border-color .25s ease !important;
}
.site-map__frame:hover { border-color: #C9A96E !important; box-shadow: 0 16px 40px rgba(0,0,0,.4) !important; }

/* === EYEBROW · static gold === */
.eyebrow, .chip-luxe, .site-map__eyebrow {
  background: rgba(201,169,110,.1) !important;
  border: 1px solid rgba(201,169,110,.3) !important;
  color: #C9A96E !important;
  text-transform: uppercase !important;
  letter-spacing: .22em !important;
  font-size: .7rem !important;
  font-weight: 700 !important;
  padding: 6px 14px !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}
.eyebrow:hover, .site-map__eyebrow:hover { box-shadow: none !important; }

/* === REMOVE GRAIN === */
body::before { content: none !important; display: none !important; }

/* === FORMS · dark === */
input, textarea, select {
  background: #0A0A0A !important;
  border: 1px solid rgba(201,169,110,.2) !important;
  color: #F5F1E8 !important;
  font-family: 'Inter', sans-serif !important;
  border-radius: 2px !important;
}
input:focus, textarea:focus, select:focus { border-color: #C9A96E !important; outline: 0 !important; }
input::placeholder { color: #8B7746 !important; }

/* === STRIP ALL keyframes effects === */
@keyframes shimmer-gold { 0%, 100% { background-position: 0 0; } }
@keyframes sparkle { 0%, 100% { opacity: 0; } }
@keyframes glow-pulse { 0%, 100% { box-shadow: none; } }
@keyframes shine-sweep { 0%, 100% { transform: none; } }
@keyframes float-gentle { 0%, 100% { transform: none; } }
