/* Quà Vinh Danh: presentation only; the existing theme and content stay editable. */
.qvd-catalog-theme {
  --qvd-ink: #13284c;
  --qvd-blue: #1556bb;
  --qvd-blue-dark: #103d85;
  --qvd-gold: #bd9447;
  --qvd-muted: #66758c;
  --qvd-line: #e0e7f1;
  --qvd-surface: #f5f7fc;
  color: var(--qvd-ink);
}
.qvd-catalog-theme #main { background: var(--qvd-surface); }
.qvd-catalog-theme a:focus-visible,
.qvd-catalog-theme button:focus-visible {
  outline: 2px solid var(--qvd-blue);
  outline-offset: 4px;
}
.qvd-catalog-theme #header { box-shadow: 0 2px 14px rgba(24, 47, 84, .07); }
.qvd-catalog-theme #header .nav > li > a.nav-top-link { border-radius: 10px; }
.qvd-catalog-theme #header .ctasia {
  background: var(--qvd-blue-dark);
  box-shadow: 0 4px 12px rgba(20, 60, 125, .15);
  border-radius: 12px;
}
.qvd-catalog-theme #header .nav-dropdown {
  background: #fff !important;
  border-radius: 15px !important;
  box-shadow: 0 18px 48px rgba(19, 40, 76, .14) !important;
}
.qvd-catalog-theme #header #menu-item-396 > .nav-dropdown {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
  width: min(1180px, calc(100vw - 40px)) !important;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  padding: 22px !important;
}
.qvd-catalog-theme #header #menu-item-396 > .nav-dropdown > li {
  display: block;
  width: auto !important;
  min-width: 0;
  border-right: 1px solid var(--qvd-line);
  padding-right: 8px;
}
.qvd-catalog-theme #header #menu-item-396 > .nav-dropdown > li:last-child { border: 0; }
.qvd-catalog-theme #header .nav-dropdown li a {
  padding: 8px 8px !important;
  color: #43536e !important;
  font-size: 13px;
  font-weight: 500;
  border-radius: 7px;
  border: 0;
  box-shadow: none;
}
.qvd-catalog-theme #header #menu-item-396 > .nav-dropdown > li > a {
  color: var(--qvd-ink) !important;
  font-size: 13px;
  font-weight: 800;
  border-bottom: 2px solid #e8d7b4;
  margin-bottom: 6px;
  border-radius: 0;
}
.qvd-catalog-theme #header .nav-dropdown li a:hover {
  color: var(--qvd-blue) !important;
  background: #edf4ff;
}
.qvd-catalog-theme.home #main .section:not(.section-hero) {
  background: var(--qvd-surface) !important;
  padding: 44px 0 !important;
}
.qvd-catalog-theme .section-hero { background: #fff; padding-bottom: 18px !important; }
.qvd-catalog-theme .section-hero .img-inner {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(19, 40, 76, .08);
}
.qvd-catalog-theme .sg-main-title {
  color: var(--qvd-ink);
  text-align: center;
  font-size: clamp(21px, 2.1vw, 29px);
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -.025em;
  margin-bottom: 20px;
}
.qvd-catalog-theme .sg-main-title a { color: inherit; }
.qvd-catalog-theme .sg-main-title::after {
  content: "";
  display: block;
  width: 44px;
  height: 3px;
  margin: 14px auto 0;
  border-radius: 4px;
  background: var(--qvd-gold);
}
.qvd-catalog-theme.home .sg-header + p {
  max-width: 760px;
  margin: 0 auto 22px;
  color: var(--qvd-muted);
  line-height: 1.7;
}
.qvd-catalog-theme.home #main .button.is-outline {
  width: calc(33.333% - 22px);
  min-height: 58px;
  margin: 7px 9px;
  padding: 13px 14px;
  border: 1px solid #d9e2ee;
  border-radius: 12px !important;
  background: #fff;
  color: var(--qvd-ink);
  font-size: 13px;
  letter-spacing: .015em;
  box-shadow: 0 3px 10px rgba(20, 46, 86, .03);
}
.qvd-catalog-theme.home #main .button.is-outline:hover {
  border-color: var(--qvd-blue);
  background: #fff;
  color: var(--qvd-blue);
  box-shadow: 0 6px 16px rgba(20, 46, 86, .08);
}
.qvd-catalog-theme .products .product-small.col { padding-bottom: 26px; }
.qvd-catalog-theme .products .product-small.col > .col-inner {
  height: 100%;
  border: 1px solid var(--qvd-line);
  border-radius: 16px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 4px 14px rgba(19, 40, 76, .035);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.qvd-catalog-theme .products .product-small.col:hover > .col-inner {
  transform: translateY(-3px);
  border-color: #bdcfe6;
  box-shadow: 0 12px 24px rgba(19, 40, 76, .09);
}
.qvd-catalog-theme .product-small.box { height: 100%; display: flex; flex-direction: column; }
.qvd-catalog-theme .product-small.box .box-image {
  width: auto;
  margin: 10px 10px 0;
  border-radius: 11px;
  overflow: hidden;
  background: #eff4fb;
}
.qvd-catalog-theme .product-small.box .box-image img { aspect-ratio: 1; object-fit: cover; }
.qvd-catalog-theme .product-small.box .box-text {
  padding: 17px 15px 18px;
  text-align: left;
  flex: 1;
}
.qvd-catalog-theme .product-small .name,
.qvd-catalog-theme .product-small .woocommerce-loop-product__title {
  min-height: 44px;
  font-size: 15px !important;
  font-weight: 700;
  line-height: 1.45;
  margin: 0 0 12px;
}
.qvd-catalog-theme .product-small .name a {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  color: var(--qvd-ink);
}
.qvd-catalog-theme .product-small .name a:hover { color: var(--qvd-blue); }
.qvd-catalog-theme .product-small .price { display: block; margin: 0; }
.qvd-catalog-theme .qvd-price-block { display: block; font-style: normal; }
.qvd-catalog-theme .qvd-price-label {
  display: block;
  margin-bottom: 4px;
  color: var(--qvd-muted);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .015em;
}
.qvd-catalog-theme .qvd-price-range {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px;
  color: var(--qvd-blue);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
}
.qvd-catalog-theme .qvd-price-range .amount { color: inherit; white-space: nowrap; }
.qvd-catalog-theme .qvd-price-separator { color: #8d9bb0; font-weight: 400; }
.qvd-catalog-theme .qvd-price-note { display: block; margin-top: 4px; font-size: 11px; color: #60708a; font-weight: 400; line-height: 1.5; }
.qvd-catalog-theme .qvd-price-contact-text { color: var(--qvd-blue); font-size: 15px; font-weight: 750; }
.qvd-catalog-theme .product-key-info:empty { display: none !important; }
.qvd-catalog-theme .shop-page-title { background: #eef3fa !important; border-bottom: 1px solid var(--qvd-line); }
.qvd-catalog-theme .shop-page-title .page-title-bg,
.qvd-catalog-theme .shop-page-title .title-bg { background: #eef3fa !important; }
.qvd-catalog-theme .shop-page-title .title-overlay { background: transparent !important; }
.qvd-catalog-theme .shop-page-title .page-title-inner { padding-top: 18px; padding-bottom: 18px; min-height: 0; }
.qvd-catalog-theme .shop-page-title .breadcrumbs,
.qvd-catalog-theme .shop-page-title .breadcrumbs a { color: #536786; }
.qvd-catalog-theme .shop-page-title .filter-button { color: var(--qvd-blue) !important; }
.qvd-catalog-theme .shop-container { padding-top: 32px; padding-bottom: 48px; }
.qvd-catalog-theme .shop-container h1 { color: var(--qvd-ink); font-size: clamp(23px, 2.5vw, 32px); font-weight: 800; }
.qvd-catalog-theme .widget_product_categories {
  padding: 22px 18px;
  background: #fff;
  border: 1px solid var(--qvd-line);
  border-radius: 14px;
}
.qvd-catalog-theme .widget_product_categories .widget-title { color: var(--qvd-ink); font-size: 13px; line-height: 1.5; letter-spacing: .03em; }
.qvd-catalog-theme .widget_product_categories .cat-item a { color: #4a5d79; font-size: 13px; line-height: 1.5; }
.qvd-catalog-theme .widget_product_categories .current-cat > a { color: var(--qvd-blue); font-weight: 800; }
.qvd-catalog-theme .product-info h1 { color: var(--qvd-ink); font-size: clamp(24px, 2.5vw, 34px); line-height: 1.3; font-weight: 800; }
.qvd-catalog-theme .product-info .price:has(.qvd-price-block),
.qvd-catalog-theme.single-product .product-page-price:has(.qvd-price-block) {
  display: block;
  padding: 18px 20px;
  margin: 20px 0;
  background: #edf3fd;
  border: 1px solid #d6e3f8;
  border-radius: 12px;
}
.qvd-catalog-theme .product-info .qvd-price-range,
.qvd-catalog-theme.single-product .product-page-price .qvd-price-range { font-size: 24px; }
.qvd-catalog-theme .product-info .qvd-price-label,
.qvd-catalog-theme .product-info .qvd-price-note,
.qvd-catalog-theme.single-product .product-page-price .qvd-price-label,
.qvd-catalog-theme.single-product .product-page-price .qvd-price-note { font-size: 13px; }
.qvd-catalog-theme .product-info .button { border-radius: 10px; }
.qvd-catalog-theme .product-gallery .woocommerce-product-gallery__image { border-radius: 16px; overflow: hidden; }
.qvd-catalog-theme .woocommerce-tabs .panel { color: #31435e; line-height: 1.85; }
.qvd-catalog-theme .woocommerce-tabs figure img { border-radius: 12px; }
.qvd-catalog-theme #footer .section { background: #15386e !important; padding: 40px 0 30px !important; }
.qvd-catalog-theme #footer .img-inner { background: #fff; padding: 10px; border-radius: 10px; }
.qvd-catalog-theme #footer p { color: #dce5f2; font-size: 14px; line-height: 1.8; }
.qvd-catalog-theme #footer p strong { color: #fff; }
.qvd-catalog-theme #footer a { color: #e8eff9; font-size: 13px; }
.qvd-catalog-theme #footer li { border-color: rgba(255,255,255,.12); line-height: 1.7; }
.qvd-catalog-theme #footer a:hover { color: #f1cc81; }
.qvd-catalog-theme .absolute-footer { background: #102d58; color: #b8c9e3; }
.qvd-catalog-theme .lgft-float-btn { box-shadow: 0 4px 15px rgba(11, 37, 79, .18) !important; }
@media (min-width: 850px) and (max-width: 1199px) {
  .qvd-catalog-theme #header #menu-item-396 > .nav-dropdown { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .qvd-catalog-theme #header .header-inner { gap: 10px; }
  .qvd-catalog-theme #header .nav > li > a.nav-top-link { padding: 0 8px; font-size: 13px; }
}
@media (max-width: 849px) {
  .qvd-catalog-theme #header #logo img { max-height: 48px !important; max-width: 205px !important; }
  .qvd-catalog-theme.home #main .section:not(.section-hero) { padding: 30px 0 !important; }
  .qvd-catalog-theme .section-hero .img-inner { border-radius: 10px; }
  .qvd-catalog-theme .sg-main-title { font-size: 21px; margin-bottom: 16px; }
  .qvd-catalog-theme.home .sg-header + p { font-size: 14px; padding: 0 8px; }
  .qvd-catalog-theme.home #main .button.is-outline { width: calc(50% - 14px); margin: 5px; min-height: 58px; padding: 12px 8px; font-size: 11px; letter-spacing: 0; }
  .qvd-catalog-theme .products .product-small.col { padding-left: 6px; padding-right: 6px; padding-bottom: 14px; }
  .qvd-catalog-theme .products .product-small.col > .col-inner { border-radius: 12px; }
  .qvd-catalog-theme .product-small.box .box-image { margin: 6px 6px 0; border-radius: 8px; }
  .qvd-catalog-theme .product-small.box .box-text { padding: 12px 10px 14px; }
  .qvd-catalog-theme .product-small .name,
  .qvd-catalog-theme .product-small .woocommerce-loop-product__title { font-size: 13px !important; line-height: 1.45; min-height: 38px; margin-bottom: 10px; }
  .qvd-catalog-theme .qvd-price-range { font-size: 12px; gap: 3px; }
  .qvd-catalog-theme .qvd-price-label,
  .qvd-catalog-theme .qvd-price-note { font-size: 11px; }
  .qvd-catalog-theme .qvd-price-contact-text { font-size: 13px; }
  .qvd-catalog-theme .product-info .qvd-price-range,
  .qvd-catalog-theme.single-product .product-page-price .qvd-price-range { font-size: 21px; }
  .qvd-catalog-theme .product-info .price:has(.qvd-price-block),
  .qvd-catalog-theme.single-product .product-page-price:has(.qvd-price-block) { padding: 16px; }
  .qvd-catalog-theme .nav-sidebar li > a { font-size: 13px; }
  .qvd-catalog-theme #footer .section { padding: 30px 0 82px !important; }
  .qvd-catalog-theme #footer .img { max-width: 230px; margin: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .qvd-catalog-theme .products .product-small.col > .col-inner { transition: none; }
  .qvd-catalog-theme .products .product-small.col:hover > .col-inner { transform: none; }
}
