/* BestHealth Nutritionals - additions for the static (no-cart) version of the site */

/* header: phone link in the top bar */
.header.links .ssn-phone-link a { font-weight: 600; }

/* ---------- product page: call to order box ---------- */
.ssn-call-to-order {
  margin: 20px 0 25px;
  padding: 20px 22px;
  border: 1px solid #c9d3e3;
  border-top: 3px solid #2d4873;
  border-radius: 5px;
  background: #f6f8fb;
}
.ssn-call-to-order .ssn-cto-title {
  font-size: 16px; font-weight: 700; color: #313131; text-transform: uppercase; margin: 0 0 8px;
}
.ssn-call-to-order .ssn-cto-text { font-size: 14px; line-height: 1.5; margin: 0 0 14px; color: #444; }
.ssn-call-to-order .ssn-cto-phone.action.primary {
  display: inline-block; font-size: 20px; font-weight: 700; line-height: 1; padding: 14px 24px;
  background-color: #2d4873; border-color: #2d4873; color: #fff; border-radius: 5px; text-decoration: none;
}
.ssn-call-to-order .ssn-cto-phone.action.primary:hover { background-color: #1f3456; border-color: #1f3456; color: #fff; }
.ssn-call-to-order .ssn-cto-phone em { margin-right: 8px; font-size: 18px; }
.ssn-call-to-order .ssn-cto-hours { margin: 10px 0 0; font-size: 13px; color: #777; }

/* ---------- product page: image gallery (replaces Fotorama) ---------- */
.ssn-gallery { position: relative; }
.ssn-gallery .ssn-stage { position: relative; border: 1px solid #ddd; border-radius: 5px; background: #fff; overflow: hidden; }
.ssn-gallery .ssn-main { display: block; text-align: center; cursor: zoom-in; }
.ssn-gallery .ssn-main img { display: block; width: 100%; height: auto; margin: 0 auto; }
.ssn-gallery .ssn-zoom { position: absolute; top: 10px; right: 12px; font-size: 16px; color: #777; cursor: pointer; }
.ssn-gallery .ssn-arr {
  position: absolute; top: 50%; margin-top: -20px; width: 30px; height: 40px; padding: 0;
  background: transparent; border: 0; box-shadow: none; color: #333; font-size: 26px; cursor: pointer; opacity: .7;
}
.ssn-gallery .ssn-arr:hover { opacity: 1; background: transparent; }
.ssn-gallery .ssn-arr.disabled { opacity: .15; cursor: default; }
.ssn-gallery .ssn-prev { left: 4px; }
.ssn-gallery .ssn-next { right: 4px; }
.ssn-gallery .ssn-caption { display: none; }
.ssn-gallery .ssn-thumbs { margin-top: 0; font-size: 0; }
.ssn-gallery .ssn-thumb { display: inline-block; width: 75px; margin: 2px 2px 0 0; border: 1px solid #ddd; border-radius: 3px; padding: 1px; vertical-align: top; }
.ssn-gallery .ssn-thumb img { display: block; width: 100%; height: auto; }
.ssn-gallery .ssn-thumb.active { border-color: #2d4873; }

.ssn-lightbox {
  position: fixed; inset: 0; z-index: 100000; background: rgba(0,0,0,.85);
  display: flex; align-items: center; justify-content: center; cursor: zoom-out;
}
.ssn-lightbox img { max-width: 92vw; max-height: 92vh; background: #fff; }
.ssn-lightbox .ssn-lb-close {
  position: absolute; top: 12px; right: 18px; background: none; border: 0; box-shadow: none;
  color: #fff; font-size: 40px; line-height: 1; cursor: pointer;
}

/* ---------- search results ---------- */
.ssn-search .page-title { margin-bottom: 25px; }
.ssn-search-pages { list-style: none; padding: 0; margin: 30px 0 0; }
.ssn-search-pages li { padding: 12px 0; border-bottom: 1px solid #eee; }
.ssn-search-pages li a { font-size: 16px; font-weight: 600; }
.ssn-search-pages li p { margin: 4px 0 0; color: #666; font-size: 13px; }

/* listing cards: "View Details" uses the theme's Add to Cart button look */
.product-item-actions .actions-primary a.action.tocart { display: inline-block; text-decoration: none; }

/* gallery stage is square like the original Fotorama stage */
.ssn-gallery .ssn-stage { aspect-ratio: 1 / 1; }
.ssn-gallery .ssn-main { height: 100%; display: flex; align-items: center; justify-content: center; }
.ssn-gallery .ssn-main img { width: auto; max-width: 100%; height: auto; max-height: 100%; }
.ssn-gallery .ssn-thumb { width: 75px; height: 75px; }
.ssn-gallery .ssn-thumb img { width: 100%; height: 100%; object-fit: contain; }
/* no cart: hide the cart glyph on the "View Details" buttons */
.product-item-actions .actions-primary a.action.tocart:before,
.product-item-actions .actions-primary a.action.tocart > span:before { display: none !important; }


/* no reCAPTCHA badge */
.grecaptcha-badge { display: none !important; visibility: hidden !important; }

/* home banner: full width now that the sign-up box beside it is gone */
.slider-with-side .slider-area.ssn-full { float: none; width: 100%; text-align: center; }
.slider-with-side .slider-area.ssn-full img { max-width: 100%; height: auto; }

/* top bar keeps the original height (the cart icon used to set it) */
.panel.header .header.links > li { line-height: 24px; }
/* home banner rotator: centered at its natural size (850 x 350) now that the sign-up box is gone */
.slider-with-side .slider-area.ssn-full #salesbanner { max-width: 850px; margin: 0 auto; }

/* shop-by grids: the live site positions these with a script; a wrapping flex row keeps them aligned */
.shopbyattribute-box .filtr-container { display: flex; flex-wrap: wrap; }

/* home banner slider (FlexSlider replacement) */
.ssn-flex .flex-viewport { overflow: hidden; position: relative; }
.ssn-flex .flex-viewport .slides > li { display: none; }
.ssn-flex .flex-viewport .slides > li.flex-active-slide { display: block; }
/* mobile: open category sub menus with the + toggle */
.sw-megamenu li.level0.parent.ssn-open > .submenu { display: block !important; visibility: visible !important; opacity: 1 !important; position: static !important; }
/* Product gallery stage proportions (as the original 666 x 600 stage) */
.ssn-gallery .ssn-stage { aspect-ratio: 666 / 600; }
/* sub-category tiles without their own picture show the first product of that category */
ol.category-child-list img.ssn-tile-product { width: 220px; height: 220px; max-width: 100%; object-fit: contain; background: #fff; border: 1px solid #e5e5e5; box-sizing: border-box; padding: 8px; }
