/* =====================================================================
   Levara Bio — Brand palette
   Primary background: White (#FFFFFF)
   Ink Green  (#2E4034) — headers / navigation / body text
   Bronze     (#A9805B) — buttons / highlights / accents
   Sage       (#9CAF94) — soft secondary tints (figure wells, banners)
   Tokens are stored as RGB triplets so they compose with `rgb(var(...) / alpha)`.
===================================================================== */

/* ---- Local fonts (same faces Bluum uses, served from our theme dir) ---- */
:root {
  --heading-font-family: 'BluumSwitzer', sans-serif;
  --text-font-family: 'BluumSwitzer', sans-serif;
}
@font-face {
  font-family: 'BluumSwitzer';
  src: url(/wp-content/uploads/bluum/fonts/Switzer-Variable.woff2) format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'LibreBaskerville';
  src: url(/wp-content/uploads/bluum/fonts/LibreBaskerville-Regular.woff2) format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'LibreBaskerville';
  src: url(/wp-content/uploads/bluum/fonts/LibreBaskerville-Bold.woff2) format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'LibreBaskerville';
  src: url(/wp-content/uploads/bluum/fonts/LibreBaskerville-Italic.woff2) format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

/* ---- Bluum root variables (1:1 with live bluumpeptides.com) ---- */
:root {
  --spacing-0-5: 0.125rem;
  --spacing-1: 0.25rem;
  --spacing-1-5: 0.375rem;
  --spacing-2: 0.5rem;
  --spacing-2-5: 0.625rem;
  --spacing-3: 0.75rem;
  --spacing-3-5: 0.875rem;
  --spacing-4: 1rem;
  --spacing-4-5: 1.125rem;
  --spacing-5: 1.25rem;
  --spacing-5-5: 1.375rem;
  --spacing-6: 1.5rem;
  --spacing-6-5: 1.625rem;
  --spacing-7: 1.75rem;
  --spacing-7-5: 1.875rem;
  --spacing-8: 2rem;
  --spacing-8-5: 2.125rem;
  --spacing-9: 2.25rem;
  --spacing-9-5: 2.375rem;
  --spacing-10: 2.5rem;
  --spacing-11: 2.75rem;
  --spacing-12: 3rem;
  --spacing-14: 3.5rem;
  --spacing-16: 4rem;
  --spacing-18: 4.5rem;
  --spacing-20: 5rem;
  --spacing-24: 6rem;
  --spacing-28: 7rem;
  --spacing-32: 8rem;
  --spacing-36: 9rem;
  --spacing-40: 10rem;
  --spacing-44: 11rem;
  --spacing-48: 12rem;
  --spacing-52: 13rem;
  --spacing-56: 14rem;
  --spacing-60: 15rem;
  --spacing-64: 16rem;
  --spacing-72: 18rem;
  --spacing-80: 20rem;
  --spacing-96: 24rem;
  --container-max-width: 1300px;
  --container-narrow-max-width: 1050px;
  --container-gutter: var(--spacing-5);
  --section-outer-spacing-block: var(--spacing-10);
  --section-inner-max-spacing-block: var(--spacing-9);
  --section-inner-spacing-inline: var(--container-gutter);
  --section-stack-spacing-block: var(--spacing-6);
  --grid-gutter: var(--spacing-5);
  --product-list-row-gap: var(--spacing-8);
  --product-list-column-gap: var(--grid-gutter);
  --input-gap: var(--spacing-2);
  --input-height: 2.625rem;
  --input-padding-inline: var(--spacing-4);
  --sticky-area-height: calc(var(--sticky-announcement-bar-enabled, 0) * var(--announcement-bar-height, 0px) + var(--sticky-header-enabled, 0) * var(--header-height, 0px));
  --transform-logical-flip: 1;
  --transform-origin-start: left;
  --transform-origin-end: right;
  --heading-font-family: 'BluumSwitzer', sans-serif;
  --heading-font-weight: 500;
  --heading-font-style: normal;
  --heading-text-transform: normal;
  --heading-letter-spacing: -.04em;
  --text-font-family: 'BluumSwitzer', sans-serif;
  --text-font-weight: 400;
  --text-font-style: normal;
  --text-letter-spacing: -.01em;
  --text-h0: 3.25rem;
  --text-h1: 2.75rem;
  --text-h2: 2.125rem;
  --text-h3: 2rem;
  --text-h4: 1.75rem;
  --text-h5: 1.5rem;
  --text-h6: 1.25rem;
  --text-xs: .75rem;
  --text-sm: .875rem;
  --text-base: 1rem;
  --text-lg: 1.25rem;
  --text-xl: 1.5rem;
  --text-label: .875rem;
  --accent: 156 175 148;
  --text-primary: 46 64 52;
  --background-primary: 255 255 255;
  --dialog-background: 255 255 255;
  --border-color: var(--text-color, var(--text-primary)) / 0.12;

  --button-background-primary: 169 128 91;
  --button-text-primary: 255 255 255;
  --button-background-secondary: 169 128 91;
  --button-text-secondary: 255 255 255;

  --on-sale-text: 46 64 52;
  --on-sale-badge-background: 46 64 52;
  --on-sale-badge-text: 255 255 255;
  --sold-out-badge-background: 156 175 148;
  --sold-out-badge-text: 46 64 52;
  --primary-badge-background: 169 128 91;
  --primary-badge-text: 255 255 255;
  --star-color: 169 128 91;

  --product-card-background: 255 255 255;
  --product-card-text: 46 64 52;

  --header-background: 46 64 52;
  --header-text: 255 255 255;

  --footer-background: 46 64 52;
  --footer-text: 255 255 255;
  --rounded-xs: 0.25rem;
  --rounded-sm: 0.625rem;
  --rounded: 1.25rem;
  --rounded-lg: 2.5rem;
  --rounded-full: 9999px;
  --rounded-button: 2.5rem;
  --rounded-input: 0.5rem;
  --shadow-sm: 0 2px 8px rgb(var(--text-primary) / 0.0);
  --shadow: 0 5px 15px rgb(var(--text-primary) / 0.0);
  --shadow-md: 0 5px 30px rgb(var(--text-primary) / 0.0);
  --shadow-block: 0px 18px 50px rgb(var(--text-primary) / 0.0);
  --stagger-products-reveal-opacity: 1;

  --cursor-close-svg-url: url(/wp-content/uploads/bluum/img/cursor-close.svg);
  --cursor-zoom-in-svg-url: url(/wp-content/uploads/bluum/img/cursor-zoom-in.svg);
  --cursor-zoom-out-svg-url: url(/wp-content/uploads/bluum/img/cursor-zoom-out.svg);
  --checkmark-svg-url: url(/wp-content/uploads/bluum/img/checkmark.svg);
}

@media screen and (min-width: 700px) {
  :root {
    --text-h0: 5rem;
    --text-h1: 4rem;
    --text-h2: 2.75rem;
    --text-h3: 2.5rem;
    --text-h4: 2rem;
    --text-h5: 1.5rem;
    --text-h6: 1.25rem;
    --text-xs: .75rem;
    --text-sm: .875rem;
    --text-base: 1rem;
    --text-lg: 1.25rem;
    --text-xl: 1.5rem;
    --text-label: .875rem;
    --container-gutter: 2rem;
    --section-outer-spacing-block: var(--spacing-14);
    --section-inner-max-spacing-block: var(--spacing-10);
    --section-inner-spacing-inline: var(--spacing-10);
    --section-stack-spacing-block: var(--spacing-6);
    --grid-gutter: var(--spacing-6);
    --product-list-row-gap: var(--spacing-12);
    --input-gap: 1rem;
    --input-height: 3.125rem;
    --input-padding-inline: var(--spacing-5);
  }
}

@media screen and (min-width: 1000px) {
  :root {
    --container-gutter: var(--spacing-12);
    --section-outer-spacing-block: var(--spacing-16);
    --section-inner-max-spacing-block: var(--spacing-14);
    --section-inner-spacing-inline: var(--spacing-12);
    --section-stack-spacing-block: var(--spacing-6);
  }
}

@media screen and (min-width: 1150px) {
  :root {
    --container-gutter: var(--spacing-12);
    --section-outer-spacing-block: var(--spacing-16);
    --section-inner-max-spacing-block: var(--spacing-14);
    --section-inner-spacing-inline: var(--spacing-12);
    --section-stack-spacing-block: var(--spacing-6);
  }
}

@media screen and (min-width: 1400px) {
  :root {
    --text-h0: 6.5rem;
    --text-h1: 4.5rem;
    --text-h2: 3.5rem;
    --text-h3: 3rem;
    --text-h4: 2.5rem;
    --text-h5: 2rem;
    --text-h6: 1.5rem;
    --section-outer-spacing-block: var(--spacing-20);
    --section-inner-max-spacing-block: var(--spacing-16);
    --section-inner-spacing-inline: var(--spacing-14);
  }
}

@media screen and (min-width: 1600px) {
  :root {
    --section-outer-spacing-block: var(--spacing-20);
    --section-inner-max-spacing-block: var(--spacing-18);
    --section-inner-spacing-inline: var(--spacing-16);
  }
}

html { background-color: rgb(var(--background-primary)); }

body > .skip-to-content {
  position: absolute !important;
  top: 0;
  inset-inline-start: 0;
  z-index: 9999;
  transform: translateY(-150%);
}
body > .skip-to-content:focus,
body > .skip-to-content:focus-visible {
  transform: translateY(0);
}

/* Bluum's header / drawers use custom elements that ship without a CSS
   `display` rule. Browsers fall back to `display: inline`, which leaks the
   body's `line-height` (1.5) above the header as a strip of empty space.
   Force them to behave like block-level containers. */
height-observer,
store-header,
navigation-drawer,
search-drawer {
  display: block;
}

html.levara-search-lock,
html.levara-search-lock body {
  overflow: hidden;
}

.search-drawer.levara-search-open {
  display: grid !important;
  visibility: visible !important;
  position: fixed;
  inset: 0;
  z-index: 9999;
  place-items: start center;
  padding: max(16px, var(--header-height, 80px)) 16px 24px;
  background: rgb(20 24 20 / .38);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: rgb(var(--text-primary));
  overflow: auto;
}

.navigation-drawer.levara-menu-open {
  display: block !important;
  visibility: visible !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 10000 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  max-width: none !important;
  max-height: none !important;
  background: rgb(20 24 20 / .42);
  color: rgb(var(--text-primary));
  overflow: hidden;
}

.navigation-drawer.levara-menu-open .panel-list__wrapper,
.navigation-drawer.levara-menu-open .panel,
.navigation-drawer.levara-menu-open .panel__wrapper {
  display: block !important;
  visibility: visible !important;
  height: 100% !important;
}

.navigation-drawer.levara-menu-open .panel__wrapper {
  width: min(86vw, 360px);
  padding: calc(var(--header-height, 88px) + 22px) 24px 24px;
  background: rgb(var(--dialog-background, var(--background-primary)));
  box-shadow: 22px 0 80px rgb(0 0 0 / .24);
  overflow: auto;
}

.navigation-drawer.levara-menu-open .panel__scroller a {
  display: block;
  padding: 14px 0;
  color: rgb(var(--text-primary));
  font-size: 22px;
  font-weight: 700;
  text-decoration: none;
}

.navigation-drawer.levara-menu-open button[is="close-button"] {
  display: grid !important;
  position: fixed;
  top: calc(var(--header-height, 88px) + 10px);
  right: 18px;
  z-index: 10001;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 0;
  border-radius: 999px;
  background: rgb(var(--background-primary));
  color: rgb(var(--text-primary));
  box-shadow: 0 10px 32px rgb(0 0 0 / .18);
}

@media screen and (max-width: 699px) {
  #shopify-section-sections--17700182491331__header .header__icon-list > button[aria-controls="header-sidebar-menu"],
  #shopify-section-sections--17700182491331__header .header__icon-list > a[aria-controls="search-drawer"] {
    display: grid !important;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    place-items: center;
    padding: 0;
    color: rgb(var(--header-text)) !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  #shopify-section-sections--17700182491331__header .header__icon-list > button[aria-controls="header-sidebar-menu"] svg,
  #shopify-section-sections--17700182491331__header .header__icon-list > a[aria-controls="search-drawer"] svg {
    display: block;
    width: 24px;
    height: 24px;
    color: currentColor;
  }

  .search-drawer.levara-search-open {
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    align-items: start !important;
    justify-items: center !important;
    padding-top: calc(var(--header-height, 88px) + 18px) !important;
  }

  .search-drawer.levara-search-open form {
    position: relative !important;
    top: auto !important;
    transform: none !important;
    width: min(100%, 358px);
    max-height: calc(100dvh - var(--header-height, 88px) - 52px) !important;
  }

  .search-drawer.levara-search-open .levara-search-drawer__close {
    top: calc(var(--header-height, 88px) + 8px) !important;
    right: 16px !important;
    transform: none !important;
    z-index: 10001 !important;
  }
}

.search-drawer.levara-search-open form {
  width: min(760px, 100%);
  max-height: calc(100vh - max(32px, var(--header-height, 80px)) - 32px);
  overflow: auto;
  padding: var(--spacing-6);
  border-radius: var(--rounded-sm);
  background: rgb(var(--dialog-background, var(--background-primary)));
  box-shadow: 0 24px 80px rgb(0 0 0 / .24);
}

.levara-search-drawer__close {
  display: none;
}

.search-drawer.levara-search-open .levara-search-drawer__close {
  display: grid;
  position: fixed;
  top: max(20px, calc(var(--header-height, 80px) - 56px));
  right: 20px;
  z-index: 1;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 0;
  border-radius: 999px;
  background: rgb(var(--dialog-background, var(--background-primary)));
  color: currentColor;
  box-shadow: 0 10px 32px rgb(0 0 0 / .18);
  cursor: pointer;
}

@media screen and (min-width: 700px) {
  .search-drawer.levara-search-open {
    padding-top: calc(var(--header-height, 96px) + 28px);
  }

  .search-drawer.levara-search-open .levara-search-drawer__close {
    top: calc(var(--header-height, 96px) + 20px);
    right: calc((100vw - min(760px, calc(100vw - 32px))) / 2);
    transform: translateX(50%);
  }
}

.levara-search-products {
  display: grid;
  gap: var(--spacing-4);
}

.levara-search-products__label {
  margin: 0;
}

.levara-search-products__list {
  display: grid;
  gap: var(--spacing-3);
  max-height: min(52vh, 520px);
  overflow: auto;
  padding-inline-end: var(--spacing-1);
}

.levara-search-product {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  align-items: center;
  gap: var(--spacing-4);
  color: rgb(var(--text-primary));
  text-decoration: none;
}

.levara-search-product[hidden] {
  display: none;
}

.levara-search-product__image {
  display: block;
  overflow: hidden;
  border-radius: var(--rounded-sm);
  background: rgb(var(--accent) / .16);
}

.levara-search-product__image img {
  display: block;
  width: 64px;
  height: 64px;
  object-fit: cover;
}

.levara-search-product__info {
  display: grid;
  gap: var(--spacing-1);
  min-width: 0;
}

.levara-search-product__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.2;
}

.levara-search-product__price {
  font-size: var(--text-sm);
}

.levara-search-products__empty {
  display: none;
  margin: 0;
}

.levara-search-products__empty.is-visible {
  display: block;
}

.levara-search-products__all {
  justify-self: start;
}

/* WordPress page content must not add an extra Astra/Gutenberg container around the restored Bluum DOM. */
body.home,
body.page-template-default,
body.page {
  background: rgb(var(--background-primary));
}

/* Shopify's theme.css has a generic `.page { max-width: 80ch; display: grid; }` rule.
   In WordPress, Astra adds `page` to <body>, so that rule incorrectly narrows the entire site. */
body.page {
  display: block !important;
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
}

#ast-scroll-top,
.ast-scroll-top-icon.ast-scroll-to-top-right {
  display: none !important;
}

#page,
.site,
.site-content,
.content-area,
.site-main,
.ast-container,
.entry-content,
.wp-site-blocks,
.is-layout-constrained,
.is-layout-flow {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.entry-content > *,
.wp-block-html,
.wp-block-html > * {
  max-width: none !important;
}

#main.anchor {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.levara-peptides {
  --section-background-hash: 0;
  background: rgb(var(--background-primary));
}

.levara-peptides .container {
  max-width: none;
  width: 100%;
}

.levara-peptides .section-full {
  padding-block: var(--section-outer-spacing-block);
}

.levara-peptides .collection__title {
  text-align: center;
  max-width: 850px;
  margin: 0 auto var(--spacing-12);
}

.levara-peptides .collection__title h1 {
  font-family: var(--heading-font-family);
  font-size: var(--text-h1);
  font-weight: var(--heading-font-weight);
  letter-spacing: var(--heading-letter-spacing);
  line-height: .95;
  margin: 0;
  color: rgb(var(--text-primary));
}

.levara-peptides .collection__title p {
  margin-top: var(--spacing-5);
  font-size: var(--text-lg);
  color: rgb(var(--text-primary) / .72);
}

.levara-peptides .collection {
  margin-block: 0 var(--section-outer-spacing-block);
}

.levara-peptides .collection__facets {
  display: block;
}

.levara-peptides .collection__facets-scroller {
  display: block;
}

.levara-peptides .facets-vertical {
  display: grid;
  gap: var(--spacing-2);
}

.levara-peptides .facets-vertical .accordion {
  border-block-start: 1px solid rgb(var(--text-primary) / .12);
  padding-block: var(--spacing-5);
}

.levara-peptides .facets-vertical .accordion:last-of-type {
  border-block-end: 1px solid rgb(var(--text-primary) / .12);
}

.levara-peptides .facets-vertical summary {
  cursor: pointer;
  list-style: none;
}

.levara-peptides .facets-vertical summary::-webkit-details-marker {
  display: none;
}

.levara-peptides .accordion__toggle {
  display: flex;
  align-items: center;
  gap: var(--spacing-3);
}

.levara-peptides .accordion__content {
  padding-block-start: var(--spacing-5);
}

.levara-peptides .range-group {
  display: grid;
  gap: var(--spacing-2);
}

.levara-peptides .range {
  width: 100%;
  accent-color: rgb(var(--text-primary));
}

.levara-peptides .input-group {
  display: flex;
  align-items: center;
  gap: var(--spacing-3);
  margin-block-start: var(--spacing-4);
}

.levara-peptides .input-prefix {
  display: flex;
  align-items: center;
  gap: var(--spacing-1);
  border: 1px solid rgb(var(--text-primary) / .18);
  border-radius: var(--rounded-input);
  padding-inline: var(--spacing-3);
  min-height: var(--input-height);
  flex: 1;
}

.levara-peptides .input-prefix .field {
  width: 100%;
  min-width: 0;
  border: 0;
  background: transparent;
  color: rgb(var(--text-primary));
  font: inherit;
}

.levara-peptides .input-prefix .field:focus {
  outline: none;
}

.levara-peptides .checkbox-list {
  display: grid;
  gap: var(--spacing-3);
}

.levara-peptides .checkbox-container {
  display: flex;
  align-items: center;
  gap: var(--spacing-3);
  font-size: var(--text-sm);
  color: rgb(var(--text-primary));
}

.levara-peptides .checkbox {
  width: 1rem;
  height: 1rem;
  accent-color: rgb(var(--text-primary));
}

.levara-peptides .facets__clear {
  width: 100%;
  margin-top: var(--spacing-4);
}

@media screen and (max-width: 999px) {
  .levara-peptides .collection {
    gap: var(--spacing-8);
  }
}

.levara-peptides .product-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--product-list-row-gap) var(--product-list-column-gap);
}

@media screen and (min-width: 700px) {
  .levara-peptides .product-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media screen and (min-width: 1150px) {
  .levara-peptides .product-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.levara-peptides .product-card {
  display: grid;
  gap: var(--spacing-4);
  align-content: start;
  background: rgb(var(--product-card-background));
  color: rgb(var(--product-card-text));
  border-radius: var(--rounded-lg);
  padding: var(--spacing-4);
}

.levara-peptides .product-card[hidden] {
  display: none;
}

.levara-peptides .product-card__link,
.levara-peptides .product-card__figure {
  display: block;
  color: inherit;
  text-decoration: none;
}

.levara-peptides .product-card__figure {
  border-radius: var(--rounded);
  overflow: hidden;
  background: rgb(var(--accent) / .18);
  position: relative;
}

.levara-peptides .product-card__image {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.levara-peptides .product-card__info {
  text-align: center;
}

.levara-peptides .product-card__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: var(--text-lg);
  line-height: 1.18;
  color: rgb(var(--text-primary));
}

.levara-peptides .product-card__price {
  display: block;
  margin-top: var(--spacing-1-5);
  color: rgb(var(--text-primary) / .68);
  font-size: var(--text-sm);
  line-height: 1.35;
}

.levara-peptides .product-card__quick-buy {
  z-index: 2;
}

.levara-peptides .product-card__quick-buy .button {
  white-space: nowrap;
}

.levara-peptides .product-card__quick-buy button {
  border: 0;
  cursor: pointer;
  font-family: inherit;
}

.levara-peptides .product-card__mobile-quick-buy-button {
  border: 1px solid rgb(var(--text-primary) / .18);
}

.levara-peptides .product-card__price ins,
.levara-peptides .product-card__price del {
  text-decoration-thickness: 1px;
}

.levara-peptides .collection__empty {
  display: none;
  margin-top: var(--spacing-10);
  text-align: center;
  color: rgb(var(--text-primary) / .7);
}

.levara-peptides .collection__empty.is-visible {
  display: block;
}

.levara-about-us {
  background: rgb(var(--background-primary));
  color: rgb(var(--text-primary));
}

.levara-about-us .about-wrap {
  padding-block: var(--section-outer-spacing-block);
}

.levara-about-us .about-hero {
  text-align: center;
  max-width: 950px;
  margin: 0 auto var(--spacing-16);
}

.levara-about-us .about-eyebrow {
  font-size: var(--text-sm);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgb(var(--text-primary) / .62);
  margin-bottom: var(--spacing-5);
}

.levara-about-us h1 {
  font-size: var(--text-h1);
  line-height: .95;
  letter-spacing: var(--heading-letter-spacing);
  font-weight: var(--heading-font-weight);
  margin: 0;
}

.levara-about-us h2 {
  font-size: var(--text-h3);
  line-height: 1.05;
  letter-spacing: var(--heading-letter-spacing);
  font-weight: var(--heading-font-weight);
  margin: 0 0 var(--spacing-5);
}

.levara-about-us .about-grid {
  display: grid;
  gap: var(--spacing-8);
  max-width: 1120px;
  margin-inline: auto;
}

.levara-about-us .about-card {
  background: rgb(156 175 148 / .22);
  border-radius: var(--rounded-lg);
  padding: clamp(1.5rem, 4vw, 3rem);
}

.levara-about-us .about-card--light {
  background: rgb(255 255 255);
  border: 1px solid rgb(var(--text-primary) / .12);
}

.levara-about-us .prose {
  font-size: var(--text-lg);
  line-height: 1.55;
  color: rgb(var(--text-primary));
}

.levara-about-us .prose p + p {
  margin-block-start: var(--spacing-5);
}

@media screen and (min-width: 1000px) {
  .levara-about-us .about-grid {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    align-items: start;
  }
}

/* Header: solid ink green to match the footer — no transparent / blur states.
   All nav text, icons, and the current-page accent must read white on green,
   both at rest and while stuck (scrolled). */
.store-header.header {
  background: rgb(var(--header-background));
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  color: rgb(var(--header-text));
}
.header__wrapper { background: rgb(var(--header-background)); }
.header__logo {
  height: calc(var(--header-logo-width) * .72);
  margin: 0;
  overflow: hidden;
  line-height: 0;
}
.header__logo a {
  display: block;
  height: 100%;
  overflow: hidden;
}
.header__logo-image {
  display: block;
  transform: translateY(-14%);
}

#shopify-section-sections--17700182491331__header,
#shopify-section-sections--17700182491331__header store-header.header,
#shopify-section-sections--17700182491331__header .header__wrapper {
  color: rgb(var(--header-text));
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
#shopify-section-sections--17700182491331__header .header__link-list a,
#shopify-section-sections--17700182491331__header .header__icon-list a,
#shopify-section-sections--17700182491331__header .header__icon-list button,
#shopify-section-sections--17700182491331__header .header__logo-image {
  color: rgb(var(--header-text));
}
#shopify-section-sections--17700182491331__header .header__link-list a:hover,
#shopify-section-sections--17700182491331__header .header__icon-list a:hover {
  color: rgb(255 255 255 / .72);
}
#shopify-section-sections--17700182491331__header.is-stuck .header__wrapper,
#shopify-section-sections--17700182491331__header.is-stuck store-header.header {
  background: rgb(46 64 52);
  color: rgb(var(--header-text));
  box-shadow: 0 1px 0 rgb(0 0 0 / .18);
}
#shopify-section-sections--17700182491331__header.is-stuck store-header.header {
  --header-padding-block: var(--spacing-2);
}

/* TranslatePress replacement: show EN / AR flags side by side in the header.
   The previous shortcode output was a hover dropdown, which was awkward on mobile. */
.levara-header-lang {
  display: flex;
  align-items: center;
}
.levara-lang-inline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px;
  border: 1px solid rgb(255 255 255 / .22);
  border-radius: 999px;
  background: rgb(255 255 255 / .08);
}
.levara-lang-inline__item {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 42px;
  height: 30px;
  padding: 0 8px;
  border-radius: 999px;
  color: rgb(var(--header-text)) !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}
.levara-lang-inline__item.is-active,
.levara-lang-inline__item:hover,
.levara-lang-inline__item:focus-visible {
  background: rgb(255 255 255 / .18);
  color: rgb(var(--header-text)) !important;
}
.levara-lang-inline__item img {
  display: block;
  width: 18px;
  height: 14px;
  object-fit: cover;
  border-radius: 2px;
}

@media screen and (max-width: 699px) {
  #shopify-section-sections--17700182491331__header {
    --header-logo-width: 84px !important;
    --header-logo-height: 84px !important;
    --header-grid-template: "main-nav logo secondary-nav" / minmax(78px, 1fr) auto minmax(92px, 1fr) !important;
  }

  #shopify-section-sections--17700182491331__header .header__wrapper {
    column-gap: 6px;
    padding-inline: max(10px, env(safe-area-inset-left)) max(10px, env(safe-area-inset-right));
  }

  #shopify-section-sections--17700182491331__header .header__main-nav,
  #shopify-section-sections--17700182491331__header .header__secondary-nav {
    min-width: 0;
  }

  #shopify-section-sections--17700182491331__header .header__logo {
    justify-self: center;
  }

  .levara-lang-inline {
    gap: 2px;
    padding: 2px;
    max-width: 58px;
    overflow: hidden;
  }
  .levara-lang-inline__item {
    min-width: 25px;
    width: 25px;
    height: 26px;
    padding: 0;
  }
  .levara-lang-inline__item span {
    display: none;
  }
  .levara-lang-inline__item img {
    width: 17px;
    height: 12px;
  }
}

/* =====================================================================
   Policy pages (Terms of Service, Refund Policy)
===================================================================== */
.levara-policy {
  max-width: 880px;
  margin-inline: auto;
  padding-block: var(--spacing-14) var(--spacing-20);
  padding-inline: var(--container-gutter);
  color: rgb(var(--text-primary));
  font-family: var(--text-font-family);
}
.levara-policy .shopify-policy__title h1,
.levara-policy > h1,
.levara-policy .wp-block-heading:first-child {
  font-size: var(--text-h1);
  line-height: .95;
  letter-spacing: var(--heading-letter-spacing);
  font-weight: var(--heading-font-weight);
  margin: 0 0 var(--spacing-6);
}
.levara-policy .rte h2,
.levara-policy h2.wp-block-heading {
  font-size: var(--text-h3);
  line-height: 1.1;
  letter-spacing: var(--heading-letter-spacing);
  font-weight: var(--heading-font-weight);
  margin: var(--spacing-10) 0 var(--spacing-3);
}
.levara-policy .rte h3,
.levara-policy h3.wp-block-heading {
  font-size: var(--text-h4);
  font-weight: var(--heading-font-weight);
  margin: var(--spacing-8) 0 var(--spacing-2);
}
.levara-policy .rte p,
.levara-policy .rte li,
.levara-policy p,
.levara-policy li {
  font-size: var(--text-base);
  line-height: 1.65;
  color: rgb(var(--text-primary) / .88);
}
.levara-policy .rte p + p,
.levara-policy .rte p + ul,
.levara-policy .rte p + ol,
.levara-policy .rte ul + p,
.levara-policy .rte ol + p,
.levara-policy p + p,
.levara-policy p + ul,
.levara-policy p + ol,
.levara-policy ul + p,
.levara-policy ol + p {
  margin-block-start: var(--spacing-3);
}
.levara-policy .rte ul,
.levara-policy .rte ol,
.levara-policy ul,
.levara-policy ol {
  padding-inline-start: var(--spacing-6);
  margin-block: var(--spacing-3) var(--spacing-4);
}
.levara-policy .rte li + li,
.levara-policy li + li {
  margin-block-start: var(--spacing-1);
}
.levara-policy .rte a,
.levara-policy a {
  color: rgb(var(--text-primary));
  text-decoration: underline;
  text-underline-offset: 3px;
}
.levara-policy .rte code,
.levara-policy code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  background: rgb(var(--text-primary) / .06);
  padding: 1px 6px;
  border-radius: 4px;
}

/* =====================================================================
   Peptides for Sale — Levara catalog grid
===================================================================== */
.lv-catalog {
  padding-block: var(--spacing-12) var(--spacing-16);
}
.lv-catalog__head {
  text-align: center;
  max-width: 760px;
  margin-inline: auto;
  margin-bottom: var(--spacing-10);
}
.lv-catalog__filter {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--spacing-2);
  margin-bottom: var(--spacing-12);
}
.lv-chip {
  border: 1px solid rgb(var(--text-primary) / 0.22);
  background: transparent;
  color: rgb(var(--text-primary));
  border-radius: var(--rounded-full);
  padding: 0.55rem 1.1rem;
  font-family: var(--heading-font-family);
  font-size: var(--text-sm);
  letter-spacing: -0.01em;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease;
}
.lv-chip.is-active,
.lv-chip:hover {
  background: rgb(var(--button-background-primary));
  border-color: rgb(var(--button-background-primary));
  color: rgb(var(--button-text-primary));
}
.lv-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--grid-gutter);
}
@media screen and (min-width: 700px) {
  .lv-grid { grid-template-columns: repeat(3, 1fr); }
}
@media screen and (min-width: 1000px) {
  .lv-grid { grid-template-columns: repeat(4, 1fr); }
}
.lv-card {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--rounded);
  background: rgb(var(--product-card-background));
  border: 1px solid rgb(var(--text-primary) / 0.12);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease;
}
.lv-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgb(var(--text-primary) / 0.12);
}
@media (prefers-reduced-motion: reduce) {
  .lv-card:hover { transform: none; }
}
.lv-card__media {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  display: block;
}
.lv-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}
.lv-card:hover .lv-card__media img { transform: scale(1.04); }
.lv-card__body {
  padding: var(--spacing-4) var(--spacing-4) var(--spacing-5);
  display: grid;
  gap: var(--spacing-3);
  flex: 1;
  align-content: start;
}
.lv-card__cat {
  font-size: var(--text-xs);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgb(var(--text-primary) / 0.55);
  font-family: var(--heading-font-family);
  font-weight: 500;
}
.lv-card__name {
  font-family: var(--heading-font-family);
  font-size: var(--text-h6);
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: rgb(var(--text-primary));
  margin: 0;
}
.lv-card__qty {
  font-size: var(--text-sm);
  color: rgb(var(--text-primary) / 0.6);
}
@media (min-width: 700px) {
  .lv-card__name { font-size: var(--text-h5); }
}
.lv-qty {
  font-size: var(--text-sm) !important;
  color: rgb(var(--text-primary) / 0.6) !important;
  margin: 0 0 var(--spacing-2);
}
.lv-card__foot {
  display: grid;
  gap: var(--spacing-2);
  margin-top: auto;
}
.lv-rfq {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-2);
  background: rgb(var(--button-background-primary));
  color: rgb(var(--button-text-primary));
  border-radius: var(--rounded-full);
  padding: 0.85rem 1.4rem;
  font-family: var(--heading-font-family);
  font-size: var(--text-sm);
  font-weight: 500;
  letter-spacing: -0.01em;
  text-decoration: none;
  transition: opacity .2s ease;
}
.lv-rfq:hover {
  opacity: .88;
  color: rgb(var(--button-text-primary));
}
.lv-rfq.lv-rfq--ghost {
  background: transparent;
  color: rgb(var(--text-primary));
  border: 1px solid rgb(var(--text-primary) / 0.3);
}
.lv-rfq--ghost:hover {
  background: rgb(var(--text-primary));
  color: rgb(var(--background-primary));
  opacity: 1;
}
@media (max-width: 699px) {
  .lv-rfq { width: 100%; }
}
.lv-empty-info {
  display: none;
  text-align: center;
  padding-block: var(--spacing-16);
}
.lv-empty-info.is-visible { display: block; }

/* ---------- Page headers (About / Contact) ---------- */
.lv-page-head {
  text-align: center;
  max-width: 860px;
  margin-inline: auto;
  padding-block: var(--spacing-14) var(--spacing-4);
}
.lv-page-head .h0 em,
.lv-page-head .h1 em { font-family: 'LibreBaskerville'; color: rgb(var(--button-background-primary)); }

.lv-feature-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-6);
}

@media (min-width: 900px) {
  .lv-feature-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.lv-pillar {
  border: 1px solid rgb(var(--text-primary) / .12);
  border-radius: var(--rounded);
  padding: var(--spacing-6);
  background: rgb(var(--product-card-background));
}

.lv-pillar__icon {
  width: var(--spacing-14);
}

.lv-pillar h3 {
  margin: var(--spacing-4) 0 var(--spacing-2);
}

.lv-pillar p {
  color: rgb(var(--text-primary) / .72);
}

/* ---------- Contact page ---------- */
.lv-contact {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-10);
  padding-bottom: var(--spacing-16);
}
@media (min-width: 1000px) {
  .lv-contact { grid-template-columns: .8fr 1.2fr; align-items: start; }
}
.lv-contact__info p { color: rgb(var(--text-primary) / .75); }
.lv-contact__info a {
  color: var(--button-background-primary);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.lv-contact .fluentform,
.lv-contact .ff-message-success {
  font-family: var(--text-font-family);
}
.fluentform .ff-el-input--label label {
  font-family: var(--heading-font-family);
  font-size: var(--text-sm);
  letter-spacing: -0.01em;
}
.fluentform .ff-el-form-control {
  min-height: var(--input-height);
  border-radius: var(--rounded-input);
  border: 1px solid rgb(var(--text-primary) / 0.25);
  background: rgb(var(--product-card-background));
  color: rgb(var(--text-primary));
  padding: var(--input-padding-inline);
  font-family: var(--text-font-family);
  font-size: var(--text-base);
}
.fluentform .ff-el-form-control:focus {
  outline: none;
  border-color: var(--button-background-primary);
  box-shadow: 0 0 0 3px rgb(var(--button-background-primary) / 0.15);
}
.fluentform textarea.ff-el-form-control { min-height: 160px; }
.fluentform .ff_submit_btn_wrapper .ff-btn-submit {
  background: var(--button-background-primary);
  color: var(--button-text-primary);
  border-radius: var(--rounded-full);
  font-family: var(--heading-font-family);
  font-weight: 500;
  letter-spacing: -0.01em;
  padding: 0.9rem 2rem;
  border: none;
  cursor: pointer;
  transition: opacity .2s;
}
.fluentform .ff-btn-submit:hover { opacity: .85; }
.fluentform .ff-el-is-error .ff-el-form-control {
  border-color: rgb(var(--error-text));
}
.fluentform .error.text-danger { color: rgb(var(--error-text)); font-size: var(--text-sm); }

/* ---------- RFQ hash banner on the contact page ---------- */
.lv-rfq-notice {
  grid-column: 1 / -1;
  display: none;
  align-items: center;
  gap: var(--spacing-4);
  border-radius: var(--rounded);
  padding: var(--spacing-4) var(--spacing-5);
  background: rgb(var(--accent) / 0.25);
  border: 1px solid rgb(var(--accent));
  color: rgb(var(--text-primary));
}
.lv-rfq-notice.is-visible { display: flex; }
.lv-rfq-notice strong { flex: none; }

/* Attribution line stays subtle so the 1:1 Bluum look keeps working. */
.lv-credit {
  text-align: center;
  font-size: var(--text-xs);
  color: rgb(var(--text-primary) / 0.5);
  padding-block: var(--spacing-4);
}

/* ---------- Current-page nav state (header + drawer) ----------
   On the ink-green header, the active link stands out by being solid white
   with a bronze underline (instead of the legacy bronze text on white). */
.header__link-list a[aria-current="page"],
.header__link-list a.is-active {
  color: rgb(var(--header-text));
  text-decoration: underline;
  text-decoration-color: rgb(var(--button-background-primary));
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}
.panel__scroller a[aria-current="page"] .reversed-link {
  color: rgb(var(--button-background-primary));
}

/* ---------- Header language switcher (TranslatePress) ---------- */
#shopify-section-sections--17700182491331__header .levara-header-lang {
  display: flex;
  align-items: center;
  margin-inline-end: var(--spacing-2);
}
#shopify-section-sections--17700182491331__header .levara-header-lang .trp-shortcode-switcher__wrapper {
  --bg: transparent !important;
  --bg-hover: rgb(255 255 255 / 0.12) !important;
  --text: rgb(var(--header-text)) !important;
  --text-hover: rgb(255 255 255) !important;
  --border: 0 !important;
  --border-width: 0 !important;
  --font-size: 13px !important;
  background: transparent;
  border: 0;
  box-shadow: none;
}
#shopify-section-sections--17700182491331__header .levara-header-lang .trp-language-switcher,
#shopify-section-sections--17700182491331__header .levara-header-lang .trp-current-language-item__wrapper {
  background: transparent;
  border: 0;
}
#shopify-section-sections--17700182491331__header .levara-header-lang .trp-flag-image {
  display: block;
  width: 20px;
  height: auto;
  border-radius: 2px;
}
#shopify-section-sections--17700182491331__header .levara-header-lang .trp-language-item-name {
  color: rgb(var(--header-text));
  font-size: 13px;
  line-height: 1;
}
/* The opened list floats over the page, so it needs a readable surface. */
#shopify-section-sections--17700182491331__header .levara-header-lang .trp-switcher-dropdown-list {
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 8px 24px rgb(0 0 0 / 0.18);
}
#shopify-section-sections--17700182491331__header .levara-header-lang .trp-switcher-dropdown-list .trp-language-item-name {
  color: #143852;
}

/* ---------- Mobile header: keep the cart at top-right ---------- */
@media screen and (max-width: 699px) {
  #shopify-section-sections--17700182491331__header .header__secondary-nav {
    display: block !important;
    justify-self: end;
  }

  #shopify-section-sections--17700182491331__header .header__secondary-nav .header__icon-list {
    display: flex !important;
    align-items: center;
    gap: 0;
    justify-content: flex-end;
    flex-wrap: nowrap;
  }

  #shopify-section-sections--17700182491331__header .header__secondary-nav .header__icon-list > li {
    margin: 0;
  }

  #shopify-section-sections--17700182491331__header .levara-header-cart {
    display: grid !important;
    position: relative;
    width: 38px;
    height: 38px;
    min-width: 38px;
    min-height: 38px;
    place-items: center;
    color: rgb(var(--header-text)) !important;
  }

  #shopify-section-sections--17700182491331__header .levara-header-cart svg {
    display: block;
    width: 22px;
    height: 22px;
  }

  #shopify-section-sections--17700182491331__header .levara-header-cart__count {
    position: absolute;
    top: 4px;
    right: 3px;
    display: grid;
    min-width: 16px;
    height: 16px;
    padding-inline: 3px;
    place-items: center;
    border-radius: 999px;
    background: rgb(var(--button-background-primary));
    color: rgb(var(--button-text-primary));
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
  }

  #shopify-section-sections--17700182491331__header .levara-header-lang {
    display: flex !important;
    align-items: center;
    margin-inline-end: -2px;
  }

  #shopify-section-sections--17700182491331__header .levara-header-lang .trp-flag-image {
    width: 18px;
  }

  #shopify-section-sections--17700182491331__header .levara-header-lang .trp-language-item {
    padding-inline: 2px;
    gap: 5px;
  }

  /* Flag only on phones: the code label clipped in the narrow action row. */
  #shopify-section-sections--17700182491331__header .levara-header-lang .trp-language-item-name {
    display: none;
  }

  /* The arrow costs ~20px on a narrow bar; the flag and code are enough. */
  #shopify-section-sections--17700182491331__header .levara-header-lang .trp-shortcode-arrow {
    display: none;
  }
}

/* =====================================================================
   WooCommerce product pages — Bluum-style PDP shell
===================================================================== */
body.single-product,
body.single-product #page,
body.single-product .site,
body.single-product .site-content,
body.single-product .content-area,
body.single-product .site-main,
body.single-product .ast-container {
  background: rgb(var(--background-primary));
}

.levara-product-pdp {
  padding-block: var(--spacing-10) var(--spacing-16);
  color: rgb(var(--text-primary));
}

.levara-product-pdp > .container {
  max-width: 1320px;
}

.levara-product-pdp .container > .product.product--thumbnails-bottom {
  display: grid !important;
  grid-template: none !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: var(--spacing-8);
  align-items: start;
}

@media screen and (min-width: 700px) {
  .levara-product-pdp .container > .product.product--thumbnails-bottom {
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, .72fr) !important;
    column-gap: clamp(2rem, 5vw, 5rem) !important;
  }
}

.levara-product-pdp .product-gallery__media {
  overflow: hidden;
  border-radius: var(--rounded-lg);
  background: rgb(var(--accent) / .18);
}

.levara-product-pdp .product-gallery {
  min-width: 0;
}

.levara-product-pdp .product-gallery__media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.levara-product-pdp .product-gallery__dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .65rem;
  margin-top: var(--spacing-4);
}

.levara-product-pdp .product-gallery__dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 1px solid rgb(var(--text-primary) / .32);
  border-radius: 999px;
  background: transparent;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.levara-product-pdp .product-gallery__dot.is-active {
  border-color: rgb(var(--text-primary));
  background: rgb(var(--text-primary));
  transform: scale(1.12);
}

.levara-product-pdp .product-info {
  display: block;
  min-width: 0;
  width: 100%;
}

.levara-product-pdp safe-sticky.product-info {
  display: grid;
  gap: var(--spacing-6);
}

@media screen and (min-width: 700px) {
  .levara-product-pdp safe-sticky.product-info {
    position: sticky;
    top: calc(var(--header-height, 96px) + var(--spacing-6));
  }
}

.levara-product-pdp .product-info__title {
  margin: 0;
  color: rgb(var(--text-primary));
  font-family: var(--heading-font-family);
  font-size: clamp(2.5rem, 5vw, var(--text-h1));
  font-weight: var(--heading-font-weight);
  letter-spacing: var(--heading-letter-spacing);
  line-height: .95;
}

.levara-product-pdp .variations_form.cart,
.levara-product-pdp .cart {
  display: grid;
  gap: var(--spacing-5);
  width: 100%;
}

.levara-product-pdp .product-info__variant-picker,
.levara-product-pdp .single_variation_wrap,
.levara-product-pdp .product-info__buy-buttons,
.levara-product-pdp .woocommerce-variation-add-to-cart {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.levara-product-pdp .variant-picker__option {
  display: grid;
  gap: var(--spacing-3);
  margin: 0;
  padding: 0;
  border: 0;
}

.levara-product-pdp .text-subdued {
  color: rgb(var(--text-primary) / .64);
  font-size: var(--text-sm);
}

.levara-product-pdp .variant-picker__option-values {
  display: flex;
  flex-wrap: wrap;
}

.levara-product-pdp .block-swatch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 74px;
  min-height: 46px;
  padding: .7rem 1.15rem;
  border: 1px solid rgb(var(--text-primary) / .16);
  border-radius: 9px;
  background: rgb(var(--background-primary));
  color: rgb(var(--text-primary) / .78);
  cursor: pointer;
  font-family: var(--heading-font-family);
  font-size: var(--text-sm);
  font-weight: 500;
  transition: border-color .2s ease, box-shadow .2s ease, color .2s ease;
}

.levara-product-pdp .variant-picker__option-values input:checked + .block-swatch {
  border-color: rgb(var(--text-primary));
  box-shadow: inset 0 0 0 1px rgb(var(--text-primary));
  color: rgb(var(--text-primary));
}

.levara-product-pdp .single_variation,
.levara-product-pdp .woocommerce-variation-price,
.levara-product-pdp .woocommerce-variation-availability,
.levara-product-pdp .reset_variations {
  display: none !important;
}

.levara-product-pdp .product-info__price {
  color: rgb(var(--text-primary));
  font-family: var(--heading-font-family);
  font-size: clamp(1.35rem, 2.2vw, var(--text-h5));
  font-weight: 600;
  letter-spacing: -.02em;
  line-height: 1.1;
}

.levara-product-pdp .product-info__price .amount {
  color: inherit;
}

.levara-product-pdp .single_add_to_cart_button.button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  max-width: none !important;
  min-height: 58px;
  margin-top: var(--spacing-1);
  padding: 1rem 2rem;
  border: 0 !important;
  border-radius: var(--rounded-button) !important;
  background: rgb(var(--button-background-primary)) !important;
  color: rgb(var(--button-text-primary)) !important;
  font-family: var(--heading-font-family);
  font-size: var(--text-base);
  font-weight: 600;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  opacity: 1 !important;
  visibility: visible !important;
}

.levara-product-pdp .levara-buy-now-button.button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  max-width: none !important;
  min-height: 58px;
  margin-top: var(--spacing-3);
  padding: 1rem 2rem;
  border: 1px solid rgb(var(--text-primary) / .24) !important;
  border-radius: var(--rounded-button) !important;
  background: rgb(var(--text-primary)) !important;
  color: rgb(var(--background-primary)) !important;
  font-family: var(--heading-font-family);
  font-size: var(--text-base);
  font-weight: 600;
  line-height: 1;
  text-align: center;
  cursor: pointer;
}

.levara-product-pdp .levara-buy-now-button.button:hover {
  opacity: .9;
}

.levara-product-pdp .single_add_to_cart_button.button:disabled,
.levara-product-pdp .single_add_to_cart_button.button.disabled {
  opacity: 1 !important;
}

.levara-product-pdp .single_add_to_cart_button.button:hover {
  opacity: .88;
}

.levara-product-pdp .product-info__guarantee-icons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--spacing-3);
  padding-block-start: 0;
}

.levara-product-pdp .product-info__block-item[data-block-type="guarantee-icons"] {
  margin-top: calc(-1 * var(--spacing-5));
}

@media screen and (min-width: 700px) {
  .levara-product-pdp .product-info__guarantee-icons {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.levara-product-pdp .guarantee-icon {
  display: grid;
  justify-items: center;
  gap: var(--spacing-2);
  text-align: center;
  color: rgb(var(--text-primary) / .66);
  font-size: var(--text-xs);
  line-height: 1.25;
}

.levara-product-pdp .guarantee-icon img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.levara-product-pdp .product-info__text--research-notice {
  padding: var(--spacing-4);
  border: 1px solid rgb(var(--text-primary) / .12);
  border-radius: 9px;
  background: rgb(var(--accent) / .14);
}

.levara-product-pdp .product-info__text--research-notice p {
  margin: 0;
  color: rgb(var(--text-primary) / .78);
  font-size: var(--text-sm);
  line-height: 1.55;
}

.levara-product-pdp .product-info__text--research-notice strong {
  color: rgb(var(--text-primary));
  font-weight: 700;
  letter-spacing: .04em;
}

/* =====================================================================
   WooCommerce cart / checkout
===================================================================== */
body.woocommerce-cart #main.anchor,
body.woocommerce-checkout #main.anchor {
  max-width: var(--container-max-width);
  margin-inline: auto;
  padding: var(--spacing-10) var(--container-gutter) var(--spacing-16);
}

body.woocommerce-cart #main.anchor > *,
body.woocommerce-checkout #main.anchor > * {
  max-width: 100%;
}

body.woocommerce-cart .return-to-shop,
body.woocommerce-cart a.button[href*="/shop/"],
body.woocommerce-cart a.wc-backward[href*="/shop/"],
body.woocommerce-checkout a.button[href*="/shop/"],
body.woocommerce-checkout a.wc-backward[href*="/shop/"] {
  display: none !important;
}

/* Visible fields, borders and lines inside cart / checkout */
body.woocommerce-cart,
body.woocommerce-checkout {
  --wc-text-primary: rgb(var(--text-primary));
  --wc-form-color-text: rgb(var(--text-primary));
  --wc-form-color-background: rgb(var(--background-primary));
  --wc-form-color-border: rgb(var(--text-primary) / .28);
  --wc-content-bg: rgb(var(--background-primary));
  color: rgb(var(--text-primary));
  background-color: rgb(var(--background-primary));
}

body.woocommerce-cart input.input-text,
body.woocommerce-cart textarea,
body.woocommerce-cart select,
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select {
  color: rgb(var(--text-primary));
  background-color: rgb(var(--background-primary));
  border-color: rgb(var(--text-primary) / .28);
  border-radius: var(--rounded-input);
  box-shadow: none;
}

body.woocommerce-cart input.input-text:focus,
body.woocommerce-cart textarea:focus,
body.woocommerce-cart select:focus,
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus {
  border-color: rgb(var(--button-background-primary));
  outline: none;
  box-shadow: 0 0 0 3px rgb(var(--button-background-primary) / .25);
}

body.woocommerce-cart input::placeholder,
body.woocommerce-cart textarea::placeholder,
body.woocommerce-checkout input::placeholder,
body.woocommerce-checkout textarea::placeholder {
  color: rgb(var(--text-primary) / .5);
}

body.woocommerce-cart .form-row label,
body.woocommerce-checkout .form-row label,
body.woocommerce-cart .woocommerce-form__label,
body.woocommerce-checkout .woocommerce-form__label,
body.woocommerce-cart .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-cart .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-cart #order_review_heading,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-cart h1,
body.woocommerce-cart h2,
body.woocommerce-cart h3,
body.woocommerce-checkout h1,
body.woocommerce-checkout h2,
body.woocommerce-checkout h3 {
  color: rgb(var(--text-primary));
}

body.woocommerce-cart table.shop_table,
body.woocommerce-checkout table.shop_table {
  background: rgb(var(--background-primary));
  color: rgb(var(--text-primary));
  border-color: rgb(var(--text-primary) / .16);
}

body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td,
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td {
  border-color: rgb(var(--text-primary) / .12);
  color: rgb(var(--text-primary));
  background: transparent;
}

body.woocommerce-cart .cart_totals,
body.woocommerce-checkout .cart_totals {
  border-color: rgb(var(--text-primary) / .16);
}

body.woocommerce-cart .woocommerce-notice,
body.woocommerce-checkout .woocommerce-notice {
  background-color: rgb(var(--accent) / .25);
  color: rgb(var(--text-primary));
  border-top-color: rgb(var(--text-primary));
}

body.woocommerce-cart .select2-container--default .select2-selection,
body.woocommerce-checkout .select2-container--default .select2-selection {
  background-color: rgb(var(--background-primary));
  border-color: rgb(var(--text-primary) / .28);
  border-radius: var(--rounded-input);
  color: rgb(var(--text-primary));
}

body.woocommerce-cart .select2-container--default .select2-selection__rendered,
body.woocommerce-checkout .select2-container--default .select2-selection__rendered {
  color: rgb(var(--text-primary));
}

body.woocommerce-cart .select2-dropdown,
body.woocommerce-checkout .select2-dropdown {
  background-color: rgb(var(--background-primary));
  color: rgb(var(--text-primary));
  border-color: rgb(var(--text-primary) / .28);
}

body.woocommerce-cart .select2-results__option,
body.woocommerce-checkout .select2-results__option {
  color: rgb(var(--text-primary));
}

body.woocommerce-cart .select2-results__option--highlighted,
body.woocommerce-cart .select2-results__option[aria-selected="true"],
body.woocommerce-checkout .select2-results__option--highlighted,
body.woocommerce-checkout .select2-results__option[aria-selected="true"] {
  background-color: rgb(var(--button-background-primary));
  color: rgb(var(--button-text-primary));
}

body.woocommerce-cart .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-text-input input {
  color: rgb(var(--text-primary));
  background-color: rgb(var(--background-primary));
  border-color: rgb(var(--text-primary) / .28);
}

body.woocommerce-cart .wc-block-checkout__actions .button,
body.woocommerce-checkout .wc-block-checkout__actions .button,
body.woocommerce-cart .checkout-button,
body.woocommerce-checkout .checkout-button,
body.woocommerce-cart .button[name="apply_coupon"],
body.woocommerce-cart .button[name="update_cart"],
body.woocommerce-cart .button[name="proceed"],
body.woocommerce-checkout .button[name="apply_coupon"],
body.woocommerce-checkout .button[name="update_cart"],
body.woocommerce-checkout .button[name="proceed"] {
  background-color: rgb(var(--button-background-primary));
  color: rgb(var(--button-text-primary));
  border-color: transparent;
}

/* Make form fields unmistakable on the checkout / cart pages. */
body.woocommerce-cart .form-row,
body.woocommerce-checkout .form-row,
body.woocommerce-cart .woocommerce-input-wrapper,
body.woocommerce-checkout .woocommerce-input-wrapper {
  position: relative;
}

body.woocommerce-cart .form-row label,
body.woocommerce-checkout .form-row label {
  color: rgb(var(--text-primary));
  font-weight: 500;
  letter-spacing: -0.005em;
}

body.woocommerce-cart .form-row label .required,
body.woocommerce-checkout .form-row label .required,
body.woocommerce-cart .form-row .required,
body.woocommerce-checkout .form-row .required {
  color: rgb(var(--text-primary));
  border-color: rgb(var(--text-primary));
}

body.woocommerce-cart .form-row input.input-text,
body.woocommerce-cart .form-row textarea,
body.woocommerce-cart .form-row select,
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select {
  background-color: rgb(var(--background-primary));
  color: rgb(var(--text-primary));
  border: 1px solid rgb(var(--text-primary) / .55);
  border-radius: var(--rounded-input);
  padding: 0.85rem 1rem;
  min-height: 48px;
  width: 100%;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease;
  appearance: none;
  -webkit-appearance: none;
  box-shadow: inset 0 0 0 1px transparent;
}

body.woocommerce-cart .form-row input.input-text::placeholder,
body.woocommerce-cart .form-row textarea::placeholder,
body.woocommerce-checkout .form-row input.input-text::placeholder,
body.woocommerce-checkout .form-row textarea::placeholder {
  color: rgb(var(--text-primary) / .55);
}

body.woocommerce-cart .form-row input.input-text:focus,
body.woocommerce-cart .form-row textarea:focus,
body.woocommerce-cart .form-row select:focus,
body.woocommerce-checkout .form-row input.input-text:focus,
body.woocommerce-checkout .form-row textarea:focus,
body.woocommerce-checkout .form-row select:focus {
  border-color: rgb(var(--button-background-primary));
  box-shadow: 0 0 0 3px rgb(var(--button-background-primary) / .25);
}

body.woocommerce-cart .form-row .woocommerce-input-wrapper input,
body.woocommerce-checkout .form-row .woocommerce-input-wrapper input,
body.woocommerce-cart .form-row .woocommerce-input-wrapper select,
body.woocommerce-checkout .form-row .woocommerce-input-wrapper select {
  width: 100%;
  background-color: rgb(var(--background-primary));
  color: rgb(var(--text-primary));
  border: 1px solid rgb(var(--text-primary) / .55);
  border-radius: var(--rounded-input);
  padding: 0.85rem 1rem;
  min-height: 48px;
}

body.woocommerce-cart .form-row .show-password-input,
body.woocommerce-checkout .form-row .show-password-input {
  color: rgb(var(--text-primary));
}

body.woocommerce-cart table.shop_table.cart input[type="number"],
body.woocommerce-cart table.shop_table.cart input.input-text,
body.woocommerce-cart table.shop_table.cart select,
body.woocommerce-checkout table.shop_table.cart input[type="number"],
body.woocommerce-checkout table.shop_table.cart input.input-text,
body.woocommerce-checkout table.shop_table.cart select {
  border: 1px solid rgb(var(--text-primary) / .55);
  background-color: rgb(var(--background-primary));
  color: rgb(var(--text-primary));
}

/* WooCommerce Blocks-based checkout */
body.woocommerce-cart .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-cart .wc-block-components-text-input select,
body.woocommerce-checkout .wc-block-components-text-input select,
body.woocommerce-cart .wc-block-components-form-token-input,
body.woocommerce-checkout .wc-block-components-form-token-input,
body.woocommerce-cart .wc-block-checkout .wc-block-text-input input,
body.woocommerce-checkout .wc-block-checkout .wc-block-text-input input {
  background-color: rgb(var(--background-primary)) !important;
  color: rgb(var(--text-primary)) !important;
  border: 1px solid rgb(var(--text-primary) / .55) !important;
  border-radius: var(--rounded-input);
  padding: 0.85rem 1rem;
  min-height: 48px;
}

body.woocommerce-cart .wc-block-components-form .wc-block-components-form-field--label,
body.woocommerce-checkout .wc-block-components-form .wc-block-components-form-field--label,
body.woocommerce-cart .wc-block-components-form label,
body.woocommerce-checkout .wc-block-components-form label,
body.woocommerce-cart .wc-block-checkout .wc-block-checkout__label,
body.woocommerce-checkout .wc-block-checkout .wc-block-checkout__label {
  color: rgb(var(--text-primary));
  font-weight: 500;
}

body.woocommerce-cart .wc-blocks-form-input--required-warning,
body.woocommerce-checkout .wc-blocks-form-input--required-warning,
body.woocommerce-cart .wc-block-checkout .wc-block-checkout-validation-error,
body.woocommerce-checkout .wc-block-checkout .wc-block-checkout-validation-error,
body.woocommerce-cart .wc-block-components-form-token-input .wc-block-components-form-token-input__error,
body.woocommerce-checkout .wc-block-components-form-token-input .wc-block-components-form-token-input__error {
  color: rgb(var(--text-primary));
  background-color: rgb(var(--accent) / .25);
  border-radius: 6px;
  padding: 6px 10px;
}

/* Product payment support badges */
.levara-payment-support {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-4);
  padding: var(--spacing-4) var(--spacing-5);
  border: 1px solid rgb(var(--text-primary) / .12);
  border-radius: var(--rounded);
  background: rgb(var(--accent) / .12);
  color: rgb(var(--text-primary));
}

.levara-payment-support__label {
  font-size: var(--text-sm);
  font-weight: 650;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: rgb(var(--text-primary) / .72);
}

.levara-payment-support__methods {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--spacing-2);
}

.levara-payment-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 112px;
  height: 48px;
  padding: 0 .75rem;
  border-radius: 8px;
  font-size: var(--text-sm);
  font-weight: 800;
  line-height: 1;
}

.levara-payment-badge--venmo {
  background: #008cff;
  border: 1px solid #008cff;
  color: #fff;
}

.levara-payment-badge--venmo img {
  display: block;
  width: 86px;
  height: auto;
}

.levara-payment-badge--tt {
  background: rgb(var(--text-primary));
  color: rgb(var(--background-primary));
  letter-spacing: .04em;
  font-size: 1rem;
}

@media (max-width: 699px) {
  .levara-payment-support {
    align-items: flex-start;
    flex-direction: column;
  }
}
