/* ======================================================================
   WooCommerce style overrides for Irie Flavours
   ====================================================================== */

.irie-woo-main{
	padding:140px 0 80px;
	background:var(--irie-cream);
	min-height:60vh;
}

.woocommerce-products-header__title,
.woocommerce .cart_totals h2,
.woocommerce h2,
.woocommerce-checkout h3,
.woocommerce-billing-fields > h3,
.woocommerce-checkout-review-order h3{
	font-family:var(--irie-font-display);
	color:var(--irie-primary);
}

.woocommerce ul.products li.product{
	background:var(--irie-white);
	border-radius:var(--irie-radius);
	padding:16px !important;
	box-shadow:var(--irie-shadow-sm);
	transition:transform .25s ease, box-shadow .25s ease;
}
.woocommerce ul.products li.product:hover{
	transform:translateY(-4px);
	box-shadow:var(--irie-shadow-md);
}
.woocommerce ul.products li.product img{
	border-radius:12px;
	margin-bottom:12px;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	font-family:var(--irie-font-display);
	font-size:18px !important;
	color:var(--irie-primary);
	font-style:italic;
}
.woocommerce ul.products li.product .price{
	font-family:var(--irie-font-display);
	color:var(--irie-cta) !important;
	font-weight:700;
}

/* WooCommerce buttons -> match our pill buttons */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce ul.products li.product .button{
	background:var(--irie-cta) !important;
	color:#111 !important;
	padding:12px 22px !important;
	border-radius:999px !important;
	font-family:var(--irie-font-body) !important;
	font-weight:600 !important;
	font-size:12px !important;
	letter-spacing:.08em !important;
	text-transform:uppercase !important;
	border:none !important;
	transition:all .25s ease !important;
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce ul.products li.product .button:hover{
	background:var(--irie-cta-dark) !important;
	transform:translateY(-2px);
	box-shadow:var(--irie-shadow-md);
}

/* Cart table */
.woocommerce table.shop_table{
	background:var(--irie-white);
	border-radius:var(--irie-radius);
	border:none;
	overflow:hidden;
	box-shadow:var(--irie-shadow-sm);
}
.woocommerce table.shop_table th{
	background:var(--irie-primary);
	color:var(--irie-white);
	text-transform:uppercase;
	font-size:12px;
	letter-spacing:.1em;
	padding:14px 12px;
}
.woocommerce table.shop_table td{ padding:16px 12px; }
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review{
	background:var(--irie-white);
	padding:24px;
	border-radius:var(--irie-radius);
	box-shadow:var(--irie-shadow-sm);
}
.woocommerce-info, .woocommerce-message{
	background:rgba(212,161,71,.1) !important;
	border-top:3px solid var(--irie-accent) !important;
	color:var(--irie-primary) !important;
	border-radius:10px;
}
.woocommerce-info::before, .woocommerce-message::before{ color:var(--irie-accent) !important; }
.woocommerce-error{
	background:rgba(200,60,60,.08) !important;
	border-top:3px solid #c83c3c !important;
	border-radius:10px;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select,
.select2-container--default .select2-selection--single{
	padding:12px 14px !important;
	border-radius:10px !important;
	border:1px solid rgba(0,0,0,.12) !important;
	font-size:14px !important;
	background:var(--irie-white);
	height:auto !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus{
	outline:none;
	border-color:var(--irie-accent) !important;
	box-shadow:0 0 0 3px rgba(212,161,71,.15) !important;
}

.woocommerce-checkout label{
	font-size:12px;
	letter-spacing:.08em;
	text-transform:uppercase;
	font-weight:600;
	color:var(--irie-primary);
	margin-bottom:6px !important;
}

/* Place order button */
#place_order{
	width:100%;
	padding:18px !important;
	font-size:14px !important;
}

/* Payment methods — Stripe / PayPal etc */
#payment{
	background:transparent !important;
}
#payment ul.payment_methods{
	border-bottom:none !important;
	padding:0 !important;
	display:flex;
	flex-direction:column;
	gap:10px;
}
#payment ul.payment_methods > li{
	background:var(--irie-white);
	border:1px solid rgba(0,0,0,.08);
	border-radius:12px;
	padding:16px !important;
	transition:border .2s ease;
}
#payment ul.payment_methods > li:has(input:checked),
#payment ul.payment_methods > li.payment_method_selected{
	border-color:var(--irie-accent);
	background:rgba(212,161,71,.05);
}

/* Breadcrumbs */
.woocommerce-breadcrumb{
	font-size:12px;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--irie-text-muted);
	margin-bottom:24px !important;
}
.woocommerce-breadcrumb a{ color:var(--irie-accent); }

/* Single product */
.single-product div.product .product_title{
	font-family:var(--irie-font-display);
	color:var(--irie-primary);
	font-size:clamp(32px,4vw,48px);
}
.single-product div.product .price{
	font-family:var(--irie-font-display);
	color:var(--irie-cta);
	font-size:28px;
	font-weight:700;
}
.single-product div.product .woocommerce-product-gallery img{ border-radius:var(--irie-radius); }

/* Pagination */
.woocommerce nav.woocommerce-pagination ul{ border:none !important; gap:6px; }
.woocommerce nav.woocommerce-pagination ul li{ border:none !important; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
	border-radius:50%;
	width:40px; height:40px;
	display:inline-flex !important;
	align-items:center; justify-content:center;
	padding:0 !important;
	background:var(--irie-white);
	color:var(--irie-primary);
}
.woocommerce nav.woocommerce-pagination ul li span.current{
	background:var(--irie-primary) !important;
	color:var(--irie-white) !important;
}

/* Quantity inputs */
.woocommerce .quantity .qty{
	padding:10px 8px;
	border:1px solid rgba(0,0,0,.1);
	border-radius:8px;
	width:72px;
	text-align:center;
}

/* Empty checkout */
.irie-empty-checkout{ text-align:center; padding:60px 20px; }
