/*!
 * Valgusallikad theme — 06-admin-stability.css
 * v1.6.6 hero admin controls, v1.6.7 hero glass card, v1.6.8 home block admin + latest polish, v1.6.9 admin overview + image safety, v1.7.0 WooCommerce add-ons, v1.7.1 visual design polish, v1.7.2 final mobile + layout safety.
 * (Source: original theme.css lines 7391–8702)
 *
 * Maintenance note: parts are concatenated in numeric order at runtime.
 * Editing this file affects only the rules originally in this epoch.
 */

/* =========================================================
   v1.6.5 — WooCommerce alamkategooriate pildid ja kaardivaade
   ========================================================= */
.woocommerce ul.products li.product-category.vlg-category-loop-card,
ul.products li.product-category.vlg-category-loop-card,
.vlg-shop-products ul.products li.product-category.vlg-category-loop-card {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: #fff !important;
  border: 1px solid var(--vlg-line) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 28px rgba(17, 32, 55, .055) !important;
  min-height: 100% !important;
}

.woocommerce ul.products li.product-category.vlg-category-loop-card a,
ul.products li.product-category.vlg-category-loop-card a,
.vlg-category-loop-card__link {
  display: grid !important;
  grid-template-rows: 180px 1fr !important;
  height: 100% !important;
  color: var(--vlg-dark) !important;
  text-decoration: none !important;
}

.vlg-category-loop-card__image {
  display: grid !important;
  place-items: center !important;
  min-height: 180px !important;
  padding: 18px !important;
  background: linear-gradient(180deg, #ffffff, #f8fafc) !important;
  border-bottom: 1px solid rgba(226, 232, 240, .68) !important;
}

.woocommerce ul.products li.product-category.vlg-category-loop-card img,
ul.products li.product-category.vlg-category-loop-card img,
.vlg-category-loop-card__image img {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 140px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  opacity: 1 !important;
}

.vlg-category-loop-card__body {
  display: grid !important;
  align-content: start !important;
  gap: 8px !important;
  padding: 18px !important;
}

.woocommerce ul.products li.product-category.vlg-category-loop-card h2,
.vlg-category-loop-card__body strong {
  margin: 0 !important;
  color: var(--vlg-dark) !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1.16 !important;
  letter-spacing: -.025em !important;
  min-height: 0 !important;
}

.vlg-category-loop-card__body small {
  color: var(--vlg-muted) !important;
  font-weight: 800 !important;
}

.vlg-category-loop-card__body em {
  margin-top: 6px !important;
  color: var(--vlg-primary-dark, #b85a00) !important;
  font-style: normal !important;
  font-weight: 950 !important;
}

.woocommerce ul.products li.product-category.vlg-category-loop-card:hover,
ul.products li.product-category.vlg-category-loop-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 42px rgba(17, 32, 55, .09) !important;
}

/* Kui WooCommerce väljundis tuleb siiski vana category thumbnail, peida katkised vaikimisi elemendid. */
ul.products li.product-category:not(.vlg-category-loop-card) img[width="1"],
ul.products li.product-category:not(.vlg-category-loop-card) img[src=""] {
  display: none !important;
}

@media (max-width: 767px) {
  .woocommerce ul.products li.product-category.vlg-category-loop-card a,
  ul.products li.product-category.vlg-category-loop-card a,
  .vlg-category-loop-card__link {
    grid-template-rows: 140px 1fr !important;
  }
  .vlg-category-loop-card__image {
    min-height: 140px !important;
    padding: 14px !important;
  }
  .vlg-category-loop-card__image img {
    max-height: 110px !important;
  }
  .vlg-category-loop-card__body {
    padding: 14px !important;
  }
}


/* =========================================================
   v1.6.6 — hero admin controls and layout skins
   ========================================================= */
.vlg-hero {
  background-position: var(--vlg-hero-bg-position, center right) !important;
  background-size: var(--vlg-hero-bg-size, cover) !important;
  background-repeat: no-repeat !important;
}
.vlg-hero .vlg-hero-content {
  max-width: var(--vlg-hero-text-width, 620px) !important;
}
.vlg-hero-layout-wide {
  grid-template-columns: minmax(0, 1fr) !important;
}
.vlg-hero-layout-wide .vlg-hero-content {
  max-width: min(var(--vlg-hero-text-width, 760px), 100%) !important;
}
.vlg-hero-layout-center {
  grid-template-columns: minmax(0, 1fr) !important;
  justify-content: center !important;
  text-align: center !important;
}
.vlg-hero-layout-center .vlg-hero-content {
  margin-inline: auto !important;
}
.vlg-hero-layout-center .vlg-hero-actions,
.vlg-hero-align-center .vlg-hero-actions {
  justify-content: center !important;
}
.vlg-hero-align-center .vlg-hero-content {
  text-align: center !important;
  margin-inline: auto !important;
}
.vlg-hero-align-right .vlg-hero-content {
  text-align: right !important;
  margin-left: auto !important;
}
.vlg-hero-align-right .vlg-hero-actions {
  justify-content: flex-end !important;
}
.vlg-hero-skin-light {
  color: var(--vlg-dark) !important;
}
.vlg-hero-skin-light .vlg-kicker,
.vlg-hero-skin-light h1,
.vlg-hero-skin-light p {
  color: var(--vlg-dark) !important;
}
.vlg-hero-skin-light .vlg-hero-content {
  background: rgba(255, 255, 255, .78) !important;
  border: 1px solid rgba(255,255,255,.8) !important;
  border-radius: 24px !important;
  padding: clamp(20px, 3vw, 34px) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .10) !important;
  backdrop-filter: blur(8px) !important;
}
.vlg-hero-skin-orange .vlg-hero-content {
  background: linear-gradient(135deg, rgba(242, 138, 0, .92), rgba(217, 107, 0, .88)) !important;
  border-radius: 24px !important;
  padding: clamp(20px, 3vw, 34px) !important;
  box-shadow: 0 18px 42px rgba(242, 138, 0, .22) !important;
}
.vlg-hero-skin-orange .vlg-kicker,
.vlg-hero-skin-orange h1,
.vlg-hero-skin-orange p {
  color: #fff !important;
}
.vlg-hero-skin-orange .vlg-btn-primary {
  background: #fff !important;
  color: #0b1528 !important;
}
.vlg-hero-skin-orange .vlg-btn-ghost {
  color: #fff !important;
  border-color: rgba(255,255,255,.5) !important;
}
.vlg-hero-payments {
  margin-top: 18px !important;
}
.vlg-payment-badges--hero {
  max-width: 420px !important;
}
.vlg-hero-align-center .vlg-payment-badges--hero,
.vlg-hero-layout-center .vlg-payment-badges--hero {
  margin-inline: auto !important;
  justify-content: center !important;
}
.vlg-hero-align-right .vlg-payment-badges--hero {
  margin-left: auto !important;
  justify-content: flex-end !important;
}
@media (max-width: 767px) {
  .vlg-hero,
  .vlg-hero-layout-wide,
  .vlg-hero-layout-center {
    grid-template-columns: 1fr !important;
    text-align: left !important;
  }
  .vlg-hero .vlg-hero-content {
    max-width: 100% !important;
  }
  .vlg-hero-align-right .vlg-hero-content,
  .vlg-hero-align-center .vlg-hero-content {
    text-align: left !important;
    margin-inline: 0 !important;
  }
  .vlg-hero-align-right .vlg-hero-actions,
  .vlg-hero-align-center .vlg-hero-actions,
  .vlg-hero-layout-center .vlg-hero-actions {
    justify-content: flex-start !important;
  }
  .vlg-hero-skin-light .vlg-hero-content,
  .vlg-hero-skin-orange .vlg-hero-content {
    padding: 20px !important;
    border-radius: 20px !important;
  }
}


/* =========================================================
   v1.6.7 — parem hero admin + loetav hero klaaskaart
   ========================================================= */
.vlg-hero-content-card .vlg-hero-content {
  max-width: min(var(--vlg-hero-text-width, 620px), 100%) !important;
  padding: clamp(18px, 3vw, 34px) !important;
  border: 1px solid rgba(255, 255, 255, .24) !important;
  border-radius: 24px !important;
  background: rgba(7, 18, 36, .52) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, .18) !important;
  backdrop-filter: blur(10px) !important;
}
.vlg-hero-skin-light.vlg-hero-content-card .vlg-hero-content {
  background: rgba(255, 255, 255, .82) !important;
  border-color: rgba(15, 23, 42, .08) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08) !important;
}
.vlg-hero-skin-orange.vlg-hero-content-card .vlg-hero-content {
  background: rgba(242, 138, 0, .78) !important;
  border-color: rgba(255,255,255,.28) !important;
}
.vlg-hero-align-center .vlg-hero-content {
  margin-inline: auto !important;
  text-align: center !important;
}
.vlg-hero-align-right .vlg-hero-content {
  margin-left: auto !important;
  text-align: right !important;
}
.vlg-hero-layout-center {
  justify-content: center !important;
}
.vlg-hero-layout-center .vlg-hero-benefits {
  display: none !important;
}
.vlg-hero-layout-wide .vlg-hero-content {
  max-width: min(var(--vlg-hero-text-width, 760px), 100%) !important;
}
@media (max-width: 767px) {
  .vlg-hero-mobile-hide-benefits .vlg-hero-benefits {
    display: none !important;
  }
  .vlg-hero-content-card .vlg-hero-content {
    border-radius: 18px !important;
  }
}

.vlg-admin-hero-preview {
  margin-top: 18px;
  border-radius: 18px;
  min-height: 220px;
  background-size: cover;
  background-position: center;
  display: grid;
  align-items: center;
  padding: 22px;
  overflow: hidden;
  border: 1px solid #dbe3ef;
  box-shadow: 0 14px 30px rgba(15, 23, 42, .08);
}
.vlg-admin-hero-preview > div {
  max-width: 620px;
  color: #fff;
}
.vlg-admin-hero-preview span {
  display: inline-block;
  margin-bottom: 8px;
  color: #ffb34d;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.vlg-admin-hero-preview strong {
  display: block;
  font-size: clamp(28px, 4vw, 46px);
  line-height: 1.02;
  font-weight: 950;
}
.vlg-admin-hero-preview small {
  display: block;
  margin-top: 10px;
  max-width: 58ch;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(255,255,255,.86);
}
.vlg-admin-hero-preview-light > div {
  color: #071224;
}
.vlg-admin-hero-preview-light small {
  color: #475569;
}


/* =========================================================
   v1.6.8 — avalehe plokkide admin-haldus ja uusimate toodete polish
   ========================================================= */
.vlg-latest-showcase .vlg-section-head > div {
  min-width: 0;
}
.vlg-latest-showcase .vlg-section-head h2 {
  margin-top: 6px !important;
}
.vlg-latest-showcase .vlg-products-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
}
.vlg-latest-showcase .vlg-card-image-wrap img,
.vlg-latest-showcase .wp-post-image {
  max-height: 170px !important;
}
.vlg-admin-hero-preview {
  min-height: 220px;
  background-position: center;
  background-size: cover;
}
.vlg-admin-card .vlg-admin-grid + .description {
  grid-column: 1 / -1;
}
@media (max-width: 767px) {
  .vlg-latest-showcase {
    padding: 18px !important;
  }
  .vlg-latest-showcase .vlg-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .vlg-latest-showcase .vlg-section-head a {
    margin-top: 8px;
  }
}


/* =========================================================
   v1.6.9 — admin overview, safer images and category/product stability
   ========================================================= */
.vlg-admin-section-overview {
  margin: 16px 0 18px;
  padding: 18px;
  border: 1px solid #dbe4ef;
  border-radius: 16px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 10px 26px rgba(15, 23, 42, .06);
}
.vlg-admin-section-overview > div:first-child {
  display: grid;
  gap: 4px;
  margin-bottom: 12px;
}
.vlg-admin-section-overview strong {
  font-size: 16px;
  color: #071224;
}
.vlg-admin-section-overview small {
  color: #64748b;
}
.vlg-admin-section-overview ol {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
  padding: 0;
  list-style: none;
}
.vlg-admin-section-overview li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid #dbe4ef;
  background: #fff;
  font-weight: 800;
}
.vlg-admin-section-overview li em {
  font-style: normal;
  font-size: 11px;
  padding: 3px 7px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #475569;
}
.vlg-admin-section-overview li.is-on em {
  background: rgba(22, 163, 74, .13);
  color: #15803d;
}
.vlg-admin-section-overview li.is-off {
  opacity: .62;
}
.vlg-admin-quick-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.vlg-img-fallback-applied {
  object-fit: contain !important;
  background: #f8fafc !important;
}
.vlg-category-card img,
li.product-category img,
.vlg-product-card img {
  background-color: #fff;
}
.vlg-category-card,
li.product-category.product {
  min-width: 0;
}
.vlg-category-card strong,
li.product-category .woocommerce-loop-category__title {
  overflow-wrap: anywhere;
  word-break: normal;
}
@media (max-width: 767px) {
  .vlg-admin-section-overview ol,
  .vlg-admin-quick-actions {
    display: grid;
  }
}


/* =========================================================
   v1.7.0 — WooCommerce practical add-ons
   ========================================================= */
.vlg-free-shipping-progress,
.vlg-cart-trust-card,
.vlg-empty-cart-panel,
.vlg-checkout-trust-box,
.vlg-product-help-notice {
  background: #fff;
  border: 1px solid var(--vlg-line);
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .05);
}
.vlg-free-shipping-progress {
  padding: 16px 18px;
  margin: 0 0 16px;
}
.vlg-free-shipping-progress__head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin-bottom: 10px;
}
.vlg-free-shipping-progress__head strong { color: var(--vlg-dark); }
.vlg-free-shipping-progress__head span { color: var(--vlg-muted); font-weight: 700; }
.vlg-free-shipping-progress__bar {
  height: 10px;
  border-radius: 999px;
  background: #edf2f7;
  overflow: hidden;
}
.vlg-free-shipping-progress__bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--vlg-primary), #fbbf24);
}
.vlg-cart-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}
.vlg-cart-trust-card {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 12px;
  align-items: center;
  padding: 14px;
}
.vlg-cart-trust-card > span {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: rgba(242, 138, 0, .12);
  font-size: 20px;
}
.vlg-cart-trust-card strong { display: block; color: var(--vlg-dark); line-height: 1.2; }
.vlg-cart-trust-card small { display: block; color: var(--vlg-muted); line-height: 1.35; margin-top: 3px; }
.vlg-empty-cart-panel {
  text-align: center;
  padding: 36px 24px;
  max-width: 680px;
  margin: 18px auto;
}
.vlg-empty-cart-panel__icon {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  margin: 0 auto 16px;
  border-radius: 22px;
  background: #fff7ed;
  font-size: 34px;
}
.vlg-empty-cart-panel h2 { margin: 0 0 10px; }
.vlg-empty-cart-panel p { color: var(--vlg-muted); margin: 0 auto 18px; max-width: 46ch; }
.vlg-checkout-trust-box {
  display: grid;
  gap: 12px;
  padding: 16px;
  margin: 16px 0;
  background: linear-gradient(180deg, #fff, #fffaf4);
}
.vlg-checkout-trust-box strong { color: var(--vlg-dark); }
.vlg-checkout-trust-box p { color: var(--vlg-muted); margin: 4px 0 0; line-height: 1.45; }
.vlg-checkout-trust-box .vlg-payment-badges { margin-top: 4px; }
.vlg-product-help-notice {
  padding: 14px 16px;
  margin: 14px 0;
  background: linear-gradient(135deg, #fff8f0, #ffffff);
}
.vlg-product-help-notice strong { display: block; color: var(--vlg-dark); }
.vlg-product-help-notice p { color: var(--vlg-muted); margin: 5px 0 10px; }
.vlg-product-help-notice__links { display: flex; flex-wrap: wrap; gap: 8px; }
.vlg-product-help-notice__links a,
.vlg-sku-copy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--vlg-line);
  color: var(--vlg-primary-dark);
  font-weight: 800;
  text-decoration: none;
}
.vlg-sku-copy {
  margin-left: 8px;
  cursor: pointer;
  font-size: 12px;
}
.woocommerce-mini-cart {
  display: grid;
  gap: 10px;
}
.woocommerce-mini-cart-item {
  border: 1px solid var(--vlg-line);
  border-radius: 14px;
  padding: 10px !important;
  background: #fff;
}
.woocommerce-mini-cart__buttons .button {
  width: 100%;
  min-height: 44px;
  border-radius: 999px !important;
  margin: 4px 0 !important;
}
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
  border: 1px solid var(--vlg-line) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .04) !important;
}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
  border-radius: 16px !important;
  background: #fff8f0 !important;
  border: 1px solid rgba(242, 138, 0, .18) !important;
}
@media (max-width: 767px) {
  .vlg-free-shipping-progress__head,
  .vlg-product-help-notice__links {
    display: grid;
  }
  .vlg-cart-trust-grid {
    grid-template-columns: 1fr;
  }
  .vlg-cart-trust-card,
  .vlg-empty-cart-panel,
  .vlg-checkout-trust-box {
    padding: 14px;
  }
}


/* =========================================================
   v1.7.1 — visual design polish
   ========================================================= */
:root {
  --vlg-radius-xl: 28px;
  --vlg-radius-lg: 22px;
  --vlg-radius-md: 16px;
}

body {
  background:
    radial-gradient(circle at top right, rgba(242, 138, 0, 0.06), transparent 22%),
    linear-gradient(180deg, #f7f9fc 0%, #fffdf9 22%, #f6f8fb 100%) !important;
}

.vlg-header,
.site-header,
header.site-header {
  backdrop-filter: blur(12px);
}

.vlg-topbar {
  background: linear-gradient(90deg, #0a1628 0%, #13243d 55%, #1c355c 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.vlg-header-main,
.vlg-header-shell,
.vlg-header {
  background: rgba(255,255,255,.88) !important;
  box-shadow: 0 14px 34px rgba(17, 32, 55, .08) !important;
}

.vlg-header-search input,
.vlg-header-search .search-field,
.vlg-search-form input[type="search"] {
  min-height: 50px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(15, 23, 42, .08) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 10px 20px rgba(15, 23, 42, .04);
  background: linear-gradient(180deg, #fff 0%, #fbfcfe 100%) !important;
}

.vlg-header-actions a,
.vlg-primary-menu > li > a,
.vlg-cat-trigger {
  border-radius: 14px !important;
}

.vlg-primary-menu > li > a:hover,
.vlg-header-actions a:hover,
.vlg-cat-trigger:hover {
  background: rgba(242, 138, 0, .08) !important;
}

.vlg-hero,
.vlg-hero-section,
.vlg-home-hero {
  border-radius: var(--vlg-radius-xl) !important;
  overflow: hidden !important;
  box-shadow: 0 24px 60px rgba(17, 32, 55, .12) !important;
}

.vlg-hero .vlg-btn,
.vlg-home-hero .vlg-btn,
.vlg-btn {
  border-radius: 999px !important;
}

.vlg-kicker {
  padding: 7px 12px !important;
  border-radius: 999px !important;
  background: rgba(242, 138, 0, .10) !important;
  color: #c56700 !important;
}

.vlg-section,
.vlg-page-card,
.vlg-page-content,
.vlg-post-card {
  border-radius: var(--vlg-radius-lg) !important;
  box-shadow: 0 14px 36px rgba(17, 32, 55, .05) !important;
}

.vlg-section-head {
  margin-bottom: 18px !important;
}

.vlg-section-head h2,
.vlg-section-head h1,
.vlg-page-card h1 {
  letter-spacing: -.04em !important;
}

.vlg-trust-card,
.vlg-category-card,
.vlg-product-card,
.vlg-contact-info-card,
.vlg-contact-cta-card,
.vlg-contact-content,
.vlg-contact-form-card,
.vlg-contact-map-card,
.vlg-admin-card,
.woocommerce-cart form.woocommerce-cart-form,
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #customer_details > div,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-navigation {
  border-radius: var(--vlg-radius-lg) !important;
}

.vlg-trust-card,
.vlg-category-card,
.vlg-product-card {
  border: 1px solid rgba(17, 32, 55, .08) !important;
  background: linear-gradient(180deg, #ffffff 0%, #fcfdff 100%) !important;
}

.vlg-trust-card:hover,
.vlg-category-card:hover,
.vlg-product-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 20px 40px rgba(17, 32, 55, .10) !important;
}

.vlg-product-card .vlg-card-image-wrap,
.vlg-product-card .vlg-card-image-wrap img,
.vlg-category-card img {
  border-radius: 18px !important;
}

.vlg-product-card .vlg-card-content {
  gap: 8px !important;
}

.vlg-product-card h2,
.vlg-product-card .woocommerce-loop-product__title {
  font-size: 16px !important;
  line-height: 1.35 !important;
}

.vlg-product-card .price,
.vlg-product-card .vlg-card-price {
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #1b2a41 !important;
}

.vlg-product-card .vlg-card-actions,
.vlg-product-card .vlg-card-actions .button,
.vlg-product-card .vlg-card-actions .vlg-card-cart {
  border-radius: 999px !important;
}

.vlg-product-card .vlg-energy-badge,
.vlg-product-card .vlg-energy-badge-link {
  border-radius: 12px !important;
  box-shadow: 0 8px 18px rgba(17, 32, 55, .12) !important;
}

.single-product .vlg-product-gallery-card,
.single-product .vlg-product-summary-card,
.single-product .vlg-product-tabs,
.single-product .vlg-product-sidecard {
  border-radius: var(--vlg-radius-lg) !important;
  border: 1px solid rgba(17, 32, 55, .08) !important;
  box-shadow: 0 14px 38px rgba(17, 32, 55, .06) !important;
}

.single-product .vlg-product-summary-card {
  background: linear-gradient(180deg, #ffffff 0%, #fffaf3 100%) !important;
}

.single-product .vlg-product-buybox {
  background: rgba(242, 138, 0, .04) !important;
  border: 1px solid rgba(242, 138, 0, .16) !important;
  border-radius: 20px !important;
}

.single-product .vlg-product-specs div {
  background: linear-gradient(180deg, #fff 0%, #f8fbff 100%) !important;
}

.single-product form.variations_form .variations select,
.single-product .vlg-product-buybox .quantity .qty,
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-cart .actions .input-text,
.woocommerce-account input.input-text,
.woocommerce-account textarea,
.woocommerce-account select,
.vlg-contact-form input:not(.vlg-hp),
.vlg-contact-form textarea {
  border-radius: 16px !important;
  border: 1px solid rgba(17, 32, 55, .10) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6) !important;
  background: linear-gradient(180deg, #fff 0%, #fbfdff 100%) !important;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.vlg-contact-notice,
.notice,
.updated {
  border-radius: 18px !important;
  box-shadow: 0 10px 24px rgba(17, 32, 55, .05) !important;
}

.woocommerce-cart .shop_table,
.woocommerce-checkout table.shop_table {
  border-radius: 18px !important;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-checkout #place_order,
.single-product .single_add_to_cart_button,
.woocommerce-account button,
.woocommerce-account .button,
.vlg-contact-form button,
.vlg-btn-primary {
  border-radius: 999px !important;
  box-shadow: 0 14px 28px rgba(242, 138, 0, .22) !important;
}

.woocommerce-cart .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content {
  background: linear-gradient(180deg, #ffffff 0%, #fcfdff 100%) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  background: linear-gradient(180deg, #0a1a33 0%, #081326 100%) !important;
}

.vlg-footer {
  background:
    radial-gradient(circle at 8% 100%, rgba(242,138,0,.22) 0%, transparent 26%),
    radial-gradient(circle at 100% 0%, rgba(255,255,255,.08) 0%, transparent 25%),
    linear-gradient(180deg, #06111f 0%, #091726 100%) !important;
  border-top-left-radius: 34px;
  border-top-right-radius: 34px;
  box-shadow: 0 -20px 40px rgba(4, 10, 20, .10);
}

.vlg-footer-grid {
  gap: 38px !important;
}

.vlg-payment-badge.is-image {
  border-radius: 14px !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 8px 18px rgba(8, 14, 26, .12) !important;
}

.vlg-admin-wrap,
.vlg-admin-panel,
.vlg-admin-card {
  border-radius: 22px !important;
}

.vlg-admin-card summary {
  background: linear-gradient(180deg, #fbfcff 0%, #f3f7fc 100%) !important;
}

@media (max-width: 991px) {
  .vlg-footer {
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
  }
  .vlg-section,
  .vlg-page-card,
  .vlg-page-content,
  .vlg-post-card,
  .vlg-trust-card,
  .vlg-category-card,
  .vlg-product-card {
    border-radius: 18px !important;
  }
}

@media (max-width: 767px) {
  .vlg-kicker {
    padding: 6px 10px !important;
    font-size: 11px !important;
  }
  .vlg-btn,
  .vlg-product-card .vlg-card-actions .button,
  .vlg-product-card .vlg-card-actions .vlg-card-cart {
    min-height: 44px !important;
  }
  .vlg-footer {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }
}


/* =========================================================
   v1.7.2 — final polish: mobile, layout safety and UX stability
   ========================================================= */
html {
  scroll-behavior: smooth;
}

body.vlg-theme,
body {
  overflow-x: hidden !important;
}

.vlg-container,
.vlg-home,
.vlg-shop-layout,
.vlg-single-product-page,
.vlg-page-wrap,
.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-account .site-main {
  min-width: 0 !important;
}

.vlg-section,
.vlg-page-card,
.vlg-product-card,
.vlg-category-card,
.vlg-campaign-card,
.vlg-contact-info-card,
.vlg-product-summary-card,
.vlg-product-gallery-card,
.vlg-product-sidecard,
.woocommerce-cart form.woocommerce-cart-form,
.woocommerce-cart .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content {
  isolation: isolate;
}

/* Better visual rhythm between front-page sections. */
.vlg-home .vlg-section,
.vlg-home .vlg-trust-grid,
.vlg-home .vlg-newsletter,
.vlg-home .vlg-page-content {
  margin-block: 24px !important;
}

.vlg-section-head a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
}

/* Product cards: consistent readable titles and no clipped badges/text. */
ul.products,
.vlg-products-grid {
  align-items: stretch !important;
}

.vlg-product-card {
  min-width: 0 !important;
  overflow: visible !important;
}

.vlg-product-card .vlg-product-link {
  overflow: hidden !important;
  border-radius: inherit !important;
}

.vlg-product-card .vlg-card-image-wrap {
  overflow: hidden !important;
  background:
    radial-gradient(circle at 30% 10%, rgba(242,138,0,.08), transparent 32%),
    linear-gradient(180deg, #fff 0%, #f8fafc 100%) !important;
}

.vlg-product-card h2,
.vlg-product-card .woocommerce-loop-product__title {
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 4.05em !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
}

.vlg-card-category,
.vlg-card-price,
.vlg-card-rating,
.vlg-card-actions {
  min-width: 0 !important;
}

.vlg-card-actions .button,
.vlg-card-actions .vlg-card-cart {
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.18 !important;
}

.vlg-img-fallback-applied {
  object-fit: contain !important;
  background: #f8fafc !important;
}

/* Category cards: cleaner rows and image safety. */
.vlg-category-card {
  overflow: hidden !important;
}

.vlg-category-card img,
li.product-category img {
  background: #f8fafc !important;
  border: 1px solid rgba(17,32,55,.06) !important;
  padding: 8px !important;
}

.vlg-category-card strong,
.vlg-category-card small,
.vlg-category-card span {
  overflow-wrap: anywhere !important;
}

/* Single product: keep buy area stable and readable. */
.single-product .vlg-product-main-grid {
  align-items: start !important;
}

.single-product .vlg-product-left,
.single-product .vlg-product-right,
.single-product .vlg-product-summary-card,
.single-product .vlg-product-gallery-card {
  min-width: 0 !important;
}

.single-product .vlg-product-summary-card,
.single-product .vlg-product-right .vlg-product-summary-card {
  position: static !important;
  top: auto !important;
}

.single-product .product_title.entry-title {
  overflow-wrap: anywhere !important;
  text-wrap: balance;
}

.single-product .vlg-product-gallery-card .woocommerce-product-gallery__image img {
  max-width: 100% !important;
  height: auto !important;
}

.single-product .vlg-product-buybox {
  position: relative !important;
  z-index: 2 !important;
}

.single-product form.cart,
.single-product form.variations_form.cart,
.single-product .single_variation_wrap,
.single-product .woocommerce-variation-add-to-cart {
  min-width: 0 !important;
  max-width: 100% !important;
}

.single-product form.variations_form .variations select,
.single-product .quantity .qty,
.single-product .single_add_to_cart_button {
  max-width: 100% !important;
}

.single-product .vlg-product-sidecard .vlg-payment-badges {
  max-width: 100% !important;
}

/* Cart and checkout: prevent table overflow on desktop and mobile. */
.woocommerce-cart .shop_table,
.woocommerce-checkout .shop_table,
.woocommerce-account table.shop_table {
  width: 100% !important;
  table-layout: auto !important;
}

.woocommerce-cart .shop_table td,
.woocommerce-cart .shop_table th,
.woocommerce-checkout .shop_table td,
.woocommerce-checkout .shop_table th,
.woocommerce-account table.shop_table td,
.woocommerce-account table.shop_table th {
  overflow-wrap: anywhere !important;
}

.woocommerce-cart .product-thumbnail,
.woocommerce-cart .product-remove {
  width: 72px !important;
}

.woocommerce-cart .quantity .qty {
  min-width: 76px !important;
}

.woocommerce-cart .coupon input,
.woocommerce-cart .coupon button,
.woocommerce-checkout .coupon input,
.woocommerce-checkout .coupon button {
  min-height: 46px !important;
}

.woocommerce-checkout .select2-container {
  width: 100% !important;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
.woocommerce-account .woocommerce-address-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px 16px !important;
}

.woocommerce-checkout .form-row,
.woocommerce-account .form-row {
  width: 100% !important;
  float: none !important;
  margin: 0 0 12px !important;
}

.woocommerce-checkout .form-row-wide,
.woocommerce-account .form-row-wide,
.woocommerce-checkout #billing_address_1_field,
.woocommerce-checkout #billing_address_2_field,
.woocommerce-checkout #shipping_address_1_field,
.woocommerce-checkout #shipping_address_2_field,
.woocommerce-checkout #order_comments_field {
  grid-column: 1 / -1 !important;
}

/* Account page: cleaner mobile navigation and forms. */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  max-width: 100% !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
  overflow-wrap: anywhere !important;
}

.woocommerce-account fieldset {
  border: 1px solid var(--vlg-line) !important;
  border-radius: 18px !important;
  padding: 18px !important;
  margin-top: 18px !important;
}

/* Contact and admin small polish. */
.vlg-contact-layout,
.vlg-contact-main,
.vlg-contact-side,
.vlg-admin-grid {
  min-width: 0 !important;
}

.vlg-contact-form button,
.vlg-admin-wrap .button,
.vlg-admin-wrap button {
  min-height: 42px;
}

/* Motion: keep site calm for users who prefer reduced motion. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

@media (max-width: 1100px) {
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  .woocommerce-account .woocommerce-address-fields__field-wrapper {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .vlg-container {
    width: min(100% - 24px, var(--vlg-container)) !important;
  }

  .vlg-home .vlg-section,
  .vlg-home .vlg-trust-grid,
  .vlg-home .vlg-newsletter,
  .vlg-home .vlg-page-content {
    margin-block: 16px !important;
  }

  .vlg-section-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: 10px !important;
  }

  .vlg-section-head a {
    justify-self: start !important;
  }

  .vlg-hero,
  .vlg-home-hero,
  .vlg-hero-section {
    border-radius: 20px !important;
  }

  .vlg-products-grid,
  ul.products {
    gap: 12px !important;
  }

  .vlg-product-card h2,
  .vlg-product-card .woocommerce-loop-product__title {
    -webkit-line-clamp: 2 !important;
    min-height: 2.7em !important;
    font-size: 14px !important;
  }

  .vlg-product-card .vlg-card-image-wrap img,
  .vlg-product-card .wp-post-image {
    max-height: 132px !important;
  }

  .vlg-card-actions {
    padding-inline: 10px !important;
  }

  .single-product .vlg-product-buybox,
  .single-product .vlg-product-summary-card,
  .single-product .vlg-product-gallery-card,
  .single-product .vlg-product-sidecard,
  .single-product .vlg-product-tab {
    border-radius: 18px !important;
  }

  .single-product .vlg-product-specs {
    grid-template-columns: 1fr !important;
  }

  .woocommerce-cart .shop_table_responsive tr,
  .woocommerce-page table.shop_table_responsive tr {
    border-radius: 16px !important;
    border: 1px solid var(--vlg-line) !important;
    margin-bottom: 12px !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .woocommerce-cart .shop_table_responsive tr td,
  .woocommerce-page table.shop_table_responsive tr td {
    padding: 12px !important;
  }

  .woocommerce-cart form.woocommerce-cart-form,
  .woocommerce-cart .cart-collaterals .cart_totals,
  .woocommerce-checkout #order_review,
  .woocommerce-account .woocommerce-MyAccount-content,
  .woocommerce-account .woocommerce-MyAccount-navigation {
    padding: 14px !important;
    border-radius: 18px !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr 1fr !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation a {
    min-height: 42px !important;
    padding: 10px !important;
    justify-content: center !important;
    text-align: center !important;
  }
}

@media (max-width: 430px) {
  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr !important;
  }

  .vlg-product-card .vlg-card-image-wrap img,
  .vlg-product-card .wp-post-image {
    max-height: 118px !important;
  }

  .vlg-payment-badge.is-image img {
    max-width: 72px !important;
  }
}
