/************************************/
/***        WooCommerce CSS        ***/
/************************************/

del {
    font-weight: 100;
    color: #737373;
    padding-right: 4px;
}

.home-products { padding: 80px 0; }

.woocommerce span.onsale {
    min-height: 3.236em;
    min-width: 5.236em;
    padding: .202em;
    border-radius: 4px;
    background-color: black;
    display: none;
}

/* Hide Woo injected "View cart" link under product cards (we use drawer) */
.woocommerce ul.products li.product a.added_to_cart.wc-forward{
  display:none !important;
}

/* ============================= */
/* Product Cards (Home section)  */
/* ============================= */
.product-card{
	background: white;
	border-radius:16px;
	overflow:hidden;
	box-shadow:0 10px 30px rgba(0,0,0,0.08);
	transition: all .25s ease;
	height:100%;
}
.product-card:hover{
	transform: translateY(-6px);
	box-shadow:0 18px 40px rgba(0,0,0,0.12);
}
.product-thumb{ display:block; position:relative; background:#f7f7f7; }
.product-thumb img{ width:100%; height:auto; display:block; }

.product-badge{
	position:absolute;
	top:14px;
	left:14px;
	padding:6px 10px;
	border-radius: 4px;
	background: black;
	color:#fff;
	font-size:12px;
	font-weight:800;
	z-index:2;
	display: none;
}
.product-body{ padding:18px 18px 20px; }
.product-title{ font-size:16px; font-weight:900; margin:0 0 8px; line-height:1.35; }
.product-title a{ color:inherit; text-decoration:none; }
.product-price{ 
    font-weight: 500;
    margin-top: 21px;
    color: black;
    
}
.product-actions{ margin-top:14px; }

.product-actions .button,
.product-actions a.button{
	display:inline-block;
	padding:12px 16px;
	border-radius:12px;
	background:#111;
	color:#fff;
	font-weight:900;
	text-decoration:none;
	border:none;
	display: none;
}
.product-actions .button:hover{ opacity:.92; }

/* ============================= */
/* Header Cart Button            */
/* ============================= */
.main-header .header-actions{
	display:flex;
	align-items:center;
	gap:12px;
}

.header-cart-btn{
	position:relative;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:46px;
	height:46px;
	border-radius:14px;
	background: rgba(255,255,255,0.10);
	border: 1px solid rgba(255,255,255,0.16);
	color:#fff;
	text-decoration:none;
	transition: all .2s ease;
}
.header-cart-btn:hover{
	transform: translateY(-1px);
	background: rgba(255,255,255,0.14);
}
.header-cart-btn i{ font-size:18px; }

.sauna-cart-count{
	position:absolute;
	top:-8px;
	right:-8px;
	min-width:20px;
	height:20px;
	padding:0 6px;
	border-radius:999px;
	background:#c39a5b; /* matches your premium accent */
	color:#111;
	font-size:12px;
	font-weight:900;
	display:flex;
	align-items:center;
	justify-content:center;
	box-shadow: 0 10px 18px rgba(0,0,0,0.18);
}

/* ============================= */
/* Center Toast                  */
/* ============================= */
.sauna-toast{
	position:fixed;
	left:50%;
	top:16%;
	transform:translate(-50%, -10px);
	z-index:9999;
	opacity:0;
	pointer-events:none;
	background: rgba(17,17,17,0.94);
	border: 1px solid rgba(255,255,255,0.12);
	color:#fff;
	padding:14px 18px;
	border-radius:16px;
	box-shadow:0 18px 40px rgba(0,0,0,0.35);
	backdrop-filter: blur(10px);
	transition: all .25s ease;
	text-align:center;
	min-width: 260px;
	max-width: 92vw;
	font-weight:800;
}
.sauna-toast.show{
	opacity:1;
	transform:translate(-50%, 0);
}

/* ============================= */
/* Drawer + Overlay (Premium)    */
/* ============================= */
.sauna-cart-overlay{
	position:fixed;
	inset:0;
	background: rgba(0,0,0,0.55);
	opacity:0;
	pointer-events:none;
	z-index:9997;
	transition:opacity .25s ease;
}

.sauna-cart-drawer{
	position:fixed;
	top:0;
	right:0;
	height:100vh;
	width:420px;
	max-width: 92vw;
	z-index:9998;

	/* Premium light drawer to match your theme */
	background: #f3ecdf;
	color:#111;

	transform: translateX(105%);
	transition: transform .28s ease;
	box-shadow:-18px 0 60px rgba(0,0,0,0.28);
	display:flex;
	flex-direction:column;
	border-left: 1px solid rgba(0,0,0,0.08);
}

.sauna-cart-open .sauna-cart-overlay{
	opacity:1;
	pointer-events:auto;
}
.sauna-cart-open .sauna-cart-drawer{
	transform: translateX(0);
}

.sauna-cart-drawer__header{
	padding:18px 18px;
	border-bottom:1px solid rgba(0,0,0,0.10);
	display:flex;
	align-items:center;
	justify-content:space-between;
	background: rgba(255,255,255,0.35);
	backdrop-filter: blur(10px);
}
.sauna-cart-drawer__header h3{
	margin:0;
	font-size:18px;
	font-weight:900;
	letter-spacing:0.2px;
}
.sauna-cart-close{
	background: rgba(0,0,0,0.06);
	border: 1px solid rgba(0,0,0,0.10);
	color:#111;
	width:40px;
	height:40px;
	border-radius:12px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	transition: all .2s ease;
}
.sauna-cart-close:hover{
	background: rgba(0,0,0,0.10);
	transform: translateY(-1px);
}

.sauna-cart-drawer__body{
	padding:16px 18px;
	overflow:auto;
	flex:1;
}

.sauna-cart-drawer__footer{
	padding:18px 18px;
	border-top: 1px solid black;
	background: rgba(255,255,255,0.35);
	backdrop-filter: blur(10px);
	display: grid;
    gap: 8px;
}

.sauna-cart-drawer__footer a{
	width:100%;
	text-align:center;
	white-space:nowrap;
}

/* Hide Woo mini-cart default buttons inside drawer (you already have custom footer buttons) */
.sauna-cart-drawer .woocommerce-mini-cart__buttons{
	display:none !important;
}

/* ============================= */
/* Mini cart list (Readable)     */
/* ============================= */
.sauna-cart-drawer .woocommerce-mini-cart{
	margin:0;
	padding:0;
	list-style:none;
}

.sauna-cart-drawer .woocommerce-mini-cart-item{
	padding:14px 0;
	border-bottom:1px solid rgba(0,0,0,0.08);
}

.sauna-cart-drawer .woocommerce-mini-cart-item a{
	color:#111;
	text-decoration:none;
}

.sauna-cart-drawer .woocommerce-mini-cart-item > a:not(.remove){
	display:flex;
	gap:12px;
	align-items:flex-start;
	font-weight:900;
	line-height:1.25;
}

.sauna-cart-drawer .woocommerce-mini-cart-item img{
	width:56px;
	height:56px;
	object-fit:cover;
	border-radius:14px;
	background:#fff;
	border:1px solid rgba(0,0,0,0.08);
	flex:0 0 56px;
}

.sauna-cart-drawer .quantity{
	display:block;
	margin-top:6px;
	font-weight:800;
	color: rgba(0,0,0,0.75);
}

.sauna-cart-drawer .woocommerce-mini-cart__total{
	margin-top: 30px;
    padding: 12px;
    border-top: 1px solid black;
    font-weight: 900;
    background: white;
    box-shadow: 0 10px 26px rgb(0 0 0 / 19%) !important;
}
.sauna-cart-drawer .woocommerce-mini-cart__total strong{
	font-weight:900;
}

.sauna-cart-drawer .remove{
	color:#d11a2a !important;
	font-weight:900;
	margin-right:10px;
	border-radius:10px;
	width:30px;
	height:30px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	background: rgba(209,26,42,0.10);
	border:1px solid rgba(209,26,42,0.18);
}
.sauna-cart-drawer .remove:hover{
	background: rgba(209,26,42,0.16);
}

/* ============================= */
/* Shop layout to match theme    */
/* ============================= */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{
	margin-bottom:18px;
}

.woocommerce .woocommerce-ordering select{
	border-radius:12px;
	padding:10px 12px;
	border:1px solid rgba(0,0,0,0.14);
	background:#fff;
	font-weight:800;
}

.woocommerce ul.products{
	display:grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap:44px;
	margin:0 !important;
	padding-top: 3rem !important;
    padding-bottom: 5rem !important;
}
@media (max-width: 991px){
	.woocommerce ul.products{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px){
	.woocommerce ul.products{ grid-template-columns: 1fr; }
}

.woocommerce ul.products li.product{
	float:none !important;
	width:auto !important;
	margin:0 !important;
	padding:0 !important;
	background:#fff;
	border-radius:18px;
	overflow:hidden;
	box-shadow: 0 10px 30px rgb(0 0 0 / 26%);
	transition: all .25s ease;
}
.woocommerce ul.products li.product:hover{
	transform: translateY(-6px);
	box-shadow:0 18px 40px rgba(0,0,0,0.12);
}
.woocommerce ul.products li.product a img{
	width:100%;
	margin:0 !important;
	display:block;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	padding:16px 16px 8px;
	font-size:16px;
	font-weight:900;
	color:#111;
}
.woocommerce ul.products li.product .price{
	padding:0 16px 14px;
	font-weight:900;
	color:#111;
}
.woocommerce ul.products li.product a.button{
	display:block;
	margin:0 16px 16px;
	border-radius:14px;
	background:#111;
	color:#fff;
	font-weight:900;
	padding:12px 16px;
	text-align:center;
	border:none;
	position: relative;
}
.woocommerce ul.products li.product a.button:hover{
	opacity:.92;
	transform: translateY(-1px);
}

/* Hide default Woo “added to cart” notice on shop archives (we use toast) */
body.woocommerce-shop .woocommerce-message,
body.post-type-archive-product .woocommerce-message,
body.tax-product_cat .woocommerce-message,
body.tax-product_tag .woocommerce-message{
	display:none !important;
}

/* ============================= */
/* Pagination (Premium)          */
/* ============================= */
.woocommerce nav.woocommerce-pagination{
	margin-top:28px;
}
.woocommerce nav.woocommerce-pagination ul{
	border:none;
	display:flex;
	gap:10px;
	justify-content:center;
	padding:0;
	margin:0;
}
.woocommerce nav.woocommerce-pagination ul li{
	border:none;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:42px;
	height:42px;
	padding:0 14px;
	border-radius:14px;
	background: rgba(255,255,255,0.55);
	border:1px solid rgba(0,0,0,0.10);
	color:#111;
	font-weight:900;
	transition: all .2s ease;
}
.woocommerce nav.woocommerce-pagination ul li a:hover{
	transform: translateY(-1px);
	background:#fff;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
	background:#111;
	border-color:#111;
	color:#fff;
}

/* ============================= */
/* Cart Page (Premium)           */
/* ============================= */
.woocommerce-cart .woocommerce{
	padding: 18px 0;
}

.woocommerce-cart table.shop_table{
	border: none;
	border-radius:18px;
	overflow:hidden;
	background:#fff;
	box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.woocommerce-cart table.shop_table th{
	background: rgba(0,0,0,0.04);
	font-weight:900;
}

.woocommerce-cart .cart_totals{
	background:#fff;
	border-radius:18px;
	padding:18px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.woocommerce-cart .button,
.woocommerce-cart button.button{
	border-radius:14px;
	font-weight:900;
}

/* ============================= */
/* Checkout Page (Premium)       */
/* ============================= */
.woocommerce-checkout .woocommerce form.checkout{
	background:#fff;
	border-radius:18px;
	padding:18px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.woocommerce-checkout #order_review{
	background:#fff;
	border-radius:18px;
	padding:18px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea{
	border-radius:12px;
	padding:12px 12px;
	border:1px solid rgba(0,0,0,0.14);
}

.woocommerce-checkout #place_order{
	border-radius:14px;
	font-weight:900;
}

/* ===== Mini-cart item overrides ONLY (won't affect drawer layout) ===== */
.sauna-cart-drawer .woocommerce-mini-cart-item{
  position:relative;
  padding:12px 12px 10px 12px !important;
  padding-right:52px !important;
  border:none !important;
  background: white !important;
  border:1px solid rgba(0,0,0,0.08) !important;
  border-radius:16px !important;
  box-shadow: 0 10px 26px rgb(0 0 0 / 19%) !important;
}

.sauna-cart-drawer .woocommerce-mini-cart-item img{
  width:60px !important;
  height:60px !important;
  border-radius:14px !important;
  border:1px solid rgba(0,0,0,0.10) !important;
  box-shadow: 0 10px 18px rgba(0,0,0,0.10) !important;
}

.sauna-cart-drawer .quantity{
  margin-top:10px !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:10px !important;
  font-weight:800 !important;
  color: black!important;
}

.sauna-cart-drawer .quantity .woocommerce-Price-amount{
  font-weight:900 !important;
  color:#111 !important;
  background: rgba(0,0,0,0.05) !important;
  border:1px solid black !important;
  padding:6px 10px !important;
  border-radius:4px !important;
  white-space:nowrap !important;
}

.sauna-cart-drawer .remove{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  width:34px !important;
  height:34px !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:12px !important;
  background: rgba(0,0,0,0.06) !important;
  border:1px solid rgba(0,0,0,0.12) !important;
  color:#111 !important;
  font-weight:900 !important;
  font-size:18px !important;
  line-height:1 !important;
  transition: all .2s ease !important;
}

.sauna-cart-drawer .remove:hover{
  transform: translateY(-1px) !important;
  background: rgba(209,26,42,0.12) !important;
  border-color: rgba(209,26,42,0.22) !important;
  color:#b01220 !important;
}

.woocommerce ul.cart_list li, .woocommerce ul.product_list_widget li {
    padding: 4px 0;
    list-style: none;
    margin-top: 1rem;
}

/* ===================================================== */
/* ✅ FIX: Remove Woo BlockUI “Please wait…” on product grid */
/* (This is the ugly grey box you see in product cards)  */
/* Only affects shop grid, NOT cart/checkout.            */
/* ===================================================== */
.woocommerce ul.products li.product .blockUI.blockOverlay{
  background: transparent !important;
  opacity: 0 !important;
}
.woocommerce ul.products li.product .blockUI.blockMsg{
  display:none !important;
}

/* ===================================================== */
/* ✅ Premium AJAX Add-to-cart button UI (product grid)   */
/* - No rotation                                         */
/* - Keeps button width same                             */
/* - Shows “Please wait…” inside the button              */
/* ===================================================== */

/* Base: reserve space for the right icon */
.woocommerce ul.products li.product a.button.add_to_cart_button{
  padding-right:58px !important;
  position:relative;
  overflow:hidden;
  display: none;
}

/* Right round icon background */
.woocommerce ul.products li.product a.button.add_to_cart_button::after{
  content:"";
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  border-radius:999px;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.14);
  pointer-events:none;
}

/* Default icon (cart) */
.woocommerce ul.products li.product a.button.add_to_cart_button::before{
  content:"\f07a"; /* fa-cart-shopping */
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  position:absolute;
  right:22px;
  top:50%;
  transform:translateY(-50%);
  font-size:14px;
  color:#fff;
  line-height:1;
  pointer-events:none;
}

/* ✅ Loading: keep same width + show text (NO spinner, NO rotation) */
.woocommerce ul.products li.product a.button.add_to_cart_button.loading{
  cursor: wait !important;
  pointer-events:none !important;
  color: transparent !important; /* hides original “Add to cart” text */
  text-shadow:none !important;
}

/* Keep circle but slightly dim while loading (optional) */
.woocommerce ul.products li.product a.button.add_to_cart_button.loading::after{
  background: rgba(255,255,255,0.14) !important;
  border-color: rgba(255,255,255,0.18) !important;
}

/* Replace icon with centered “Please wait…” text */
.woocommerce ul.products li.product a.button.add_to_cart_button.loading::before{
  content:"Please wait…";
  font-family: inherit !important;
  font-weight:900 !important;
  font-size:14px !important;
  color:#fff !important;
  position:absolute;
  left:16px;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  text-align:center;
  letter-spacing:0.2px;
  pointer-events:none;
}

/* ✅ After added: show check icon */
.woocommerce ul.products li.product a.button.add_to_cart_button.added::before{
  content:"\f00c"; /* fa-check */
  font-family:"Font Awesome 6 Free" !important;
  font-weight:900 !important;
  position:absolute;
  right:22px !important;
  left:auto !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  font-size:14px !important;
  color:#fff !important;
}

/* Ensure button text is visible when added */
.woocommerce ul.products li.product a.button.add_to_cart_button.added{
  color:#fff !important;
}







