/* ============================================================
   Domburg Labyrinth — WooCommerce styling overrides
   Cream achtergrond, mint accents, Fraunces headings, Outfit body.
   Geladen alleen op WC pages via enqueue.
   ============================================================ */

/* ─── algemene WC content wrapper ─── */
.woocommerce, .woocommerce-page {
	font-family: var(--f-body);
	color: var(--ink);
}
/* SCOPED tot WC eigen pages (cart, checkout, account) — niet onze custom shop page */
body.woocommerce-cart .entry-content,
body.woocommerce-checkout .entry-content,
body.woocommerce-account .entry-content {
	max-width: var(--maxw);
	margin: 0 auto;
	padding: clamp(60px, 8vw, 100px) 24px;
}
@media (min-width:768px){
	body.woocommerce-cart .entry-content,
	body.woocommerce-checkout .entry-content,
	body.woocommerce-account .entry-content {
		padding-left: 40px; padding-right: 40px;
	}
}

/* ─── headings ─── */
.woocommerce h1, .woocommerce h2, .woocommerce h3,
.woocommerce-page h1, .woocommerce-page h2, .woocommerce-page h3,
body.woocommerce-cart h1, body.woocommerce-checkout h1, body.woocommerce-account h1 {
	font-family: var(--f-display);
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--ink);
	font-variation-settings: "opsz" 144;
}
.woocommerce h1 { font-size: clamp(2rem, 4vw, 3rem); }
.woocommerce h2 { font-size: clamp(1.5rem, 3vw, 2rem); }
.woocommerce h3 { font-size: 1.25rem; }

/* ─── BUTTONS ─── */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .checkout-button,
.woocommerce .single_add_to_cart_button,
.wc-block-components-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	padding: 14px 26px !important;
	font-family: var(--f-body) !important;
	font-weight: 500 !important;
	font-size: .97rem !important;
	letter-spacing: -0.005em !important;
	border-radius: 999px !important;
	background: var(--ink) !important;
	color: var(--cream) !important;
	border: none !important;
	cursor: pointer !important;
	transition: all .25s var(--ease-out, cubic-bezier(0.23, 1, 0.32, 1)) !important;
	text-shadow: none !important;
	box-shadow: none !important;
	text-transform: none !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .checkout-button:hover,
.woocommerce .single_add_to_cart_button:hover,
.wc-block-components-button:hover {
	background: var(--purple) !important;
	color: var(--cream) !important;
	transform: translateY(-1px);
	box-shadow: var(--shadow-md, 0 4px 16px rgba(26,15,46,.08));
}

/* Alt secondary button stijl */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce .checkout-button {
	background: var(--ink) !important;
	color: var(--cream) !important;
}

/* Mint accent voor "Apply coupon" + "Update cart" */
.woocommerce input.button[name="apply_coupon"],
.woocommerce button[name="apply_coupon"],
.woocommerce button[name="update_cart"],
.woocommerce input[name="update_cart"] {
	background: var(--cream) !important;
	color: var(--ink) !important;
	border: 1px solid var(--ink) !important;
}
.woocommerce input.button[name="apply_coupon"]:hover,
.woocommerce button[name="apply_coupon"]:hover,
.woocommerce button[name="update_cart"]:hover,
.woocommerce input[name="update_cart"]:hover {
	background: var(--ink) !important;
	color: var(--cream) !important;
}

/* ─── FORM INPUTS ─── */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout #payment input.input-text,
.select2-container--default .select2-selection--single {
	font-family: var(--f-body) !important;
	font-size: 1rem !important;
	padding: 14px 18px !important;
	height: auto !important;
	background: #fff !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--r-md, 12px) !important;
	color: var(--ink) !important;
	transition: border-color .2s, box-shadow .2s !important;
	box-shadow: none !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	outline: none !important;
	border-color: var(--ink) !important;
	box-shadow: 0 0 0 3px rgba(26,15,46,.06) !important;
}
.woocommerce form .form-row label {
	font-family: var(--f-body);
	font-weight: 500;
	font-size: .85rem;
	color: var(--ink);
	margin-bottom: .5rem;
}

/* ─── CART TABLE ─── */
.woocommerce-cart .shop_table,
.woocommerce-checkout .shop_table {
	background: #fff;
	border: 1px solid var(--line) !important;
	border-radius: var(--r-lg, 20px) !important;
	overflow: hidden;
	border-collapse: separate !important;
	border-spacing: 0;
}
.woocommerce table.shop_table th {
	background: var(--cream-warm, #F5EDD9) !important;
	color: var(--ink) !important;
	font-family: var(--f-body);
	font-weight: 600;
	font-size: .82rem;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: 18px 22px !important;
	border: none !important;
}
.woocommerce table.shop_table td {
	padding: 22px !important;
	border-top: 1px solid var(--line) !important;
	font-size: .95rem;
}
.woocommerce-cart table.cart .product-name a,
.woocommerce table.cart .product-name a {
	color: var(--ink) !important;
	font-weight: 600;
	font-family: var(--f-display);
	font-size: 1.05rem;
}
.woocommerce-cart table.cart img {
	width: 60px !important;
	border-radius: 8px !important;
}

/* ─── CART TOTALS / ORDER REVIEW ─── */
.woocommerce .cart_totals,
.woocommerce .checkout #order_review,
.woocommerce-checkout #order_review_heading {
	background: var(--cream-warm, #F5EDD9) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--r-lg, 20px) !important;
	padding: clamp(24px,3vw,40px) !important;
}
.woocommerce-checkout #order_review_heading {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: none !important;
	background: transparent !important;
}
.woocommerce .cart_totals h2,
.woocommerce-checkout #order_review_heading {
	font-family: var(--f-display);
	font-size: 1.4rem !important;
	margin-bottom: 1rem !important;
}
.woocommerce-checkout-payment {
	background: transparent !important;
}
.woocommerce-checkout-payment ul.payment_methods {
	background: #fff !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--r-md, 12px) !important;
	padding: 14px !important;
}
.woocommerce-checkout-payment ul.payment_methods li {
	background: transparent !important;
	border-bottom: 1px solid var(--line);
	padding: 12px 4px !important;
}
.woocommerce-checkout-payment ul.payment_methods li:last-child { border-bottom: none; }

/* ─── COUPON BAR ─── */
.woocommerce form.checkout_coupon,
.woocommerce-cart .coupon {
	background: #fff;
	border: 1px solid var(--line) !important;
	border-radius: var(--r-md, 12px) !important;
	padding: 18px 20px !important;
	margin-bottom: 1.5rem !important;
}

/* ─── NOTICES / MESSAGES ─── */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	border-radius: var(--r-md, 12px) !important;
	padding: 18px 22px !important;
	border: none !important;
	font-family: var(--f-body);
}
.woocommerce-message {
	background: var(--mint, #0ECC87) !important;
	color: var(--ink) !important;
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
	color: var(--ink) !important;
}
.woocommerce-message a.button,
.woocommerce-info a.button {
	background: var(--ink) !important;
	color: var(--cream) !important;
}

/* ─── SHOP ARCHIVE / SINGLE PRODUCT ─── */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--f-display) !important;
	font-weight: 600 !important;
	font-size: 1.2rem !important;
	color: var(--ink) !important;
	padding: 12px 0 6px !important;
}
.woocommerce ul.products li.product .price {
	font-family: var(--f-display) !important;
	font-weight: 700 !important;
	font-size: 1.3rem !important;
	color: var(--ink) !important;
}
.woocommerce ul.products li.product .price del { color: var(--ink-soft) !important; }
.woocommerce ul.products li.product .price ins {
	background: transparent !important;
	font-weight: 700 !important;
}
.woocommerce ul.products li.product img {
	border-radius: var(--r-lg, 20px) !important;
}

/* ─── SINGLE PRODUCT ─── */
.woocommerce div.product .product_title {
	font-family: var(--f-display);
	font-size: clamp(1.8rem, 3.5vw, 2.6rem) !important;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	font-family: var(--f-display) !important;
	font-weight: 700 !important;
	font-size: 1.8rem !important;
	color: var(--ink) !important;
}
.woocommerce div.product .quantity input.qty {
	width: 70px !important;
	padding: 12px !important;
	border: 1px solid var(--line) !important;
	border-radius: 999px !important;
	text-align: center;
}

/* ─── MY ACCOUNT ─── */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	background: var(--cream-warm, #F5EDD9);
	border-radius: var(--r-md, 12px);
	padding: 14px;
	list-style: none;
	margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	margin-bottom: 6px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 10px 14px;
	border-radius: 8px;
	color: var(--ink) !important;
	font-weight: 500;
	transition: background .15s;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--ink) !important;
	color: var(--cream) !important;
}

/* ─── BREADCRUMB ─── */
.woocommerce-breadcrumb {
	font-size: .88rem !important;
	color: var(--ink-soft) !important;
	margin-bottom: 1.5rem !important;
}
.woocommerce-breadcrumb a {
	color: var(--ink-soft) !important;
}
.woocommerce-breadcrumb a:hover {
	color: var(--purple) !important;
}

/* ─── REMOVE ICON IN CART ─── */
.woocommerce a.remove {
	border-radius: 50% !important;
	background: var(--cream-warm, #F5EDD9) !important;
	color: var(--ink) !important;
	font-weight: 600 !important;
	width: 26px !important;
	height: 26px !important;
	line-height: 24px !important;
}
.woocommerce a.remove:hover {
	background: var(--ink) !important;
	color: var(--cream) !important;
	text-decoration: none !important;
}

/* ─── CHECKOUT 2-column op desktop ─── */
@media (min-width: 980px) {
	.woocommerce-checkout form.checkout {
		display: grid;
		grid-template-columns: 1.2fr 1fr;
		gap: 40px;
		align-items: start;
	}
	.woocommerce-checkout form.checkout #customer_details { grid-column: 1; }
	.woocommerce-checkout form.checkout h3#order_review_heading,
	.woocommerce-checkout form.checkout #order_review {
		grid-column: 2;
	}
}

/* ─── PAYMENT BOX (Mollie iDEAL etc) ─── */
.payment_box {
	background: var(--cream) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--r-md, 12px) !important;
	padding: 16px 18px !important;
	font-size: .9rem;
}
.payment_box::before { display: none !important; }

/* ─── PRODUCT COUNT in shop ─── */
.woocommerce .woocommerce-result-count {
	color: var(--ink-soft);
	font-size: .9rem;
}
.woocommerce .woocommerce-ordering select {
	border: 1px solid var(--line) !important;
	border-radius: 999px !important;
	padding: 9px 14px !important;
	font-family: var(--f-body) !important;
	background: #fff;
}
