/* [Global] */
/* ABECTA HOUSE — BRAND TOKENS */
:root{
  /* ===============================
  CORE BRAND
  =============================== */
  --ab-charcoal:#2F353B;
  --ab-sage:#4A5D54;
  --ab-gold:#C7A262;
  --ab-warmwhite:#F9F8F4;

  /* ===============================
  FUNCTIONAL NEUTRALS
  =============================== */
  --ab-text:var(--ab-charcoal);
  --ab-muted:#666666;
  --ab-border:#E6E1D8;
  --ab-panel:#F4F2EE;
  --ab-white:#FFFFFF;

  /* ===============================
  INTERACTION
  =============================== */
  --ab-link:var(--ab-sage);
  --ab-link-hover:#C7A262; 
  /* was #3F5149 rgba(199,162,98,0.45) */

  /* ===============================
  HEADER / UI HELPERS
  (mapped from existing CSS)
  =============================== */
  /* search icon, subtle UI icons */
  --ab-input-border:var(--ab-icon);
  /* main nav text */
  /* existing hover/accent sage */
  /* mobile navbar background */
  --ab-btn-text:#000000;
  --ab-btn-border:#000000;
  --ab-btn-hover:#EEEEEE;
  --ab-border-soft:#EEEEEE;
  --ab-mobile-row:#DDDDDD;
  --ab-mobile-row-border:#CCCCCC;

  /* Trust / utility bar */
  --ab-trustbar-bg: rgba(74, 93, 84, 0.85);


  /* ===============================
  EFFECTS
  =============================== */
  --ab-shadow:0 10px 10px rgb(0 0 0 / .3);
  --ab-hover-fill: rgb(221 221 221 / 0.2);
  --ab-shadow-soft: 0 0 20px rgb(0 0 0 / 0.12);
  --ab-shadow-soft-hover: 0 0 10px rgb(0 0 0 / 0.18);
  /* ===============================
  TYPOGRAPHY
  =============================== */
  --ab-font:'Nunito',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
/* =========================================
GLOBAL BRAND UTILITIES
========================================= */

.tm {
  font-size: 65%;
  position: relative;
  top: -0.4em;
  letter-spacing: -0.05em;
}



/* =========================================
GLOBAL KEYBOARD FOCUS (WCAG / ADA)
Interactive elements only
========================================= */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:not([tabindex="-1"]):focus-visible { outline: 2px solid #FFFFFF; outline-offset: 2px; box-shadow: 0 0 0 5px var(--ab-charcoal); }
/* =========================================
TAB NAVIGATION — FORCE VISIBLE KEYBOARD FOCUS
========================================= */
#tabs.nav-tabs > li > a:focus-visible, .nav-tabs > li > a:focus-visible { outline: 2px solid #FFFFFF !important; outline-offset: 2px !important; box-shadow: 0 0 0 5px var(--ab-charcoal) !important; position: relative; z-index: 2; }


/* =========================================
GLOBAL TYPOGRAPHY & BASE ELEMENTS
========================================= */

p { line-height: 1.9; }

/* -----------------------------------------
Accessible inline links — legal and policy pages
Prevents conflict with header, nav, footer, tiles, and widgets
----------------------------------------- */

.legal-page-container a,
.ab-policy a,
.content-page a {
  color: var(--ab-link);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.legal-page-container a:visited,
.ab-policy a:visited,
.content-page a:visited {
  color: var(--ab-link);
}

.legal-page-container a:hover,
.legal-page-container a:focus,
.legal-page-container a:visited:hover,
.legal-page-container a:visited:focus,
.ab-policy a:hover,
.ab-policy a:focus,
.ab-policy a:visited:hover,
.ab-policy a:visited:focus,
.content-page a:hover,
.content-page a:focus,
.content-page a:visited:hover,
.content-page a:visited:focus {
  color: var(--ab-gold);
  text-decoration: underline;
}

label { display: block; }

input[type="radio"] + label,
input[type="checkbox"] + label {
  display: inline-block;
  padding-left: 10px;
  font-weight: normal;
}

button[disabled],
html input[disabled] {
  background: rgb(235, 235, 228);
}

[class*=col-md],
[class*=col-lg] {
  margin-bottom: inherit !important;
}


/* =========================================================
MEGA MENU — DESKTOP HOVER vs MOBILE TAP (FINAL)
========================================================= */

/* Desktop-only hover behavior */
@media (hover: hover) and (pointer: fine) {

  .navbar-nav .dropdown:hover > .dropdown-menu { display: block !important; }

  .navbar-nav .dropdown:hover > a[data-toggle="dropdown"] + .dropdown-menu { display: none !important; }

  .navbar-nav .dropdown.open > a[data-toggle="dropdown"] + .dropdown-menu { display: block !important; }

  .navbar-nav .dropdown-submenu { position: relative; }

  .navbar-nav .dropdown-submenu:hover > .dropdown-menu { display: block !important; top: -6px !important; margin: 0 !important; left: 100% !important; }
}

/* Touch devices: dropdowns stack normally */
@media (hover: none) and (pointer: coarse) {
  .navbar-nav .dropdown.open > .dropdown-menu, .navbar-nav .dropdown.show > .dropdown-menu { display: block !important; position: static !important; float: none !important; width: 100% !important; }
}

/* Touch + small screens: stack mega-menu columns */
@media (hover: none) and (pointer: coarse) and (max-width: 767px) {

  .navbar-nav .dropdown-menu, .megamenu, .mega-menu { width: 100% !important; max-width: none !important; overflow: visible !important; height: auto !important; max-height: none !important; }

  .navbar-nav .dropdown-menu .row { margin-left: 0 !important; margin-right: 0 !important; }

  .navbar-nav .dropdown-menu [class*="col-"] { float: none !important; width: 100% !important; display: block !important; }
}


.modal-body { min-height: 70px; }
.modal-body .progress { top: 50%; left: 30px; right: 30px; height: 30px; margin-top: -15px; }
.modal-body iframe { z-index: 1; }
.PicturePopup iframe { max-width: 100%; }
.alert a { color: inherit; }
.text-muted a { color: inherit; }
.ui-autocomplete { z-index: 10; }
.LayoutTopTop { padding-top: 30px; }
.navbar-header-leftcol { background: #F5F5F5; color: #777; margin-bottom: 30px; }
.navbar-header-leftcol  .navbar-toggle { background: none; border: 1px solid #ddd; }
.navbar-header-leftcol  .navbar-toggle .icon-bar { background: #888; }
.navbar-header-leftcol .navbar-brand { color: #777; }
.navbar-collapse.left-collapse { max-height: inherit; }
/* search autocomplete stuff */
.search-box input { vertical-align: top; }
.ui-autocomplete { z-index: 10000; }
.ui-menu .ui-menu-item a { background: none; border: none; opacity: 0.75; cursor: pointer; }
.ui-menu .ui-menu-item a:hover { opacity: 1; }
/* reset some stuff that bootstrap breaks */
.bx-wrapper *, .addthis_toolbox * { box-sizing: content-box; }
.bx-wrapper { margin-bottom: 20px; }
.bx-controls-direction { opacity: 0.25; transition: 0.25s; }
.bx-controls-direction:hover { opacity: 0.75; transition: 0.25s; }
.thumbnail { text-align: center; }
.thumbnail .quick-view { top: 0px; left: 50%; width: 120px; margin-left: -60px; opacity: 0; display: none; transition: 0.25s; z-index: 4; }
.thumbnail:hover .quick-view { top: 100px; display: block; opacity: 1; transition: 0.25s; }
.thumbnail img, .Slideshow img, #imgMfgLogo, img { max-width: 100%; }
.zoomWrapper img { max-width: none; }
.thumbnail:hover { text-decoration: none; }
.homepage-product .thumbnail { min-height: 260px; line-height: 260px; margin-bottom: 10px; }
.homepage-product .thumbnail img { display: inline; }
.product-flag { width: 150px; height: 150px; display: none; line-height: 1.5; }
/* Ensure the text is centered within the rotated ribbon */
.product-flag span { background: var(--ab-charcoal); color: var(--ab-warmwhite); text-align: center; display: block; width: 100%; position: absolute; box-shadow: 0 4px 8px rgba(47, 53, 59, 0.25); }

.product-flag.top span { bottom: 0; }
.product-flag.bottom span { top: 0; }

.product-flag.left { left: -90px; }
.product-flag.right { right: -90px; }
.product-flag.top { top: -90px; }
.product-flag.bottom { bottom: -90px; }
/* Optimized Product Flag Rotations for 2025 */
.product-flag.top.left { transform: rotate(-45deg); }
.product-flag.top.right { transform: rotate(45deg); }
.product-flag.bottom.left { transform: rotate(45deg); }
.product-flag.bottom.right { transform: rotate(-45deg); }
/* =========================================
PRODUCT FLAGS — PRIMARY IMAGE ANCHOR FIX
========================================= */

#prod-thumbnails > div > div.col-xs-9.col-sm-push-3 { position: relative !important; overflow: visible !important; }

#prod-thumbnails .product-flag { display: block !important; z-index: 9999 !important; pointer-events: none; }


input[type=text], input[type=password], input[type=email], select, textarea { min-height: 34px; padding: 6px 12px; font-size: 14px; line-height: 1.428571429; color: #555; vertical-align: middle; background-color: #fff; border: 1px solid #ccc; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075); box-shadow: inset 0 1px 1px rgba(0,0,0,0.075); -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; }
select { padding: 6px; }
input[type=text]:focus, input[type=password]:focus, input[type=email]:focus, select:focus, textarea:focus { border-color: #66afe9; outline: 0; -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6); box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6); }

input, select, textarea { max-width: 100%; }

.Hidden { display: none; }
.AddressBookNameTextbox { width: 194px; }
.AddressBookCityTextbox { width: 152px; }
.AddressBookStateTextbox { width: 160px; }
.AddressBookZipCodeTextbox { width: 112px; }
.AddressBookNotes { font-family: Verdana; font-size: 10px; }
.ProductGroupItemPricing { white-space: nowrap; }
.ProductGroupItemQuantity { width: 40px; }
.ProductGroupItemDescription { margin: 0px 4px 0px 4px; }
.CustomPaymentMethodsAmountArea { float: right; }
.CustomPaymentMethodsAmountTextbox { width: 80px; }
.CustomPaymentMethodsFieldName { padding-left: 15px; width: 100px; text-align: right; }
.CustomPaymentMethodsChooseArea { padding-left: 35px; }
.CustomPaymentMethodsSeparator { height: 1px; color: #999999; }
.MicroStoreMoreInfoLink { font-size: 10px; }
.PaymentMethodsCC {  }
.PaymentMethodsNewCardNum {  }
.PaymentMethodsNewCardName {  }
.PaymentMethodsChoosePaypalButton { padding-left: 35px; }
.PaymentMethodsCustomFieldName { padding-left: 35px; width: 200px; }
.PaymentMethodsChooseCustomButton { padding-left: 35px; }
.PaymentMethodsEcheckTextbox { width: 75px; }
.PersonalizationFileUpload { width: 250px; }
.ProductReviewTagSelectorRemoveTagArea { width: 15px; text-align: center; }
.ProductReviewTagSelectorRemoveTagImage { border: 0 none; }
.RelatedItemsContainer { padding: 10px; }
.RelatedItemsSeparator { color: #999999; height: 1px; }
.RelatedItemsProductPhotoArea { float: left; width: 14%; }
.RelatedItemsProductNameArea { float: left; width: 34%; }
.RelatedItemsPricingArea { float: left; width: 24%; }
.RelatedItemsAddToCartArea { float: left; width: 24%; text-align: right; }
.RelatedItemsQtyTextbox { width: 40px; }
.RelatedItemsMessageText { float: left; width: 24%; text-align: right; }
.RelatedItemsAddToCartButton { clear: both; text-align: right; }
.ShippingMethodCalendarPickerArea { float: left; width: 49%; }
.ErrorText, .errorText { display: block; }
.attentionText { background: #e5e5e5; margin: 10px 0; padding: 10px; color: #000; }
.itemoriginalprice { text-decoration: line-through; }
.EProductCredentials { font-weight: bold; }
.EProductCredentials span { font-weight: normal; padding-right: 20px; }
.EProductNameContainer { display: inline; padding-right: 20px; }
.EProductURLContainer { display: inline; }
.EProductItemContainer { text-align: left; }
.ShippingEstimationZipTextbox { width: 100px; }
.ShippingEstimationItemInfo .QtyTextbox { width: 50px; text-align: center; }

div.ac-admin-help { background: #fafafa; border: none; border-radius: 3px; color: #666; font-family: inherit; font-size: inherit; }
.panel-heading:empty { display: none; }
.g-signin2 { display: inline-block; }
/* [/Global] */

/* [Layout] */

/* [/Layout] */

/* [Widgets] */

/* [/Widgets] */

/* [ProductDetails] */
/* =========================================================
ABECTA HOUSE — PRODUCT DETAILS (PDP) CSS
FULL REPLACEMENT (cleaned + de-duplicated)
========================================================= */

/* Reviews / sorter */
#review_header .block { display: inline-block !important; }
#product_page #sa_sort { min-height: unset; }

/* Hide legacy price label */
.ProductDetailsPriceLabel { display: none; }

/* Qty textbox baseline */
input.ProductDetailsQuantityTextBox { width: 70px; text-align: center; padding: 0; }

/* Status formatting cleanup */
#lblProductStatus + br { display: none; }

/* Bullets */
.ProductDetailsBullets ul { padding: 8px 0 8px 18px; }

/* Variant / swatches */
.varpicmax_img { border: 1px solid transparent; }

.ProductDetailsVariations input[type=checkbox] + label { display: inline; font-weight: normal; padding-left: 5px; vertical-align: top; }

.ProductDetailsSelectedVariant { border-color: #66afe9; outline: 0; -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6); box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6); }

.ProductDetailsSwatches ul { margin: 0; }
.ProductDetailsSwatches li { float: left; margin: 5px 5px 0 0; }

.Variant > br, .ProductDetailsVariations > br { display: none; }

/* Ratings spacing */
.media-body .StarRatings { margin-left: 10px; }

/* Qty price table */
.ProductDetailsQuantityPriceTable tr:first-child td { border-top: none; }
.ProductDetailsQuantityPriceTable p { margin: 0; line-height: inherit; }

/* Disable unselectable swatches */
.SwatchNotApplicable { opacity: .5; pointer-events: none; }

/* Main photo */
.main-product-photo.thumbnail { border-radius: 0; display: flex !important; align-items: center; min-height: auto !important; }

/* Right-side product info panel */
.product-information { background: #f9f9f9; }

/* =========================================================
PDP — Product Title Refinement
========================================================= */

.ProductDetailsProductName {
  font-size: 28px;             /* was 30px */
  font-weight: 700;            /* cleaner than 'bold' */
  line-height: 1.15;           /* balanced for 2–3 lines */
  margin-bottom: 6px;          /* tighten spacing under title */
  letter-spacing: 0.01em;      /* subtle premium refinement */
}

/* Mobile title refinement */
@media (max-width:768px){
  .ProductDetailsProductName {
    font-size: 27px;
    line-height: 1.2;
  }
}


/* Item # + Manufacturer inline */
.ProductDetailsItemNr, .ProductDetailsManufacturerName { display: inline-block; }

.ProductDetailsManufacturerName > a:before{
  content:" \00a0|\00a0\00a0 Made by ";
  color:#333;
}

/* Override earlier status separator (you had both) */
#lblProductStatus:after { content: ""; display: none; }

/* Bullets (alternate markup) */
.ProductDetailsBullets ul,
span.ProductDetailsBullets {
  padding: 6px 0 0 0;   /* bottom padding: 2px → 0 */
  margin-left: 0;
  list-style: none;
}
.ProductDetailsBullets ul li,
span.ProductDetailsBullets li {
  padding-left: 16px;   /* controls indent consistently */
  margin-bottom: 4px;
  line-height: 1.5;
}

span.ProductDetailsBullets > ul { padding: 0; margin: 0; }

.ProductDetailsBullets ul li, span.ProductDetailsBullets li { position: relative; transition: .15s all ease-in-out; }
.ProductDetailsBullets ul li:before,
span.ProductDetailsBullets li:before {
  transition: .15s all ease-in-out;
  background: #C7A262;          /* Warm Gold */
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;           /* make it circular */
  position: absolute;
  left: 0;                      /* align with new padding system */
  top: 11px;                     /* vertically center with text */
}
.ProductDetailsBullets ul li:hover:before, span.ProductDetailsBullets li:hover:before { background: #666; }

/* =========================================================
PDP — Read More Button (Refined Utility Style)
========================================================= */

#bullets-load.btn,
#bullets-load.btn-default {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin-left: 7.5px;
  margin-top: 4px;   /* was 6px */
  font-size: 13px;
  font-weight: 500;
  color: #93a49e !important;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color .15s ease-in-out;
}

#bullets-load.btn:hover,
#bullets-load.btn:focus {
  background: transparent !important;
  color: #C7A262 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  box-shadow: none !important;
}

/* Price match button spacing */
#price-match-btn { padding-top: 0; padding-bottom: 0; }

/* Price area helpers */
.pa-ca { display: inline-block; vertical-align: middle; font-size: 16px; color: #0da21b; position: relative; right: -15px; clear: both; }
.pa-ca i { color: #424243; }
.pa-price { display: inline-block; vertical-align: middle; }

/* =========================================================
AVAILABILITY ("In Stock") ALIGNMENT FIX
========================================================= */
.ProductDetailsAvailability { display: block !important; width: 95px !important; /* matches spinner width */ text-align: center !important; margin-left: 0 !important; margin-top: 2px !important; clear: both !important; /* hide stray text nodes */ font-size: 0 !important; line-height: 0 !important; }

/* Restore status text */
.ProductDetailsAvailability #lblProductStatus, .ProductDetailsAvailability span[itemprop="availability"] { display: block !important; font-size: 14px !important; font-weight: normal !important; line-height: 1.2 !important; white-space: nowrap !important; }

/* Hide Notify Me + BRs */
.ProductDetailsAvailability #lnkNotifyMe, .ProductDetailsAvailability br { display: none !important; }

/* Status colors */
.ProductDetailsAvailability[data-status='In Stock'] span, .ProductDetailsAvailability #lblProductStatus { color: #0da21b; }

.ProductDetailsAvailability[data-status='Out of Stock'] #lblProductStatus { color: #dd4c15; }

/* Hide legacy trust blocks for non-buyable states */
.atc-trust[data-status='Out of Stock'], .atc-trust[data-status='Special Order'] { display: none; }

/* =========================================================
QUANTITY SPINNER FIX (Container Border Strategy)
========================================================= */

/* Label */
#lblQuantity { display: block; font-weight: bold; font-size: 13px; margin-bottom: 5px; width: 95px; text-align: center; margin-left: 0; }

/* Container */
.qty-spinner { display: inline-flex !important; flex-direction: row !important; align-items: stretch !important; border: 1px solid #b7b7b7 !important; border-radius: 4px !important; height: 32px !important; width: auto !important; margin-bottom: 0 !important; background: #fff; overflow: hidden; /* clip corners */ }

/* =========================================================
QUANTITY SPINNER FIX (CLEANED FINAL)
========================================================= */

/* Label */
#lblQuantity{
  display:block;
  width:95px;
  margin:0 0 5px 0;
  text-align:center;
  font-weight:700;
  font-size:13px;
}

/* Outer spinner */
.qty-spinner{
  display:inline-flex !important;
  flex-direction:row !important;
  align-items:stretch !important;
  height:32px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid #b7b7b7 !important;
  border-radius:4px !important;
  background:#fff !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  /* subtle refinement */
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6);
}

/* Shared child reset */
.qty-spinner #txtQuantity,
.qty-spinner .atc-quant-spinner a{
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  box-sizing:border-box !important;
}

/* Minus / plus button wrappers */
.qty-spinner .atc-quant-spinner .icon-chevron-down,
.qty-spinner .atc-quant-spinner .icon-chevron-up{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:30px !important;
  cursor:pointer !important;
  text-decoration:none !important;
  color:#555 !important;
  border-top:0 !important;
  border-bottom:0 !important;
  box-sizing:border-box !important;
}

/* Order */
.qty-spinner .atc-quant-spinner .icon-chevron-down{ order:1 !important; }
#txtQuantity{ order:2 !important; }
.qty-spinner .atc-quant-spinner .icon-chevron-up{ order:3 !important; }

/* Center input */
#txtQuantity{
  width:35px !important;
  min-width:35px !important;
  height:100% !important;
  border:0 !important;
  border-left:1px solid #d0d0d0 !important;
  border-right:1px solid #d0d0d0 !important;
  border-radius:0 !important;
  display:block !important;
  text-align:center !important;
  font-size:15px !important;
  font-weight:700 !important;
  font-family:Arial, sans-serif !important;
  color:#333 !important;
  line-height:32px !important;
  padding:0 !important;
  box-sizing:border-box !important;
  -webkit-appearance:none !important;
  -moz-appearance:textfield !important;
  appearance:textfield !important;
  position:relative !important;
  top:-1px !important;
}

/* Remove number input arrows */
#txtQuantity::-webkit-outer-spin-button,
#txtQuantity::-webkit-inner-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
}

/* Replace chevrons with true symbols */
.qty-spinner .icon-chevron-down::before,
.qty-spinner .icon-chevron-up::before{
  display:none !important;
}

.qty-spinner .icon-chevron-down::after{
  content:"−" !important;
  font-family:Arial, sans-serif;
  font-size:18px;
  font-weight:700;
  line-height:1;
}

.qty-spinner .icon-chevron-up::after{
  content:"+" !important;
  font-family:Arial, sans-serif;
  font-size:18px;
  font-weight:700;
  line-height:1;
}

/* Hover */
.qty-spinner .atc-quant-spinner a:hover{
  background:#666 !important;
  color:#fff !important;
}
/* =========================================================
PRIMARY CTA — ADD TO CART (PDP)
========================================================= */
.ProductDetailsAddToCartButton.btn { display: flex; align-items: center; justify-content: center; width: 100%; padding: 14px 16px; background-color: #C7A262; /* Warm Gold */ color: #2F353B; /* Charcoal */ font-size: 15px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; line-height: 1.2; border: 0; border-radius: 6px; box-sizing: border-box; margin-top: 8px; margin-bottom: 4px; transition: background-color 0.15s ease, box-shadow 0.15s ease; }
.ProductDetailsAddToCartButton.btn:hover { background-color: #B8964E; }
.ProductDetailsAddToCartButton.btn:active { background-color: #A9873F; transform: translateY(1px); }

/* PDP Add To Cart — strong keyboard focus */
.ProductDetailsAddToCartButton.btn:focus-visible, #btnAddToCart:focus-visible, input.ProductDetailsAddToCartButton:focus-visible { outline: 3px solid #FFFFFF !important; outline-offset: 2px !important; box-shadow: 0 0 0 6px var(--ab-charcoal) !important; }

/* =========================================================
CATEGORY LIST CTA (if present on PDP widgets)
========================================================= */
#cat-meta .product-list .btn-hp-prod { display: inline-flex; align-items: center; justify-content: center; padding: 10px 14px; width: auto; background-color: #C7A262; color: #2F353B; font-size: 14px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; line-height: 1.2; border: none; border-radius: 6px; box-sizing: border-box; margin-top: 6px; transition: background-color 0.15s ease-in-out, transform 0.05s ease-in-out; }
#cat-meta .product-list .btn-hp-prod:hover { background-color: #B8964E; }
#cat-meta .product-list .btn-hp-prod:active { background-color: #A9873F; transform: translateY(1px); }
#cat-meta .product-list .btn-hp-prod:focus-visible { outline: 2px solid #FFFFFF !important; outline-offset: 2px !important; box-shadow: 0 0 0 5px var(--ab-charcoal) !important; }

/* Trust / availability microtext */
.atc-trust { text-align: center; font-size: 14px; color: #666; }

/* ===== PDP MICRO TRUST – CLEAN + CRO ===== */
.pd-micro-trust{
  margin-top:2px;     /* tighten button → trust spacing */
  display:flex;
  flex-direction:column;
  gap:4px; /* was 6px */
  align-items:flex-start;
  font-size:12.5px; /* was 13px */
  font-weight:400;
  color:#5F6461; /* was #7A7F7B to deepen the tone */
  line-height:1.2;
}

.pd-micro-trust__item{
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}

.pd-micro-trust__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:16px;
  height:16px;
  border-radius:999px;
  border:1px solid #E6DFD2;
  background:#F9F8F4;
  font-size:11px;
  line-height:1;
  color:rgba(74,93,84,.9);
  flex:0 0 16px;
}

.atc-availability { position: relative; top: 12px; }

[data-show=''] { display: none; }

/* =========================================================
THUMBNAILS COLUMN + ARROWS (DESKTOP)
========================================================= */
.thumbnail-outer { position: relative; }

#prod-thumbnails .col-xs-3.col-sm-pull-9 { position: relative; padding-top: 26px; /* room for up arrow */ padding-bottom: 26px; /* room for down arrow */ }

/* viewport */
.thumbnail-outer .bx-viewport { padding-bottom: 20px; overflow: hidden; }

/* Keep bxSlider controls alive but invisible */
#prod-thumbnails .bx-prev, #prod-thumbnails .bx-next { text-indent: -9999px; overflow: hidden; position: absolute; width: 0; height: 0; border: 0; padding: 0; margin: 0; }

/* custom arrows ▲ / ▼ */
#thumbnail-outer-up, #thumbnail-outer-down { position: absolute; left: 0; right: 0; height: 22px; line-height: 22px; text-align: center; font-size: 20px; color: #424243; cursor: pointer; z-index: 10; background: transparent !important; }
#thumbnail-outer-up { top: 0; }
#thumbnail-outer-down { bottom: 0; }

#thumbnail-outer-up:hover, #thumbnail-outer-down:hover { color: #C7A262; }

/* ensure thumbs don't sit under arrows */
#prod-thumbnails .pad-10.no-pad-lr { padding-top: 26px; padding-bottom: 26px; }

.product-thumbnails { list-style: none; margin: 0; padding: 0; }
.product-thumbnails li { margin-bottom: 8px; }
.product-thumbnails .thumbnail { padding: 0 !important; margin: 0; border-radius: 0; }

/* =========================================================
MISC LAYOUT
========================================================= */
.prod-mfg-logo h5 { margin: 0 0 5px 0; text-align: center; font-size: 16px; }
.prod-mfg-logo img { margin: 0 auto; }

.btn-white.btn-cf { display: inline-block !important; border: 1px solid #7f7f7f; padding: 7px 12px; font-size: 16px; font-weight: bold; width: auto !important; text-align: left; }
.btn-white.btn-cf:hover { display: inline-block; }
.btn-white.btn-cf i { margin-right: 5px; }

.manual-block { margin-top: 12px; text-align: left; }

#prod-desc h3, .pr-title { font-size: 18px; font-weight: bold; }
.pr-title { margin-bottom: -20px; }

#prod-reviews { margin-top: 39px; max-height: 250px; overflow: auto; border: 3px solid #f9f9f9; padding: 30px; }
.ProductDetails .ProductDisplay { margin-top: 30px; }

#dvProductVariations { margin-top: 15px; }
.Variant > div > strong { text-transform: uppercase; color: #424243; font-weight: normal; font-size: 12px; display: block; margin-bottom: 5px; }
.Variant > div > strong > p { line-height: inherit; padding: 0; margin: 0; }
.Variant select { max-width: 350px; padding: 8px; }

.should-wrap-container { display: none; }
#dvProductVariations > span.ProductDetailsVariations { display: none; }

/* Variant price display hook */
.var-price .ProductDetailsPrice { font-size: 0; }
.var-price .ProductDetailsPrice:after { content: attr(data-quantPrice); font-size: 36px; }

/* If a cents element exists, keep baseline (you later hide in pricing fix) */
#centsSuper { display: inline-block; vertical-align: top; font-size: 50%; position: relative; top: 4px; left: 3px; }

/* Tabs container wrapper */
.tabs-container { clear: both; padding-top: 8px; }

/* Brand utility row */
.brand-utility { margin: 12px 0 8px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.brand-badge { display: flex; align-items: center; gap: 10px; }
.brand-badge__title { font-weight: 600; font-size: 14px; line-height: 1.2; }
.brand-badge__img { max-height: 32px; width: auto; height: auto; display: block; }
.brand-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.brand-actions__btn { margin: 0; }
/* =========================================================
ORDER TRACKING PAGE
========================================================= */

.page-order-tracking h1{
  margin-bottom:20px;
}

.page-order-tracking .tracking-note{
  background:#F7F4EC;
  padding:16px 20px;
  border-left:3px solid #C7A262;
  margin:6px 0 26px 0;
  font-size:14px;
  line-height:1.55;
  border-radius:2px;
}

.page-order-tracking p{
  max-width:900px;
}

.page-order-tracking ul{
  margin-top:8px;
  margin-bottom:14px;
}

.page-order-tracking h2{
  margin-top:34px;
  margin-bottom:12px;
}

/* =========================================================
BRAND AUTHENTICITY BLOCK (PREMIUM + SUBTLE)
========================================================= */

.authorized-dealer {
  margin-top: 24px; /* was 28px made closer to the paragraph above */
  padding: 14px 18px;
  background: #F9F8F4;            /* Warm White */
  border-left: 2px solid #C7A262;  /* Warm Gold accent */
  border-radius: 4px;
  text-align: left;
  clear: both;
}

.authorized-dealer__label {
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #4A5D54; /* Deep Sage */
  margin-bottom: 6px;
  font-weight: 500;
}

.authorized-dealer__body {
  font-size: 15px;
  color: #2F353B; /* Charcoal Slate */
  line-height: 1.6;
  margin-bottom: 10px;
}

.authorized-dealer__logo {
  display: block;
}

.authorized-dealer__logo img {
  max-height: 22px;
  width: auto;
  display: block;
  opacity: 0.7;   /* soften vendor dominance */
}

/* Tablet tweaks */
@media screen and (max-width:992px){
  .main-product-photo.thumbnail { min-height: 300px !important; }
  #prod-desc { margin-bottom: 30px; }
}

.ProductDetailsManufacturerName { border-left: 1px solid #b7b7b7; padding-left: 7px; margin-left: 5px; }

/* =========================================================
ZEBRA TABLES (Dimensions / Specs)
========================================================= */
.specs-table { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 1.5; }
.specs-table tr:nth-child(even) { background-color: #f9f9f9; }
.specs-table tr:nth-child(odd) { background-color: #ffffff; }

@media (hover:hover) and (pointer:fine){
  .specs-table tr:hover { background-color: #f3f4f3; }
}

.specs-table th[scope="row"] { font-weight: 700; color: #2F353B; letter-spacing: 0.01em; white-space: nowrap; width: 1%; padding: 8px 22px 8px 12px; text-align: left; }
.specs-table th[scope="row"]::after { content: ""; margin-left: 0; }

.specs-table td { padding: 8px 12px; vertical-align: top; color: #555; }

@media screen and (max-width:600px){
  .specs-table, .specs-table tbody, .specs-table tr, .specs-table th[scope="row"], .specs-table td { display: block; width: 100%; }

  .specs-table tr { margin-bottom: 10px; }

  .specs-table th[scope="row"] { width: auto; padding: 10px 12px 0; font-weight: 700; color: #2F353B; letter-spacing: 0.01em; text-align: left; white-space: normal; }

  .specs-table td { padding: 4px 12px 10px; text-align: left; white-space: normal; color: #555; }
}

/* Hide legacy standalone Details block (use tabbed Details only) */
#prod-desc { display: none !important; }

/* =========================================================
MOBILE: HIDE DESKTOP THUMB COLUMN + ARROWS
========================================================= */
@media (max-width:768px){
  #prod-thumbnails .col-xs-3.col-sm-pull-9, #thumbnail-outer-up, #thumbnail-outer-down { display: none !important; }

  #prod-thumbnails .bx-wrapper .bx-pager { display: none !important; }

  .authorized-dealer { padding-top: 16px; }
  .authorized-dealer__logo { margin-top: 6px; }
}

/* =========================================================
PDP — Mobile spacing between gallery and bullets
(Insert this block right here)
========================================================= */
@media (max-width:768px){
  .ProductDetailsBullets,
  span.ProductDetailsBullets {
    margin-top: 12px !important;
  }
}

/* =========================================================
MOBILE CAROUSEL (thumbnail strip)
========================================================= */
@media screen and (max-width:768px){
  #thumbnail-outer-up, #thumbnail-outer-down { display: none !important; }

  #prod-thumbnails .col-xs-3.col-sm-pull-9 { padding: 0 !important; width: 100% !important; float: none !important; margin-top: 15px !important; }

  #mobile-pager { display: block !important; white-space: nowrap !important; overflow-x: auto !important; overflow-y: hidden !important; -webkit-overflow-scrolling: touch; padding: 10px 0 !important; margin: 0 !important; width: 100% !important; text-align: left !important; }

  #mobile-pager .mobile-thumb { display: inline-block !important; vertical-align: top !important; float: none !important; width: 80px !important; height: auto !important; margin-right: 10px !important; border: 1px solid #ddd !important; background: #fff !important; padding: 0 !important; cursor: pointer !important; }

  #mobile-pager .mobile-thumb.mobile-thumb--active { border-color: #333 !important; }

  #mobile-pager .mobile-thumb img { width: 100% !important; height: auto !important; display: block !important; }
}

/* =========================================================
RETURN BADGE
========================================================= */
.product-return-status-wrapper { margin: 4px 0 6px; font-family: inherit; font-size: 14px; line-height: 1.4; } /* Was 6px 0 8px */
.return-badge { display: flex; align-items: center; gap: 8px; padding: 0; }
.return-badge .badge-icon { font-size: 16px; line-height: 1; }
.return-badge.eligible { color: #2e7d32; }
.return-badge.not-eligible { color: #616161; }
.return-badge strong { font-weight: 600; }
.return-badge .policy-link { margin-left: 0; }

.return-badge .policy-link a { color: #666; text-decoration: underline; font-size: 13px; }
.return-badge .policy-link a:hover { color: #000; }

@media (max-width:480px){
  .return-badge { flex-wrap: wrap; row-gap: 2px; }
}

/* =========================================================
PDP TABS (Clean, iOS-safe, ADA focus)
Targets: #tabs.nav-tabs + .tab-content (Bootstrap tabs)
========================================================= */
#tabs.nav-tabs { border-bottom: 1px solid rgba(0,0,0,0.10) !important; display: flex; flex-wrap: nowrap; gap: 10px; padding: 10px 10px 0; margin: 10px 0 0 !important; /* tightened gap */ overflow-x: auto !important; /* horizontal scroll */ overflow-y: hidden !important; /* prevent vertical drift */ -webkit-overflow-scrolling: touch; touch-action: pan-x; /* prefer horizontal gestures */ overscroll-behavior-y: contain; scrollbar-width: none; /* Firefox */ }
#tabs.nav-tabs::-webkit-scrollbar { display: none; }

/* Reset default bootstrap list item behavior */
#tabs.nav-tabs > li { float: none !important; margin: 0 !important; }

/* Tab links */
#tabs.nav-tabs > li > a { border: 0 !important; border-radius: 10px 10px 0 0 !important; background: rgba(0,0,0,0.03) !important; color: var(--ab-text) !important; padding: 10px 14px !important; font-weight: 600; letter-spacing: 0.01em; text-decoration: none !important; position: relative; white-space: nowrap; transition: background-color .15s ease, color .15s ease; }

/* Hover */
#tabs.nav-tabs > li > a:hover { background: rgba(0,0,0,0.06) !important; color: var(--ab-gold) !important; }

/* Active tab — support BOTH: li.active and a.active */
#tabs.nav-tabs > li.active > a, #tabs.nav-tabs > li > a.active { background: #fff !important; color: var(--ab-text) !important; }

/* Active underline (gold) */
#tabs.nav-tabs > li.active > a::after, #tabs.nav-tabs > li > a.active::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: -1px; height: 3px; background: var(--ab-gold); border-radius: 999px; }

/* Keyboard focus (inset so it won't be clipped by overflow-y:hidden) */
#tabs.nav-tabs > li > a:focus-visible{
  outline:none !important;
  box-shadow:
    inset 0 0 0 2px #FFFFFF,
    inset 0 0 0 5px var(--ab-charcoal) !important;
  border-radius:10px;
}

/* Tab content area */
.tab-content { background: #fff; border: 1px solid rgba(0,0,0,0.08); border-top: 0; border-radius: 0 12px 12px 12px; padding: 14px 26px 18px; box-shadow: var(--ab-shadow-soft); }

/* Keep existing padding helpers from fighting the layout */
.tab-content .tab-pane.pad-20 { padding: 0 !important; }

/* Mobile tweaks */
@media (max-width:767px){
  #tabs.nav-tabs { padding: 8px 8px 0; gap: 8px; }

  #tabs.nav-tabs > li > a { font-size: 15px !important; line-height: 1.2 !important; padding: 12px 14px !important; border-radius: 10px !important; }

  .tab-content { border-radius: 0 0 12px 12px; padding: 12px 18px 14px; }
}

/* =========================================================
PDP — SHIPPING & RETURNS TAB CONTENT
========================================================= */

.shipping-returns {
  max-width: 1080px;
  line-height: 1.6;
  color: #2F353B;
}

.shipping-returns h4 {
  font-size: 18px;
  font-weight: 650;
  line-height: 1.3;
  margin: 26px 0 8px;
  color: #2F353B;
}

.shipping-returns h4:first-child {
  margin-top: 0;
}

.shipping-returns p,
.shipping-returns li {
  max-width: 980px;
  margin: 0 0 12px;
  font-size: 15px;
  line-height: 1.65;
}

.shipping-returns ul {
  margin: 0 0 16px 18px;
  padding: 0;
}

.shipping-returns li {
  margin-bottom: 5px;
}
.shipping-returns li::marker {
  color: #666;
}

.shipping-returns strong {
  font-weight: 700;
  color: #2F353B;
}

@media (max-width: 767px) {
  .shipping-returns {
    max-width: none;
    line-height: 1.6;
  }

  .shipping-returns h4 {
    font-size: 17px;
    margin: 16px 0 8px;
  }

  .shipping-returns p,
  .shipping-returns li {
    font-size: 14.5px;
  }

  .shipping-returns ul {
    margin-left: 20px;
  }
}
/* =========================================================
PDP — WARRANTY & CARE TAB CONTENT
========================================================= */

.warranty-care {
  max-width: 1180px;
  line-height: 1.65;
  color: #2F353B;
}

.warranty-care h2,
.warranty-care h3,
.warranty-care h4 {
  font-weight: 600;
  line-height: 1.3;
  margin: 18px 0 6px;
  color: #2F353B;
}

.warranty-care h2:first-child,
.warranty-care h3:first-child,
.warranty-care h4:first-child {
  margin-top: 0;
}

.warranty-care p {
  max-width: 1120px;
  margin: 0 0 14px;
  font-size: 15px;
  line-height: 1.7;
}

.warranty-care ul,
.warranty-care ol {
  margin: 0 0 16px 22px;
  padding: 0;
}

.warranty-care li {
  margin-bottom: 5px;
  font-size: 15px;
  line-height: 1.55;
}

.warranty-care li::marker {
  color: #666;
}

.warranty-care strong {
  font-weight: 700;
  color: #2F353B;
}

.warranty-care em {
  color: #2F353B;
}

@media (max-width: 767px) {
  .warranty-care {
    max-width: none;
    line-height: 1.6;
  }

  .warranty-care h2,
  .warranty-care h3,
  .warranty-care h4 {
    font-size: 17px;
    margin: 16px 0 8px;
  }

  .warranty-care p,
  .warranty-care li {
    font-size: 14.5px;
  }

  .warranty-care ul,
  .warranty-care ol {
    margin-left: 20px;
  }
}

/* =========================================================
PDP — TIGHTEN GAP BETWEEN IMAGE BLOCK AND TAB BAR
========================================================= */
#ProductDetailsPage .row.pad-20.pad-b-only { padding-bottom: 10px !important; }
#tabs.nav-tabs + .tab-content { margin-top: 0px !important; }

/* =========================================================
PDP — PRICE SIZE (SINGLE PRICE, NO DUPLICATES)
========================================================= */
#pricing-area #dvProductPricing #centsSuper { display: none !important; }

#pricing-area #dvProductPricing #lblPrice::before, #pricing-area #dvProductPricing #lblPrice::after, #pricing-area #dvProductPricing .ProductDetailsPrice::before, #pricing-area #dvProductPricing .ProductDetailsPrice::after { content: none !important; }

#pricing-area #dvProductPricing .pa-price.h1 { font-size: 24px !important; line-height: 1.1 !important; font-weight: 600 !important; margin: 0 0 6px 0 !important; }

#pricing-area #dvProductPricing .pa-price.h1 #lblPrice, #pricing-area #dvProductPricing .pa-price.h1 .ProductDetailsPrice { font-size: inherit !important; line-height: inherit !important; font-weight: inherit !important; letter-spacing: -0.02em !important; }

/* =========================================================
PDP — SALE PRICE DISPLAY (CLEAN HIERARCHY)
========================================================= */
#pricing-area #dvProductPricing { display: flex; flex-direction: column; gap: 2px; }

#pricing-area #dvProductPricing .pa-was { font-size: 13px !important; line-height: 1.2 !important; color: #7a7a7a !important; margin: 0 !important; }

#pricing-area #dvProductPricing .pa-was .ProductDetailsPrice, #pricing-area #dvProductPricing .pa-was #lblWasPrice, #pricing-area #dvProductPricing .pa-was { text-decoration: line-through; text-decoration-thickness: 1px; text-decoration-color: rgba(0,0,0,0.35); }

#pricing-area #dvProductPricing .pa-price { margin: 0 !important; font-size: 24px !important; font-weight: 700 !important; line-height: 1.1 !important; color: var(--ab-charcoal) !important; }

#pricing-area #dvProductPricing .pa-price .PriceLabel, 
#pricing-area #dvProductPricing .pa-price .label, 
#pricing-area #dvProductPricing .pa-price .ProductDetailsPriceLabel { 
  font-size: 13px !important; 
  font-weight: 600 !important; 
  color: #8A8F8C !important; 
  margin-right: 6px !important; 
}

#pricing-area #dvProductPricing .pa-ca { margin-top: -2px !important; }

#pricing-area {
  margin-top: -4px !important;     /* NEW */
  margin-bottom: 10px !important;
}

@media (max-width:767px){
  #pricing-area #dvProductPricing .pa-price { font-size: 22px !important; }
  #pricing-area #dvProductPricing .pa-was { font-size: 13px !important; }
}
/* Sale label ("Sale:") — de-emphasize so the number dominates */
#pricing-area #dvProductPricing .ProductDetailsSalePriceLabel,
#pricing-area #dvProductPricing #lblSalePriceLabel {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #8A8F8C !important;
  margin-right: 6px !important;
}
/* =========================================================
PDP — MESSAGE COLOR HIERARCHY (Abecta House)
========================================================= */
#pricing-area #dvProductPricing .pa-price { color: #2F353B !important; }

#pricing-area #dvProductPricing .pa-ca {
  color: #8C918E !important;   /* slightly softer */
  font-size: 12.5px !important;
  font-weight: 400 !important;
  margin-top: -2px !important;
}

#pricing-area #dvProductPricing .return-badge.eligible {
  color: #3F6F5A !important;   /* slightly richer sage */
}

#pricing-area #dvProductAvailability, #pricing-area .ProductDetailsAvailability { color: #2E7D32 !important; font-weight: 600 !important; }

/* PDP — Item Number + Brand (de-emphasize metadata) */
#dvProductItemNr,
.ProductDetailsManufacturerName {
  font-size: 13px !important;
  color: #8A8F8C !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
}

/* Tighten spacing between Title → Item#/Brand → Bullets */
#dvProductItemNr {
  margin-top: 6px !important;     /* NEW: pulls metadata closer to title */
  margin-bottom: 4px !important;  /* was 6px */
}

#dvProductItemNr span,
#dvProductItemNr {
  letter-spacing: 0.01em;
}
/* [/ProductDetails] */

/* [Catalog] */
.CatalogItemQuantityBox input { width: 75px !important; text-align: center; }
/* [/Catalog] */

/* [Category] */
/* =========================================================
ABECTA HOUSE — CATEGORY PAGE CSS (CLEAN + SAFE) — FINAL
- Desktop Grid View: 3 across (flex, no holes)
- Desktop List View: full width rows
- Mobile: 1 item per row
- Product cards: Featured Products-style “box”
- Child Category Tiles: gold border + gold text + ONE underline (no gold line under image)
========================================================= */

/* -------------------------
THUMBNAILS (Products)
------------------------- */

/* Vars (prevents invalid calc() issues) */
:root { --cat-thumb-h: 250px; --cat-thumb-pad: 12px; }

/* Thumbnail frame */
#cat-meta .product-list .thumbnail{
  line-height: normal !important;
  height: var(--cat-thumb-h);
  padding: var(--cat-thumb-pad);
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 12px !important;
  background: #F4F3EE !important; /* was #fff */
  margin-bottom: 12px !important;
  overflow: hidden !important;
}

/* Image inside thumbnail */
#cat-meta .product-list .thumbnail img{
  display: block !important;
  max-width: 100% !important;
  max-height: calc(var(--cat-thumb-h) - (var(--cat-thumb-pad) * 2)) !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* -------------------------
CAPTION / PRICE / BUTTON
------------------------- */

#cat-meta .product-list .caption{
  text-align: center !important;
  padding: 6px 8px 0 !important;
}

/* Product name */
#cat-meta .product-list .caption .h5,
#cat-meta .product-list .caption a.h5{
  font-size: 15px !important;
  font-weight: 500 !important; /* was normal */
  line-height: 1.20 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Price typography (match Featured Products spirit) */
#cat-meta .product-list .price,
#cat-meta .product-list .ProductPrice,
#cat-meta .product-list .CategoryProductPrice{
  display: block !important;
  margin-top: 6px !important;
  margin-bottom: 10px !important;
  text-align: center !important;

  font-size: 18px !important;
  font-weight: 600 !important;
  color: #2F353B !important;
  letter-spacing: 0 !important;
}

/* Add to cart always visible */
#cat-meta .product-list .btn-hp-prod{
  display: inline-block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
  transform: none !important;
  margin-top: 10px !important;
  white-space: nowrap !important;
}

/* -------------------------
CATEGORY META / BREADCRUMB
------------------------- */

#cat-meta{
  margin: 15px 25px;
  width: calc(100% - 50px);
}

.breadcrumb{
  margin: 0;
  padding: 0;
  background: none;
  font-size: 13px;
  color: #9A9E9C;
}
.breadcrumb a{ color: #9A9E9C; }
.breadcrumb b,
.breadcrumb strong{ font-weight: normal; }

.CategoryProductPriceLabel,
#lblNumPerPageDropDownLabel{ display: none; }

/* -------------------------
TOP NAV CONTROLS
------------------------- */

.cat-top-nav{ padding: 15px; }
.cat-top-nav label{ display: none; }
.cat-top-nav select{
  margin-right: 15px;
  background: #fafafa;
  border: 0;
  box-shadow: none;
}

.cat-top-nav h6,
.cat-top-nav .ControlHeader{
  margin-right: 15px;
  font-size: 12px;
  color: #828282;
  font-weight: normal;
}
.cat-top-nav .ControlHeader{ margin-bottom: 0; }

/* Grid/List toggle buttons */
.btn-switch{
  text-align: center;
  display: block !important;
  background: transparent;
  color: #666;
  opacity: 0.4 !important;
  border: 0 !important;
}
.btn-switch small{
  display: block;
  margin-top: -2px;
  font-size: 12px;
}
.btn-switch:hover,
.btn-switch-active{
  opacity: 1 !important;
  color: #333 !important;
}
.btn-switch-active:hover{
  background: none !important;
  cursor: default;
}

/* Applied filters */
.AppliedAttributeFilters .ControlHeader{ display: none; }
.applied-attribute-filter{
  background: #1196d4;
  border: 0 !important;
  border-radius: 20px;
}
.applied-attribute-filter-clear{
  float: right;
  border-right: 0 !important;
  padding-left: 0 !important;
}
.applied-attribute-filter-text{ font-size: 14px; }
.applied-attribute-filter-text b{ display: none; }

/* -------------------------
PAGINATION
------------------------- */

.Pagination li{ border-radius: 2px; }
.Pagination li:first-child{ margin-left: 5px; }
.Pagination li > a,
.Pagination li > a:hover{
  color: inherit;
  border-radius: 2px;
}
.Pagination .CurrentPage{ color: #ccc; }

#foot-bottom-controls{
  font-size: 13px;
  color: #a0a0a0;
}
#foot-bottom-controls select{
  background: #fafafa;
  border: 0;
  box-shadow: none;
}
#cat-footer{ margin-bottom: 60px; }

.pagination > li:first-child span,
.pagination > li:last-child span,
.pagination > li:first-child a,
.pagination > li:last-child a{
  border: 0;
  color: #9d9d9d;
  background: none !important;
}
.pagination,
.pagination li:not(.active) a{
  font-size: 16px;
  color: #9d9d9d !important;
}
.pagination li.active > a{
  background: inherit !important;
  border-color: #dddddd !important;
  color: #1196d4 !important;
}

/* =========================================================
GRID / LIST BEHAVIOR (CORE) — SINGLE SOURCE OF TRUTH
========================================================= */

/* ---------- GRID VIEW (Desktop default) ---------- */
#cat-meta.grid-view .product-list{
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;

  /* allows gutters via item margins */
  margin-left: -15px !important;
  margin-right: -15px !important;
  padding: 0 10px;
}

/* Grid item = card (Featured Products-style box) */
#cat-meta.grid-view .product-list > .homepage-product{
  float: none !important;
  width: auto !important;

  /* 3 across + gutters (account for the 15px side margins) */
  flex: 0 0 calc(33.333% - 30px) !important;
  max-width: calc(33.333% - 30px) !important;
  margin: 0 15px 32px !important;

  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 3px 10px rgba(0,0,0,0.04) !important;
  padding: 18px 14px 20px 14px !important;

  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;

  /* Hover border around ENTIRE card without layout shift */
  outline: 1px solid transparent !important;
  outline-offset: -1px !important;

  transition: box-shadow 0.25s ease, transform 0.25s ease, outline-color 0.25s ease !important;
}
/* Refined hover */
#cat-meta.grid-view .product-list > .homepage-product:hover{
  outline-color: rgba(199,162,98,0.45) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,0.07) !important;
  transform: translateY(-1px) !important;
}

/* Make sure the thumbnail is NOT the hover target */
#cat-meta .product-list .thumbnail,
#cat-meta .product-list .thumbnail:hover{
  border: 0 !important;
}

/* Hide long description in grid */
#cat-meta.grid-view .product-list .list-view-desc{
  display: none !important;
}

/* Push price/button block to bottom consistently */
#cat-meta.grid-view .ProductPriceWrapper{
  margin-top: auto !important;
}

/* Reduce gap between name and price */
#cat-meta.grid-view .homepage-product .caption{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 6px !important;
  min-height: 38px !important;
  line-height: 1.25 !important;
}
#cat-meta.grid-view .product-list .ProductPriceWrapper{
  margin-bottom: 6px !important;
}

/* ---------- LIST VIEW ---------- */
#cat-meta.list-view .product-list{
  display: block !important;
  padding: 0 10px;
}

#cat-meta.list-view .product-list > .homepage-product{
  width: 100% !important;
  float: none !important;
  display: block !important;

  padding: 15px !important;
  margin-bottom: 20px !important;
  border-bottom: 2px solid #ddd;

  background: #fff !important;
  border-radius: 10px !important;
}

#cat-meta.list-view .product-list > .homepage-product .thumbnail{
  max-width: 250px !important;
  float: left !important;
  margin: 0 30px 0 0 !important;

  height: auto !important; /* don’t force fixed height in list rows */
  padding: 12px !important;
}

/* Show long description only in list */
#cat-meta.list-view .product-list .list-view-desc{
  display: block !important;
  padding: 10px 0 !important;
  text-align: left !important;
}

/* Left-align list captions */
#cat-meta.list-view .product-list .caption{
  text-align: left !important;
  padding-top: 30px !important;
}

/* =========================================================
BUTTON SIZING
========================================================= */

/* Desktop & tablet button */
@media (min-width: 768px){
  #cat-meta .product-list .btn-hp-prod{
    width: auto !important;
    font-size: 13px !important;
    padding: 6px 14px !important;
    line-height: 1.4 !important;
    border-radius: 4px !important;
  }
}

/* =========================================================
MOBILE: 1 PER ROW
========================================================= */
@media (max-width: 767px){

  #cat-meta.grid-view .product-list{
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 10px !important;
  }

  /* 1-up cards on mobile */
  #cat-meta.grid-view .product-list > .homepage-product{
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    padding: 16px 12px 18px 12px !important;
  }

  /* Thumbnail sane on mobile */
  #cat-meta .product-list .thumbnail{
    height: 240px !important;
    padding: 10px !important;
  }

  #cat-meta .product-list .thumbnail img{
    max-height: 220px !important;
  }

  /* Full-width button on mobile */
  #cat-meta .product-list .btn-hp-prod{
    width: 100% !important;
    font-size: 15px !important;
    padding: 10px 12px !important;
  }

  /* List view should not float thumbnail on phones */
  #cat-meta.list-view .product-list > .homepage-product .thumbnail{
    float: none !important;
    max-width: 100% !important;
    margin: 0 0 12px 0 !important;
  }

  #cat-meta.list-view .product-list .caption{
    padding-top: 10px !important;
    text-align: center !important;
  }
}

/* =========================================================
IPAD PORTRAIT ALIGNMENT FIX (768–991)
========================================================= */
@media (min-width: 768px) and (max-width: 991px){

  #cat-meta.grid-view .product-list > .homepage-product{
    height: 100%;
    display: flex !important;
    flex-direction: column !important;
  }

  #cat-meta.grid-view .homepage-product .caption{
    min-height: 60px !important;
  }

  #cat-meta .product-list .btn-hp-prod{
    margin-top: auto !important;
    width: 100% !important;
  }
}

/* =========================================================
IPAD LANDSCAPE & DESKTOP ALIGNMENT FIX (992+)
========================================================= */
@media (min-width: 992px){

  #cat-meta.grid-view .product-list > .homepage-product{
    height: 100%;
    display: flex !important;
    flex-direction: column !important;
  }

  #cat-meta.grid-view .homepage-product .caption{
    min-height: 60px !important;
  }

  #cat-meta .product-list .btn-hp-prod{
    margin-top: auto !important;
    align-self: center !important;
  }
}

/* =========================================================
CHILD CATEGORY TILES (FINAL HOVER)
Goal:
- NO gold line under image
- Gold border around image on hover
- Category name turns gold with ONE underline
========================================================= */

.CategoryChildCategoryHeader{ display: none; }
#cat-child-cats{ margin-bottom: 45px; }

/* 1) Kill any default underline everywhere in this tile area */
#cat-child-cats a{
  text-decoration: none !important;
}

/* 2) Neutralize Bootstrap pill link styling */
#cat-child-cats ul.nav.nav-pills{ background: transparent !important; }
#cat-child-cats ul.nav.nav-pills > li > a{
  background: transparent !important;
  padding: 8px 0 0 !important;
  border-radius: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Container (desktop inline tiles) */
#cat-child-cats > ul{
  text-align: center !important;
  font-size: 0 !important; /* inline-block whitespace kill */
  margin: 0 -0.5% !important;
}

/* Item */
#cat-child-cats > ul > li.CategoryChildCategories{
  float: none !important;
  display: inline-block !important;
  margin-bottom: 15px !important;
  vertical-align: top !important;
  text-align: center !important;
  transition: transform 0.25s ease !important;
}

/* 3) Thumbnail frame: NO bottom border/line, only border on hover */
#cat-child-cats .CategoryCategoryThumbnail{
  width: 100% !important;
  max-width: 280px !important;
  height: 280px !important;
  margin: 0 auto 10px auto !important;
  overflow: hidden !important;
  border-radius: 6px !important;

  border: 2px solid transparent !important;
  border-bottom: 2px solid transparent !important; /* explicitly kill any bottom rule */
  background: #fff !important;

  box-sizing: border-box !important;
  transition: border-color 0.25s ease !important;
}

/* If platform wraps thumbnail in <a>, ensure no underline/border shows */
#cat-child-cats .CategoryCategoryThumbnail a,
#cat-child-cats .CategoryCategoryThumbnail a:hover{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  text-decoration: none !important;
}

/* Also kill any “gold line” caused by image border */
#cat-child-cats .CategoryCategoryThumbnail img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border: 0 !important;
  outline: 0 !important;
}

/* 4) Label link: single underline via ::after ONLY */
#cat-child-cats > ul > li.CategoryChildCategories > a{
  display: inline-block !important;
  padding: 8px 0 0 !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;

  color: #2f353b !important;
  text-decoration: none !important;
  border: 0 !important;

  position: relative !important;
  transition: color 0.25s ease !important;
}

/* Single underline (animated) */
#cat-child-cats > ul > li.CategoryChildCategories > a::after{
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -4px !important;

  height: 1px !important;
  width: 0% !important;
  margin: 0 auto !important;

  background: #c7a262 !important;
  transition: width 0.25s ease !important;
}

/* Unified hover: hover tile -> affects image + label */
#cat-child-cats > ul > li.CategoryChildCategories:hover .CategoryCategoryThumbnail{
  border-color: #c7a262 !important;
}
#cat-child-cats > ul > li.CategoryChildCategories:hover > a{
  color: #c7a262 !important;
}
#cat-child-cats > ul > li.CategoryChildCategories:hover > a::after{
  width: 100% !important;
}

/* Optional subtle lift (desktop only feel) */
#cat-child-cats > ul > li.CategoryChildCategories:hover{
  transform: translateY(-4px);
}

/* 5 across desktop */
@media (min-width: 992px){
  #cat-child-cats > ul > li.CategoryChildCategories{
    width: 19% !important;
    margin: 0 0.5% 20px 0.5% !important;
    padding: 0 !important;
  }
  #cat-child-cats .CategoryCategoryThumbnail{ margin-bottom: 0 !important; }
}

/* =========================================================
MOBILE: Subcategory list — thumbnail on left with box
========================================================= */
@media (max-width: 767px){

  /* Remove the inline-grid behavior */
  #cat-child-cats > ul{
    font-size: 16px !important;
    margin: 0 !important;
    text-align: left !important;
  }

  #cat-child-cats > ul > li.CategoryChildCategories{
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;

    padding: 12px !important;
    margin: 0 0 12px 0 !important;

    background: #fff !important;
    border: 1px solid #e6e6e6 !important;
    border-radius: 12px !important;

    transform: none !important; /* kill hover lift on mobile */
  }

  /* Thumbnail becomes small left icon */
  #cat-child-cats .CategoryCategoryThumbnail{
    width: 64px !important;
    height: 64px !important;
    max-width: none !important;
    margin: 0 !important;

    border-radius: 10px !important;
    border: 1px solid #eee !important;
    flex: 0 0 64px !important;
  }

  /* Ensure the thumb fills */
  #cat-child-cats .CategoryCategoryThumbnail a,
  #cat-child-cats .CategoryCategoryThumbnail img{
    width: 100% !important;
    height: 100% !important;
  }

  /* Label becomes the main row text (no underline animation on mobile) */
  #cat-child-cats > ul > li.CategoryChildCategories > a{
    flex: 1 1 auto !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;

    font-size: 16px !important;
    line-height: 1.2 !important;
    color: #2f353b !important;
  }

  /* Disable underline effect on mobile */
  #cat-child-cats > ul > li.CategoryChildCategories > a::after{
    display: none !important;
  }

  /* Optional: tap feedback */
  #cat-child-cats > ul > li.CategoryChildCategories:active{
    border-color: #c7a262 !important;
  }
}

/* =========================================================
CATEGORY GRID — KILL THUMBNAIL HOVER BORDER (ONLY CARD GETS HOVER)
========================================================= */

/* Remove any border/outline/box-shadow that appears on the thumbnail area */
#cat-meta.grid-view .product-list .thumbnail,
#cat-meta.grid-view .product-list .thumbnail:hover,
#cat-meta.grid-view .product-list .thumbnail:focus,
#cat-meta.grid-view .product-list .thumbnail:active,
#cat-meta.grid-view .product-list .thumbnail a,
#cat-meta.grid-view .product-list .thumbnail a:hover,
#cat-meta.grid-view .product-list .thumbnail img,
#cat-meta.grid-view .product-list .thumbnail img:hover{
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* =========================================================
CATEGORY GRID (PLP) — Unified hover
- Card shows hover
- Title turns gold on CARD hover
- Title does NOT underline on its own hover
========================================================= */

/* Remove underline hover ONLY for product titles in grid */
#cat-meta.grid-view .product-list .caption a.h5,
#cat-meta.grid-view .product-list .caption a.h5:hover,
#cat-meta.grid-view .product-list .caption a.h5:focus{
  text-decoration: none !important;
  border-bottom: 0 !important;
}

/* Keep brand cue: title turns gold when the CARD is hovered */
#cat-meta.grid-view .product-list > .homepage-product:hover .caption a.h5{
  color: #C7A262 !important;
  text-decoration: none !important;
}
/* [/Category] */

/* [ShoppingCart] */
/* ==========================================================
Shopping Cart CSS (CLEAN REPLACEMENT)
========================================================== */

.acceptedPaymentMethodLogos .PayPalCommerce { background: url("/store/images/logo/paypal.png") no-repeat; }
.acceptedPaymentMethodLogos .ApplePay { background: url("/store/images/logo/applepay.png") no-repeat; }
.acceptedPaymentMethodLogos .PayWithAmazon { background: url("/store/images/logo/amazonpay.png") no-repeat; }
.acceptedPaymentMethodLogos .AffirmCheckout { background: url("/store/images/logo/affirm.png") no-repeat; }
.acceptedPaymentMethodLogos .Afterpay { background: url("/store/images/logo/afterpay.png") no-repeat; }
.acceptedPaymentMethodLogos .Sezzle { background: url("/store/images/logo/sezzle.png") no-repeat; }
.acceptedPaymentMethodLogos .Apruve { background: url("/store/images/logo/apruve.png") no-repeat; }
.acceptedPaymentMethodLogos .Coinbase { background: url("/store/images/logo/coinbase.png") no-repeat; }
.acceptedPaymentMethodLogos .OrangeMoney { background: url("/store/images/logo/orangemoney.png") no-repeat; }

.acceptedCreditCardLogos div[role="img"], .acceptedPaymentMethodLogos li[role="img"] { background-position: center; }

.acceptedPaymentMethodLogos { padding: 0; }

.ShoppingCartTable { width: 100%; }
div.ShoppingCart { text-align: left; padding: 30px 0 0; vertical-align: top; }

.ShoppingCartProductDescriptionHeader { width: 235px; }
.ShoppingCartSpacer { width: 20px; padding: 0; }
.ShoppingCartUnitPriceHeader { text-align: center; }
.ShoppingCartTotalHeader { text-align: center; }
.ShoppingCartQuantityHeader { text-align: center; }

.CartBorder { border: none; height: 75px; }
.ShoppingCartQuantity .CartBorder { line-height: 1; }

.ProductInfo { margin: 0; }
.ItemName a { color: #000; }
.ItemNumber { color: #666; font-size: 11px; }
.Variants { color: #666; font-size: 11px; }
.Personalizations { color: #666; font-size: 11px; }

.ShoppingCartPrice { font-weight: normal; font-size: 20px; text-align: center; padding: 30px 0 0 0; vertical-align: top; }
.ShoppingCartQuantity { text-align: center; vertical-align: top; }
.ShoppingCartRemove { text-align: center; }

.UnderCartSubTotal {
  border: 1px solid #dddfde;
  border-left: none;
  border-right: none;
  margin-top: 30px;
  text-align: right;
  padding: 10px 20px;
  line-height: 100%;
}

.UpdateButton { font-size: 10px; }

.ShoppingCartPage td.ShoppingCartTotals { text-align: left; padding: 5px; font-weight: bold; }
td.ShoppingCartTotals { text-align: right; }
td.ShoppingCartDiscount { text-align: left; padding: 5px; }

.ShoppingCartClear { float: left; text-align: left; }
.ShoppingCartChildBranch { float: left; vertical-align: top; }
.dvChkSelect { display: inline; }

.PayPalGoogleCO { text-align: center; }
.ShoppingCartError { text-align: center; }

#dvCalculateShippingForm { text-align: left; }
.ShippingCalcLabel { font-weight: bold; }
.ShippingCalcField { padding: 5px 0 0 0; }
.ShippingCalcFieldLabel { display: block; text-align: left; padding: 2px 0 0; }

.ShoppingCartSelectCheckbox { border: 0; }
.ShoppingCartQtyTextbox { width: 40px; text-align: center; }

.ShoppingCartInlineCalculateShippingForm { display: inline; }
.ShoppingCartInlinePostalCode { display: inline; float: left; }
.ShoppingCartInlinePostalCodeTextbox { width: 72px; }
.ShoppingCartCouponCodeTextbox { width: 80px; }
.ShoppingCartSavedCartText { text-align: center; }

.cartCents, .cartUnits { font-size: 60%; top: -5px; position: relative; }

.CartItemPriceArea, .CartItemTotalArea, .CartUpdateItemArea { 
  display: table; 
  margin: 0 auto; 
  text-align: center; 
  height: auto; 
  min-height: 0; 
  line-height: 1; 
}

.CartItemPriceArea > div, .CartItemTotalArea > div, .CartUpdateItemArea > div { 
  display: table-cell; 
  vertical-align: top; 
}

.SubTotal {
  font-size: 17px;
  font-weight: 600;
  text-transform: none;
  color: #333;
}
.Discounts { color: #dd4c15; line-height: 25px; }
.ShippingCost { line-height: 25px; }

.LineItemPrice { float: right; text-align: right; font-weight: bold; font-size: 23px; *position: relative; *top: -25px; }
.PriceNegative { color: #dd4c15; }

.GiftCertificates p { font-size: 11px; opacity: 0.75; }
.GiftCertificates .LineItemPrice { font-size: 14px; }

.ShoppingCartTotalsArea { position: relative; clear: both; }
.ShoppingCartTotalsTable { width: 100%; margin-bottom: 15px; }
.ShoppingCartLeftBottom { text-align: center; }

.OrderTotal { line-height: 25px; font-size: 14px; margin: 12px 0; padding: 10px 0 0; border-top: 1px solid #e5e5e5; }
.OrderTotal .LineItemPrice { font-size: 26px; }
.cart-total-note {
  clear: both;
  font-size: 12px;
  line-height: 1.4;
  color: #666;
  margin-top: 4px;
}
.ShoppingCartButtons { margin: 20px 0 20px; text-align: right; }
.ShoppingCartCustomMessage {  }
.TopCheckoutButton { text-align: right; }

.PayWith { position: relative; border: 1px solid #dddfde; border-radius: 4px; padding: 20px 0 15px; margin: 20px 0 0; text-align: center; }
.PayWith strong { position: absolute; top: -7px; font-style: italic; display: block; margin-left: -50px; background: #fff; width: 100px; line-height: 100%; left: 50%; font-size: 13px; }

.ShoppingCartCouponCode { padding: 20px 0; }
.ShoppingCartCouponCode h3 { text-transform: uppercase; cursor: pointer; font-size: 18px; color: #333; background: none; }
.CouponEntry { display: none; position: relative; margin: 0 0 20px 0; }
.CouponMsg { margin: 5px 0; }

.ShippingSelect { position: relative; margin: 0 5px 0 0; }
.ShippingSelect select { width: 210px; }
.ShippingSelect input { float: right; }
.ShippingSelect input[type=radio] { float: none; width: auto; }
.ShippingSelect input[type=radio] + label { display: inline; padding: 0; }

.acceptedCreditCardLogos {  }
.acceptedCreditCardLogos div, .acceptedPaymentMethodLogos li { display: inline-block; *display: inline; zoom: 1; margin: 0px 2px 10px; padding: 0; height: 22px; width: 33px; }
.acceptedCreditCardLogos .jcb { background: url("/store/i/jcb_33x22.jpg") no-repeat; }
.acceptedCreditCardLogos span { display: none; }
.acceptedCreditCardLogos .visa { background: url(../images/ccs/visa.png) no-repeat; }
.acceptedCreditCardLogos .amex { background: url(../images/ccs/amex.png) no-repeat; }
.acceptedCreditCardLogos .discover { background: url(../images/ccs/discover.png) no-repeat; }
.acceptedCreditCardLogos .bankcard { background: url("/store/i/bankcard_33x22.jpg") no-repeat; }
.acceptedCreditCardLogos .mastercard { background: url(../images/ccs/mastercard.png) no-repeat; }
.acceptedCreditCardLogos .dinersclub { background: url("/store/i/diners_33x22.jpg") no-repeat; }

.LastItemAdded { font-size: 11px; min-height: 100px; margin-right: 255px; background: #f2f3f5; border-radius: 3px; padding: 1px; margin-bottom: 10px; }
.LastItemAdded img { float: left; margin-right: 10px; max-width: 75px; max-height: 80px; }
.LastItemAdded strong { display: block; padding: 0 0 10px; border-bottom: 2px solid #DDDFDE; font-size: 14px; }

.UpsellItem { padding: 10px 0 0; display: block; margin: auto; cursor: pointer; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-color: transparent; border-style: solid; border-width: 1px; overflow: hidden; }
.UpsellItem:hover { background-color: #fff; border-color: #686868; color: #1D4B7C; text-decoration: none; }
.UpsellItemAddToCartText { visibility: hidden; padding: 4px; background: #686868; font-weight: bold; color: #fff; }
.UpsellItem:hover .UpsellItemAddToCartText { visibility: visible; }

/* =========================================
ABECTA HOUSE — PROCEED TO CHECKOUT (PRIMARY CTA)
Force override of Bootstrap .btn.btn-primary
========================================= */

/* Base */
#cart-btns input.ShoppingCartCheckoutThemeButton,
input.ShoppingCartCheckoutThemeButton.btn.btn-primary,
input#ctl31_btnCheckOut.ThemeButton.CheckoutThemeButton.ShoppingCartCheckoutThemeButton {

  /* FIX the "short button" issue */
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;

  /* Match PDP CTA */
  padding: 14px 16px !important;
  line-height: 1.2 !important;

  /* FORCE gold (beats btn-primary) */
  background-color: #C7A262 !important;
  border-color: #C7A262 !important;
  background-image: none !important;

  color: #2F353B !important;

  border-width: 0 !important;
  border-radius: 6px !important;

  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;

  cursor: pointer;

  transition: background-color 0.15s ease-in-out, transform 0.05s ease-in-out;
}

/* Hover — premium subtle darken */
#cart-btns input.ShoppingCartCheckoutThemeButton.CheckoutThemeButton.btn.btn-primary:hover,
input#ctl31_btnCheckOut.ThemeButton.CheckoutThemeButton.ShoppingCartCheckoutThemeButton:hover{
  background-color: #B8964E !important;
  border-color: #B8964E !important;
  background-image: none !important;
  color: #2F353B !important;
}

/* Active — slightly deeper */
#cart-btns input.ShoppingCartCheckoutThemeButton.CheckoutThemeButton.btn.btn-primary:active,
input#ctl31_btnCheckOut.ThemeButton.CheckoutThemeButton.ShoppingCartCheckoutThemeButton:active{
  background-color: #A9873F !important;
  border-color: #A9873F !important;
  background-image: none !important;
  color: #2F353B !important;
  transform: translateY(1px);
}

/* Focus (keyboard) — same specificity */
#cart-btns input.ShoppingCartCheckoutThemeButton.CheckoutThemeButton.btn.btn-primary:focus-visible,
input#ctl31_btnCheckOut.ThemeButton.CheckoutThemeButton.ShoppingCartCheckoutThemeButton:focus-visible{
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(199, 162, 98, 0.45) !important;
}


.RewardPointsEarned { text-align: center; }
.PointsTotal { font-size: 12px; font-weight: normal; }

.ShoppingCartButtons .ThemeButton { margin-bottom: 4px; vertical-align: top; }
.ShoppingCartButtons .ThemeButton:last-of-type { margin-bottom: 0; }

@media screen and (min-width: 769px) {
  #cart-btns { text-align: center; }
  #cart-btns input { display: inline-block !important; margin: 0 15px !important; }
}

/* ==========================================================
CART qty spinner: FIXED ALIGNMENT
========================================================== */

/* kill plugin inline wrapper spacing */
span.qty-spinner[style] { margin-right: 0 !important; }

/* Wrapper: Use flexbox to keep them in a perfect row */
span.qty-spinner { display: inline-flex !important; flex-direction: row !important; flex-wrap: nowrap !important; gap: 0 !important; white-space: nowrap !important; vertical-align: middle !important; align-items: stretch !important; /* Forces all items to exact same height */ font-size: 0 !important; }

/* force correct visual order (DOM is: input, up, down) */
span.qty-spinner > a.icon-chevron-down { order: 1 !important; }
span.qty-spinner > input.ShoppingCartQtyTextbox { order: 2 !important; }
span.qty-spinner > a.icon-chevron-up { order: 3 !important; }

/* OVERRIDE the "abs" class + inline positioning */
span.qty-spinner > a.abs { position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; }

/* Input Box: Strict height enforcement */
span.qty-spinner > input.ShoppingCartQtyTextbox { display: inline-block !important; vertical-align: middle !important; width: 40px !important; height: 32px !important; min-height: 32px !important; /* Prevents theme from making it taller */ max-height: 32px !important; /* Prevents theme from making it taller */ margin: 0 !important; padding: 0 0 1.5px 0 !important; /* Ensures text fits within the 32px */ text-align: center !important; box-sizing: border-box !important; border-top: 1px solid #b7b7b7 !important; border-bottom: 1px solid #b7b7b7 !important; border-left: 0 !important; border-right: 0 !important; border-radius: 0 !important; font-size: 16px !important; line-height: 32px !important; /* 32px height - 2px border = 30px line-height */ font-family: inherit !important; }

/* Buttons: Ensure they match the input exactly */
span.qty-spinner > a.icon-chevron-down, span.qty-spinner > a.icon-chevron-up { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 28px !important; height: 32px !important; min-height: 32px !important; max-height: 32px !important; margin: 0 !important; padding: 0 !important; border: 1px solid #b7b7b7 !important; background: #fff !important; box-sizing: border-box !important; border-radius: 0 !important; text-decoration: none !important; font-size: 0 !important; line-height: 0 !important; overflow: hidden !important; }

/* kill icon-font glyph */
span.qty-spinner > a.icon-chevron-down::before, span.qty-spinner > a.icon-chevron-up::before { content: "" !important; display: none !important; }

/* draw symbols: fill button and center */
span.qty-spinner > a.icon-chevron-down::after, span.qty-spinner > a.icon-chevron-up::after { display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; height: 100% !important; font-size: 18px !important; color: #555 !important; line-height: 1 !important; }

span.qty-spinner > a.icon-chevron-down::after { content: "−" !important; }
span.qty-spinner > a.icon-chevron-up::after { content: "+" !important; }

/* hover */
span.qty-spinner > a.icon-chevron-down:hover, span.qty-spinner > a.icon-chevron-up:hover { background: #666 !important; }
span.qty-spinner > a.icon-chevron-down:hover::after, span.qty-spinner > a.icon-chevron-up:hover::after { color: #fff !important; }

/* paranoia: theme spacing on links */
span.qty-spinner > a { letter-spacing: 0 !important; word-spacing: 0 !important; }



/* =========================================
ABECTA HOUSE — MOBILE CART REPLACEMENT
Exact mobile fix for #tblCart / ShoppingCartTable
Place at very bottom of Shopping Cart CSS
========================================= */
@media (max-width: 767px){

  /* Prevent page-level sideways scroll */
  html,
  body{
    overflow-x: hidden;
  }

  /* Cart area container safety */
  .ShoppingCartPage,
  .ShoppingCartPage .row,
  .ShoppingCartPage .col-sm-8,
  .ShoppingCartPage .col-sm-4,
  #tblCart,
  .ShoppingCartTable{
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* Kill desktop table behavior */
  #tblCart,
  #tblCart thead,
  #tblCart tbody,
  #tblCart tr,
  #tblCart th,
  #tblCart td{
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Hide desktop table headers */
  #tblCart thead{
    display: none !important;
  }

  /* Each cart item becomes a card */
  #tblCart tr{
    border-top: 1px solid #dddfde !important;
    padding: 4px 0 !important;
    margin: 0 !important;
  }

  /* Do not show select-all row on mobile */
  #trSelectAll{
    display: none !important;
  }

  /* Base cell reset */
  #tblCart td{
    border: 0 !important;
    padding: 1px 0 !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
    text-align: left !important;
    vertical-align: top !important;
  }

  /* Hide only the spacer column */
  #tblCart td.ShoppingCartSpacer{
    display: none !important;
  }

  /* Product description cell */
  #tblCart td:first-child{
    padding: 0 !important;
  }

  /* Product description inner padding */
  #tblCart td:first-child .pad-20.no-pad-lr{
    padding: 0 !important;
  }

  /* Hide nonessential desktop-only elements */
  #tblCart .dvChkSelect,
  #tblCart .ShoppingCartChildBranch{
    display: none !important;
  }

  /* Thumbnail */
  #tblCart a.thumbnail{
    float: left !important;
    clear: none !important;
    margin: 0 10px 0 0 !important;
    width: 92px !important;
    max-width: 92px !important;
  }

  #tblCart a.thumbnail img,
  #tblCart .thumbnail img,
  #tblCart img{
    display: block !important;
    width: 100% !important;
    max-width: 92px !important;
    height: auto !important;
  }

  /* Product info */
  #tblCart .ProductInfo{
    overflow: hidden !important;
    margin: 0 !important;
    min-width: 0 !important;
  }

  #tblCart .ItemName,
  #tblCart .ItemName a{
    display: block !important;
    font-size: 17px !important;
    line-height: 1.08 !important;
    font-weight: 600 !important;
    color: #000 !important;
    margin: 0 !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
  }

  #tblCart .ItemNumber,
  #tblCart .Variants,
  #tblCart .Personalizations,
  #tblCart .CallForShipping,
  #tblCart .ShoppingCartItemNotes,
  #tblCart .ItemField{
    font-size: 11px !important;
    line-height: 1 !important;
    margin: 0 0 2px 0 !important;
  }

  /* Stack price / qty / total properly */
  #tblCart td.ShoppingCartPrice,
  #tblCart td.ShoppingCartQuantity,
  #tblCart td.ShoppingCartRemove{
    display: block !important;
    width: 100% !important;
    padding-left: 98px !important;
    margin-bottom: -3px !important;
  }

  /* Mobile cart labels — use only actual content wrappers */
  #tblCart td.ShoppingCartPrice::before,
  #tblCart td.ShoppingCartQuantity::before,
  #tblCart td.ShoppingCartRemove::before,
  #tblCart .CartItemPriceArea::before,
  #tblCart .CartItemTotalArea::before,
  #tblCart .CartUpdateItemArea::before,
  #tblCart .CartItemPriceArea > div:first-child::before,
  #tblCart .CartItemTotalArea > div:first-child::before,
  #tblCart .CartUpdateItemArea > div:first-child::before{
    content: none !important;
    display: none !important;
  }

  #tblCart .CartItemPriceArea{
    position: relative;
  }

  #tblCart .CartUpdateItemArea{
    position: relative;
  }

  #tblCart .CartItemTotalArea{
    position: relative;
  }

  #tblCart .CartItemPriceArea::before,
  #tblCart .CartUpdateItemArea::before,
  #tblCart .CartItemTotalArea::before{
    display: block !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    color: #666 !important;
    margin: 0 !important;
  }

  #tblCart .CartItemPriceArea::before{
    content: "Unit Price" !important;
  }

  #tblCart .CartUpdateItemArea::before{
    content: "Quantity" !important;
  }

  #tblCart .CartItemTotalArea::before{
    content: "Total" !important;
  }

  /* Remove desktop centering and fixed-height table behavior */
  .ShoppingCartPrice,
  .ShoppingCartQuantity,
  .ShoppingCartRemove,
  .CartItemPriceArea,
  .CartItemTotalArea,
  .CartUpdateItemArea,
  .CartItemPriceArea > div,
  .CartItemTotalArea > div,
  .CartUpdateItemArea > div{
    display: block !important;
    height: auto !important;
    line-height: 0.95 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    vertical-align: top !important;
  }

  /* Price styling */
  .ShoppingCartPrice{
    font-size: 18px !important;
    padding: 0 !important;
  }

  .cartCents,
  .cartUnits{
    font-size: 60% !important;
    top: -3px !important;
  }

  /* Qty wrapper */
  .qty-wrapper{
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    max-width: 100% !important;
    margin-top: 0px !important;
  }

  .ShoppingCartQtyTextbox{
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 36px !important;
    text-align: center !important;
    padding: 4px 2px !important;
    font-size: 16px !important;
  }

  span.qty-spinner{
    display: inline-flex !important;
    align-items: stretch !important;
    max-width: 100% !important;
  }

  span.qty-spinner > button.minus,
  span.qty-spinner > button.plus{
    width: 28px !important;
    min-width: 28px !important;
    height: 36px !important;
    font-size: 24px !important;
    line-height: 1 !important;
  }

  span.qty-spinner > input,
  span.qty-spinner > .ShoppingCartQtyTextbox{
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 36px !important;
    font-size: 16px !important;
    padding: 4px 2px !important;
  }

  /* Update button */
  .UpdateButton{
    margin-top: 4px !important;
    margin-bottom: 0 !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  .UpdateButton input,
  .UpdateButton a,
  .UpdateButton button{
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
  }

  /* Remove extra under-item spacing problems */
  .CartBorder{
    height: auto !important;
    min-height: 0 !important;
    border: 0 !important;
  }

  /* Button area cleanup */
  .ShoppingCartButtons,
  #cart-btns{
    text-align: center !important;
  }

  /* Shipping / coupon / saved cart right rail should stack cleanly */
  .ShippingSelect select{
    width: 100% !important;
    max-width: 100% !important;
  }

  .ShoppingCartInlinePostalCodeTextbox,
  .ShoppingCartCouponCodeTextbox{
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Tighten wrapper spacing */
  #tblCart .CartItemPriceArea,
  #tblCart .CartUpdateItemArea,
  #tblCart .CartItemTotalArea,
  #tblCart .CartItemPriceArea > div,
  #tblCart .CartItemTotalArea > div,
  #tblCart .CartUpdateItemArea > div{
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.1 !important;
  }

  .LastItemAdded{
    margin-right: 0 !important;
  }

  /* Push live chat widget lower on mobile if present */
  .LiveChatWidget,
  #livechat{
    bottom: 90px !important;
  }
}

/* Remove link hover color */
a.RemoveFromCartLink:hover,
a.RemoveFromCartLink:active,
a.RemoveFromCartLink:focus,
a.RemoveFromCartLink:focus-visible{
  color: #C7A262 !important;
  text-decoration: none !important;
  outline: none !important;
}

/* Update link hover color */
.UpdateButton a:hover,
.UpdateButton a:active,
.UpdateButton a:focus,
.UpdateButton a:focus-visible{
  color: #C7A262 !important;
  text-decoration: none !important;
  outline: none !important;
}
/* [/ShoppingCart] */

/* [LargeShoppingCart] */
.ShoppingCart {  }
.ShoppingCartHeader {  }
.ShoppingCartClear {  }
.ShoppingCartPrice {  }
.ShoppingCartTotals {  }
.ShoppingCartShippingInfo {  }
.ShoppingCartDiscount {  }
.ShoppingCartCouponCode {  }
.ShoppingCartThumbnail {  }
.ShoppingCartItemNr {  }
.ShoppingCartVariations {  }
.ShoppingCartPersonalize {  }
.ShoppingCartGiftMessage {  }
.ErrorText {  }
.ShoppingCartSelectCheckbox { border: 0; }
input.ShoppingCartQtyTextbox { width: 40px; padding: 0; }
.ShoppingCartInlineCalculateShippingForm { display: inline; }
.ShoppingCartInlinePostalCode { display: inline; float: left; }
.ShoppingCartInlinePostalCodeTextbox { width: 150px; }
.ShoppingCartCouponCodeTextbox { width: 80px; }
.ShoppingCartSavedCartText { text-align: center; }
/* [/LargeShoppingCart] */

/* [LinkGroup] */

/* [/LinkGroup] */

/* [MailingList] */

/* [/MailingList] */

/* [ManufacturerNavigationLinks] */

/* [/ManufacturerNavigationLinks] */

/* [MicroStoreDropDown] */
.MicroStoreDropDown { width: 160px; }
/* [/MicroStoreDropDown] */

/* [ProductDisplay] */
.FeaturedItemsRating {  }
...

/* [ProductDisplay] */
.FeaturedItemsRating {  }
.FeaturedItemsDetails {  }
.FeaturedItemsPriceHR {  }
.FeaturedItemsPriceAlignment {  }
.FeaturedItemsBuyMoreLinkHR {  }
.FeatureItemsThumbNail {  }
.PriceLabels {  }
.ProductDisplayBuyNowLink { font-size: 7pt; text-decoration: none; }
.ProductDisplayMoreLink { font-size: 7pt; text-decoration: none; }
.ProductDisplayStatus { font-size: 7pt; text-decoration: none; }
.ProductDisplayBuyMoreArea { float: right; padding-right: 5px; display: inline; }
/* =========================================
Widget 10898 — Tablet fix for 768px devices
========================================= */
@media (min-width: 768px) and (max-width: 991px){

  /* Make tablet cards 2 per row */
  .Control_10898 .homepage-product{
    width: 50% !important;
    max-width: 50% !important;
    float: left !important;
    display: block !important;
    margin-bottom: 24px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    box-sizing: border-box !important;
  }

  /* Let the inner card stretch normally */
  .Control_10898 .homepage-product > div,
  .Control_10898 .hp-prod-card{
    height: auto !important;
  }

  /* Reduce image area slightly for tablet */
  .Control_10898 .homepage-product a.thumbnail{
    height: 200px !important;
    margin-bottom: 8px !important;
  }

  .Control_10898 .homepage-product a.thumbnail img{
    max-height: 180px !important;
  }

  /* Keep title area controlled */
  .Control_10898 .hp-prod-title{
    min-height: 40px !important;
    max-height: 40px !important;
    line-height: 1.25 !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  /* Critical: button must not be too wide */
  .Control_10898 a.btn-hp-prod,
  .Control_10898 a.btn.btn-hp-prod,
  .Control_10898 a.btn.btn-sm.btn-hp-prod,
  .Control_10898 a.btn.btn-blue.btn-hp-prod,
  .Control_10898 a.btn.btn-sm.btn-blue.btn-hp-prod{
    min-width: 0 !important;
    width: 100% !important;
    max-width: 180px !important;
    margin: 10px auto 0 !important;
    font-size: 13px !important;
    padding: 10px 12px !important;
  }
}
/* [/ProductDisplay] */

/* [ProductReviewsListing] */
.ProductReviewDimensionName {  }
.ProductReviewSummary {  }
.ProductReviewWriteLink {  }
.ProductReviewAllReviewsLink {  }
.ProductReviewTitle {  }
.ProductReviewRatings {  }
.ProductReviewBody {  }
.ProductReviewProsArea {  }
.ProductReviewProsHeader {  }
.ProductReviewPros {  }
.ProductReviewConsArea {  }
.ProductReviewConsHeader {  }
.ProductReviewCons {  }
.ProductReviewItemMeta {  }
/* [/ProductReviewsListing] */

/* [QuickOrderEntry] */
.QuickOrderEntryHeader { text-align: center; }
.QuickOrderEntryItemNumberTextbox { width: 100px; }
.QuickOrderEntryQuantityTextbox { width: 50px; }
.QuickOrderEntryAddButton { text-align: center; }
/* [/QuickOrderEntry] */

/* [RepeatedList] */

/* [/RepeatedList] */

/* [RSSFeedReader] */

/* [/RSSFeedReader] */

/* [SearchBox] */

/* [/SearchBox] */

/* [SmallShoppingCart] */
.SmallCartItemLink { text-decoration: underline; }
input.SmallCartQtyTextbox, input.SmallCartQtyTextbox:focus { padding: 0; border: none; border-bottom: 1px dotted #ccc; height: auto; width: 30px; box-shadow: none; border-radius: 0; text-align: center; }
input.SmallCartQtyTextbox:focus { border-color: #66afe9; }
.SmallCartItem .badge { line-height: 20px; width: 20px; padding: 0; }
/* [/SmallShoppingCart] */

/* [Tabs] */

/* [/Tabs] */

/* [TreeNavigation] */
.Node {  }
.NodeHover {  }
.NodeSelected {  }
.RootNode {  }
.LeafNode {  }
.Island {  }
/* [/TreeNavigation] */

/* [WidgetArea] */

/* [/WidgetArea] */

/* [Widget6082] */
.Control_6082 { float: left; }
.ControlHeader_6082 {  }
.ControlItem_6082 {  }
.ControlLink_6082 {  }
.ControlLink_6082 a {  }
.ControlLink_6082 a:hover {  }
.ControlLinkSeperator_6082 {  }
.ControlText_6082 {  }
.ControlInput_6082 {  }
.ControlFooter_6082 {  }
/* [/Widget6082] */

/* [Widget6083] */
.Control_6083 { float: right; }
.ControlHeader_6083 {  }
.ControlItem_6083 {  }
.ControlLink_6083 {  }
.ControlLink_6083 a {  }
.ControlLink_6083 a:hover {  }
.ControlLinkSeperator_6083 {  }
.ControlText_6083 {  }
.ControlInput_6083 {  }
.ControlFooter_6083 {  }
/* [/Widget6083] */

/* [Widget6076] */
.Control_6076 { text-align: right; }
.ControlHeader_6076 {  }
.ControlItem_6076 {  }
.ControlLink_6076 {  }
.ControlLink_6076 a {  }
.ControlLink_6076 a:hover {  }
.ControlLinkSeperator_6076 {  }
.ControlText_6076 {  }
.ControlInput_6076 {  }
.ControlFooter_6076 {  }
/* [/Widget6076] */

/* [Buttons] */
/* .ThemeButton { display: inline-block; background: #e4e4e4; -webkit-box-shadow: -1px 1px 0px 0px #dfdcdc inset, 1px -1px 0px 0px #bfbfbf inset, 0 10px 10px 0 rgba(255,255,255,0.5) inset; -moz-box-shadow: -1px 1px 0px 0px #dfdcdc inset, 1px -1px 0px 0px #bfbfbf inset, 0 10px 10px 0 rgba(255,255,255,0.5) inset; box-shadow: -1px 1px 0px 0px #dfdcdc inset, 1px -1px 0px 0px #bfbfbf inset, 0 10px 10px 0 rgba(255,255,255,0.5) inset; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; border: none; padding: 7px 15px; font-family: arial; font-size: 11px; color: #595959; font-weight: bold; cursor: pointer; }
.ThemeButton:hover { -webkit-box-shadow: 0px 0px 0px 1px #a8a8a8 inset, 1px 1px 4px 0px #bababa; -moz-box-shadow: 0px 0px 0px 1px #a8a8a8 inset, 1px 1px 4px 0px #bababa; box-shadow: 0px 0px 0px 1px #a8a8a8 inset, 1px 1px 4px 0px #bababa; color: #424242; }
.ThemeButton:active { background: #e6e6e6; -webkit-box-shadow: 0px 1px 5px 0px #808080 inset; -moz-box-shadow: 0px 1px 5px 0px #808080 inset; box-shadow: 0px 1px 5px 0px #808080 inset; } */
.GoThemeButton { padding: 5px; }
/* [/Buttons] */

/* [Slideshow] */
.Slideshow { position: relative; }
.SlideList, Slide { margin: 0; padding: 0; list-style: none; }
.Slide { overflow: hidden; }
.SlideshowButtons { margin: 0; padding: 0; left: 1em; bottom: 1em; position: absolute; }
.SlideshowButton { margin: 0 1em 0 0; padding: 0; float: left; list-style: none; }
.SlideshowButtonLink { float: left; width: 20px; height: 20px; text-indent: -9999px; border: 3px solid #222; border-radius: 50%; }
.SlideshowButtonLinkCurrent { background: #222; }
.SlideshowButtonLink:focus { outline: none; }
.SlideshowPrevious { position: absolute; left: 5px; background: #666; color: #fff; }
.SlideshowNext { position: absolute; right: 5px; background: #666; color: #fff; }
.SlideshowPreviousLink { color: #fff; padding: 5px; display: block; }
.SlideshowNextLink { color: #fff; padding: 5px; display: block; }
/* [/Slideshow] */

/* [Widget5986] */
.Control_5986 {  }
.Control_5986 table { background: #f2f3f5; }
.Control_5986 td { vertical-align: top; }
.ControlHeader_5986 { font-size: 13px; font-style: italic; margin: 10px 0; text-align: center; }
.ControlItem_5986 { text-align: center; padding: 20px 0; border-bottom: 1px solid #dfdfe1; margin: 0 12px; }
.Control_5986 tr:last-child .ControlItem_5986 { border: none; }
.ControlLink_5986 { padding: 10px 0; display: block; width: 120px; overflow: hidden; text-overflow: ellipsis; }
.Control_5986 img.FeaturedItemsThumbNail { padding: 3px; border: 1px solid #DDDFDE !important; box-shadow: 2px 2px 3px #dddfde; max-width: 75px; max-height: 150px; }
.Control_5986 .lblPriceArea { font-size: 20px; }
/* [/Widget5986] */

/* [BlogRoll] */
/* these are shared between Blog Post, Blog Roll, and Blog Roll Widget */

.BlogPostCommentProfileName {  }
.BlogPostTitle { padding: 0; margin: 0; font-weight: normal; }
.BlogPostImage {  }
.BlogPostCategoryAndTags { padding: 15px 0; color: #999; }
.BlogPostTags { padding: 0 0 0 10px; display: inline; }
.BlogPostTag { display: inline-block; *display: inline; padding: 0 3px; background: #eee; border-radius: 3px; border: 1px solid #ddd; margin: 0 5px 0 0; }
.BlogPostTag a { color: #999; }
.BlogPostCategories, .BlogPostCategory { display: inline; }
.BlogCommentModerationMessage { background: #FEEFB3; color: #9F6000; border: 1px solid #9F6000; border-radius: 5px; padding: 10px; margin: 10px; -webkit-transition: 0.5s; -moz-transition: 0.5s; transition: 0.5s; }
.BlogCommentModerationMessage.Flash { background: #FFF5CF; -webkit-transition: 0.5s; -moz-transition: 0.5s; transition: 0.5s; }
.BlogPostComments  .BlogPostCommentsHeader, .BlogPostComments  .BlogPostCommentsHeader h3, .BlogPostComments  .BlogPostCommentCount { display: inline; font-size: 24px; }


.BlogRoll .BlogPostCommentProfileImage { float: left; padding-right: 10px; }
.BlogRoll .BlogPostCommentText { margin: 0; }
.BlogRoll .BlogPostCommentDisplayName { margin-top: -5px; }
.BlogRoll .BlogPostCommentsAddTextbox { height: 50px; }
.BlogRollFeedLinks { float: right; padding: 5px 0; }
.BlogRollBlogImage { padding: 0 0 10px 0; max-width: 100%; }
.BlogRollBlogImage img { display: block; max-width: 100%; }

.BlogPostDatePretty { position: relative; float: left; width: 50px; height: 45px; color: #999; margin: 10px 10px 10px 0; }
.DateMonth, .DateDay, .DateYear { position: absolute; text-indent: -9999px; background: url(/store/i/a/login-date-sprite.png) no-repeat; }
.DateMonth { top: 0; left: 0; width: 30px; height: 18px; }
.DateDay { top: 18px; font-size: 18px; line-height: 18px; width: 31px; height: 24px; text-align: center; }
.DateYear { right: 0; top: 0px; width: 21px; height: 45px; }
.month-1 { background-position: 0px -50px; }
.month-2 { background-position: 0px -81px; }
.month-3 { background-position: 0px -112px; }
.month-4 { background-position: 0px -143px; }
.month-5 { background-position: 0px -174px; }
.month-6 { background-position: 0px -205px; }
.month-7 { background-position: 0px -236px; }
.month-8 { background-position: 0px -267px; }
.month-9 { background-position: 0px -298px; }
.month-10 { background-position: 0px -329px; }
.month-11 { background-position: 0px -360px; }
.month-12 { background-position: 0px -391px; }

.day-1 { background-position: -51px -45px; }
.day-2 { background-position: -51px -76px; }
.day-3 { background-position: -51px -107px; }
.day-4 { background-position: -51px -138px; }
.day-5 { background-position: -51px -169px; }
.day-6 { background-position: -51px -200px; }
.day-7 { background-position: -51px -231px; }
.day-8 { background-position: -51px -263px; }
.day-9 { background-position: -51px -294px; }
.day-10 { background-position: -51px -325px; }
.day-11 { background-position: -51px -356px; }
.day-12 { background-position: -51px -387px; }
.day-13 { background-position: -51px -418px; }
.day-14 { background-position: -51px -449px; }
.day-15 { background-position: -101px -45px; }
.day-16 { background-position: -101px -76px; }
.day-17 { background-position: -101px -107px; }
.day-18 { background-position: -101px -139px; }
.day-19 { background-position: -101px -171px; }
.day-20 { background-position: -101px -201px; }
.day-21 { background-position: -101px -232px; }
.day-22 { background-position: -101px -263px; }
.day-23 { background-position: -101px -294px; }
.day-24 { background-position: -101px -325px; }
.day-25 { background-position: -101px -356px; }
.day-26 { background-position: -101px -387px; }
.day-27 { background-position: -101px -418px; }
.day-28 { background-position: -101px -450px; }
.day-29 { background-position: -101px -482px; }
.day-30 { background-position: -101px -513px; }
.day-31 { background-position: -101px -545px; }

.year-2011 { background-position: -145px -7px; }
.year-2012 { background-position: -145px -79px; }
.year-2013 { background-position: -145px -145px; }
.year-2014 { background-position: -145px -212px; }
.year-2015 { background-position: -145px -267px; }
.year-2016 { background-position: -145px -322px; }
.year-2017 { background-position: -145px -378px; }
.year-2018 { background-position: -145px -433px; }
.year-2019 { background-position: -145px -488px; }
.year-2020 { background-position: -145px -544px; }
/* [/BlogRoll] */

/* [BlogPost] */
.BlogPostCommentNameDate { font-size: 10px; }

.BlogPostAddCommentHide, .HideComments { display: none; }
.BlogPostCommentHighlightCurrent { background: #FFFCDF; border-radius: 3px; box-shadow: 0 0 10px rgba(0,0,0,0.2); }

.AdminCommentLabel, .AuthorCommentLabel { display: none; }
.AdminCommentLabel.BlogPostCommentByAdmin { display: inline; background: #fff; font-weight: bold; padding: 2px 3px; margin: 2px; }
.AuthorCommentLabel.BlogPostCommentByAuthor { display: inline; background: #fff; font-weight: bold; padding: 2px 3px; margin: 2px; }

.CommentReplies { margin-left: 100px; }
/* [/BlogPost] */

/* [Profile] */
.ProfileName { float: left; }
.PofileImage { float: right; padding: 0 0 20px 20px; }
.ProfileInfoTable { margin: 10px 0; clear: left; }
.ProfileTableHeader { margin-top: 20px; clear: both; }
.ProfileTable { width: 100%; }
.ProfileTable th { background: #eee; text-align: left; padding: 3px; }
.ProfileTable td { padding: 3px; border-bottom: 1px solid #eee; }
/* [/Profile] */

/* [BlogTagCloud] */
.BlogTagCloud.Control { text-align: justify; }
.TagCloudList { list-style-type: none; margin: 0; padding: 0; }
.BlogTagCloud .ControlItem { display: inline; padding: 0 5px 0 0; vertical-align: bottom; } 
.BlogTagCloud .ControlLink_Link { -webkit-transition: 0.5s; -moz-transition: -.5s; }
.BlogTagCloud .TagCloud_MinSize { opacity: 0.5; }
.BlogTagCloud .TagCloud_MedSize {  }
.BlogTagCloud .TagCloud_MaxSize { font-weight: bold; }
.BlogTagCloud .ControlLink_Link:hover { color: red; opacity: 1; -webkit-transition: 0.5s; -moz-transition: -.5s; }
/* [/BlogTagCloud] */

/* [WriteReview] */
ul.TagList li { width: 32%; }
ul.TagList:after { content: ''; display: table; clear: left; }
/* [/WriteReview] */

/* [OnePageCheckOut] */
.checkout .ShoppingCartTotals { text-align: left; font-size: inherit; font-weight: normal; padding: 5px 0; }
.checkout .ShoppingCartTotals b { font-weight: normal; }
.checkout .ShoppingCartPrice { font-size: inherit; text-align: right; padding: 5px 0; white-space: nowrap; }
#trDiscount a, #trDiscount a:hover { text-decoration: none; }
#trTotal span, #trTotal b, #trAdjustedTotal span, #trAdjustedTotal b { font-weight: bold; }
.OrderGiftingArea input[type=checkbox] { margin-right: 5px; }
#addrBilling_ddAddressList_dd_ddCombo, #addrShipping_ddAddressList_dd_ddCombo, #ddExpireMonth, #txtPointsToApply { width: 100% !important; }

.checkout label { position: relative; font-size: 1em; padding: 20px 0 0; }
.checkout label > span { position: absolute; top: 25px; line-height: 25px; left: 10px; font-size: 1em; font-weight: normal; transition: 0.1s; opacity: 0.5; cursor: text; }
.checkout label  span span, .checkout label input[type=checkbox] + span { position: static; opacity: 1; }
.checkout label.active span, .checkout label.filled span, .checkout label select ~ span, .checkout label select + span, .checkout .address-book-label span { top: 0; left: 5px; font-size: 10px; transition: 0.1s; -moz-transition: 0.1s; opacity: 1; cursor: default; }

/* this is a duplicate of the above rule, it seems to break firefox if it's included with the above selectors for some reason */
.checkout input:-webkit-autofill + span { top: 0; left: 5px; font-size: 10px; transition: 0.1s; -moz-transition: 0.1s; opacity: 1; cursor: default; }

.checkout input[type=checkbox], .checkout input[type=radio] { width: auto !important; }

.checkout label span.ErrorText { position: static; font-size: 12px; line-height: 1; color: #df8f8e; padding: 0; opacity: 1; margin: 10px 0 0; background: none; box-shadow: none; border: none; }
.field-has-error { background: #ffe4e3 !important; border-color: #df8f8e !important; }

.zip-code { display: table; }
.zip-code > div { display: table-cell; }
.zip-code label span { font-size: 12px; }
.zip-plus4 { max-width: 100px; }
.zip-plus4 input { padding: 0; }
.zip-plus4 > div { padding-left: 5px !important; }
.zip-plus4 > div:empty { padding: 0; }
.zip-plus4 > div:empty + span { display: none; }

.PublicCommentsArea { width: auto !important; position: static; float: none !important; }

.RequiredField { color: #df8f8e; font-weight: bold; line-height: 1; font-size: 150%; padding-left: 5px; }

.payment-method .payment-name { cursor: pointer; }
.payment-method .payment-name:before { display: inline-block; content: ' '; width: 0px; height: 0px; border-style: solid; border-color: transparent transparent transparent; border-left-color: inherit; border-width: 5px 5px 5px 10px; position: relative; top: -3px; }
.payment-method.active .payment-name:before { border-color: transparent; border-top-color: inherit; border-width: 10px 5px 5px 5px; top: 2px; }

.custom-fields .field { min-height: 80px; }

label.remove-payment, label.image-input-replace { position: relative; padding: 0; font-weight: inherit; }

label.remove-payment a, label.image-input-replace a { cursor: pointer; position: relative; z-index: 1; }

label.remove-payment input, label.image-input-replace input { position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; opacity: 0; z-index: 2; }

.floating-totals { min-height: 1px; }


.BillMeLater .payment-name { background: url('https://www.paypalobjects.com/webstatic/en_US/i/buttons/ppcredit_SM_BNPOT_1x.png') no-repeat top left; text-indent: 127px; margin-left: 20px; height: 40px; }
.BillMeLater .payment-name span { display: none; }
.BillMeLater .payment-name:before, .PayPal .payment-name:before { left: -147px; }
.BillMeLater .payment-name { background: url('https://www.paypalobjects.com/webstatic/en_US/i/buttons/ppcredit_SM_BNPOT_1x.png') no-repeat top left; text-indent: 127px; margin-left: 20px; height: 40px; }
.BillMeLater .payment-name span { display: none; }
.BillMeLater .payment-name:before, .PayPal .payment-name:before { left: -147px; }
.PayPalExpress .payment-name, .PayPal .payment-name { background: url('../images/paypal-logo.png') no-repeat top left; text-indent: 90px; margin-left: 20px; height: 25px; }
.PayPalExpress .payment-name:before, .PayPal .payment-name:before { left: -110px; }
.PayPalExpress .payment-name span, .PayPal .payment-name span { display: none; }
.PayPal .paypal-text { display: none; }
.PayPal.active .paypal-text { display: block; }
.OnePageCheckOut .ShoppingCartCouponCode { padding: 0; }
.PayPalCommerce .payment-name { background: url('https://www.paypalobjects.com/webstatic/mktg/Logo/pp-logo-100px.png') no-repeat top left; text-indent: 127px; margin-left: 20px; height: 26px; }
.PayPalCommerce .payment-name span { display: none; }
.PayPalCommerce .payment-name:before { left: -147px; }

/* =========================================
ABECTA HOUSE — PLACE ORDER (FINAL CTA)
Fix: override Bootstrap btn-primary (blue)
========================================= */

/* BASE (default) */
#btnPlaceOrder,
input#btnPlaceOrder,
button#btnPlaceOrder,
#btnPlaceOrder.ThemeButton.btn.btn-primary,
input#btnPlaceOrder.ThemeButton.btn.btn-primary,
button#btnPlaceOrder.ThemeButton.btn.btn-primary {
  display: block !important;
  width: 100% !important;

  padding: 14px 36px !important;
  line-height: 1.2 !important;

  background-color: #C7A262 !important;   /* Gold */
  border-color: #C7A262 !important;
  background-image: none !important;
  color: #2F353B !important;              /* Charcoal text */

  border-width: 0 !important;
  border-style: solid !important;
  border-radius: 6px !important;

  font-size: 17px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;

  cursor: pointer !important;

  transition: background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out,
    transform 0.05s ease-in-out !important;
}

/* HOVER — match ADD TO CART (slight darken) */
#btnPlaceOrder:hover,
input#btnPlaceOrder:hover,
button#btnPlaceOrder:hover,
#btnPlaceOrder.ThemeButton.btn.btn-primary:hover,
input#btnPlaceOrder.ThemeButton.btn.btn-primary:hover,
button#btnPlaceOrder.ThemeButton.btn.btn-primary:hover {
  background-color: #B8964E !important;
  border-color: #B8964E !important;
  background-image: none !important;
  color: #2F353B !important;
}

/* ACTIVE — press */
#btnPlaceOrder:active,
input#btnPlaceOrder:active,
button#btnPlaceOrder:active,
#btnPlaceOrder.ThemeButton.btn.btn-primary:active,
input#btnPlaceOrder.ThemeButton.btn.btn-primary:active,
button#btnPlaceOrder.ThemeButton.btn.btn-primary:active {
  background-color: #A9873F !important;
  border-color: #A9873F !important;
  color: #2F353B !important;
  transform: translateY(1px) !important;
}

/* FOCUS (keyboard) */
#btnPlaceOrder:focus-visible,
input#btnPlaceOrder:focus-visible,
button#btnPlaceOrder:focus-visible {
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(199, 162, 98, 0.45) !important;
}


/* =========================================
MINI CART — PROCEED TO CHECKOUT (ABECTA HOUSE)
Fix: override default blue + match PDP CTA behavior
========================================= */

/* BASE */
input.SmallCartCheckoutThemeButton,
input.SmallCartCheckoutThemeButton.btn.btn-primary,
input.SmallCartCheckoutThemeButton.btn-primary {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;

  padding: 12px 14px !important;
  line-height: 1.2 !important;

  background: #C7A262 !important;   /* hard override */
  background-color: #C7A262 !important;
  border-color: #C7A262 !important;
  background-image: none !important;

  color: #2F353B !important;             /* Charcoal text */

  border-width: 0 !important;
  border-style: solid !important;
  border-radius: 6px !important;

  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;

  cursor: pointer !important;

  transition: background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out,
    transform 0.05s ease-in-out !important;
}

/* HOVER — subtle premium darken */
input.SmallCartCheckoutThemeButton:hover,
input.SmallCartCheckoutThemeButton.btn.btn-primary:hover,
input.SmallCartCheckoutThemeButton.btn-primary:hover {
  background-color: #B8964E !important;
  border-color: #B8964E !important;
  background-image: none !important;
  color: #2F353B !important;
}

/* ACTIVE — press */
input.SmallCartCheckoutThemeButton:active,
input.SmallCartCheckoutThemeButton.btn.btn-primary:active,
input.SmallCartCheckoutThemeButton.btn-primary:active {
  background-color: #A9873F !important;
  border-color: #A9873F !important;
  color: #2F353B !important;
  transform: translateY(1px);
}

/* FOCUS */
input.SmallCartCheckoutThemeButton:focus-visible {
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(199, 162, 98, 0.45) !important;
}



.CardNumberIframe { height: 35px; }
.Afterpay .payment-name { background: url('/store/images/afterpay.png') no-repeat top left; background-size: 126px 35px; text-indent: 127px; margin-left: 20px; height: 30px; }
.Afterpay .payment-name:before { left: -147px; }

.order-summary-shipping-note{
  margin: 12px 0 16px 0;
  font-size: 15px;
  line-height: 1.6;
  color: #2F353B;
  font-weight: 500;
  max-width: 260px;
  letter-spacing: 0.1px;
  position: relative;
  padding-left: 18px;
}

.order-summary-shipping-note::before{
  content: "✓";
  position: absolute;
  left: 0;
  top: 2px;
  color: #4A5D54;
  font-weight: 700;
}
/* [/OnePageCheckOut] */

/* [MyAccount] */
.MyAccountPercentBarArea { border: 1px solid #999; border-radius: 5px; }
.MyAccountPercentBarInner { padding: 1px; }
.MyAccountPercentBar { border-radius: 4px; background: #66CC66; box-shadow: -5px -5px 5px rgba(0,0,0,0.25) inset, 5px 5px 5px rgba(255,255,255,0.5) inset; text-align: center; font-weight: bold; font-size: 11px; line-height: 15px; }

.MyAccountShowHideTable { display: none; }

.MyAccountSection .StarRatings { float: none; margin: 0 auto; }
.MyAccountSection .StarRatings td { padding: 0 2px; border: none; }
.CustomField.MyAccountSectionEntry { padding: 0 0 10px; width: 48%; float: left; min-height: 40px; }
.CustomField.MyAccountSectionEntry:nth-child(2n) { margin-bottom: 15px; }
#trAddNew { font-weight: bold; }
/* [/MyAccount] */

/* [CustomerLogin] */
.CustomerLoginEmailTextbox { width: 180px; }


.FacebookButton { background-color: #4c66a4; color: #fff; }
.FacebookButton:hover { background-color: #364c7c; color: #fff; } 
.FacebookButton .icon-facebook { font-size: 1.2em; }
/* [/CustomerLogin] */

/* [CategoryNavigationLinks] */
.BrowseCategoryIcon {  }
/* [/CategoryNavigationLinks] */

/* [AttributeNavigationLinks] */
.BrowseByAttributeFilterButtonArea {  }
.BrowseByAttHeader {  }
.MoreAttributesLink { cursor: pointer; }
.MoreAttributes { display: none; }
/* [/AttributeNavigationLinks] */

/* [HTML] */

/* [/HTML] */

/* [Carousel] */

/* [/Carousel] */

/* [Widget21537] */
.Control_21537 {  }
.ControlHeader_21537 {  }
.ControlItem_21537 {  }
.ControlLink_21537 {  }
.ControlLink_21537:hover {  }
.ControlLink_21537 a {  }
.ControlLink_21537 a:hover {  }
.ControlLink_Link_21537 {  }
.ControlLink_Link_21537:hover {  }
.ControlLinkSeperator_21537 {  }
.ControlText_21537 {  }
.ControlInput_21537 {  }
.ControlFooter_21537 {  }
.SmallCartItemLink_21537 { text-decoration: underline; }
.SmallCartQtyTextbox_21537 { border-color: #333333; border-width: 1px; border-style: Solid; font-size: 8pt; width: 30px; }
/* [/Widget21537] */

/* [Widget10898] */
.Control_10898 {  }
.ControlHeader_10898 {  }
.Control_10898 h4 { margin-bottom: 0; }
.ControlItem_10898 {  }
.ControlLink_10898 {  }
.ControlLink_10898:hover {  }
.ControlLink_10898 a {  }
.ControlLink_10898 a:hover {  }
.ControlLink_Link_10898 {  }
.ControlLink_Link_10898:hover {  }
.ControlLinkSeperator_10898 {  }
.ControlText_10898 {  }
.ControlInput_10898 {  }
.ControlFooter_10898 {  }
.FeaturedItemsRating_10898 {  }
.FeaturedItemsDetails_10898 {  }
.FeaturedItemsPriceHR_10898 {  }
.FeaturedItemsPriceAlignment_10898 {  }
.FeaturedItemsBuyMoreLinkHR_10898 {  }
.FeaturedItemsThumbnail_10898 {  }
.PriceLabels_10898 {  }
.ProductDisplayBuyNowLink_10898 { font-size: 7pt; text-decoration: none; }
.ProductDisplayMoreLink_10898 { font-size: 7pt; text-decoration: none; }
.ProductDisplayStatus_10898 { font-size: 7pt; text-decoration: none; }
.ProductDisplayBuyMoreArea_10898 { float: right; padding-right: 5px; display: inline; }

/* =========================================================
WIDGET 10898 — FEATURED PRODUCTS
FINAL NO-SLIDER GRID VERSION
BALANCED DESKTOP + MOBILE GUTTERS
========================================================= */

/* -----------------------------
Container / heading
------------------------------ */
.Control_10898 .index-prod-container{
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.Control_10898 h3{
  text-align: center !important;
  margin-bottom: 18px !important;
  color: #1F2D3D !important;
}

/* -----------------------------
Disable slider mechanics / arrows
------------------------------ */
.Control_10898 .index-prod-arrows,
.Control_10898 .slick-arrow,
.Control_10898 .bx-prev,
.Control_10898 .bx-next,
.Control_10898 .owl-prev,
.Control_10898 .owl-next,
.Control_10898 .swiper-button-prev,
.Control_10898 .swiper-button-next{
  display: none !important;
}

.Control_10898 .index-prod-wrap,
.Control_10898 .hp-prod-grid{
  width: 100% !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  height: auto !important;
  overflow: visible !important;
  transform: none !important;
}

/* -----------------------------
Grid layout
------------------------------ */
.Control_10898 .index-prod-wrap{
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  justify-content: center !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.Control_10898 .homepage-product{
  width: 25% !important;
  max-width: 25% !important;
  float: none !important;
  display: block !important;
  box-sizing: border-box !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
  margin-bottom: 24px !important;
  cursor: pointer !important;
}

/* -----------------------------
Card shell
------------------------------ */
.Control_10898 .homepage-product > div{
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #FFFFFF !important;
  border: 2px solid transparent !important;
  border-radius: 10px !important;
  box-shadow: 0 1px 5px rgba(0,0,0,0.05) !important;
  overflow: hidden !important;
  transition: border-color 0.15s ease-in-out, box-shadow 0.2s ease, transform 0.15s ease !important;
}

.Control_10898 .homepage-product:hover > div{
  border-color: #C7A262 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
  transform: translateY(-1px) !important;
}

/* -----------------------------
Thumbnail / image
------------------------------ */
.Control_10898 .homepage-product a.thumbnail,
.Control_10898 .homepage-product .thumbnail{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 250px !important;
  margin: 0 !important;
  padding: 14px 14px 10px 14px !important;
  border: 0 !important;
  background: #FFFFFF !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  outline: none !important;
}

.Control_10898 .homepage-product a.thumbnail img,
.Control_10898 .homepage-product .thumbnail img{
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  max-height: 220px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.Control_10898 .homepage-product a.thumbnail:hover,
.Control_10898 .homepage-product a.thumbnail:focus,
.Control_10898 .homepage-product a.thumbnail:active,
.Control_10898 .homepage-product .thumbnail:hover,
.Control_10898 .homepage-product .thumbnail:focus,
.Control_10898 .homepage-product .thumbnail:active{
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.Control_10898 .homepage-product:hover a.thumbnail,
.Control_10898 .homepage-product:hover .thumbnail,
.Control_10898 .homepage-product:hover .caption,
.Control_10898 .homepage-product:hover .image,
.Control_10898 .homepage-product:hover img{
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.Control_10898 .homepage-product:hover a.thumbnail:before,
.Control_10898 .homepage-product:hover a.thumbnail:after,
.Control_10898 .homepage-product:hover .thumbnail:before,
.Control_10898 .homepage-product:hover .thumbnail:after{
  display: none !important;
  content: none !important;
}

/* -----------------------------
Card content
------------------------------ */
.Control_10898 .hp-prod-card{
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 10px 14px 14px 14px !important;
  text-align: center !important;
}

.Control_10898 .hp-prod-title{
  margin: 0 0 8px 0 !important;
  min-height: 58px !important;
  max-height: 58px !important;
  line-height: 1.25 !important;
  overflow: hidden !important;
}

.Control_10898 .hp-prod-title,
.Control_10898 .hp-prod-title a,
.Control_10898 .hp-prod-title .h5{
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #2F353B !important;
  text-decoration: none !important;
}

.Control_10898 .homepage-product:hover .hp-prod-title a,
.Control_10898 .homepage-product:hover .hp-prod-title .h5{
  color: #C7A262 !important;
  text-decoration: underline !important;
}

.Control_10898 .hp-prod-title a:hover,
.Control_10898 .hp-prod-title .h5:hover{
  color: #C7A262 !important;
  text-decoration: underline !important;
}

/* -----------------------------
Price
------------------------------ */
.Control_10898 .hp-prod-price{
  margin-top: auto !important;
  margin-bottom: 10px !important;
  min-height: 24px !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  color: #2F353B !important;
  text-align: center !important;
}

/* -----------------------------
CTA button
------------------------------ */
.Control_10898 .btn-hp-prod,
.Control_10898 a.btn-hp-prod,
.Control_10898 a.btn.btn-hp-prod,
.Control_10898 a.btn.btn-sm.btn-hp-prod,
.Control_10898 a.btn.btn-blue.btn-hp-prod,
.Control_10898 a.btn.btn-sm.btn-blue.btn-hp-prod{
  display: inline-block !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 100% !important;
  max-width: 175px !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: 10px 12px !important;
  border: 0 !important;
  border-radius: 6px !important;
  background: #C7A262 !important;
  background-color: #C7A262 !important;
  background-image: none !important;
  color: #2F353B !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  text-align: center !important;
  box-shadow: none !important;
  transition: background-color 0.15s ease-in-out, transform 0.05s ease-in-out !important;
}

.Control_10898 a.btn-hp-prod:hover,
.Control_10898 a.btn.btn-hp-prod:hover,
.Control_10898 a.btn.btn-sm.btn-hp-prod:hover,
.Control_10898 a.btn.btn-blue.btn-hp-prod:hover,
.Control_10898 a.btn.btn-sm.btn-blue.btn-hp-prod:hover{
  background: #B8964E !important;
  background-color: #B8964E !important;
  color: #2F353B !important;
  text-decoration: none !important;
}

.Control_10898 a.btn-hp-prod:active{
  background: #A9873F !important;
  background-color: #A9873F !important;
  transform: translateY(1px) !important;
}

/* -----------------------------
Desktop
4 across
------------------------------ */
@media (min-width: 992px){
  .Control_10898 .homepage-product{
    width: 25% !important;
    max-width: 25% !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .Control_10898 .homepage-product a.thumbnail,
  .Control_10898 .homepage-product .thumbnail{
    height: 250px !important;
  }

  .Control_10898 .homepage-product a.thumbnail img,
  .Control_10898 .homepage-product .thumbnail img{
    max-height: 220px !important;
  }

  .Control_10898 .hp-prod-title{
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  .Control_10898 .hp-prod-title a,
  .Control_10898 .hp-prod-title a.h5,
  .Control_10898 .hp-prod-title .h5,
  .Control_10898 .caption.center.hp-prod-title > a.h5.color-inherit{
    display: block !important;
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    line-height: 1.28 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
  }
}
/* -----------------------------
Tablet
2 across
------------------------------ */
@media (min-width: 768px) and (max-width: 991px){
  .Control_10898 .homepage-product{
    width: 50% !important;
    max-width: 50% !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    margin-bottom: 24px !important;
  }

  .Control_10898 .homepage-product a.thumbnail,
  .Control_10898 .homepage-product .thumbnail{
    height: 220px !important;
  }

  .Control_10898 .homepage-product a.thumbnail img,
  .Control_10898 .homepage-product .thumbnail img{
    max-height: 195px !important;
  }

  .Control_10898 .hp-prod-title{
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  .Control_10898 .hp-prod-title a,
  .Control_10898 .hp-prod-title a.h5,
  .Control_10898 .hp-prod-title .h5,
  .Control_10898 .caption.center.hp-prod-title > a.h5.color-inherit{
    display: block !important;
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    line-height: 1.24 !important;
    font-size: 12px !important;
  }

  .Control_10898 .btn-hp-prod,
  .Control_10898 a.btn-hp-prod,
  .Control_10898 a.btn.btn-hp-prod,
  .Control_10898 a.btn.btn-sm.btn-hp-prod,
  .Control_10898 a.btn.btn-blue.btn-hp-prod,
  .Control_10898 a.btn.btn-sm.btn-blue.btn-hp-prod{
    max-width: 180px !important;
  }
}
/* -----------------------------
Mobile
1 across with symmetric outer gutters
------------------------------ */
@media (max-width: 767px){

  .Control_10898 .index-prod-wrap,
  .Control_10898 .hp-prod-grid{
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
  }

  .Control_10898 .homepage-product{
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    display: block !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-bottom: 18px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .Control_10898 .homepage-product a.thumbnail,
  .Control_10898 .homepage-product .thumbnail{
    height: 190px !important;
    padding: 12px 12px 8px 12px !important;
  }

  .Control_10898 .homepage-product a.thumbnail img,
  .Control_10898 .homepage-product .thumbnail img{
    max-height: 170px !important;
  }

  .Control_10898 .hp-prod-card{
    padding: 8px 12px 12px 12px !important;
  }

  .Control_10898 .hp-prod-title{
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    margin-bottom: 6px !important;
  }

  .Control_10898 .hp-prod-title a,
  .Control_10898 .hp-prod-title a.h5,
  .Control_10898 .hp-prod-title .h5,
  .Control_10898 .caption.center.hp-prod-title > a.h5.color-inherit{
    display: block !important;
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    line-height: 1.22 !important;
    font-size: 12px !important;
  }

  .Control_10898 .hp-prod-price{
    font-size: 17px !important;
    margin-bottom: 10px !important;
  }

  .Control_10898 .btn-hp-prod,
  .Control_10898 a.btn-hp-prod,
  .Control_10898 a.btn.btn-hp-prod,
  .Control_10898 a.btn.btn-sm.btn-hp-prod,
  .Control_10898 a.btn.btn-blue.btn-hp-prod,
  .Control_10898 a.btn.btn-sm.btn-blue.btn-hp-prod{
    max-width: 180px !important;
  }
}
/* [/Widget10898] */

/* [Widget11054] */
.Control_11054 { padding-top: 20px; padding-bottom: 20px; }
.ControlHeader_11054 {  }
.ControlItem_11054 {  }
.ControlLink_11054 {  }
.ControlLink_11054:hover {  }
.ControlLink_11054 a {  }
.ControlLink_11054 a:hover {  }
.ControlLink_Link_11054 {  }
.ControlLink_Link_11054:hover {  }
.ControlLinkSeperator_11054 {  }
.ControlText_11054 {  }
.ControlInput_11054 {  }
.ControlFooter_11054 {  }
.BlogTagCloud.Control_11054 { text-align: justify; }
.TagCloudList_11054 { list-style-type: none; margin: 0; padding: 0; }
.BlogTagCloud .ControlItem_11054 { display: inline; padding: 0 5px 0 0; vertical-align: bottom; }
.BlogTagCloud .ControlLink_Link_11054 { -webkit-transition: 0.5s; -moz-transition: 0.5s; }
.BlogTagCloud .TagCloud_MinSize_11054 { opacity: 0.5; }
.BlogTagCloud .TagCloud_MedSize_11054 {  }
.BlogTagCloud .TagCloud_MaxSize_11054 { font-weight: bold; }
/* Clean, Modern 2025 Standard */
.BlogTagCloud .ControlLink_Link:hover_11054 { color: red; opacity: 1; transition: 0.5s; }
/* [/Widget11054] */

/* [Widget6093] */
.ControlLink_6093:hover {  }


.ControlLink_Link_6093 {  }
.ControlLink_Link_6093:hover {  }
/* [/Widget6093] */

/* [Widget2128] */
.Control_2128 h4 { margin-bottom: 0; }
/* [/Widget2128] */

/* [Widget2271] */
.Control_2271 {  }
.ControlHeader_2271 {  }

.ControlItem_2271 {  }
.ControlText_2271 {  }
.ControlInput_2271 {  }
/* [/Widget2271] */

/* [Widget2265] */
.Control_2265 {  }
.Control_2265 a { font-size: 1.5em; }
/* [/Widget2265] */

/* [BlogDrillDown] */
.BlogDrillDownIcon { display: inline-block; *display: inline; zoom: 1; padding: 0 5px; vertical-align: middle; }
.BlogDrillDown .ControlLink { display: inline-block; *display: inline; zoom: 1; }
/* [/BlogDrillDown] */

/* [UploadFile] */
.ShippingEstimationRateTable td { padding: 5px 0; }
.ShippingEstimationRate span { padding-left: 10px; font-weight: bold; }
/* [/UploadFile] */

/* [AttributeGroupLinks] */

/* [/AttributeGroupLinks] */

/* [Product Photo Center] */
.ProdCenterProductDetailsSocialBookmarks { display: inline-block; }
.ProdCenterTabs { margin-top: 20px; }
/* [/Product Photo Center] */

/* [Category Complex Grid] */
.CompGridProduct-list > div { width: 100%; float: left; }
.CompGridProduct-list .category-product { float: left; width: 25%; padding: 15px; margin-bottom: 15px; overflow: visible; }
.CompGridProduct-list > div:nth-of-type(1n+1) div.category-product { float: right; }
.CompGridProduct-list > div:nth-of-type(1n+1) div.category-product:first-of-type { overflow: visible; width: 50%; max-height: inherit; position: relative; }

.CompGridProduct-list > div:nth-of-type(2n+1) div.category-product { float: left; }
.CompGridProduct-list > div:nth-of-type(2n+1) div.category-product:first-of-type { min-height: inherit; width: 50%; max-height: inherit; position: relative; }
.CompGridProduct-list > div div.category-product:first-of-type a { max-height: inherit; height: 600px; line-height: 600px; }
.CompGridProduct-list .product-flag.bottom { bottom: -30px; }


.CompGridProduct-list .category-product .thumbnail { min-height: inherit; height: 285px; line-height: inherit; margin-bottom: 0px; overflow: hidden; }
.CompGridProduct-list .thumbnail { padding: 0; position: relative; }
.CompGridProduct-list .category-product { max-height: inhert; height: inherit; margin-bottom: 0; }
.CompGridProduct-list .category-product .thumbnail img { width: auto; max-width: 100%; max-height: 100%; padding-bottom: 30px; }

.thumbnail .CompGridCaption { bottom: 0; position: absolute; width: 100%; background: #111; color: #fff; line-height: 20px; }
.CompGridProduct-list > div div.category-product:first-of-type .thumbnail:hover .quick-view { top: 200px; }

.GridBlogRow article:nth-child(3n+1) { clear: both; }
.GridBlogRow article:first-child { clear: none; }
/* [/Category Complex Grid] */

/* [CategoryList] */
.CategoryListProduct { width: 100px; float: left; margin: 20px; text-align: center; }
.CategoryListProductPhoto { height: 100px; }
/* [/CategoryList] */

/* [ProductCompare] */
.product-compare-table {  }
.product-compare-table tr > th:first-child:not(:last-child) { border-right: 1px solid #ccc; }
.product-compare-table tr > td:nth-child(2n), .product-compare-table tr > th:nth-child(2n) { background: #f9f9f9; }
.remove-link { top: -5px; right: -5px; }
.remove-link a { color: inherit; font-size: 16px; display: block; height: 20px; width: 20px; line-height: 20px; }
.remove-link a:hover { text-decoration: none; background: #666; color: #fff; border-radius: 25px; }
/* [/ProductCompare] */

/* [AttributeDropDownGroup] */
.AttributeDropDownGroupItem { white-space: nowrap; }
/* [/AttributeDropDownGroup] */

/* [CategoryQuickList] */
.CategoryQuickListContainer {  }
.CategoryQuickListContainer tr td { vertical-align: top; }
.CategoryQuickListIndividualContainer { margin: 2px 8px 2px 2px; }
.CategoryQuickListRootCategory { font-weight: bold; font-size: 125%; text-transform: capitalize; }
.CategoryQuickListRootImage { border: none; display: block; margin-bottom: 4px; }
.CategoryQuickListSubCategory { display: list-item; list-style-type: square; margin: 0 0 0 14px; }
/* [/CategoryQuickList] */

/* [Header] */
/* =========================================
1. LAYOUT & BREAKPOINTS
========================================= */

/* --- Wide Screens (1601px+) --- */
@media screen and (min-width: 1601px) {
  header .container, .LayoutMiddle > .container, footer .container { width: 1440px; }
}

/* --- All Desktop & Tablet Landscape (993px+) --- */
@media screen and (min-width: 993px) {
  .vertical-align { display: flex; align-items: center; flex-wrap: wrap; }
}

/* --- Mid-Range Desktop Only (993px to 1599px) --- */
/* Stacks logo/tagline to save space, but keeps flex layout */
@media screen and (max-width: 1599px) and (min-width: 993px) {
  .store-name { display: block; text-align: center; }


  /* Force stack + center */
  .store-name #header-logo { display: block; max-width: 300px; /* Updated width */ margin: 0 auto !important; float: none !important; text-align: center; }

  .store-name #header-logo a, .store-name #header-logo img { display: inline-block; float: none !important; max-width: 100%; height: auto; }

  .store-name #header-tagline { display: block; margin: 4px auto 0 !important; text-align: center; width: 100%; }
}

/* Tablet portrait + mobile */
@media screen and (max-width: 992px) {
  .vertical-align { display: block; }
}
html, body { font-family: var(--ab-font); font-size: 16px; color: var(--ab-text); background: var(--ab-warmwhite); }


a { color: var(--ab-link); transition: .15s color ease-in-out; }
a:hover { color: var(--ab-link-hover); text-decoration: none; }


#header-top-left > .Control { font-size: 0; }
#header-logo { display: inline-block; max-width: 300px; }
#header-tagline { display: inline-block; font-size: 12px; margin-left: 15px; max-width: 130px; line-height: 1.2; }

/* =========================================
GLOBAL ICON SYSTEM (SVG)
========================================= */
.ab-ico{
  width: 1em;
  height: 1em;
  display: inline-block;
  vertical-align: middle;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Header icon sizing */
#header-search .ab-search{
  width: 18px;
  height: 18px;
}

#header-util-left .visible-xs .ab-phone,
#header-util-right-bottom .visible-xs .ab-envelope{
  width: 18px;
  height: 18px;
}

/* Mobile cart icon refinement */
.ab-mobile-cart .ab-ico{
  width: 22px;
  height: 22px;
  stroke-width: 2.2;
}

/* Hamburger icon */
.ab-hamburger{
  width: 22px;
  height: 22px;
  stroke-width: 2.2;
}

#header-top-right .ab-ico{
  margin-left: 4px;
  vertical-align: middle;
}

/* =========================================
HEADER SEARCH (SVG MAGNIFYING GLASS)
========================================= */
#header-search{
  font-size: 0;
  position: relative;
  top: -2px;
}

#header-search .ab-search{
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  color: var(--ab-icon);
  pointer-events: none;
  z-index: 100;
}

#header-search input[type="text"]{
  display: inline-block;
  border: .75px solid var(--ab-input-border);
  border-radius: 5px;
  box-shadow: none;
  font-size: 14px;
  border-right: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  width: calc(100% - 45px);
  height: 34px;
  line-height: 34px;
}

#header-search input[type="submit"]{
  width: 45px;
  display: inline-block;
  border: .75px solid var(--ab-input-border);
  border-radius: 5px;
  box-shadow: none;
  font-size: 14px;
  border-left: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  height: 34px;
  line-height: 34px;
  text-align: center;
  background: transparent !important;
  text-indent: -9999px;
  position: relative;
  z-index: 200;
  transition: background-color .18s ease-out, border-color .15s ease-in-out;
}

#header-search input[type="submit"]:hover{
  background-color: var(--ab-hover-fill) !important;
}
/* =========================================
MENU NAVIGATION (ARROW DOWN)
========================================= */

.navbar-cafs .nav > li > a span{
  display: inline-flex;
  align-items: center;
  gap: 3px;
  line-height: 1;
}

.ab-chevron{
  width: 11px;
  height: 11px;
  stroke-width: 1.8;
  transition: transform .18s ease;
  position: relative;
  top: -1.5px;
  margin-left: 0;
}

.navbar-cafs .nav > li:hover > a .ab-chevron,
.navbar-cafs .nav > li.open > a .ab-chevron,
.navbar-cafs .nav > li.active > a .ab-chevron{
  transform: rotate(180deg);
}


/* =========================================
UTILITY & NAVBAR (ORIGINAL WORKING CODE)
========================================= */
#header-util-left { text-align: center; }
#header-util-left > a, #header-util-right-bottom > a { display: block; text-align: center; }
#header-util-right-bottom > a { color: var(--ab-nav-text); }

.btn { border-radius: 5px; display: block; padding: 5px 15px; border: 1px solid var(--ab-btn-border); text-decoration: none !important; transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out; }
.btn:hover { background-color: var(--ab-btn-hover); }
.btn-sm { display: inline-block !important; font-size: 12px; color: var(--ab-btn-text); padding: 2px 8px; line-height: 12px; }
.btn-headerLiveChat { margin-top: -3px; border: .75px solid var(--ab-icon); }

#header-util-middle > a, #header-util-right > a { color: var(--ab-nav-text); display: block; text-align: center; border-radius: 5px; border: 2px solid transparent; transition: border-color .15s ease-in-out, color .15s ease-in-out, background-color .15s ease-in-out; }
#header-util-middle > a:hover, #header-util-right > a:hover { border: 2px solid var(--ab-border-soft); }
#header-util-right .dropdown-menu { width: 100%; }

.LayoutTopTop { padding-top: 10px; }
#top-promos { background: var(--ab-trustbar-bg); color: rgba(249, 248, 244, 0.92); /* warm white, slightly muted */ padding: 8px 10px; }

.navbar-cafs { margin: 0; }
/* Only top-level nav links should inherit nav text color */
.navbar-cafs .navbar-nav > li > a { color: var(--ab-nav-text); }
.navbar-cafs .navbar-collapse { width: calc(100% - 20px); margin: 0 10px; }
.navbar-cafs .navbar-nav { float: none; text-align: left; }
.navbar-cafs .navbar-nav>li { float: none; display: inline-block; position: static; }
header .Control.MenuBar { position: relative; z-index: 50; }
.navbar-cafs .navbar-nav>li>a { color: var(--ab-nav-text); border-bottom: 2px solid transparent; display: block; transition: color .15s ease-in-out, border-color .15s ease-in-out, background-color .15s ease-in-out; padding-left: 45px; padding-right: 15px; text-align: left; }
.navbar-cafs .navbar-nav>li>a span { display: inline-block; }
.navbar-cafs .navbar-nav>li>a i { position: relative; font-size: 24px; line-height: inherit; top: 2px; margin-left: 5px; transition: transform .25s ease-in-out, color .15s ease-in-out; }
/* NAV ITEM HOVER — li + anchor driven (matches dropdown hover behavior) */
.navbar-cafs .navbar-nav > li { background: transparent; }
/* highlight the anchor when either the LI is hovered OR the anchor is hovered/focused */
.navbar-cafs .navbar-nav > li:hover > a, .navbar-cafs .navbar-nav > li > a:hover, .navbar-cafs .navbar-nav > li > a:focus, .navbar-cafs .navbar-nav > li > a:focus-visible { background-color: rgba(199, 162, 98, 0.05) !important; color: var(--ab-text) !important; /* AA-safe: keep text dark */ border-color: var(--ab-gold) !important; /* brand accent bar */ outline: none; }

/* Chevron: gold + rotate for interaction */
.navbar-cafs .navbar-nav > li:hover > a i, .navbar-cafs .navbar-nav > li > a:hover i, .navbar-cafs .navbar-nav > li > a:focus i, .navbar-cafs .navbar-nav > li > a:focus-visible i { color: var(--ab-gold) !important; transform: rotate(180deg); }

/* Keyboard users: visible focus ring (AA-friendly) */
.navbar-cafs .navbar-nav > li > a:focus-visible { outline: 2px solid rgba(199, 162, 98, 0.45); outline-offset: 3px; border-radius: 6px; }



.LayoutMiddle { position: relative; }

.menu-overlay { position: absolute; background: hsl(0deg 0% 0% / 0%); top: 0; left: 0; width: 100%; height: 100%; z-index: 25; display: none; transition: .5s background ease-in-out; }
.menu-overlay.mo-active { background: hsl(0deg 0% 0% / 55%); }

.tp-heading { text-align: center; }
.psmtc_RFKC > a > img { position: relative; top: -30px; }

@media screen and (max-width: 1200px) {
  #header-search { margin-bottom: 5px; }
  .hp-cat-body ul li { width: 25% !important; }
  .hp-prod-grid > .row > div { width: 33.33%; vertical-align: top; }
  #above-footer .row { display: block !important; }
}

.navbar-cafs .navbar-nav .dropdown > .dropdown-menu { position: absolute; width: 100%; border: 0; box-shadow: var(--ab-shadow); padding: 60px 30px 30px 30px; margin: 2px; }
.navbar-cafs .navbar-nav .dropdown:hover > .dropdown-menu { display: block; flex-wrap: initial; font-size: 0; }
.navbar-cafs .navbar-nav .dropdown:hover > .dropdown-menu > li { flex: initial; display: inline-block; vertical-align: top; width: calc(100% / 5); font-size: 14px; }

.navbar-cafs-dropdown-header { position: absolute; top: 11px; width: 100% !important; left: 0; padding: 0 30px; display: block !important; }
.navbar-cafs-dropdown-header strong { font-weight: 800; font-size: 24px; }
.navbar-cafs-dropdown-header strong + a { display: inline-block; font-size: 16px; color: var(--ab-nav-accent); padding: 0; margin-left: 10px; }
.navbar-cafs-dropdown-menu a:hover { text-decoration: none !important; background: transparent !important; }

.cafs-promo a { padding: 0 !important; }
.navbar-cafs-dropdown-submenu a, .navbar-cafs-dropdown-item:not(.cafs-promo) a { padding: 0 30px !important; display: block; }
.navbar-cafs-dropdown-submenu a:hover, .navbar-cafs-dropdown-item:not(.cafs-promo) a:hover, .cafs-subsub > a:hover, .navbar-cafs-dropdown-menu .cafs-subsub-np > a:hover { color: var(--ab-nav-accent) !important; }

.navbar-cafs-dropdown-menu-deact { list-style: none; padding: 0; margin: 0; }
.cafs-subsub:not(.navbar-cafs-dropdown-item) > a { padding: 0 30px !important; display: block !important; font-weight: bold !important; margin-bottom: 10px; }
.dropdown > .navbar-cafs-dropdown-menu > .cafs-subsub-np > a { font-weight: bold !important; }
.cafs-subsub { flex: 1; }

@media screen and (max-width: 1500px) and (min-width: 1201px) {
  .navbar-cafs .navbar-nav { display: block !important; text-align: left; }
  .navbar-cafs .navbar-nav > li { display: inline-block; }
  .navbar-cafs .navbar-collapse { width: 100%; margin: 0 -10px; }
  #cat-meta { margin: 15px 0; width: 100%; }
}



@media screen and (max-width: 1200px) {
  .navbar-cafs .navbar-nav>li>a { padding-left: 10px !important; padding-right: 10px !important; font-size: 14px; }
  .cafs-subsub:not(.navbar-cafs-dropdown-item) > a, .navbar-cafs-dropdown-submenu a, .navbar-cafs-dropdown-item:not(.cafs-promo) a { padding: 0 10px !important; }
  .navbar-cafs .navbar-nav .dropdown:hover > .dropdown-menu > li { font-size: 12px; }
  .cafs-subsub:not(.navbar-cafs-dropdown-item) > a { margin-bottom: 5px; }
  #cat-meta { margin: 15px 0; width: 100%; } 
}

@media screen and (max-width: 992px) {
  #header-util-left { font-size: 11.5px; position: relative; top: 6px; }
  .navbar-cafs .navbar-nav>li>a i { display: none; }
  #header-top-middle { position: relative; top: 3px; }
  #cat-meta .col-md-3 { display: none; } 
  .navbar-cafs a { color: var(--ab-nav-text); font-size: 15px; }
  .CategoryQuickListSubCategory.CategoryQuickListSubCategory_11037 { font-size: 10px; }
}

.CategoryQuickListSubCategory { display: list-item; list-style-type: none; margin: 0; }

@media screen and (max-width: 768px) {
  .navbar-cafs .navbar-nav .dropdown:hover > .dropdown-menu > li { display: block !important; width: 100% !important; }
  #header-tagline { display: none; } 
  #header-util-middle > a, #header-util-right > a { line-height: 20px; }
  #header-search { margin-bottom: 5px; margin-top: 13px; }
  #header-util-left > a:first-child { line-height: 20px; font-size: 16px; position: relative; top: -3px; }
  .btn-headerLiveChat { display: none !important; }
  .navbar-cafs { background: var(--ab-nav-bg-mobile); margin-left: -15px; margin-right: -15px; }
  #top-promos { display: none; }
  #header-util-left > a:first-child { color: var(--ab-nav-text); } 
  .LayoutTopTop > .vertical-align:first-child { display: flex; align-items: center; }
  #header-search { margin-bottom: 5px; margin-top: 0; }
  #header-logo { position: relative; }
  .navbar-cafs { margin-top: 5px; }
  .navbar-brand { color: var(--ab-white) !important; }
  .navbar-cafs .navbar-toggle { border-color: var(--ab-white); position: relative; top: 1px; width: 32px; height: 24px; padding: 0; border-width: 2px; border-radius: 4px; background: transparent; }
  .navbar-cafs .navbar-toggle::before { content: ""; position: absolute; left: 6px; right: 6px; top: 50%; transform: translateY(-50%); height: 2px; background: var(--ab-white); box-shadow: 0 -6px 0 0 var(--ab-white), 0 6px 0 0 var(--ab-white); }
  .navbar-toggle i { color: var(--ab-white); }
  .navbar-toggle:hover i { color: var(--ab-muted); }
  .menu-overlay { display: none !important; }
  .navbar-cafs .navbar-collapse { width: 100%; margin: 0; padding: 0; }
  .navbar-cafs .navbar-nav { display: block !important; text-align: left; margin: 0; }
  .navbar-cafs .navbar-nav>li { display: block; text-align: left; background: var(--ab-mobile-row); border-top: 1px solid var(--ab-mobile-row-border); }
  .navbar-cafs .navbar-nav>li>a { padding-left: 15px !important; padding-right: 15px !important; text-align: left; font-size: 16px; }
  .navbar-cafs .navbar-nav>li:hover>a, .navbar-cafs .navbar-nav>li:active>a { color: var(--ab-nav-accent); border-color: transparent; }
  .navbar-cafs .navbar-nav>li>a span { display: block; }
  .navbar-cafs .navbar-nav>li>a i { display: block; float: right; margin-right: 2px; }
  .navbar-cafs .navbar-nav .dropdown > .dropdown-menu { position: static !important; padding: 15px; background: var(--ab-white); }
  .cafs-promo, .navbar-cafs-dropdown-header strong { display: none !important; }
  .navbar-cafs-dropdown-header { position: static; padding: 0 !important; }
  .navbar-cafs-dropdown-header strong + a { display: inline-block; font-size: 14px; background: var(--ab-nav-accent); margin: 0 0 10px 0 !important; color: var(--ab-white); padding: 8px 15px !important; text-transform: uppercase; }
  .cafs-subsub:not(.navbar-cafs-dropdown-item) > a, .navbar-cafs-dropdown-submenu a, .navbar-cafs-dropdown-item:not(.cafs-promo) a { padding: 0 !important; margin-bottom: 0; }
  .navbar-cafs-dropdown-menu-deact .cafs-subsub { margin-bottom: 0; }
  .navbar-cafs-dropdown-menu-deact, .cafs-subsub-np { margin-bottom: 15px; }
  .hp-intro-1 { margin-bottom: 15px; margin-top: -15px; }
  .hp-logos > .row { display: flex !important; align-items: center; }
  .hp-cat-body ul li { width: 50% !important; }
  .hp-cat-body ul li img { margin: 0 auto 5px auto; } 
  .hp-cat-overlay { display: none !important; }
  .footer-bottom { text-align: center; }
  .footer-bottom img { margin-left: auto; margin-right: auto; }
  .footer-bottom > div { margin-bottom: 30px; }
  .footer-content-area { text-align: center; }
  .slick-next { right: -10px !important; }
  .slick-prev { left: -10px !important; }
  .cat-top-nav > .row > div:not(.cat-filter-area) { display: none; }
  #cat-meta .col-md-3 { display: none; }
  #cat-child-cats ul { font-size: 0; }
  #cat-child-cats ul li { border: 2px solid var(--ab-white); float: none; display: inline-block; width: 50%; margin: 0 !important; }
  #cat-child-cats ul li > div + a { font-size: 16px; margin-bottom: 5px; display: block; }
  .navbar-cafs .navbar-nav .dropdown:hover > .dropdown-menu > li.cafs-promo { display: none !important; }
  .navbar-cafs .navbar-nav .dropdown:hover > .dropdown-menu > li, .navbar-cafs .navbar-nav .dropdown > .dropdown-menu > li { font-size: 16px !important; }
}

@media screen and (min-width: 1201px) {
  ul.navbar-cafs-dropdown-menu.nav-col-5 > li.cafs-subsub { width: 25% !important; }
}

@media screen and (max-width: 768px) {
  #header-top-right { text-align: center; }
  #header-top-right .col-xs-6, #header-top-right .col-xs-6 > div { width: auto !important; display: inline-block !important; padding: 0 !important; }
  #header-top-right .row { margin: 0 !important; font-size: 0; }
  #header-top-right .row > div:first-child { width: 33% !important; }
  #header-top-right .row > div:last-child { width: 67% !important; } 
  #header-top-right .row > div:last-child > div { width: 50% !important; }
  #header-top-right .row > div:last-child > div i { font-size: 16px; }
}

@media screen and (max-width: 1600px) and (min-width: 1201px) {
  .navbar-cafs .navbar-nav > li > a { padding-left: 20px !important; padding-right: 20px !important; }
}



.homepage-product .thumbnail { box-shadow: var(--ab-shadow-soft), inset 0 0 0 6px transparent; transition: box-shadow .18s ease-out, border-color .15s ease-in-out; }

.homepage-product:hover .thumbnail { box-shadow: var(--ab-shadow-soft-hover), inset 0 0 0 6px var(--ab-nav-accent); border-color: var(--ab-nav-accent); }



@media screen and (max-width: 834px) and (orientation: portrait) {

  /* Reduce horizontal padding of the flyout */
  .navbar-cafs .navbar-nav .dropdown > .dropdown-menu { padding-left: 20px !important; padding-right: 20px !important; }

  /* Pull columns slightly inward */
  .navbar-cafs .navbar-nav .dropdown > .dropdown-menu > li { padding-left: 10px !important; padding-right: 10px !important; }
}
/* MOBILE: prevent double hamburger (CSS ::before + <i>) */
@media screen and (max-width: 768px){
  .navbar-cafs .navbar-toggle i { display: none !important; }
}

/* =========================================
MOBILE HEADER ADJUSTMENTS - REVISED
(Only applies to screens 768px wide or less)
========================================= */
@media screen and (max-width: 768px) {

  /* 1. We keep the standard padding so the Search Box has room. */
  /* (No code needed here, it uses the default 10px) */

  /* 2. Pull ONLY the logo up higher using negative margin. */
  /* -12px counteracts the padding just for the logo image. */
  #header-logo { margin-top: -12px !important; margin-bottom: 0px; }
}


@media screen and (max-width: 768px) {
  .navbar.navbar-cafs,
  .navbar-cafs .navbar-header {
    background: var(--ab-warmwhite, #F9F8F4) !important;
  }
  .navbar-cafs .navbar-brand { color: var(--ab-text, #2F353B) !important; }
  .navbar-cafs .navbar-toggle { border-color: var(--ab-text, #2F353B) !important; }
  .navbar-cafs .navbar-toggle::before {
    background: var(--ab-text, #2F353B) !important;
    box-shadow: 0 -6px 0 0 var(--ab-text, #2F353B), 0 6px 0 0 var(--ab-text, #2F353B) !important;
  }
}

/* =========================================================
ABECTA HOUSE — DEFINITIVE MOBILE HEADER FIX
========================================================= */
@media screen and (max-width: 768px) {

  /* 1. MASTER STACK: Force the Search below the Logo row */
  .LayoutTopTop > .row.vertical-align {
    display: flex !important;
    flex-direction: column !important; /* Forces vertical stacking */
    align-items: center !important;
    width: 100% !important;
  }

  /* 2. ROW 1: THE TRIAD (Hamburger | Logo | Cart) */
  #header-top-left {
    order: 1 !important; /* Moves this row to the absolute TOP */
    width: 100% !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important; /* Pins items to edges */
    align-items: center !important;
    padding: 6px 15px !important; /* was 10px 15px Controls the logo row height and bottom space. */
    box-sizing: border-box !important;
  }

  /* Force Hamburger and Cart to behave as siblings of the Logo */
  .navbar-cafs .navbar-header.ab-mobile-nav {
    display: contents !important; 
  }

  /* HAMBURGER (Pinned Left) */
  .navbar-toggle {
    order: 1 !important;
    flex: 0 0 45px !important; /* Reserves space to balance the cart */
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    background: transparent !important;
    border: none !important;
    display: block !important;
  }
  .navbar-toggle i { display: inline-block !important; font-size: 22px !important; color: #2F353B !important; }

  /* LOGO (Centered in Row 1) */
  #header-logo {
    order: 2 !important;
    flex: 1 1 auto !important; /* Takes all middle space */
    text-align: center !important;
    margin: 0 !important;
  }
  #header-logo img {
    max-width: 160px !important; /* was 150px */
    height: auto !important;
    display: inline-block !important;
  }

  /* CART ICON (Pinned Right) */
  .ab-mobile-cart {
    order: 3 !important;
    flex: 0 0 45px !important; /* Balanced space for math centering */
    text-align: right !important;
    font-size: 22px !important;
    margin: 0 !important;
    color: #2F353B !important;
    display: block !important;
  }

  /* 3. ROW 2: FULL-WIDTH SEARCH (Directly below Logo) */
  #header-top-middle {
    order: 2 !important; /* Forces row directly below Row 1 */
    width: 100% !important;
    padding: 0 4px 12px 4px !important; /* was  0 15px 15px 15px */
    box-sizing: border-box !important;
    display: block !important;
  }

  #header-search {
    width: 100% !important;
    margin: 0 !important;
    position: relative !important;
    top: 0 !important;
  }

  #header-search input[type="text"] {
    width: 100% !important;
    height: 42px !important; /* Better touch target */
    border: 1px solid #ccc !important;
    border-radius: 6px !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
  }

  /* 4. CLEANUP: Hide Clutter & Conflicts */
  #header-top-right, #header-tagline, .navbar-brand, #top-promos, #header-top-right .row {
    display: none !important;
  }
}

/* =========================================
MOBILE — FORCE FULL WIDTH SEARCH
========================================= */
@media screen and (max-width: 768px) {

  /* Make the search column span full width */
  #header-top-middle {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding: 0 4px 8px 4px !important; /* was 0 15px 15px 15px Controls the search row height and space above/below it. */
    box-sizing: border-box !important;
  }

  /* Make search container full width */
  #header-search {
    width: 100% !important;
    position: relative !important;
  }

  /* Make input full width */
  #header-search input[type="text"] {
    width: 100% !important;
    height: 42px !important;
    border-radius: 8px !important;
    padding-right: 45px !important; /* room for icon */
  }

  /* Position magnifying glass inside the input */
  #header-search i {
    position: absolute !important;
    right: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    height: auto !important;
    line-height: normal !important;
    pointer-events: none !important;
  }

  /* Hide submit button (we'll use icon only) */
  #header-search input[type="submit"] {
    display: none !important;
  }
}

/* =========================================
MOBILE — BREAK BOOTSTRAP GRID FOR SEARCH
========================================= */
@media screen and (max-width: 768px) {

  /* Remove row behavior */
  .LayoutTopTop > .row.vertical-align > .col-lg-9 > .row {
    display: block !important;
    margin: 0 !important;
  }

  /* Remove column constraints */
  #header-top-middle {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  /* Make search truly edge-to-edge */
  #header-search {
    width: 100% !important;
  }

  #header-search input[type="text"] {
    width: 100% !important;
  }

}

/* =========================================================
MOBILE: FORCE HEADER SEARCH TO FULL WIDTH
========================================================= */
@media screen and (max-width: 768px) {

  /* The column that contains the search */
  #header-top-middle{
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  /* The search wrapper itself */
  #header-search{
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    top: 0 !important;
  }

  /* Ensure the generated form doesn’t size to content */
  #header-search form{
    width: 100% !important;
  }
}

@media screen and (max-width: 768px) {
  #header-top-middle {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    clear: both !important;
  }
  #header-search, #header-search form { width: 100% !important; }
}

/* =========================================================
MOBILE: HARD OVERRIDE HEADER SEARCH COLUMN WIDTH
========================================================= */
@media (max-width: 768px){

  /* kill bootstrap grid sizing for this column */
  .LayoutTopTop #header-top-middle.col-lg-5{
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    display: block !important;
    clear: both !important;
  }

  /* also kill any row/column constraints around it */
  .LayoutTopTop .row.vertical-align{
    display: block !important;
  }

  /* force the search itself to fill */
  .LayoutTopTop #header-search,
  .LayoutTopTop #header-search form{
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* =========================================================
MOBILE: MAKE SEARCH BAR FULL WIDTH (FORM + INPUT)
========================================================= */
@media (max-width: 768px){

  /* Make the whole search area stretch */
  #header-search,
  #header-search form{
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  /* If the form has .form-inline or similar, it can shrink—kill that */
  #header-search form *{
    max-width: 100% !important;
  }

  /* Keep your split-button layout, but make it span full width */
  #header-search input[type="text"]{
    width: calc(100% - 45px) !important;
    display: inline-block !important;
    box-sizing: border-box !important;
  }

  #header-search input[type="submit"]{
    width: 45px !important;
    display: inline-block !important;
    box-sizing: border-box !important;
  }
}

/* =========================================================
MOBILE — FORCE SEARCH COLUMN FULL WIDTH
========================================================= */
@media (max-width: 768px) {

  /* Parent column (currently col-xs-6 = 50%) */
  .LayoutTopTop > .row.vertical-align > .col-lg-9.col-md-8.col-sm-6.col-xs-6 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  /* Inner row containing the search */
  .LayoutTopTop > .row.vertical-align > .col-lg-9.col-md-8.col-sm-6.col-xs-6 > .row.vertical-align {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  /* The search column itself */
  #header-top-middle {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    clear: both !important;
  }

  /* Search wrapper and form */
  #header-search,
  #header-search form {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* =========================================================
ABECTA HOUSE — MOBILE HEADER ROW (OVERRIDE)
Forces hamburger | logo | cart in one line
========================================================= */
@media (max-width: 768px) {
  #header-top-left {
    width: 100% !important;
    float: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  /* The widgetarea wrapper is the flex item, so order it */
  #header-top-left > .Control {
    order: 2 !important;
    flex: 1 1 auto !important;
    text-align: center !important;
  }

  /* Treat mobile nav children as flex items */
  #header-top-left .navbar-header.ab-mobile-nav { display: contents !important; }
  #header-top-left .navbar-toggle { order: 1 !important; flex: 0 0 45px !important; }
  #header-top-left .ab-mobile-cart { order: 3 !important; flex: 0 0 45px !important; text-align: right !important; }

  #header-top-left #header-logo { text-align: center !important; margin: 0 !important; }
  #header-top-left #header-logo img { max-width: 160px !important; height: auto !important; } /* was 150px */

  /* Prevent double hamburger (font icon + ::before) */
  .navbar-cafs .navbar-toggle::before { content: none !important; box-shadow: none !important; }
  .navbar-cafs .navbar-toggle i { display: inline-block !important; }
}

@media (max-width: 768px){
  /* Tighten header bottom spacing */
  .LayoutTopTop { padding-bottom: 0 !important; }
  #header-top-middle { padding-bottom: 6px !important; } /* was 12–15px */
  #header-search { margin-bottom: 0 !important; }

  /* Remove any leftover bottom margin in the header row */
  .LayoutTopTop > .row.vertical-align { margin-bottom: 0 !important; }
}

@media (max-width: 768px){
  .ab-hero { margin-top: 4px !important; } /* optional */
}

@media (max-width: 768px){
  #hp-logos{
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 768px){
  /* Collapse the empty navbar band */
  .navbar.navbar-cafs{
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }
  .navbar-cafs{ margin-top: 0 !important; }
  .navbar-cafs .navbar-collapse{
    margin: 0 !important;
    padding: 0 !important;
  }
}
/* [/Header] */

/* [Default] */
#hp-intro { margin: 30px 0 0; } /* top 30, left/right 0, bottom 8 */


.hp-intro { min-height: 260px; background-size: cover !important; font-size: 30px; text-align: center; display: flex; align-items: center; }

/* .hp-intro-1 { background: url(/Shared/theme-files/index-top-left.jpg) bottom center no-repeat; }

.hp-intro-2 { background: url(/Shared/theme-files/hp-ph-s2.jpg) bottom center no-repeat; color: #fff; } */

.hp-intro-inner { width: 100%; }

.hp-intro-heading { line-height: 1.3; }

.hp-intro-heading small { display: block; font-size: 14px; margin-bottom: 5px; }

.btn-blue { display: inline-block; background: #1196d4; border-color: #1196d4; color: #fff; text-transform: uppercase; }

.btn-white { display: inline-block; background: #fff; border-color: #fff; color: #333; }

.btn-blue:hover, .btn-white:hover { display: inline-block; background: #666; border-color: #333; color: #fff; }

#hp-logos { margin: 30px 0; }

#hp-logos img { display: block; margin: 0 auto; max-width: 100%; }

.hp-cat-body ul { margin: 0 -15px; padding: 0; list-style: 0; font-size: 0; }

.hp-cat-body ul li { display: inline-block; font-size: 16px; padding: 0 15px; width: 20%; transition: .15s all ease-in-out; margin-bottom: 30px; }

.hp-cat-body ul li a { display: block; transition: .15s all ease-in-out; color: #333; text-align: center; position: relative; }

.hp-cat-body a span { display: block; line-height: 26px; }

.hp-cat-overlay { position: absolute; top: 0; left: 0; width: 100%; background: rgb(86 60 63 / 0.7); bottom: 30px; color: #fff; transition: .15s all ease-in-out; opacity: 0; }

.hp-cat-body ul li a:hover .hp-cat-overlay { opacity: 1; }

.hp-cat-overlay span { position: absolute; width: 100%; top: calc(50% - 13px); }

.ControlHeader { font-size: 22px; text-align: center; margin-bottom: 30px; font-weight: bold; }

.slick-prev:before, .slick-next:before { color: #dddde0 !important; }

.hp-testimonial-inner { margin: 0 15px; border: 1px solid #dddde0; padding: 15px 15px 5px 75px; border-radius: 5px; }

.hp-testimonial h5 { font-size: 18px; margin-bottom: 10px; position: relative; }

.hp-testimonial p { line-height: 1.3; font-size: 16px; margin-bottom: 10px; }

.hp-testimonial img { margin-bottom: 10px; }

.hp-testimonial h5 i { position: absolute; font-size: 60px; font-family: 'Arial', sans-serif; font-weight: bold; transform: rotate(180deg); left: -54px; top: -5px; color: #dddde0; }

#hp-testimonials { margin-bottom: 60px; }

.hp-prod-grid .row { font-size: 0; text-align: center; margin: 0 -15px; }

.hp-prod-grid > .row > div { display: inline-block; padding: 0 15px; width: 20%; font-size: 16px; }

.homepage-product .caption { line-height: 1.3; }

.homepage-product .lblPriceArea { font-size: 16px; margin: 5px 0; display: block; }

.btn-hp-prod { opacity: 0; transition: .15s all ease-in-out; margin-top: 4px; }

.homepage-product:hover .btn-hp-prod { opacity: 1; }

.thumbnail { padding: 10px; box-shadow: 0 0 20px #fff; }

.thumbnail:hover { border-color: #ddd !important; box-shadow: 0 0 20px #ccc; }

#above-footer { background: url('https://abecta-virginia.s3.us-east-1.amazonaws.com/abectahouse/footer/abecta-prefooter.jpg') center center no-repeat; background-size: cover; padding: 75px 0; margin-top: 45px; position: relative; /* ADD */ }

/* ADD: dark overlay for readability */
#above-footer::before { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.22); pointer-events: none; }

/* ADD: ensure content sits above overlay */
#above-footer * { position: relative; z-index: 1; }

/* REPLACE your h4 rule with this */
#above-footer h4 { font-size: 30px; color: #ffffff; font-weight: 700; text-shadow: 0 2px 8px rgba(0,0,0,0.35); }

#footer-ml-inner { font-size: 0; text-align: center; }

#footer-ml-inner .ControlInput { display: inline-block; font-size: 16px; padding: 4px; width: calc(100% - 115px); height: 38px; }

#footer-ml-inner .ThemeButton { display: inline-block; font-size: 15px; width: 100px; margin-left: 12px; /* slightly tighter */ height: 38px; border: 1px solid rgba(255,255,255,0.18); border-radius: 6px; background-color: var(--ab-charcoal); color: var(--ab-white); font-weight: 700; letter-spacing: 0.2px; cursor: pointer; box-shadow: 0 6px 14px rgba(0,0,0,0.22); transition: transform 0.15s ease, background-color 0.2s ease, box-shadow 0.2s ease; }
#footer-ml-inner .ThemeButton:hover { background-color: var(--ab-sage); box-shadow: 0 8px 18px rgba(0,0,0,0.26); transform: translateY(-1px); }

#footer-ml-inner .ThemeButton:active { transform: translateY(0); box-shadow: 0 6px 14px rgba(0,0,0,0.22); }
/* Input: slightly softer, matches brand neutrals */
#footer-ml-inner .ControlInput { display: inline-block; font-size: 16px; padding: 4px 12px; width: calc(100% - 115px); height: 38px; border: 1px solid var(--ab-border); border-radius: 6px; background: var(--ab-white); color: var(--ab-text); }
#footer-ml-inner .ThemeButton:focus-visible { outline: 2px solid #ffffff; outline-offset: 2px; box-shadow: 0 0 0 5px var(--ab-charcoal); }
#footer-ml-inner .ThemeButton { user-select: none; }



.shopperapproved_widget { width: 100%; max-width: 1410px; }

.sa_review, .sa_info, .sa_name, .sa_comments { width: auto !important; }

.sa_footer { margin-top: 10px; display: block; }

@media screen and (min-width: 993px) {
  #sa-hp-testimonials table tr > td:nth-child(2) .sa_review { margin: 0 25px; }

  .sa_info { position: relative; }

  .sa_info:before {
    content: "“";
    position: absolute;
    top: 0;
    right: 0;

    font-family: Georgia, serif;
    font-size: 42px;
    line-height: 1;
    font-weight: 400;

    color: #eee;
    opacity: 0.15;

    display: block;
    width: 30px;
    height: 30px;
  }
}


@media screen and (max-width: 768px) {
  #hp-logos > .row > div:first-child { position: relative; top: 8px; }

}

/* =========================================================
ABECTA HOUSE — HOMEPAGE CATEGORY TILES (FINAL)
========================================================= */

.hp-cat-body ul li a { cursor: pointer; text-decoration: none !important; }

.hp-cat-body ul li a > img.img-responsive { border: 1px solid var(--ab-nav-accent) !important; border-radius: 6px; box-shadow: var(--ab-shadow-soft) !important; transition: transform .18s ease, box-shadow .18s ease, border-color .15s ease; display: block; }

.hp-cat-body ul li a > span { color: var(--ab-text) !important; text-decoration: none !important; border-bottom: 0 !important; box-shadow: none !important; display: inline-block; padding-bottom: 2px; transition: color .15s ease, border-color .15s ease; }

.hp-cat-body ul li a:hover > img.img-responsive, .hp-cat-body ul li a:focus-visible > img.img-responsive { transform: translateY(-2px); box-shadow: var(--ab-shadow-soft-hover) !important; border-color: var(--ab-gold) !important; }

.hp-cat-body ul li a:hover > span, .hp-cat-body ul li a:focus-visible > span { color: var(--ab-gold) !important; border-bottom: 1px solid var(--ab-gold) !important; }

.hp-cat-body ul li a:focus-visible { outline: 2px solid var(--ab-focus); outline-offset: 4px; border-radius: 6px; }
/* Collapse the unused homepage intro/hero area */
#hp-intro { margin: 0 !important; padding: 0 !important; }

.hp-intro { min-height: 0 !important; padding: 0 !important; }
/* [/Default] */

/* [Footer] */
/* =========================================
Footer — General
========================================= */

.footer-content-area { padding-top: 40px; padding-bottom: 20px; }

/* Footer column headings */
.footer-column .h4 { cursor: default; /* headings should not look clickable */ font-weight: 700; /* bold headings */ margin-bottom: 8px; letter-spacing: 0.3px; /* subtle premium polish */ }

/* In case headings are wrapped in links */
.footer-column .h4 a { font-weight: 700; color: inherit; text-decoration: none; cursor: default; letter-spacing: 0.3px; /* keep consistent if heading is linked */ }

/* Footer lists */
.footer-column .footer-list { list-style: none; padding: 0; margin: 0; }

.footer-column .footer-list li { margin-bottom: 6px; /* tighter, cleaner rhythm */ }

/* =========================================
Footer Links — GOLD + UNDERLINE (Hover/Focus)
Covers: footer lists, identity links, bottom-of-site bar
Excludes: social icon links
========================================= */

/* Base footer links: no underline */
.footer-column .footer-list a, .footer-column-about .footer-identity a, #bottom-of-site a { color: inherit; text-decoration: none; text-underline-offset: 4px; text-decoration-color: transparent; transition: color .15s ease-in-out, text-decoration-color .15s ease-in-out; }

/* Hover + keyboard focus */
.footer-column .footer-list a:hover, .footer-column .footer-list a:focus-visible, .footer-column-about .footer-identity a:hover, .footer-column-about .footer-identity a:focus-visible, #bottom-of-site a:hover, #bottom-of-site a:focus-visible { color: var(--ab-gold) !important; text-decoration: underline !important; text-decoration-color: var(--ab-gold) !important; outline: none; }

/* Do NOT underline social icon links */
#bottom-of-site .footer-social a, #bottom-of-site .footer-social a:hover, #bottom-of-site .footer-social a:focus-visible { text-decoration: none !important; text-decoration-color: transparent !important; }


/* =========================================
Footer Social Icons
========================================= */

.footer-social { display: flex; gap: 14px; align-items: center; }

.social-link { display: inline-flex; padding: 0 !important; background: none !important; }

.social-icon { width: 24px; height: 24px; display: block; }


/* =========================================
Bottom of Site (Copyright / Legal Bar)
========================================= */

#bottom-of-site { background: var(--ab-panel); padding: 20px 0; margin-top: 20px; border-top: 1px solid var(--ab-border); font-size: 13px; /* slightly calmer */ }

/* If the bottom text uses <p>, gently soften it */
#bottom-of-site p { color: #5f5f5f; line-height: 1.6; }

/* Ensure alignment is centered vertically across the row (helps icons) */
#bottom-of-site .vertical-align { align-items: center !important; }

#bottom-of-site .center { text-align: center; }

.footer-legal-primary,
.footer-legal-secondary,
.footer-address-primary,
.footer-address-secondary { display: block; }

.footer-contact-primary { white-space: nowrap; }
.footer-contact-link { white-space: nowrap; }

.paypal-support img { max-width: 120px; float: right; }


/* =========================================
Footer Column 1 — Premium Identity Block
========================================= */

.footer-column-about .footer-about-links { margin: 0 0 22px 0; /* intentional breathing room */ padding: 0; }

/* Identity block */
.footer-column-about .footer-identity { margin-top: 0; padding-top: 0; border-top: none; font-size: 12.6px; line-height: 1.7; color: #4a4a4a; }

/* Subtle premium divider (desktop default: left-aligned) */
.footer-column-about .footer-identity::before { content: ""; display: block; width: 52px; height: 2px; background: rgba(0,0,0,0.22); margin-bottom: 22px; }

/* Identity line spacing */
.footer-column-about .footer-identity-line { margin: 0 0 7px 0; }

/* Keep brand name strong but not oversized */
.footer-column-about .footer-identity strong { font-weight: 700; }


/* =========================================
Mobile Styles
========================================= */

@media (max-width: 768px) {

  #bottom-of-site .footer-bottom-row { display: block !important; }
  #bottom-of-site .footer-bottom-copy { width: 100% !important; max-width: 100% !important; text-align: center !important; }
  #bottom-of-site .footer-bottom-social,
  #bottom-of-site .footer-bottom-payments { display: none !important; }
  #bottom-of-site .footer-legal-line,
  #bottom-of-site .footer-address-line,
  #bottom-of-site .footer-contact-line { display: flex; flex-direction: column; align-items: center; gap: 2px; }
  #bottom-of-site .footer-legal-primary,
  #bottom-of-site .footer-legal-secondary,
  #bottom-of-site .footer-address-primary,
  #bottom-of-site .footer-address-secondary,
  #bottom-of-site .footer-contact-primary,
  #bottom-of-site .footer-contact-email { display: block; }
  #bottom-of-site .footer-contact-separator { display: none; }

  /* Stack columns cleanly */
  .footer-column { text-align: center; margin-bottom: 28px; }

  /* Ensure footer lists remain visible (no accordion) */
  .footer-column .footer-list { display: block; }

  /* Headings remain non-clickable */
  .footer-column .h4, .footer-column .h4 a { cursor: default; }

  /* Make the About column identity area full-width so centering is real */
  .footer-column-about .footer-identity { width: 100% !important; display: block !important; text-align: center !important; }

  /* Force-center the divider on mobile (supports both ::before and :before) */
  .footer-column-about .footer-identity::before, .footer-column-about .footer-identity:before { display: block !important; margin: 0 auto 18px auto !important; }

  /* Social icons center on mobile */
  .footer-social { justify-content: center; margin-bottom: 15px; }

  /* Payment image center on mobile */
  .paypal-support img { float: none; margin: 0 auto; display: block; }
}
/* [/Footer] */

/* [AppliedAttributeFilters] */
.applied-attribute-filter { background-color: #019fd7; float: left; border: 1px solid #3ba5bf !important; margin-top: 10px; margin-right: 20px; }
.applied-attribute-filter:hover { background-color: #67C1D6; border: 1px solid #3ba5bf !important; }
.applied-attribute-filter-clear { float: left; color: #fff !important; background-color: transparent !important; border: none !important; font-weight: bold !important; padding-left: 10px !important; padding-right: 10px !important; margin: 0 !important; height: 30px !important; border-radius: 0px !important; border-right: 1px solid #3ba5bf !important; line-height: 30px; font-size: 22px; }
.applied-attribute-filter-text { color: #fff; float: left; border-left: none !important; padding-left: 10px !important; padding-right: 10px; font-size: 11px; line-height: 30px; cursor: pointer; }
/* [/AppliedAttributeFilters] */

/* [MenuBar] */

/* [/MenuBar] */

/* [Widget11029] */
.Control_11029 {  }
.ControlHeader_11029 {  }
.ControlItem_11029 {  }
.ControlLink_11029 {  }
.ControlLink_11029:hover {  }
.ControlLink_11029 a {  }
.ControlLink_11029 a:hover {  }
.ControlLink_Link_11029 {  }
.ControlLink_Link_11029:hover {  }
.ControlLinkSeperator_11029 {  }
.ControlText_11029 {  }
.ControlInput_11029 {  }
.ControlFooter_11029 {  }
/* [/Widget11029] */

/* [CategoryDropDownFilter] */
.CategoryFilterDropDown {  }
.CategoryFilterCategoryDropDown {  }
.CategoryFilterAttributeDropDown {  }
.CategoryFilterDropDownContainer {  }
/* [/CategoryDropDownFilter] */

/* [CMS] */
.CMS .LayoutContentInner { margin-top: 45px; }
/* [/CMS] */

/* [Widget11031] */
.Control_11031 {  }
.ControlHeader_11031 {  }
.ControlItem_11031 {  }
.ControlLink_11031 {  }
.ControlLink_11031:hover {  }
.ControlLink_11031 a {  }
.ControlLink_11031 a:hover {  }
.ControlLink_Link_11031 {  }
.ControlLink_Link_11031:hover {  }
.ControlLinkSeperator_11031 {  }
.ControlText_11031 {  }
.ControlInput_11031 {  }
.ControlFooter_11031 {  }
.SmallCartItemLink_11031 { text-decoration: underline; }
.SmallCartQtyTextbox_11031 { border-color: #333333; border-width: 1px; border-style: Solid; font-size: 8pt; width: 30px; }

.dropdown-menu { min-width: 225px; margin: 2px -80px 0; }
/* [/Widget11031] */

/* [ToggleSlider] */
.toggle-switch { position: relative; display: inline-block; width: 3.75em; height: 2.125em; }
.toggle-switch input { opacity: 0; width: 0; height: 0; }
.toggle-slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; -webkit-transition: .4s; transition: .4s; }
.toggle-slider:before { position: absolute; content: ""; height: 1.625em; width: 1.625em; left: 0.25em; bottom: 0.25em; background-color: white; -webkit-transition: .4s; transition: .4s; }
input:checked + .toggle-slider { background-color: #2196F3; }
input:focus + .toggle-slider { box-shadow: 0 0 1px #2196F3; }
input:checked + .toggle-slider:before { -webkit-transform: translateX(1.625em); -ms-transform: translateX(1.625em); transform: translateX(1.625em); }
.toggle-slider.round { border-radius: 2.125em; }
.toggle-slider.round:before { border-radius: 50%; }
/* [/ToggleSlider] */

/* [TextOverImage] */
.TextOverImage-container { position: relative; }
.hp-intro { height: auto; min-height: unset; }
.index-hero-wrap .row { display: flex; align-items: stretch; justify-content: space-between; }
.hp-intro, .index-hero-wrap .TextOverImage, .TextOverImage-container, .TextOverImage-image, .TextOverImage-image img { height: 100%; }

@media (max-width: 767px) {
  .index-hero-wrap .row { flex-wrap: wrap; }
  .index-hero-wrap .col-sm-7, .index-hero-wrap .col-sm-5 { width: 100%; max-width: 100%; }
  .hp-intro, .index-hero-wrap .TextOverImage, .TextOverImage-container, .TextOverImage-image, .TextOverImage-image img { width: 100%; }
}
@media (max-width: 575px) {
  .TextOverImage-text { font-size: 24px; line-height: 100%; } 
}
/* [/TextOverImage] */

/* [BannerAd] */

/* [/BannerAd] */

/* [Widget10903] */
.Control_10903 {  }
.ControlHeader_10903 {  }
.ControlItem_10903 {  }
.ControlLink_10903 {  }
.ControlLink_10903:hover {  }
.ControlLink_10903 a {  }
.ControlLink_10903 a:hover {  }
.ControlLink_Link_10903 {  }
.ControlLink_Link_10903:hover {  }
.ControlLinkSeperator_10903 {  }
.ControlText_10903 {  }
.ControlInput_10903 {  }
.ControlFooter_10903 {  }
.TextOverImage-container_10903 { position: relative; }
/* [/Widget10903] */

/* [Search] */
/* =========================================================
ABECTA HOUSE — MASTER CATALOG & SEARCH STYLES
Fixes: PayPal Image Removal, Breadcrumb Alignment, 
Search Panel Width, Desktop Balancing, and Mobile Stacking.
========================================================= */

/* ---------- SEARCH INPUT PANEL (Fixes "Too Wide" & Balancing) ---------- */

/* Standardize the flex container for search elements */
.search-header-wrap {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: center !important;
  justify-content: center !important; 
  padding: 20px !important;
}

/* Desktop: Limit container width AND balance internal elements */
@media (min-width: 992px) {
  .panel.panel-default:has(.search-header-wrap) {
    max-width: 850px !important; 
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 8px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
  }

  /* Make the text input and dropdown fill the empty space proportionally */
  .search-header-wrap input[type="text"] {
    flex: 2 1 300px !important; 
  }

  .search-header-wrap select {
    flex: 1 1 200px !important;
  }

  .search-header-wrap .btn {
    flex: 0 0 auto !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
}

/* Mobile: Stack search elements so they aren't squashed */
@media (max-width: 767px) {
  .search-header-wrap {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .search-header-wrap input[type="text"], 
  .search-header-wrap select,
  .search-header-wrap .btn {
    width: 100% !important;
    margin: 5px 0 !important;
  }
}

/* ---------- GRID TILE LAYOUT (Price + CTA Alignment) ---------- */

.product-list .cat-product-hp-style { 
  display: flex !important; 
  flex-direction: column !important; 
}

/* Thumbnail spacing */
.product-list .cat-product-hp-style > a.thumbnail { 
  flex: 0 0 auto !important; 
  margin-bottom: 10px !important; 
}

/* Title grows to equalize rows */
.product-list .cat-product-hp-style .caption { 
  flex: 1 1 auto !important; 
  width: 100% !important; 
  margin-top: 10px !important; 
}

.product-list .cat-product-hp-style .caption a { 
  line-height: 1.35 !important; 
}

/* Price consistency */
.product-list .cat-product-hp-style .price { 
  flex: 0 0 auto !important; 
  width: 100% !important; 
  margin-top: 6px !important; 
  margin-bottom: 8px !important; 
}

/* ---------- ADD TO CART BUTTONS (Gold Styling) ---------- */

.product-list a.btn.btn-hp-prod, 
.product-list a.btn.btn-default.btn-hp-prod { 
  background-color: var(--ab-gold) !important; 
  border: 1px solid var(--ab-gold) !important; 
  color: var(--ab-charcoal) !important; 
  background-image: none !important; 
  box-shadow: none !important; 
  padding: 10px 14px !important; 
  min-width: 140px !important; 
  border-radius: 6px !important; 
  font-size: 13px !important; 
  font-weight: 600 !important; 
  letter-spacing: 0.02em !important; 
  text-transform: uppercase !important; 
  margin-top: auto !important; 
  margin-bottom: 14px !important; 
  align-self: center !important; 
  text-decoration: none !important;
}

/* Hover State */
.product-list a.btn.btn-hp-prod:hover, 
.product-list a.btn.btn-default.btn-hp-prod:hover { 
  filter: brightness(0.95) !important; 
  box-shadow: 0 2px 6px rgba(0,0,0,0.12) !important; 
}

/* Mobile Button adjustment */
@media (max-width:767px){
  .product-list .cat-product-hp-style a.btn.btn-hp-prod { 
    display: block !important; 
    width: calc(100% - 24px) !important; 
    max-width: 360px !important; 
  }
}

/* ---------- LIST VIEW CLEANUP ---------- */

.product-list .list-view { 
  padding: 16px 0 !important; 
  border-bottom: 1px solid #e6e6e6; 
}

.product-list .list-view .list-view-desc, 
.product-list .list-view .item-number { 
  display: none !important; 
}

.product-list .list-view .thumbnail { 
  max-width: 200px; 
}

/* ---------- SEARCH "GO" BUTTON STYLING ---------- */

/* Standard State */
.search-header-wrap .btn, 
.search-header-wrap button#btnSearch {
  background-color: var(--ab-gold) !important;
  border: 1px solid var(--ab-gold) !important;
  color: var(--ab-charcoal) !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  padding: 8px 25px !important;
  border-radius: 4px !important;
  transition: all 0.2s ease-in-out !important;
  height: 42px !important; /* Matches height of input/select */
}

/* Hover & Focus State */
.search-header-wrap .btn:hover, 
.search-header-wrap .btn:focus {
  background-color: var(--ab-gold) !important;
  filter: brightness(0.92) !important; /* Slight darkening on hover */
  box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
  color: var(--ab-charcoal) !important;
  outline: none !important;
}

/* Fix for mobile button alignment */
@media (max-width: 767px) {
  .search-header-wrap .btn {
    height: 48px !important; /* Slightly larger for easier tapping on mobile */
    margin-top: 10px !important;
  }
}

.search-header-wrap .btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important; /* Prevents text from sitting too high or low */
  min-width: 100px !important; /* Ensures the button doesn't shrink with short text */
}

/* ---------- BREADCRUMB ALIGNMENT (Fixes "Hugging" the Green Bar) ---------- */

.breadcrumb {
  display: flex !important;
  align-items: center !important;
  min-height: 50px !important;
  margin-top: 5px !important;
  margin-bottom: 0 !important;
  width: 100% !important;
  background: transparent !important;
  border: none !important;
  padding-left: 0 !important; 
}

/* Mobile Adjustment: Optimized for smaller screens */
@media (max-width: 767px) {
  .breadcrumb {
    min-height: 45px !important; /* Increased for better vertical spacing */
    font-size: 12px !important;
    margin-top: 15px !important; /* Pushes it further away from the header */
    padding-left: 15px !important; /* Aligns with the mobile search box padding */
  }
}
/* [/Search] */

/* [Manufacturer] */
/* =========================================================
ABECTA HOUSE — MANUFACTURER RESULTS
FINAL CLEAN REPLACEMENT CSS
Purpose:
- fix skipped / holed product grid
- keep Add to Cart visible and aligned
- remove dependence on matchHeight for layout
- keep manufacturer page consistent with category/search styling
========================================================= */

/* =========================================================
1) HIDE DESCRIPTION BLOCKS
========================================================= */
.product-list .list-view .list-view-desc,
.product-list .list-view .prod-desc,
.product-list .list-view .ProductDescription,
.product-list .list-view .description,
.product-list .list-view [class*="desc"]{
  display:none !important;
}

.product-list .cat-product-hp-style .list-view-desc,
.product-list .cat-product-hp-style .prod-desc,
.product-list .cat-product-hp-style .ProductDescription,
.product-list .cat-product-hp-style .description,
.product-list .thumbnail + .caption + .list-view-desc{
  display:none !important;
}

/* =========================================================
2) OUTER GRID FIX
Replace old float behavior with flex-wrap layout
This is the main fix for "skipped" / holed products
========================================================= */
.product-list{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
  clear:both !important;
}

/* kill old float/grid behavior on direct product tiles */
.product-list > .homepage-product{
  float:none !important;
  display:flex !important;
  flex-direction:column !important;
}

/* Desktop: 3 across */
@media (min-width:992px){
  .product-list > .homepage-product{
    width:33.333333% !important;
  }
}

/* Tablet: 3 across */
@media (min-width:768px) and (max-width:991px){
  .product-list > .homepage-product{
    width:33.333333% !important;
  }
}

/* Mobile: 1 across */
@media (max-width:767px){
  .product-list > .homepage-product{
    width:100% !important;
  }
}

/* =========================================================
3) PRODUCT TILE LAYOUT
========================================================= */
.product-list .cat-product-hp-style{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}

/* =========================================================
MANUFACTURER THUMBNAIL — MATCH CATEGORY PAGE
========================================================= */
.product-list .cat-product-hp-style > a.thumbnail,
.product-list .cat-product-hp-style .thumbnail{
  flex: 0 0 auto !important;
  margin-bottom: 12px !important;

  line-height: normal !important;
  height: 250px !important;
  padding: 12px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;

  border-radius: 12px !important;
  background: #F4F3EE !important;
  overflow: hidden !important;
}

/* image inside thumbnail */
.product-list .cat-product-hp-style .thumbnail img{
  display: block !important;
  max-width: 100% !important;
  max-height: calc(250px - 24px) !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* absolutely kill thumbnail hover border */
.product-list .cat-product-hp-style > a.thumbnail:hover,
.product-list .cat-product-hp-style .thumbnail:hover,
.product-list .cat-product-hp-style .thumbnail:focus,
.product-list .cat-product-hp-style .thumbnail:active,
.product-list .cat-product-hp-style .thumbnail:visited{
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* title area grows so price/button align better */
.product-list .cat-product-hp-style .caption{
  flex:1 1 auto !important;
  width:100% !important;
  margin-top:10px !important;
  margin-bottom:6px !important;
}

.product-list .cat-product-hp-style .caption a{
  display:inline-block !important;
  line-height:1.35 !important;
}

/* price area */
.product-list .cat-product-hp-style .price,
.product-list .cat-product-hp-style .lblPriceArea,
.product-list .cat-product-hp-style .ProductPrice,
.product-list .cat-product-hp-style .price-area{
  flex:0 0 auto !important;
  width:100% !important;
  margin-top:6px !important;
  margin-bottom:8px !important;
  text-align:center !important;
}

/* =========================================================
4) ADD TO CART BUTTON
Always visible and aligned
========================================================= */
.product-list a.btn-hp-prod,
.product-list .btn-hp-prod{
  display:inline-block !important;
  visibility:visible !important;
  opacity:1 !important;
  transform:none !important;
  pointer-events:auto !important;
}

.product-list a.btn.btn-hp-prod,
.product-list a.btn.btn-default.btn-hp-prod{
  background-color:var(--ab-gold) !important;
  border:1px solid var(--ab-gold) !important;
  color:var(--ab-charcoal) !important;
  background-image:none !important;
  box-shadow:none !important;
  padding:10px 14px !important;
  min-width:140px !important;
  border-radius:6px !important;
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:0.02em !important;
  text-transform:uppercase !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  margin-top:auto !important;
  margin-bottom:14px !important;
  align-self:center !important;
}

.product-list a.btn.btn-hp-prod:hover,
.product-list a.btn.btn-hp-prod:focus,
.product-list a.btn.btn-hp-prod:focus-visible,
.product-list a.btn.btn-default.btn-hp-prod:hover,
.product-list a.btn.btn-default.btn-hp-prod:focus,
.product-list a.btn.btn-default.btn-hp-prod:focus-visible{
  background-color:var(--ab-gold) !important;
  border-color:var(--ab-gold) !important;
  color:var(--ab-charcoal) !important;
  filter:brightness(0.95) !important;
  box-shadow:0 2px 6px rgba(0,0,0,0.12) !important;
  outline:none !important;
}

/* mobile button */
@media (max-width:767px){
  .product-list .cat-product-hp-style a.btn.btn-hp-prod,
  .product-list .cat-product-hp-style a.btn.btn-default.btn-hp-prod{
    display:block !important;
    width:calc(100% - 24px) !important;
    max-width:360px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* =========================================================
5) LIST VIEW SAFETY
If user switches to list view, preserve sane layout
========================================================= */
.product-list .homepage-product.list-view{
  width:100% !important;
  display:block !important;
}

/* =========================================================
MANUFACTURER GRID — MATCH CATEGORY CARD HOVER
Place this at the END of your Manufacturer Page CSS
========================================================= */

/* Product card base */
.product-list > .homepage-product{
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 3px 10px rgba(0,0,0,0.04) !important;
  padding: 18px 14px 20px 14px !important;

  outline: 1px solid transparent !important;
  outline-offset: -1px !important;

  transition: box-shadow 0.25s ease, transform 0.25s ease, outline-color 0.25s ease !important;
}

/* Hover effect (IDENTICAL feel to category page) */
.product-list > .homepage-product:hover{
  outline-color: rgba(199,162,98,0.45) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,0.07) !important;
  transform: translateY(-1px) !important;
}

/* Title turns gold on card hover */
.product-list > .homepage-product:hover .caption a,
.product-list > .homepage-product:hover .caption a.h5{
  color: #C7A262 !important;
  text-decoration: none !important;
}

/* =========================================================
MANUFACTURER PAGE — NUCLEAR OVERRIDE FOR GLOBAL THUMBNAIL HOVER RING
Put this at the VERY END of Manufacturer Page CSS
========================================================= */

/* Base thumbnail on manufacturer cards */
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail,
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail:visited,
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail:focus,
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail:active{
  border: 0 !important;
  border-color: transparent !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  text-decoration: none !important;
}

/* Hovered manufacturer card must NOT add any image ring */
.product-list > .homepage-product.cat-product-hp-style:hover > a.thumbnail,
.product-list > .homepage-product.cat-product-hp-style:hover > a.thumbnail:focus,
.product-list > .homepage-product.cat-product-hp-style:hover > a.thumbnail:active,
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail:hover,
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail:focus-visible{
  border: 0 !important;
  border-color: transparent !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  text-decoration: none !important;
}

/* Kill any border/shadow on descendants */
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail *,
.product-list > .homepage-product.cat-product-hp-style:hover > a.thumbnail *,
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail:hover *{
  border-color: transparent !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Kill pseudo-elements on the thumbnail anchor */
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail::before,
.product-list > .homepage-product.cat-product-hp-style > a.thumbnail::after,
.product-list > .homepage-product.cat-product-hp-style:hover > a.thumbnail::before,
.product-list > .homepage-product.cat-product-hp-style:hover > a.thumbnail::after{
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
}
/* [/Manufacturer] */

/* [Widget11090] */
.Control_11090 {  }
.ControlHeader_11090 {  }
.ControlItem_11090 {  }
.ControlLink_11090 {  }
.ControlLink_11090:hover {  }
.ControlLink_11090 a {  }
.ControlLink_11090 a:hover {  }
.ControlLink_Link_11090 {  }
.ControlLink_Link_11090:hover {  }
.ControlLinkSeperator_11090 {  }
.ControlText_11090 {  }
.ControlInput_11090 {  }
.ControlFooter_11090 {  }
.FeaturedItemsRating_11090 {  }
.FeaturedItemsDetails_11090 {  }
.FeaturedItemsPriceHR_11090 {  }
.FeaturedItemsPriceAlignment_11090 {  }
.FeaturedItemsBuyMoreLinkHR_11090 {  }
.FeaturedItemsThumbnail_11090 {  }
.PriceLabels_11090 {  }
.ProductDisplayBuyNowLink_11090 { font-size: 7pt; text-decoration: none; }
.ProductDisplayMoreLink_11090 { font-size: 7pt; text-decoration: none; }
.ProductDisplayStatus_11090 { font-size: 7pt; text-decoration: none; }
.ProductDisplayBuyMoreArea_11090 { float: right; padding-right: 5px; display: inline; }

/* =========================================
WIDGET11090 — RECENTLY VIEWED — OVERRIDE BLUE CTA
========================================= */

.Control_11090 a.btn-blue.btn-hp-prod { background-color: #C7A262 !important; /* Abecta gold */ color: #2F353B !important; /* Abecta charcoal */ border: 0 !important; border-radius: 6px !important; font-size: 14px !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; padding: 10px 14px !important; text-decoration: none !important; }

/* Hover */
.Control_11090 a.btn-blue.btn-hp-prod:hover { background-color: #B8964E !important; color: #2F353B !important; }

/* Active */
.Control_11090 a.btn-blue.btn-hp-prod:active { background-color: #A9873F !important; transform: translateY(1px); }

/* Focus — ADA/WCAG compliant */
.Control_11090 a.btn-blue.btn-hp-prod:focus-visible { outline: 2px solid #FFFFFF !important; outline-offset: 2px !important; box-shadow: 0 0 0 5px var(--ab-charcoal) !important; }

/* --- OVERRIDE (append-only) --- */
.Control_11090 a.btn.btn-blue.btn-hp-prod { display: inline-flex !important; align-items: center !important; justify-content: center !important; background: #C7A262 !important; background-image: none !important; color: #2F353B !important; border: 0 !important; border-radius: 6px !important; font-size: 14px !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; padding: 10px 14px !important; text-decoration: none !important; }

.Control_11090 a.btn.btn-blue.btn-hp-prod:hover { background: #B8964E !important; color: #2F353B !important; }

.Control_11090 a.btn.btn-blue.btn-hp-prod:active { background: #A9873F !important; transform: translateY(1px); }

.Control_11090 a.btn.btn-blue.btn-hp-prod:focus-visible { outline: 2px solid #FFFFFF !important; outline-offset: 2px !important; box-shadow: 0 0 0 5px var(--ab-charcoal) !important; }

/* =========================================
WIDGET11090 — RECENTLY VIEWED — ALWAYS SHOW + GOLD CTA
========================================= */

/* 1) FORCE the "buy more" area to always show (kills hover-only behavior) */
.Control_11090 .ProductDisplayBuyMoreArea_11090, .Control_11090 .ProductDisplayBuyMoreArea { display: block !important; opacity: 1 !important; visibility: visible !important; height: auto !important; max-height: none !important; overflow: visible !important; transform: none !important; }

/* If they only reveal on hover, keep it visible anyway */
.Control_11090 .ControlItem_11090:hover .ProductDisplayBuyMoreArea_11090, .Control_11090 .ControlItem_11090:hover .ProductDisplayBuyMoreArea { opacity: 1 !important; visibility: visible !important; transform: none !important; }

/* 2) STYLE the actual button you pasted (matches btn-sm btn-blue btn-hp-prod) */
.Control_11090 a.btn-blue.btn-hp-prod, .Control_11090 a.btn.btn-blue.btn-hp-prod, .Control_11090 a.btn-sm.btn-blue.btn-hp-prod { display: inline-flex !important; align-items: center !important; justify-content: center !important; background: #C7A262 !important; background-image: none !important; color: #2F353B !important; border: 0 !important; border-radius: 6px !important; font-size: 14px !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; padding: 10px 14px !important; text-decoration: none !important; opacity: 1 !important; visibility: visible !important; }

/* Hover */
.Control_11090 a.btn-sm.btn-blue.btn-hp-prod:hover, .Control_11090 a.btn-blue.btn-hp-prod:hover { background: #B8964E !important; color: #2F353B !important; }

/* Active */
.Control_11090 a.btn-sm.btn-blue.btn-hp-prod:active, .Control_11090 a.btn-blue.btn-hp-prod:active { background: #A9873F !important; transform: translateY(1px); }

/* Focus */
.Control_11090 a.btn-sm.btn-blue.btn-hp-prod:focus-visible,
.Control_11090 a.btn-blue.btn-hp-prod:focus-visible { outline: 2px solid #FFFFFF !important; outline-offset: 2px !important; box-shadow: 0 0 0 5px var(--ab-charcoal) !important; }

/* =========================================
WIDGET11090 — RECENTLY VIEWED — ALWAYS SHOW + GOLD CTA
========================================= */

/* 1) FORCE the "buy more" area to always show (kills hover-only behavior) */
.Control_11090 .ProductDisplayBuyMoreArea_11090, .Control_11090 .ProductDisplayBuyMoreArea { display: block !important; opacity: 1 !important; visibility: visible !important; height: auto !important; max-height: none !important; overflow: visible !important; transform: none !important; }

/* If they only reveal on hover, keep it visible anyway */
.Control_11090 .ControlItem_11090:hover .ProductDisplayBuyMoreArea_11090, .Control_11090 .ControlItem_11090:hover .ProductDisplayBuyMoreArea { opacity: 1 !important; visibility: visible !important; transform: none !important; }

/* 2) STYLE the actual button you pasted (matches btn-sm btn-blue btn-hp-prod) */
.Control_11090 a.btn-blue.btn-hp-prod, .Control_11090 a.btn.btn-blue.btn-hp-prod, .Control_11090 a.btn-sm.btn-blue.btn-hp-prod { display: inline-flex !important; align-items: center !important; justify-content: center !important; background: #C7A262 !important; background-image: none !important; color: #2F353B !important; border: 0 !important; border-radius: 6px !important; font-size: 14px !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; padding: 10px 14px !important; text-decoration: none !important; opacity: 1 !important; visibility: visible !important; }

/* Hover */
.Control_11090 a.btn-sm.btn-blue.btn-hp-prod:hover, .Control_11090 a.btn-blue.btn-hp-prod:hover { background: #B8964E !important; color: #2F353B !important; }

/* Active */
.Control_11090 a.btn-sm.btn-blue.btn-hp-prod:active, .Control_11090 a.btn-blue.btn-hp-prod:active { background: #A9873F !important; transform: translateY(1px); }

/* Focus */
.Control_11090 a.btn-sm.btn-blue.btn-hp-prod:focus-visible,
.Control_11090 a.btn-blue.btn-hp-prod:focus-visible { outline: 2px solid #FFFFFF !important; outline-offset: 2px !important; box-shadow: 0 0 0 5px var(--ab-charcoal) !important; }

/* =========================================
WIDGET11090 — RECENTLY VIEWED — MOBILE: FORCE 1 COLUMN
Because template uses: col-xs-6
========================================= */
@media (max-width: 767px){

  /* Override Bootstrap grid just for this widget */
  .Control_11090 .homepage-product.col-xs-6 { width: 100% !important; float: none !important; }

  /* Fix any spacing weirdness from .row gutters */
  .Control_11090 .row { margin-left: 0 !important; margin-right: 0 !important; }
  .Control_11090 .homepage-product { padding-left: 0 !important; padding-right: 0 !important; margin-bottom: 18px !important; }

  /* Make CTA behave like a normal mobile button */
  .Control_11090 a.btn-hp-prod { display: block !important; width: 100% !important; max-width: 320px; /* optional */ margin: 10px auto 0 !important; }
}
/* [/Widget11090] */

/* [Widget11343] */
.Control_11343 {  } .Control_11343 a {  }
/* [/Widget11343] */

/* [Widget11347] */
.Control_11347 {  }
.Control_11347 a {  }
/* [/Widget11347] */

/* Recently Viewed Products - Widget 2314 */
/* Mobile: 2 items per row, normal images */

@media (max-width: 767px) {

  /* Two cards per row, using floats (no flex) */
  .Control_11090 .homepage-product { float: left; width: 50% !important; /* two per row */ max-width: none !important; margin-bottom: 16px; padding-left: 6px; padding-right: 6px; height: auto !important; display: block !important; }

  /* Make the thumbnail fill the column width */
  .Control_11090 .homepage-product .thumbnail { width: 100% !important; height: auto !important; padding: 10px; border-radius: 16px; box-shadow: 0 6px 18px rgba(0,0,0,0.12); overflow: hidden; }

  /* Image uses full width, no toothpick effect */
  .Control_11090 .homepage-product .thumbnail img { width: 100% !important; height: auto !important; max-height: 180px; object-fit: contain; display: block; margin: 0 auto; }
}

/* Extra small phones: if you prefer 1 per row, uncomment this:
@media (max-width: 480px) {
.Control_11090 .homepage-product {
width: 100% !important;
}
} */

/* Tighten up the tall "pill" cards just for Recently Viewed (Widget 2314) */
@media (max-width: 767px) {

  /* Let the card height be driven by the image, not a fixed tall value */
  .Control_11090 .homepage-product .thumbnail { height: auto !important; min-height: 0 !important; padding: 10px 10px 14px !important; /* override any huge padding */ border-radius: 14px; overflow: hidden; }

  /* Make the image fill more of the card */
  .Control_11090 .homepage-product .thumbnail img { width: 100% !important; height: auto !important; max-height: 220px; /* you can bump this up/down */ object-fit: contain; display: block; margin: 0 auto; }
}

/* Fix clipping of 2nd row in Recently Viewed (Widget 2314) */
@media (max-width: 767px) {

  /* Make sure the grid and row expand to fit both rows */
  .Control_11090 .hp-prod-grid, .Control_11090 .hp-prod-grid .row { height: auto !important; overflow: visible !important; }

  /* And make sure each product card can grow with its text */
  .Control_11090 .homepage-product { height: auto !important; overflow: visible !important; margin-bottom: 20px; }
}
/* =========================================================
iPad Portrait: FIX mega-menu column overlap
SAFE MODE: Restricted to tablets (769px - 834px) only
========================================================= */
@media screen and (min-width: 769px) and (max-width: 834px) and (orientation: portrait) {

  /* Make the dropdown span the viewport nicely */
  .navbar-cafs .navbar-nav .dropdown > .dropdown-menu { width: 96vw !important; left: 50% !important; transform: translateX(-50%) !important; right: auto !important; margin: 0 !important; padding: 50px 16px 16px 16px !important; }

  /* Reduce from 5 columns to 2 columns */
  .navbar-cafs .navbar-nav .dropdown:hover > .dropdown-menu > li, .navbar-cafs .navbar-nav .dropdown > .dropdown-menu > li { width: 50% !important; /* 2 across */ display: inline-block !important; vertical-align: top !important; font-size: 14px !important; }

  /* If any submenu links are forcing single-line width, allow wrapping */
  .navbar-cafs-dropdown-submenu a, .navbar-cafs-dropdown-item:not(.cafs-promo) a, .cafs-subsub:not(.navbar-cafs-dropdown-item) > a { white-space: normal !important; }
}


/* [CheckOut] */
.CheckOutHeader { font-weight: bold; font-size: 16px; }
.CheckOutSubHeader { font-weight: bold; font-size: 16px; margin-bottom: 20px; }
.CardFieldHeaders { background: #666; color: #fff; padding: 5px; }
.OnePageCheckoutShoppingCart .ShoppingCartPrice { padding: 10px 0; font-size: inherit; border: none; }
.SplitPaymentLink { cursor: pointer; }
#tbAppliedPayments { width: 100%; }
.AppliedPaymentHeader th { padding: 5px; }
.AddressEditorZipCodePlus4Textbox { width: 50px; }
.AddressBookEditor { padding: 2px 10px 2px 0; }
.OnePageCheckoutShoppingCart td { padding: 5px; border-bottom: 1px solid #e5e5e5; }
.ShoppingCartVariations td { padding: 0 0 0 20px; border: none; }
.OnePageCheckoutShoppingCart .ShoppingCartTotals { border: none; }
.form-signin { max-width: 330px; padding: 15px; margin: 0 auto; }
.form-signin .form-signin-heading, .form-signin .checkbox { margin-bottom: 10px; }
.form-signin .checkbox { font-weight: normal; }
.form-signin input { position: relative; font-size: 16px; height: auto; padding: 10px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; width: 100%; }
.form-signin input:focus { z-index: 2; }
.form-signin input[type="text"] { margin-bottom: -1px; border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.form-signin input[type="password"] { margin-bottom: 10px; border-top-left-radius: 0; border-top-right-radius: 0; }
/* [/Checkout] */

.prod_view { transition: all .2s ease 0s; padding: 5px 15px; background: #1196d4; border-radius: 15px; color: #fff; display: inline-block; }


/* [Product Background Photo] */
.product-info-wrapper { background: rgba(0,0,0,0.8); color: #fff; }
.product-photo { background-size: cover !important; background-position: center center !important; background-color: #000; }
.PhotoBgThumbnails { float: right; }
/* [/Product Background Photo ] */


.modal-title { text-align: center; }

@media (max-width: 767px) {
  .Product-Quick-View input.ProductDetailsAddToCartButton { width: 100%; margin: 10px 0; font-size: 12px; } 
  .Product-Quick-View .row { flex-direction: column; display: flex; align-items: center; justify-content: flex-start; }
  .Product-Quick-View .col-xs-6 { width: 100% !important; min-width: 100%; max-width: 100%; }
  .Product-Quick-View .qty-spinner { display: flex !important; align-items: center; justify-content: center; max-width: 110px; }
  .Product-Quick-View .qty-spinner input { width: 100% !important; }
}

/* [/One Page Checkout Coupon Area] */
.couponCode .box-trigger:before { display: inline-block; content: ' '; width: 0; height: 0; border-style: solid; border-color: transparent transparent transparent; border-left-color: inherit; border-width: 5px 5px 5px 10px; position: relative; top: -3px; }
.couponCode .box-body { height: 0; max-height: 0; overflow: hidden; transition: all .5s ease; }
.couponCode .box-body.boxOpen { height: auto; max-height: 500px; transition: all .5s ease; }
.couponCode .box-body.boxClose { height: 0; max-height: 0; transition: all .5s ease; }
.couponCode .box-trigger { cursor: pointer; }

/* [/Product Page & Cart Page Quantity Buttons] */
.prod-quantCart-wrap { display: flex; align-items: flex-start; justify-content: flex-start; }
.prod-quantCart-quant .atc-quant-spinner { width: 135px; }
.prod-quantCart-right input { padding: 10px !important; }
.prod-quantCart-right { margin-left: 30px; width: 45%; }
.qty-spinner .icon-chevron-down { left: 1px !important; }
.qty-spinner .icon-chevron-up { right: 0px !important; }

.CartUpdateItemArea .qty-spinner { width: 135px; }
.CartUpdateItemArea .qty-spinner input { width: 70px; border-radius: 0; border-color: #b7b7b7; margin: 0; display: inline-block; }
.CartUpdateItemArea .qty-spinner .icon-chevron-up { right: 4px !important; margin-left: 0 !important; height: 100%; left: auto !important; display: flex; align-items: center; justify-content: center; top: 0 !important; width: 30px !important; border: solid 1px #b7b7b7; border-radius: 0 4px 4px 0; cursor: pointer; }
.CartUpdateItemArea .qty-spinner .icon-chevron-down { height: 100%; display: flex; align-items: center; justify-content: center; top: 0; width: 30px !important; border: solid 1px #b7b7b7; border-radius: 4px 0 0 4px; cursor: pointer; left: -2px !important; }
.CartUpdateItemArea .qty-spinner .icon-chevron-up:before {
  content: "+";
}

.CartUpdateItemArea .qty-spinner .icon-chevron-down:before {
  content: "−";
}
.CartUpdateItemArea .qty-spinner .icon-chevron-up, .CartUpdateItemArea .qty-spinner .icon-chevron-down { color: #93a49e !important; font-size: 11px !important; }
.CartUpdateItemArea .qty-spinner .icon-chevron-up:hover, .CartUpdateItemArea .qty-spinner .icon-chevron-down:hover { background: #666 !important; color: #fff !important; }


@media (max-width: 767px) {
  .prod-quantCart-wrap { margin: 0 !important; } 
}
@media (max-width: 320px) {
  .prod-quantCart-wrap { flex-direction: column; align-items: center; justify-content: center; }
  .prod-quantCart-right { margin-left: 0; width: 100%; }
}

/* [/Mobile Remove Continue Shopping & Clear Cart & Save Cart] */
@media (max-width: 767px) {
  .cart-miscButtons { display: none; }
}

/* [/Mobile Product Slider] */
.index-prod-arrows { display: none; }

/* Line 639 Remove !important from width; */
/* Line 1579 Remove !important from width */
@media (max-width: 767px) {
  .index-prod-wrap { display: flex; align-items: flex-start; justify-content: flex-start; position: absolute; top: 0px; left: 0; padding-left: 16px; }
  .hp-prod-grid { position: relative; height: 375px; overflow: hidden; width: 60%; margin: 0 auto; }
  .index-prod-wrap .homepage-product .thumbnail { box-shadow: none; height: auto; max-height: unset; display: flex; align-items: center; justify-content: center; min-height: unset; line-height: unset; }
  .index-prod-container { position: relative; }
  .index-prod-arrows { position: absolute; top: 50%; transform: translateY(-140%); font-size: 30px; cursor: pointer; color: #666; display: block; }
  .index-prod-arrows:hover { color: #1196d4; }
  .index-prod-left { left: 10%; }
  .index-prod-right { right: 10%; }
  .ProductDisplay .hp-prod-grid > .row > div { padding: 0 !important; }
  .homepage-product .ControlItem { padding: 0 15px; }
}
/* [/Cart Save For Later & Remove Color Changes] */
.ShoppingCart .ProductInfo .RemoveFromCartLink, .ShoppingCart .ProductInfo .SaveForLaterLink { color: #666; }
.ShoppingCart .ProductInfo .RemoveFromCartLink:hover, .ShoppingCart .ProductInfo .SaveForLaterLink:hover { color: #1196d4; }

@media (max-width: 767px) {
  #sa-hp-testimonials tr { display: flex; flex-direction: column; } 
  #sa-hp-testimonials td { width: 100% !important; }
}

#trustedsite-tm-image { display: none !important; }
.paypal-support img { width: 75px; margin-bottom: 10px; }
.search-header-wrap { display: flex; align-items: center; justify-content: flex-start; }
.search-header-wrap input, .search-header-wrap select { margin-right: 10px; }
.Search .cat-top-nav .ControlHeader { font-size: 22px; margin-bottom: 30px; font-weight: 700; }
.pagination { display: flex; align-items: center; }
.cat-banner img { width: 100%; margin-top: 20px; }
.opc-edit-button a, .opc-update-button a { color: #666; }
.opc-edit-button a:hover, .opc-update-button a:hover { color: #1196d4; }

@media (max-width: 500px) {
  .CartUpdateItemArea .qty-spinner input { width: 35px; }
  .CartUpdateItemArea .qty-spinner { width: 100px; }
  .ShoppingCart .col-sm-8 { overflow-x: scroll; }
}
.pagination>li>a, .pagination>li>span { margin-left: -3px !important; }

div#prod-desc-inner { overflow-wrap: normal; }
.index-hero-wrap .TextOverImage-text { position: initial !important; left: 0 !important; top: 0 !important; transform: none !important; }
.heroLeft-text { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.heroLeft-text a { font-size: 16px; color: #93a49e; padding: 10px 35px; font-weight: 600; margin-top: 10px; display: inline-block; background-color: #fff; transition: all .5s ease-in-out; }
.heroLeft-text a:hover { background-color: rgba(147, 154, 158, 1); color: #fff; }

@media (max-width: 1199px) {
  .TextOverImage-text { font-size: 16px; font-weight: 800; line-height: 100%; }
}
@media (max-width: 991px) {
  .navbar-cafs .navbar-nav>li>a { padding: 15px 10px 15px 10px !important; } 
}
@media (max-width: 767px) {
  .TextOverImage-text { font-size: 27px; font-weight: 500; } 
}
@media (max-width: 575px) {
  .heroLeft-text { width: 100%; } 
}
@media (max-width: 375px) {
  .heroLeft-text .TextOverImage-text { font-size: 16px; font-weight: 600; } 
  .heroLeft-text a { font-size: 14px; padding: 5px 35px; margin-top: 5px; }
}
/* [ItemRepeater] */
.variant-repeater__group { display: inline-flex; }
.variant-repeater__variant { padding: 5px; cursor: grab; }
.variant-repeater__card { width: 8rem; }
.card-text { font-size: .8rem; }
.variant-repeater__variant.selected { border: dotted !important; }
.variant-repeater__card-small { width: 4rem; }
.card-text-small { font-size: .5rem; }
/* ====== Abecta House Blog Core Styles (safe, no global overrides) ====== */

/* Tagline */
.pb-tagline { margin: 4px 0 18px; font-size: 1rem; color: #444; }

/* Blog Roll (post teasers) */
.pb-posts { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px,1fr)); gap: 24px; }
.pb-post-teaser { border: 1px solid #eee; border-radius: 12px; overflow: hidden; background: #fff; display: flex; flex-direction: column; }
.pb-post-thumb img { width: 100%; height: 200px; object-fit: cover; display: block; }
.pb-post-meta { padding: 14px 16px 18px; }
.pb-post-title { font-size: 1.125rem; margin: 0 0 6px; line-height: 1.3; }
.pb-post-byline { font-size: .9rem; color: #666; display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 8px; }
.pb-post-excerpt { color: #333; font-size: .96rem; }
.pb-readmore { display: inline-block; margin-top: 10px; text-decoration: underline; }
.pb-post-cats { margin-top: 8px; font-size: .85rem; color: #555; }

.pb-pagination, .pb-posts-paging { margin: 20px 0 0; display: flex; justify-content: center; }

/* ===== Blog Article (single post) ===== */
.pb-article .pb-article-title { font-size: 2rem; line-height: 1.2; margin: 0 0 6px; }
.pb-article .pb-article-byline { color: #666; margin-bottom: 12px; display: flex; gap: 12px; flex-wrap: wrap; }

.pb-article-hero { border-radius: 12px; overflow: hidden; }
.pb-article-hero img { width: 100%; height: auto; display: block; }

.pb-article-body { max-width: 760px; margin: 0 auto; font-size: 18px; line-height: 1.7; }
.pb-article-body p { margin: 0 0 16px; }
.pb-article-body h2 { margin: 28px 0 12px; font-size: 1.35rem; }
.pb-article-body h3 { margin: 22px 0 10px; font-size: 1.1rem; }

/* ===== TOC ===== */
.pb-toc { position: sticky; top: 80px; border: 1px solid #eee; background: #fafafa; padding: 12px 14px; border-radius: 10px; max-width: 760px; margin: 12px auto 18px; }
.pb-toc strong { display: block; margin-bottom: 8px; }
.pb-toc ol { list-style: decimal; padding-left: 18px; margin: 0; }
.pb-toc li { margin-bottom: 4px; }
.pb-toc a { text-decoration: none; }
.pb-toc a:hover { text-decoration: underline; }

/* ===== Blog Footer Sections ===== */
.pb-article-foot { max-width: 760px; margin: 28px auto 0; border-top: 1px solid #eee; padding-top: 16px; color: #555; }
.pb-related { margin-top: 18px; }
.pb-related-list { margin: 8px 0 0 18px; }
.pb-article-prevnext { display: flex; justify-content: space-between; gap: 12px; margin-top: 18px; }
.pb-article-comments { max-width: 760px; margin: 28px auto 0; }

/* ===== Breadcrumb ===== */
.pb-breadcrumb { margin-bottom: 8px; }
.pb-breadcrumb a { text-decoration: none; }
.pb-breadcrumb a:hover { text-decoration: underline; }

/* ===== Mobile ===== */
@media (max-width: 640px){
  .pb-post-thumb img { height: 160px; }
  .pb-toc { top: 64px; }
}

/* ===== Hide cart alert only on blog pages ===== */
.pb-is-blog .pb-cart-alert { display: none !important; }

/* =========================================================
PRODUCT FLAGS — POSITION OVER MAIN IMAGE (CORRECT FOR YOUR TEMPLATE)
Fixes:
- Flag showing over thumbnails
- Flag overlapping header dropdowns
========================================================= */

/* Anchor the flag to the thumbnails row */
#prod-thumbnails > div { position: relative !important; z-index: 0 !important; }

/* Desktop/Tablet: move flag onto MAIN image column (bootstrap push-3 ≈ 25%) */
@media (min-width: 768px) {
  #prod-thumbnails > div > .product-flag.left.top { top: 0px !important; left: calc(25% - 12px) !important; /* more negative = closer to corner */ right: auto !important; bottom: auto !important; z-index: 2 !important; }
}

/* Mobile: thumbnails stack, so top-left is correct */
@media (max-width: 767px) {
  #prod-thumbnails > div > .product-flag.left.top { top: 0px !important; left: 0px !important; right: auto !important; bottom: auto !important; z-index: 2 !important; }
}





/* =========================================================
MOBILE NAV — ACCORDION DROPDOWN FIX
Prevents submenu overlap & tap hijacking
========================================================= */
@media (max-width: 767px) and (hover: none) and (pointer: coarse) {

  /* Force all dropdown panels to remain in-flow on mobile */
  .navbar .dropdown-menu, #nav .dropdown-menu, #main-nav .dropdown-menu, .megamenu, .mega-menu { position: static !important; width: 100% !important; float: none !important; transform: none !important; box-shadow: none !important; border: none !important; }

  /* When opened, ensure dropdown is visible */
  .navbar-nav .dropdown.open > .dropdown-menu, .navbar-nav .dropdown.show > .dropdown-menu { display: block !important; }
}
/* =========================================================
MOBILE: AmeriCommerce CAFS mega menu — FIX blank submenu + show all items
========================================================= */
@media (max-width: 767px) and (hover: none) and (pointer: coarse) {

  /* 1) Make sure the submenu UL actually becomes visible when opened */
  .navbar-nav li.dropdown.open > ul.dropdown-menu, .navbar-nav li.dropdown.show > ul.dropdown-menu { display: block !important; }

  /* 2) Make the CAFS mega menu panel behave like an in-flow accordion */
  .navbar-nav ul.dropdown-menu.navbar-cafs-dropdown-menu { position: static !important; float: none !important; width: 100% !important; max-width: none !important; left: auto !important; right: auto !important; top: auto !important; overflow: visible !important; height: auto !important; max-height: none !important; transform: none !important; /* kill any CSS multi-column behavior */ -webkit-column-count: 1 !important; column-count: 1 !important; -webkit-column-gap: 0 !important; column-gap: 0 !important; }

  /* 3) Force each submenu item to stack full width */
  .navbar-nav ul.dropdown-menu.navbar-cafs-dropdown-menu > li { float: none !important; width: 100% !important; display: block !important; clear: both !important; }

  /* 4) Full-width tappable links */
  .navbar-nav ul.dropdown-menu.navbar-cafs-dropdown-menu > li > a { display: block !important; width: 100% !important; }
}
/* =========================================================
MOBILE: CAFS mega menu — FORCE ALL SUBITEMS INTO ONE COLUMN
Fixes: Coffee Tables / Accent Chairs exist in DOM but render off-canvas
========================================================= */
@media (max-width: 767px) and (hover: none) and (pointer: coarse) {

  /* Ensure submenu panel is in-flow and not clipped */
  .navbar-nav li.dropdown.open > ul.dropdown-menu, .navbar-nav li.dropdown.show > ul.dropdown-menu { display: block !important; }

  .navbar-nav ul.dropdown-menu.navbar-cafs-dropdown-menu { position: static !important; float: none !important; width: 100% !important; max-width: none !important; overflow: visible !important; height: auto !important; max-height: none !important; transform: none !important; -webkit-column-count: 1 !important; column-count: 1 !important; -webkit-column-gap: 0 !important; column-gap: 0 !important; }

  /* THE KEY FIX: neutralize any absolute positioning / left-50% column logic */
  .navbar-nav ul.dropdown-menu.navbar-cafs-dropdown-menu > li, .navbar-nav ul.dropdown-menu.navbar-cafs-dropdown-menu > li.navbar-cafs-dropdown-item { position: static !important; left: auto !important; right: auto !important; top: auto !important; bottom: auto !important; float: none !important; width: 100% !important; display: block !important; clear: both !important; }

  .navbar-nav ul.dropdown-menu.navbar-cafs-dropdown-menu > li > a { display: block !important; width: 100% !important; }
}
/* =========================================================
MOBILE: CAFS mega menu — HARD RESET (show ALL sub-items)
Fixes cases where items exist in DOM but only first 2 show
========================================================= */
@media (max-width: 767px) and (hover: none) and (pointer: coarse) {

  /* Ensure the dropdown UL can actually grow and isn't clipped */
  .navbar-nav li.dropdown.open > ul.dropdown-menu, .navbar-nav li.dropdown.show > ul.dropdown-menu { display: block !important; }

  ul.dropdown-menu.navbar-cafs-dropdown-menu, ul.dropdown-menu.navbar-cafs-dropdown-menu.nav-col-6 { position: static !important; width: 100% !important; max-width: none !important; height: auto !important; max-height: none !important; overflow: visible !important; transform: none !important; /* Kill any multi-column layout system */ -webkit-column-count: 1 !important; column-count: 1 !important; -webkit-column-gap: 0 !important; column-gap: 0 !important; }

  /* HARD RESET: force all CAFS dropdown items into normal flow */
  ul.dropdown-menu.navbar-cafs-dropdown-menu > li.navbar-cafs-dropdown-item { display: block !important; visibility: visible !important; opacity: 1 !important; position: static !important; left: auto !important; right: auto !important; top: auto !important; bottom: auto !important; transform: none !important; float: none !important; clear: both !important; width: 100% !important; height: auto !important; max-height: none !important; overflow: visible !important; }

  /* Make the links full-width and visible */
  ul.dropdown-menu.navbar-cafs-dropdown-menu > li.navbar-cafs-dropdown-item > a { display: block !important; width: 100% !important; visibility: visible !important; opacity: 1 !important; }
}
/* =========================================================
MOBILE: ENABLE SCROLLING FOR CAFS SUBMENUS
Fixes: only first 2 sub-items visible; rest clipped vertically
========================================================= */
@media (max-width: 767px) and (hover: none) and (pointer: coarse) {

  /* Allow the entire mobile menu to scroll */
  .navbar-nav, .navbar-collapse, .navbar-collapse.collapse.in, .navbar-collapse.show { max-height: none !important; height: auto !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch; }

  /* Allow individual dropdown panels to scroll if tall */
  .navbar-nav ul.dropdown-menu, .navbar-nav ul.dropdown-menu.navbar-cafs-dropdown-menu { max-height: none !important; height: auto !important; overflow-y: auto !important; overflow-x: hidden !important; }
}
/* =========================================================
MOBILE: CAFS mega menu — KILL INLINE-BLOCK COLUMNS
Fixes: Coffee Tables / Accent Chairs rendered off-screen
========================================================= */
@media (max-width: 767px) and (hover: none) and (pointer: coarse) {

  /* Force the CAFS submenu to behave like a normal vertical list */
  ul.dropdown-menu.navbar-cafs-dropdown-menu.nav-col-6 { width: 100% !important; max-width: none !important; white-space: normal !important; }

  /* THIS IS THE CRITICAL FIX */
  ul.dropdown-menu.navbar-cafs-dropdown-menu.nav-col-6
  > li.navbar-cafs-dropdown-item { display: block !important; /* overrides inline-block */ width: 100% !important; /* overrides ~186px column */ clear: both !important; }

  /* Full-width tappable links */
  ul.dropdown-menu.navbar-cafs-dropdown-menu.nav-col-6
  > li.navbar-cafs-dropdown-item > a { display: block !important; width: 100% !important; }
}
/* =========================================================
MOBILE: CAFS mega menu — FORCE ONE COLUMN (FINAL, STRONG)
Fix: items exist but render in off-screen inline-block column layout
========================================================= */
@media (max-width: 991px) {

  /* target ALL CAFS dropdown menus, not just nav-col-6 */
  ul.dropdown-menu.navbar-cafs-dropdown-menu,
  ul.dropdown-menu.navbar-cafs-dropdown-menu.nav-col-6 { width: 100% !important; max-width: none !important; white-space: normal !important; }

  /* CRITICAL: kill inline-block columns on the item rows */
  ul.dropdown-menu.navbar-cafs-dropdown-menu > li, ul.dropdown-menu.navbar-cafs-dropdown-menu.nav-col-6 > li, ul.dropdown-menu.navbar-cafs-dropdown-menu > li.navbar-cafs-dropdown-item, ul.dropdown-menu.navbar-cafs-dropdown-menu.nav-col-6 > li.navbar-cafs-dropdown-item { display: block !important; width: 100% !important; float: none !important; clear: both !important; vertical-align: top !important; }

  /* full-width tap targets */
  ul.dropdown-menu.navbar-cafs-dropdown-menu > li > a, ul.dropdown-menu.navbar-cafs-dropdown-menu.nav-col-6 > li > a { display: block !important; width: 100% !important; }
}

/* =========================================================
ABECTA HOUSE — UNIFY ADD TO CART HOVER (SUBTLE, PDP-STYLE)
========================================================= */

/* Base state already gold — keep it */
.product-list .btn-hp-prod { background-color: var(--ab-gold) !important; border-color: var(--ab-gold) !important; color: var(--ab-charcoal) !important; }

/* Hover / focus: subtle, premium (NO color swap) */
.product-list .btn-hp-prod:hover, .product-list .btn-hp-prod:focus, .product-list .btn-hp-prod:focus-visible { background-color: var(--ab-gold) !important; border-color: var(--ab-gold) !important; color: var(--ab-charcoal) !important; /* Subtle interaction cue */ filter: brightness(0.95); box-shadow: 0 2px 6px rgba(0,0,0,0.12); outline: none !important; }

/* Kill any legacy hover rules that push sage */
.product-list .btn-hp-prod:hover[class*="sage"], .product-list .btn-default.btn-hp-prod:hover { background-color: var(--ab-gold) !important; border-color: var(--ab-gold) !important; }
/* =========================================================
ABECTA HOUSE — FORCE GOLD ADD TO CART + SUBTLE HOVER
Fixes: (1) text turning white on hover, (2) category hover going sage
========================================================= */

/* Base state — target the actual button markup used on category/search */
.product-list a.btn.btn-hp-prod, .product-list a.btn.btn-default.btn-hp-prod, .product-list .cat-product-hp-style a.btn.btn-hp-prod, .product-list .cat-product-hp-style a.btn.btn-default.btn-hp-prod { background-color: var(--ab-gold) !important; border-color: var(--ab-gold) !important; color: var(--ab-charcoal) !important; background-image: none !important; }

/* Hover/focus — KEEP GOLD, keep text dark (no sage, no white text) */
.product-list a.btn.btn-hp-prod:hover, .product-list a.btn.btn-hp-prod:focus, .product-list a.btn.btn-hp-prod:focus-visible, .product-list a.btn.btn-default.btn-hp-prod:hover, .product-list a.btn.btn-default.btn-hp-prod:focus, .product-list a.btn.btn-default.btn-hp-prod:focus-visible, .product-list .cat-product-hp-style a.btn.btn-hp-prod:hover, .product-list .cat-product-hp-style a.btn.btn-default.btn-hp-prod:hover { background-color: var(--ab-gold) !important; border-color: var(--ab-gold) !important; color: var(--ab-charcoal) !important; /* stops white text */ filter: brightness(0.95) !important; /* subtle hover like PDP */ box-shadow: 0 2px 6px rgba(0,0,0,0.12) !important; outline: none !important; }

/* Nuclear override: if ANY rule tries to paint hover sage, block it */
.product-list a.btn-hp-prod:hover { background-color: var(--ab-gold) !important; border-color: var(--ab-gold) !important; color: var(--ab-charcoal) !important; }
/* =========================================================
ABECTA HOUSE — “NICE” LINK HOVER FOR CATEGORY TILES + PRODUCT TITLES
Applies to: Home page category tiles, Category product grid, Search results grid
========================================================= */

/* -----------------------------
1) HOME PAGE CATEGORY TILES
------------------------------ */

/* Make the whole tile feel clickable */
.hp-cat-body ul li a { cursor: pointer; text-decoration: none !important; display: block; position: relative; outline: none; }

/* Smooth hover */
.hp-cat-body ul li img{
  display: block;
  transition: transform .15s ease-in-out,
    box-shadow .15s ease-in-out,
    border-color .15s ease-in-out;
}

/* Category name text hover */
.hp-cat-body ul li a span{
  transition: color .15s ease-in-out,
    text-decoration-color .15s ease-in-out;
  text-decoration: none;
  text-underline-offset: 4px;
}

/* Hover/focus: image + label */
.hp-cat-body ul li a:hover img, .hp-cat-body ul li a:focus-visible img { transform: translateY(-2px); border-color: var(--ab-sage) !important; box-shadow: var(--ab-shadow-soft-hover); }

.hp-cat-body ul li a:hover span, .hp-cat-body ul li a:focus-visible span { color: var(--ab-sage) !important; text-decoration: underline; }

/* Keyboard focus ring (important for accessibility) */
.hp-cat-body ul li a:focus-visible { outline: 3px solid var(--ab-focus); outline-offset: 4px; border-radius: 6px; }


/* -----------------------------
2) PRODUCT TITLE LINKS (CATEGORY + SEARCH GRIDS)
------------------------------ */

/* Target the product name links used in your tiles */
.product-list .caption a,
.product-list a.h5.color-inherit,
.homepage-product .caption a{
  cursor: pointer;
  text-decoration: none !important;
  transition: color .15s ease-in-out,
    text-decoration-color .15s ease-in-out;
  text-underline-offset: 4px;
}

/* Hover/focus behavior to match your “nice” effect */
.product-list .caption a:hover, .product-list a.h5.color-inherit:hover, .homepage-product .caption a:hover, .product-list .caption a:focus-visible, .product-list a.h5.color-inherit:focus-visible, .homepage-product .caption a:focus-visible { color: var(--ab-sage) !important; text-decoration: underline !important; outline: none; }

/* Optional: focus ring on the TITLE only (subtle) */
.product-list .caption a:focus-visible, .product-list a.h5.color-inherit:focus-visible, .homepage-product .caption a:focus-visible { box-shadow: 0 0 0 3px var(--ab-focus); border-radius: 4px; padding: 2px 4px; margin: -2px -4px; }

/* -----------------------------
B) PRODUCT TITLE LINKS (CATEGORY + SEARCH)
------------------------------ */

/* All product title anchors you’re using */
.product-list .caption a,
.product-list a.h5.color-inherit,
.homepage-product .caption a{
  cursor: pointer;
  text-decoration: none !important;
  text-underline-offset: 4px;
  transition: color .15s ease-in-out,
    text-decoration-color .15s ease-in-out;
}

/* One combined hover/focus rule */
.product-list .caption a:hover, .product-list .caption a:focus-visible, .product-list a.h5.color-inherit:hover, .product-list a.h5.color-inherit:focus-visible, .homepage-product .caption a:hover, .homepage-product .caption a:focus-visible { color: var(--ab-sage) !important; text-decoration: underline !important; outline: none; }

/* Optional focus ring on title only */
.product-list .caption a:focus-visible, .product-list a.h5.color-inherit:focus-visible, .homepage-product .caption a:focus-visible { box-shadow: 0 0 0 3px var(--ab-focus); border-radius: 4px; padding: 2px 4px; margin: -2px -4px; }
/* =========================================================
ABECTA HOUSE — PRODUCT TITLE HOVER (GOLD) + IMAGE HOVER RING (GOLD)
Applies to: Category pages, Search results, Home product cards
========================================================= */

/* ---------- Product title links: gold underline on hover/focus ---------- */
.product-list .caption a, .product-list a.h5.color-inherit, .homepage-product .caption a { cursor: pointer; color: var(--ab-text) !important; text-decoration: none !important; text-underline-offset: 4px; transition: color .15s ease-in-out, text-decoration-color .15s ease-in-out; }

.product-list .caption a:hover, .product-list .caption a:focus-visible, .product-list a.h5.color-inherit:hover, .product-list a.h5.color-inherit:focus-visible, .homepage-product .caption a:hover, .homepage-product .caption a:focus-visible { color: var(--ab-gold) !important; text-decoration: underline !important; text-decoration-color: var(--ab-gold) !important; outline: none !important; }

/* Optional: subtle focus ring on title only */
.product-list .caption a:focus-visible, .product-list a.h5.color-inherit:focus-visible, .homepage-product .caption a:focus-visible { box-shadow: 0 0 0 3px var(--ab-focus); border-radius: 4px; padding: 2px 4px; margin: -2px -4px; }

/* ---------- Product image hover ring: gold inset ring on .thumbnail ---------- */
.product-list .homepage-product a.thumbnail, .product-list .cat-product-hp-style a.thumbnail, .homepage-product a.thumbnail { border: 2px solid transparent !important; border-radius: 8px; transition: box-shadow .18s ease, border-color .15s ease, transform .15s ease; }

.product-list .homepage-product:hover a.thumbnail, .product-list .cat-product-hp-style:hover a.thumbnail, .homepage-product:hover a.thumbnail, .product-list .homepage-product a.thumbnail:focus-visible, .product-list .cat-product-hp-style a.thumbnail:focus-visible, .homepage-product a.thumbnail:focus-visible { box-shadow: var(--ab-shadow-soft-hover), inset 0 0 0 6px var(--ab-gold) !important; border-color: transparent !important; transform: translateY(-2px); outline: none !important; }
/* =========================================================
ABECTA HOUSE — HOMEPAGE CATEGORY TILE TITLE (GLOBAL FIX)
Reason: Home Page CSS is NOT loading, so this must be global.
========================================================= */

/* Base link: kill all underlines (text-decoration AND border underline styles) */
.hp-cat-body ul li a, .hp-cat-body ul li a:link, .hp-cat-body ul li a:visited, .hp-cat-body ul li a:hover, .hp-cat-body ul li a:active { text-decoration: none !important; border-bottom: 0 !important; box-shadow: none !important; }

/* Title span: no underline by default, controlled hover underline */
.hp-cat-body ul li a span { color: var(--ab-text) !important; display: inline-block; padding-bottom: 2px; text-decoration: none !important; border-bottom: 0 !important; transition: color .15s ease, border-color .15s ease; }

/* Hover/focus: gold + single underline (via border-bottom only) */
.hp-cat-body ul li a:hover span, .hp-cat-body ul li a:focus-visible span { color: var(--ab-gold) !important; border-bottom: 1px solid var(--ab-gold) !important; }

/* Make tiles feel clickable */
.hp-cat-body ul li a { cursor: pointer; }

/* =========================================================
ABECTA HOUSE — SUBCATEGORY TILE HOVER (CATEGORY LANDING PAGES)
Example: Furniture page showing Accent Chairs / Coffee Tables, etc.
Adds: gold hover ring + lift + label turns gold + underline
Place at VERY END of Global CSS.
========================================================= */

/* --- 1) Make the tile area feel clickable --- */
#cat-child-cats ul li, .CategoryChildCategories .CategoryCategoryThumbnail, .CategoryChildCategories li { cursor: pointer; }

/* --- 2) TILE IMAGE: base style --- */
#cat-child-cats ul li img, .CategoryChildCategories img { border: 4px solid var(--ab-nav-accent) !important; border-radius: 6px; box-shadow: var(--ab-shadow-soft) !important; transition: transform .18s ease, box-shadow .18s ease, border-color .15s ease !important; display: block; }

/* Hover image when either LI or A is hovered/focused */
#cat-child-cats ul li:hover img, #cat-child-cats ul li a:hover img, #cat-child-cats ul li a:focus-visible img, .CategoryChildCategories li:hover img, .CategoryChildCategories a:hover img, .CategoryChildCategories a:focus-visible img { transform: translateY(-2px); box-shadow: var(--ab-shadow-soft-hover) !important; border-color: var(--ab-gold) !important; }

/* --- 3) TILE LABEL LINKS: base (no underline by default) --- */
#cat-child-cats ul li a, #cat-child-cats ul li > div + a, .CategoryChildCategories a { color: var(--ab-text) !important; text-decoration: none !important; border-bottom: 0 !important; /* prevents double underline */ box-shadow: none !important; display: inline-block; padding-bottom: 2px; transition: color .15s ease, border-color .15s ease; }

/* Hover/focus: label becomes gold + single underline */
#cat-child-cats ul li:hover a, #cat-child-cats ul li a:hover, #cat-child-cats ul li > div + a:hover, #cat-child-cats ul li a:focus-visible, .CategoryChildCategories li:hover a, .CategoryChildCategories a:hover, .CategoryChildCategories a:focus-visible { color: var(--ab-gold) !important; border-bottom: 1px solid var(--ab-gold) !important; }

/* Optional keyboard focus ring */
#cat-child-cats ul li a:focus-visible, .CategoryChildCategories a:focus-visible { outline: 3px solid var(--ab-focus); outline-offset: 4px; border-radius: 6px; }
/* =========================================================
SUBCATEGORY TILE PAGE (Furniture -> subcategories)
Fix: remove thin line under image + keep gold hover behavior
Targets your exact markup:
<li.CategoryChildCategories>
<div.CategoryCategoryThumbnail><a><img /></a></div>
<a>Category Name</a>
========================================================= */

/* 1) Kill any underline/border/box-shadow on the THUMBNAIL link */
.CategoryChildCategories .CategoryCategoryThumbnail a, .CategoryChildCategories .CategoryCategoryThumbnail a:link, .CategoryChildCategories .CategoryCategoryThumbnail a:visited, .CategoryChildCategories .CategoryCategoryThumbnail a:hover, .CategoryChildCategories .CategoryCategoryThumbnail a:active { text-decoration: none !important; border-bottom: 0 !important; box-shadow: none !important; background: transparent !important; }

/* 2) Make image block-level and override inline border-width:0px */
.CategoryChildCategories .CategoryCategoryThumbnail a > img { display: block !important; vertical-align: top !important; border: 4px solid var(--ab-nav-accent) !important; /* overrides style="border-width:0px" */ border-radius: 6px; box-shadow: var(--ab-shadow-soft) !important; transition: transform .18s ease, box-shadow .18s ease, border-color .15s ease; }

/* 3) Gold hover ring + lift on the IMAGE */
.CategoryChildCategories:hover .CategoryCategoryThumbnail a > img, .CategoryChildCategories .CategoryCategoryThumbnail a:focus-visible > img { transform: translateY(-2px); border-color: var(--ab-gold) !important; box-shadow: var(--ab-shadow-soft-hover) !important; }

/* 4) Category NAME link: default + gold hover underline */
.CategoryChildCategories > a { color: var(--ab-text) !important; text-decoration: none !important; border-bottom: 0 !important; display: inline-block; padding-bottom: 2px; transition: color .15s ease, border-color .15s ease; }

.CategoryChildCategories:hover > a, .CategoryChildCategories > a:hover, .CategoryChildCategories > a:focus-visible { color: var(--ab-gold) !important; border-bottom: 1px solid var(--ab-gold) !important; /* single underline */ }

/* 5) Optional: make tile feel clickable */
.CategoryChildCategories { cursor: pointer; }

/* =========================================================
KILL THE “THIN LINE” UNDER SUBCATEGORY TILE IMAGES
(Abecta House: Furniture -> Accent Chairs tiles)
========================================================= */

/* 1) Nuke any borders/backgrounds/shadows on the wrapper */
.CategoryChildCategories .CategoryCategoryThumbnail, .CategoryChildCategories .CategoryCategoryThumbnail * { background: transparent !important; border: 0 !important; box-shadow: none !important; }

/* 2) Remove any inline-gap / baseline / line-height seams */
.CategoryChildCategories .CategoryCategoryThumbnail { line-height: 0 !important; font-size: 0 !important; }

/* 3) Make the thumbnail link + image behave like a solid block */
.CategoryChildCategories .CategoryCategoryThumbnail a { display: inline-block !important; text-decoration: none !important; line-height: 0 !important; }

.CategoryChildCategories .CategoryCategoryThumbnail a > img { display: block !important; vertical-align: top !important; margin: 0 !important; /* Use OUTLINE for the ring (outline avoids weird seams better than border) */ outline: 4px solid var(--ab-nav-accent) !important; outline-offset: 0 !important; border: 0 !important; /* overrides your inline border-width:0px situation */ border-radius: 6px; }

/* 4) Gold hover ring */
.CategoryChildCategories:hover .CategoryCategoryThumbnail a > img, .CategoryChildCategories .CategoryCategoryThumbnail a:focus-visible > img { outline-color: var(--ab-gold) !important; transform: translateY(-2px); }

/* Hero overlay fix — unscoped */
.ab-hero { position: relative; overflow: hidden; border-radius: 14px; background: #2F353B; }
.ab-hero__media { display: block; }
.ab-hero__media img { width: 100%; height: clamp(260px, 24vw, 400px); object-fit: cover; display: block; }
.ab-hero__overlay { position: absolute; inset: 0; display: flex; align-items: center;
  background: radial-gradient(80% 120% at 18% 50%, rgba(74,93,84,0.18) 0%, rgba(74,93,84,0.00) 56%),
    linear-gradient(90deg, rgba(47,53,59,0.64) 0%, rgba(47,53,59,0.48) 26%, rgba(47,53,59,0.24) 46%, rgba(47,53,59,0.00) 74%);
}
.ab-hero__content { max-width: 660px; padding: clamp(22px, 3.6vw, 60px); color: #F9F8F4; }
.ab-hero__content h1 { margin: 0 0 18px 0; font-weight: 800; letter-spacing: 0.3px; font-size: clamp(26px, 2.7vw, 44px); line-height: 1.08; }
.ab-hero__content p { margin: 0 0 18px 0; font-weight: 500; font-size: clamp(15px, 1.25vw, 18px); line-height: 1.55; opacity: 1; max-width: 520px; }

/* HERO CTA BUTTON — FULL REPLACEMENT */
.ab-hero__btn,
.ab-hero__btn:visited {
  display: inline-block;
  padding: 11px 18px;
  border-radius: 10px;
  background: rgba(199,162,98,0.92);
  color: #2F353B !important;
  font-weight: 700;
  text-decoration: none !important;
  box-shadow: 0 4px 14px rgba(0,0,0,0.25);
  transition: all 0.18s ease;
}

/* HOVER / FOCUS — FIX FAINT TEXT ISSUE */
.ab-hero__btn:hover,
.ab-hero__btn:focus {
  background: rgba(199,162,98,1);
  color: #2F353B !important;
  text-decoration: none !important;
  opacity: 1 !important;
  box-shadow: 0 6px 18px rgba(0,0,0,0.30);
  transform: translateY(-1px);
}

/* ACTIVE (CLICK) STATE */
.ab-hero__btn:active {
  background: #B8964E;
  color: #2F353B !important;
  transform: translateY(0);
  box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}

@media (max-width: 768px){

  .ab-hero__media img {
    height: clamp(280px, 60vw, 380px);
    object-fit: cover;
    object-position: center 40%;
  }

  .ab-hero__overlay {
    align-items: flex-start;
    padding-top: 18px;
    background: radial-gradient(90% 70% at 50% 0%, rgba(74,93,84,0.16) 0%, rgba(74,93,84,0.00) 60%),
      linear-gradient(180deg, rgba(47,53,59,0.62) 0%, rgba(47,53,59,0.40) 44%, rgba(47,53,59,0.00) 100%);
  }

  .ab-hero__content {
    padding: 18px 18px 22px 18px;
  }
}

/* Trust Strip — Global (for HTML11347) */
.ab-trust-strip { display: grid; grid-template-columns: repeat(4, 1fr); column-gap: 28px; row-gap: 12px; align-items: center; text-align: center; padding: 12px 18px; margin: 8px 0 18px; background: #FBFAF7; border: 1px solid rgba(74,93,84,0.14); border-radius: 14px; box-shadow: inset 0 1px 0 rgba(255,255,255,0.70); }

.ab-trust-item { display: flex; align-items: center; justify-content: center; gap: 10px; color: #2F353B; font-size: 14px; font-weight: 500; letter-spacing: 0.15px; transition: opacity .2s ease; }

.ab-trust-item:hover { opacity: .88; }

.ab-trust-icon { width: 20px; height: 20px; color: #4A5D54; display: inline-flex; align-items: center; justify-content: center; }

.ab-trust-icon svg { width: 20px; height: 20px; }

/* Tablet */
@media (max-width: 992px){
  .ab-trust-strip { grid-template-columns: repeat(2, 1fr); row-gap: 16px; }
}

/* Mobile */
@media (max-width: 600px){
  .ab-trust-strip { grid-template-columns: 1fr; text-align: left; padding: 12px 12px; row-gap: 0; }
  .ab-trust-item { justify-content: flex-start; font-size: 13.5px; gap: 9px; padding: 10px 6px; }
  .ab-trust-item + .ab-trust-item { border-top: 1px solid rgba(47,53,59,0.06); }
  .ab-trust-icon, .ab-trust-icon svg { width: 18px; height: 18px; }
}

@media (hover: none){
  .ab-trust-item:hover { opacity: 1; }
}

/* Footer Mailing List button — force gold */
#above-footer .MailingListGoThemeButton { background: rgba(199,162,98,0.92) !important; border: none !important; color: #2F353B !important; }
#above-footer .MailingListGoThemeButton:hover { background: #B8964E !important; color: #2F353B !important; }

/* Last Updated block — restore vertical bar */
.ab-policy__meta { margin-top: 12px; margin-bottom: 24px; padding: 12px 16px; background: rgba(47,53,59,0.04); border-left: 4px solid rgba(74,93,84,0.75); max-width: 520px; border-radius: 8px; line-height: 1.4; }

.ab-policy__meta span { display: inline-block; text-transform: uppercase; font-size: 10px; letter-spacing: 0.9px; color: #7a7f83; margin-right: 10px; }

.ab-policy__meta strong { font-size: 13px; font-weight: 600; color: #2F353B; letter-spacing: 0.2px; }

/* =========================================================
ABECTA HOUSE — MEGA MENU STRUCTURE
========================================================= */

/* -------------------------------
SECTION HEADINGS (e.g., Wall Decor)
-------------------------------- */

.mm-tab-group > div > a, .mm-tab-group a[href^="/ah-"]:not(.CategoryQuickListSubCategory) { font-weight: 600; color: var(--ab-text); text-decoration: none; transition: color .15s ease-in-out; }

.mm-tab-group > div > a:hover, .mm-tab-group > div > a:focus-visible, .mm-tab-group a[href^="/ah-"]:not(.CategoryQuickListSubCategory):hover, .mm-tab-group a[href^="/ah-"]:not(.CategoryQuickListSubCategory):focus-visible { color: var(--ab-gold); text-decoration: none; outline: none; }


/* -------------------------------
MEGA MENU FLYOUT LINKS (All)
Gold + underline on hover/focus
-------------------------------- */

/* Base state */
.navbar-cafs .dropdown-menu a { font-weight: 400; color: var(--ab-text); text-decoration: none; text-underline-offset: 4px; text-decoration-color: transparent; transition: color .15s ease-in-out, text-decoration-color .15s ease-in-out; }

/* Hover + keyboard focus — SPLIT behavior */

/* Leaf links → Gold + underline */
.navbar-cafs .dropdown-menu a.CategoryQuickListSubCategory:hover, .navbar-cafs .dropdown-menu a.CategoryQuickListSubCategory:focus-visible { color: var(--ab-gold) !important; text-decoration: underline !important; text-decoration-color: var(--ab-gold) !important; outline: none; }

/* Heading links (not subcategory class) → Gold only */
.navbar-cafs .dropdown-menu a:not(.CategoryQuickListSubCategory):hover, .navbar-cafs .dropdown-menu a:not(.CategoryQuickListSubCategory):focus-visible { color: var(--ab-gold) !important; text-decoration: none !important; outline: none; }

@media (max-width: 768px){
  /* Collapse the empty logo row only (hero stays visible) */
  #hp-logos { margin: 0 !important; padding: 0 !important; }
  #hp-logos > .row.vertical-align { display: none !important; }

  /* Ensure hero hugs the header */
  #hp-logos .ab-hero { margin-top: 0 !important; }
}
/* =========================================================
ABOUT PAGE – LAYOUT, TYPOGRAPHY & TRUST ELEMENTS
========================================================= */

/* Improve readability of About page text */
.page-about-abecta-house p{
  max-width: 900px;
  line-height: 1.65;
  margin-bottom: 18px; /* was 16px */
}

/* Heading spacing */
.page-about-abecta-house h1{
  margin-bottom: 18px;
}

.page-about-abecta-house h2{
  margin-top: 36px;
  margin-bottom: 16px;
}

/* =========================================================
ABOUT PAGE – TRUST LIST
========================================================= */

.page-about-abecta-house .about-trust-list{
  list-style: none;
  padding: 0;
  margin: 18px 0 8px 0;
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 0;
}
.page-about-abecta-house .about-trust-list + h2{
  margin-top: 8px;
}
.page-about-abecta-house .about-trust-list li{
  position: relative;
  padding-left: 36px;
  font-size: 16px;
  margin-bottom: 8px;
  line-height: 1.5;
}

/* Gold circle icon */
.page-about-abecta-house .trust-icon{
  position: absolute;
  left: 0;
  top: 4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--ab-gold);
  box-shadow: 0 0 0 3px rgba(199,162,98,.15);
}

/* CSS checkmark */
.page-about-abecta-house .trust-icon::after{
  content: "";
  position: absolute;
  left: 6px;
  top: 3px;
  width: 5px;
  height: 9px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
}

/* Two-column layout for trust list on wider screens */
@media (min-width: 900px){
  .page-about-abecta-house .about-trust-list{
    grid-template-columns: 1fr 1fr;
    column-gap: 28px; /* was 48px */
  }
}

/* =========================================================
ABOUT PAGE – COMPANY INFORMATION
========================================================= */

.page-about-abecta-house .company-info{
  margin-top: 10px;
  margin-bottom: 20px;
}

.page-about-abecta-house .company-row{
  display: flex;
  margin-bottom: 6px;
  align-items: flex-start;
}

.page-about-abecta-house .company-label{
  width: 90px;
  font-weight: 600;
  color: var(--ab-text);
  flex: 0 0 90px;
}

.page-about-abecta-house .company-value{
  flex: 1;
}

.page-about-abecta-house .company-trademark{
  margin-top: 18px;
  font-size: 14px;
  color: #666;
}
/* ========================================
ABOUT PAGE – CONTENT WIDTH CONTROL
======================================== */

.page-about-abecta-house p,
.page-about-abecta-house .about-trust-list,
.page-about-abecta-house .company-info,
.page-about-abecta-house .company-trademark {
  max-width: 900px; /* was 840px */
}