/* === IMPROVED PRODUCT DESCRIPTION SECTION - Warm & Premium === */
.ec-store .product-details__general-info {
  background-color: #f8f5f0;
  /* Warm off-white / parchment */
  border-radius: 12px;
  padding: 32px 28px;
  margin: 24px 0;
  border: 1px solid #e8e0d0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}

.ec-store .product-details-module__title.ec-header-h6 {
  color: #2c3e2f;
  /* deep forest green */
  font-size: 19px;
  font-weight: 700;
  margin-bottom: 18px;
  letter-spacing: 0.3px;
}

.ec-store .product-details__product-description {
  color: #3f3f3f;
  line-height: 1.75;
  font-size: 15.2px;
}

.ec-store .product-details__product-description p {
  margin-bottom: 18px;
}

/* Main product title above the box */
.ec-store .product-details__product-title.ec-header-h3 {
  color: #2c3e2f;
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* Show More link */
.ec-store .product-details-module__btn-more a.ec-link {
  color: #2c3e2f;
  font-weight: 600;
  text-decoration: none;
}

.ec-store .product-details-module__btn-more a.ec-link:hover {
  color: #1e2a20;
  text-decoration: underline;
}

/* ====================== */
/* COMPLETELY HIDE UPC ROW */
/* ====================== */
.ec-store .details-product-attribute:has(span.details-product-attribute__title:contains("UPC")),
.ec-store .details-product-attribute__title:contains("UPC") ~ .details-product-attribute__value,
.ec-store .details-product-attribute span.details-product-attribute__title,
.ec-store .details-product-attribute span.details-product-attribute__value[itemprop="UPC"] {
  display: none !important;
}

/* Stronger fallback selector using the exact structure you provided */
.ec-store .details-product-attribute > span.details-product-attribute__title,
.ec-store .details-product-attribute > span.details-product-attribute__value[itemprop="UPC"] {
  display: none !important;
}

/* Style the "In stock: X available" area */
.ec-store .details-product-purchase__place {
  background-color: #e8f5e9;
  /* light green background */
  color: #2e7d32;
  /* dark green text */
  font-weight: 700;
  /* bold */
  font-size: 15px;
  /* adjust size */
  padding: 10px 12px;
  /* inner spacing */
  border-radius: 6px;
  /* rounded corners */
  margin: 12px 0;
  /* spacing above/below */
  display: inline-block;
  /* keeps it from stretching full width */
  width: auto;
}

/* Style the "Sold Out" message */
.ec-store .details-product-purchase__sold-out {
  background-color: #ffebee;
  /* light red/pink background */
  color: #c62828;
  /* dark red text */
  font-weight: 700;
  /* bold */
  font-size: 15px;
  padding: 10px 12px;
  border-radius: 6px;
  margin: 12px 0;
  display: inline-block;
  width: auto;
}

/*Changes the font size of the horizontal menu*/
.horizontal-menu .horizontal-menu-item a {
  font-size: 16px !important;
}

.ec-size .ec-store .product-details__product-description:not(.product-details__product-description--blank) {
  font-size: 16px;
}

.ec-size.ec-size--s .ec-store .product-details__description .product-details__general-info .product-details-module__title {
  font-size: 24px;
}

/*change search box border*/
input.ecwid-search-widget__input[type="text"] {
  padding: 5px 10px;
  border: 1px solid #ededed;
  border-radius: 5px !important;
  height: 3.4em;
}

.ecwid-search-widget__input:active,
.ecwid-search-widget__input {
  border: 1px solid #ededed !important;
}

.ecwid-search-widget__input::placeholder {
  color: #4f4f4f;
}

.ecwid-search-widget__btn path {
  fill: #4f4f4f !important;
}

.ecwid-search-widget__input {
  box-shadow: none !important;
}

/*Larger coupon and gift card fields*/
.ec-size .ec-store .ec-cart-coupon__wrap {
  visibility: visible;
}

.ec-size .ec-store .ec-cart-coupon:not(.ec-cart-coupon--applied) .ec-cart-coupon__button--apply {
  display: block;
}

.ec-size .ec-store .ec-cart-coupon .ec-cart-coupon__wrap {
  display: flex;
  align-items: center;
  height: auto;
}

.ec-size .ec-store .ec-cart-coupon .ec-cart-coupon__text {
  display: none;
}

/*to get back the filters on the search page*/
.ec-has-filters-popup {
  padding-top: 880px;
}

/*Keeps the mobile menu above the theme*/
nav.horizontal-menu.horizontal-menu--mobile {
  z-index: 100000000;
}
