/* Valar x Minimalist visual system.
   CSS-first override for TastyDaily / WooCommerce. */

:root {
  --vlm-bg: #ffffff;
  --vlm-ink: #101010;
  --vlm-muted: #666666;
  --vlm-soft: #f7f7f4;
  --vlm-panel: #fbfbf8;
  --vlm-line: #deded8;
  --vlm-accent: #1f4f3a;
  --vlm-sale: #2f6f46;
  --vlm-warn: #9a4f22;
  --vlm-radius: 0;
  --vlm-max: 1320px;
  --vlm-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

html {
  background: var(--vlm-bg);
}

body {
  background: var(--vlm-bg) !important;
  color: var(--vlm-ink);
  font-family: var(--vlm-font);
  letter-spacing: 0;
}

body,
button,
input,
select,
textarea {
  font-family: var(--vlm-font) !important;
}

a {
  color: inherit;
}

.l-section,
.l-section__container,
.elementor-section,
.elementor-container,
.site-main,
.content-area,
.woocommerce,
.woocommerce-page .site-main {
  background: var(--vlm-bg) !important;
}

.l-section__container,
.container,
.woocommerce .content-area,
.woocommerce-page .content-area {
  max-width: var(--vlm-max) !important;
}

/* Header / utility */
.c-header,
.site-header,
header.c-header {
  background: rgba(255, 255, 255, .96) !important;
  border-bottom: 1px solid var(--vlm-line) !important;
  box-shadow: none !important;
}

.c-header__top,
.c-header__mobile_blocks,
.c-header__shortcode {
  background: var(--vlm-ink) !important;
  color: #fff !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  letter-spacing: .02em !important;
}

.c-header__top a,
.c-header__shortcode a {
  color: #fff !important;
  text-decoration: none !important;
}

.c-header__logo,
.custom-logo-link,
.site-branding {
  letter-spacing: 0 !important;
}

.c-header__menu a,
.main-navigation a,
.menu-item a {
  color: var(--vlm-ink) !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  letter-spacing: .01em !important;
  text-transform: none !important;
}

.c-header__button,
.c-header__cart,
.c-header__search,
.c-header__wishlist,
.c-header__account {
  border-radius: 999px !important;
  border: 1px solid var(--vlm-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}

@media (min-width: 782px) {
  body.vlm-home .vlx-home-tabbar,
  body.vlm-shop-page .vlx-home-tabbar,
  body.vlm-category-page .vlx-home-tabbar,
  body.vlm-static-pdp .vlx-home-tabbar,
  body.vlm-home .vmc-bottom-nav,
  body.vlm-shop-page .vmc-bottom-nav,
  body.vlm-category-page .vmc-bottom-nav,
  body.vlm-static-pdp .vmc-bottom-nav {
    display: none !important;
    visibility: hidden !important;
  }

  body.vlm-home,
  body.vlm-shop-page,
  body.vlm-category-page,
  body.vlm-static-pdp {
    padding-bottom: 0 !important;
  }
}

/* Page headings */
h1,
.page-title,
.product_title,
.woocommerce-products-header__title {
  color: var(--vlm-ink) !important;
  font-family: var(--vlm-font) !important;
  font-size: 46px !important;
  font-weight: 760 !important;
  line-height: .98 !important;
  letter-spacing: 0 !important;
}

h2,
.elementor-heading-title,
.related.products > h2,
.upsells.products > h2 {
  color: var(--vlm-ink) !important;
  font-family: var(--vlm-font) !important;
  font-weight: 720 !important;
  letter-spacing: 0 !important;
}

.woocommerce-breadcrumb,
.woocommerce-result-count,
.woocommerce-products-header,
.term-description,
.product_meta,
.posted_in,
.sku_wrapper {
  color: var(--vlm-muted) !important;
  font-size: 13px !important;
}

/* Promotional / trust strips */
.woocommerce-store-notice,
.valar-announce-bar,
.c-ip-notice,
.c-header__top-row-list {
  background: var(--vlm-ink) !important;
  color: #fff !important;
  border: 0 !important;
}

.woocommerce-store-notice a,
.valar-announce-bar a {
  color: #fff !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

/* Product grids */
.products,
.c-product-grid,
.wc-block-grid__products {
  gap: 18px !important;
}

.product,
.c-product-grid__item,
.wc-block-grid__product {
  background: #fff !important;
  border: 1px solid var(--vlm-line) !important;
  border-radius: var(--vlm-radius) !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: border-color .16s ease, transform .16s ease !important;
}

.product:hover,
.c-product-grid__item:hover,
.wc-block-grid__product:hover {
  border-color: var(--vlm-ink) !important;
  transform: translateY(-1px) !important;
}

.c-product-grid__thumb-wrap,
.woocommerce-loop-product__link img,
.wc-block-grid__product-image {
  background: var(--vlm-soft) !important;
  border-bottom: 1px solid var(--vlm-line) !important;
}

.c-product-grid__thumb,
.attachment-woocommerce_thumbnail,
.woocommerce-loop-product__link img {
  object-fit: contain !important;
  padding: 18px !important;
  mix-blend-mode: multiply;
}

.c-product-grid__details,
.product .woocommerce-loop-product__title,
.wc-block-grid__product-title {
  padding: 14px 14px 0 !important;
}

.c-product-grid__title,
.woocommerce-loop-product__title,
.wc-block-grid__product-title {
  color: var(--vlm-ink) !important;
  font-size: 15px !important;
  font-weight: 720 !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  min-height: 38px !important;
}

.c-product-grid__brand,
.posted_in a,
.product-category a,
.c-product-grid__star-rating,
.review-count {
  color: var(--vlm-muted) !important;
  font-size: 12px !important;
  font-weight: 520 !important;
  text-transform: none !important;
}

.c-product-grid__badges,
.onsale,
.c-badge,
.c-badge__list {
  border-radius: 0 !important;
}

.onsale,
.c-badge,
.c-badge--sale {
  background: var(--vlm-ink) !important;
  color: #fff !important;
  border: 0 !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

.price,
.c-product-grid__price-wrap,
.wc-block-grid__product-price {
  color: var(--vlm-ink) !important;
  font-size: 15px !important;
  font-weight: 760 !important;
}

.price del,
.c-product-grid__price-wrap del {
  color: var(--vlm-muted) !important;
  opacity: .8 !important;
  font-weight: 520 !important;
}

.price ins,
.c-product-grid__price-wrap ins {
  color: var(--vlm-ink) !important;
  text-decoration: none !important;
}

.add_to_cart_button,
.product_type_simple,
.single_add_to_cart_button,
.checkout-button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.elementor-button {
  background: var(--vlm-ink) !important;
  border: 1px solid var(--vlm-ink) !important;
  border-radius: 0 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  letter-spacing: .04em !important;
  min-height: 46px !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.add_to_cart_button:hover,
.single_add_to_cart_button:hover,
.checkout-button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.elementor-button:hover {
  background: var(--vlm-accent) !important;
  border-color: var(--vlm-accent) !important;
  color: #fff !important;
}

.c-product-grid__atc-wrap,
.product .button,
.wc-block-grid__product-add-to-cart {
  margin: 12px 14px 14px !important;
}

/* Shop layout */
.woocommerce-ordering select,
.wpfFilterWrapper,
.widget_price_filter,
.widget_layered_nav,
.widget_product_categories,
.woocommerce-widget-layered-nav {
  background: #fff !important;
  border: 1px solid var(--vlm-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.woocommerce-ordering select,
select,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="number"],
textarea {
  background: #fff !important;
  border: 1px solid var(--vlm-line) !important;
  border-radius: 0 !important;
  color: var(--vlm-ink) !important;
  min-height: 44px !important;
}

/* Product page */
.single-product div.product,
.woocommerce div.product {
  max-width: var(--vlm-max) !important;
  margin-inline: auto !important;
}

.single-product .woocommerce-product-gallery,
.woocommerce div.product div.images {
  background: var(--vlm-soft) !important;
  border: 1px solid var(--vlm-line) !important;
  border-radius: 0 !important;
  padding: 16px !important;
}

.woocommerce div.product div.summary,
.single-product .summary {
  background: #fff !important;
  border: 1px solid var(--vlm-line) !important;
  border-radius: 0 !important;
  padding: clamp(20px, 3vw, 34px) !important;
}

.woocommerce div.product .woocommerce-product-rating {
  border-bottom: 1px solid var(--vlm-line) !important;
  margin-bottom: 18px !important;
  padding-bottom: 16px !important;
}

.vlm-pdp-proof {
  border-bottom: 1px solid var(--vlm-line);
  margin: 0 0 18px;
  padding: 0 0 18px;
}

.vlm-pdp-subtitle {
  color: var(--vlm-ink);
  font-size: 17px;
  font-weight: 560;
  line-height: 1.45;
  margin: 0 0 14px;
}

.vlm-pdp-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.vlm-pdp-badges span {
  background: var(--vlm-soft);
  border: 1px solid var(--vlm-line);
  color: var(--vlm-ink);
  display: inline-flex;
  font-size: 11px;
  font-weight: 760;
  letter-spacing: .055em;
  line-height: 1;
  padding: 10px 11px;
  text-transform: uppercase;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--vlm-ink) !important;
  font-size: 34px !important;
  font-weight: 780 !important;
  letter-spacing: 0 !important;
}

.woocommerce div.product form.cart {
  border-top: 1px solid var(--vlm-line) !important;
  margin-top: 20px !important;
  padding-top: 20px !important;
}

.vlm-offers {
  border-top: 1px solid var(--vlm-line);
  margin-top: 20px;
  padding-top: 18px;
}

.vlm-offers h2 {
  font-size: 13px !important;
  font-weight: 780 !important;
  letter-spacing: .07em !important;
  line-height: 1 !important;
  margin: 0 0 12px !important;
  text-transform: uppercase !important;
}

.vlm-offer-grid {
  display: grid;
  gap: 8px;
}

.vlm-offer-grid article {
  background: var(--vlm-panel);
  border: 1px solid var(--vlm-line);
  display: grid;
  gap: 3px;
  padding: 12px;
}

.vlm-offer-grid strong {
  color: var(--vlm-ink);
  font-size: 13px;
  font-weight: 780;
  letter-spacing: .04em;
}

.vlm-offer-grid span {
  color: var(--vlm-muted);
  font-size: 12px;
  line-height: 1.4;
}

.quantity .qty {
  border: 1px solid var(--vlm-line) !important;
  border-radius: 0 !important;
  min-height: 46px !important;
}

.woocommerce-tabs,
.woocommerce div.product .woocommerce-tabs {
  border-top: 1px solid var(--vlm-line) !important;
  margin-top: 42px !important;
  padding-top: 24px !important;
}

.woocommerce-tabs ul.tabs {
  border: 0 !important;
  display: flex !important;
  gap: 8px !important;
  padding: 0 !important;
}

.woocommerce-tabs ul.tabs li {
  background: #fff !important;
  border: 1px solid var(--vlm-line) !important;
  border-radius: 0 !important;
  margin: 0 !important;
}

.woocommerce-tabs ul.tabs li.active {
  border-color: var(--vlm-ink) !important;
}

.woocommerce-tabs ul.tabs li a {
  color: var(--vlm-ink) !important;
  font-size: 12px !important;
  font-weight: 760 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

.woocommerce-Tabs-panel,
.woocommerce-tabs .panel {
  background: var(--vlm-panel) !important;
  border: 1px solid var(--vlm-line) !important;
  padding: clamp(20px, 3vw, 34px) !important;
}

.woocommerce-Tabs-panel ul,
.summary ul,
.entry-summary ul {
  padding-left: 18px !important;
}

.woocommerce-Tabs-panel li,
.summary li,
.entry-summary li {
  margin-bottom: 8px !important;
}

.vlm-science-panels {
  display: grid;
  gap: 14px;
  grid-column: 1 / -1;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 34px auto 0;
  max-width: var(--vlm-max);
}

.vlm-panel {
  background: #fff;
  border: 1px solid var(--vlm-line);
  color: var(--vlm-ink);
  min-height: 172px;
  padding: clamp(18px, 2.2vw, 28px);
}

.vlm-panel--wide {
  grid-column: span 2;
}

.vlm-panel span {
  color: var(--vlm-muted);
  display: block;
  font-size: 11px;
  font-weight: 780;
  letter-spacing: .075em;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.vlm-panel h2 {
  font-size: 32px !important;
  line-height: 1 !important;
  margin: 0 0 18px !important;
}

.vlm-panel p,
.vlm-panel li {
  color: var(--vlm-ink);
  font-size: 15px;
  line-height: 1.58;
}

.vlm-panel ul {
  margin: 0;
  padding-left: 18px;
}

/* Cart / checkout */
.woocommerce-cart-form,
.cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields,
.woocommerce-order {
  background: #fff !important;
  border: 1px solid var(--vlm-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: clamp(18px, 2.5vw, 28px) !important;
}

table.shop_table {
  border: 1px solid var(--vlm-line) !important;
  border-radius: 0 !important;
}

table.shop_table th {
  color: var(--vlm-muted) !important;
  font-size: 12px !important;
  font-weight: 760 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

/* Footer */
.site-footer,
.c-footer,
footer {
  background: var(--vlm-ink) !important;
  color: #fff !important;
  border-top: 0 !important;
}

.site-footer a,
.c-footer a,
footer a {
  color: #fff !important;
}

/* Minimalist-style front page takeover */
body.vlm-home {
  background: #fff !important;
  color: var(--vlm-ink) !important;
  margin: 0 !important;
}

body.vlm-home #wpadminbar ~ * {
  letter-spacing: 0 !important;
}

body.vlm-shop-page,
body.vlm-category-page,
body.vlm-static-pdp,
body.vlm-info-page,
body.vlm-search-page,
body.vlm-account-page {
  background: #fff !important;
}

body.woocommerce-cart .c-footer:not(.vlm-woo-footer),
body.woocommerce-checkout .c-footer:not(.vlm-woo-footer),
body.woocommerce-cart .valar-global-footer,
body.woocommerce-checkout .valar-global-footer,
body.woocommerce-cart .site-footer,
body.woocommerce-checkout .site-footer {
  display: none !important;
}

body.woocommerce-cart .l-wrap > main.l-inner {
  display: none !important;
}

body.woocommerce-cart .woocommerce-notice,
body.woocommerce-checkout .woocommerce-notice {
  display: none !important;
}

@media (min-width: 901px) {
  body.woocommerce-checkout:not(.elementor-editor-active) {
    background: #fbf8f1 !important;
    color: #15130f !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .l-wrap,
  body.woocommerce-checkout:not(.elementor-editor-active) .l-inner,
  body.woocommerce-checkout:not(.elementor-editor-active) .l-section,
  body.woocommerce-checkout:not(.elementor-editor-active) .l-section__content,
  body.woocommerce-checkout:not(.elementor-editor-active) .woocommerce {
    background: transparent !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .l-inner {
    margin: 0 auto !important;
    max-width: none !important;
    padding: 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-page-header {
    background: transparent !important;
    border: 0 !important;
    display: grid !important;
    gap: 14px !important;
    margin: 0 auto !important;
    max-width: 1120px !important;
    min-height: 0 !important;
    padding: 72px 24px 28px !important;
    text-align: left !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-breadcrumbs {
    display: none !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-page-header::before {
    color: #ba6239;
    content: "secure order";
    display: block;
    font-size: 24px;
    font-style: italic;
    font-weight: 650;
    line-height: 1;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-page-header__title {
    color: #103827 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 70px !important;
    font-weight: 520 !important;
    letter-spacing: 0 !important;
    line-height: .96 !important;
    margin: 0 !important;
    text-align: left !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-page-header__title::after {
    content: ".";
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .l-section--checkout {
    border: 0 !important;
    margin: 0 auto 72px !important;
    max-width: 1120px !important;
    padding: 0 24px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .woocommerce-notices-wrapper:empty,
  body.woocommerce-checkout:not(.elementor-editor-active) .woocommerce-form-login {
    display: none !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .valar-shipping-bar {
    background-color: #f4ecdc !important;
    background-image: radial-gradient(rgba(21, 19, 15, .11) .45px, transparent .56px) !important;
    background-size: 3px 3px !important;
    border: 1px solid rgba(21, 19, 15, .12) !important;
    border-radius: 8px !important;
    box-shadow: 0 16px 42px rgba(21, 19, 15, .06) !important;
    margin: 0 0 28px !important;
    padding: 18px 20px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .valar-ship-msg {
    color: #183e2e !important;
    font-size: 13px !important;
    font-weight: 780 !important;
    letter-spacing: .06em !important;
    margin: 0 0 12px !important;
    text-transform: uppercase !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .valar-ship-track {
    background: rgba(21, 19, 15, .10) !important;
    border-radius: 999px !important;
    height: 8px !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .valar-ship-fill {
    background: #ba6239 !important;
    border-radius: 999px !important;
    height: 100% !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart--checkout {
    margin: 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__wrap {
    align-items: start !important;
    display: grid !important;
    gap: 28px !important;
    grid-template-columns: minmax(0, 1fr) 390px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__col-1,
  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__col-2,
  body.woocommerce-checkout:not(.elementor-editor-active) .js-sticky-sidebar-nearby,
  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__customer-details,
  body.woocommerce-checkout:not(.elementor-editor-active) .col-1,
  body.woocommerce-checkout:not(.elementor-editor-active) .col-2 {
    float: none !important;
    margin: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    width: 100% !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__form,
  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__collaterals {
    background-color: #fffaf1 !important;
    background-image: radial-gradient(rgba(21, 19, 15, .09) .45px, transparent .56px) !important;
    background-size: 3px 3px !important;
    border: 1px solid rgba(21, 19, 15, .14) !important;
    border-radius: 8px !important;
    box-shadow: 0 18px 48px rgba(21, 19, 15, .08) !important;
    padding: 28px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__form + .c-cart__form {
    margin-top: 22px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__collaterals {
    position: sticky !important;
    top: 24px !important;
  }

  body.admin-bar.woocommerce-checkout:not(.elementor-editor-active) .c-cart__collaterals {
    top: 56px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__header,
  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__sub-header,
  body.woocommerce-checkout:not(.elementor-editor-active) #order_review_heading {
    color: #103827 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 32px !important;
    font-weight: 520 !important;
    letter-spacing: 0 !important;
    line-height: 1.05 !important;
    margin: 0 0 20px !important;
    text-transform: none !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__coupon {
    border-bottom: 1px solid rgba(21, 19, 15, .12) !important;
    margin: 0 0 22px !important;
    padding: 0 0 18px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__coupon-header {
    color: #103827 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 27px !important;
    font-weight: 520 !important;
    letter-spacing: 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .woocommerce-checkout-review-order {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .form-row {
    margin: 0 0 16px !important;
    padding: 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .form-row-first,
  body.woocommerce-checkout:not(.elementor-editor-active) .form-row-last {
    width: calc(50% - 10px) !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) label,
  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__totals-subtotal-header,
  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__sub-sub-header {
    color: rgba(21, 19, 15, .58) !important;
    font-size: 11px !important;
    font-weight: 780 !important;
    letter-spacing: .07em !important;
    line-height: 1.25 !important;
    margin: 0 0 8px !important;
    text-transform: uppercase !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) input.input-text,
  body.woocommerce-checkout:not(.elementor-editor-active) input[type="text"],
  body.woocommerce-checkout:not(.elementor-editor-active) input[type="email"],
  body.woocommerce-checkout:not(.elementor-editor-active) input[type="tel"],
  body.woocommerce-checkout:not(.elementor-editor-active) input[type="number"],
  body.woocommerce-checkout:not(.elementor-editor-active) textarea,
  body.woocommerce-checkout:not(.elementor-editor-active) select,
  body.woocommerce-checkout:not(.elementor-editor-active) .select2-selection {
    background: #fbf8f1 !important;
    border: 1px solid rgba(16, 56, 39, .18) !important;
    border-radius: 8px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65) !important;
    color: #15130f !important;
    font-size: 15px !important;
    font-weight: 620 !important;
    letter-spacing: 0 !important;
    min-height: 50px !important;
    padding: 13px 14px !important;
    width: 100% !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) textarea {
    min-height: 84px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) #billing_company_field,
  body.woocommerce-checkout:not(.elementor-editor-active) #billing_country_field,
  body.woocommerce-checkout:not(.elementor-editor-active) #shipping_company_field,
  body.woocommerce-checkout:not(.elementor-editor-active) #shipping_country_field {
    display: none !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) table.shop_table {
    background: transparent !important;
    border: 0 !important;
    margin: 0 0 18px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) table.shop_table th,
  body.woocommerce-checkout:not(.elementor-editor-active) table.shop_table td {
    border-color: rgba(21, 19, 15, .10) !important;
    color: #15130f !important;
    padding: 12px 0 !important;
    vertical-align: top !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__totals-product-name {
    color: #15130f !important;
    font-size: 14px !important;
    font-weight: 680 !important;
    line-height: 1.35 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__totals-price {
    color: #103827 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 20px !important;
    font-weight: 520 !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__totals-price--total {
    color: #103827 !important;
    font-size: 31px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) #shipping_method,
  body.woocommerce-checkout:not(.elementor-editor-active) .payment_methods {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__shipping-methods-item,
  body.woocommerce-checkout:not(.elementor-editor-active) .wc_payment_method {
    background: #fbf8f1 !important;
    border: 1px solid rgba(16, 56, 39, .16) !important;
    border-radius: 8px !important;
    margin: 0 0 10px !important;
    padding: 13px 14px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__payment-methods-box {
    background: transparent !important;
    color: rgba(21, 19, 15, .68) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .woocommerce-privacy-policy-text {
    color: rgba(21, 19, 15, .62) !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
    margin: 18px 0 !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) #place_order {
    background: #27211c !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #fffaf1 !important;
    font-size: 13px !important;
    font-weight: 820 !important;
    letter-spacing: .08em !important;
    min-height: 58px !important;
    text-transform: uppercase !important;
    width: 100% !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) #place_order:hover {
    background: #103827 !important;
  }
}

@media (min-width: 901px) and (max-width: 1180px) {
  body.woocommerce-checkout:not(.elementor-editor-active) .c-page-header__title {
    font-size: 58px !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__wrap {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-checkout:not(.elementor-editor-active) .c-cart__collaterals {
    position: static !important;
  }
}

body.vlm-faq-page .vlm-info-hero,
body.vlm-contact-page .vlm-info-hero {
  border-bottom-color: rgba(20, 66, 45, .18);
}

body.vlm-faq-page .vlm-info-note {
  background: #22201c;
}

body.vlm-contact-page .vlm-info-note {
  background: #18442f;
}

.vlm-home-offer {
  align-items: center;
  background: var(--vlm-ink);
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  font-weight: 680;
  gap: 8px 24px;
  justify-content: center;
  line-height: 1.35;
  min-height: 38px;
  padding: 9px 18px;
  text-align: center;
}

.vlm-home-nav {
  align-items: center;
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid var(--vlm-line);
  display: grid;
  gap: 20px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 78px;
  padding: 0 clamp(18px, 5vw, 64px);
  position: sticky;
  top: 0;
  z-index: 50;
}

.admin-bar .vlm-home-nav {
  top: 32px;
}

.vlm-home-logo {
  color: var(--vlm-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  font-style: italic;
  font-weight: 500;
  letter-spacing: 0;
  text-decoration: none;
}

.vlm-home-nav nav {
  align-items: center;
  display: flex;
  gap: clamp(16px, 3vw, 34px);
  justify-content: center;
}

.vlm-home-nav nav a,
.vlm-home-bag {
  color: var(--vlm-ink);
  font-size: 13px;
  font-weight: 740;
  letter-spacing: .035em;
  text-decoration: none;
  text-transform: uppercase;
}

.vlm-home-bag {
  border: 1px solid var(--vlm-ink);
  min-width: 86px;
  padding: 12px 16px;
  text-align: center;
}

.vlm-home-hero,
.vlm-home-section,
.vlm-home-proof {
  margin-inline: auto;
  max-width: var(--vlm-max);
  padding: clamp(46px, 7vw, 92px) clamp(18px, 5vw, 64px);
}

.vlm-home-hero {
  align-items: center;
  display: grid;
  gap: clamp(28px, 5vw, 70px);
  grid-template-columns: minmax(0, .9fr) minmax(460px, 1.1fr);
  min-height: calc(100vh - 116px);
}

.vlm-home-kicker {
  color: var(--vlm-muted);
  display: inline-flex;
  font-size: 12px;
  font-weight: 780;
  letter-spacing: .11em;
  margin-bottom: 16px;
  text-transform: uppercase;
}

.vlm-home-hero h1,
.vlm-home-section h2,
.vlm-home-proof h2 {
  color: var(--vlm-ink) !important;
  font-family: var(--vlm-font) !important;
  font-weight: 780 !important;
  letter-spacing: 0 !important;
  margin: 0 !important;
  word-spacing: .06em;
}

.vlm-home-hero h1 {
  font-size: 80px !important;
  line-height: 1 !important;
  max-width: 10ch;
}

.vlm-home-hero p {
  color: #363636;
  font-size: 18px;
  line-height: 1.55;
  margin: 24px 0 0;
  max-width: 560px;
}

.vlm-home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}

.vlm-home-actions a {
  align-items: center;
  background: var(--vlm-ink);
  border: 1px solid var(--vlm-ink);
  color: #fff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 780;
  justify-content: center;
  letter-spacing: .05em;
  min-height: 48px;
  padding: 0 20px;
  text-decoration: none;
  text-transform: uppercase;
}

.vlm-home-actions a + a {
  background: #fff;
  color: var(--vlm-ink);
}

.vlm-home-hero__media {
  display: grid;
  gap: 14px;
  grid-template-columns: 1.15fr .85fr;
}

.vlm-home-hero__media a {
  background: var(--vlm-soft);
  border: 1px solid var(--vlm-line);
  color: var(--vlm-ink);
  display: grid;
  min-height: 250px;
  overflow: hidden;
  padding: 22px;
  position: relative;
  text-decoration: none;
}

.vlm-home-hero__media a:first-child {
  grid-row: span 2;
  min-height: 516px;
}

.vlm-home-hero__media img {
  height: 100%;
  max-height: 420px;
  object-fit: contain;
  width: 100%;
}

.vlm-home-hero__media span {
  background: #fff;
  border: 1px solid var(--vlm-line);
  bottom: 16px;
  font-size: 12px;
  font-weight: 780;
  left: 16px;
  letter-spacing: .06em;
  padding: 10px 12px;
  position: absolute;
  text-transform: uppercase;
}

.vlm-home-section {
  border-top: 1px solid var(--vlm-line);
}

.vlm-home-section--compact {
  padding-top: clamp(34px, 5vw, 66px);
}

.vlm-home-section__head {
  align-items: end;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 26px;
}

.vlm-home-section__head .vlm-home-kicker {
  grid-column: 1 / -1;
  margin-bottom: -6px;
}

.vlm-home-section h2,
.vlm-home-proof h2 {
  font-size: 54px !important;
  line-height: 1 !important;
  max-width: 780px;
}

.vlm-home-section__head > a {
  border: 1px solid var(--vlm-ink);
  color: var(--vlm-ink);
  font-size: 12px;
  font-weight: 780;
  letter-spacing: .06em;
  padding: 12px 16px;
  text-decoration: none;
  text-transform: uppercase;
}

.vlm-home-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.vlm-home-card {
  background: #fff;
  border: 1px solid var(--vlm-line);
  display: grid;
  min-width: 0;
}

.vlm-home-card__media {
  align-items: center;
  aspect-ratio: 1 / 1;
  background: var(--vlm-soft);
  border-bottom: 1px solid var(--vlm-line);
  display: flex;
  justify-content: center;
  overflow: hidden;
  padding: 18px;
}

.vlm-home-card__media img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.vlm-home-card__body {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.vlm-home-card__meta {
  color: var(--vlm-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  font-weight: 720;
  gap: 6px 12px;
  justify-content: space-between;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.vlm-home-card h3 {
  font-family: var(--vlm-font) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.08 !important;
  margin: 0 !important;
}

.vlm-home-card h3 a {
  color: var(--vlm-ink);
  text-decoration: none;
}

.vlm-home-card p {
  color: #454545;
  font-size: 13px;
  line-height: 1.48;
  margin: 0;
  min-height: 58px;
}

.vlm-home-card__price {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.vlm-home-card__price strong {
  font-size: 18px;
  font-weight: 820;
}

.vlm-home-card__price del,
.vlm-home-card__price span {
  color: var(--vlm-muted);
  font-size: 12px;
}

.vlm-home-card__price span {
  flex-basis: 100%;
  font-weight: 640;
}

.vlm-home-card__button {
  background: var(--vlm-ink);
  color: #fff;
  display: flex;
  font-size: 12px;
  font-weight: 780;
  justify-content: center;
  letter-spacing: .06em;
  min-height: 42px;
  padding: 13px 14px;
  text-decoration: none;
  text-transform: uppercase;
}

.vlm-home-routines {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.vlm-home-routines a {
  border: 1px solid var(--vlm-line);
  color: var(--vlm-ink);
  display: grid;
  gap: 10px;
  min-height: 150px;
  padding: 20px;
  text-decoration: none;
}

.vlm-home-routines strong {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: 0;
}

.vlm-home-routines span {
  color: var(--vlm-muted);
  font-size: 14px;
  line-height: 1.45;
}

.vlm-home-proof {
  align-items: start;
  background: var(--vlm-ink);
  color: #fff;
  display: grid;
  gap: clamp(28px, 5vw, 70px);
  grid-template-columns: .85fr 1.15fr;
  max-width: none;
}

.vlm-home-proof > * {
  margin-inline: auto;
  max-width: var(--vlm-max);
  width: 100%;
}

.vlm-home-proof .vlm-home-kicker,
.vlm-home-proof h2 {
  color: #fff !important;
}

.vlm-home-proof__grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.vlm-home-proof__grid article {
  border: 1px solid rgba(255, 255, 255, .22);
  display: grid;
  gap: 12px;
  min-height: 154px;
  padding: 20px;
}

.vlm-home-proof__grid strong {
  color: #fff;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: 0;
}

.vlm-home-proof__grid span {
  color: rgba(255, 255, 255, .74);
  font-size: 14px;
  line-height: 1.55;
}

.vlm-home-footer {
  align-items: center;
  background: #fff;
  border-top: 1px solid var(--vlm-line);
  color: var(--vlm-ink);
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: space-between;
  padding: 28px clamp(18px, 5vw, 64px);
}

.vlm-home-footer strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-style: italic;
}

.vlm-home-footer a {
  color: var(--vlm-ink);
  font-weight: 740;
}

.vlm-whatsapp {
  align-items: center;
  background: #1f7a48;
  border: 1px solid rgba(0, 0, 0, .08);
  bottom: 22px;
  color: #fff !important;
  display: flex;
  font-size: 12px;
  font-weight: 780;
  height: 54px;
  justify-content: center;
  letter-spacing: .03em;
  position: fixed;
  right: 22px;
  text-decoration: none;
  text-transform: uppercase;
  width: 92px;
  z-index: 80;
}

.vlm-info {
  margin-inline: auto;
  max-width: var(--vlm-max);
  padding: 0 clamp(18px, 5vw, 64px) clamp(56px, 7vw, 104px);
}

.vlm-info-hero {
  align-items: end;
  border-bottom: 1px solid var(--vlm-line);
  display: grid;
  gap: clamp(24px, 5vw, 72px);
  grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
  padding: clamp(54px, 7vw, 104px) 0 clamp(34px, 5vw, 64px);
}

.vlm-info-hero h1 {
  color: var(--vlm-ink) !important;
  font-family: var(--vlm-font) !important;
  font-size: 60px !important;
  font-weight: 780 !important;
  letter-spacing: 0 !important;
  line-height: 1.05 !important;
  margin: 0 !important;
  max-width: 15ch;
  word-spacing: .06em;
}

.vlm-info-hero p {
  color: #343434;
  font-size: 18px;
  line-height: 1.58;
  margin: 24px 0 0;
  max-width: 740px;
}

.vlm-info-note {
  background: #153c2b;
  color: #fff;
  display: grid;
  gap: 14px;
  min-height: 190px;
  padding: 24px;
}

.vlm-info-note strong {
  color: #fff;
  font-size: 24px;
  font-weight: 820;
  letter-spacing: 0;
  line-height: 1.05;
}

.vlm-info-note span {
  color: rgba(255, 255, 255, .78);
  font-size: 15px;
  line-height: 1.55;
}

.vlm-info-grid,
.vlm-faq-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 22px;
}

.vlm-info-card,
.vlm-faq-section,
.vlm-contact-form,
.vlm-contact-side a,
.vlm-account-panel {
  background: var(--vlm-panel);
  border: 1px solid var(--vlm-line);
}

.vlm-info-card {
  display: grid;
  gap: 14px;
  min-height: 250px;
  padding: 22px;
}

.vlm-info-card > span,
.vlm-signature-band > span,
.vlm-faq-section h2 {
  color: var(--vlm-muted);
  font-size: 12px;
  font-weight: 780;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.vlm-info-card h2 {
  color: var(--vlm-ink) !important;
  font-family: var(--vlm-font) !important;
  font-size: 30px !important;
  font-weight: 820 !important;
  letter-spacing: 0 !important;
  line-height: 1.02 !important;
  margin: 0 !important;
}

.vlm-info-card p,
.vlm-faq-section p {
  color: #3f3f3f;
  font-size: 15px;
  line-height: 1.58;
  margin: 0;
}

.vlm-signature-band {
  align-items: center;
  background: var(--vlm-ink);
  color: #fff;
  display: grid;
  gap: 12px;
  margin-top: 18px;
  min-height: 190px;
  padding: clamp(24px, 4vw, 44px);
}

.vlm-signature-band span,
.vlm-signature-band strong {
  color: #fff;
}

.vlm-signature-band strong {
  display: block;
  font-size: 46px;
  font-weight: 840;
  letter-spacing: 0;
  line-height: 1;
  max-width: 760px;
}

.vlm-faq-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.vlm-faq-section {
  padding: 22px;
}

.vlm-faq-section h2 {
  color: var(--vlm-ink);
  margin: 0 0 14px;
}

.vlm-faq-section details {
  border-top: 1px solid var(--vlm-line);
  padding: 16px 0;
}

.vlm-faq-section details:last-child {
  border-bottom: 1px solid var(--vlm-line);
}

.vlm-faq-section summary {
  color: var(--vlm-ink);
  cursor: pointer;
  font-size: 18px;
  font-weight: 780;
  letter-spacing: 0;
  list-style: none;
}

.vlm-faq-section summary::-webkit-details-marker {
  display: none;
}

.vlm-faq-section summary::after {
  content: "+";
  float: right;
  font-weight: 760;
}

.vlm-faq-section details[open] summary::after {
  content: "-";
}

.vlm-faq-section p {
  margin-top: 12px;
  max-width: 620px;
}

.vlm-contact-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
  padding-top: 22px;
}

.vlm-contact-form {
  display: grid;
  gap: 16px;
  padding: clamp(22px, 4vw, 40px);
}

.vlm-contact-form label {
  color: var(--vlm-ink);
  display: grid;
  font-size: 13px;
  font-weight: 760;
  gap: 8px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.vlm-contact-form input,
.vlm-contact-form textarea,
.vlm-search-form input {
  background: #fff;
  border: 1px solid var(--vlm-line);
  color: var(--vlm-ink);
  font: inherit;
  font-size: 16px;
  min-height: 48px;
  padding: 12px 14px;
  width: 100%;
}

.vlm-contact-form textarea {
  min-height: 160px;
  resize: vertical;
}

.vlm-contact-form button,
.vlm-search-form button {
  background: var(--vlm-ink);
  border: 1px solid var(--vlm-ink);
  color: #fff;
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .06em;
  min-height: 52px;
  padding: 0 20px;
  text-transform: uppercase;
}

.vlm-form-notice {
  background: #ecf3ed;
  border: 1px solid #c9ddcc;
  color: #153c2b;
  font-size: 15px;
  line-height: 1.45;
  padding: 14px;
}

.vlm-contact-side {
  display: grid;
  gap: 12px;
}

.vlm-contact-side a {
  color: var(--vlm-ink);
  display: grid;
  gap: 10px;
  min-height: 140px;
  padding: 22px;
  text-decoration: none;
}

.vlm-contact-side strong {
  font-size: 24px;
  font-weight: 820;
  letter-spacing: 0;
}

.vlm-contact-side span {
  color: var(--vlm-muted);
  font-size: 15px;
  line-height: 1.5;
}

.vlm-search-form {
  align-self: stretch;
  background: var(--vlm-panel);
  border: 1px solid var(--vlm-line);
  display: grid;
  gap: 12px;
  padding: 18px;
}

.vlm-account-panel {
  margin-top: 22px;
  padding: clamp(22px, 4vw, 42px);
}

.vlm-account-panel .woocommerce,
.vlm-account-panel form {
  margin: 0 !important;
}

.vlm-account-panel .woocommerce-form,
.vlm-account-panel .woocommerce-MyAccount-content,
.vlm-account-panel .woocommerce-MyAccount-navigation {
  border-color: var(--vlm-line) !important;
  box-shadow: none !important;
}

.vlm-shop-hero {
  margin-inline: auto;
  max-width: var(--vlm-max);
  padding: clamp(44px, 6vw, 84px) clamp(18px, 5vw, 64px) clamp(28px, 4vw, 48px);
}

.vlm-shop-hero h1 {
  color: var(--vlm-ink) !important;
  font-family: var(--vlm-font) !important;
  font-size: 66px !important;
  font-weight: 780 !important;
  letter-spacing: 0 !important;
  line-height: 1.04 !important;
  margin: 0 !important;
  max-width: 12ch;
  word-spacing: .06em;
}

.vlm-shop-hero p {
  color: #363636;
  font-size: 18px;
  line-height: 1.55;
  margin: 22px 0 0;
  max-width: 620px;
}

.vlm-shop-layout {
  display: grid;
  gap: 24px;
  grid-template-columns: 220px minmax(0, 1fr);
  margin-inline: auto;
  max-width: var(--vlm-max);
  padding: 0 clamp(18px, 5vw, 64px) clamp(52px, 7vw, 96px);
}

.vlm-shop-filters {
  align-self: start;
  border: 1px solid var(--vlm-line);
  display: grid;
  gap: 0;
  padding: 18px;
  position: sticky;
  top: 104px;
}

.vlm-shop-filters .vlm-home-kicker {
  margin-bottom: 12px;
}

.vlm-shop-filters a {
  border-top: 1px solid var(--vlm-line);
  color: var(--vlm-ink);
  font-size: 13px;
  font-weight: 760;
  letter-spacing: .04em;
  padding: 13px 0;
  text-decoration: none;
  text-transform: uppercase;
}

.vlm-shop-filters a.is-active {
  background: var(--vlm-ink);
  border-color: var(--vlm-ink);
  color: #fff;
  margin-inline: -18px;
  padding-inline: 18px;
}

.vlm-shop-count {
  align-items: center;
  border: 1px solid var(--vlm-line);
  color: var(--vlm-muted);
  display: flex;
  font-size: 12px;
  font-weight: 760;
  justify-content: space-between;
  letter-spacing: .06em;
  margin-bottom: 16px;
  min-height: 48px;
  padding: 0 16px;
  text-transform: uppercase;
}

.vlm-empty-category {
  align-items: flex-start;
  background: var(--vlm-panel);
  border: 1px solid var(--vlm-line);
  display: grid;
  gap: 10px;
  margin-top: 18px;
  max-width: 520px;
  padding: clamp(20px, 3vw, 34px);
}

.vlm-empty-category strong {
  color: var(--vlm-ink);
  font-size: 22px;
  line-height: 1.05;
}

.vlm-empty-category span {
  color: var(--vlm-muted);
  font-size: 14px;
  line-height: 1.5;
}

.vlm-empty-category a {
  align-items: center;
  background: var(--vlm-ink);
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 780;
  justify-content: center;
  letter-spacing: .06em;
  min-height: 44px;
  padding: 0 16px;
  text-decoration: none;
  text-transform: uppercase;
}

.vlm-shop-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.vlm-static-pdp__shell {
  align-items: start;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, .8fr);
  margin-inline: auto;
  max-width: var(--vlm-max);
  padding: clamp(34px, 5vw, 72px) clamp(18px, 5vw, 64px) 0;
}

.vlm-static-pdp__gallery,
.vlm-static-pdp__summary {
  border: 1px solid var(--vlm-line);
}

.vlm-static-pdp__gallery {
  align-items: center;
  background: var(--vlm-soft);
  display: flex;
  justify-content: center;
  min-height: 620px;
  padding: clamp(20px, 4vw, 44px);
  position: sticky;
  top: 104px;
}

.vlm-static-pdp__gallery img {
  height: 100%;
  max-height: 560px;
  object-fit: contain;
  width: 100%;
}

.vlm-static-pdp__summary {
  background: #fff;
  display: grid;
  gap: 18px;
  padding: clamp(20px, 3vw, 34px);
}

.vlm-static-pdp__summary h1 {
  color: var(--vlm-ink) !important;
  font-family: var(--vlm-font) !important;
  font-size: 52px !important;
  font-weight: 840 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  margin: 0 !important;
}

.vlm-static-pdp__summary p {
  color: #363636;
  font-size: 18px;
  line-height: 1.5;
  margin: 0;
}

.vlm-static-pdp__price {
  align-items: baseline;
  border-top: 1px solid var(--vlm-line);
  display: flex;
  gap: 10px;
  padding-top: 18px;
}

.vlm-static-pdp__price strong {
  color: var(--vlm-ink);
  font-size: 38px;
  font-weight: 840;
  letter-spacing: 0;
}

.vlm-static-pdp__price del,
.vlm-static-pdp__meta span {
  color: var(--vlm-muted);
}

.vlm-static-pdp__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.vlm-static-pdp__meta span {
  background: var(--vlm-soft);
  border: 1px solid var(--vlm-line);
  font-size: 11px;
  font-weight: 760;
  letter-spacing: .055em;
  padding: 10px 11px;
  text-transform: uppercase;
}

.vlm-static-pdp__button {
  align-items: center;
  background: var(--vlm-ink);
  border: 1px solid var(--vlm-ink);
  color: #fff;
  display: flex;
  font-size: 13px;
  font-weight: 800;
  justify-content: center;
  letter-spacing: .06em;
  min-height: 52px;
  text-decoration: none;
  text-transform: uppercase;
}

.vlm-static-pdp__panels {
  padding-inline: clamp(18px, 5vw, 64px);
}

/* Responsive */
@media (min-width: 1024px) {
  .single-product div.product {
    display: grid !important;
    grid-template-columns: minmax(0, 1.04fr) minmax(360px, .8fr) !important;
    gap: 28px !important;
    align-items: start !important;
  }

  .single-product .woocommerce-product-gallery {
    position: sticky !important;
    top: 96px !important;
  }

  .single-product .woocommerce-tabs,
  .single-product .related,
  .single-product .upsells {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 767px) {
  h1,
  .page-title,
  .product_title,
  .woocommerce-products-header__title {
    font-size: 34px !important;
  }

  .products,
  .c-product-grid {
    gap: 12px !important;
  }

  .c-product-grid__details,
  .product .woocommerce-loop-product__title,
  .wc-block-grid__product-title {
    padding-inline: 12px !important;
  }

  .add_to_cart_button,
  .product_type_simple,
  .single_add_to_cart_button,
  .checkout-button {
    min-height: 44px !important;
  }

  .vlm-science-panels {
    grid-template-columns: 1fr;
  }

  .vlm-panel--wide {
    grid-column: auto;
  }

  .vlm-panel {
    min-height: 0;
  }

  .vlm-home-offer {
    align-items: flex-start;
    flex-direction: column;
    text-align: left;
  }

  .vlm-home-nav {
    gap: 12px;
    grid-template-columns: 1fr auto;
    min-height: 70px;
  }

  .admin-bar .vlm-home-nav {
    top: 46px;
  }

  .vlm-home-nav nav {
    grid-column: 1 / -1;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 12px;
  }

  .vlm-home-hero,
  .vlm-home-section,
  .vlm-home-proof {
    padding-inline: 16px;
  }

  .vlm-home-hero {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .vlm-home-hero h1 {
    font-size: 54px !important;
  }

  .vlm-home-section h2,
  .vlm-home-proof h2,
  .vlm-shop-hero h1,
  .vlm-info-hero h1,
  .vlm-static-pdp__summary h1 {
    font-size: 42px !important;
    line-height: 1.04 !important;
    max-width: none;
  }

  .vlm-home-hero__media,
  .vlm-home-grid,
  .vlm-home-routines,
  .vlm-home-proof,
  .vlm-home-proof__grid,
  .vlm-info-hero,
  .vlm-info-grid,
  .vlm-faq-grid,
  .vlm-contact-grid {
    grid-template-columns: 1fr;
  }

  .vlm-home-hero__media a,
  .vlm-home-hero__media a:first-child {
    min-height: 280px;
  }

  .vlm-home-section__head {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .vlm-home-card p {
    min-height: 0;
  }

  .vlm-shop-layout,
  .vlm-shop-grid,
  .vlm-static-pdp__shell {
    grid-template-columns: 1fr;
  }

  .vlm-shop-filters,
  .vlm-static-pdp__gallery {
    position: static;
  }

  .vlm-shop-filters {
    display: flex;
    gap: 10px;
    overflow-x: auto;
  }

  .vlm-shop-filters a {
    border: 1px solid var(--vlm-line);
    flex: 0 0 auto;
    padding: 12px 14px;
  }

  .vlm-shop-count {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
    justify-content: center;
  }

  .vlm-static-pdp__gallery {
    min-height: 320px;
  }

  .vlm-static-pdp__gallery img {
    max-height: 280px;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .vlm-science-panels {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .vlm-home-hero,
  .vlm-home-grid,
  .vlm-home-routines,
  .vlm-home-proof {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .vlm-home-hero__media {
    grid-template-columns: 1fr;
  }

  .vlm-home-hero__media a:first-child {
    min-height: 360px;
  }

  .vlm-shop-layout,
  .vlm-static-pdp__shell,
  .vlm-info-hero,
  .vlm-info-grid,
  .vlm-faq-grid,
  .vlm-contact-grid {
    grid-template-columns: 1fr;
  }

  .vlm-home-hero h1 {
    font-size: 70px !important;
  }

  .vlm-home-section h2,
  .vlm-home-proof h2,
  .vlm-shop-hero h1,
  .vlm-info-hero h1 {
    font-size: 58px !important;
    line-height: 1.02 !important;
    max-width: 12ch;
  }

  .vlm-static-pdp__summary h1 {
    font-size: 48px !important;
  }

  .vlm-shop-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .vlm-shop-filters,
  .vlm-static-pdp__gallery {
    position: static;
  }
}
