/*
Theme Name:           TVDTHEME 190
Theme URI:            http://tvdtheme.tvdseo.com
Author:               TVD-Themes
Author URI:           https://tvdseo.com
Description:          Welcome to the future of digital design. We are thrilled to introduce our exclusive custom theme, built 99.99% by advanced Artificial Intelligence. Every single aspect of this product has been autonomous crafted by AI algorithmsâ€”from the highly intuitive user interfaces and robust built-in features to the clean, efficient source code running behind the scenes. This theme represents the pinnacle of automated development, delivering a seamless, high-performance digital experience entirely powered by AI.
Version:              26.08.06
Requires at least:    6.4
Requires PHP:         7.4
WC requires at least: 8.3
Text Domain:          TVDTHEME
License:              https://tvdseo.com/licenses
License URI:          https://tvdseo.com/licenses
*/

/***************
All custom CSS should be added to TVDTHEME
or in the style.css of a Child Theme.
***************/
.theme-overlay .theme-description,
.theme-overlay .theme-description p {
  text-align: justify !important;
  text-align-last: left;
  line-height: 1.7;
  white-space: normal !important;
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: auto;
}

/* Header Builder: logo can occupy the left, centre, or right drop zone. */
.logo-right .tvd-flex-start {
  flex: 1 1 0;
  order: 1;
}
.logo-right .tvd-flex-end {
  order: 2;
}
.logo-right .logo {
  margin-left: 30px;
  order: 3;
}

@media screen and (max-width: 849px) {
  .sizetm-logo-right .tvd-flex-start {
    flex: 1 1 0;
    order: 1;
  }
  .sizetm-logo-right .tvd-flex-end {
    order: 2;
  }
  .sizetm-logo-right .logo {
    margin-left: 15px;
    order: 3;
  }

  /* Keep menu, centred logo, and cart in distinct columns. */
  .sizetm-logo-center > .tvd-flex-start,
  .sizetm-logo-center > .tvd-flex-end {
    flex: 0 0 42px;
    min-width: 42px;
  }
  .sizetm-logo-center > .tvd-flex-center {
    flex: 1 1 auto;
    min-width: 0;
    order: 2;
  }
  .sizetm-logo-center > .tvd-flex-center #logo,
  .sizetm-logo-center > .tvd-flex-center #logo img {
    max-width: 100%;
  }

  /* The Customizer can add a max-height equal to the desktop header height.
       Keep mobile logos inside the shorter mobile header instead. */
  #tvd-header-2 .mobile-nav #logo img,
  #tvd-header-2 .mobile-nav #logo-mobile img {
    max-height: 42px !important;
    width: auto;
  }
}

/* ==========================================================================
   WooCommerce Quick View Popup Styling & Responsive Fixes
   ========================================================================== */

/* 1. Backdrop Glassmorphism & High Z-Index Overlays */
.mfp-bg {
  z-index: 999999 !important;
  background: rgba(10, 10, 15, 0.75) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}
.mfp-wrap {
  z-index: 1000000 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

/* 2. Transition matching the 300ms Magnific Popup removal delay */
.mfp-content {
  transition:
    transform 0.3s cubic-bezier(0.16, 1, 0.3, 1),
    opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* 3. Popup Wrapper & Container Layout */
.product-lightbox.lightbox-content {
  max-width: 950px !important;
  border-radius: 16px !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
}
.product-quick-view-container {
  padding: 0 !important;
}
.product-quick-view-container .tvd-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 !important;
}

/* 4. Column Responsive Stacking (Tablet & Mobile) */
@media (max-width: 849px) {
  .product-quick-view-container .tvd-grid {
    grid-template-columns: 1fr;
  }
  .product-quick-view-container .tvd-grid__item {
    grid-column: 1 / -1;
  }
  .product-quick-view-container .product-info {
    padding: 20px !important;
  }
  .product-quick-view-container .product-lightbox-inner {
    padding: 15px !important;
  }
}

/* 5. Mobile Container Margin Adjustments */
@media (max-width: 549px) {
  .mfp-container {
    padding: 12px !important;
  }
}

/* 6. Image gallery aspect-fit & height capping */
.product-quick-view-container .product-gallery-slider {
  width: 100% !important;
  height: auto !important;
  max-height: 480px !important;
  overflow: hidden !important;
  background: #fafafa !important;
}
.product-quick-view-container .product-gallery-slider img {
  max-height: 480px !important;
  width: 100% !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
  background-color: #fafafa !important;
}
@media (max-width: 849px) {
  .product-quick-view-container .product-gallery-slider {
    max-height: 380px !important;
  }
  .product-quick-view-container .product-gallery-slider img {
    max-height: 380px !important;
    border-top-left-radius: 16px !important;
    border-top-right-radius: 16px !important;
  }
}

/* 7. Close button floating design */
.mfp-close {
  width: 36px !important;
  height: 36px !important;
  line-height: 36px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
  top: 15px !important;
  right: 15px !important;
  color: #333 !important;
  opacity: 0.8 !important;
  font-size: 24px !important;
  text-align: center !important;
  padding: 0 !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.mfp-close:hover {
  background: #fff !important;
  transform: scale(1.08) !important;
  opacity: 1 !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.16) !important;
}
.mfp-content .mfp-close {
  position: absolute !important;
}

/* 8. Inner form UI refinements */
.product-quick-view-container .quantity input[type="number"] {
  border-radius: 6px !important;
}
.product-quick-view-container .single_add_to_cart_button {
  border-radius: 8px !important;
  font-weight: 600 !important;
}

/* ==========================================================================
   9. BuildWEB Page Builder Layout & Spacing Overlap Fixes
   ========================================================================== */
.tvd-hero-panel {
  position: relative;
  box-sizing: border-box;
  min-height: 30px;
  overflow: hidden;
  width: 100%;
}

.tvd-content-band {
  position: relative;
  box-sizing: border-box;
}

.tvd-layout-line {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  width: 100%;
}

.tvd-layout-line-col {
  display: flex;
  flex-flow: column nowrap;
}

.tvd-layout-line-center {
  justify-content: center;
}

.tvd-layout-line-start {
  justify-content: flex-start;
}

.tvd-layout-line-end {
  justify-content: flex-end;
}

.tvd-layout-rail {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
}

.tvd-hero-panel__inner,
.tvd-hero-panel__bg {
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
}

/* Keep the full-bleed background below interactive banner layers. */
.tvd-hero-panel__bg {
  z-index: 0;
  pointer-events: none;
}

.tvd-hero-panel .layzers-banner {
  position: relative;
  z-index: 1;
}

.tvd-hero-panel__bg img,
.tvd-media-cover img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.tvd-media-cover {
  display: block;
  overflow: hidden;
  position: relative;
}

.tvd-surface-unit,
.tvd-surface-copy,
.tvd-icon-card,
.tvd-gallery-tile,
.tvd-status-mark {
  box-sizing: border-box;
  position: relative;
}

.tvd-status-mark-container {
  line-height: 1;
  position: absolute;
  z-index: 1;
}

.tvd-content-band::after,
.tvd-grid::after,
.tvd-grid__item::after,
.tvd-grid__content::after,
.banner-grid::after,
.slider-wrapper::after,
.text-box::after {
  content: "";
  display: table;
  clear: both;
}

.section-title-container {
  position: relative;
  clear: both;
  margin-bottom: 1.5em;
}

.tvd-grid__content {
  position: relative;
  box-sizing: border-box;
}

.text-box {
  position: relative;
  box-sizing: border-box;
}

/* ==========================================================================
   10. Global WooCommerce SVG Icon Constraints & Notice Protection
   ========================================================================== */
.tvd-wc-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25em;
  height: 1.25em;
  vertical-align: middle;
}

.tvd-wc-icon svg {
  width: 1.25em !important;
  height: 1.25em !important;
  max-width: 1.25em !important;
  max-height: 1.25em !important;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
  display: inline-block;
}

.tvd-wc-empty-cart__icon svg {
  width: 48px !important;
  height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
}

/* ========================================================================== 
   Single post reading layout
   ========================================================================== */
.blog-single {
  background: #f5f7fb;
}

.blog-single > .tvd-grid {
  max-width: 1240px;
  align-items: flex-start;
}

.blog-single article .article-inner {
  overflow: hidden;
  background: #fff;
  border: 1px solid #e7ebf2;
  border-radius: 18px;
  box-shadow: 0 14px 36px rgba(24, 47, 81, 0.08);
}

.blog-single .entry-header-text {
  padding: clamp(28px, 4vw, 52px) clamp(24px, 5vw, 64px) 20px;
}

.blog-single .entry-title,
.blog-single .entry-title a {
  color: #172b4d;
  font-size: clamp(28px, 3.4vw, 44px);
  line-height: 1.2;
  text-decoration: none;
}

.blog-single .entry-meta,
.blog-single .entry-header .is-divider {
  color: #6b7a90;
}

.blog-single .entry-image {
  margin: 0;
  background: #eef2f7;
}

.blog-single .entry-image img,
.blog-single .entry-content img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}

.blog-single .entry-content {
  max-width: 840px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 26px) clamp(24px, 5vw, 64px);
  color: #344054;
  font-size: 17px;
  line-height: 1.8;
}

.blog-single .entry-content > :first-child {
  margin-top: 0;
}
.blog-single .entry-content > :last-child {
  margin-bottom: 0;
}
.blog-single .entry-content h2,
.blog-single .entry-content h3,
.blog-single .entry-content h4 {
  color: #172b4d;
  line-height: 1.3;
  margin-top: 1.6em;
}
.blog-single .entry-content a {
  color: var(--tvdt-color-primary, #1f6feb);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.blog-single .entry-content blockquote {
  margin: 1.8em 0;
  padding: 16px 22px;
  border-left: 4px solid var(--tvdt-color-primary, #1f6feb);
  background: #f7faff;
  color: #475467;
}

.blog-single .blog-share,
.blog-single .entry-meta,
.blog-single .entry-author,
.blog-single #comments {
  margin-left: clamp(24px, 5vw, 64px);
  margin-right: clamp(24px, 5vw, 64px);
}
.blog-single .entry-meta {
  padding: 20px 0 30px;
  border-top: 1px solid #e7ebf2;
  color: #667085;
}

.blog-single .post-sidebar .widget-area {
  padding: clamp(22px, 3vw, 32px);
  border: 1px solid #e7ebf2;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(24, 47, 81, 0.06);
}

.blog-single .post-sidebar .widget {
  margin-bottom: 30px;
}
.blog-single .post-sidebar .widget:last-child {
  margin-bottom: 0;
}
.blog-single .post-sidebar .widget-title {
  margin: 0 0 16px;
  color: #172b4d;
  font-size: 20px;
}
.blog-single .post-sidebar a {
  color: #344054;
}
.blog-single .post-sidebar li {
  padding: 8px 0;
  border-bottom: 1px solid #eef1f5;
}
.blog-single .post-sidebar li:last-child {
  border-bottom: 0;
}

@media (max-width: 849px) {
  .blog-single {
    padding: 28px 0;
  }
  .blog-single > .tvd-grid {
    grid-template-columns: 1fr;
  }
  .blog-single .post-sidebar {
    padding-top: 0;
  }
  .blog-single .post-sidebar .widget-area {
    margin-top: 8px;
  }
  .blog-single .entry-content {
    font-size: 16px;
    line-height: 1.75;
  }
}

@media (max-width: 549px) {
  .blog-single article .article-inner {
    border-radius: 12px;
  }
  .blog-single .entry-header-text {
    padding: 26px 20px 14px;
  }
  .blog-single .entry-content {
    padding: 26px 20px;
  }
  .blog-single .blog-share,
  .blog-single .entry-meta,
  .blog-single .entry-author,
  .blog-single #comments {
    margin-left: 20px;
    margin-right: 20px;
  }
  .blog-single .post-sidebar .widget-area {
    padding: 20px;
  }
}

/* Modern WooCommerce account authentication */
body.woocommerce-account .tvd-wc-account-auth {
  background:
    radial-gradient(
      circle at 8% 5%,
      rgba(99, 102, 241, 0.16),
      transparent 34rem
    ),
    radial-gradient(
      circle at 92% 92%,
      rgba(14, 165, 233, 0.14),
      transparent 30rem
    ),
    #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  box-shadow: 0 24px 55px rgba(15, 23, 42, 0.1);
  margin: 38px auto;
  /* max-width: 1050px; */
  overflow: hidden;
  padding: 22px;
}
body.woocommerce-account .tvd-wc-account-auth #customer_login {
  align-items: stretch;
  margin: 0;
}
body.woocommerce-account
  .tvd-wc-account-auth
  #customer_login
  > .tvd-grid__item {
  display: flex;
  margin-bottom: 0;
  padding: 0;
}
body.woocommerce-account .tvd-wc-account-auth .account-login-inner,
body.woocommerce-account .tvd-wc-account-auth .account-register-inner {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(226, 232, 240, 0.95);
  border-radius: 18px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
  min-height: 100%;
  padding: 42px;
  position: relative;
  width: 100%;
}
body.woocommerce-account .tvd-wc-account-auth .account-login-inner:before,
body.woocommerce-account .tvd-wc-account-auth .account-register-inner:before {
  align-items: center;
  background: linear-gradient(135deg, #4f46e5, #0ea5e9);
  border-radius: 12px;
  box-shadow: 0 8px 18px rgba(79, 70, 229, 0.24);
  color: #fff;
  content: "\2726";
  display: inline-flex;
  font-size: 19px;
  height: 42px;
  justify-content: center;
  margin-bottom: 19px;
  width: 42px;
}
body.woocommerce-account .tvd-wc-account-auth .account-register-inner:before {
  background: linear-gradient(135deg, #0f766e, #14b8a6);
  box-shadow: 0 8px 18px rgba(13, 148, 136, 0.22);
  content: "+";
  font-size: 25px;
  font-weight: 400;
}
body.woocommerce-account .tvd-wc-account-auth h3 {
  color: #0f172a;
  font-size: clamp(24px, 2.4vw, 31px);
  letter-spacing: -0.035em;
  line-height: 1.15;
  margin: 0 0 7px;
  text-transform: none;
}
body.woocommerce-account .tvd-wc-account-auth h3:after {
  color: #64748b;
  content: "Access your account securely.";
  display: block;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0;
  margin-top: 9px;
  text-transform: none;
}
body.woocommerce-account .tvd-wc-account-auth .account-register-inner h3:after {
  content: "Create an account in just a few steps.";
}
body.woocommerce-account .tvd-wc-account-auth .form-row {
  margin-bottom: 19px;
}
body.woocommerce-account .tvd-wc-account-auth label {
  color: #334155;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.01em;
}
body.woocommerce-account .tvd-wc-account-auth .required {
  color: #e11d48;
}
body.woocommerce-account .tvd-wc-account-auth input.input-text {
  background: #f8fafc;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  box-shadow: none;
  color: #0f172a;
  font-size: 15px;
  height: 48px;
  margin-top: 7px;
  padding: 0 14px;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}
body.woocommerce-account .tvd-wc-account-auth input.input-text:focus {
  background: #fff;
  border-color: #6366f1;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.13);
  outline: 0;
}
body.woocommerce-account
  .tvd-wc-account-auth
  .woocommerce-form-login__rememberme {
  align-items: center;
  color: #64748b;
  display: inline-flex;
  font-size: 13px;
  font-weight: 500;
  gap: 7px;
}
body.woocommerce-account .tvd-wc-account-auth input[type="checkbox"] {
  accent-color: #4f46e5;
  height: 16px;
  margin: 0;
  width: 16px;
}
body.woocommerce-account .tvd-wc-account-auth .button {
  background: linear-gradient(135deg, #4f46e5, #2563eb);
  border: 0;
  border-radius: 10px;
  box-shadow: 0 10px 20px rgba(37, 99, 235, 0.21);
  color: #fff;
  float: right;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.01em;
  min-height: 46px;
  padding: 0 23px;
  text-transform: none;
  transition:
    box-shadow 0.2s ease,
    transform 0.2s ease;
}
body.woocommerce-account .tvd-wc-account-auth .account-register-inner .button {
  background: linear-gradient(135deg, #0f766e, #14b8a6);
  box-shadow: 0 10px 20px rgba(13, 148, 136, 0.2);
  float: none;
  width: 100%;
}
body.woocommerce-account .tvd-wc-account-auth .button:hover {
  box-shadow: 0 13px 25px rgba(37, 99, 235, 0.28);
  color: #fff;
  transform: translateY(-2px);
}
body.woocommerce-account
  .tvd-wc-account-auth
  .account-register-inner
  .button:hover {
  box-shadow: 0 13px 25px rgba(13, 148, 136, 0.28);
}
body.woocommerce-account .tvd-wc-account-auth .lost_password {
  clear: both;
  margin: 23px 0 0;
}
body.woocommerce-account .tvd-wc-account-auth .lost_password a {
  color: #4f46e5;
  font-size: 13px;
  font-weight: 700;
}
body.woocommerce-account .tvd-wc-account-auth .woocommerce-privacy-policy-text,
body.woocommerce-account .tvd-wc-account-auth .account-register-inner > p {
  color: #64748b;
  font-size: 13px;
  line-height: 1.65;
}
body.woocommerce-account
  .tvd-wc-account-auth
  .account-register-inner
  .woocommerce-privacy-policy-text
  a {
  color: #0f766e;
  font-weight: 700;
}

/* Login-only state: keep the form focused instead of stretching across the page. */
body.woocommerce-account
  .tvd-wc-account-auth:not(:has(.woocommerce-form-register)) {
  max-width: 660px;
}
body.woocommerce-account
  .tvd-wc-account-auth:not(:has(.woocommerce-form-register))
  #customer_login
  > .tvd-grid__item {
  margin: 0 auto;
  max-width: 560px;
}
body.woocommerce-account
  .tvd-wc-account-auth:not(:has(.woocommerce-form-register))
  .account-login-inner {
  padding: 44px 46px;
}
body.woocommerce-account
  .tvd-wc-account-auth:not(:has(.woocommerce-form-register))
  .woocommerce-form-login__rememberme {
  margin-top: 5px;
}

@media (max-width: 849px) {
  body.woocommerce-account .tvd-wc-account-auth {
    border-radius: 18px;
    margin: 24px 15px;
    padding: 12px;
  }
  body.woocommerce-account
    .tvd-wc-account-auth
    #customer_login
    > .tvd-grid__item {
    width: 100%;
  }
  body.woocommerce-account .tvd-wc-account-auth .account-login-inner,
  body.woocommerce-account .tvd-wc-account-auth .account-register-inner {
    padding: 30px 24px;
  }
  body.woocommerce-account .tvd-wc-account-auth .account-register-inner {
    margin-top: 16px;
  }
}

@media (max-width: 480px) {
  body.woocommerce-account .tvd-wc-account-auth {
    margin: 16px 0;
  }
  body.woocommerce-account .tvd-wc-account-auth .account-login-inner,
  body.woocommerce-account .tvd-wc-account-auth .account-register-inner {
    border-radius: 13px;
    padding: 25px 18px;
  }
  body.woocommerce-account
    .tvd-wc-account-auth
    .woocommerce-form-login__rememberme {
    margin-bottom: 16px;
  }
  body.woocommerce-account .tvd-wc-account-auth .button {
    float: none;
    width: 100%;
  }
}

/* Modern product review experience */
.tvd-product-reviews {
  --review-ink: #172033;
  --review-muted: #667085;
  --review-line: #e6eaf0;
  --review-surface: #f7f9fc;
  --review-accent: var(--tvdt-color-primary, #6c5ce7);
  margin: 22px 0 0;
  padding: 34px;
  border: 1px solid var(--review-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(20, 33, 61, 0.07);
}
.tvd-product-reviews__intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  margin: 0 0 30px;
  padding: 0 0 28px;
  border-bottom: 1px solid var(--review-line);
}
.tvd-product-reviews__eyebrow {
  color: var(--review-ink);
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  font-weight: 800;
  letter-spacing: -0.035em;
  margin-left: 3%;
}
.tvd-product-reviews__summary {
  display: flex;
  align-items: center;
  gap: 14px;
  text-align: right;
}
.tvd-product-reviews__summary p {
  margin: 0;
  color: var(--review-muted);
  font-size: 0.82rem;
  line-height: 1.45;
  max-width: 112px;
}
.tvd-product-reviews__score {
  display: flex;
  align-items: center;
  gap: 7px;
}
.tvd-product-reviews__score strong {
  color: var(--review-ink);
  font-size: 1.55rem;
  letter-spacing: -0.05em;
}
.tvd-product-reviews__score .star-rating {
  margin: 0;
  transform: scale(0.9);
  transform-origin: right center;
}
.tvd-product-reviews #comments,
.tvd-product-reviews #review_form_wrapper {
  padding: 10px 12px 10px 10px;
}
.tvd-product-reviews .woocommerce-Reviews-title,
.tvd-product-reviews #reply-title {
  color: var(--review-ink);
  font-size: 1.08rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin: 0 0 18px;
}
.tvd-product-reviews .commentlist {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.tvd-product-reviews .commentlist > li {
  margin: 0;
  list-style: none;
}
.tvd-product-reviews .review-item {
  align-items: flex-start;
  gap: 14px;
  padding: 20px;
  border: 1px solid var(--review-line);
  border-radius: 16px;
  background: linear-gradient(135deg, #fff, var(--review-surface));
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.tvd-product-reviews .review-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(20, 33, 61, 0.08);
}
.tvd-product-reviews .review-item .avatar {
  width: 44px;
  height: 44px;
  border: 2px solid #fff;
  border-radius: 50%;
  box-shadow: 0 3px 10px rgba(20, 33, 61, 0.14);
}
.tvd-product-reviews .review-item .description {
  color: #445065;
  font-size: 0.94rem;
  line-height: 1.65;
}
.tvd-product-reviews .review-item .description p:last-child {
  margin-bottom: 0;
}
.tvd-product-reviews .review-item .meta {
  color: var(--review-muted);
  font-size: 0.8rem;
  margin: 0 0 7px;
}
.tvd-product-reviews .review-item .woocommerce-review__author {
  color: var(--review-ink);
  font-weight: 800;
}
.tvd-product-reviews .review-item .star-rating {
  margin: 2px 0 8px;
}
.tvd-product-reviews .review-form-inner {
  padding: 25px;
  border: 0;
  border-radius: 18px;
  background: var(--review-surface);
}
.tvd-product-reviews .comment-form-rating,
.tvd-product-reviews .comment-form-comment {
  margin-bottom: 16px;
}
.tvd-product-reviews .comment-form-author,
.tvd-product-reviews .comment-form-email {
  display: inline-block;
  width: calc(50% - 7px);
  vertical-align: top;
}
.tvd-product-reviews .comment-form-author {
  margin-right: 10px;
}
.tvd-product-reviews
  :is(input[type="text"], input[type="email"], select, textarea) {
  border: 1px solid #d9e0ea;
  border-radius: 10px;
  box-shadow: none;
}
.tvd-product-reviews
  :is(input[type="text"], input[type="email"], select, textarea):focus {
  border-color: var(--review-accent);
  box-shadow: 0 0 0 3px
    color-mix(in srgb, var(--review-accent) 15%, transparent);
  outline: 0;
}
.tvd-product-reviews textarea {
  min-height: 132px;
}
.tvd-product-reviews input[type="submit"] {
  border-radius: 999px;
  box-shadow: 0 7px 16px
    color-mix(in srgb, var(--review-accent) 28%, transparent);
  padding: 0 24px;
}
.tvd-product-reviews .woocommerce-noreviews {
  margin: 0;
  padding: 24px;
  border: 1px dashed #cdd5e1;
  border-radius: 14px;
  color: var(--review-muted);
  text-align: center;
}
@media (max-width: 849px) {
  .tvd-product-reviews {
    padding: 24px;
  }
  .tvd-product-reviews #comments,
  .tvd-product-reviews #review_form_wrapper {
    padding: 0;
  }
  .tvd-product-reviews #review_form_wrapper {
    margin-top: 22px;
  }
}
@media (max-width: 549px) {
  .tvd-product-reviews {
    padding: 20px;
    border-radius: 18px;
  }
  .tvd-product-reviews__intro {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .tvd-product-reviews__summary {
    text-align: left;
  }
  .tvd-product-reviews__score .star-rating {
    transform-origin: left center;
  }
  .tvd-product-reviews .comment-form-author,
  .tvd-product-reviews .comment-form-email {
    display: block;
    width: 100%;
  }
  .tvd-product-reviews .comment-form-author {
    margin-right: 0;
  }
}

/* ==========================================================================
   Header Full-Width Layout & Sticky Containment Fix
   ========================================================================== */
.header-main,
#tvd-header-2 {
  min-height: 70px;
  height: auto;
  position: relative;
  z-index: 10;
  background: #ffffff;
}

#tvd-header-2 .header-inner {
  min-height: 70px;
  height: auto;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: clamp(8px, 1.5vw, 24px);
}

#tvd-header-2.header-main--vertical-center .header-inner {
  min-height: 70px;
  height: 100%;
  align-items: center !important;
}

#logo,
#logo a {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

#logo img,
.header-logo-element img,
.header_logo {
  max-height: clamp(38px, 4vw, 52px) !important;
  width: auto !important;
  object-fit: contain;
  transition: max-height 0.25s ease;
}

/* Search Form Responsive Scaling */
#tvd-header-2 .header-inner > .hide-for-medium:has(.header-search-form) {
  flex: 1 1 360px;
  min-width: 0;
}

#tvd-header-2 .header-inner > .hide-for-medium:has(#logo):not(:has(.header-search-form)) {
  flex: 0 0 auto;
}

#tvd-header-2 .header-inner > .hide-for-medium.tvd-flex-end:not(:has(.header-search-form)) {
  flex: 0 0 auto;
}

#tvd-header-2 .header-inner > .hide-for-medium:has(.header-search-form) > .header-nav {
  width: 100%;
  min-width: 0;
}

#tvd-header-2 .header-nav > .tvd-menu-item.search-form,
#tvd-header-2 .header-search-form {
  flex: 1 1 360px;
  width: auto !important;
  min-width: 0;
  max-width: 460px;
}

#tvd-header-2 .header-search-form-wrapper,
#tvd-header-2 .searchform-wrapper {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

#tvd-header-2 .searchform .tvd-layout-line {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0;
  border: none;
  background: transparent;
  padding: 0;
  box-shadow: none;
}

#tvd-header-2 .header-search-form-wrapper {
  border: 1.5px solid #e2e8f0;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: all 0.2s ease;
}

#tvd-header-2 .header-search-form-wrapper:focus-within {
  border-color: #2563eb;
  box-shadow: 0 0 0 3.5px rgba(37, 99, 235, 0.15), 0 2px 8px rgba(0, 0, 0, 0.04);
}

#tvd-header-2 .search_categories {
  max-width: clamp(85px, 10vw, 130px);
  font-size: 13.5px;
  border: 0 !important;
  border-right: 1px solid rgba(148, 163, 184, 0.25) !important;
  border-radius: 999px 0 0 999px !important;
  background-color: rgba(241, 245, 249, 0.5) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 10px center !important;
  background-size: 14px !important;
  padding: 0 28px 0 14px !important;
  height: 42px !important;
  line-height: 42px !important;
  color: #334155;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  transition: all 0.2s ease;
}

#tvd-header-2 .search_categories:hover {
  background-color: rgba(241, 245, 249, 0.9) !important;
  color: #0f172a;
}

#tvd-header-2 .header-search-form-wrapper button.submit-button {
  margin: 2px 3px 2px 0 !important;
  border-radius: 999px !important;
  width: 40px !important;
  height: 40px !important;
  background: linear-gradient(135deg, #2563eb 0%, #0284c7 100%) !important;
  color: #fff !important;
  transition: all 0.2s ease !important;
  flex-shrink: 0 !important;
}

#tvd-header-2 .header-search-form-wrapper button.submit-button:hover {
  transform: scale(1.04) !important;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.35) !important;
}

/* Header Buttons, Cart, and Account Responsive */
#tvd-header-2 .header-button > a,
#tvd-header-2 .cart-item .header-cart-link,
#tvd-header-2 .account-item > a {
  min-height: 38px !important;
  max-height: 42px !important;
  padding: 6px 14px !important;
  box-sizing: border-box;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

@media (max-width: 1200px) {
  #tvd-header-2 .account-item > a span {
    display: none !important;
  }
  #tvd-header-2 .header-cart-title {
    font-size: 12px;
  }
}

@media (max-width: 992px) {
  #tvd-header-2 .header-cart-title .amount {
    display: none !important;
  }
}

/* Fix sticky header (stuck state) overflow when scrolling */
.stuck #tvd-header-2,
.stuck .header-main {
  min-height: 60px !important;
  height: auto !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

.stuck #tvd-header-2 .header-inner {
  min-height: 60px !important;
  height: 60px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.stuck #logo,
.stuck #logo a {
  height: 100% !important;
  max-height: 60px !important;
  display: flex !important;
  align-items: center !important;
}

.stuck #logo img,
.stuck .header-logo-element img,
.stuck .header_logo {
  max-height: 42px !important;
  height: auto !important;
  width: auto !important;
}

/* ==========================================================================
   Header UI Block A (Post 124) Styling & Progressive Auto-Hide
   ========================================================================== */
.tvd-header-block-wrapper {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
}

.tvd-header-block-wrapper br {
  display: none !important;
}

.webtvd-tvdeditorz-iframe post-wrapper {
  display: block !important;
  align-items: center !important;
}

.tvd-banner-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 12px;
  border-radius: 10px;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  text-decoration: none !important;
  color: #1f2937;
  transition: all 0.25s ease;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
  white-space: nowrap;
  flex: 0 0 auto;
}

.tvd-banner-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
  border-color: #48a109;
}

.tvd-icon {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f0fdf4;
  font-size: 16px;
  flex-shrink: 0;
}

.tvd-banner-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.tvd-banner-text strong {
  display: block;
  font-size: 12.5px;
  line-height: 1.25;
  font-weight: 700;
  color: #111827;
  white-space: nowrap;
}

.tvd-banner-text small {
  display: block;
  margin-top: 1px;
  color: #6b7280;
  font-size: 11px;
  line-height: 1.2;
  white-space: nowrap;
}

/* Auto-hide items progressively when width decreases */
@media (max-width: 1750px) {
  .tvd-banner-item.item-3 {
    display: none !important;
  }
}

@media (max-width: 1500px) {
  .tvd-banner-item.item-2 {
    display: none !important;
  }
}

@media (max-width: 1250px) {
  .tvd-banner-item.item-1,
  .tvd-header-block-wrapper {
    display: none !important;
  }
}

/* ==========================================================================
   Header Top Bar & Multi-row Header Alignment Fix
   ========================================================================== */
#tvd-header-1.header-top {
  background: linear-gradient(90deg, #090d16 0%, #0f172a 50%, #1e1b4b 100%) !important;
  min-height: 38px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 20;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

#tvd-header-1 .container,
#tvd-header-1 .tvd-layout-line {
  width: 100% !important;
  max-width: 90% !important;
  min-height: 38px;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

#tvd-header-1 .tvd-flex-item.tvd-flex-start:empty,
#tvd-header-1 .tvd-flex-item.tvd-flex-end:empty,
#tvd-header-1 .tvd-flex-item:has(ul:empty) {
  display: none !important;
}

#tvd-header-1 .tvd-flex-item.tvd-flex-center {
  flex: 1 1 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

#tvd-header-1 .tvd-menu.nav-center {
  width: 100% !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}

#tvd-header-1 .html_top_right_text {
  width: 100% !important;
}

#tvd-header-1 .top-header {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 4px 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#tvd-header-1 .top-left,
#tvd-header-1 .top-right {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 20px !important;
  flex-wrap: nowrap !important;
}

#tvd-header-1 .top-left .item,
#tvd-header-1 .top-right .contact-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}

#tvd-header-1 .top-right strong {
  color: #ffeb3b !important;
  font-weight: 700 !important;
}

#tvd-header-1 .top-right .contact-link:hover {
  color: #e8f5e9 !important;
  transform: translateY(-1px);
}

@media (max-width: 1024px) {
  #tvd-header-1 .top-left,
  #tvd-header-1 .top-right {
    gap: 12px !important;
  }
  #tvd-header-1 .top-left .item,
  #tvd-header-1 .top-right .contact-link {
    font-size: 12px !important;
  }
}

@media (max-width: 849px) {
  #tvd-header-1 {
    display: none !important;
  }
}

/* ==========================================================================
   Header Bottom / Navigation Menu Responsive
   ========================================================================== */
.header-wrapper,
.wrapz-header {
  position: relative;
  width: 100%;
}

#tvd-header-3.header-bottom {
  position: relative;
  z-index: 5;
  min-height: 42px;
  height: auto;
}

#tvd-header-3 .tvd-layout-line {
  min-height: 42px;
  align-items: center;
}

#tvd-header-3 .header-bottom-nav {
  gap: clamp(4px, 0.8vw, 12px);
  flex-wrap: wrap;
}

#tvd-header-3 .header-bottom-nav > li > a {
  padding: clamp(6px, 0.8vw, 10px) clamp(8px, 1.2vw, 16px) !important;
  font-size: clamp(12px, 0.95vw, 14px) !important;
  border-radius: 8px;
  white-space: nowrap;
}

#tvd-header-3 .tvd-menu-dropdown {
  z-index: 9999 !important;
}


/* ==========================================================================
   Search & Archive Results Styling
   ========================================================================== */
.archive-page-header.tvd-search-hero {
	background: linear-gradient(135deg, #0f172a 0%, #1e1b4b 50%, #312e81 100%);
	padding: 55px 24px;
	margin-bottom: 40px;
	border-radius: 24px;
	color: #ffffff;
	box-shadow: 0 16px 36px rgba(15, 23, 42, 0.2), 0 0 0 1px rgba(255, 255, 255, 0.08);
	position: relative;
	overflow: hidden;
}

.archive-page-header.tvd-search-hero::before {
	content: '';
	position: absolute;
	top: -50%;
	right: -20%;
	width: 400px;
	height: 400px;
	background: radial-gradient(circle, rgba(99, 102, 241, 0.25) 0%, transparent 70%);
	border-radius: 50%;
	pointer-events: none;
}

.tvd-search-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 18px;
	border-radius: 999px;
	background: rgba(99, 102, 241, 0.2);
	border: 1px solid rgba(165, 180, 252, 0.3);
	backdrop-filter: blur(10px);
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 16px;
	color: #e0e7ff;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.tvd-search-hero__title {
	font-size: clamp(24px, 4vw, 36px) !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	margin: 0 !important;
	line-height: 1.3 !important;
	text-transform: none !important;
	letter-spacing: -0.02em;
}

.tvd-search-hero__title span {
	color: #a5b4fc;
	text-shadow: 0 0 20px rgba(165, 180, 252, 0.4);
	text-decoration: underline decoration-style wavy;
	text-underline-offset: 6px;
}

.tvd-no-results-card {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 20px;
	padding: 45px 30px;
	text-align: center;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
	margin-bottom: 30px;
}

.tvd-no-results__icon {
	font-size: 48px;
	margin-bottom: 15px;
	line-height: 1;
}

.tvd-no-results__title {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #111827 !important;
	margin-bottom: 10px !important;
}

.tvd-no-results__desc {
	font-size: 15px;
	color: #6b7280;
	margin-bottom: 25px;
	max-width: 520px;
	margin-left: auto;
	margin-right: auto;
}

.tvd-no-results__search {
	max-width: 520px;
	margin: 0 auto 25px;
}

.tvd-no-results__search .tvd-layout-line {
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
	background: #f9fafb !important;
	border: 2px solid #e5e7eb !important;
	border-radius: 14px !important;
	padding: 4px 6px 4px 16px !important;
	box-sizing: border-box !important;
	transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

.tvd-no-results__search .tvd-layout-line:focus-within {
	border-color: #16a34a !important;
	box-shadow: 0 0 0 4px rgba(22, 163, 74, 0.15) !important;
	background: #ffffff !important;
}

.tvd-no-results__search .searchform__field {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

.tvd-no-results__search input[type="search"],
.tvd-no-results__search input[type="text"] {
	width: 100% !important;
	height: 42px !important;
	border: none !important;
	background: transparent !important;
	color: #111827 !important;
	font-size: 15px !important;
	margin: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
	outline: none !important;
}

.tvd-no-results__search .searchform__submit {
	flex: 0 0 auto !important;
}

.tvd-no-results__search button,
.tvd-no-results__search .submit-button {
	height: 42px !important;
	width: 42px !important;
	min-width: 42px !important;
	border: none !important;
	border-radius: 10px !important;
	padding: 0 !important;
	background: #16a34a !important;
	color: #ffffff !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	transition: background-color 0.2s ease, transform 0.2s ease !important;
	margin: 0 !important;
}

.tvd-no-results__search button:hover,
.tvd-no-results__search .submit-button:hover {
	background: #15803d !important;
	transform: scale(1.04) !important;
}

.tvd-no-results__suggestions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 20px;
}

.tvd-no-results__label {
	font-size: 14px;
	font-weight: 600;
	color: #4b5563;
}

.tvd-search-tag {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 14px;
	background: #f3f4f6;
	color: #374151 !important;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none !important;
	transition: all 0.2s ease;
	border: 1px solid #e5e7eb;
}

.tvd-search-tag:hover {
	background: #16a34a;
	color: #ffffff !important;
	border-color: #16a34a;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(22, 163, 74, 0.2);
}

.blog-wrap .row,
.page-wrap .row,
.row-large {
	display: flex !important;
	flex-flow: row wrap !important;
	width: 100% !important;
}

.blog-wrap .row > .col,
.page-wrap .row > .col,
.row-large > .col {
	box-sizing: border-box !important;
}

/* Fix WooCommerce review star spacing */
.comment-form-rating .stars a {
	width: 24px !important;
	margin-left: 0 !important;
	margin-right: 5px;
	position: relative;
	display: inline-block;
	text-indent: 9999px !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	border: none !important;
	border-right: none !important;
	box-shadow: none !important;
	outline: none !important;
	font-size: 20px !important;
}
.comment-form-rating .stars a::before,
.comment-form-rating .stars a::after {
	position: absolute;
	left: 0;
	top: 0;
	text-indent: 0 !important;
	font-size: 20px !important;
}

/* Star rating interactive states (hover/active) */
.comment-form-rating .stars a::after {
	color: #d1d5db !important; /* Gray base state */
	transition: color 0.2s ease;
}

/* When a star is clicked (container gets .selected, clicked star gets .active) */
.comment-form-rating .stars.selected a::after {
	color: #f59e0b !important; /* Gold */
}
/* Un-light the stars that come AFTER the active star */
.comment-form-rating .stars.selected a.active ~ a::after {
	color: #d1d5db !important; /* Gray */
}

/* Hover state overrides active state so users see what they are about to select */
.comment-form-rating .stars:hover a::after {
	color: #f59e0b !important; /* Gold */
}
/* Un-light the stars that come AFTER the currently hovered star */
.comment-form-rating .stars:hover a:hover ~ a::after {
	color: #d1d5db !important; /* Gray */
}

/* Review Form Modern Decor */
.tvd-product-reviews .review-form-inner.has-border {
	border: 1px solid rgba(255, 255, 255, 0.6) !important;
	border-radius: 20px !important;
	background: #ffffff !important;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.06), 0 5px 15px rgba(0, 0, 0, 0.03) !important;
	padding: 35px 40px !important;
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
	position: relative;
	overflow: hidden;
}

/* Brand colored top accent line */
.tvd-product-reviews .review-form-inner.has-border::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 5px;
	background: linear-gradient(90deg, #16a34a, #eab308); /* Green to Yellow-Orange */
}

.tvd-product-reviews .review-form-inner.has-border:hover {
	box-shadow: 0 20px 45px rgba(0, 0, 0, 0.1), 0 10px 20px rgba(0, 0, 0, 0.05) !important;
	transform: translateY(-4px);
}

.mfp-content .product-quick-view-container > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    margin: 0 !important;
}

/* Cột trái */
.mfp-content .product-quick-view-container > .row > .product-gallery {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
    float: none !important;
}

/* Cột phải */
.mfp-content .product-quick-view-container > .row > .product-info {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
    float: none !important;
}

/* Center the visible logo inside its fixed-width mobile header slot. */
@media (max-width: 849px) {
    #tvd-header-2 .mobile-nav #logo > a,
    #tvd-header-2 .mobile-nav #logo-mobile > a {
        margin-inline: auto;
    }
}

/* Full width container layout */
.container,
.container-width,
.full-width .ubermenu-nav,
.tvd-layout-rail {
    max-width: 90% !important;
}

/* ==========================================================================
   Header Top Bar & Multi-row Header Alignment Fix
   ========================================================================== */
#tvd-header-1.header-top {
  background: linear-gradient(90deg, #1e5631 0%, #4c9a2a 100%) !important;
  min-height: 38px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

#tvd-header-1 .container,
#tvd-header-1 .tvd-layout-line {
  width: 100% !important;
  max-width: 90% !important;
  min-height: 38px;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

#tvd-header-1 .tvd-flex-item.tvd-flex-start:empty,
#tvd-header-1 .tvd-flex-item.tvd-flex-end:empty,
#tvd-header-1 .tvd-flex-item:has(ul:empty) {
  display: none !important;
}

#tvd-header-1 .tvd-flex-item.tvd-flex-center {
  flex: 1 1 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

#tvd-header-1 .tvd-menu.nav-center {
  width: 100% !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}

#tvd-header-1 .html_top_right_text {
  width: 100% !important;
}

#tvd-header-1 .top-header {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 4px 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#tvd-header-1 .top-left,
#tvd-header-1 .top-right {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 20px !important;
  flex-wrap: nowrap !important;
}

#tvd-header-1 .top-left .item,
#tvd-header-1 .top-right .contact-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}

#tvd-header-1 .top-right strong {
  color: #ffeb3b !important;
  font-weight: 700 !important;
}

#tvd-header-1 .top-right .contact-link:hover {
  color: #e8f5e9 !important;
  transform: translateY(-1px);
}

@media (max-width: 1024px) {
  #tvd-header-1 .top-left,
  #tvd-header-1 .top-right {
    gap: 12px !important;
  }
  #tvd-header-1 .top-left .item,
  #tvd-header-1 .top-right .contact-link {
    font-size: 12px !important;
  }
}

@media (max-width: 849px) {
  #tvd-header-1 {
    display: none !important;
  }
}

/* Fix header structure stacking context and height containment */
.header-wrapper,
.wrapz-header {
  position: relative;
  width: 100%;
}

#tvd-header-2.header-main {
  position: relative;
  z-index: 10;
  background: #ffffff;
}

#tvd-header-3.header-bottom {
  position: relative;
  z-index: 9;
  min-height: 42px;
}

/* ==========================================================================
   Navigation Menu Components in Header Templates / Shortcodes
   ========================================================================== */
.nav-wrapper.nav-menu-container {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
}

.nav-wrapper.nav-menu-container ul.header-nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  list-style: none !important;
  margin: 0;
  padding: 0;
  gap: 4px;
}

.nav-wrapper.nav-menu-container ul.header-nav.nav-center,
.nav-wrapper.nav-menu-container ul.header-nav.text-center {
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
}

.nav-wrapper.nav-menu-container ul.header-nav.nav-right,
.nav-wrapper.nav-menu-container ul.header-nav.text-right {
  justify-content: flex-end;
  margin-left: auto;
}

.nav-wrapper.nav-menu-container ul.header-nav > li {
  list-style: none !important;
  position: relative;
  margin: 0;
  padding: 0;
}

.nav-wrapper.nav-menu-container ul.header-nav > li > a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  font-size: 13.5px;
  font-weight: 600;
  color: inherit;
  text-decoration: none;
  border-radius: 6px;
  transition: color 0.2s ease, background-color 0.2s ease, opacity 0.2s ease;
  white-space: nowrap;
}

.nav-wrapper.nav-menu-container ul.header-nav.nav-uppercase > li > a {
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 13px;
}

.nav-wrapper.nav-menu-container ul.header-nav.nav-size-small > li > a {
  padding: 6px 11px;
  font-size: 12.5px;
}

/* Dark mode contrast for navigation in dark sections */
.dark .nav-wrapper.nav-menu-container ul.header-nav > li > a {
  color: rgba(255, 255, 255, 0.85);
}

.dark .nav-wrapper.nav-menu-container ul.header-nav > li > a:hover,
.dark .nav-wrapper.nav-menu-container ul.header-nav > li.active > a {
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.08);
}

.dark .nav-wrapper.nav-menu-container ul.header-nav > li > a i {
  color: rgba(255, 255, 255, 0.6);
}

/* Dropdowns in builder navigation menus */
.nav-wrapper.nav-menu-container ul.header-nav .sub-menu {
  list-style: none !important;
  margin: 0;
  padding: 8px 0;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
  z-index: 999;
  text-align: left;
}

.dark .nav-wrapper.nav-menu-container ul.header-nav .sub-menu {
  background: #1c1917;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.5);
}

.nav-wrapper.nav-menu-container ul.header-nav li:hover > .sub-menu,
.nav-wrapper.nav-menu-container ul.header-nav li.tvd-test-dropdown > .sub-menu,
.nav-wrapper.nav-menu-container ul.header-nav li.is-submenu-open > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.nav-wrapper.nav-menu-container ul.header-nav .sub-menu li {
  list-style: none !important;
  margin: 0;
  padding: 0;
  position: relative;
}

.nav-wrapper.nav-menu-container ul.header-nav .sub-menu li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 9px 18px;
  font-size: 13px;
  font-weight: 500;
  text-transform: none;
  letter-spacing: normal;
  color: #334155;
  text-decoration: none;
  transition: background-color 0.15s ease, color 0.15s ease, padding-left 0.15s ease;
  white-space: nowrap;
}

.dark .nav-wrapper.nav-menu-container ul.header-nav .sub-menu li a {
  color: rgba(255, 255, 255, 0.8);
}

.nav-wrapper.nav-menu-container ul.header-nav .sub-menu li a:hover {
  background-color: rgba(0, 0, 0, 0.04);
  color: var(--tvdt-color-primary, #0284c7);
  padding-left: 22px;
}

.dark .nav-wrapper.nav-menu-container ul.header-nav .sub-menu li a:hover {
  background-color: rgba(255, 255, 255, 0.07);
  color: #38bdf8;
  padding-left: 22px;
}

/* Nested Submenu (Flyout) */
.nav-wrapper.nav-menu-container ul.header-nav .sub-menu .sub-menu {
  top: -8px;
  left: 100%;
  margin-left: 4px;
}

/* Icon Card (Featured Box) styling inside header sections */
.tvd-icon-card.featured-box {
  display: flex;
  align-items: center;
  gap: 12px;
}

.tvd-icon-card.featured-box.icon-box-left {
  flex-direction: row;
}

.tvd-icon-card.featured-box .icon-box-img {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tvd-icon-card.featured-box .icon-box-text {
  min-width: 0;
}

.tvd-icon-card.featured-box .icon-box-text h5 {
  margin: 0;
  font-size: 14px;
  line-height: 1.25;
  letter-spacing: 0.02em;
}

.tvd-icon-card.featured-box .icon-box-text h6 {
  margin: 2px 0 0 0;
  font-size: 12px;
  line-height: 1.25;
}

/* TVDTHEME SEO: Breadcrumbs Styling */
.tvd-breadcrumb {
  margin: 10px 0 18px;
  font-size: 13px;
  color: #64748b;
}
.tvd-breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 4px;
}
.tvd-breadcrumb-item a {
  color: #475569;
  text-decoration: none;
  transition: color 0.15s ease;
}
.tvd-breadcrumb-item a:hover {
  color: var(--tvdt-color-primary, #6c5ce7);
  text-decoration: underline;
}
.tvd-breadcrumb-sep {
  margin: 0 4px;
  color: #94a3b8;
}
.tvd-breadcrumb-item.is-current {
  color: #1e293b;
  font-weight: 500;
}

/* TVDTHEME SEO: Table of Contents (Mục lục bài viết) */
.tvd-toc-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 16px 20px;
  margin: 24px 0;
  max-width: 600px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.03);
}
.tvd-toc-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
  border-bottom: 1px solid #e2e8f0;
  padding-bottom: 8px;
}
.tvd-toc-title {
  font-weight: 700;
  font-size: 15px;
  color: #1e293b;
  display: flex;
  align-items: center;
  gap: 6px;
}
.tvd-toc-toggle {
  background: transparent;
  border: none;
  font-size: 12px;
  color: #64748b;
  cursor: pointer;
  padding: 2px 6px;
}
.tvd-toc-toggle:hover {
  color: #1e293b;
}
.tvd-toc-list {
  margin: 0;
  padding-left: 20px;
  line-height: 1.7;
}
.tvd-toc-list li {
  margin: 4px 0;
}
.tvd-toc-list a {
  color: #2563eb;
  text-decoration: none;
}
.tvd-toc-list a:hover {
  text-decoration: underline;
}
.tvd-toc-level-3 {
  margin-left: 18px !important;
  list-style-type: circle;
}

/* ==========================================================================
   TVD THEME MODERN SAAS & TECH 2026 DESIGN SYSTEM
   ========================================================================== */

/* Hero Banner & Aurora */
.tvd-hero-tech-section {
  position: relative;
  background: radial-gradient(130% 100% at 50% 0%, #1e1b4b 0%, #0f172a 60%, #090d16 100%) !important;
  overflow: hidden;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.tvd-hero-tech-section::before {
  content: '';
  position: absolute;
  top: -120px;
  left: 50%;
  transform: translateX(-50%);
  width: 850px;
  height: 450px;
  background: radial-gradient(circle, rgba(99, 102, 241, 0.3) 0%, rgba(6, 182, 212, 0.15) 50%, transparent 70%);
  filter: blur(70px);
  pointer-events: none;
}

.tvd-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 16px;
  background: rgba(99, 102, 241, 0.15);
  border: 1px solid rgba(129, 140, 248, 0.35);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  color: #a5b4fc;
  margin-bottom: 22px;
  backdrop-filter: blur(10px);
}

.tvd-hero-title {
  font-size: 44px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.03em;
  color: #ffffff;
  margin-bottom: 20px;
}

@media (max-width: 768px) {
  .tvd-hero-title {
    font-size: 30px !important;
  }
}

.tvd-gradient-text {
  background: linear-gradient(135deg, #38bdf8 0%, #818cf8 50%, #c084fc 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.tvd-hero-desc {
  font-size: 16px !important;
  line-height: 1.7;
  color: #94a3b8;
  margin-bottom: 28px;
  max-width: 540px;
}

.tvd-tech-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.tvd-tech-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 6px 14px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 500;
  color: #cbd5e1;
}

/* Hero Floating Mockup */
.tvd-hero-mockup-wrapper {
  position: relative;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 20px;
  padding: 18px;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5), 0 0 30px rgba(99, 102, 241, 0.2);
  backdrop-filter: blur(12px);
  transition: transform 0.4s ease;
}

.tvd-hero-mockup-wrapper:hover {
  transform: translateY(-6px);
}

.tvd-hero-mockup-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.tvd-mockup-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.tvd-mockup-dot.red { background: #ef4444; }
.tvd-mockup-dot.yellow { background: #f59e0b; }
.tvd-mockup-dot.green { background: #10b981; }

.tvd-mockup-badge-speed {
  margin-left: auto;
  background: rgba(16, 185, 129, 0.2);
  border: 1px solid rgba(16, 185, 129, 0.4);
  color: #34d399;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

/* Glassmorphism Feature Cards */
.tvd-feature-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  padding: 30px 22px;
  text-align: center;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.04), 0 2px 4px -2px rgba(0, 0, 0, 0.04);
  position: relative;
  overflow: hidden;
  height: 100%;
}

.tvd-feature-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 25px -5px rgba(99, 102, 241, 0.12), 0 8px 10px -6px rgba(99, 102, 241, 0.08);
  border-color: #c7d2fe;
}

.tvd-feature-icon-box {
  width: 58px;
  height: 58px;
  margin: 0 auto 16px auto;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  transition: transform 0.3s ease;
}

.tvd-feature-card:hover .tvd-feature-icon-box {
  transform: scale(1.12) rotate(4deg);
}

/* Stats Counter Bar */
.tvd-stats-section {
  background: linear-gradient(180deg, #090d16 0%, #0f172a 100%);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  padding: 36px 0;
}

.tvd-stat-item {
  text-align: center;
  padding: 10px;
}

.tvd-stat-number {
  font-size: 38px;
  font-weight: 800;
  letter-spacing: -1px;
  line-height: 1;
  margin-bottom: 8px;
  background: linear-gradient(135deg, #38bdf8 0%, #818cf8 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.tvd-stat-label {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #94a3b8;
}

/* SaaS Pricing Cards */
.tvd-pricing-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 36px 28px;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
  height: 100%;
  display: flex;
  flex-direction: column;
}

.tvd-pricing-card.featured {
  border: 2px solid #6366f1;
  box-shadow: 0 15px 35px rgba(99, 102, 241, 0.2);
  transform: scale(1.03);
}

.tvd-pricing-card:hover {
  transform: translateY(-8px) scale(1.02);
  box-shadow: 0 25px 40px rgba(0, 0, 0, 0.08);
}

.tvd-pricing-badge {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(135deg, #4f46e5, #06b6d4);
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 5px 18px;
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(79, 70, 229, 0.35);
  white-space: nowrap;
}

.tvd-pricing-subtitle {
  font-size: 13px;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  margin-bottom: 8px;
  letter-spacing: 0.5px;
}

.tvd-pricing-card.featured .tvd-pricing-subtitle {
  color: #4f46e5;
}

.tvd-pricing-title {
  font-size: 24px;
  font-weight: 800;
  color: #1e293b;
  margin: 0 0 14px 0;
  line-height: 1.25;
}

.tvd-pricing-price-wrap {
  margin-bottom: 16px;
  display: flex;
  align-items: baseline;
  gap: 6px;
}

.tvd-pricing-price {
  font-size: 36px;
  font-weight: 800;
  color: #4f46e5;
  line-height: 1;
}

.tvd-pricing-period {
  font-size: 13px;
  color: #94a3b8;
}

.tvd-pricing-desc {
  font-size: 13px;
  color: #64748b;
  margin-bottom: 18px;
  line-height: 1.6;
}

.tvd-pricing-features,
.tvd-pricing-features-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 22px 0 28px 0 !important;
  flex-grow: 1;
}

.tvd-pricing-features li,
.tvd-pricing-feature-row {
  list-style: none !important;
  font-size: 13.5px;
  color: #475569;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 10px !important;
  line-height: 1.5 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.tvd-pricing-features li span.check,
.tvd-pricing-feature-icon {
  color: #10b981 !important;
  font-weight: bold !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  flex: 0 0 16px !important;
  display: inline-block !important;
  margin-top: 1px;
}

.tvd-pricing-feature-text {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  color: #475569;
  line-height: 1.5;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.tvd-pricing-feature-text strong {
  color: #1e293b;
  font-weight: 700;
}

/* Interactive Showcase Banners */
.tvd-showcase-card {
  background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 32px;
  position: relative;
  overflow: hidden;
  color: #ffffff;
  transition: all 0.35s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.tvd-showcase-card:hover {
  border-color: rgba(56, 189, 248, 0.5);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4), 0 0 25px rgba(56, 189, 248, 0.15);
  transform: translateY(-6px);
}

/* Modern Card Glow & Hover for WooCommerce products */
.tvd-wc-product-card {
  border-radius: 16px !important;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.tvd-wc-product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08) !important;
}

/* ==========================================================================
   PHASE 2: FIX BUTTONS, TOPBAR, PRODUCT IMAGES & LAYOUT
   ========================================================================== */

/* Fix CTA buttons inside showcase & pricing cards - prevent circle */
.tvd-showcase-card .button,
.tvd-showcase-card a.button,
.tvd-pricing-card .button,
.tvd-pricing-card a.button {
  border-radius: 99px !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 12px 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
  text-align: center !important;
  justify-content: center !important;
}

.tvd-pricing-card a.button.is-outline {
  background: transparent !important;
  border: 2px solid #4f46e5 !important;
  color: #4f46e5 !important;
}

.tvd-pricing-card a.button.is-outline:hover {
  background: #4f46e5 !important;
  color: #ffffff !important;
}

.tvd-pricing-card.featured a.button {
  background: linear-gradient(135deg, #4f46e5, #6366f1) !important;
  border: none !important;
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(79, 70, 229, 0.4) !important;
}

.tvd-pricing-card.featured a.button:hover {
  background: linear-gradient(135deg, #4338ca, #4f46e5) !important;
  box-shadow: 0 8px 25px rgba(79, 70, 229, 0.55) !important;
  transform: translateY(-2px);
}

/* Fix showcase card buttons */
.tvd-showcase-card a.button.primary {
  background: linear-gradient(135deg, #4f46e5, #6366f1) !important;
  color: #ffffff !important;
}

.tvd-showcase-card a.button.alert {
  background: linear-gradient(135deg, #e11d48, #f43f5e) !important;
  color: #ffffff !important;
}

/* Modernize Top Bar - from green to dark tech */
#tvd-header-1.header-top {
  background: linear-gradient(90deg, #0f172a 0%, #1e293b 50%, #0f172a 100%) !important;
  border-bottom: 1px solid rgba(99, 102, 241, 0.2) !important;
}

#tvd-header-1 .top-header .item .icon {
  color: #38bdf8;
}

/* Fix product images aspect ratio */
.tvd-wc-product-card .box-image .image-fade_in_back img {
  object-fit: cover !important;
  aspect-ratio: 4 / 3;
  width: 100%;
  height: auto;
}

/* Improve Blog post cards */
.box-blog-post.has-hover {
  border-radius: 16px !important;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.box-blog-post.has-hover:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08);
}

/* Fix inline badge text wrapping */
.tvd-hero-tech-section span[style*="border-radius: 99px"],
.tvd-hero-tech-section span[style*="border-radius:99px"] {
  white-space: nowrap !important;
}

section[id^="section_"] span[style*="letter-spacing: 1px"] {
  display: inline-block !important;
  white-space: nowrap !important;
}

/* Pricing card price display */
.tvd-pricing-card .tvd-pricing-features li strong {
  color: #1e293b;
}

/* Hero section responsive fixes */
@media (max-width: 849px) {
  .tvd-hero-tech-section .tvd-hero-badge {
    font-size: 11px;
  }
  .tvd-hero-mockup-wrapper {
    margin-top: 30px;
  }
  .tvd-showcase-card {
    margin-bottom: 20px;
  }
}

/* Stats bar responsive */
@media (max-width: 549px) {
  .tvd-stat-number {
    font-size: 28px;
  }
  .tvd-stat-label {
    font-size: 11px;
  }
}

/* Smooth animations for all sections */
.tvd-feature-card,
.tvd-pricing-card,
.tvd-showcase-card,
.tvd-wc-product-card,
.box-blog-post {
  will-change: transform;
}

/* Footer section improvements */
.tvd-footer-main-section a:hover {
  color: #38bdf8 !important;
  transition: color 0.2s ease;
}

/* Contact form in footer styling */
.tvd-footer-form-col .tvd-contact-form input[type="text"],
.tvd-footer-form-col .tvd-contact-form input[type="tel"],
.tvd-footer-form-col .tvd-contact-form input[type="email"],
.tvd-footer-form-col .tvd-contact-form textarea {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: #ffffff !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  transition: border-color 0.3s ease !important;
}

.tvd-footer-form-col .tvd-contact-form input:focus,
.tvd-footer-form-col .tvd-contact-form textarea:focus {
  border-color: #818cf8 !important;
  box-shadow: 0 0 0 3px rgba(129, 140, 248, 0.15) !important;
  outline: none !important;
}

.tvd-footer-form-col .tvd-contact-form label {
  color: #cbd5e1 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.tvd-footer-form-col .tvd-contact-form button[type="submit"] {
  background: linear-gradient(135deg, #4f46e5, #6366f1) !important;
  border: none !important;
  color: #ffffff !important;
  border-radius: 99px !important;
  padding: 12px 24px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  width: 100% !important;
  cursor: pointer;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 15px rgba(79, 70, 229, 0.35) !important;
}

.tvd-footer-form-col .tvd-contact-form button[type="submit"]:hover {
  background: linear-gradient(135deg, #4338ca, #4f46e5) !important;
  box-shadow: 0 6px 20px rgba(79, 70, 229, 0.5) !important;
  transform: translateY(-2px);
}

/* Remove duplicate &nbsp; in contact form */
.tvd-consultation-form__header h2 {
  margin-top: 0 !important;
}

/* Improve header main nav hover */
.header-nav-main .tvd-main-menu-item > a.nav-top-link:hover {
  color: #4f46e5 !important;
}

/* Featured product badge enhancements */
.tvd-status-mark .badge-inner.secondary.on-sale {
  background: linear-gradient(135deg, #e11d48, #f43f5e) !important;
  border-radius: 8px !important;
  font-weight: 700;
}

/* ==========================================================================
   WOOCOMMERCE SINGLE PRODUCT & CART POLISH
   ========================================================================== */
.single-product .product-gallery,
.single-product .product-images {
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.single-product .product-gallery img {
  border-radius: 14px !important;
}

.single-product .entry-summary .price {
  color: #4f46e5 !important;
  font-size: 26px !important;
  font-weight: 800 !important;
}

.single-product .entry-summary .product-title {
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #1e293b !important;
  letter-spacing: -0.5px;
}

.single-product .single_add_to_cart_button.button {
  background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
  border: none !important;
  color: #ffffff !important;
  border-radius: 99px !important;
  padding: 12px 32px !important;
  font-weight: 700 !important;
  font-size: 14.5px !important;
  box-shadow: 0 4px 15px rgba(79, 70, 229, 0.35) !important;
  transition: all 0.3s ease !important;
}

.single-product .single_add_to_cart_button.button:hover {
  background: linear-gradient(135deg, #4338ca 0%, #4f46e5 100%) !important;
  box-shadow: 0 8px 25px rgba(79, 70, 229, 0.5) !important;
  transform: translateY(-2px);
}

.single-product .quantity .button,
.single-product .quantity input.qty {
  border-radius: 8px !important;
}

/* Modern tabs on single product */
.single-product .woocommerce-tabs ul.tabs {
  border-bottom: 2px solid #e2e8f0 !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
  color: #4f46e5 !important;
  border-bottom: 2px solid #4f46e5 !important;
}

/* ==========================================================================
   WOOCOMMERCE CART & CHECKOUT POLISH
   ========================================================================== */
.woocommerce-cart-form table.cart {
  border-radius: 16px !important;
  overflow: hidden !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}

.woocommerce-cart-form table.cart td.actions {
  display: flex !important;
  width: 100% !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  padding: 16px !important;
  box-sizing: border-box !important;
}

.woocommerce-cart-form table.cart td.actions .continue-shopping {
  width: auto !important;
  float: none !important;
}

.woocommerce-cart-form table.cart td.actions .button-continue-shopping,
.woocommerce-cart-form table.cart td.actions button[name="update_cart"] {
  width: auto !important;
  height: auto !important;
  padding: 11px 24px !important;
  border-radius: 99px !important;
  white-space: nowrap !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1.4 !important;
}

.woocommerce-cart-form table.cart td.actions button[name="update_cart"] {
  background: #f1f5f9 !important;
  color: #475569 !important;
  border: 1px solid #cbd5e1 !important;
}

.woocommerce-cart-form table.cart td.actions button[name="update_cart"]:hover {
  background: #e2e8f0 !important;
  color: #1e293b !important;
}

/* Cart Collaterals & Checkout Button */
.cart-collaterals .cart_totals {
  border-radius: 16px !important;
  border: 1px solid #e2e8f0 !important;
  padding: 24px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05) !important;
}

.cart-collaterals .cart_totals h2 {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #1e293b !important;
  border-bottom: 2px solid #f1f5f9 !important;
  padding-bottom: 12px !important;
  margin-bottom: 16px !important;
}

.wc-proceed-to-checkout .checkout-button,
a.checkout-button.button {
  background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 99px !important;
  padding: 14px 28px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  box-shadow: 0 4px 15px rgba(79, 70, 229, 0.4) !important;
  transition: all 0.3s ease !important;
  margin-top: 15px !important;
}

.wc-proceed-to-checkout .checkout-button:hover,
a.checkout-button.button:hover {
  background: linear-gradient(135deg, #4338ca 0%, #4f46e5 100%) !important;
  box-shadow: 0 8px 25px rgba(79, 70, 229, 0.55) !important;
  transform: translateY(-2px);
  color: #ffffff !important;
}

/* Coupon box styling */
.coupon {
  display: flex !important;
  gap: 8px !important;
  margin-top: 15px !important;
}

.coupon input.input-text {
  border-radius: 99px !important;
  padding: 10px 18px !important;
  border: 1px solid #cbd5e1 !important;
}

.coupon button.button,
button[name="apply_coupon"] {
  background: #4f46e5 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 99px !important;
  width: auto !important;
  height: auto !important;
  padding: 10px 24px !important;
  white-space: nowrap !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

/* Checkout Page enhancements */
.woocommerce-checkout #customer_details {
  border-radius: 16px !important;
}

.woocommerce-checkout #order_review {
  background: #ffffff !important;
  border-radius: 16px !important;
  border: 1px solid #e2e8f0 !important;
  padding: 24px !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05) !important;
}

.woocommerce-checkout #place_order {
  background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 99px !important;
  padding: 15px 32px !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  box-shadow: 0 4px 15px rgba(79, 70, 229, 0.4) !important;
  width: 100% !important;
}

.woocommerce-checkout #place_order:hover {
  background: linear-gradient(135deg, #4338ca 0%, #4f46e5 100%) !important;
  box-shadow: 0 8px 25px rgba(79, 70, 229, 0.55) !important;
  transform: translateY(-2px);
}

/* Fix payment notices in checkout */
#payment .woocommerce-info.message-wrapper,
#payment .message-container,
.woocommerce-checkout .woocommerce-info {
  width: 100% !important;
  max-width: 100% !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 16px 20px !important;
  box-sizing: border-box !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-left: 4px solid #4f46e5 !important;
  color: #334155 !important;
}

/* Mobile Sidebar Menu Polish */
.mobile-sidebar .current-menu-item > a,
.sidebar-menu .current-menu-item > a,
.nav-sidebar .current-menu-item > a {
  color: #4f46e5 !important;
  background: rgba(79, 70, 229, 0.08) !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
}

.mobile-sidebar .nav-sidebar > li > a:hover {
  color: #4f46e5 !important;
  background: rgba(79, 70, 229, 0.04) !important;
}

/* ==========================================================================
   TESTIMONIALS & FAQ ACCORDION STYLING
   ========================================================================== */
.tvd-testimonial-card {
  background: #ffffff;
  border-radius: 16px;
  border: 1px solid #e2e8f0;
  padding: 32px 28px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.tvd-testimonial-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 35px rgba(79, 70, 229, 0.12);
  border-color: rgba(99, 102, 241, 0.4);
}

.tvd-faq-item {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  margin-bottom: 14px;
  overflow: hidden;
  transition: all 0.3s ease;
}

.tvd-faq-item:hover {
  border-color: #818cf8;
}

.tvd-faq-item.active {
  border-color: #4f46e5;
  box-shadow: 0 6px 20px rgba(79, 70, 229, 0.08);
}

.tvd-faq-question {
  padding: 20px 24px;
  font-size: 16px;
  font-weight: 700;
  color: #1e293b;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  user-select: none;
}

.tvd-faq-question .icon-toggle {
  transition: transform 0.3s ease;
  font-size: 20px;
  font-weight: 700;
  color: #4f46e5;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(79, 70, 229, 0.08);
  border-radius: 50%;
}

.tvd-faq-item.active .tvd-faq-question .icon-toggle {
  transform: rotate(45deg);
  background: #4f46e5;
  color: #ffffff;
}

.tvd-faq-answer {
  display: none;
  padding: 0 24px 22px 24px;
  font-size: 14.5px;
  color: #64748b;
  line-height: 1.75;
}

.tvd-faq-item.active > .tvd-faq-answer {
  display: block;
}


/* ==========================================================================
   MICRO-INTERACTIONS: SEARCH & BACK-TO-TOP & SINGLE POST
   ========================================================================== */
#tvd-header-2 .header-search-form input.search-field {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}

.header-search input[type="search"] {
  border-radius: 99px !important;
  border: 1px solid #cbd5e1 !important;
  transition: all 0.3s ease !important;
}

#top-link,
.back-to-top {
  background: linear-gradient(135deg, #4f46e5, #6366f1) !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 15px rgba(79, 70, 229, 0.4) !important;
  transition: all 0.3s ease !important;
}

#top-link:hover,
.back-to-top:hover {
  transform: translateY(-4px) scale(1.08) !important;
  box-shadow: 0 8px 25px rgba(79, 70, 229, 0.6) !important;
}

/* Single Blog Post Typography Polish */
.single-post article .entry-content {
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: #334155 !important;
}

.single-post article .entry-content h2,
.single-post article .entry-content h3 {
  color: #1e293b !important;
  font-weight: 800 !important;
  margin-top: 35px !important;
  margin-bottom: 16px !important;
}

.single-post article .entry-content blockquote {
  border-left: 4px solid #4f46e5 !important;
  background: #f8fafc !important;
  padding: 18px 24px !important;
  border-radius: 0 12px 12px 0 !important;
  font-style: italic !important;
  color: #475569 !important;
}

/* ==========================================================================
   WEDDING 3D VINYL ANIMATION & FLOATING SUPPORT BAR
   ========================================================================== */
@keyframes tvdSpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.tvd-wedding-3d-preview {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.tvd-wedding-3d-preview:hover {
  transform: translateY(-4px);
  box-shadow: 0 15px 35px rgba(225, 29, 72, 0.25) !important;
}

.tvd-floating-support-bar {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 999;
  display: flex;
  align-items: center;
  gap: 10px;
}

.tvd-floating-pill {
  background: rgba(15, 23, 42, 0.9);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 99px;
  padding: 8px 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
  text-decoration: none;
  transition: all 0.3s ease;
  color: #ffffff !important;
  font-size: 13px;
  font-weight: 600;
}

.tvd-floating-pill:hover {
  transform: translateY(-2px);
  border-color: #818cf8;
  box-shadow: 0 12px 30px rgba(79, 70, 229, 0.35);
  color: #38bdf8 !important;
}

.tvd-floating-pill .pulse-dot {
  width: 8px;
  height: 8px;
  background: #10b981;
  border-radius: 50%;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.3);
  animation: tvdPulse 2s infinite;
}

@keyframes tvdPulse {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7); }
  70% { transform: scale(1); box-shadow: 0 0 0 6px rgba(16, 185, 129, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }
}

/* ==========================================================================
   Modern SaaS WooCommerce Shop Grid & Product Cards
   ========================================================================== */
.tvd-wc-product-card .tvd-grid__content {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  height: 100%;
}

.tvd-wc-product-card:hover .tvd-grid__content {
  transform: translateY(-6px);
  border-color: #c7d2fe;
  box-shadow: 0 20px 35px -10px rgba(79, 70, 229, 0.15);
}

.tvd-wc-product-card .box-image {
  position: relative;
  overflow: hidden;
  background: #f8fafc;
  border-bottom: 1px solid #f1f5f9;
}

.tvd-wc-product-card .box-image img {
  transition: transform 0.4s ease;
  width: 100%;
  height: auto;
  display: block;
}

.tvd-wc-product-card:hover .box-image img {
  transform: scale(1.04);
}

.tvd-wc-product-card .tvd-surface-copy-products {
  padding: 18px 20px 22px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.tvd-wc-product-card .product-cat {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #6366f1 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 6px !important;
}

.tvd-wc-product-card .product-title a {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  line-height: 1.4 !important;
  transition: color 0.2s ease;
}

.tvd-wc-product-card:hover .product-title a {
  color: #4f46e5 !important;
}

.tvd-wc-product-card .price-wrapper {
  margin-top: auto;
  padding-top: 12px;
}

.tvd-wc-product-card .price {
  font-size: 17px !important;
  font-weight: 800 !important;
  color: #4f46e5 !important;
}

.tvd-wc-product-card .price del {
  font-size: 13px !important;
  color: #94a3b8 !important;
  margin-right: 6px;
  font-weight: 500;
}

/* Sale Badge Modern Pill */
.tvd-wc-product-card .badge-circle {
  width: auto !important;
  height: auto !important;
  border-radius: 99px !important;
  margin: 12px 0 0 12px !important;
}

.tvd-wc-product-card .badge-inner.on-sale {
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
  color: #ffffff !important;
  padding: 5px 14px !important;
  border-radius: 99px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em;
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.35) !important;
}

.tvd-wc-product-card .badge-inner.on-sale .onsale {
  padding: 0 !important;
  line-height: 1 !important;
}

/* Shop Header & Controls Clean up */
.shop-page-title {
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  padding: 24px 0 !important;
  margin-bottom: 35px !important;
}

.shop-page-title .tvd-breadcrumb + .woocommerce-breadcrumb {
  display: none !important;
}

.woocommerce-ordering select.orderby {
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 99px !important;
  padding: 8px 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #334155 !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.03) !important;
  cursor: pointer;
  transition: all 0.2s ease;
}

.woocommerce-ordering select.orderby:hover,
.woocommerce-ordering select.orderby:focus {
  border-color: #6366f1 !important;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15) !important;
}

/* Search Results Post Cards */
.search-results article {
  margin-bottom: 24px;
}

.search-results article .article-inner {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 28px 32px;
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.03);
  transition: all 0.25s ease;
}

.search-results article .article-inner:hover {
  transform: translateY(-3px);
  border-color: #c7d2fe;
  box-shadow: 0 12px 28px rgba(79, 70, 229, 0.09);
}

.search-results .entry-title a {
  color: #0f172a;
  font-weight: 700;
  transition: color 0.2s;
}

.search-results .entry-title a:hover {
  color: #4f46e5;
}

.search-results a.more-link {
  border-radius: 99px !important;
  border: 1.5px solid #4f46e5 !important;
  color: #4f46e5 !important;
  padding: 6px 20px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  transition: all 0.2s ease !important;
}

.search-results a.more-link:hover {
  background: #4f46e5 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(79, 70, 229, 0.3) !important;
}

/* Single Product Sidebar Trust Card */
.tvd-product-trust-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 24px 22px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
  margin-bottom: 24px;
}

.tvd-trust-header {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 16px;
  border-bottom: 1px solid #f1f5f9;
  margin-bottom: 18px;
}

.tvd-trust-icon-box {
  font-size: 26px;
  line-height: 1;
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: 14px;
  flex-shrink: 0;
}

.tvd-trust-title {
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  margin: 0 0 2px 0 !important;
}

.tvd-trust-subtitle {
  font-size: 12px !important;
  color: #64748b !important;
  margin: 0 !important;
}

.tvd-trust-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 20px 0 !important;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tvd-trust-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  line-height: 1.5;
  color: #334155;
  margin: 0 !important;
}

.tvd-trust-list .tvd-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #ecfdf5;
  color: #059669;
  font-size: 11px;
  font-weight: 800;
  flex-shrink: 0;
  margin-top: 1px;
}

.tvd-trust-coupon-box {
  background: linear-gradient(135deg, #eef2ff 0%, #ede9fe 100%);
  border: 1px dashed #818cf8;
  border-radius: 14px;
  padding: 14px 16px;
  text-align: center;
  margin-bottom: 16px;
}

.tvd-trust-coupon-label {
  font-size: 11px;
  font-weight: 800;
  color: #4f46e5;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}

.tvd-trust-coupon-code {
  font-size: 20px;
  font-weight: 900;
  color: #312e81;
  letter-spacing: 0.1em;
  font-family: monospace;
  background: #ffffff;
  border-radius: 8px;
  padding: 4px 10px;
  display: inline-block;
  margin: 4px 0;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
}

.tvd-trust-coupon-desc {
  font-size: 11px;
  color: #6366f1;
}

.tvd-trust-contact-box {
  background: #f8fafc;
  border-radius: 12px;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.tvd-trust-contact-line {
  font-size: 12px;
  color: #475569;
}

/* ==========================================================================
   Header Dropdown Engine (Cart & Account & Nav)
   ========================================================================== */
#tvd-header-2 {
  z-index: 999 !important;
}

.cart-item:hover > .tvd-menu-dropdown,
.cart-item.current-dropdown > .tvd-menu-dropdown,
.cart-item.is-open > .tvd-menu-dropdown,
.account-item:hover > .tvd-menu-dropdown,
.account-item.current-dropdown > .tvd-menu-dropdown,
.account-item.is-open > .tvd-menu-dropdown,
.header-nav li.has-dropdown:hover > .tvd-menu-dropdown,
.header-nav li.has-dropdown.current-dropdown > .tvd-menu-dropdown {
  left: auto !important;
  right: 0 !important;
  max-height: 800px !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 99999 !important;
  display: block !important;
  pointer-events: auto !important;
}

/* Modern Header Dropdown Box Styling */
.header-nav .tvd-menu-dropdown {
  background: #ffffff !important;
  border-radius: 20px !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 20px 45px -10px rgba(15, 23, 42, 0.18), 0 0 0 1px rgba(0, 0, 0, 0.02) !important;
  padding: 20px !important;
  top: 100% !important;
  margin-top: 10px !important;
}

/* Mini Cart Polish */
.widget_shopping_cart ul.product_list_widget li {
  padding: 12px 35px 12px 70px !important;
  position: relative !important;
}

.widget_shopping_cart ul.product_list_widget li img {
  width: 55px !important;
  height: 55px !important;
  border-radius: 12px !important;
  border: 1px solid #e2e8f0 !important;
  object-fit: cover !important;
}

.widget_shopping_cart ul.product_list_widget li a.remove {
  width: 24px !important;
  height: 24px !important;
  line-height: 22px !important;
  border-radius: 50% !important;
  background: #fee2e2 !important;
  color: #ef4444 !important;
  text-align: center !important;
  font-size: 16px !important;
  top: 12px !important;
  right: 0 !important;
  transition: all 0.2s ease !important;
}

.widget_shopping_cart ul.product_list_widget li a.remove:hover {
  background: #ef4444 !important;
  color: #ffffff !important;
}

.widget_shopping_cart p.total {
  border-top: 1px dashed #e2e8f0 !important;
  border-bottom: 1px dashed #e2e8f0 !important;
  padding: 14px 0 !important;
  margin: 14px 0 !important;
  font-size: 15px !important;
  color: #1e293b !important;
}

.widget_shopping_cart p.total strong {
  font-weight: 700 !important;
  color: #0f172a !important;
}

.widget_shopping_cart p.total .amount {
  color: #4f46e5 !important;
  font-weight: 800 !important;
  font-size: 16px !important;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin: 0 !important;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons a.button.wc-forward:not(.checkout) {
  background: #f8fafc !important;
  border: 1.5px solid #cbd5e1 !important;
  color: #334155 !important;
  border-radius: 99px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-align: center !important;
  padding: 10px 16px !important;
  transition: all 0.2s ease !important;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons a.button.wc-forward:not(.checkout):hover {
  background: #f1f5f9 !important;
  border-color: #94a3b8 !important;
  color: #0f172a !important;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons a.button.checkout.wc-forward {
  background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
  border: none !important;
  color: #ffffff !important;
  border-radius: 99px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-align: center !important;
  padding: 10px 16px !important;
  box-shadow: 0 4px 14px rgba(79, 70, 229, 0.35) !important;
  transition: all 0.2s ease !important;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons a.button.checkout.wc-forward:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(79, 70, 229, 0.45) !important;
}

/* Account Dropdown Polish */
.account-item .tvd-menu-dropdown {
  min-width: 240px !important;
  padding: 12px 8px !important;
}

.account-item .tvd-menu-dropdown li {
  list-style: none !important;
  margin: 0 !important;
}

.account-item .tvd-menu-dropdown li a {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 16px !important;
  border-radius: 12px !important;
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  transition: all 0.2s ease !important;
  text-transform: none !important;
}

.account-item .tvd-menu-dropdown li a svg {
  color: #64748b !important;
  transition: color 0.2s ease !important;
}

.account-item .tvd-menu-dropdown li a:hover,
.account-item .tvd-menu-dropdown li.active a,
.account-item .tvd-menu-dropdown li.is-active a {
  background: #f1f5f9 !important;
  color: #4f46e5 !important;
}

.account-item .tvd-menu-dropdown li a:hover svg,
.account-item .tvd-menu-dropdown li.active a svg {
  color: #4f46e5 !important;
}

/* ==========================================================================
   Accessibility & High-Contrast Refinements (WCAG AA/AAA)
   ========================================================================== */
.copyright-footer {
  color: #94a3b8 !important;
}

.copyright-footer a {
  color: #cbd5e1 !important;
}

.copyright-footer a:hover {
  color: #ffffff !important;
}

.header-cart-link span.header-cart-title,
.header-cart-link .cart-price,
.header-cart-link .amount {
  color: #0f172a !important;
  font-weight: 700 !important;
}

.cart-icon strong {
  background: #4f46e5 !important;
  color: #ffffff !important;
}

/* 3D Showcase Card & Dark Sections Contrast */
.tvd-3d-card p,
.tvd-feature-card p,
.dark p,
.footer-widgets p {
  color: #cbd5e1 !important;
}

/* Allow inline color on feature card description to override */
/* Note: desc_color is applied via --tvd-desc-color CSS custom property set inline */
.tvd-feature-card .tvd-feature-desc {
  color: var(--tvd-desc-color, #cbd5e1) !important;
}

body,
p,
.page-header-excerpt,
.tvd-faq-answer,
.tvd-faq-answer p,
.tvd-surface-copy p,
.title-wrapper p.product-title,
.from_the_blog_excerpt {
  color: #374151 !important;
}

.tvd-pricing-card p {
  color: #4b5563 !important;
}

/* ==========================================================================
   Single Product Page Architecture & UX Polish
   ========================================================================== */
.product-info .woocommerce-breadcrumb {
  display: none !important;
}

.product-info .tvd-breadcrumb {
  margin-bottom: 12px !important;
}

.product-info .tvd-breadcrumb-list {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
  color: #64748b !important;
}

.product-info .tvd-breadcrumb-item a {
  color: #64748b !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.product-info .tvd-breadcrumb-item a:hover {
  color: #4f46e5 !important;
}

.product-info .tvd-breadcrumb-item.is-current {
  color: #0f172a !important;
  font-weight: 600 !important;
}

.product-info .tvd-breadcrumb-sep {
  color: #cbd5e1 !important;
  font-size: 11px !important;
}

.product-description {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  padding: 36px 40px !important;
  margin-top: 35px !important;
  margin-bottom: 45px !important;
  box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.05) !important;
}

.product-description h3:first-child {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  position: relative !important;
  padding-bottom: 12px !important;
  margin-bottom: 20px !important;
  border-bottom: 2px solid #f1f5f9 !important;
}

.product-description h3:first-child::after {
  content: '' !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 0 !important;
  width: 60px !important;
  height: 2px !important;
  background: #4f46e5 !important;
  border-radius: 2px !important;
}

.product-description ul {
  padding-left: 20px !important;
  color: #374151 !important;
  line-height: 1.8 !important;
}

.product-description ul li {
  margin-bottom: 8px !important;
}

.related-products-wrapper {
  margin-top: 20px !important;
  padding-top: 30px !important;
  border-top: 1px solid #e2e8f0 !important;
}

.related-products-wrapper .product-section-title {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  letter-spacing: -0.01em !important;
  margin-bottom: 25px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.related-products-wrapper .product-section-title::before {
  content: '✨' !important;
}

/* ==========================================================================
   WooCommerce Cart Page Architecture & Layout Fix
   ========================================================================== */
.tvd-wc-cart {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 30px !important;
  width: 100% !important;
  max-width: 100% !important;
  align-items: flex-start !important;
}

.tvd-wc-cart .col.sizetl-7 {
  flex: 1 1 60% !important;
  max-width: calc(64% - 15px) !important;
  width: 100% !important;
}

.tvd-wc-cart .cart-collaterals.sizetl-5 {
  flex: 1 1 36% !important;
  max-width: calc(36% - 15px) !important;
  width: 100% !important;
}

@media (max-width: 991px) {
  .tvd-wc-cart .col.sizetl-7,
  .tvd-wc-cart .cart-collaterals.sizetl-5 {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
}

.woocommerce-cart .content-area,
.woocommerce-cart .tvd-grid.page-grid {
  max-width: 90% !important;
  width: 100% !important;
}

.woocommerce-cart-form,
.woocommerce-cart .cart-wrapper {
  width: 100% !important;
  overflow-x: hidden !important;
}

table.shop_table.cart {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: 20px !important;
  border: 1px solid #e2e8f0 !important;
  overflow: hidden !important;
  background: #ffffff !important;
  box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.05) !important;
  margin-bottom: 25px !important;
}

table.shop_table.cart thead tr th {
  background: #f8fafc !important;
  color: #475467 !important;
  font-weight: 700 !important;
  font-size: 12.5px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 16px 14px !important;
  border-bottom: 1px solid #e2e8f0 !important;
  border-top: none !important;
}

table.shop_table.cart th.product-remove,
table.shop_table.cart td.product-remove {
  width: 44px !important;
  max-width: 44px !important;
}

table.shop_table.cart th.product-thumbnail,
table.shop_table.cart td.product-thumbnail {
  width: 68px !important;
  max-width: 68px !important;
}

table.shop_table.cart th.product-name,
table.shop_table.cart td.product-name {
  width: auto !important;
}

table.shop_table.cart th.product-price,
table.shop_table.cart td.product-price {
  width: 95px !important;
}

table.shop_table.cart th.product-quantity,
table.shop_table.cart td.product-quantity {
  width: 110px !important;
}

table.shop_table.cart th.product-subtotal,
table.shop_table.cart td.product-subtotal {
  width: 100px !important;
}

table.shop_table.cart td {
  padding: 16px 12px !important;
  border-bottom: 1px solid #f1f5f9 !important;
  vertical-align: middle !important;
}

  vertical-align: middle !important;
}

table.shop_table.cart td.product-remove {
  width: 44px !important;
  padding-left: 16px !important;
  padding-right: 4px !important;
}

table.shop_table.cart td.product-remove a.remove {
  width: 28px !important;
  height: 28px !important;
  line-height: 26px !important;
  border-radius: 50% !important;
  color: #ef4444 !important;
  border: 1.5px solid #fecaca !important;
  background: #fef2f2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  transition: all 0.2s ease !important;
}

table.shop_table.cart td.product-remove a.remove:hover {
  background: #ef4444 !important;
  color: #ffffff !important;
  border-color: #ef4444 !important;
  transform: scale(1.1) !important;
}

table.shop_table.cart td.product-thumbnail {
  width: 68px !important;
  padding: 12px 6px !important;
}

table.shop_table.cart td.product-thumbnail img {
  width: 56px !important;
  height: 56px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  border: 1px solid #e2e8f0 !important;
}

table.shop_table.cart td.product-name a {
  font-weight: 700 !important;
  color: #0f172a !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

table.shop_table.cart td.product-name a:hover {
  color: #4f46e5 !important;
}

table.shop_table.cart td.product-price .amount,
table.shop_table.cart td.product-subtotal .amount {
  font-weight: 700 !important;
  color: #4f46e5 !important;
  font-size: 14px !important;
}

body.woocommerce-cart table.shop_table.cart td.actions,
table.shop_table.cart td.actions {
  display: table-cell !important;
  width: 100% !important;
  padding: 18px 24px !important;
  background: #f8fafc !important;
  border-top: 1px solid #e2e8f0 !important;
  text-align: left !important;
  vertical-align: middle !important;
}

body.woocommerce-cart table.shop_table.cart td.actions .continue-shopping,
table.shop_table.cart td.actions .continue-shopping {
  display: inline-block !important;
  float: left !important;
  margin: 0 !important;
}

table.shop_table.cart td.actions a.button-continue-shopping {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 10px 20px !important;
  height: 42px !important;
  border-radius: 99px !important;
  border: 1.5px solid #cbd5e1 !important;
  background: #ffffff !important;
  color: #334155 !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: none !important;
  transition: all 0.2s ease !important;
}

table.shop_table.cart td.actions a.button-continue-shopping:hover {
  background: #f1f5f9 !important;
  border-color: #94a3b8 !important;
  color: #0f172a !important;
}

table.shop_table.cart td.actions button[name="update_cart"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  float: right !important;
  margin: 0 !important;
  padding: 10px 24px !important;
  height: 42px !important;
  width: auto !important;
  border-radius: 99px !important;
  background: #0f172a !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  border: none !important;
  text-transform: none !important;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15) !important;
  transition: all 0.2s ease !important;
}

table.shop_table.cart td.actions button[name="update_cart"]:hover:not(:disabled) {
  background: #4f46e5 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 16px rgba(79, 70, 229, 0.3) !important;
}

table.shop_table.cart td.actions button[name="update_cart"]:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
  background: #94a3b8 !important;
}


.cart-collaterals .cart_totals {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.05) !important;
  width: 100% !important;
}

.cart-collaterals .cart_totals h2 {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  margin-bottom: 18px !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid #f1f5f9 !important;
}

.cart-collaterals .cart_totals table.shop_table {
  width: 100% !important;
  margin-bottom: 20px !important;
  border: none !important;
}

.cart-collaterals .cart_totals table.shop_table tr th,
.cart-collaterals .cart_totals table.shop_table tr td {
  padding: 12px 0 !important;
  border-top: 1px solid #f1f5f9 !important;
  border-bottom: none !important;
  background: transparent !important;
}

.cart-collaterals .cart_totals table.shop_table tr.order-total th,
.cart-collaterals .cart_totals table.shop_table tr.order-total td {
  border-top: 2px solid #e2e8f0 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
}

.cart-collaterals .cart_totals table.shop_table tr.order-total .amount {
  color: #4f46e5 !important;
  font-size: 18px !important;
}

.cart-collaterals .wc-proceed-to-checkout a.checkout-button {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  padding: 14px 20px !important;
  border-radius: 99px !important;
  background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  border: none !important;
  box-shadow: 0 4px 15px rgba(79, 70, 229, 0.4) !important;
  transition: all 0.2s ease !important;
}

.cart-collaterals .wc-proceed-to-checkout a.checkout-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(79, 70, 229, 0.5) !important;
}

/* ==========================================================================
   Checkout Page Polish
   ========================================================================== */
.checkout-sidebar {
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
}

.woocommerce-form-coupon-toggle .woocommerce-info {
  background: #f0fdf4 !important;
  border: 1px solid #bbf7d0 !important;
  border-radius: 16px !important;
  color: #166534 !important;
  padding: 14px 20px !important;
  font-weight: 600 !important;
  margin-bottom: 25px !important;
}

.woocommerce-form-coupon-toggle .woocommerce-info a {
  color: #15803d !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}

/* ==========================================================================
   WooCommerce My Account Modernization
   ========================================================================== */
.tvd-content__card > p:not([class]) {
  display: none !important;
}

/* ==========================================================================
   Modern AJAX Live Search Suggestions Dropdown
   ========================================================================== */
.autocomplete-suggestions {
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 1px solid rgba(226, 232, 240, 0.9) !important;
  border-radius: 20px !important;
  box-shadow: 0 20px 45px -10px rgba(15, 23, 42, 0.18), 0 0 0 1px rgba(0, 0, 0, 0.04) !important;
  padding: 8px !important;
  margin-top: 8px !important;
  overflow-y: auto !important;
  z-index: 99999 !important;
}

.autocomplete-suggestion {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 10px 14px !important;
  border-radius: 14px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.autocomplete-suggestion:hover,
.autocomplete-selected {
  background: #f1f5f9 !important;
}

.autocomplete-suggestion img.search-image {
  width: 46px !important;
  height: 46px !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  border: 1px solid #e2e8f0 !important;
  flex-shrink: 0 !important;
}

.autocomplete-suggestion .search-name {
  flex: 1 1 auto !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  line-height: 1.35 !important;
}

.autocomplete-suggestion .search-name strong {
  color: #4f46e5 !important;
  font-weight: 800 !important;
}

.autocomplete-suggestion .search-price {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #4f46e5 !important;
  white-space: nowrap !important;
}

.autocomplete-suggestion .search-price del {
  color: #94a3b8 !important;
  font-size: 11.5px !important;
  margin-right: 4px !important;
}

.autocomplete-suggestion .search-price ins {
  text-decoration: none !important;
}

/* Header search container unconstrain for live search dropdown */
.header-search-form-wrapper {
  overflow: visible !important;
}

.searchform-wrapper {
  position: relative !important;
}

.header-search-form .live-search-results,
.header-search .live-search-results,
.searchform .live-search-results {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 100% !important;
  z-index: 99999 !important;
}

/* Dashboard notification icon deduplication */
.tvd-dashboard .woocommerce-info .tvd-wc-icon,
.tvd-dashboard .woocommerce-message .tvd-wc-icon,
.tvd-dashboard .woocommerce-error .tvd-wc-icon {
  display: none !important;
}

/* TVD Hero Modern - 100% Isolated Scoped Classes */
.tvd-hero-modern {
  position: relative;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}

.tvd-hero-modern__grid {
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  gap: 48px !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 991px) {
  .tvd-hero-modern__grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
}

.tvd-hero-modern__content {
  width: 100% !important;
  box-sizing: border-box !important;
}

.tvd-hero-modern__media {
  width: 100% !important;
  box-sizing: border-box !important;
}

.tvd-hero-modern__badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(99, 102, 241, 0.12) !important;
  border: 1px solid rgba(99, 102, 241, 0.3) !important;
  padding: 6px 18px !important;
  border-radius: 99px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #818cf8 !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 22px !important;
}

.tvd-hero-modern__badge-icon {
  font-size: 14px !important;
}

.tvd-hero-modern__badge-text {
  font-size: 12px !important;
}

.tvd-hero-modern__title {
  font-size: clamp(32px, 3.8vw, 52px) !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
  color: #ffffff !important;
  margin: 0 0 20px 0 !important;
  letter-spacing: -1px !important;
}

.tvd-hero-modern__gradient {
  background: linear-gradient(135deg, #38bdf8 0%, #818cf8 50%, #c084fc 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  display: inline !important;
}

.tvd-hero-modern__desc {
  font-size: clamp(15px, 1.15vw, 17px) !important;
  line-height: 1.7 !important;
  color: #94a3b8 !important;
  margin: 0 0 28px 0 !important;
  max-width: 580px !important;
}

.tvd-hero-modern__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 28px !important;
}

.tvd-hero-modern__pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 10px !important;
}

.tvd-hero-modern__pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  padding: 6px 14px !important;
  border-radius: 8px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #cbd5e1 !important;
  backdrop-filter: blur(8px) !important;
}

/* Floating Mockup Card */
.tvd-hero-modern__mockup-card {
  position: relative !important;
  background: rgba(15, 23, 42, 0.75) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 20px !important;
  padding: 16px !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.6), 0 0 40px rgba(99, 102, 241, 0.25) !important;
  backdrop-filter: blur(16px) !important;
  transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

.tvd-hero-modern__mockup-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 30px 60px -12px rgba(0, 0, 0, 0.7), 0 0 50px rgba(99, 102, 241, 0.35) !important;
}

.tvd-hero-modern__mockup-topbar {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-bottom: 12px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.tvd-hero-modern__mockup-dot {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  display: inline-block !important;
}

.tvd-hero-modern__mockup-dot--red { background: #ef4444 !important; }
.tvd-hero-modern__mockup-dot--yellow { background: #f59e0b !important; }
.tvd-hero-modern__mockup-dot--green { background: #10b981 !important; }

.tvd-hero-modern__mockup-filename {
  font-size: 11px !important;
  color: #94a3b8 !important;
  margin-left: 6px !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
}

.tvd-hero-modern__mockup-speed {
  margin-left: auto !important;
  background: rgba(16, 185, 129, 0.2) !important;
  border: 1px solid rgba(16, 185, 129, 0.4) !important;
  color: #34d399 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 3px 10px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.tvd-hero-modern__mockup-body {
  border-radius: 12px !important;
  overflow: hidden !important;
  position: relative !important;
}

.tvd-hero-modern__mockup-img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  border-radius: 10px !important;
}

.tvd-hero-modern__mockup-overlay {
  position: relative !important;
  margin-top: 12px !important;
  padding: 10px 14px !important;
  border-radius: 8px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  background: rgba(15, 23, 42, 0.85) !important;
  backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.tvd-hero-modern__mockup-tag {
  font-size: 11px !important;
  color: #38bdf8 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}

.tvd-hero-modern__mockup-title {
  font-size: 12px !important;
  color: #ffffff !important;
  font-weight: 600 !important;
}

.tvd-hero-modern__mockup-pill {
  background: #10b981 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
}







