/* Valhalla 5.7.2 — narrow compatibility layer, loaded last. */

/* Shared collection card cleanup: one outer border, no hover action bubbles. */
html body .collection .collection-products-row .product-block-quick {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

html body .collection .collection-products-row .product-block-holder {
  border: 1px solid rgba(205,149,48,.58) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

html body .collection .collection-products-row .product-block,
html body .collection .collection-products-row .product-block-reviews,
html body .collection .collection-products-row .product-block-price,
html body .collection .collection-products-row .quick-order,
html body .collection .collection-products-row .quick-order form {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Font-independent, compact and readable review stars. */
html body .collection .collection-products-row .product-block-reviews {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  margin: 3px 0 8px !important;
  padding: 0 !important;
  background: transparent !important;
}

html body .collection .collection-products-row .stars {
  display: flex !important;
  align-items: center !important;
  gap: 3px !important;
  height: 24px !important;
}

html body .collection .collection-products-row .stars i.fa-star {
  display: inline-grid !important;
  width: 18px !important;
  height: 22px !important;
  padding: 0 !important;
  place-items: center !important;
  border: 0 !important;
  background: transparent !important;
  font-family: Arial, sans-serif !important;
  font-style: normal !important;
  font-size: 0 !important;
}

html body .collection .collection-products-row .stars i.fa-star::before {
  content: "★" !important;
  color: #d6a744 !important;
  font-family: Arial, sans-serif !important;
  font-size: 17px !important;
  line-height: 1 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.7) !important;
}

html body .collection .collection-products-row .stars i.fa-star.empty::before {
  color: #817864 !important;
}

/* GRID: normal compact content flow, without the former flexible gap. */
html body .collection .collection-products-row:not(.vh-list-view) > .product-grid,
html body .collection .collection-products-row:not(.vh-list-view) .product-block-holder,
html body .collection .collection-products-row:not(.vh-list-view) .product-block {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

html body .collection .collection-products-row:not(.vh-list-view) .product-block-holder,
html body .collection .collection-products-row:not(.vh-list-view) .product-block {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

html body .collection .collection-products-row:not(.vh-list-view) .product-block {
  flex: 0 0 auto !important;
  padding-bottom: 12px !important;
}

html body .collection .collection-products-row:not(.vh-list-view) .brand {
  flex: 0 0 auto !important;
  margin: 0 0 5px !important;
}

html body .collection .collection-products-row:not(.vh-list-view) h4 {
  flex: 0 0 auto !important;
  margin: 0 0 5px !important;
}

html body .collection .collection-products-row:not(.vh-list-view) .product-block-desc {
  order: 5 !important;
  position: static !important;
  display: -webkit-box !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: 5.8em !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #d4c8b8 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 4 !important;
}

html body .collection .collection-products-row:not(.vh-list-view) .product-block-price {
  order: 6 !important;
  position: static !important;
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  width: 100% !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #f0bd50 !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

html body .collection .collection-products-row .product-block-price strong {
  display: inline-block !important;
  color: #f0bd50 !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* LIST: preserve the established grid but provide four readable copy lines. */
html body .collection .collection-products-row.vh-list-view .product-block-desc {
  position: static !important;
  display: -webkit-box !important;
  width: 100% !important;
  height: auto !important;
  min-height: 5.8em !important;
  max-height: 5.8em !important;
  margin: 4px 0 8px !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #ded4c5 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  visibility: visible !important;
  opacity: 1 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 4 !important;
}

html body .collection .collection-products-row.vh-list-view .product-block-reviews {
  align-self: start !important;
  margin: 2px 0 4px !important;
}

/* Quantity and cart controls: vertically centred in a quiet, unified footer. */
html body .collection .collection-products-row .quick-order {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 7px 12px !important;
  border-top: 1px solid rgba(205,149,48,.26) !important;
  background: rgba(10,7,4,.25) !important;
}

html body .collection .collection-products-row .quick-order form {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 48px !important;
  gap: 10px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .collection .collection-products-row .quick-order .qty-fast,
html body .collection .collection-products-row .quick-order .quick-cart {
  align-self: center !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
}

html body .collection .collection-products-row .quick-order .qty-fast {
  width: 100% !important;
  padding: 0 8px !important;
  line-height: 44px !important;
  text-align: center !important;
}

html body .collection .collection-products-row .quick-cart {
  position: relative !important;
  display: grid !important;
  width: 48px !important;
  min-width: 48px !important;
  padding: 0 !important;
  place-items: center !important;
  text-indent: 0 !important;
}

html body .collection .collection-products-row .quick-cart i { display:none !important; }

html body .collection .collection-products-row .quick-cart::after,
html body .productpage .addtocart-holder .btn-addtocart::after,
html body .productpage .addtocart-holder .button-cta::after {
  content: "" !important;
  display: block !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff4dc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='19' cy='20' r='1'/%3E%3Cpath d='M3 4h2l2.4 10.4a2 2 0 0 0 2 1.6h7.7a2 2 0 0 0 2-1.6L21 7H6'/%3E%3C/svg%3E") !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}

html body .collection .collection-products-row .quick-cart::after {
  position: static !important;
  width: 24px !important;
  height: 24px !important;
}

/* Mobile product page: keep the real button beside quantity at its native spot. */
@media (max-width:767px) {
  html body .productpage .addtocart-holder {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 56px !important;
    padding: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
    border-bottom: 0 !important;
  }

  html body .productpage .addtocart-holder > .qty {
    position: relative !important;
    flex: 0 0 78px !important;
    width: 78px !important;
    height: 56px !important;
    margin: 0 !important;
  }

  html body .productpage .addtocart-holder > .addtocart {
    position: relative !important;
    z-index: 50 !important;
    inset: auto !important;
    display: block !important;
    flex: 0 0 58px !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 56px !important;
    margin: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }

  html body .productpage .addtocart-holder > .addtocart > .btn-addtocart,
  html body .productpage .addtocart-holder > .addtocart > .button-cta {
    position: relative !important;
    z-index: 51 !important;
    display: grid !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    place-items: center !important;
    overflow: hidden !important;
    border: 1px solid rgba(214,160,54,.68) !important;
    border-radius: 6px !important;
    color: transparent !important;
    font-size: 0 !important;
    text-indent: -9999px !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }

  html body .productpage .addtocart-holder .icon-holder { display:none !important; }

  html body .productpage .addtocart-holder .btn-addtocart::after,
  html body .productpage .addtocart-holder .button-cta::after {
    position: absolute !important;
    inset: 14px !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .product-block-desc {
    font-size: 11px !important;
  }
}

/* 5.7.3 mobile rhythm — title, reviews, four copy lines, then price. */
@media (max-width:767px) {
  html body .collection .collection-products-row:not(.vh-list-view) .product-block {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding-bottom: 12px !important;
    overflow: visible !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .brand {
    order: 2 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) h4,
  html body .collection .collection-products-row:not(.vh-list-view) h4.with-brand {
    order: 3 !important;
    position: static !important;
    display: block !important;
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 2.6em !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    overflow: hidden !important;
    line-height: 1.3 !important;
    transform: none !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) h4 a.title {
    display: -webkit-box !important;
    line-height: 1.3 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .product-block-reviews {
    order: 4 !important;
    position: static !important;
    flex: 0 0 20px !important;
    width: 100% !important;
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .stars {
    height: 20px !important;
    gap: 2px !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .stars i.fa-star {
    width: 16px !important;
    height: 20px !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .stars i.fa-star::before {
    font-size: 15px !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .product-block-desc {
    order: 5 !important;
    position: static !important;
    display: block !important;
    flex: 0 0 5.8em !important;
    clear: both !important;
    width: 100% !important;
    height: 5.8em !important;
    min-height: 5.8em !important;
    max-height: 5.8em !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: #d8cdbd !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .product-block-price {
    order: 6 !important;
    position: static !important;
    display: flex !important;
    flex: 0 0 36px !important;
    clear: both !important;
    align-items: center !important;
    width: 100% !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    margin: 0 !important;
    padding: 2px 0 0 !important;
    overflow: visible !important;
    background: transparent !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }

  html body .collection .collection-products-row:not(.vh-list-view) .product-block-price strong {
    line-height: 1.1 !important;
  }
}

/* ================================================================
   Valhalla Theme v2.0 Ultimate — Step 5.9.0
   Challenge / reCAPTCHA page — reliable page-specific redesign
   ================================================================ */
html body.challenge-page .body-content > .container {
  max-width: 1180px !important;
  padding-top: 38px !important;
  padding-bottom: 54px !important;
}

html body.challenge-page .body-content > .container > .row.rowmargin {
  margin: 0 !important;
}

html body.challenge-page .body-content > .container > .row.rowmargin > .col-md-12 {
  padding: 0 !important;
}

html body.challenge-page .gui.gui-challenge {
  position: relative !important;
  width: min(720px, calc(100% - 28px)) !important;
  max-width: 720px !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 38px 42px 40px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  color: #f4ead8 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(193, 133, 31, .12), transparent 44%),
    linear-gradient(rgba(38, 24, 15, .82), rgba(18, 12, 8, .94)),
    url('wood-bg.jpg') center/cover repeat !important;
  border: 1px solid #a87317 !important;
  border-radius: 11px !important;
  box-shadow:
    inset 0 0 0 4px rgba(8, 5, 3, .40),
    inset 0 0 30px rgba(0, 0, 0, .45),
    0 14px 34px rgba(0, 0, 0, .34) !important;
  overflow: hidden !important;
}

html body.challenge-page .gui.gui-challenge::before {
  content: "Beveiligingscontrole" !important;
  display: block !important;
  margin: 0 0 12px !important;
  color: #d8a52c !important;
  font-family: Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

html body.challenge-page .gui.gui-challenge::after {
  content: "" !important;
  position: absolute !important;
  left: 42px !important;
  right: 42px !important;
  top: 70px !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(218, 165, 44, .72), transparent) !important;
  pointer-events: none !important;
}

html body.challenge-page .gui.gui-challenge > div,
html body.challenge-page .gui.gui-challenge .g-recaptcha,
html body.challenge-page .gui.gui-challenge .g-recaptcha div {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

html body.challenge-page .gui.gui-challenge .gui-challenge-title {
  display: block !important;
  max-width: 590px !important;
  margin: 24px auto 26px !important;
  color: #f7efdf !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(23px, 2.6vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.28 !important;
  letter-spacing: .005em !important;
  text-shadow: 0 2px 3px rgba(0, 0, 0, .72) !important;
}

html body.challenge-page .gui.gui-challenge .gui-challenge-title::after {
  content: "Vink hieronder de controle aan. Daarna kun je veilig verder naar de webshop." !important;
  display: block !important;
  max-width: 510px !important;
  margin: 12px auto 0 !important;
  color: #d2c4ae !important;
  font-family: Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  text-shadow: none !important;
}

html body.challenge-page .gui.gui-challenge .gui-challenge-content {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 122px !important;
  margin: 0 !important;
  padding: 22px 18px !important;
  box-sizing: border-box !important;
  background: linear-gradient(180deg, rgba(9, 7, 5, .70), rgba(22, 14, 9, .74)) !important;
  border: 1px solid rgba(194, 137, 27, .62) !important;
  border-radius: 8px !important;
  box-shadow:
    inset 0 0 20px rgba(0, 0, 0, .44),
    0 1px 0 rgba(255, 231, 172, .05) !important;
}

html body.challenge-page .gui.gui-challenge form,
html body.challenge-page .gui.gui-challenge .g-recaptcha,
html body.challenge-page .gui.gui-challenge .g-recaptcha > div {
  display: block !important;
  width: 304px !important;
  max-width: 100% !important;
  margin: 0 auto !important;
}

html body.challenge-page .gui.gui-challenge iframe {
  max-width: 100% !important;
}

@media (max-width: 767px) {
  html body.challenge-page .body-content > .container {
    padding-top: 24px !important;
    padding-bottom: 38px !important;
  }

  html body.challenge-page .gui.gui-challenge {
    width: calc(100% - 20px) !important;
    padding: 30px 16px 28px !important;
  }

  html body.challenge-page .gui.gui-challenge::after {
    left: 16px !important;
    right: 16px !important;
    top: 61px !important;
  }

  html body.challenge-page .gui.gui-challenge .gui-challenge-title {
    margin-top: 22px !important;
    margin-bottom: 22px !important;
    font-size: 23px !important;
  }

  html body.challenge-page .gui.gui-challenge .gui-challenge-content {
    padding: 18px 8px !important;
  }
}

@media (max-width: 350px) {
  html body.challenge-page .gui.gui-challenge .g-recaptcha {
    transform: scale(.88) !important;
    transform-origin: center top !important;
    margin-bottom: -9px !important;
  }
}

/* ================================================================
   Valhalla Theme v2.0 Ultimate — Step 5.9.1
   Challenge page heading and helper text layout correction
   ================================================================ */

/* Remove the decorative gold divider/flair above the content. */
html body.challenge-page .gui.gui-challenge::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* Warm house-style title colour and fully reset inherited sizing. */
html body.challenge-page .gui.gui-challenge .gui-challenge-title {
  position: static !important;
  display: block !important;
  float: none !important;
  width: 100% !important;
  max-width: 610px !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 8px auto 24px !important;
  padding: 0 !important;
  overflow: visible !important;
  color: #ead39f !important;
  line-height: 1.28 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-align: center !important;
  text-shadow: 0 2px 3px rgba(0, 0, 0, .72) !important;
}

/* Stop using the title pseudo-element; it was squeezed by Nova styles. */
html body.challenge-page .gui.gui-challenge .gui-challenge-title::after {
  content: none !important;
  display: none !important;
}

/* Stack the helper sentence cleanly above the reCAPTCHA. */
html body.challenge-page .gui.gui-challenge .gui-challenge-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 142px !important;
  padding: 18px 20px 20px !important;
  white-space: normal !important;
}

html body.challenge-page .gui.gui-challenge .gui-challenge-content::before {
  content: "Vink hieronder het vakje aan zodat we weten dat je geen robot bent. Daarna kun je veilig verder." !important;
  position: static !important;
  display: block !important;
  flex: 0 0 auto !important;
  float: none !important;
  width: 100% !important;
  max-width: 520px !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 0 !important;
  color: #d8c9b3 !important;
  font-family: Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-transform: none !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform: none !important;
}

html body.challenge-page .gui.gui-challenge .gui-challenge-content form,
html body.challenge-page .gui.gui-challenge .gui-challenge-content .g-recaptcha,
html body.challenge-page .gui.gui-challenge .gui-challenge-content .g-recaptcha > div {
  position: static !important;
  flex: 0 0 auto !important;
  float: none !important;
  clear: both !important;
  margin: 0 auto !important;
  writing-mode: horizontal-tb !important;
  transform-origin: center top !important;
}

@media (max-width: 767px) {
  html body.challenge-page .gui.gui-challenge .gui-challenge-title {
    margin-top: 4px !important;
    margin-bottom: 20px !important;
    font-size: 22px !important;
  }

  html body.challenge-page .gui.gui-challenge .gui-challenge-content {
    gap: 14px !important;
    padding: 16px 8px 18px !important;
  }

  html body.challenge-page .gui.gui-challenge .gui-challenge-content::before {
    max-width: 290px !important;
    font-size: 13px !important;
  }
}

/* ================================================================
   Valhalla Theme v2.0 Ultimate — Step 5.9.2
   Challenge flair removal + global footer redesign
   ================================================================ */

/* Challenge: keep the eyebrow label, but remove every inherited
   decorative chevron/roof/background attached to its pseudo-element. */
html body.challenge-page .gui.gui-challenge::before {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  background: none !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  transform: none !important;
}

/* Footer: one cohesive tavern-style panel instead of a flat brown block. */
html body.valhalla-v2 footer {
  position: relative !important;
  margin: 0 !important;
  padding: 34px 0 0 !important;
  overflow: hidden !important;
  color: #d8cbb8 !important;
  background:
    linear-gradient(180deg, rgba(31,20,14,.70), rgba(12,8,6,.94)),
    url('wood-bg.jpg') center/cover repeat !important;
  border-top: 1px solid #b47a18 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,225,157,.10),
    inset 0 22px 42px rgba(0,0,0,.24) !important;
}

html body.valhalla-v2 footer::before {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  left: 50% !important;
  width: min(1180px, calc(100% - 40px)) !important;
  height: 1px !important;
  transform: translateX(-50%) !important;
  background: linear-gradient(90deg, transparent, rgba(210,154,44,.75), transparent) !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

html body.valhalla-v2 footer > .container.footer {
  width: min(1180px, calc(100% - 40px)) !important;
  max-width: 1180px !important;
  margin: 0 auto 30px !important;
  padding: 26px 26px 24px !important;
  box-sizing: border-box !important;
  background:
    linear-gradient(180deg, rgba(45,29,19,.58), rgba(18,12,9,.68)),
    url('wood-bg.jpg') center/cover repeat !important;
  border: 1px solid rgba(166,112,23,.70) !important;
  border-radius: 10px !important;
  box-shadow:
    inset 0 0 0 4px rgba(8,5,3,.24),
    inset 0 0 28px rgba(0,0,0,.30),
    0 12px 30px rgba(0,0,0,.22) !important;
}

html body.valhalla-v2 footer > .container.footer > .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  margin-left: -16px !important;
  margin-right: -16px !important;
}

html body.valhalla-v2 footer > .container.footer > .row > [class*="col-"] {
  position: relative !important;
  padding: 4px 24px 8px !important;
  margin-bottom: 0 !important;
  color: #d8cbb8 !important;
}

/* Quiet vertical dividers between populated desktop columns. */
@media (min-width: 992px) {
  html body.valhalla-v2 footer > .container.footer > .row > [class*="col-"] + [class*="col-"]::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 4px !important;
    bottom: 4px !important;
    width: 1px !important;
    background: linear-gradient(180deg, transparent, rgba(183,126,29,.48), transparent) !important;
  }
}

html body.valhalla-v2 footer h3,
html body.valhalla-v2 footer h4 {
  position: relative !important;
  margin: 0 0 16px !important;
  padding: 0 0 10px !important;
  color: #f0dfbd !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: .01em !important;
  text-transform: none !important;
  text-shadow: 0 2px 3px rgba(0,0,0,.65) !important;
}

html body.valhalla-v2 footer h3::after,
html body.valhalla-v2 footer h4::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 46px !important;
  height: 1px !important;
  background: linear-gradient(90deg, #d9a42d, transparent) !important;
}

html body.valhalla-v2 footer p,
html body.valhalla-v2 footer li,
html body.valhalla-v2 footer .contact-description,
html body.valhalla-v2 footer .info {
  color: #cfc1ad !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
}

html body.valhalla-v2 footer ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html body.valhalla-v2 footer ul li {
  margin: 0 0 5px !important;
  padding: 0 !important;
}

html body.valhalla-v2 footer a {
  color: #d8cbb8 !important;
  text-decoration: none !important;
  transition: color .18s ease, padding-left .18s ease !important;
}

html body.valhalla-v2 footer ul:not(.socials) li a:hover,
html body.valhalla-v2 footer .info a:hover {
  color: #efc45a !important;
  padding-left: 3px !important;
}

html body.valhalla-v2 footer .info i {
  width: 19px !important;
  margin-right: 7px !important;
  color: #d4a12c !important;
  text-align: center !important;
}

html body.valhalla-v2 footer .socials {
  margin-top: 20px !important;
}

html body.valhalla-v2 footer .socials ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}

html body.valhalla-v2 footer .socials li {
  margin: 0 !important;
}

html body.valhalla-v2 footer .socials a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  padding: 0 !important;
  color: #f3e6ce !important;
  background: linear-gradient(180deg, rgba(94,56,31,.95), rgba(43,27,19,.98)) !important;
  border: 1px solid rgba(194,139,33,.76) !important;
  border-radius: 8px !important;
  box-shadow: inset 0 1px 0 rgba(255,235,183,.10) !important;
}

html body.valhalla-v2 footer .socials a:hover {
  color: #1a1009 !important;
  background: linear-gradient(180deg, #efc75b, #c78a1d) !important;
  transform: translateY(-1px) !important;
}

/* Remove the empty spacer column visually without changing Rain markup. */
@media (min-width: 992px) {
  html body.valhalla-v2 footer > .container.footer .widget:empty {
    display: none !important;
  }
  html body.valhalla-v2 footer > .container.footer .company-info,
  html body.valhalla-v2 footer > .container.footer .widget:empty ~ .col-md-3 {
    width: 33.333333% !important;
  }
}

html body.valhalla-v2 footer .footer-bottom {
  position: relative !important;
  min-height: 72px !important;
  padding: 22px 20px !important;
  color: #bcae9b !important;
  background: linear-gradient(180deg, rgba(13,9,7,.94), rgba(7,5,4,.99)) !important;
  border-top: 1px solid rgba(172,116,22,.72) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
}

html body.valhalla-v2 footer .footer-bottom p,
html body.valhalla-v2 footer .footer-bottom .copyright,
html body.valhalla-v2 footer .footer-bottom a {
  color: #bcae9b !important;
  font-size: 12px !important;
}

/* The cash/payment glyph is not useful here and looked detached. */
html body.valhalla-v2 footer .payment-icons-holder,
html body.valhalla-v2 footer .icon-payment-cash {
  display: none !important;
}

@media (max-width: 991px) {
  html body.valhalla-v2 footer > .container.footer > .row > [class*="col-"] {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }

  html body.valhalla-v2 footer > .container.footer > .row > [class*="col-"]:not(:first-child) {
    border-top: 1px solid rgba(169,113,22,.32) !important;
  }
}

@media (max-width: 767px) {
  html body.valhalla-v2 footer {
    padding-top: 24px !important;
  }

  html body.valhalla-v2 footer > .container.footer {
    width: calc(100% - 20px) !important;
    padding: 12px 14px 16px !important;
    margin-bottom: 20px !important;
  }

  html body.valhalla-v2 footer > .container.footer > .row {
    display: block !important;
    margin: 0 !important;
  }

  html body.valhalla-v2 footer > .container.footer > .row > [class*="col-"] {
    width: 100% !important;
    padding: 18px 4px !important;
  }

  html body.valhalla-v2 footer h3,
  html body.valhalla-v2 footer h4 {
    font-size: 17px !important;
  }

  html body.valhalla-v2 footer .footer-bottom {
    padding: 18px 14px !important;
    text-align: center !important;
  }
}

/* ==========================================================
   Valhalla v5.9.3 — Tavern Footer Nature Pass
   Decorative nature accents only; footer layout remains intact.
   ========================================================== */

html body.valhalla-v2 footer {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
}

/* Soft moss line just outside the existing gold frame. */
html body.valhalla-v2 footer > .container.footer {
  position: relative !important;
  overflow: visible !important;
  box-shadow:
    inset 0 0 0 4px rgba(8,5,3,.24),
    inset 0 0 28px rgba(0,0,0,.30),
    0 0 0 2px rgba(49,83,38,.22),
    0 0 22px rgba(41,82,38,.20),
    0 12px 30px rgba(0,0,0,.22) !important;
}

/* Ivy/moss clusters in the upper corners. */
html body.valhalla-v2 footer > .container.footer::before,
html body.valhalla-v2 footer > .container.footer::after {
  content: "" !important;
  position: absolute !important;
  top: -12px !important;
  width: 150px !important;
  height: 70px !important;
  z-index: 2 !important;
  pointer-events: none !important;
  opacity: .72 !important;
  filter: drop-shadow(0 3px 5px rgba(0,0,0,.55)) !important;
  background:
    radial-gradient(ellipse at 14% 56%, rgba(92,126,63,.92) 0 7%, transparent 8%),
    radial-gradient(ellipse at 28% 34%, rgba(63,103,48,.90) 0 8%, transparent 9%),
    radial-gradient(ellipse at 43% 61%, rgba(76,116,52,.88) 0 8%, transparent 9%),
    radial-gradient(ellipse at 58% 27%, rgba(47,88,39,.90) 0 7%, transparent 8%),
    radial-gradient(ellipse at 72% 54%, rgba(68,105,47,.82) 0 7%, transparent 8%),
    radial-gradient(ellipse at 86% 31%, rgba(41,78,35,.78) 0 6%, transparent 7%),
    linear-gradient(103deg, transparent 8%, rgba(54,91,41,.62) 9% 11%, transparent 12% 29%, rgba(62,99,44,.54) 30% 32%, transparent 33% 55%, rgba(49,84,39,.48) 56% 58%, transparent 59%) !important;
}

html body.valhalla-v2 footer > .container.footer::before {
  left: -20px !important;
  transform: rotate(-4deg) !important;
}

html body.valhalla-v2 footer > .container.footer::after {
  right: -20px !important;
  transform: scaleX(-1) rotate(-4deg) !important;
}

/* A very restrained green vignette around the footer perimeter. */
html body.valhalla-v2 footer::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 0 16%, rgba(49,86,39,.18), transparent 24%),
    radial-gradient(circle at 100% 16%, rgba(49,86,39,.18), transparent 24%),
    linear-gradient(90deg, rgba(33,67,31,.12), transparent 10%, transparent 90%, rgba(33,67,31,.12)) !important;
}

/* Small moss accents on both sides of the copyright strip. */
html body.valhalla-v2 footer .footer-bottom::before,
html body.valhalla-v2 footer .footer-bottom::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 150px !important;
  pointer-events: none !important;
  opacity: .46 !important;
  background:
    radial-gradient(ellipse at 18% 24%, rgba(73,111,51,.75) 0 6%, transparent 7%),
    radial-gradient(ellipse at 38% 78%, rgba(50,91,42,.68) 0 7%, transparent 8%),
    radial-gradient(ellipse at 62% 31%, rgba(84,119,57,.56) 0 6%, transparent 7%),
    linear-gradient(90deg, rgba(38,75,34,.24), transparent) !important;
}

html body.valhalla-v2 footer .footer-bottom::before {
  left: 0 !important;
}

html body.valhalla-v2 footer .footer-bottom::after {
  right: 0 !important;
  transform: scaleX(-1) !important;
}

@media (max-width: 767px) {
  html body.valhalla-v2 footer > .container.footer::before,
  html body.valhalla-v2 footer > .container.footer::after {
    top: -8px !important;
    width: 92px !important;
    height: 48px !important;
    opacity: .58 !important;
  }

  html body.valhalla-v2 footer > .container.footer::before {
    left: -10px !important;
  }

  html body.valhalla-v2 footer > .container.footer::after {
    right: -10px !important;
  }

  html body.valhalla-v2 footer .footer-bottom::before,
  html body.valhalla-v2 footer .footer-bottom::after {
    width: 72px !important;
    opacity: .34 !important;
  }
}

/* ==========================================================
   Valhalla v5.9.4 — Realistic Footer Greenery
   Replaces the abstract v5.9.3 green shapes with transparent
   photographic ivy/fern assets already included in the theme.
   Footer content and layout remain unchanged.
   ========================================================== */

/* Remove all abstract gradient foliage from v5.9.3. */
html body.valhalla-v2 footer::before,
html body.valhalla-v2 footer > .container.footer::before,
html body.valhalla-v2 footer > .container.footer::after,
html body.valhalla-v2 footer .footer-bottom::before,
html body.valhalla-v2 footer .footer-bottom::after {
  background: none !important;
}

html body.valhalla-v2 footer {
  overflow: hidden !important;
}

/* Realistic climbing greenery on both outer footer edges. */
html body.valhalla-v2 footer::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 3 !important;
  pointer-events: none !important;
  left: -8px !important;
  top: 6px !important;
  bottom: 8px !important;
  width: 245px !important;
  height: auto !important;
  opacity: .92 !important;
  background-image: url(valhalla-greenery-edge-left-v1.png?20260721071054) !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 96% !important;
  filter: drop-shadow(0 5px 8px rgba(0,0,0,.68)) saturate(.88) brightness(.82) !important;
}

/* Use the footer panel pseudo-elements for realistic top-corner ivy. */
html body.valhalla-v2 footer > .container.footer::before,
html body.valhalla-v2 footer > .container.footer::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 4 !important;
  pointer-events: none !important;
  top: -36px !important;
  width: 265px !important;
  height: 210px !important;
  opacity: .90 !important;
  background-image: url(valhalla-greenery-corner-right-v1.png?20260721071054) !important;
  background-repeat: no-repeat !important;
  background-position: right top !important;
  background-size: contain !important;
  filter: drop-shadow(0 6px 9px rgba(0,0,0,.72)) saturate(.88) brightness(.78) !important;
}

html body.valhalla-v2 footer > .container.footer::before {
  left: -92px !important;
  right: auto !important;
  transform: scaleX(-1) rotate(-2deg) !important;
  transform-origin: top left !important;
}

html body.valhalla-v2 footer > .container.footer::after {
  right: -92px !important;
  left: auto !important;
  transform: rotate(-2deg) !important;
  transform-origin: top right !important;
}

/* Fern-and-moss clusters at the lower corners, like the mock-up. */
html body.valhalla-v2 footer .footer-bottom::before,
html body.valhalla-v2 footer .footer-bottom::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 2 !important;
  pointer-events: none !important;
  bottom: -62px !important;
  top: auto !important;
  width: 300px !important;
  height: 250px !important;
  opacity: .94 !important;
  background-image: url(valhalla-greenery-fern-corner-v1.png?20260721071054) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: contain !important;
  filter: drop-shadow(0 -2px 9px rgba(0,0,0,.72)) saturate(.90) brightness(.76) !important;
}

html body.valhalla-v2 footer .footer-bottom::before {
  left: -62px !important;
  right: auto !important;
  transform: none !important;
}

html body.valhalla-v2 footer .footer-bottom::after {
  right: -62px !important;
  left: auto !important;
  transform: scaleX(-1) !important;
}

/* Keep decorative plants behind all readable footer content. */
html body.valhalla-v2 footer > .container.footer > .row,
html body.valhalla-v2 footer .footer-bottom > .container,
html body.valhalla-v2 footer .footer-bottom p,
html body.valhalla-v2 footer .footer-bottom .copyright {
  position: relative !important;
  z-index: 6 !important;
}

@media (max-width: 991px) {
  html body.valhalla-v2 footer::before {
    width: 150px !important;
    opacity: .72 !important;
  }

  html body.valhalla-v2 footer > .container.footer::before,
  html body.valhalla-v2 footer > .container.footer::after {
    top: -22px !important;
    width: 165px !important;
    height: 132px !important;
    opacity: .72 !important;
  }

  html body.valhalla-v2 footer > .container.footer::before { left: -62px !important; }
  html body.valhalla-v2 footer > .container.footer::after  { right: -62px !important; }

  html body.valhalla-v2 footer .footer-bottom::before,
  html body.valhalla-v2 footer .footer-bottom::after {
    bottom: -36px !important;
    width: 170px !important;
    height: 150px !important;
    opacity: .74 !important;
  }
}

@media (max-width: 767px) {
  html body.valhalla-v2 footer::before {
    left: -22px !important;
    top: 18px !important;
    width: 112px !important;
    background-size: auto 70% !important;
    opacity: .58 !important;
  }

  html body.valhalla-v2 footer > .container.footer::before,
  html body.valhalla-v2 footer > .container.footer::after {
    top: -12px !important;
    width: 112px !important;
    height: 92px !important;
    opacity: .58 !important;
  }

  html body.valhalla-v2 footer > .container.footer::before { left: -42px !important; }
  html body.valhalla-v2 footer > .container.footer::after  { right: -42px !important; }

  html body.valhalla-v2 footer .footer-bottom::before,
  html body.valhalla-v2 footer .footer-bottom::after {
    bottom: -22px !important;
    width: 112px !important;
    height: 98px !important;
    opacity: .58 !important;
  }

  html body.valhalla-v2 footer .footer-bottom::before { left: -32px !important; }
  html body.valhalla-v2 footer .footer-bottom::after  { right: -32px !important; }
}

/* =========================================================
   STEP 5.9.6 — DIRECT MOCKUP FOOTER
   Replaces the previous JS-generated footer and random greenery.
   ========================================================= */
body.valhalla-v2 > .body-content > .newsletter { display:none !important; }

footer.vh-footer-mockup,
body.valhalla-v2 footer.vh-footer-mockup {
  position:relative;
  overflow:hidden;
  margin:0;
  padding:34px 70px 0;
  background:
    linear-gradient(rgba(12,7,4,.22),rgba(12,7,4,.22)),
    url("valhalla-wood-dark.png") center/cover repeat;
  border-top:1px solid rgba(208,151,28,.72);
  color:#d9cdbd;
  isolation:isolate;
}
footer.vh-footer-mockup::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.35),transparent 12%,transparent 88%,rgba(0,0,0,.35));
  z-index:0;
}
.vh-footer-grid {
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr 1.15fr;
  gap:42px;
  max-width:1220px;
  padding:0 52px 26px;
}
.vh-footer-col { min-width:0; }
.vh-footer-col h3 {
  margin:0 0 12px;
  color:#e8d5aa !important;
  font-family:inherit;
  font-size:15px;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.vh-footer-col p,
.vh-footer-col li,
.vh-footer-col a {
  color:#d4c8b8 !important;
  font-size:13px;
  line-height:1.55;
}
.vh-footer-col ul { margin:0; padding:0; list-style:none; }
.vh-footer-col li { margin:0 0 4px; }
.vh-footer-col a:hover { color:#efbd48 !important; }
.vh-footer-about p { max-width:290px; margin:0 0 12px; }
.vh-footer-about .socials ul { display:flex; gap:8px; }
.vh-footer-about .socials li { margin:0; }
.vh-footer-about .socials a {
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid rgba(191,132,20,.72);
  border-radius:4px;
  background:rgba(45,26,13,.72);
  color:#f1dfbf !important;
}
.vh-footer-newsletter p { margin:0 0 10px; }
#form-newsletter-footer {
  display:flex;
  width:100%;
  max-width:285px;
  border:1px solid rgba(190,132,23,.8);
  border-radius:4px;
  overflow:hidden;
  background:#1e120c;
}
#form-newsletter-footer .input { flex:1; }
#form-newsletter-footer input {
  width:100%;
  height:38px;
  padding:0 12px;
  border:0 !important;
  background:linear-gradient(180deg,#2b1a10,#1d110b) !important;
  color:#eadfce !important;
}
.vh-footer-newsletter-button {
  width:42px;
  border:0;
  border-left:1px solid rgba(190,132,23,.8);
  background:linear-gradient(#e2ad3a,#b97c16);
  color:#17100a;
}
.vh-footer-bottom {
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:26px;
  min-height:48px;
  margin:0 -70px;
  padding:10px 70px;
  border-top:1px solid rgba(190,132,23,.55);
  background:rgba(10,6,4,.6);
  color:#bfb2a2;
  font-size:12px;
}
.vh-footer-bottom nav { display:flex; gap:18px; flex-wrap:wrap; }
.vh-footer-bottom a { color:#cdbfae !important; }
.vh-footer-bottom a:hover { color:#efbd48 !important; }

/* realistic ivy kept strictly on the outer footer edges */
.vh-footer-edge {
  position:absolute;
  top:-8px;
  bottom:0;
  width:132px;
  z-index:1;
  pointer-events:none;
  background-image:url("valhalla-hero-ivy-left-v2.png?20260721071054");
  background-repeat:no-repeat;
  background-position:top right;
  background-size:auto 118%;
  opacity:.72;
  filter:saturate(.85) brightness(.72) contrast(1.08);
}
.vh-footer-edge-left { left:-46px; transform:scaleX(-1); }
.vh-footer-edge-right { right:-46px; }

/* explicitly kill all previous footer pseudo-greenery and cash icons */
body.valhalla-v2 footer:not(.vh-footer-mockup)::before,
body.valhalla-v2 footer:not(.vh-footer-mockup)::after,
body.valhalla-v2 footer .footer::before,
body.valhalla-v2 footer .footer::after,
body.valhalla-v2 footer .footer-bottom::before,
body.valhalla-v2 footer .footer-bottom::after { content:none !important; display:none !important; }
footer.vh-footer-mockup .payment-icons-holder,
footer.vh-footer-mockup .payment-icons { display:none !important; }

@media (max-width:991px) {
  footer.vh-footer-mockup { padding:30px 34px 0; }
  .vh-footer-grid { grid-template-columns:1fr 1fr; gap:30px 36px; padding:0 34px 26px; }
  .vh-footer-bottom { margin:0 -34px; padding:12px 34px; }
  .vh-footer-edge { width:90px; opacity:.48; }
}
@media (max-width:600px) {
  footer.vh-footer-mockup { padding:26px 18px 0; }
  .vh-footer-grid { grid-template-columns:1fr; gap:24px; padding:0 24px 24px; }
  .vh-footer-bottom { margin:0 -18px; padding:14px 24px; flex-direction:column; gap:8px; text-align:center; }
  .vh-footer-bottom nav { justify-content:center; gap:12px; }
  .vh-footer-edge { width:62px; opacity:.32; background-size:auto 88%; }
  .vh-footer-edge-left { left:-30px; }
  .vh-footer-edge-right { right:-30px; }
}

/* =========================================================
   STEP 5.9.7 — COMPACT FULL-WIDTH MOCKUP FOOTER
   ========================================================= */
body.valhalla-v2 footer.vh-footer-mockup {
  min-height:0 !important;
  padding:22px 0 0 !important;
  background:
    linear-gradient(rgba(9,5,3,.28),rgba(9,5,3,.34)),
    url("header-wood-texture.jpg?20260721071054") center/cover repeat !important;
  border-top:1px solid rgba(205,148,29,.78) !important;
  box-shadow:inset 0 10px 24px rgba(0,0,0,.34), inset 0 -8px 18px rgba(0,0,0,.28) !important;
}
body.valhalla-v2 footer.vh-footer-mockup::before {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background-image:url("valhalla-hero-ivy-border.png?20260721071054") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:100% 100% !important;
  opacity:.62 !important;
  filter:saturate(.86) brightness(.72) contrast(1.08) !important;
}
body.valhalla-v2 footer.vh-footer-mockup::after {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:linear-gradient(90deg,rgba(0,0,0,.42),transparent 11%,transparent 89%,rgba(0,0,0,.42)) !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-edge { display:none !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid {
  position:relative !important;
  z-index:3 !important;
  display:grid !important;
  grid-template-columns:1.35fr 1fr 1fr 1.15fr !important;
  align-items:start !important;
  gap:54px !important;
  width:calc(100% - 180px) !important;
  max-width:1420px !important;
  margin:0 auto !important;
  padding:0 28px 20px !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col h3 {
  margin:0 0 8px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  letter-spacing:.035em !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col p,
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col li,
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col a {
  font-size:11px !important;
  line-height:1.45 !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col li { margin:0 0 3px !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-about p {
  max-width:250px !important;
  margin:0 0 9px !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-about .socials a {
  width:26px !important;
  height:26px !important;
  font-size:11px !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-about .socials ul { gap:6px !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-newsletter p { margin:0 0 7px !important; }
body.valhalla-v2 footer.vh-footer-mockup #form-newsletter-footer {
  max-width:260px !important;
  height:34px !important;
}
body.valhalla-v2 footer.vh-footer-mockup #form-newsletter-footer input { height:32px !important; font-size:11px !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-newsletter-button { width:38px !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-bottom {
  position:relative !important;
  z-index:3 !important;
  min-height:34px !important;
  margin:0 !important;
  padding:8px 24px !important;
  gap:22px !important;
  background:rgba(8,4,3,.54) !important;
  font-size:10px !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-bottom nav { gap:14px !important; }

@media (max-width:1100px) {
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid {
    width:calc(100% - 80px) !important;
    gap:28px !important;
    grid-template-columns:1.25fr 1fr 1fr 1.1fr !important;
  }
}
@media (max-width:820px) {
  body.valhalla-v2 footer.vh-footer-mockup::before { background-size:cover !important; opacity:.42 !important; }
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid {
    width:calc(100% - 36px) !important;
    grid-template-columns:1fr 1fr !important;
    gap:22px 30px !important;
    padding:0 18px 20px !important;
  }
}
@media (max-width:560px) {
  body.valhalla-v2 footer.vh-footer-mockup { padding-top:24px !important; }
  body.valhalla-v2 footer.vh-footer-mockup::before { opacity:.28 !important; background-size:auto 100% !important; }
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid {
    width:100% !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
    padding:0 34px 22px !important;
  }
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-bottom {
    flex-direction:column !important;
    gap:6px !important;
    text-align:center !important;
  }
}

/* =========================================================
   STEP 5.9.8 — FOOTER READABILITY, FOUR-COLUMN LOCK & IVY
   ========================================================= */
body.valhalla-v2 footer.vh-footer-mockup {
  padding-top:24px !important;
  overflow:hidden !important;
  background:
    linear-gradient(90deg,rgba(5,3,2,.28),rgba(20,11,6,.08) 18%,rgba(20,11,6,.08) 82%,rgba(5,3,2,.28)),
    url("header-wood-texture.jpg?20260721071054") center/cover repeat !important;
}

/* Replace the stretched border image with two clear, natural edge vines. */
body.valhalla-v2 footer.vh-footer-mockup::before,
body.valhalla-v2 footer.vh-footer-mockup::after {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  top:-8px !important;
  bottom:0 !important;
  width:150px !important;
  z-index:2 !important;
  pointer-events:none !important;
  background-repeat:no-repeat !important;
  opacity:.92 !important;
  filter:saturate(1.22) brightness(1.08) contrast(1.05) drop-shadow(0 3px 5px rgba(0,0,0,.55)) !important;
}
body.valhalla-v2 footer.vh-footer-mockup::before {
  left:-18px !important;
  right:auto !important;
  background-image:url("valhalla-hero-ivy-left-v2.png?20260721071054") !important;
  background-position:left top !important;
  background-size:auto 112% !important;
}
body.valhalla-v2 footer.vh-footer-mockup::after {
  right:-18px !important;
  left:auto !important;
  background-image:url("valhalla-hero-ivy-right.png?20260721071054") !important;
  background-position:right top !important;
  background-size:auto 112% !important;
}

body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid {
  grid-template-columns:minmax(230px,1.25fr) minmax(170px,.9fr) minmax(170px,.9fr) minmax(260px,1.15fr) !important;
  width:calc(100% - 210px) !important;
  max-width:1450px !important;
  gap:52px !important;
  align-items:start !important;
  padding:0 24px 24px !important;
}

/* Nova contains legacy widths/floats for footer blocks; lock every block in row one. */
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col {
  float:none !important;
  clear:none !important;
  display:block !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-about { grid-column:1 !important; grid-row:1 !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid > .vh-footer-col:nth-child(2) { grid-column:2 !important; grid-row:1 !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid > .vh-footer-col:nth-child(3) { grid-column:3 !important; grid-row:1 !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-newsletter {
  grid-column:4 !important;
  grid-row:1 !important;
  justify-self:stretch !important;
}

body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col h3 {
  margin-bottom:10px !important;
  font-size:15px !important;
  line-height:1.25 !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col p,
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col li,
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col a {
  font-size:13px !important;
  line-height:1.48 !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-col li { margin-bottom:4px !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-about p {
  max-width:290px !important;
  margin-bottom:11px !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-about .socials a {
  width:30px !important;
  height:30px !important;
  font-size:13px !important;
}
body.valhalla-v2 footer.vh-footer-mockup #form-newsletter-footer {
  max-width:310px !important;
  height:38px !important;
}
body.valhalla-v2 footer.vh-footer-mockup #form-newsletter-footer input {
  height:36px !important;
  font-size:13px !important;
}
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-newsletter-button { width:42px !important; }
body.valhalla-v2 footer.vh-footer-mockup .vh-footer-bottom {
  min-height:38px !important;
  font-size:11px !important;
}

@media (max-width:1180px) {
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid {
    width:calc(100% - 130px) !important;
    gap:28px !important;
    grid-template-columns:1.2fr .9fr .9fr 1.1fr !important;
  }
  body.valhalla-v2 footer.vh-footer-mockup::before,
  body.valhalla-v2 footer.vh-footer-mockup::after { width:105px !important; opacity:.78 !important; }
}
@media (max-width:900px) {
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid {
    width:calc(100% - 70px) !important;
    grid-template-columns:1fr 1fr !important;
    gap:26px 36px !important;
  }
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-about,
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid > .vh-footer-col:nth-child(2),
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid > .vh-footer-col:nth-child(3),
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-newsletter {
    grid-column:auto !important;
    grid-row:auto !important;
  }
}
@media (max-width:560px) {
  body.valhalla-v2 footer.vh-footer-mockup .vh-footer-grid {
    width:100% !important;
    grid-template-columns:1fr !important;
    padding-left:42px !important;
    padding-right:42px !important;
  }
  body.valhalla-v2 footer.vh-footer-mockup::before,
  body.valhalla-v2 footer.vh-footer-mockup::after {
    width:58px !important;
    opacity:.52 !important;
    background-size:auto 82% !important;
  }
}


/* ==========================================================================
   v5.10.0 — Homepage flow after removal of duplicate agenda banner
   ========================================================================== */
body.layout-index .vh-featured-collections + .vh-products-section,
body.layout-home .vh-featured-collections + .vh-products-section {
  margin-top: 0 !important;
}

@media (max-width: 767px) {
  body.layout-index .vh-featured-collections + .vh-products-section,
  body.layout-home .vh-featured-collections + .vh-products-section {
    padding-top: 22px !important;
  }
}

/* ================================================================
   Valhalla Theme v2.0 Ultimate — Step 5.10.1
   Homepage "Nieuwe producten" cards — category-page card layout
   ================================================================ */

/* Use the same single framed wood card and quiet internal structure as the
   category overview. This block is intentionally scoped to homepage product
   sections so collection/search pages remain untouched. */
html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-quick {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid > .product-grid {
  display: flex !important;
  margin-top: 18px !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-holder {
  display: grid !important;
  grid-template-rows: 1fr auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 590px !important;
  border: 1px solid rgba(199,142,31,.78) !important;
  border-radius: 10px !important;
  background:
    linear-gradient(rgba(20,15,11,.16), rgba(8,7,6,.36)),
    url(header-wood-texture.jpg?20260721071054) center top / auto 100% repeat-y !important;
  box-shadow:
    inset 0 0 0 4px rgba(10,8,6,.65),
    inset 0 0 0 5px rgba(199,142,31,.22),
    0 8px 18px rgba(0,0,0,.24) !important;
  overflow: hidden !important;
  transform: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-holder:hover {
  border-color: rgba(224,172,65,.92) !important;
  box-shadow:
    inset 0 0 0 4px rgba(10,8,6,.65),
    inset 0 0 0 5px rgba(224,172,65,.28),
    0 10px 24px rgba(0,0,0,.32) !important;
  transform: translateY(-2px) !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block {
  display: grid !important;
  grid-template-rows: 255px 24px 44px 30px 78px 48px !important;
  gap: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 8px 10px 5px !important;
  align-content: start !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-image {
  grid-row: 1 !important;
  height: 255px !important;
  min-height: 255px !important;
  margin: 0 !important;
  padding: 10px !important;
  border-radius: 7px !important;
  background: linear-gradient(145deg,#fff 0%,#f4f3ef 72%,#deddd8 100%) !important;
  box-shadow: inset 0 0 16px rgba(0,0,0,.12) !important;
  overflow: hidden !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-image > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block > .brand {
  grid-row: 2 !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding-top: 7px !important;
  color: #a99b86 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 17px !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block > h4,
html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block > h4.with-brand {
  grid-row: 3 !important;
  display: block !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
  padding-top: 1px !important;
  overflow: hidden !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block > h4 a.title {
  display: -webkit-box !important;
  color: #f5ead7 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.28 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-reviews {
  grid-row: 4 !important;
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  margin: 0 !important;
  padding: 2px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .stars {
  display: flex !important;
  align-items: center !important;
  gap: 3px !important;
  height: 24px !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .stars i.fa-star {
  display: inline-grid !important;
  width: 18px !important;
  height: 22px !important;
  padding: 0 !important;
  place-items: center !important;
  border: 0 !important;
  background: transparent !important;
  font-family: Arial,sans-serif !important;
  font-style: normal !important;
  font-size: 0 !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .stars i.fa-star::before {
  content: "★" !important;
  color: #d6a744 !important;
  font-family: Arial,sans-serif !important;
  font-size: 17px !important;
  line-height: 1 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.7) !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .stars i.fa-star.empty::before {
  color: #817864 !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-desc {
  grid-row: 5 !important;
  position: static !important;
  display: -webkit-box !important;
  width: 100% !important;
  height: 78px !important;
  min-height: 78px !important;
  max-height: 78px !important;
  margin: 0 !important;
  padding: 11px 0 0 !important;
  color: #d3c7b7 !important;
  font-size: 12px !important;
  line-height: 1.48 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  overflow: hidden !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-price {
  grid-row: 6 !important;
  position: static !important;
  display: flex !important;
  align-items: flex-start !important;
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 10px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #f3bd4f !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-price strong {
  color: #f3bd4f !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order {
  position: static !important;
  display: flex !important;
  align-self: end !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 8px 10px 12px !important;
  border: 0 !important;
  border-top: 1px solid rgba(201,145,35,.22) !important;
  background: rgba(10,7,4,.25) !important;
  box-shadow: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order form {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 48px !important;
  gap: 10px !important;
  align-items: center !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order .qty-fast,
html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order .quick-cart {
  align-self: center !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order .qty-fast {
  width: 100% !important;
  padding: 0 8px !important;
  line-height: 44px !important;
  text-align: center !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-cart {
  position: relative !important;
  display: grid !important;
  width: 48px !important;
  min-width: 48px !important;
  padding: 0 !important;
  place-items: center !important;
  text-indent: 0 !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-cart i {
  display: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-cart::after {
  content: "" !important;
  position: static !important;
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff4dc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='19' cy='20' r='1'/%3E%3Cpath d='M3 4h2l2.4 10.4a2 2 0 0 0 2 1.6h7.7a2 2 0 0 0 2-1.6L21 7H6'/%3E%3C/svg%3E") !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}

@media (max-width:1199px) and (min-width:768px) {
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-holder {
    min-height: 565px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block {
    grid-template-rows: 230px 24px 44px 30px 78px 48px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-image {
    height: 230px !important;
    min-height: 230px !important;
  }
}

@media (max-width:767px) {
  html body.valhalla-v2 .vh-products-section .vh-product-grid > .product-grid {
    display: flex !important;
    margin-top: 14px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-holder {
    min-height: 535px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block {
    grid-template-rows: 200px 23px 44px 30px 78px 48px !important;
    padding: 7px 8px 5px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-image {
    height: 200px !important;
    min-height: 200px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order {
    padding: 8px 8px 10px !important;
  }
}

/* ================================================================
   Valhalla Theme v2.0 Ultimate — Step 5.10.2
   Homepage new-products section polish
   ================================================================ */

/* Pull the section closer to the category block above and the following
   homepage module below. */
html body.valhalla-v2 .vh-featured-collections + .vh-products-section {
  position: relative !important;
  margin-top: 0 !important;
  margin-bottom: 22px !important;
  padding: 26px 0 30px !important;
  isolation: isolate !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(214,161,54,.46) !important;
  border-bottom: 1px solid rgba(214,161,54,.42) !important;
  background:
    linear-gradient(90deg,rgba(7,16,9,.30),transparent 12%,transparent 88%,rgba(7,16,9,.30)),
    linear-gradient(rgba(16,11,8,.18),rgba(7,5,4,.26)),
    url(header-wood-texture.jpg?20260721071054) center / auto 100% repeat !important;
  box-shadow:
    inset 0 18px 28px rgba(0,0,0,.20),
    inset 0 -18px 28px rgba(0,0,0,.22) !important;
}

/* Realistic greenery only at the outside edges, keeping product content calm. */
html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before,
html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 115px !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-repeat: no-repeat !important;
  background-size: auto 100% !important;
  opacity: .64 !important;
  filter: saturate(1.22) brightness(1.10) drop-shadow(0 4px 10px rgba(0,0,0,.55)) !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before {
  left: 0 !important;
  background-image: url(valhalla-hero-ivy-left-v2.png?20260721071054) !important;
  background-position: left center !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
  right: 0 !important;
  background-image: url(valhalla-hero-ivy-right.png?20260721071054) !important;
  background-position: right center !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section > .container {
  position: relative !important;
  z-index: 1 !important;
}

/* Give the quantity field the same warm brown treatment as other controls. */
html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order .qty-fast,
html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order input.qty-fast,
html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order input[type="number"],
html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order input[type="text"] {
  border: 1px solid rgba(207,151,39,.66) !important;
  border-radius: 6px !important;
  background:
    linear-gradient(180deg,rgba(83,48,27,.96),rgba(45,27,18,.98)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,226,159,.10),
    inset 0 0 12px rgba(0,0,0,.25) !important;
  color: #f6ead7 !important;
  -webkit-text-fill-color: #f6ead7 !important;
  font-weight: 800 !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order .qty-fast:focus,
html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order input:focus {
  border-color: #e0aa3d !important;
  box-shadow: 0 0 0 2px rgba(224,170,61,.18), inset 0 0 12px rgba(0,0,0,.22) !important;
  outline: 0 !important;
}

/* Match category overview: stock badge sits neatly at the top of the image. */
html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-image {
  position: relative !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-stock {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 6 !important;
  display: block !important;
  width: auto !important;
  max-width: calc(100% - 24px) !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-stock > div {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 30px !important;
  margin: 0 !important;
  padding: 6px 11px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 5px !important;
  box-shadow: 0 4px 10px rgba(0,0,0,.34) !important;
  color: #fff8e8 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-stock .in-stock {
  background: linear-gradient(180deg,#246d36,#174723) !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-stock .out-of-stock {
  background: linear-gradient(180deg,#755318,#4d3410) !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-stock i {
  margin-right: 6px !important;
}

@media (max-width: 767px) {
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section {
    margin-bottom: 16px !important;
    padding-top: 20px !important;
    padding-bottom: 22px !important;
  }
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before,
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
    width: 62px !important;
    opacity: .40 !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-stock {
    top: 9px !important;
    left: 9px !important;
    max-width: calc(100% - 18px) !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-stock > div {
    min-height: 27px !important;
    padding: 5px 8px !important;
    font-size: 10px !important;
  }
}

/* ================================================================
   Valhalla Theme v2.0 Ultimate — Step 5.10.3
   Homepage greenery clipping + product-card vertical spacing
   ================================================================ */

/* Keep both ivy overlays fully inside the visible section. The image keeps
   its current visual height, but receives breathing room at the page edge so
   no leaves are cut off by the section or viewport. */
html body.valhalla-v2 .vh-featured-collections + .vh-products-section {
  overflow: hidden !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before,
html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
  top: 8px !important;
  bottom: 8px !important;
  width: 132px !important;
  z-index: 0 !important;
  background-size: contain !important;
  background-position-y: center !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before {
  left: 10px !important;
  background-position-x: left !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
  right: 10px !important;
  background-position-x: right !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section > .container {
  z-index: 2 !important;
}

/* Remove the unused flexible space below the price. The selector strip now
   sits closer to the price while all card content remains aligned. */
html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-holder {
  min-height: 560px !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-price {
  height: 42px !important;
  min-height: 42px !important;
  padding-top: 8px !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order {
  min-height: 54px !important;
  padding-top: 6px !important;
  padding-bottom: 8px !important;
}

@media (max-width:1199px) and (min-width:768px) {
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-holder {
    min-height: 540px !important;
  }
}

@media (max-width:767px) {
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before,
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
    top: 6px !important;
    bottom: 6px !important;
    width: 70px !important;
  }
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before {
    left: 4px !important;
  }
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
    right: 4px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-holder {
    min-height: 515px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order {
    min-height: 52px !important;
    padding-top: 5px !important;
    padding-bottom: 7px !important;
  }
}

/* ================================================================
   Valhalla Theme v2.0 Ultimate — Step 5.10.4
   Definitive homepage ivy visibility + price/control spacing fix
   ================================================================ */

/* Use dedicated padded ivy assets. Transparent breathing room is built into
   the PNGs, so no leaf can touch or be clipped by the viewport edge. */
html body.valhalla-v2 .vh-featured-collections + .vh-products-section {
  overflow: hidden !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before,
html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
  top: 10px !important;
  bottom: 10px !important;
  width: 170px !important;
  z-index: 1 !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position-y: center !important;
  opacity: .72 !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before {
  left: 8px !important;
  background-image: url(valhalla-home-products-ivy-left-v3.png?20260721071054) !important;
  background-position-x: left !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
  right: 8px !important;
  background-image: url(valhalla-home-products-ivy-right-v3.png?20260721071054) !important;
  background-position-x: right !important;
}

html body.valhalla-v2 .vh-featured-collections + .vh-products-section > .container {
  position: relative !important;
  z-index: 2 !important;
}

/* The previous min-height left a flexible first grid row below the fixed price
   row. Let the six fixed content rows determine the card body height instead. */
html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-holder {
  grid-template-rows: auto auto !important;
  min-height: 0 !important;
  height: auto !important;
  align-self: stretch !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block {
  height: auto !important;
  min-height: 0 !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-price {
  height: 38px !important;
  min-height: 38px !important;
  padding-top: 5px !important;
  align-items: flex-start !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order {
  min-height: 50px !important;
  padding-top: 4px !important;
  padding-bottom: 6px !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order form {
  height: 40px !important;
  min-height: 40px !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order .qty-fast,
html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order .quick-cart {
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
}

html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order .qty-fast {
  line-height: 40px !important;
}

@media (max-width: 767px) {
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before,
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
    top: 8px !important;
    bottom: 8px !important;
    width: 92px !important;
    opacity: .56 !important;
  }
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::before {
    left: 3px !important;
  }
  html body.valhalla-v2 .vh-featured-collections + .vh-products-section::after {
    right: 3px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .product-block-price {
    height: 35px !important;
    min-height: 35px !important;
    padding-top: 4px !important;
  }
  html body.valhalla-v2 .vh-products-section .vh-product-grid .quick-order {
    min-height: 47px !important;
    padding-top: 3px !important;
    padding-bottom: 5px !important;
  }
}
