
 /* /style/showcart-v2.css */ 

/* ============================================================================
   showcart-v2.css — UI v2 "Warm Modern" reskin of showCart.php / showCartHTML.php
   (Phase 4, part 2 — cart page). Replaces, for the cart page ONLY, the
   style/showCart.css contribution to showCart.php's bundle. buttonLoader.css
   and footer.css stay in the bundle unchanged (footer.css is the GLOBAL
   shared file already on DSv2 — it owns .RRBTN/.WRBTN base styles, the
   .Protection/.PlanIncludes protection-plan widget, and the review-slider
   partials; buttonLoader.css owns the .spinner/.has-spinner runtime states
   from javascript/global.js's loadingStart()/loadingStop()). Tokens (--tch-*)
   come from headerStyle.php (loaded globally via headTag.php, which
   showCart.php includes). components.css (.tch-btn/.tch-badge/.tch-alert/...)
   is also loaded globally and already used inline on showCart.php's static
   shell (.tch-alert, .tch-btn--primary/--secondary).
   RULE: this file styles EXISTING markup only. Every id / name / class /
   data-* hook listed in docs/ui-redo-contracts.md Surface 1 + Surface 2
   (2a-2j) is preserved byte-for-byte in include/Html/showCartHTML.php and
   showCart.php — ZERO markup edits were made for this reskin.
   style/showCart.css is NOT deleted: it is still loaded by APIAmazon.php
   (`grep -n "showCart.css" APIAmazon.php`) so it stays live at its original
   path; showCart.php alone stops referencing it.
   ========================================================================== */

/* ---------- Page shell ---------- */
/* Cream page (body already carries --tch-surface-warm globally from
   headerStyle.php); .ShoppingCart used to force a flat white page background
   -- switch it to transparent so the cream shows through and item/summary
   cards read as white surfaces floating on cream, matching every other UI v2
   page. */
.ShoppingCart{padding-bottom:56px; padding-top:34px; background:transparent;}
.ShoppingCart .SiteContainer{max-width:1400px !important; margin:0 auto !important;}

/* Cart page heading ("My Shopping Cart") -- promote to the shared display
   heading treatment (Fraunces) instead of the generic global h1. */
#cartContent h1{
	font-family:var(--tch-font-display); font-weight:500; color:var(--tch-ink);
	font-size:var(--tch-text-2xl); line-height:1.15; margin:0 0 18px 0;
}

/* ---------- Buttons scoped to the cart page (pill, matches checkout-v2) ---
   Base .RRBTN/.WRBTN/button.RRBTN/button.WRBTN colors+radius already come
   from the global style/footer.css (DSv2 tokens); bump the radius to the
   pill used everywhere else in UI v2 without touching footer.css itself. */
.ShoppingCart .RRBTN, .ShoppingCart .WRBTN,
.ShoppingCart button.RRBTN, .ShoppingCart button.WRBTN{
	border-radius:var(--tch-radius-pill); box-shadow:0 6px 16px color-mix(in srgb, var(--tch-brand) 18%, transparent);
}
.ShoppingCart .WRBTN, .ShoppingCart button.WRBTN{ box-shadow:none; }
.ShoppingCart .RRBTN.medium, .ShoppingCart .WRBTN.medium,
.ShoppingCart button.RRBTN.medium, .ShoppingCart button.WRBTN.medium,
.ShoppingCart .RRBTN.small, .ShoppingCart .WRBTN.small,
.ShoppingCart button.RRBTN.small, .ShoppingCart button.WRBTN.small{ box-shadow:none; }

/* ---------- Cart-right sidebar cards ---------- */
.ShoppingCart .CartRight{max-width:300px; width:22%; float:right;}

.ShoppingCart .CartRight .CouponShipping,
.ShoppingCart .CartRight .CostCalc,
.ShoppingCart .CartRight .BonusPoints,
.ShoppingCart .CartRight .UseGiftCard,
.ShoppingCart .CartRight .CartTotal{
	border:1px solid var(--tch-line); border-left:4px solid var(--tch-brand);
	border-radius:var(--tch-radius-lg); box-shadow:var(--tch-shadow-sm);
	margin-bottom:15px; padding:14px; background:var(--tch-surface);
}
.ShoppingCart .CartRight .CouponShipping label{line-height:34px;}
.ShoppingCart .CartRight .CouponShipping .Form{overflow:hidden;}
.ShoppingCart .CartRight .CouponShipping .Form input{width:70%; height:36px; text-align:center; float:left;}
.ShoppingCart .CartRight .CouponShipping .Form button{width:56px; height:38px; float:left;}
.ShoppingCart .CartRight .CouponShipping .remove{clear:left; text-align:center; font-size:12px; line-height:26px;}
.ShoppingCart .CartRight .CouponShipping .remove a{margin-left:4px;}
.ShoppingCart .CartRight .CouponShipping span{background:var(--tch-ink); color:#FFF; width:18px; height:18px; line-height:18px; text-align:center; display:inline-block; border-radius:50%; position:relative; margin-left:3px;}
.ShoppingCart .CartRight .CouponShipping .popup{background:var(--tch-ink); position:absolute; left:-70px; top:28px; width:262px; padding:8px; font-weight:normal; font-size:12px; line-height:16px; border-radius:var(--tch-radius); display:none; z-index:999; box-shadow:var(--tch-shadow);}
.ShoppingCart .CartRight .CouponShipping .popup:after{content:""; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-bottom:8px solid var(--tch-ink); position:absolute; top:-7px; left:70px;}
.ShoppingCart .CartRight .CouponShipping span:hover .popup{display:block;}

.ShoppingCart .CartRight .BonusPoints span{background:var(--tch-ink); color:#FFF; width:18px; height:18px; line-height:18px; text-align:center; display:inline-block; border-radius:50%; position:relative; margin-left:3px;}
.ShoppingCart .CartRight .BonusPoints .popup{background:var(--tch-ink); position:absolute; left:-70px; top:28px; width:210px; padding:8px; font-weight:normal; font-size:12px; line-height:16px; border-radius:var(--tch-radius); display:none; box-shadow:var(--tch-shadow);}
.ShoppingCart .CartRight .BonusPoints .popup:after{content:""; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-bottom:8px solid var(--tch-ink); position:absolute; top:-7px; left:70px;}
.ShoppingCart .CartRight .BonusPoints span:hover .popup{display:block;}

.ShoppingCart .CartRight .CostCalc h3,
.ShoppingCart .CartRight .BonusPoints h3{margin:0; padding-bottom:8px; font-weight:600; font-family:var(--tch-font-display); font-size:17px; color:var(--tch-ink);}
.ShoppingCart .CartRight .BonusPoints .Form{overflow:hidden;}
.ShoppingCart .CartRight .BonusPoints .Form input{padding:0; text-align:left; width:69%; text-indent:10px; float:left;}
.ShoppingCart .CartRight .BonusPoints .Form button{width:30%; padding:0; height:42px; float:left;}
.ShoppingCart .CartRight .BonusPoints p{font-size:12px; margin:5px 0 0 0; color:var(--tch-muted);}
.ShoppingCart .CartRight .BonusPoints .remove{line-height:26px; font-size:13px;}

.ShoppingCart .CartRight .UseGiftCard h3{margin:0; padding-bottom:8px; font-weight:600; font-family:var(--tch-font-display); font-size:17px; color:var(--tch-ink);}
.ShoppingCart .CartRight .UseGiftCard ul{margin:0; padding:0; list-style:none; color:var(--tch-muted);}
.ShoppingCart .CartRight .UseGiftCard ul li{list-style:none; overflow:hidden; padding:5px 0;}
.ShoppingCart .CartRight .UseGiftCard ul li b{float:right; color:var(--tch-ink);}
.ShoppingCart .CartRight .UseGiftCard .RRBTN{margin:10px auto 0 auto; width:150px; display:block; text-align:center;}

.ShoppingCart .CartRight .CartTotal{overflow:hidden; padding:0;}
.ShoppingCart .CartRight .CartTotal h3{border-bottom:1px solid var(--tch-line); margin:0; padding:14px; font-weight:600; text-transform:uppercase; letter-spacing:.03em; font-size:13px; color:var(--tch-muted); font-family:var(--tch-font-body);}
.ShoppingCart .CartRight .CartTotal .OrderTotal{padding:14px; font-weight:700; font-size:16px;}
.ShoppingCart .CartRight .CartTotal .OrderTotal b{float:right; color:var(--tch-ink);}
.ShoppingCart .CartRight .CartTotal .CartDetails{padding:5px 14px 14px 14px;}
.ShoppingCart .CartRight .CartTotal .CartDetails ul{margin:0; padding:0;}
.ShoppingCart .CartRight .CartTotal .CartDetails li{list-style:none; padding:0; font-size:13px;}
.ShoppingCart .CartRight .CartTotal .CartDetails li b{margin-left:3px;}
.ShoppingCart .CartRight .CartTotal .CartDetails .CartDetailsTable{font-size:16px;}
.ShoppingCart .CartRight .CartTotal .CartDetails .CartDetailsTable td{padding:4px 0;}
.ShoppingCart .CartRight .CartTotal .CartDetails .CartDetailsTable span{color:var(--tch-muted); font-weight:700;}

.ShoppingCart .CartRight .CartTotal .CouponShipping{border:0; padding:0; margin-bottom:0; border-radius:0; box-shadow:none;}
.ShoppingCart .CartRight .CartTotal .CartDetails .CartDetailsTable .CouponShipping span{color:#FFF;}
.ShoppingCart .CartRight .CartTotal .CouponShipping label{line-height:24px; font-size:14px; font-weight:400; padding:0;}
.ShoppingCart .CartRight .CartTotal .CouponShipping .popup{text-align:left; color:#FFF;}

/* ---------- Cart line items ---------- */
.ShoppingCart .CartItems{
	border:1px solid var(--tch-line); border-radius:var(--tch-radius-lg);
	box-shadow:var(--tch-shadow-sm); padding:16px; margin-bottom:15px;
	background:var(--tch-surface); transition:box-shadow .18s ease;
}
.ShoppingCart .CartItems:hover{box-shadow:var(--tch-shadow);}
.ShoppingCart .CartItems .CartThumb{float:left; width:160px;}
.ShoppingCart .CartItems .CartThumb img{width:100%; border-radius:var(--tch-radius-sm); background:var(--tch-surface-sand);}
.ShoppingCart .CartItems .CartDetail{margin-left:172px; display:flex;}
.ShoppingCart .CartItems .CartTitle{width:100%;}
.ShoppingCart .CartItems h4{margin:0; font-weight:600; font-size:16px; font-family:var(--tch-font-display); line-height:1.3;}
.ShoppingCart .CartItems h4 a, .ShoppingCart .CartItems h5 a{color:var(--tch-ink);}
.ShoppingCart .CartItems h4 a:hover, .ShoppingCart .CartItems h5 a:hover{color:var(--tch-brand-dark);}
.ShoppingCart .CartItems h5{margin:0; font-weight:400; font-size:15px;}
.ShoppingCart .CartItems .SKUAvailability{margin-top:6px;}
.ShoppingCart .CartItems .SKUAvailability span{
	display:inline-block; font-size:12px; font-weight:600; color:var(--tch-muted);
	background:var(--tch-hover-bg); padding:4px 10px; border-radius:var(--tch-radius-pill);
}
.ShoppingCart .CartItems .SKUAvailability b{font-size:13px; font-weight:500; color:var(--tch-ink-2);}
.ShoppingCart .CartItems .ItemDisco{font-size:17px; color:var(--tch-brand-dark); font-weight:600;}

.ShoppingCart .CartItems .CartQtyPrice{width:300px; text-align:right; font-size:13px; font-weight:normal; color:var(--tch-muted);}
.ShoppingCart .CartItems .CartQtyPrice .cartQuantity{margin-bottom:10px;}
.ShoppingCart .CartItems .CartQtyPrice .cartQuantity select,
.ShoppingCart .CartItems .GroupItem .selectQuant{
	text-align:center; border:1.5px solid var(--tch-line); padding:8px; height:auto;
	font-size:18px; border-radius:var(--tch-radius); background:var(--tch-surface); color:var(--tch-ink);
	transition:border-color .15s ease, box-shadow .15s ease;
}
.ShoppingCart .CartItems .CartQtyPrice .cartQuantity select:focus,
.ShoppingCart .CartItems .GroupItem .selectQuant:focus{
	border-color:var(--tch-brand); outline:none; box-shadow:0 0 0 3px color-mix(in srgb, var(--tch-brand) 18%, transparent);
}
.ShoppingCart .CartItems .strikePrice{text-decoration:line-through; font-size:14px; color:var(--tch-muted);}
.ShoppingCart .CartItems .disTextSave{color:#1e6b2d; font-weight:600;}
.ShoppingCart .CartItems b.Price{font-size:22px; color:var(--tch-ink); font-weight:600;}
.ShoppingCart .CartItems .disText{font-style:italic; font-size:12px; color:var(--tch-muted);}
.ShoppingCart .CartItems .fedexAmRate{line-height:24px; background:var(--tch-surface-sand); margin-bottom:0; padding:4px 12px; border-radius:var(--tch-radius-sm); color:var(--tch-ink-2); font-size:12px;}
.ShoppingCart .CartItems .SpecialOrderMsg{line-height:24px; background:#fdf3e0; color:#8a5a00; margin-bottom:0; padding:4px 12px; border-radius:var(--tch-radius-sm); font-size:12px;}
.ShoppingCart .CartItems .SaveRemoveBtn{text-align:right;}
.ShoppingCart .CartItems a.saveremove{
	display:inline-block; background:var(--tch-ink); border:1px solid var(--tch-ink); color:#FFF;
	border-radius:var(--tch-radius-pill); padding:9px 16px; text-align:center; font-size:13px; font-weight:600;
	transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.ShoppingCart .CartItems a.saveremove:hover{background:#FFF; color:var(--tch-ink); border:1px solid var(--tch-ink);}
.ShoppingCart .CartItems .GroupItem{
	border:1px solid var(--tch-line); border-radius:var(--tch-radius); padding:12px; margin:14px 0;
	margin-left:172px; position:relative; background:var(--tch-surface-warm);
}
.ShoppingCart .CartItems .GroupItem a.remove{position:absolute; right:6px; top:6px; background:var(--tch-ink); border-radius:50%; width:18px; height:18px; text-align:center; line-height:20px; color:#FFF; font-weight:600; font-size:10px;}
.ShoppingCart .CartItems .GroupItem .GroupItemDetail{display:flex; width:50%;}
.ShoppingCart .CartItems .GroupItem .GroupItemDetail .GroupThumb{max-width:110px;}
.ShoppingCart .CartItems .GroupItem .GroupItemDetail .GroupThumb img{border-radius:var(--tch-radius-sm);}
.ShoppingCart .CartItems .GroupItem .GroupItemDetail .GroupItemInfo{margin-left:15px;}
.ShoppingCart .CartItems .GroupItem .selectQuant{padding:6px; font-size:16px;}
/* .GroupProtection was previously unstyled (pre-existing gap, not introduced
   here) -- give the protection-plan slot next to each group child item some
   breathing room so it doesn't run edge-to-edge against GroupItemDetail. */
.ShoppingCart .CartItems .GroupItem .GroupProtection{flex:1; padding-left:12px; font-size:13px;}

/* ---------- Checkout / alt-payment buttons ---------- */
.CheckoutBtnGroup .affirmButton{display:block;}
.CheckoutBtnGroup .affirmBtnBox a{color:var(--tch-ink);}
.CheckoutBtnGroup .acimaBtnBox{margin-top:15px; text-align:center; background:var(--tch-surface); border-radius:var(--tch-radius-lg); padding:8px; box-shadow:var(--tch-shadow-sm);}
.CheckoutBtnGroup .acimaButton{background:#147ee1; border-radius:var(--tch-radius-pill); color:#fff; display:block; font-weight:600; padding:6px; text-transform:uppercase; width:80%; line-height:40px; margin:10px auto; font-size:18px;}
.CheckoutBtnGroup .acimaButton:hover{background:#065baa;}
.PaypalPaymentClass .checkoutBtn{border-radius:0;}

.ShoppingCart .CartRight .CheckoutBtnGroup{text-align:center; padding-top:22px;}
.ShoppingCart .CartRight .CheckoutBtnGroup b{color:var(--tch-muted); font-size:15px; display:block; padding:10px 0;}
.ShoppingCart .CartRight a.CheckoutBtn{
	margin:15px 0; display:block; border-radius:var(--tch-radius-pill); line-height:1;
	padding:18px 0; text-align:center; font-size:16px; font-weight:600; color:#FFF;
	background:var(--tch-brand); box-shadow:0 8px 20px color-mix(in srgb, var(--tch-brand) 25%, transparent);
	transition:background .18s ease;
}
.ShoppingCart .CartRight a.CheckoutBtn:hover{background:var(--tch-brand-dark);}
.ShoppingCart .CartRight a.CheckoutBtn i{display:inline-block; padding:4px; vertical-align:middle;}
.ShoppingCart .CartRight a.CheckoutBtn i img{max-width:44px;}

.ShoppingCart .CartRight .amazonPaypalBTN .paypalBTN{margin-bottom:15px;}
.ShoppingCart .CartRight .amazonPaypalBTN .amazonBTN{border-bottom:1px solid var(--tch-line); border-radius:var(--tch-radius-pill); height:42px; overflow:hidden; background:#f5c747;}
.ShoppingCart .CartRight .amazonPaypalBTN .amazonBTN #AmazonPayButton img{max-height:100% !important;}
.pay-with-amazon-tooltip{font-size:11px; padding:10px 15px; text-align:left; width:300px;}
.pay-with-amazon-tooltip img{float:right; padding:5px 0 5px 10px;}

/* ---------- Order summary numbers ---------- */
.CartRight .ItemCartTotal h4{
	font-size:20px; margin:0 0 6px 0; font-family:var(--tch-font-display); font-weight:600; color:var(--tch-ink);
}
.CartRight .ItemCartTotal p.list{font-weight:500; font-size:14.5px; color:var(--tch-ink-2); padding:5px 0; margin:0; border-bottom:1px solid var(--tch-line);}
.CartRight .ItemCartTotal p.list b{text-align:right; font-size:15px; float:right; color:var(--tch-ink);}
.CartRight .ItemCartTotal p.list.Discount{font-weight:normal; font-size:13.5px;}
.CartRight .ItemCartTotal p.list.Discount i{font-size:12px; font-weight:normal;}
.CartRight .ItemCartTotal p.list.Discount i span{text-decoration:underline; font-weight:500;}
.CartRight .ItemCartTotal p.list.Discount b{color:#1e6b2d; font-weight:600;}
.CartRight .ItemCartTotal p.list.orderTotal{font-size:19px; border-bottom:0; padding-top:12px;}
.CartRight .ItemCartTotal p.list.orderTotal b{font-size:22px; color:var(--tch-brand-dark);}
.CartRight .ItemCartTotal .OrderWillShip{background:var(--tch-surface-sand); padding:14px 16px; border-radius:var(--tch-radius);}
.CartRight .ItemCartTotal .OrderWillShip h5{font-size:14px; margin:0 0 10px 0; color:var(--tch-ink);}
.CartRight .ItemCartTotal .OrderWillShip h5 span{color:var(--tch-brand-dark); font-weight:normal; text-decoration:underline;}
.CartRight .ItemCartTotal .OrderWillShip p{font-size:12px;}
.CartRight .ItemCartTotal .OrderWillShip p b{font-weight:500; font-size:13px;}
.CartRight .OrderWillShip ul{margin:0; padding:0;}
.CartRight .OrderWillShip ul li{list-style:none;}
.CartRight .OrderWillShip ul li i{font-size:12px;}
.CartRight .OrderWillShip .InfoShipping{background:var(--tch-ink); color:#FFF; border-radius:50%; font-size:11px; line-height:17px; width:14px; height:14px; display:inline-block; text-align:center; position:relative;}
.CartRight .OrderWillShip .InfoShipping .popup{background:var(--tch-ink); position:absolute; left:-70px; top:28px; width:262px; padding:8px; font-weight:normal; font-size:12px; line-height:16px; border-radius:var(--tch-radius); display:none; z-index:999; box-shadow:var(--tch-shadow);}
.CartRight .OrderWillShip .InfoShipping .popup:after{content:""; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-bottom:8px solid var(--tch-ink); position:absolute; top:-7px; left:70px;}
.CartRight .OrderWillShip .InfoShipping span:hover .popup{display:block;}

.selectShippingPopUpWidgetDiv .InfoShipping{background:var(--tch-ink); color:#FFF; border-radius:50%; font-size:11px; line-height:17px; width:14px; height:14px; display:inline-block; text-align:center; position:relative;}
.selectShippingPopUpWidgetDiv .InfoShipping .popup{background:var(--tch-ink); position:absolute; left:-70px; top:28px; width:262px; padding:8px; font-weight:normal; font-size:12px; line-height:16px; border-radius:var(--tch-radius); display:none; z-index:999; box-shadow:var(--tch-shadow);}
.selectShippingPopUpWidgetDiv .InfoShipping .popup:after{content:""; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-bottom:8px solid var(--tch-ink); position:absolute; top:-7px; left:70px;}
.selectShippingPopUpWidgetDiv .InfoShipping span:hover .popup{display:block;}

#OrderWillShip{border:2px solid transparent; transition:border 0.5s ease-in-out;}
@keyframes flashBorder{
	0%{border-color:transparent;}
	50%{border-color:var(--tch-brand);}
	100%{border-color:transparent;}
}
.flash-border{animation:flashBorder 1s ease-in-out;}

.CartRight .OrderWillShip .EnterZip{position:relative;}
.CartRight .OrderWillShip .EnterZip p{text-align:center; margin-top:5px;}
.CartRight .OrderWillShip .EnterZip input[type="text"]{
	border-radius:var(--tch-radius); border:1.5px solid var(--tch-line); font-style:normal;
	background:var(--tch-surface); color:var(--tch-ink); padding:0 12px; height:38px;
}
.CartRight .OrderWillShip .EnterZip input[type="text"]:focus{border-color:var(--tch-brand); outline:none; box-shadow:0 0 0 3px color-mix(in srgb, var(--tch-brand) 18%, transparent);}
.CartRight .OrderWillShip .EnterZip button{position:absolute; right:10px; top:26px; background:none; color:var(--tch-brand-dark); text-decoration:underline; font-style:italic; font-weight:600;}

.CartRight .EnterCoupon{position:relative;}
.CartRight .EnterCoupon p{text-align:center; margin-top:5px;}
.CartRight .EnterCoupon input[type="text"]{
	border-radius:var(--tch-radius); border:1.5px solid var(--tch-line); font-style:normal;
	background:var(--tch-surface); color:var(--tch-ink); padding:0 12px; height:38px;
}
.CartRight .EnterCoupon input[type="text"]:focus{border-color:var(--tch-brand); outline:none; box-shadow:0 0 0 3px color-mix(in srgb, var(--tch-brand) 18%, transparent);}
.CartRight .EnterCoupon button{position:absolute; right:10px; top:26px; background:none; color:var(--tch-brand-dark); text-decoration:underline; font-style:italic; font-weight:600;}

.CartRight .BonusPoint p.YouGet{color:#8a5a00; font-weight:600; font-size:12px; font-style:italic;}
.CartRight .BonusPoint p.YouGet span{font-size:13px;}
.BonusPoint .ReedeemPoint input[type="checkbox"]{display:none;}
.CartRight .BonusPoint .ReedeemPoint{position:relative; margin:0 0 0 50px; cursor:pointer;}
.CartRight .BonusPoint .ReedeemPoint span{font-weight:500;}
.CartRight .BonusPoint .ReedeemPoint i{font-weight:normal; font-size:11px; color:var(--tch-muted);}
.CartRight .BonusPoint span:before,
.CartRight .BonusPoint span:after{content:''; position:absolute; top:5px; left:-25px; margin:auto;}
.CartRight .BonusPoint span.checkbox:before{width:26px; height:26px; background-color:var(--tch-surface-warm); left:-38px; box-sizing:border-box; border:2px solid var(--tch-line); transition:border-color .2s; border-radius:6px;}
.CartRight .BonusPoint span.checkbox::after{content:'\f00c'; font-family:'FontAwesome'; left:-33px; top:8px; color:transparent; transition:color .2s; font-size:16px;}
.CartRight .BonusPoint input[type="checkbox"]:checked + span.checkbox::after{color:var(--tch-brand);}
.CartRight .BonusPoint input[type="checkbox"]:checked + span.checkbox::before{border-color:var(--tch-brand);}

.CartRight .OrderTotal{text-align:center; padding:10px 0 0 0;}
.CartRight .OrderTotal p{font-size:20px; text-transform:uppercase; line-height:34px; color:var(--tch-ink-2);}
.CartRight .OrderTotal b{font-size:24px; color:var(--tch-brand-dark);}
.CartRight .ApplyCoupn{text-align:center; font-style:italic; font-size:15px;}
.CartRight .ApplyCoupn a{text-decoration:underline; color:var(--tch-ink-2);}
.CartRight .ApplyCoupn a:hover{text-decoration:none; color:var(--tch-brand-dark);}
.CartRight .ApplyCoupn .EnterCoupn input{background:var(--tch-surface); height:26px; font-style:italic; border:0; border-bottom:1px solid var(--tch-line); padding:0; max-width:100px; text-align:center; color:var(--tch-brand-dark);}
.CartRight .ApplyCoupn .EnterCoupn button{background:none; font-size:12px; padding:0; color:var(--tch-brand-dark); height:24px; text-decoration:underline;}
.CartRight .AdminInfo{background:var(--tch-surface-sand); border-radius:var(--tch-radius); padding:12px;}

/* ---------- Cart-left legacy table (kept for admin/edge paths) ---------- */
.ShoppingCart .CartLeft{width:76%; float:left;}
.ShoppingCart .CartLeft .CartTableMain{border-bottom:1px solid var(--tch-line);}
.ShoppingCart .CartLeft .CartTableMain th{border-top:1px solid var(--tch-line); padding:10px; text-transform:uppercase; color:var(--tch-muted); font-size:12px;}
.ShoppingCart .CartLeft .CartTableMain td{border-top:1px solid var(--tch-line); padding:10px;}
.ShoppingCart .CartLeft .CartTableMain .CartProduct h4{margin:0 0 10px 0; padding:0; font-family:var(--tch-font-display); font-weight:600;}
.ShoppingCart .CartLeft .CartTableMain .CartProduct h4 a{color:var(--tch-ink);}
.ShoppingCart .CartLeft .CartTableMain .CartProduct h4 a:hover{color:var(--tch-brand-dark);}
.ShoppingCart .CartLeft .CartTableMain .CartProduct a.WRBTN{margin:15px 5px 0 0;}
.ShoppingCart .CartLeft .CartTableMain .CartProduct td{border:0; padding:0;}
.ShoppingCart .CartLeft .CartTableMain .CartProduct td.CartProductThumb{border:1px solid var(--tch-line); width:125px; text-align:center; border-radius:var(--tch-radius-sm);}
.ShoppingCart .CartLeft .CartTableMain .CartProduct td.CartProductThumb img{max-height:125px; max-width:125px;}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct{background:var(--tch-surface-warm);}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct td{border-top:1px solid var(--tch-line); border-bottom:10px solid var(--tch-surface);}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct .CartProduct td{border:0; padding:0;}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct h5{margin:0 0 10px 0; font-size:13px; font-weight:normal;}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct h5 a{color:var(--tch-ink);}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct h5 a:hover{color:var(--tch-brand-dark);}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct .GroupProductThumb{border:1px solid var(--tch-line); width:86px;}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct .CartProduct table td{padding:10px;}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct .CartProduct .GroupProductThumb{text-align:center;}
.ShoppingCart .CartLeft .CartTableMain .CartGroupProduct .CartProduct .GroupProductThumb img{max-height:80px;}
.options-image:hover{transform:scale(2);}

.cartQuantity input{text-align:center; max-width:40px;}

.GroupQtyRemove{padding-top:5px;}
.GroupQtyRemove input{text-align:center; max-width:36px; height:30px; float:left;}
.ShoppingCart .CartLeft .CartTableMain .CartProduct .GroupQtyRemove a.WRBTN{font-size:11px; margin:4px 0 0 5px; padding:5px;}

.ShoppingCart .CartLeft .MFS{padding:10px; vertical-align:middle; background:var(--tch-surface);}
.ShoppingCart .CartLeft .MFS img{vertical-align:middle;}
.ShoppingCart .CartLeft .MFS span{text-decoration:line-through;}
.ShoppingCart .CartLeft .MFS b{margin-left:30px;}

.ShoppingCart .CartLeft .GetBonusPoints{border-top:1px solid var(--tch-line); padding:20px 0; color:var(--tch-muted);}
.ShoppingCart .CartLeft .GetBonusPoints b{color:var(--tch-ink); margin:0 4px;}
.ShoppingCart .CartLeft .GetBonusPoints a{margin:0 4px;}

/* ---------- Trust badges / gift-paypal-review row ---------- */
.ShoppingCart .CartLeft .GiftPaypalReview .GiftCard{border:1px solid var(--tch-line); float:left; max-width:316px; width:32%;}
.ShoppingCart .CartLeft .GiftPaypalReview .PaypalCredit{border:1px solid var(--tch-line); float:left; margin:0 15px; max-width:316px; width:32%; background:#019cde; text-align:center; padding:1.7% 0.1%; border-radius:var(--tch-radius);}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews{border:1px solid var(--tch-line); border-radius:var(--tch-radius-lg); padding:10px; float:left; max-width:316px; width:31%; background:var(--tch-surface);}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews .ReviewRow{padding-bottom:10px;}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews .Review{background:var(--tch-surface); border:0; height:210px; overflow:hidden;}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews .ReviewText{text-align:center;}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews .ReviewText .ReviewFrom{font-style:normal;}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews .ReviewText .ReviewFrom b{font-size:16px; margin-right:4px; color:var(--tch-ink);}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews .ReviewText .ReviewFrom i{color:var(--tch-muted);}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews .ReviewText .ReviewStar{padding-top:5px;}
.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews a.WRBTN{margin:0 auto; display:block; max-width:60px; text-align:center;}

.ShoppingCart .CartLeft .GiftPaypalReview .adminQuote{border:1px solid #019cde; padding:1.7% 1.5%; float:left; max-width:316px; width:27%; background:#019cde; margin:0 0 0 15px; color:#fff; box-shadow:2px 3px 6px rgba(3,43,60,.4); border-radius:var(--tch-radius);}
.ShoppingCart .CartLeft .GiftPaypalReview .adminQuote label{line-height:34px;}
.ShoppingCart .CartLeft .GiftPaypalReview .adminQuote button{margin:10px 0 0 0;}

p.warning-tbl{margin:0; text-decoration:underline; cursor:pointer; text-align:right; color:var(--tch-brand-dark);}
.CartWarning{background:#fdf3e0; border:1px solid #f2ddb0; border-radius:var(--tch-radius); padding:12px 12px 12px 40px; margin-bottom:15px; position:relative;}
.CartWarning p{line-height:16px; font-size:12px; margin:0; color:#8a5a00;}
.CartWarning i{font-size:22px; position:absolute; left:12px; top:12px; color:#c9982f;}

.ShoppingCart .CartLeft .CartTableMain .warning-tbl td{border:none; padding:10px 0 0 0; cursor:pointer; color:var(--tch-brand-dark);}

.ShoppingCart .CartLeft .CartTableMain .SpecialOrderMsg{color:#8a5a00; padding:3px 5px; font-size:12px; font-weight:normal; font-style:italic; margin-left:10px;}
.ShoppingCart .CartLeft .CartTableMain .specialMsg{width:100%; height:auto; background-color:#fdf3e0; padding:2px 2px;}
.ShoppingCart .CartLeft .CartTableMain .strikePrice{font-size:13px; text-decoration:line-through; font-weight:normal; color:var(--tch-muted);}
.ShoppingCart .CartLeft .CartTableMain .disTextSave{color:#1e6b2d; line-height:20px; font-size:13px;}
.ShoppingCart .CartLeft .CartTableMain .disText{color:var(--tch-muted); font-weight:normal; font-size:13px;}
.ShoppingCart .CartLeft .cartLogo img{vertical-align:middle;}

.YouMayAlso{margin-bottom:20px;}
.YouMayAlso .ProductRow{border-bottom:1px solid var(--tch-line);}
.Popup.PopupSchedule.small{z-index:99999999;}

/* ---------- Mattress finder ---------- */
.MattressesFinder h2{margin:0; font-size:22px; font-family:var(--tch-font-display); font-weight:600; color:var(--tch-ink);}
.MattressesFinder > p{font-size:15px; font-weight:500; margin-top:5px; color:var(--tch-ink-2);}

.MattressesTopFilter{text-align:center; margin-bottom:10px;}
.MattressesTopFilter h3{margin:0 0 10px 0; font-size:18px; font-family:var(--tch-font-display); color:var(--tch-ink);}
.MattressesTopFilter ul{margin:0; padding:0;}
.MattressesTopFilter ul li{list-style:none; display:inline-block; background:var(--tch-surface); border-radius:var(--tch-radius); margin:5px; padding:10px; font-size:15px; font-weight:500; border:1px solid var(--tch-line); position:relative; max-width:100px; width:100%;}
.MattressesTopFilter ul li:hover{border-color:var(--tch-brand);}
.MattressesTopFilter ul li.active{border-color:var(--tch-brand); box-shadow:0 0 0 3px color-mix(in srgb, var(--tch-brand) 18%, transparent);}

.MattressesTopFilter .custRadio{
	display:block; margin:0; cursor:pointer; font-size:13px; padding-top:10px; text-align:center;
	-webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none;
}
#MattressFinderPopup{min-height:260px !important;}
#showMattressesBtnDiv{background:var(--tch-surface-sand); float:right; margin-top:35px; padding:5px 5px 15px 5px; text-align:center; max-width:100px; border-radius:var(--tch-radius); font-weight:500; box-shadow:var(--tch-shadow);}
.Popup.MattressFinder{border-radius:var(--tch-radius-lg); max-width:500px; margin-left:-250px;}
.Popup.MattressFinder h2{font-size:16px; font-family:var(--tch-font-display);}
.Popup.MattressFinder .PriceMatchHeader{text-align:center;}
.Popup.MattressFinder .PriceMatchHeader p{font-size:18px;}
.Popup.MattressFinder .MattressesTopFilter h3{font-size:16px;}
.Popup.MattressFinder .MattressesTopFilter ul li{max-width:70px; padding:5px; vertical-align:top;}
.Popup.MattressFinder .MattressesTopFilter .checkmark{height:10px; width:10px;}
.Popup.MattressFinder .MattressesTopFilter .checkmark:after{height:6px; width:6px; top:2px; left:2px;}
.Popup.MattressFinder .vertical-align{padding-top:10px;}
.Popup.MattressFinder .ProList{max-width:200px; display:inline-block; vertical-align:top; margin:5px; border:1px solid var(--tch-line); border-radius:var(--tch-radius);}
.Popup.MattressFinder .ProItemInfo h4{font-size:12px; margin:0 0 5px 0;}
.Popup.MattressFinder .ProItemInfo h4 a{color:var(--tch-ink);}

.MattressesTopFilter .custRadio input{position:absolute; opacity:0; cursor:pointer; display:block; width:100%; height:100%; top:0; margin:0; margin-left:-10px;}
.MattressesTopFilter .checkmark{position:absolute; top:5px; right:5px; height:20px; width:20px; background-color:var(--tch-hover-bg); border-radius:50%;}
.MattressesTopFilter .custRadio:hover input ~ .checkmark{background-color:var(--tch-line);}
.MattressesTopFilter .custRadio input:checked ~ .checkmark{background-color:var(--tch-brand);}
.MattressesTopFilter .checkmark:after{content:""; position:absolute; display:none;}
.MattressesTopFilter .custRadio input:checked ~ .checkmark:after{display:block;}
.MattressesTopFilter .custRadio .checkmark:after{top:6px; left:6px; width:8px; height:8px; border-radius:50%; background:#fff;}
.ChooseMattress{padding:10px; display:inline-block; float:left; vertical-align:middle; font-weight:600; color:var(--tch-ink); background:var(--tch-surface-sand); border-radius:var(--tch-radius);}
.ChooseMattress img{vertical-align:middle; margin-right:2px; line-height:20px;}

.animate-charcter{
	text-transform:lowercase;
	background-image:linear-gradient(-225deg, #231557 0%, #44107a 29%, #ff1361 67%, #fff800 100%);
	background-size:200% auto; background-clip:text; -webkit-background-clip:text;
	color:#fff; -webkit-text-fill-color:transparent;
	animation:textclip 5s linear infinite; display:inline-block; font-size:16px; font-weight:800; margin-bottom:5px;
}
@keyframes textclip{
	from{background-position:200% center;}
	to{background-position:0% center;}
}

/* ---------- Frequently bought together / combo products ---------- */
.mainBatteryPrdDiv{margin-bottom:30px; float:left; width:100%;}
.mainBatteryPrdDiv h3{font-family:var(--tch-font-display); font-weight:600; color:var(--tch-ink); font-size:18px;}
.ComboProduct{width:50%; float:left;}
.ComboProduct.ComboProduct-desktop{width:30%;}
.ComboProduct .ComboProductThumb{border:1px solid var(--tch-line); border-radius:var(--tch-radius-sm); width:100px; height:143px; line-height:100px; float:left; display:table-cell; text-align:center; background:var(--tch-surface);}
.ComboProduct .ComboProductThumb .helper{display:inline-block; height:100%; vertical-align:middle;}
.ComboProduct .ComboProductThumb img{display:inline-block; line-height:100px; transform-style:unset; vertical-align:middle; max-height:100%; max-width:100%; width:auto; height:auto;}
.ComboProduct .ComboProductText{margin-left:110px;}
.ComboProduct .ComboProductText h3{font-weight:normal; margin:0 0 5px 0;}
.ComboProduct .ComboProductText h3 a{color:var(--tch-ink);}
.ComboProduct .ComboProductText h3 a:hover{color:var(--tch-brand-dark);}
.ViewCollection{display:inline-block;}
/* .PcsImg is the mobile-branch counterpart of .ComboProductThumb in
   getBatteryPrdHTML() (non-"desktop" $device) -- previously unstyled
   (pre-existing gap, not introduced here); mirror ComboProductThumb. */
.PcsImg{border:1px solid var(--tch-line); border-radius:var(--tch-radius-sm); width:100px; height:143px; line-height:100px; float:left; display:table-cell; text-align:center; background:var(--tch-surface);}
.PcsImg img{display:inline-block; vertical-align:middle; max-height:100%; max-width:100%; width:auto; height:auto;}

@media only screen and (min-width:1100px) and (max-width:1290px){
	.ShoppingCart .CartRight{width:28%; max-width:inherit;}
	.ShoppingCart .CartLeft{width:70%;}
	.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews,
	.ShoppingCart .CartLeft .GiftPaypalReview .PaypalCredit,
	.ShoppingCart .CartLeft .GiftPaypalReview .GiftCard{width:31%;}
}

@media only screen and (min-width:1000px) and (max-width:1099px){
	.ShoppingCart .CartRight{width:28%; max-width:inherit;}
	.ShoppingCart .CartLeft{width:70%;}
	.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews,
	.ShoppingCart .CartLeft .GiftPaypalReview .PaypalCredit,
	.ShoppingCart .CartLeft .GiftPaypalReview .GiftCard{width:31%;}
}

/* Mobile reflow (<=767px), carried over from showCart.css's 2026-07-20 fix
   for the /Mobile/ convergence — root's DOM already carries the class hook
   needed, this is a pure CSS rule. */
@media (max-width:999px){
	.ShoppingCart .CartLeft, .ShoppingCart .CartRight{float:none; width:100%; max-width:100%;}
	.ShoppingCart .CartLeft .GiftPaypalReview .GiftCard,
	.ShoppingCart .CartLeft .GiftPaypalReview .PaypalCredit,
	.ShoppingCart .CartLeft .GiftPaypalReview .AllReviews,
	.ShoppingCart .CartLeft .GiftPaypalReview .adminQuote{float:none; width:100%; max-width:100%; margin:0 0 15px 0;}
	.ShoppingCart .CartItems .CartThumb{float:none; width:100%; text-align:center;}
	.ShoppingCart .CartItems .CartDetail{margin-left:0;}
	.ShoppingCart .CartItems .GroupItem{margin-left:0;}
	.ShoppingCart .CartLeft .CartTableMain .ComboProduct-desktop{width:100%;}
}

.selectQuant{height:34px; line-height:normal; width:auto; border-radius:var(--tch-radius);}

/* Migrated from showCart.php's former trailing inline <style> block
   (2026-07-21), carried over verbatim from style/showCart.css. */
.ReviewRow .Review{background:var(--tch-surface); border:1px solid var(--tch-line); border-radius:var(--tch-radius); overflow:hidden; padding:10px;}
.ReviewRow .item{border:1px solid #ffe4e4 !important; border-radius:var(--tch-radius-sm); box-shadow:rgba(255,58,58,0.2) 0px 2px 5px 0px; padding:10px;}
.ReviewRow .Review .ReviewText{height:100px !important; padding:0 !important; overflow:hidden;}
.ReviewRow .Review .ReviewPhoto{height:120px !important; padding:0 !important;}
.ReviewRow .Review .ReviewStar{padding:5px !important;}
.ReviewRow .Review .ReviewText i{text-align:center !important; display:block;}
.ReviewRow .Review .ReviewText p{margin-bottom:5px; -webkit-box-orient:vertical; -webkit-line-clamp:3; display:-webkit-box; overflow:hidden; margin-top:5px !important;}
.textReview{float:none !important; width:100% !important;}
.OurCustomersSay{padding-top:40px;}
.OurCustomersSay a.WRBTN{font-size:16px; font-weight:normal; padding:8px 25px; text-align:center; margin:10px auto 30px auto; width:70px; display:block;}
.OurCustomersSayDetails{padding:0 0 20px 0;}
.ReviewLogo ul{margin:0; padding:0; text-align:center;}
.ReviewLogo ul li{list-style:none; display:inline-block; text-align:center; border:1px solid var(--tch-line); max-width:140px; margin:0 5px;}
/* Owl retired: keep the cart review carousel nav hidden (it autoplays) */
.cart-review .ReviewSlider .swiper-button-prev,
.cart-review .ReviewSlider .swiper-button-next{display:none !important;}

.cartMessage{
	background:linear-gradient(to right, #fff5f5, #fdfdfd);
	border-left:6px solid var(--tch-brand);
	padding:10px; margin:20px 0; border-radius:var(--tch-radius-lg);
	font-family:var(--tch-font-body); box-shadow:var(--tch-shadow-sm);
}
.cartMessage p{font-size:14px; color:var(--tch-ink-2); margin:0; line-height:18px;}

/* ---------- Sticky order-summary panel ---------- */
/* javascript/showCart.js:765 calls $(".CartRight").stick_in_parent() (the
   jquery.sticky-kit plugin) -- it manages position/width/top inline via JS
   and adds its own "is_stuck" class; we only add a resting-state shadow
   bump for polish, no position/layout property is touched here so the
   plugin's runtime math stays intact. */
.ShoppingCart .CartRight.is_stuck .CartTotal{box-shadow:var(--tch-shadow-lg);}


 /* /style/buttonLoader.css */ 

.spinner {
    display: inline-block;
    opacity: 1;
    width: auto;
    -webkit-transition: opacity 0.25s, width 0.25s;
    -moz-transition: opacity 0.25s, width 0.25s;
    -o-transition: opacity 0.25s, width 0.25s;
    transition: opacity 0.25s, width 0.25s;
}

.has-spinner.active {
    cursor:progress;
}

.has-spinner.active .spinner {
    opacity: 1;
    width: auto;
}

.has-spinner.btn.active .spinner {
    min-width: 20px;
}


 /* /style/footer.css */ 

/* ============================================================================
   style/footer.css — loaded on EVERY storefront page as footer-critical.css.
   Part 1: UI v2 "Warm Modern" footer (espresso panel; markup in footer.php).
   Part 2: legacy site-wide rules this monolith also serves (product cards,
   popups, quantity, forms, sticky header media queries, ...) — kept per the
   2026-07-23 usage audit, brand colors migrated to var(--tch-*) tokens.
   Single source: NO style/min/footer.css twin (combiner falls back to source).
   ========================================================================== */
/** Breadcrumbs **/
.Breadcrumbs{padding:15px 0; font-size:13px;}
.Breadcrumbs span{color:#909090; padding:0 8px;}
.Breadcrumbs a{color:#909090;}
.Breadcrumbs a:hover{color:var(--tch-brand);}

.RRBTN{background:var(--tch-brand); border:1px solid var(--tch-brand); color:#FFF; border-radius:5px; display:inline-block; padding:10px 20px; font-weight:500; cursor:pointer; transition:background 0.2s ease, border-color 0.2s ease;}
.RRBTN:hover{background:var(--tch-brand-dark); border-color:var(--tch-brand-dark); color:#FFF;}

.WRBTN{background:#FFF; border:1px solid var(--tch-brand); color:var(--tch-brand); border-radius:5px; display:inline-block; padding:10px 20px; font-weight:500; cursor:pointer; transition:background 0.2s ease, color 0.2s ease;}
.WRBTN:hover{background:var(--tch-brand); color:#FFF;}

button.RRBTN{border:1px solid var(--tch-brand); background:var(--tch-brand); color:#FFF; border-radius:5px; font-weight:600; height:42px; padding:0 20px; cursor:pointer; transition:background 0.2s ease, border-color 0.2s ease;}
button.RRBTN:hover{background:var(--tch-brand-dark); border-color:var(--tch-brand-dark); color:#FFF;}

button.WRBTN{background:#FFF; border:1px solid var(--tch-brand); color:var(--tch-brand); border-radius:5px; font-weight:600; height:42px; padding:0 20px; cursor:pointer; transition:background 0.2s ease, color 0.2s ease;}
button.WRBTN:hover{background:var(--tch-brand); color:#FFF; border-color:var(--tch-brand);}

.RRBTN.medium, .WRBTN.medium{font-size:13px; padding:8px 15px;}
.RRBTN.small, .WRBTN.small{font-size:12px; padding:5px 12px;}

button.RRBTN.medium, button.WRBTN.medium{font-size:13px; padding:8px 15px; height:36px;}
button.RRBTN.small, button.WRBTN.small{font-size:12px; padding:5px 12px; height:30px;}

.BTNnoRadius{border-radius:0 !important;}

.Header.stickyHeader{position:fixed; width:100%; left:0; top:0; z-index:9999;}
/* Collapse the header to just the logo/search/cart row once it pins.
   .TopBeltOffers and .TopLinks are the OLD header's rows — no markup emits them
   any more, so after the header rebuild this rule hid nothing and the full
   three-row header (closed banner + utility bar + search row) stayed pinned,
   eating roughly a third of the viewport on every scroll. The two live row
   classes are listed below; the dead ones are kept in case an unconverted page
   still renders them. */
.Header.stickyHeader .TopBeltOffers,
.Header.stickyHeader .TopLinks,
.Header.stickyHeader .StoreClosedBanner,
.Header.stickyHeader .HedOffer{display:none;}

/* Spacer holds the height the header gave up when it went position:fixed, so the
   page does not lurch upward at the moment it pins. Sized in JS
   (tchInitStickyHeader, global.js) from the header's in-flow height. */
/* 1px, not 0: a zero-area target is unreliable in IntersectionObserver. The
   negative margin cancels it so it costs no layout. */
.tchStickySentinel{height:1px; margin-bottom:-1px; width:100%; pointer-events:none;}
.tchStickySpacer{height:0; width:100%; pointer-events:none;}

/* Pinned bar is compact: smaller logo, shorter search field, tighter padding.
   Full-size values live in style/header.css; these only apply while pinned. */
.Header.stickyHeader .SubHeaderRow,
.Header.stickyHeader .SubHeader .SiteContainer > div{padding:8px 0 !important; gap:18px !important;}
.Header.stickyHeader .SubHeader .Logo img{width:150px !important;}
.Header.stickyHeader .SubHeader .SearchForm input{height:46px;}
.Header.stickyHeader .SubHeader .SearchForm .SearchClearBtn,
.Header.stickyHeader .SubHeader .SearchForm .SearchBtn{height:46px;}
.Header.stickyHeader .SubHeader .SearchForm .SearchBtn{font-size:17px;}

/* Category nav collapses on scroll-down, returns on scroll-up (.navHidden is
   toggled in global.js behind an 8px dead-zone so momentum cannot flap it).

   DESKTOP ONLY — and the media query is load-bearing, not tidiness. Below 768px
   this same <nav> element IS the off-canvas mobile drawer (header.php: position:fixed,
   height:100%, slid in by body.tchMobNavOpen). Unscoped, these rules followed it into
   the drawer: once the header pinned, opening the menu gave you a nav carrying
   max-height:0, opacity:0 and pointer-events:none, so categories were untappable.
   Any future rule targeting `.stickyHeader nav` must stay inside this query. */
@media (min-width:768px){
	.Header.stickyHeader nav{transition:max-height .22s ease, opacity .22s ease; max-height:70vh; opacity:1;}
	/* border:0 matters — max-height:0 collapses the content box but a border would
	   still paint, leaving a 1px sliver of nav pinned under the search row. */
	.Header.stickyHeader.navHidden nav{max-height:0; opacity:0; overflow:hidden; pointer-events:none; border:0;}
}

@media (prefers-reduced-motion:reduce){
	.Header.stickyHeader{animation:none;}
	.Header.stickyHeader nav{transition:none;}
}

/* 0.7s was long enough to still be sliding in as you kept scrolling. */
.Header.stickyHeader {animation:slide-down 0.25s ease-out;}

.CartProductHeader.stickyHeader{position:fixed; width:100%; left:0; top:0; z-index:9999;display:block;}
.CartProductHeader.stickyHeader {animation:slide-down 0.7s;}                  

.HomeContainer{max-width:100%; margin: 0 auto; padding:0 20px; box-sizing:border-box;}
.CustomersSay{background:#f4f8fb; padding:30px 0; margin-top:40px; text-align:center;}
.CustomersSay h2{font-size:30px; color:#212121; line-height:30px;}
.CustomersSay h2 span{font-weight:normal; font-size:16px;}

.CustomersSay .ReviewRow{flex-wrap: wrap; display: flex; justify-content: space-between; text-align:center;}
.CustomersSay .ReviewRow {margin-bottom:30px;}
.CustomersSay .ReviewRow .ReviewItem{background:#FFF; border-radius:10px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; margin:10px auto; max-width:250px; width:100%; padding:10px; height:360px;}
.CustomersSay .ReviewRow .ReviewItem figure{margin:0 0 20px 0; border-radius: 5px;  overflow: hidden;  line-height: 0; min-height:190px;}
.CustomersSay .ReviewRow .ReviewItem figure img{max-height:190px;}
.CustomersSay .ReviewRow .ReviewItem p{color:#212121; font-size:16px; line-height:20px;}
.CustomersSay .ReviewRow .ReviewItem em{color:#808181;}
.CustomersSay .ReviewRow .Video{background:#FFF; border-radius:10px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; margin:10px auto; padding:10px;}
.CustomersSay .ReviewRow .Video figure{margin:0; border-radius: 5px;  overflow: hidden;  line-height: 0;}

.CustomersSay a.ExploreAll{color: var(--tch-brand); font-size:18px; border:1px solid var(--tch-brand); background:#FFF; padding:10px 25px; text-decoration:none; display: inline-block;}
.CustomersSay a.ExploreAll:hover{color:#FFF; background:var(--tch-brand); transition: 0.5s ease;}

@keyframes slide-down {
    0% {transform: translateY(-100%);} 
    100% {transform: translateY(0);} 
}

.SignUpMenu{border:1px solid #cdcdcd; padding-top:5px; border-radius:5px; width:175px; background:#FFF; display:none; position:absolute; left:0px; top:50px; z-index:9;}
.SignUpMenu:after{content:"";
    left: 10px;
    top: -16px;
    position: absolute;
	width: 0;
	height: 0;
	border-width: 0 10px 15px 10px;
	border-color:transparent transparent #cdcdcd transparent;
	border-style: solid;
	
}
.SignUpMenu ul{margin:0 15px 0px 15px; padding:0; font-size:13px;}
.SignUpMenu ul li{list-style:none; border-bottom:1px solid #f4f4f4; padding:10px; line-height:normal;}
.SignUpMenu ul li:last-child{border:0;}
.SignUpMenu ul li a{font-weight:500; color:#444;}
.SignUpMenu ul li a:hover{color:var(--tch-brand);}
.SignUpMenu .LoginRegister{border-top:1px solid #f4f4f4; font-size:12px; color:#909090; padding:15px; text-align:center; line-height:normal;}
.SignUpMenu .LoginRegister a.Register{text-transform:uppercase; font-size:14px; line-height:40px;}
.SignUpMenu .LoginRegister a.Register:hover{color:#444;}
.SignUpMenu .LoginRegister a.Login{text-transform:uppercase; font-size:14px; background:var(--tch-brand); color:#FFF; border-radius:5px; padding:8px; display:block; line-height:normal; font-weight:500; }
.SignUpMenu .LoginRegister a.Login:hover{background:#444;}
.OfferLoginCart span.SignUp:hover .SignUpMenu{display:block;}

.SatisfactionGuaranteeBanner{margin-bottom:10px;}

.CartBTN{background:var(--tch-brand); border-radius:6px; display:block; line-height:50px; text-align:center; max-width:220px; padding:0 15px 0 0; color:#FFF; overflow:hidden; font-size:17px; font-weight:700; text-transform:uppercase; transition:background 0.2s ease;}
.CartBTN span{float:left; background:rgba(0,0,0,0.15); width:50px; height:35px; line-height:35px; margin-right:10px; padding-top:15px; text-align:center; vertical-align:middle;}
.CartBTN:hover{background:var(--tch-brand-dark); color:#FFF;}

.TrendingProducts .ProductRow{border-bottom:1px solid #f4f4f4;}

.DetailsTabbar .tabs.stickyHeader{position:fixed; width:100%; left:0; top:0; z-index:9999;}
.DetailsTabbar .tabs.stickyHeader {animation:slide-down 0.7s;}

.ProductRow{border-top:1px solid #f4f4f4; overflow:hidden; position:relative;}
.ProductRow:after{content:""; height:100%; width:1px; background:#FFF; position:absolute; right:0px; top:0; z-index:1;}
.ProductRow .Product{border-right:1px solid #f4f4f4;}
.ProductRow .Product .Thumb img{display:inline; max-width:98%; width:auto;transform-style: unset;transform-style: unset;}
.ProductRow .Product .CartShareWishlist a.CartBTN img{width:auto; display:inline;}

.ReviewRow{padding-bottom:30px;}
.textReview{float:left; width:50%;}

.ReviewRow .Review {background: #fff;border: 1px solid #e4e4e4;padding: 10px; border-radius: 6px;overflow: hidden;}
.ReviewRow .item {border: 1px solid #ffe4e4 !important;border-radius: 5px;box-shadow: rgba(255, 58, 58, 0.2) 0px 2px 5px 0px;padding: 10px;}
.ReviewRow .Review .ReviewText{height:100px !important; padding:0 !important; overflow: hidden;}
.ReviewRow .Review .ReviewPhoto{height: 120px !important; padding: 0 !important;}
.ReviewRow .Review .ReviewStar{padding:5px !important;}
.ReviewRow .Review .ReviewText i{text-align:center !important; display:block;}
.ReviewRow .Review .ReviewText p{margin-bottom:5px; -webkit-box-orient: vertical; -webkit-line-clamp: 3; display: -webkit-box; overflow: hidden;margin-top: 5px !important;}
.ReviewLogo ul{margin:0; padding:0; text-align:center;}
.ReviewLogo ul li{list-style:none; display:inline-block; text-align:center; border:1px solid #f4f4f4; max-width:140px; margin:0 5px;}

/* Owl → Swiper (Owl retired site-wide): adapted carousels (tchOwlSwiper, global.js)
   get the .tch-home-swiper look everywhere — terracotta pill nav arrows, auto-hidden
   via watchOverflow when everything fits. Mirrors listitem-v2.css / indexInline.css. */
.tch-home-swiper{--swiper-theme-color:var(--tch-brand,#c55b39); --swiper-navigation-size:15px;}
.tch-home-swiper .swiper-button-prev,
.tch-home-swiper .swiper-button-next{width:40px; height:40px; border-radius:50%; background:#fff; border:1px solid var(--tch-line,#e5ded6); box-shadow:0 1px 3px rgba(0,0,0,.08); color:var(--tch-brand,#c55b39); transition:background .2s ease,border-color .2s ease;}
.tch-home-swiper .swiper-button-prev:hover,
.tch-home-swiper .swiper-button-next:hover{background:var(--tch-hover-bg,#faf5ef); border-color:var(--tch-brand,#c55b39);}
.tch-home-swiper .swiper-button-prev:after,
.tch-home-swiper .swiper-button-next:after{font-weight:700;}
.tch-home-swiper .swiper-button-disabled{opacity:0; pointer-events:none;}
.tch-home-swiper .swiper-slide{box-sizing:border-box; height:auto;}
.tch-home-swiper .swiper-slide .item{width:100%; min-width:0;}

.ReviewRow .Review .ReviewPhoto{background:#FFF; text-align:center; vertical-align:middle;}
.ReviewRow .Review .ReviewPhoto img{max-width:98%; max-height:100%; display:inline; vertical-align:middle; width:auto;}
.ReviewRow .Review .ReviewPhoto .helper{display:inline-block; height:100%; vertical-align:middle;}
.ReviewRow .Review .ReviewStar{text-align:center; font-size:16px;}
.ReviewRow .Review .ReviewStar i{color:var(--tch-brand); margin:0 2px;}
.ReviewRow .Review .ReviewText{text-align:right; font-style:italic; font-size:13px; line-height:20px;}
.ReviewRow .Review .ReviewText p{text-align:center;font-weight:500;}
.ReviewRow .Review .ReviewText i{color:var(--tch-brand);}
/* (.ReviewSlider .owl-nav rules removed — Owl retired; Swiper nav is styled via
   .tch-home-swiper above.) */

.GroupProduct .VariOption {padding:5px 0; text-align:center; width:100%;}
.GroupProduct .VariOption p{text-transform:uppercase; font-weight:500; line-height:24px; margin:0;}
.GroupProduct .VariOption p span{font-weight:normal;}
.GroupProduct .VariOption a.next-prev{display:inline-block;}
.GroupProduct .VariOption a.next-prev i{color:#fff;}
.GroupProduct .VariOption ul {display:inline-block; height:32px; margin:0; overflow:hidden; padding:0; vertical-align:middle; width:80%;}
.GroupProduct .VariOption ul li{list-style:none; display:none; vertical-align:middle; line-height:normal; text-transform:uppercase; margin-bottom:5px;padding:0px 2px;}
.GroupProduct .VariOption ul li a{color:#444; border:1px solid #444; border-radius:25px; display:block; padding:5px 10px;font-weight:500;}
.GroupProduct .VariOption ul li.active a{background:#444; color:#fff;}

.GroupProduct .VariOption.Colors ul{height:50px;}
.GroupProduct .VariOption.Colors li{list-style:none; display:none; line-height:normal; max-width:28%; width:50px; height:50px;}
.GroupProduct .VariOption.Colors li a{padding:2px; border-radius:0; border-color:#ebebeb;}
.GroupProduct .VariOption.Colors ul li.activeItem, .GroupProduct .VariOption ul li.activeItem{display:inline-block; vertical-align:top;}
.GroupProduct .VariOption.Colors ul li img{height:auto;}

.Product .ProductShadow .BadgeLeft{color:#FFF; font-weight:600; padding:3px 10px; display:inline-block; text-transform:uppercase; font-size:11px; position:absolute; left:10px; top:10px; z-index:1; border-radius:20px; letter-spacing:0.3px;}
.Product .ProductShadow .BadgeRight{color:#FFF; font-weight:600; padding:3px 10px; display:inline-block; text-transform:uppercase; font-size:11px; position:absolute; right:10px; top:10px; z-index:1; border-radius:20px; letter-spacing:0.3px;}
.Product .ProductShadow .HotBuy{background:#a652e7;}
.Product .ProductShadow .HotDeal{background:#dd9b0c;}
.Product .ProductShadow .DailyDeal{background:#d76610;}
.Product .ProductShadow .Exclusive{background:#0baf2a;}
.Product .ProductShadow .FreeShipping{background:var(--tch-brand);top: 34px;}
.Product .ProductShadow .suppDiscProd{background:#38a6ec;}
.Product .ProductShadow .Off{background:#3b5998;}
.Product .ProductShadow .New{background:#9bb010;}

/* more option Variation */
.Product .SortDesc{text-align:center;}
.Product .SortDesc h4{font-weight:500; font-size:14px; margin:10px 0 4px; padding:0 12px; height:38px; overflow:hidden; background:#FFF; margin-bottom:0;}
.Product .SortDesc h4 a{color:#1a1a1a;}
.Product .SortDesc h4 a:hover{color:var(--tch-brand);}
.Product .SortDesc .PricingOption{min-height:60px; height:auto; font-weight:400; padding-bottom:4px;}
.Product .SortDesc .PricingOption .Price{color:#aaa; text-decoration:line-through; background:#FFF; font-size:13px; font-weight:normal;}
.Product .SortDesc .PricingOption .Save{color:var(--tch-brand); font-size:11px; display:inline-block; padding:2px 7px; line-height:18px; background:#fff3f3; border-radius:10px; font-weight:600;}
.Product .SortDesc .PricingOption b{line-height:34px; font-size:18px; font-weight:700; background:#FFF; color:var(--tch-brand);}
.Product .SortDesc .PricingOption a.more-option{text-decoration:underline; font-weight:400; background:#FFF; display:inline;}
.Product .SortDesc .PricingOption a.more-option:hover{color:#444; text-decoration:none;}
.Product .CartShareWishlist{padding:10px;}
.Product .CartShareWishlist .Share,
.Product .CartShareWishlist .Wishlist{font-size:20px; color:#c8c8c8; display:inline-block; margin-top:10px; cursor:pointer; position:relative; transition:color 0.2s ease;}
.Product .CartShareWishlist .Share:hover,
.Product .CartShareWishlist .Wishlist:hover{color:var(--tch-brand);}

.Product .CartShareWishlist .Share .ShareList{display:none; position:absolute; left:0; bottom:22px;}
.Product .CartShareWishlist .Share:hover .ShareList{display:block;}
.Product .CartShareWishlist .Share .ShareList a{color:#e4e4e4; border:1px solid #e4e4e4; margin-bottom:3px; border-radius:50%; width:20px; height:20px; line-height:19px; text-align:center; display:block;}
.Product .CartShareWishlist .Share .ShareList a i{line-height:20px; font-size:15px;}

.ShareList .fa.fa-facebook{color:#4e71a8;}
.ShareList .fa.fa-twitter{color:#1cb7eb;}
.ShareList .fa.fa-google-plus{color:#e3411f;}
.ShareList .fa.fa-pinterest{color:#cb2027;}

.fb{color:#4e71a8;}
.tw{color:#1cb7eb;}
.gp{color:#e3411f;}
.pr{color:#cb2027;}

.Product .CartShareWishlist a.CartBTN,
.Product .CartShareWishlist span.CartBTN{max-width:174px; width:100%; margin:0 auto;cursor: pointer; font-size: 14px; line-height: 37px;}
.Product .CartShareWishlist span.CartBTN span{height: 28px; line-height: 39px; margin-right: 10px; padding-top: 9px;}
.Product .CartShareWishlist a.CartBTN.ViewItemBTN{padding:0;}

.Product .CartShareWishlist a.CartBTN {font-size:16px; line-height:40px;}
.Product .CartShareWishlist a.CartBTN span{height:30px; width:40px;  padding-top:10px;}

.Product .LookLoveStar{text-align:center;overflow:hidden; min-height:18px;}
.Product .LookLoveStar span{font-size:16px; color:var(--tch-brand); text-align:center; display:inline-block;}
.Product .LookLoveStar span i{margin:0 2px;}
.Product .LookLoveStar a.small{font-size:12px; font-weight:normal; color:#444; border:1px solid #FFF; background:#FFF;}
.Product .LookLoveStar a.small i{font-size:12px;}
.Product .LookLoveStar a.small:hover{border:1px solid var(--tch-brand); color:var(--tch-brand); background:#FFF;}

.Product{max-width:330px; position:relative; background:#fff; border-radius:10px; overflow:hidden; transition:transform 0.25s ease, box-shadow 0.25s ease; box-shadow:0 2px 8px rgba(0,0,0,0.07);}
.Product .ProductShadow{padding:10px 10px 0 10px; position:relative;}

.Product:hover{transform:translateY(-5px); box-shadow:0 14px 30px rgba(0,0,0,0.13);}
.Product:hover .ProductShadow{padding:10px 10px 0 10px;}

.Product .Thumb{height:280px; width:100%; text-align:center; overflow:hidden;}
.Product .Thumb .helper{display:inline-block; height:100%; vertical-align:middle;}
.Product .Thumb img{transition:transform 0.4s ease;}
.Product:hover .Thumb img{transform:scale(1.06);}

.Product .more-option{position:relative; display:block;}
.Product .more-option a{text-decoration:underline; position:relative;}
.Product .more-option:hover .VariationMain{display:block;}
.Product .VariationMain{background:color-mix(in srgb, var(--tch-brand) 90%, transparent); display:none; text-align:center; position:absolute; bottom:18px; width:100%;}
.Product .VariationMain a{text-decoration:none;}
.Product .Variation {padding:10px 0; text-align:center;}
.Product .Variation p{color:#fff; text-transform:uppercase; font-weight:500; line-height:24px; margin:0;}
.Product .Variation a.next-prev{display:inline-block;}
.Product .Variation a.next-prev i{color:#fff;}
.Product .Variation ul {display:inline-block; height:32px; margin:0; overflow:hidden; padding:0; vertical-align:middle; width:70%;}
.Product .Variation ul li{list-style:none; display:none; vertical-align:middle; line-height:normal; text-transform:uppercase; margin-bottom:5px;}
.Product .Variation ul li a{color:#FFF; border:1px solid #FFF; border-radius:25px; display:block; padding:5px 10px;}
.Product .Variation ul li.active a{background:#FFF; color:var(--tch-brand);}
.Product .Variation.Colors ul{height:50px;}
.Product .Variation.Colors li{background:#fff; border:1px solid #fff; display:none; height:48px; line-height:normal; list-style:none; margin:1%; max-width:50px; padding:0; width:100%;}
.Product .Variation.Colors li img{max-height:48px;}
.Product .Variation.Colors li a{padding:0; border-radius:0; border:0;}
.Product .Variation.Colors ul li.activeItem, .Product .Variation ul li.activeItem{display:inline-block; vertical-align:top;}
.SeeMore .more-option {font-size: 13px;}
.SeeMore .more-option a {font-weight: 500;text-decoration: none;}

/** FOOTER START — UI v2 "Warm Modern" (2026-07-23)
    Espresso panel on --tch-ink with cream/on-dark text and clay/honey accents.
    Structure: trust belt (cream band) → brand row → 4-col link grid
    (→2 ≤900px →1 ≤560px) → SEO link grid → info row → search pills → copyright. **/

.Footer{
	background:var(--tch-ink);
	color:var(--tch-on-dark);
	margin-top:var(--tch-space-7);
	font-family:var(--tch-font-body);
	font-size:var(--tch-text-sm);
	display:block;
	/* footer-local shades derived from --tch-on-dark (#f6e9dc) */
	--f-line:rgba(246,233,220,.14);
	--f-muted:rgba(246,233,220,.62);
	--f-soft:rgba(246,233,220,.08);
}
.Footer .SiteContainer{max-width:var(--tch-container); width:auto; margin:0 auto; padding:0 var(--tch-space-5); box-sizing:border-box; position:relative;}

/* ── Trust belt: cream band bridging the light page and the dark panel ── */
.ClassySecureBelt{background:var(--tch-surface-warm); border-top:1px solid var(--tch-line); padding:var(--tch-space-6) 0;}
.Footer .ClassySecureBelt .SiteContainer{display:flex; flex-wrap:wrap; gap:var(--tch-space-4);}
.ClassySecureBelt .SecureBlock{flex:1 1 220px; background:var(--tch-surface); border:1px solid var(--tch-line); border-radius:var(--tch-radius-lg); padding:var(--tch-space-5) var(--tch-space-4); text-align:center; box-shadow:var(--tch-shadow-sm); transition:transform .25s ease, box-shadow .25s ease;}
.ClassySecureBelt .SecureBlock:hover{transform:translateY(-4px); box-shadow:var(--tch-shadow);}
.ClassySecureBelt .Icon{font-size:26px; color:var(--tch-brand); margin-bottom:var(--tch-space-3);}
.ClassySecureBelt .TextContent b{display:block; font-size:var(--tch-text-base); font-weight:600; color:var(--tch-text); margin-bottom:var(--tch-space-2);}
.ClassySecureBelt .TextContent p{margin:0; font-size:var(--tch-text-sm); color:var(--tch-muted); line-height:1.55;}
.ClassySecureBelt .clear{clear:both;}

/* ── Brand row ── */
.Footer .FooterBrand{text-align:center; padding:var(--tch-space-7) 0 var(--tch-space-6);}
.Footer .FooterBrandName{display:block; font-family:var(--tch-font-display); font-size:var(--tch-text-xl); font-weight:600; color:var(--tch-on-dark); letter-spacing:.02em; margin-bottom:var(--tch-space-2);}
.Footer .FooterBrandTagline{display:block; font-size:var(--tch-text-xs); color:var(--f-muted); letter-spacing:.14em; text-transform:uppercase;}
.Footer .FooterBrandYears{display:block; margin-top:var(--tch-space-2); font-size:var(--tch-text-xs); color:var(--tch-star); letter-spacing:.12em; text-transform:uppercase;}

/* ── Link columns (3 LinkBox + Newsletter) ── */
.Footer .LineSection{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--tch-space-6); padding:0 0 var(--tch-space-7); align-items:start; font-size:var(--tch-text-sm);}
.Footer .LineSection .LinkBox, .Footer .LineSection .Newsletter{float:none; width:auto; max-width:none; padding:0;}
.Footer .LinkBox b, .Footer .Newsletter b{display:block; font-family:var(--tch-font-body); font-size:var(--tch-text-xs); font-weight:600; text-transform:uppercase; letter-spacing:.14em; color:var(--tch-on-dark); padding-bottom:var(--tch-space-3); margin-bottom:var(--tch-space-4); border-bottom:1px solid var(--f-line);}
.Footer .LinkBox ul{list-style:none; margin:0; padding:0; display:grid; gap:var(--tch-space-2);}
.Footer .LinkBox ul li{list-style:none; margin:0; padding:0; font-weight:400;}
.Footer .LinkBox a{color:var(--f-muted); text-decoration:none; transition:color .15s ease;}
.Footer .LinkBox a:hover{color:color-mix(in srgb, var(--tch-brand) 55%, var(--tch-on-dark));}
/* "Information On": compact 2-column list */
.Footer .LineSection .LinkBox:nth-child(3) ul{grid-template-columns:1fr 1fr; gap:var(--tch-space-2) var(--tch-space-3);}
.Footer .LineSection .LinkBox:nth-child(3) ul li a{font-size:var(--tch-text-xs);}

/* ── Newsletter / payment / apps column ── */
.Footer .Newsletter p{margin:0 0 var(--tch-space-4); color:var(--f-muted); line-height:1.6;}
.Footer .Newsletter .klaviyo-form-W4jxb9{margin-bottom:var(--tch-space-4);}
.Footer .NewsletterSection{border-top:1px solid var(--f-line); padding-top:var(--tch-space-4); margin-top:var(--tch-space-4);}
.Footer .PaymentOptionsImage{display:block; max-width:100%; height:auto; background:var(--tch-surface); border-radius:var(--tch-radius);} /* no padding: usemap hotspot coords must stay aligned to the image box */
.Footer .AppStoreButtons{display:flex; flex-wrap:wrap; gap:var(--tch-space-3);}
.Footer .AppStoreButtons a{display:block; line-height:0;}
.Footer .AppStoreBadge{display:block; width:155px; max-width:100%; height:auto; border-radius:var(--tch-radius-sm);}

/* ── SEO link grid (Top Categories / Brands / Collections) ── */
.Footer .FooterSeoLinks{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--tch-space-6); padding:0 0 var(--tch-space-7); max-width:none;}
.Footer .FooterSeoLinks .LinkBox{float:none; width:auto;}
.Footer .FooterSeoLinks .LinkBox ul{grid-template-columns:1fr 1fr; gap:var(--tch-space-2) var(--tch-space-3);}

/* ── Info row: secure-shopping badges + social ── */
.Footer .InfoSection{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--tch-space-4) var(--tch-space-6); padding:var(--tch-space-5) 0; border-top:1px solid var(--f-line); border-bottom:1px solid var(--f-line);}
.Footer .ShoppingSecureLogo{display:flex; flex-wrap:wrap; align-items:center; gap:var(--tch-space-4);}
.Footer .ShoppingSecureLogo > img, .Footer .BBBSeal img{background:var(--tch-surface); border-radius:var(--tch-radius); box-shadow:var(--tch-shadow-sm);} /* no padding: the secure logo uses an image map */
.Footer .BBBSeal{display:inline-block; vertical-align:middle;}
.Footer .Social{display:flex; flex-wrap:wrap; align-items:center; gap:var(--tch-space-2);}
.Footer .Social a{width:42px; height:42px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background:var(--f-soft); border:1px solid var(--f-line); color:var(--tch-on-dark); font-size:17px; transition:transform .18s ease, background .18s ease;}
.Footer .Social a i{line-height:1; color:inherit; font-size:inherit;}
.Footer .Social a:hover{transform:translateY(-2px); background:var(--tch-brand); border-color:var(--tch-brand); color:#fff;}

/* ── Top searches: pill links ── */
.Footer .TopSearches{padding:var(--tch-space-5) 0; line-height:2.1; color:var(--f-muted); font-size:var(--tch-text-sm);}
.Footer .TopSearches > span{display:block; margin-bottom:var(--tch-space-3); color:var(--tch-on-dark); letter-spacing:.14em;}
.Footer .TopSearches a{display:inline-block; margin:2px 3px 2px 0; padding:3px 14px; color:var(--f-muted); border:1px solid var(--f-line); border-radius:var(--tch-radius-pill); text-decoration:none; transition:color .15s ease, border-color .15s ease;}
.Footer .TopSearches a:hover{color:var(--tch-on-dark); border-color:var(--tch-brand); background:var(--f-soft);}

/* ── Copyright ── */
.Footer .Copyright{padding:var(--tch-space-4) 0 var(--tch-space-6); font-size:var(--tch-text-xs); color:var(--f-muted); text-align:center;}

/* ── Footer responsive: 4 → 2 (≤900px) → 1 (≤560px), simple stacking ── */
@media only screen and (max-width:900px){
	.Footer .LineSection{grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--tch-space-5);}
	.Footer .FooterSeoLinks{grid-template-columns:repeat(2,minmax(0,1fr));}
	.Footer .InfoSection{justify-content:center; text-align:center;}
}
@media only screen and (max-width:560px){
	.Footer .SiteContainer{padding:0 var(--tch-space-4);}
	.Footer .FooterBrand{padding-top:var(--tch-space-6);}
	.Footer .LineSection, .Footer .FooterSeoLinks{grid-template-columns:1fr; gap:var(--tch-space-5); padding-bottom:var(--tch-space-6);}
	.Footer .AppStoreButtons{justify-content:flex-start;}
}

/* ── Weekend-schedule + generic footer popups (bound by javascript/global.js) ── */
.Popup.PopupSchedule{width:44%; margin-left:-22%; min-height:256px; border-radius:var(--tch-radius-lg);}
.PopupSchedule h3{font-size:var(--tch-text-md); text-align:center; text-transform:uppercase; letter-spacing:0.03em; border-bottom:1px solid var(--tch-line); padding-bottom:15px;}
.PopupSchedule .h3{font-size:var(--tch-text-md); text-align:center; text-transform:uppercase; letter-spacing:0.03em; border-bottom:1px solid var(--tch-line); padding-bottom:15px;}
.PopupSchedule p{text-align:center; font-size:var(--tch-text-md); color:var(--tch-brand-dark); font-weight:400;}
.PopupSchedule table{border:1px solid var(--tch-line); border-bottom:0; border-right:0;}
.PopupSchedule table td{padding:10px; border-bottom:1px solid var(--tch-line); border-right:1px solid var(--tch-line);}
.PopupSchedule table tr{background:var(--tch-surface-warm);}
.PopupSchedule table tr:nth-child(even){background:var(--tch-surface);}

/* ── Back-to-top floating widget (shown/hidden by global JS) ── */
.BackToTop{position:fixed; opacity:0; visibility:hidden; text-align:center; z-index:99999999; color:var(--tch-muted); width:24px; height:24px; right:30px; bottom:30px; padding-top:2px;
	-moz-transition:all 0.5s ease-in-out;
	-ms-transition:all 0.5s ease-in-out;
	-o-transition:all 0.5s ease-in-out;
	transition:all 0.5s ease-in-out;
}
.BackToTop:hover{color:var(--tch-brand);}
.BackToTop.show{visibility:visible; cursor:pointer; opacity:1.0;}

/* ── Add-to-cart popup (#addCartPP — markup in footer.php, opened by cart JS) ── */
.addCartPP{max-width:350px; margin-left:-200px !important; border-radius:var(--tch-radius); text-align:center; min-height:200px !important;}
.addCartPP h3{color:#27bf1a; font-size:18px;} /* one-off success green */
.addCartPP h3 i{color:#27bf1a; font-size:20px;}
.addCartPP p{font-size:16px;}
.addCartPP .PopupClose{border:1px solid var(--tch-ink-2); border-radius:50%; height:30px; width:30px; line-height:30px; color:var(--tch-ink-2); top:15px !important; right:15px !important;}
.addCartPP .PopupClose:hover{color:#fff; background:var(--tch-ink-2);}
.PRtoCheckout{color:#fff; background:var(--tch-ink); border-radius:var(--tch-radius-sm); display:block; padding:15px 0; font-size:18px; font-weight:500; margin-top:15px; border:none !important;}
.PRtoCheckout:hover{background:var(--tch-ink-2); color:#fff;}
.addCartPP .PRtoCart{color:var(--tch-brand); background:var(--tch-surface); border:1px solid var(--tch-brand); border-radius:var(--tch-radius-sm); display:block; padding:15px 0; font-size:16px;}
.addCartPP .PRtoCart:hover{background:var(--tch-brand); color:#fff;}

/* ── Trade-program slide-out button + tooltip (#designerButton, footer.php) ── */
.designerTooltip{display:none; background:var(--tch-ink); position:absolute; top:40%; width:114px; padding:5px; font-weight:normal; font-size:12px; line-height:16px; border-radius:8px; left:48px; min-height:auto; color:#fff;}
.designerTooltip::after{content:""; width:0; height:0; border-bottom:8px solid transparent; border-top:8px solid transparent; border-right:8px solid var(--tch-ink); position:absolute; top:5px; left:-7px;}
#designerButton:hover .designerTooltip{display:block;}

/* ── Caller-id tooltips (#contactnumButton markup lives in header.php) ── */
#contactnumButton{position:relative;}
#contactnumButton .contactnumTooltip{display:none; background:var(--tch-ink); position:absolute; top:0px; width:165px; padding:5px; font-weight:normal; font-size:12px; line-height:16px; border-radius:8px; left:171px; min-height:auto; color:#fff;}
#contactnumButton .contactnumTooltip:after{content:""; width:0; height:0; border-bottom:8px solid transparent; border-top:8px solid transparent; border-right:8px solid var(--tch-ink); position:absolute; top:5px; left:-7px;}
#contactnumButton:hover .contactnumTooltip{display:block;}

/* ── Azure bot web chat (conditional markup in footer.php) ── */
.bot-web-chat{position:fixed; left:0; bottom:0; width:100%; max-width:305px; z-index:99999; transition:bottom 0.7s cubic-bezier(.39,.58,.57,1);}
.bot-web-chat-hide{bottom:-450px !important; transition:bottom 0.7s ease-out;}
.hover-bot-chat{background:var(--tch-ink-2); height:44px; width:280px; visibility:hidden; position:fixed; left:0px; bottom:0px; border-top-right-radius:20px; line-height:46px; padding:0px 10px; color:#fff; z-index:99999;}
.hover-bot-chat-show{visibility:visible; transition:visibility 0.5s, opacity 0.5s ease-out;}
.bot-web-close{text-align:right; font-size:22px; margin-right:-11px; margin-bottom:-14px; position:relative; color:var(--tch-ink-2);}

/* ── Third-party widget fixes ── */
#jivo_close_button{right:-20px; position:fixed; top:-22px; z-index:9999; border:4px solid #FF4A4A; border-radius:50%; height:28px !important; width:27px !important;} /* one-off jivo red */
.needsclick.kl-private-reset-css-Xuajs1{min-height:auto !important;} /* klaviyo embed reset */

/** FOOTER END **/


.h3 {
    display: block;
    font-size: 1.17em;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}

/* Generic popup base — Warm Modern (UI v2 2026-07-23): espresso-tint overlay, warm card
   with token radius/shadow, circular close chip. Selectors are JS hooks — never rename. */
.PopUpOverlay {position:fixed; left:0px; top:0px; width:100%; height:100%; z-index:99999; background:var(--tch-ink); opacity:0.5; display:none;}
.Popup{position:fixed; padding:1%; background:var(--tch-surface); width:60%; margin-left:-30%; left:50%; top:20%; min-height:400px; z-index:999999; display:none; border-radius:var(--tch-radius-lg); box-shadow:var(--tch-shadow-lg); color:var(--tch-text);}
.Popup .PopupClose{position:absolute; right:10px; top:10px; display:inline-block; width:32px; height:32px; line-height:32px; text-align:center; border-radius:50%; background:var(--tch-hover-bg); color:var(--tch-ink); z-index:2; transition:background 0.2s ease;}
.Popup .PopupClose:hover{background:var(--tch-line); color:var(--tch-ink);}
.Popup h3{margin:0 0 10px 0; padding:0; font-family:var(--tch-font-display); font-weight:600; color:var(--tch-ink);}
.Popup .h3{margin:0 0 10px 0; padding:0; font-family:var(--tch-font-display); font-weight:600; color:var(--tch-ink);}
.Popup h3 a{color:var(--tch-ink);}
.Popup h3 a:hover{color:var(--tch-brand);}

.Popup.PopupSchedule.small {margin-left: -225px; min-height: 130px; text-align: center; width: 450px;border-radius:var(--tch-radius-lg);}
.Popup.PopupSchedule.small h3{border-bottom: 1px solid var(--tch-line); font-size: 16px; padding-bottom: 5px; text-align: center; text-transform: uppercase;}
.Popup.PopupSchedule.small b{font-size: 16px; padding-bottom: 5px; text-align: center; text-transform: uppercase;}
.Popup.PopupSchedule.small p {font-size:14px; font-weight:normal; color: var(--tch-brand-dark); text-align: center;}

.QuickLookPopup {max-height: 500px; overflow: auto;}
.QuickLookPopup .QuickLookLeft{width:40%; float:left;}
.QuickLookPopup .QuickLookLeft .ImageThumb{text-align:center; max-height:400px;}
.QuickLookPopup .QuickLookLeft .ImageThumb img{max-height:400px;}
.QuickLookPopup .QuickLookLeft .PcsImgBox {display: table-cell;height: 90px;text-align: center;vertical-align: middle;width: 90px;}
.VariOption.img .PcsImgBox {display: table-cell;height: 36px;text-align: center;vertical-align: middle;width: 36px;}
.variationColorImgPopUp.item-img-small {
  height: auto;
  max-height: 34px;
  max-width: 34px;
  width: auto;
}
.QuickLookPopup .QuickLookDetail{margin-left:42%;}
.QuickLookIncludesSlider .PcsImg img {display: table-cell;height: auto;max-height: 100%;max-width: 100%;transform-style: unset;width: auto;}

.QuickLookPopup .CartQty{text-align:center; border-top:1px solid #f4f4f4; padding-top:10px; margin-top:5px;}
.QuickLookPopup .CartQty b{font-size:18px; display:inline-block;}
.QuickLookPopup .CartQty b,
.QuickLookPopup .CartQty label,
.QuickLookPopup .CartQty .SmallQTY,
.QuickLookPopup .CartQty .SmallQTY .Quantity{display:inline-block; vertical-align:middle;}
.QuickLookPopup .CartQty .SmallQTY{margin:0 15px;}
.QuickLookPopup .CartQty .CartBTN{max-width:170px; margin:0 auto; vertical-align: middle; display:inline-block;cursor:pointer;font-size:14px;}

.QuickLookPopup .ProductVariation{border-top:1px solid #f4f4f4; padding:5px 0; overflow:hidden;}
.QuickLookPopup .VariationBlock.img{width:26%; float:left;}
.QuickLookPopup .VariationBlock{width:36.8%; float:left;}
.QuickLookPopup .VariOption{padding:0 10px; position:relative; overflow:hidden;}
.QuickLookPopup .VariOption p{text-transform:uppercase; font-size:13px; margin:0 0 8px 0; padding-left:10%; white-space:nowrap;}
.QuickLookPopup .VariOption p span{color:var(--tch-brand); padding-left:4px;}
.QuickLookPopup .VariOption ul{margin:10px auto 0 auto; width:90%; height:34px; overflow:hidden; padding:0; text-align:center; font-size:13px;}
.QuickLookPopup .VariOption ul li{list-style:none; display:inline-block; margin-bottom:5px; margin-right:2px; padding:4px; min-width:38%; border:2px solid #e6e6e6; border-radius:20px; text-transform:uppercase;display:none;cursor:pointer;}
.QuickLookPopup .VariOption ul li.activeItem{display:inline-block;}
.QuickLookPopup .VariOption ul li a{color:#aaa; display:block;}
.QuickLookPopup .VariOption ul li:hover{border:2px solid var(--tch-brand);}
.QuickLookPopup .VariOption ul li:hover a{color:var(--tch-brand);}
.QuickLookPopup .VariOption ul li.active{border:2px solid var(--tch-brand);}
.QuickLookPopup .VariOption.img ul li.activeItem{display:inline-block;}
.QuickLookPopup .VariOption ul li a {display:block; max-width:130px; overflow:hidden; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap;}
.QuickLookPopup .VariOption ul li.active a{color:var(--tch-brand);}
.QuickLookPopup .VariOption a.VariPrev,
.QuickLookPopup .VariOption a.VariNext{position:absolute; color:#aaa;}
.QuickLookPopup .VariOption a.VariPrev:hover,
.QuickLookPopup .VariOption a.VariNext:hover{color:var(--tch-brand);}
.QuickLookPopup .VariOption a.VariPrev{left:5px; bottom:10px;}
.QuickLookPopup .VariOption a.VariNext{right:5px; bottom:10px;}

.QuickLookPopup .VariOption.img {max-width:170px;}
.QuickLookPopup .VariOption.img ul{height:40px; margin-top:0;}
.QuickLookPopup .VariOption.img ul li{border-radius:0; border:1px solid #e6e6e6; width:36px; min-width:inherit; padding:0; display:none;height: 36px;}
.QuickLookPopup .VariOption.img ul li:hover,
.QuickLookPopup .VariOption.img ul li.active{border:1px solid var(--tch-brand);}
.QuickLookPopup .VariOption.img a.VariPrev{left:15px; bottom:15px;}
.QuickLookPopup .VariOption.img a.VariNext{right:15px; bottom:15px;}

.QuickLookPopup .ItemIncludes h4{font-weight:700; border-left:2px solid var(--tch-brand); padding:3px 4px; margin:12px 0; font-size:16px;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct{border:1px solid #f4f4f4; padding:5px; overflow:hidden;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .PcsImg{border:1px solid #f4f4f4; width:90px; height:90px; text-align:center; float:left;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .AditnlPcsContent{margin-left:100px;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .AditnlPcsContent h3{font-weight:normal; font-size:14px; margin:0;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .AditnlPcsContent h3 a{color:#444;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .AditnlPcsContent h3 a:hover{color:var(--tch-brand);}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .AditnlPcsContent span{font-size:14px; line-height:30px;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .AditnlPcsContent b{font-size:14px; font-weight:700;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .AditnlPcsContent .SmallQTY {padding-top:5px;}
.QuickLookPopup .ItemIncludes .AditnlPcsProduct .AditnlPcsContent .SmallQTY .Quantity{display:inline-block; vertical-align:middle;}
.QuickLookPopup .quntity-input {display: inline-block;height: 30px;text-align: center;width: 22px;}

.QuickLookPopup .ProductDetailsTab{font-size:13px; padding-bottom:0; padding-top:10px;margin-top:0px !important;}
.QuickLookPopup .ProductDetailsTab .TabContent{display:none;}
.QuickLookPopup .ProductDetailsTab .TabContent.current{display:inherit;}
.QuickLookPopup .ProductDetailsTab .DetailsTabbar > ul{border-bottom:2px solid var(--tch-brand); margin:0; padding:0;}
.QuickLookPopup .ProductDetailsTab .DetailsTabbar > ul li{font-size:13px; display:inline-block; font-weight:500; list-style:none;}
.QuickLookPopup .ProductDetailsTab .DetailsTabbar > ul li a{padding:10px; display:block; color:#444;}
.QuickLookPopup .ProductDetailsTab .DetailsTabbar > ul li.current a{background:var(--tch-brand); color:#fff;}

.QuickLookPopup .TabContent .row{padding:5px 0; border-bottom:1px solid #f4f4f4; overflow:hidden;}
.QuickLookPopup .TabContent .row .LeftTitle{font-size:13px; width:22%; float:left; font-weight:500;}
.QuickLookPopup .TabContent .row .Description{font-size:13px; margin-left:24%;}
.QuickLookPopup .TabContent .row .Description ul{margin:0;}
.QuickLookPopup .TabContent .ManufacturerDetail .ManufacturerLogo{float:left; max-width:150px; text-align:center; width:16%;}
.QuickLookPopup .TabContent .ManufacturerDetail .ManufacturerDescription{margin-left:18%;}
.QuickLookPopup .TabContent .ManufacturerDetail .ManufacturerDescription h4{font-size:16px; margin:0;}
.QuickLookPopup .TabContent .ManufacturerDetail .ManufacturerDescription li{border-bottom:1px solid #f4f4f4;}
.QuickLookPopup .TabContent ul li{padding:5px 0 5px 18px; font-size:13px; list-style:none; position:relative;}
.QuickLookPopup .TabContent ul li:before{color:var(--tch-brand); content: "\f00c"; font-family:FontAwesome; left:0px; position:absolute; top:7px; font-size:12px;}
.QuickLookPopup .CustomScroll{height:190px;}
.QuickLookPopup .SeeMoreBtn{text-align:center; padding-top:10px;}

#PopupQuickView {
  max-width: 800px;
  width: 100%;
  margin-left: -400px;
  border-radius: 10px;
}
#PopupQuickView.Popup .PopupClose {
  position: absolute;
  right: 15px;
  top: 15px;
  font-size: 20px;
  color: #444;
}
#PopupQuickView.Popup h3{
	margin: 15px 0;
	font-size: 18px;
	font-weight: 500;
}
#PopupQuickView .QuickLookPopup .CartQty{
	border-top: none;
}
#PopupQuickView .QuickLookPopup .ProductDetailsTab .DetailsTabbar > ul{
	margin-bottom: 10px;
}
#PopupQuickView .QuickLookPopup .ProductDetailsTab .DetailsTabbar > ul li.current a, #PopupQuickView .QuickLookPopup .ProductDetailsTab .DetailsTabbar > ul li a{
	font-size: 16px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
#PopupQuickView .QuickLookPopup .ProductDetailsTab{
	padding-top: 20px;
}
#PopupQuickView .QuickLookPopup .TabContent .row .LeftTitle{
	font-size:14px;
	line-height: 22px;
}
#PopupQuickView .QuickLookPopup .TabContent .row .Description{
	font-size:14px;
}
#PopupQuickView .RRBTN.small, #PopupQuickView .WRBTN.small{
	display: block;
	  padding: 10px;
	  border-radius: 5px;
	  font-size: 16px;
}
#PopupQuickView .QuickLookPopup .SeeMoreBtn{
	padding-top:20px;
}

/* Quantity Plus Minus */
.Quantity {width:120px; height:42px; border:1px solid #d9d9d9 !important;}
.Quantity a{display:block; float:left; width:32%; height:42px; background:#FFF; line-height:40px; text-align:center; font-weight:700; font-size:22px; color:#444;}
.Quantity input{border:0; padding:0; width:32%; height:42px; border-left:1px solid #d9d9d9 !important; border-right:1px solid #d9d9d9 !important; text-align:center; float:left;}

.SmallQTY label{display:inline-block;}
.SmallQTY .Quantity{width:70px; height:36px;}
.SmallQTY .Quantity a{height:36px; line-height:36px; font-size:18px;}
.SmallQTY .Quantity input{height:36px;}
.Quantity.no-border .quntity-input {border: 1px solid #f4f4f4;width: 50px;}
.Quantity.no-border {border: medium none;}

h1.StyleTitle{font-family:var(--tch-font-display,'Playfair Display',Georgia,serif); font-size:30px; text-align:center; font-weight:600; position:relative; margin:0 0 40px 0;}
h1.StyleTitle span{font-size:14px; font-family: 'Inter', sans-serif;}
h1.StyleTitle:after{content:""; height:1px; width:100px; margin-left:-50px; background:var(--tch-brand); position:absolute; left:50%; bottom:-10px;}

h2.StyleTitle{font-family:var(--tch-font-display,'Playfair Display',Georgia,serif); font-size:28px; text-align:center; font-weight:600; position:relative; margin:0 0 40px 0;line-height:34px;}
h2.StyleTitle span{font-size:14px; font-family: 'Inter', sans-serif;}
h2.StyleTitle:after{content:""; height:1px; width:100px; margin-left:-50px; background:var(--tch-brand); position:absolute; left:50%; bottom:-5px;}

#ShoppersApprovedAward{position:absolute; right:15px; top:-3px; z-index:999;}

/* Call-me slide-in (callme.php, slid by global.js) — Warm Modern card (UI v2 2026-07-23) */
.CallMeSlide{position:fixed; right:-230px; top:40%; z-index:999;}
.CallMeSlide i.icon{position:absolute; top:25px; left:-66px; margin-right:-5px;}
.CallMeSlideContent{padding:var(--tch-space-4); text-align:center; border-bottom-left-radius:var(--tch-radius-lg); border-top-left-radius:var(--tch-radius-lg); background:var(--tch-surface); border:1px solid var(--tch-line); border-right:0; width:200px; box-shadow:var(--tch-shadow-lg);}
.CallMeSlideContent p{font-size:12px; color:var(--tch-ink-2); margin-top:0; text-align:left;}
.CallMeSlideContent b{font-weight:700; margin-bottom:3px; display:block; color:var(--tch-ink);}
.CallMeSlideContent a.btn{background:var(--tch-brand); border-radius:var(--tch-radius-pill); color:#FFF; text-transform:uppercase; text-align:center; padding:10px 16px; display:inline-block; font-weight:700; transition:background 0.2s ease;}
.CallMeSlideContent a.btn:hover{background:var(--tch-brand-dark); color:#FFF;}

.rightSideCart{background: rgba(247, 247, 247, 1); height:100%; position:fixed; right:-315px; top:0; padding:15px 0px 15px 15px; width:280px; z-index:99999; -webkit-transition:all 0.5s ease; -moz-transition:all 0.5s ease; -o-transition:all 0.5s ease; transition:all 0.5s ease; color:#444; border-left:2px solid #ebebeb;}
.rightSideCart .CustomScroll{height:100%;}
/* Native scrolling for the mini-cart. RocketScroll (which normally supplies the
   scrollable .scrollDiv via its .rocketScroll class) self-disables on touch
   devices, so without this base rule the cart content overflows a fixed-height
   panel with no way to reach Cart Total / checkout on phones and tablets. */
.rightSideCart .CustomScroll .scrollDiv{overflow-y:auto;height:100%;max-height:100%;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
.rightSideCart.activeRightCart{right:0px;}
.rightSideCart h3{margin-top:0; margin-bottom:10px; font-size:20px; padding-right:15px;}
.rightSideCart h3 a{float:right;}
.rightSideCart .Product{font-size:13px; border-bottom:1px solid #ebebeb; overflow:hidden; padding:10px 0; margin-right:20px;}
.rightSideCart .Product a.remove{font-size:18px; color:#444;}
.rightSideCart .Product a.remove:hover{color:var(--tch-brand);}
.rightSideCart .Product h5{font-size:13px; margin:0 0 10px 0; max-height:50px; overflow:hidden; line-height:16px;}
.rightSideCart .Product h5 a{color:#444;}
.rightSideCart .Product h5 a:hover{color:var(--tch-brand);}
.rightSideCart .Product .ProductIMG {background: #fff none repeat scroll 0 0;display: table-cell;height: 90px;margin-right: 10px;padding: 3px;text-align: center;vertical-align: middle;width: 90px;}
.ProductIMG.Left img {max-height: 90px;max-width: 90px;}

.rightSideCart .TotalCartBTN{text-align:center; font-size:18px; padding:20px 0 50px 0; max-width:260px;}

.rightSideCart .TotalCartBTN .rightSideCartTable th,
.rightSideCart .TotalCartBTN .rightSideCartTable td{border-top: 1px solid #b5b5b5; padding:8px;}

.rightSideCart .TotalCartBTN a.ViewCart{background:#FFF; border:1px solid var(--tch-brand); border-radius:5px; padding:12px 20px; color:var(--tch-brand); font-size:14px; text-transform:uppercase; display:inline-block; margin-top:15px; margin-right:5px; transition:background 0.2s ease, color 0.2s ease;}
.rightSideCart .TotalCartBTN a.ViewCart:hover{background:var(--tch-brand); color:#FFF;}
.rightSideCart .TotalCartBTN a.Checkout{background:var(--tch-brand); border-radius:5px; padding:12px 20px; color:#FFF; font-size:18px; display:inline-block; margin-top:15px; margin-left:5px; transition:background 0.2s ease;}
.rightSideCart .TotalCartBTN a.Checkout:hover{background:var(--tch-brand-dark);}
.rightSideCart .TotalCartBTN .GuestCheckout {margin-top: 10px; font-size:16px; font-weight:normal;}

.rightSideCart .rocketScroll .scrollDiv{max-height:100%;}

.Protection{text-align:left; padding:8px; border: 1px solid #bdbdbd; border-radius:5px; display: inline-block;}
.Protection ul{list-style:none; margin:0; padding:0;}
.Protection ul li{background:#FFF; padding:5px 20px 0 40px;}

.Protection .PlanIncludes{}
.Protection .PlanIncludes b{display:inline-block; font-size: 16px; font-weight: normal;}
.Protection .PlanIncludes span {background: #444; color: #FFF; width: 18px; height: 18px; line-height: 18px; text-align: center; display: inline-block; border-radius: 50%; position: relative; margin-left: 3px; }

.Protection .PlanIncludes span .protectionCondition{display:none; position:absolute; left:-70px; top:24px; width:300px; z-index:999;background:#444; color:#FFF; border-radius:25px; width:240px;}
.Protection .PlanIncludes span:hover .protectionCondition{display:block;}
.Protection .PlanIncludes span .protectionCondition:after { content: ""; width: 0; height: 0; border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 8px solid #444; position: absolute; top: -7px; left: 70px;}
.Protection .PlanIncludes span .protectionCondition .protectionCBox{background-color:#444; border-radius:25px;}
.Protection .PlanIncludes span .protectionCondition ul{margin:0px;}
.Protection .PlanIncludes span .protectionCondition ul li{text-align:left; background:#444; color:#FFF;}
.Protection .PlanIncludes span .protectionCondition ul li i{color:#FFF;}
.Protection .PlanIncludes span .protectionCondition .protectionCBox span{color:#FFF; display:block; width: auto; height: auto; background: none;}
.Protection .PlanIncludes span .protectionCondition .protectionCBox span a{color:#FFF; text-decoration:underline;}

.CartGroupProduct .Protection{margin-left:-90px;}

.SelectedProtection{font-size:15px;}
.SelectedProtection img{vertical-align:middle; margin-right:5px;}

.rightSideCart .Protection{border:0; padding:0;}
.rightSideCart .Protection label{font-size:13px;}

/* Check-boxes */
.Protection label {position:relative; font-weight:normal; font-size:14px;}
.Protection input[type="checkbox"]{display:none;}
.Protection span:before,
.Protection span:after {content:''; position:absolute; top:5px; left:-25px; margin:auto;}
.Protection span.checkbox:before {width:20px; height:20px; background-color:#f6f6f6; left:-30px; box-sizing:border-box; border:1px solid #d9d9d9; transition:border-color .2s;}
.Protection span.checkbox::after {content: '\f00c'; font-family: 'FontAwesome'; left:-26px; top:7px; color:transparent; transition:color .2s;}
.Protection input[type="checkbox"]:checked + label span.checkbox::after {color:#444;}

.protectionCondition{margin-bottom:20px;}
.rightSideCart .protectionCondition h3{font-size:18px; margin:0 0 10px 0;text-align:center;text-decoration:none;}
.rightSideCart .protectionCondition h4{text-align:center;}
.rightSideCart .protectionCondition .protectionCBox ul li{text-align:left;border-bottom:0;}
.rightSideCart .protectionCondition .protectionCBox span a{color:#444;}
.rightSideCart .protectionCondition .protectionImg {background:#fff; text-align:center; width:130px; height:130px; line-height:130px; border-radius:100%;  margin:0 auto;}
.rightSideCart .protectionCondition .protectionImg img{max-height:90px; vertical-align: middle;}

.protectionCondition .protectionCBox{background-color:#eaeaea; padding:15px;}
.protectionCondition h4{font-size:14px; font-weight:700; margin:0;}
.protectionCondition .protectionCBox ul{padding:0; margin:10px 0 0 0;}
.protectionCondition .protectionCBox ul li{list-style:none; font-size:13px; border-bottom:1px solid #d1cece; padding:5px 0; color:#717171;}
.protectionCondition .protectionCBox ul li i{color:#444;}
.protectionCondition .protectionCBox span{display: block; text-align: center; color:#909090; padding-top:10px; font-size:13px; width:265px;}

/* Form Elements */

.FormRow{overflow:hidden; margin-bottom:10px;}
.FormRow .colum1{padding:0 1%;}
.FormRow .colum2{width:48%; padding:0 1%; float:left;}
.FormRow .colum3{width:31.3%; padding:0 1%; float:left;}
.error{margin:0 0 10px 0; padding:0; font-size:12px; color:var(--tch-brand); text-align:left;}

label{text-align:left; display:block; font-weight:500; padding:5px 0;}
input[type="text"]{border:1px solid #ebebeb; width:96%; padding:0 2%; height:40px;}
input[type="password"]{border:1px solid #ebebeb; width:96%; padding:0 2%; height:40px;}
select{border:1px solid #ebebeb; width:96%; padding:0 2%; height:40px; line-height:40px;}
textarea{border:1px solid #eee; width:96%; padding:2%; height:80px;}
button{border:0; background:var(--tch-brand); color:#FFF; cursor:pointer; font-weight:700; height:42px; padding:0 10px;}
button:hover{background:#444;}

/* Custom Checkbox */
.CustomCheckbox{position:relative;}
.CustomCheckbox input[type="checkbox"]{display:none;}
.CustomCheckbox span:before,
.CustomCheckbox span:after {content:''; position:absolute; top:0; left:-25px; margin: auto;}
.CustomCheckbox span.checkbox:before {width:20px; height:20px; background-color:#f6f6f6;left:0; top:5px; box-sizing:border-box; border:1px solid #eaeaea; transition:border-color .2s;}
.CustomCheckbox span.checkbox::after {content:'\f00c'; font-family:'FontAwesome'; left:3px; top:7px;color:transparent;transition:color .2s;}
.CustomCheckbox input[type="checkbox"]:checked + label span.checkbox::after {color:#444;}
.CustomCheckbox label span{margin-left:30px; text-decoration:inherit;}

/* Custom Scroll */
.CustomScroll{}
.rocketScroll {overflow:hidden !important; position:relative;}
.rocketScroll .scrollDiv {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; overflow-y:scroll; height:100%; max-height:208px;}
.rocketScroll .scrollbar {position:absolute; right:4px; top:6px; bottom:6px; background:transparent; width:6px; border-radius:3px; transition:background-color 0.5s;}
.rocketScroll .scrollbar:hover{cursor:pointer;}
.rocketScroll .scrollbar:hover div:hover{background:#777; background: rgba(0, 0, 0, 0.55);}
.rocketScroll:hover .scrollbar {background:#ddd; background: rgba(0, 0, 0, 0.15);}
.rocketScroll:hover .scrollbar div{background:#aaa; background: rgba(0, 0, 0, 0.35);}

.transition, a, button{
	/*-webkit-transition: all 0.2s ease;*/
       -moz-transition: all 0.2s ease;
        -ms-transition: all 0.2s ease;
         -o-transition: all 0.2s ease;
            transition: all 0.2s ease;}

@media only screen and (min-width:0) and (max-width:1699px){
#ShoppersApprovedAward{display:none;}
}

@media only screen and (min-width:0) and (max-width:1490px){
.SubHeader .SearchForm{min-width:0;}
}

@media only screen and (min-width:0) and (max-width:1450px){
.nav > li > a{padding: 0 7px;}
.SubHeader .SearchForm{min-width:0;}
}

@media only screen and (min-width:0) and (max-width:1375px){
.SubHeader .SearchForm{min-width:0;}
.bbb-logo-Header{display:none;}
}

@media only screen and (min-width:0) and (max-width:1340px){
.nav > li.HomeIcon{display:none;}
#ShoppersApprovedAward{display:none;}
}

@media only screen and(min-width:1100px) and (max-width:1340px){

.OfferLoginCart a.OfferZoneBTN {padding: 11px 5px; font-size: 11px;}
}

@media only screen and (min-width:1100px) and (max-width:1290px){

.easy-autocomplete{width:auto !important;}

.nav > li.brand{display:none;}

.SiteContainer{width:1100px;}

.Product .CartShareWishlist a.CartBTN,.Product .CartShareWishlist span.CartBTN{font-size:14px; max-width:150px;}
.Product .LookLoveStar{padding:12px 5px;}
.Popup{width:80%; margin-left:-40%;}
}

@media only screen and (min-width:0px) and (max-width:1140px){

.nav > li.brand{display:none;}
.nav > li > a{font-size: 13px;}
	
}

@media only screen and (min-width:0px) and (max-width:999px){

.Header{width:auto;}
/* Legacy pre-UI-v2 header rules removed here (Logo img 46px squash, SearchForm/
   OfferLoginCart extra padding, MyCart 10px side margins, MainBanner 1100px):
   this bundle loads AFTER header.css, so they were re-inflating the v2 mobile
   header grid past the viewport — clipped cart / overflowing search on phones. */

.easy-autocomplete{width:auto !important;}
.OfferLoginCart a.OfferZoneBTN{padding:11px 5px; font-size:11px;}
.nav > li > a{font-size:12px;}

.HomeCategory .CategoryBlock .IconBlock i.Icon {width: 50px; height: 50px;}
.HomeCategory .CategoryBlock .IconBlock b {font-size: 13px; margin-top: 13px; line-height: 20px;}
.CategoriesTab .LeftTab {max-width: 257px;}

}	

@media only screen and (min-width:0px) and (max-width:1080px){
	.SubHeader .SearchForm{min-width:0;}
}

@media only screen and (min-width:1000px) and (max-width:1099px){

.SiteContainer{padding:0 10px; width:1100px;}
.SubHeader .SiteContainer{width:auto;}

.easy-autocomplete{width:auto !important;}
.nav > li > a{padding:0 8px; font-size:12px;}

.Product .CartShareWishlist{padding:10px 0;}
.Product .CartShareWishlist a.CartBTN,.Product .CartShareWishlist span.CartBTN{font-size:13px; max-width:140px;}
.Product .LookLoveStar span{font-size:12px; margin-top:8px;}
.Product .LookLoveStar{padding:12px 5px;}
.CartBTN {line-height:40px;}
.CartBTN span{padding-top:10px; width:40px; height:30px;}

.Popup{width:80%; margin-left:-40%;}
.easy-autocomplete{width:auto !important;}

.OfferLoginCart a.OfferZoneBTN {
    padding: 11px 5px;
    font-size: 11px;
}

	
}
.zipExclude{ font-size:10px;padding:0px;color:#909090 }

/* ── Narrow-screen popup safety (UI v2 2026-07-23): every .Popup fits a 390px viewport.
   !important intentionally beats the fixed-width inline styles / -225px margin variants. */
@media only screen and (max-width:600px){
	.Popup,
	.Popup.PopupSchedule,
	.Popup.PopupSchedule.small,
	.Popup.addCartPP{width:calc(100vw - 32px) !important; max-width:calc(100vw - 32px); margin-left:calc(16px - 50vw) !important; min-height:0 !important; top:10%; max-height:80vh; overflow:auto; padding:var(--tch-space-4);}
}



