/**
 * WooCommerce, restyled to the Dating Success design system.
 * Loaded only when WooCommerce is active.
 */

/* ------------------------------------------------------------------ */
/* Shared                                                              */
/* ------------------------------------------------------------------ */
.woocommerce-shell{padding-block:46px 86px}
.product-breadcrumbs{padding-block:22px 0;background:var(--navy-light);border-bottom:1px solid var(--line)}
.product-breadcrumbs .breadcrumbs{margin:0;padding-bottom:20px}
.woocommerce .container>.woocommerce-notices-wrapper:empty{display:none}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews,p.no-comments{
	display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;
	margin:0 0 26px;padding:16px 22px;list-style:none;
	border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:10px;
	background:#ffffff;color:var(--cream);font-size:12px;line-height:1.7}
.woocommerce-error{border-left-color:#e2725b}
.woocommerce-error li{width:100%}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{margin-left:auto;min-height:40px;padding:10px 20px;font-size:11px}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}

/* Buttons: WooCommerce classes inherit the theme button */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.wc-block-components-button{
	display:inline-flex;justify-content:center;align-items:center;gap:14px;
	min-height:48px;padding:13px 26px;
	background:linear-gradient(135deg,var(--gold-light,#ffe49a) 0%,var(--gold) 55%,var(--gold-deep,#d9a73a) 100%);
	color:#111a25;border:1px solid var(--gold-light,#ffe6a0);border-radius:8px;
	box-shadow:inset 0 1px 0 var(--gold-pale,#fff4c8),0 6px 24px #0002;
	font-family:var(--sans);font-size:12px;font-weight:700;line-height:1.4;letter-spacing:.02em;
	text-decoration:none;text-transform:none;
	transition:transform .2s,filter .2s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{filter:brightness(1.07);color:#111a25;transform:translateY(-2px)}
.woocommerce a.button.disabled,.woocommerce button.button:disabled,.woocommerce button.button.disabled,
.woocommerce input.button:disabled{opacity:.45;cursor:not-allowed;transform:none}
.woocommerce .button.wc-backward,.woocommerce a.added_to_cart{
	background:transparent;color:var(--gold);border:1px solid var(--gold);box-shadow:none}
.woocommerce a.added_to_cart{display:inline-flex;align-items:center;min-height:38px;padding:9px 16px;margin-top:9px;border-radius:8px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.woocommerce .button.loading::after{display:none}
.woocommerce .button.loading{opacity:.7}

/* Prices */
.woocommerce .price,.woocommerce span.amount,.woocommerce-Price-amount{
	font-family:var(--serif);color:var(--gold);letter-spacing:-.02em}
.woocommerce .price del,.woocommerce del .amount{color:#536477;opacity:1;font-size:.78em;margin-right:7px}
.woocommerce .price ins,.woocommerce ins{text-decoration:none;background:none;color:var(--gold)}
.cta-price{font-family:var(--serif);font-size:1.15em;letter-spacing:-.02em}
.cta-price del{display:none}

/* Star ratings */
.woocommerce .star-rating,.woocommerce p.stars a{color:var(--gold)}
.woocommerce .star-rating{font-size:11px;margin:0 auto 9px;float:none}
.woocommerce .woocommerce-product-rating{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.woocommerce .woocommerce-product-rating .star-rating{margin:0}
.woocommerce .woocommerce-review-link{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}

/* ------------------------------------------------------------------ */
/* Shop toolbar                                                        */
/* ------------------------------------------------------------------ */
.shop-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;
	margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.woocommerce .woocommerce-result-count{margin:0;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#536477}
.woocommerce .woocommerce-ordering{margin:0}
.woocommerce .woocommerce-ordering select{min-width:214px;font-size:12px}

/* ------------------------------------------------------------------ */
/* Product grid                                                        */
/* ------------------------------------------------------------------ */
.woocommerce ul.products,.shop-grid{
	display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;
	margin:0;padding:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products.columns-1{grid-template-columns:minmax(0,1fr)}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.woocommerce ul.products.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.woocommerce ul.products li.product,.shop-grid li.product{
	position:relative;display:flex;flex-direction:column;
	width:auto!important;margin:0!important;padding:10px 10px 26px;
	border:1px solid var(--line);border-radius:var(--radius);
	background:#ffffffb3;text-align:center;
	transition:transform .25s,border-color .25s,box-shadow .25s}
.woocommerce ul.products li.product:hover,.shop-grid li.product:hover{
	transform:translateY(-5px);border-color:#f3cb6966;box-shadow:0 18px 38px #0004}
.woocommerce ul.products li.product a img,.shop-grid li.product a img{
	width:100%;aspect-ratio:1.12;object-fit:cover;margin:0 0 18px;border-radius:9px;background:#fffcf6}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.shop-grid li.product .woocommerce-loop-product__title{
	padding:0 10px;margin:0 0 9px;font-family:var(--serif);font-size:20px;font-weight:700;
	line-height:1.2;letter-spacing:-.03em;color:var(--cream)}
.woocommerce ul.products li.product a:hover .woocommerce-loop-product__title{color:var(--gold)}
.woocommerce ul.products li.product .woocommerce-loop-category__title{
	padding:0 10px;font-family:var(--serif);font-size:20px;color:var(--cream)}
.woocommerce ul.products li.product .price,.shop-grid li.product .price{
	display:block;margin:0 0 16px;font-size:19px}
.woocommerce ul.products li.product .button,.shop-grid li.product .button{
	margin:auto 10px 0;min-height:44px;padding:12px 20px;font-size:11px}
.woocommerce ul.products li.product .onsale,.woocommerce span.onsale{
	position:absolute;top:18px;left:18px;right:auto;z-index:2;
	min-height:0;min-width:0;margin:0;padding:5px 13px;
	border-radius:20px;background:var(--gold);color:var(--ink);
	font-family:var(--sans);font-size:9px;font-weight:700;letter-spacing:.12em;
	line-height:1.5;text-transform:uppercase}
.woocommerce ul.products li.product .out-of-stock-flag{
	position:absolute;top:18px;right:18px;padding:5px 12px;border:1px solid var(--line);
	border-radius:20px;background:#fffdf8cc;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* Shop categories as cards */
.woocommerce ul.products li.product-category a{display:block}
.woocommerce ul.products li.product-category mark{background:none;color:var(--gold)}

/* ------------------------------------------------------------------ */
/* Single product                                                      */
/* ------------------------------------------------------------------ */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.woocommerce div.product .woocommerce-product-gallery{width:100%!important;float:none;margin:0;position:relative}
.woocommerce div.product .woocommerce-product-gallery__wrapper{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fffcf6}
.woocommerce div.product div.images img{border-radius:0}
.woocommerce div.product .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 0;padding:0;list-style:none}
.woocommerce div.product .flex-control-thumbs li{width:auto;margin:0;float:none}
.woocommerce div.product .flex-control-thumbs img{border:1px solid var(--line);border-radius:8px;opacity:.6;transition:opacity .2s,border-color .2s}
.woocommerce div.product .flex-control-thumbs img.flex-active,.woocommerce div.product .flex-control-thumbs img:hover{opacity:1;border-color:var(--gold)}
.woocommerce div.product .woocommerce-product-gallery__trigger{
	position:absolute;top:14px;right:14px;z-index:3;
	display:flex;justify-content:center;align-items:center;
	width:40px;height:40px;border:1px solid var(--line);border-radius:50%;
	background:#fffdf8d9;color:var(--gold);font-size:17px;text-indent:0}
.woocommerce div.product .summary{margin:0!important;width:auto!important;float:none}
.woocommerce div.product .product_title{
	margin:0 0 14px;font-family:var(--serif);font-size:clamp(30px,3.2vw,46px);
	font-weight:700;line-height:1.08;letter-spacing:-.04em;color:var(--cream)}
.woocommerce div.product p.price,.woocommerce div.product span.price{
	margin:0 0 22px;font-size:clamp(26px,2.4vw,34px);line-height:1.2}
.woocommerce div.product .woocommerce-product-details__short-description{
	padding-bottom:26px;margin-bottom:26px;border-bottom:1px solid var(--line);
	font-family:var(--serif);font-size:17px;line-height:1.65;color:#334155}
.woocommerce div.product .woocommerce-product-details__short-description p+p{margin-top:1em}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin:0 0 22px}
.woocommerce div.product form.cart .button{flex:1;min-width:210px}
.woocommerce div.product form.cart div.quantity{display:flex;margin:0;float:none}
.woocommerce .quantity input.qty{
	width:84px;height:100%;min-height:48px;padding:13px 8px;
	border:1px solid var(--line);border-radius:8px;background:#fffcf6;
	color:var(--cream);font-family:var(--sans);font-size:14px;text-align:center}
.woocommerce div.product form.cart .variations{width:100%;margin:0 0 6px;border-collapse:separate;border-spacing:0 14px}
.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{border:0;padding:0;vertical-align:middle}
.woocommerce div.product form.cart .variations label{
	margin:0;font-family:var(--sans);font-size:10px;font-weight:700;
	letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.woocommerce div.product form.cart .variations td.value{padding-left:16px}
.woocommerce div.product form.cart .reset_variations{display:inline-block;margin-top:8px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.woocommerce div.product .woocommerce-variation-price{margin-bottom:16px}
.woocommerce div.product .stock{font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.woocommerce div.product .stock.in-stock{color:#8fd1a8}
.woocommerce div.product .stock.out-of-stock{color:#e2947f}
.woocommerce div.product .product_meta{
	padding-top:22px;margin-top:4px;border-top:1px solid var(--line);
	font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#536477;line-height:2.1}
.woocommerce div.product .product_meta>span{display:block}
.woocommerce div.product .product_meta a{color:var(--gold)}
.woocommerce div.product .product_meta a:hover{text-decoration:underline;text-underline-offset:4px}

/* Reassurance line */
.product-trust{display:grid;gap:9px;margin:0 0 24px;padding:18px 20px;list-style:none;
	border:1px solid var(--line);border-radius:10px;background:#fffcf680}
.product-trust li{display:flex;align-items:center;gap:11px;font-size:11px;letter-spacing:.03em;color:#4b5667}
.product-trust svg{width:17px;height:17px;flex-shrink:0;fill:none;stroke:var(--gold);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}

/* Tabs */
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:18px}
.woocommerce div.product .woocommerce-tabs ul.tabs{
	display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0;border:0}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
	margin:0;padding:0;border:1px solid var(--line);border-radius:20px;background:transparent;box-shadow:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
	display:block;padding:9px 20px;font-family:var(--sans);font-size:10px;font-weight:700;
	letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--gold);border-color:var(--gold)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)}
.woocommerce div.product .woocommerce-tabs .panel{
	margin:0;padding:30px 32px;border:1px solid var(--line);border-radius:var(--radius);
	background:#ffffff80;font-size:13px;line-height:1.9;color:#334155}
.woocommerce div.product .woocommerce-tabs .panel>h2:first-child{display:none}
.woocommerce div.product .woocommerce-tabs .panel>*+*{margin-top:1.4em}
.woocommerce div.product .woocommerce-tabs .panel h2,.woocommerce div.product .woocommerce-tabs .panel h3{
	font-family:var(--serif);font-size:21px;color:var(--cream)}
.woocommerce table.shop_attributes{border:0;margin:0}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{
	padding:12px 16px;border:0;border-bottom:1px solid var(--line);background:none;font-style:normal}
.woocommerce table.shop_attributes th{
	width:30%;font-family:var(--sans);font-size:10px;font-weight:700;
	letter-spacing:.11em;text-transform:uppercase;color:var(--gold)}
.woocommerce table.shop_attributes td p{margin:0;padding:0}

/* Reviews */
.woocommerce #reviews #comments ol.commentlist{margin:0 0 30px;padding:0}
.woocommerce #reviews #comments ol.commentlist li{margin:0 0 16px;padding:0}
.woocommerce #reviews #comments ol.commentlist li .comment_container{
	display:flex;gap:16px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius);background:#fffcf666}
.woocommerce #reviews #comments ol.commentlist li img.avatar{
	position:static;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:none;flex-shrink:0}
.woocommerce #reviews #comments ol.commentlist li .comment-text{
	margin:0;padding:0;border:0;border-radius:0;min-height:0;width:100%}
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#536477;margin-bottom:10px}
.woocommerce #reviews #comments ol.commentlist li .comment-text .description{font-size:13px;line-height:1.85}
.woocommerce #review_form_wrapper{padding:28px 30px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff99}
.woocommerce #reviews #respond .comment-reply-title{display:block;margin-bottom:18px;font-family:var(--serif);font-size:22px}
.woocommerce #review_form #respond p{margin-bottom:16px}
.woocommerce #review_form #respond label{display:block;margin-bottom:7px;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--gold)}
.woocommerce p.stars{margin-bottom:14px}
.woocommerce .comment-form-rating label{margin-bottom:7px}

/* Related and up sells */
.woocommerce .related,.woocommerce .upsells,.woocommerce .cross-sells{grid-column:1/-1;margin-top:64px}
.woocommerce .related>h2,.woocommerce .upsells>h2,.woocommerce .cross-sells>h2{
	margin:0 0 26px;padding-bottom:18px;border-bottom:1px solid var(--line);
	font-family:var(--serif);font-size:clamp(24px,2.4vw,32px);letter-spacing:-.03em}

/* ------------------------------------------------------------------ */
/* Cart                                                               */
/* ------------------------------------------------------------------ */
.woocommerce table.shop_table{
	margin:0 0 30px;border:1px solid var(--line);border-collapse:collapse;border-radius:var(--radius);overflow:hidden;font-size:12px}
.woocommerce table.shop_table th{
	padding:15px 18px;background:#fff2dc;border:0;border-bottom:1px solid var(--line);
	font-family:var(--sans);font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold)}
.woocommerce table.shop_table td{padding:18px;border:0;border-bottom:1px solid #f3cb6914;vertical-align:middle;color:#334155}
.woocommerce table.shop_table tbody tr:last-child td{border-bottom:0}
.woocommerce table.shop_table_responsive tr:nth-child(2n) td,
.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td{background:transparent}
.woocommerce table.cart img,.woocommerce-page table.cart img{width:74px;border-radius:7px}
.woocommerce a.remove{
	display:flex;justify-content:center;align-items:center;width:28px;height:28px;
	border:1px solid var(--line);border-radius:50%;color:var(--gold)!important;font-size:16px;line-height:1}
.woocommerce a.remove:hover{background:var(--gold);color:var(--ink)!important}
.woocommerce table.cart td.product-name a{font-family:var(--serif);font-size:16px;color:var(--cream)}
.woocommerce table.cart td.product-name a:hover{color:var(--gold)}
.woocommerce table.cart td.product-name dl.variation{margin:7px 0 0;font-size:10px;color:var(--muted)}
.woocommerce table.cart td.product-name dl.variation dt,
.woocommerce table.cart td.product-name dl.variation dd{display:inline;margin:0}
.woocommerce table.cart td.actions{padding:20px 18px}
.woocommerce .cart .actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.woocommerce .coupon{display:flex;gap:10px;flex-wrap:wrap}
.woocommerce #content table.cart td.actions .input-text,.woocommerce table.cart td.actions .input-text{width:198px!important;min-width:0}
.woocommerce .cart-collaterals{display:grid;gap:26px;justify-content:end}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{
	width:100%;max-width:420px;float:none;padding:26px 28px;
	border:1px solid var(--line);border-radius:var(--radius);background:#ffffff99}
.woocommerce .cart_totals h2{margin:0 0 18px;font-family:var(--serif);font-size:23px}
.woocommerce .cart_totals table.shop_table{border:0;margin:0}
.woocommerce .cart_totals table.shop_table th{background:none;border-bottom:1px solid #f3cb6914;padding:14px 0;width:46%}
.woocommerce .cart_totals table.shop_table td{padding:14px 0;border-bottom:1px solid #f3cb6914;text-align:right}
.woocommerce .cart_totals tr.order-total th,.woocommerce .cart_totals tr.order-total td{border-bottom:0;padding-top:18px}
.woocommerce .cart_totals tr.order-total .amount{font-size:23px}
.woocommerce .wc-proceed-to-checkout{padding:22px 0 0}
.woocommerce .wc-proceed-to-checkout a.checkout-button{display:flex;width:100%;font-size:13px;min-height:52px}
.woocommerce .shipping-calculator-button{color:var(--gold);font-size:11px;text-decoration:underline;text-underline-offset:4px}
.woocommerce ul#shipping_method{margin:0;padding:0;list-style:none;font-size:11px}
.woocommerce ul#shipping_method li{padding:4px 0}
.woocommerce .cart-empty,.woocommerce .return-to-shop{text-align:center}
.woocommerce .cart-empty{font-family:var(--serif);font-size:22px;margin-bottom:22px}
.woocommerce .return-to-shop{margin-bottom:40px}

/* ------------------------------------------------------------------ */
/* Checkout                                                           */
/* ------------------------------------------------------------------ */
.woocommerce form.checkout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:46px;align-items:start}
.woocommerce form.checkout #customer_details{grid-column:1}
.woocommerce form.checkout h3,.woocommerce-checkout h3#order_review_heading{
	margin:0 0 20px;font-family:var(--serif);font-size:24px;letter-spacing:-.03em}
.woocommerce form.checkout #order_review_heading,.woocommerce form.checkout #order_review{grid-column:2}
.woocommerce form.checkout #order_review{
	padding:26px 28px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff99}
.woocommerce form .form-row{margin:0 0 16px;padding:0}
.woocommerce form .form-row label{display:block;margin-bottom:7px;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--gold)}
.woocommerce form .form-row label.checkbox{letter-spacing:.03em;text-transform:none;font-weight:400;font-size:11px;color:var(--muted);display:flex;gap:9px;align-items:flex-start}
.woocommerce form .form-row .required{color:var(--gold);text-decoration:none}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
.woocommerce form .form-row select,.woocommerce-page form .form-row input.input-text{
	width:100%;padding:13px 16px;border:1px solid var(--line);border-radius:8px;
	background:#fffcf6;color:var(--cream);font-family:var(--sans);font-size:13px;line-height:1.5;box-shadow:none}
.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select{border-color:#e2725b}
.woocommerce form .form-row.woocommerce-validated input.input-text{border-color:#4f8f68}
.woocommerce .select2-container--default .select2-selection--single{
	height:auto;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fffcf6}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--cream);line-height:1.5;padding:0}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{top:12px;right:10px}
.select2-dropdown{background:#ffffff;border:1px solid var(--line);color:var(--cream)}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--gold);color:var(--ink)}
.select2-search--dropdown .select2-search__field{background:#fffcf6;border:1px solid var(--line);color:var(--cream);border-radius:6px;padding:9px}
.woocommerce-checkout #payment{background:transparent;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{margin:0 0 20px;padding:20px 0 0;border-top:1px solid var(--line)}
.woocommerce-checkout #payment ul.payment_methods li{margin-bottom:12px;font-size:12px;list-style:none}
.woocommerce-checkout #payment ul.payment_methods label{display:inline;font-size:12px;letter-spacing:0;text-transform:none;color:var(--cream)}
.woocommerce-checkout #payment div.payment_box{
	margin-top:12px;padding:16px 18px;background:#fffcf6;border:1px solid var(--line);border-radius:10px;
	font-size:11px;line-height:1.8;color:var(--muted)}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment div.form-row{padding:0}
.woocommerce-checkout #payment #place_order{width:100%;min-height:54px;font-size:13px}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin-bottom:18px;font-size:11px}
.woocommerce-checkout-review-order-table tfoot th,.woocommerce-checkout-review-order-table tfoot td{
	padding:14px 0;border-bottom:1px solid #f3cb6914;background:none}
.woocommerce-checkout-review-order-table tfoot tr:last-child th,
.woocommerce-checkout-review-order-table tfoot tr:last-child td{border-bottom:0}
.woocommerce-checkout-review-order-table{border:0;margin-bottom:8px}
.woocommerce-checkout-review-order-table th{background:none;border-bottom:1px solid var(--line)}
.woocommerce-checkout-review-order-table td{padding:14px 0}
.woocommerce-checkout-review-order-table .order-total .amount{font-size:21px}
.woocommerce-form-login,.woocommerce-form-coupon{
	padding:24px 26px;margin-bottom:26px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff80}
.woocommerce-privacy-policy-text{font-size:11px;color:var(--muted);line-height:1.8}

/* Order received */
.woocommerce .woocommerce-order{display:grid;gap:26px}
.woocommerce ul.order_details{
	display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;
	margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--line)}
.woocommerce ul.order_details li{
	margin:0;padding:20px 22px;border:0;background:#ffffff;float:none;
	font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#536477}
.woocommerce ul.order_details li strong{
	display:block;margin-top:8px;font-family:var(--serif);font-size:17px;letter-spacing:-.02em;text-transform:none;color:var(--cream)}
.woocommerce .woocommerce-order-details h2,.woocommerce .woocommerce-customer-details h2,
.woocommerce .woocommerce-column__title{margin:0 0 18px;font-family:var(--serif);font-size:24px}
.woocommerce .woocommerce-customer-details address{
	padding:20px 22px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff80;font-size:12px;line-height:1.9;font-style:normal}
.woocommerce-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:26px}

/* ------------------------------------------------------------------ */
/* My account                                                         */
/* ------------------------------------------------------------------ */
.woocommerce-account .woocommerce-MyAccount-navigation{width:26%;float:left;padding-right:34px}
.woocommerce-account .woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none}
.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid #f3cb6914}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
	display:block;padding:13px 2px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{color:var(--gold)}
.woocommerce-account .woocommerce-MyAccount-content{width:74%;float:right;font-size:13px;line-height:1.85}
.woocommerce-account .woocommerce-MyAccount-content p{margin-bottom:1.2em}
.woocommerce-account .woocommerce-MyAccount-content a:not(.button){color:var(--gold);text-decoration:underline;text-underline-offset:4px}
.woocommerce-account .woocommerce-MyAccount-content::after{content:'';display:table;clear:both}
.woocommerce-account fieldset{margin-top:26px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius)}
.woocommerce-account legend{padding:0 10px;font-family:var(--serif);font-size:18px;color:var(--gold)}
.woocommerce-form-row{margin-bottom:16px}
.woocommerce .woocommerce-form__label-for-checkbox{display:flex;gap:9px;align-items:flex-start;font-size:11px;color:var(--muted)}
.woocommerce-LostPassword{font-size:11px}
.woocommerce-LostPassword a{color:var(--gold)}
.woocommerce .col2-set,.woocommerce-page .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:34px;width:100%}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-1,.woocommerce-page .col2-set .col-2{width:auto;float:none}

/* ------------------------------------------------------------------ */
/* Widgets                                                            */
/* ------------------------------------------------------------------ */
.widget.woocommerce ul.product_list_widget li,.widget ul.product_list_widget li{
	display:flex;gap:13px;align-items:center;padding-block:12px}
.widget ul.product_list_widget li img{width:52px;height:52px;object-fit:cover;border-radius:7px;margin:0;float:none}
.widget ul.product_list_widget li a{display:block;font-family:var(--serif);font-size:14px;line-height:1.3;color:var(--cream)}
.widget ul.product_list_widget li a:hover{color:var(--gold)}
.widget ul.product_list_widget li .amount{font-size:13px}
.widget ul.product_list_widget li del .amount{font-size:11px}
.widget_price_filter .price_slider_wrapper .ui-widget-content{background:#fffcf6;border-radius:20px;height:5px}
.widget_price_filter .ui-slider .ui-slider-range{background:var(--gold)}
.widget_price_filter .ui-slider .ui-slider-handle{
	width:15px;height:15px;top:-5px;background:var(--gold);border-radius:50%;border:0}
.widget_price_filter .price_slider_amount{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;font-size:11px}
.widget_price_filter .price_slider_amount .button{order:2;min-height:40px;padding:10px 18px;font-size:10px;float:none}
.widget_price_filter .price_slider_amount .price_label{order:1;margin-right:auto;color:var(--muted)}
.woocommerce .widget_shopping_cart .total,.woocommerce.widget_shopping_cart .total{
	padding:14px 0 0;margin-top:12px;border-top:1px solid var(--line);font-size:12px}
.woocommerce .widget_shopping_cart .buttons{display:grid;gap:9px;margin-top:14px}
.woocommerce .widget_shopping_cart .buttons a{width:100%;min-height:42px;padding:11px 16px;font-size:11px}
.widget_layered_nav ul li.chosen a,.widget_layered_nav_filters ul li a{color:var(--gold)}
.woocommerce-widget-layered-nav-dropdown__submit{margin-top:12px}

/* ------------------------------------------------------------------ */
/* Responsive                                                         */
/* ------------------------------------------------------------------ */
@media(max-width:1100px){
	.woocommerce div.product{gap:38px}
	.woocommerce ul.products,.shop-grid{gap:20px}
	.woocommerce ul.products.columns-4{grid-template-columns:repeat(3,minmax(0,1fr))}
	.woocommerce form.checkout{gap:32px}
}
@media(max-width:900px){
	.woocommerce div.product{grid-template-columns:minmax(0,1fr);gap:30px}
	.woocommerce form.checkout{grid-template-columns:minmax(0,1fr)}
	.woocommerce form.checkout #customer_details,
	.woocommerce form.checkout #order_review_heading,
	.woocommerce form.checkout #order_review{grid-column:1}
	.woocommerce .cart-collaterals{justify-content:stretch}
	.woocommerce .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{max-width:none}
}
@media(max-width:860px){
	.woocommerce ul.products,.shop-grid,
	.woocommerce ul.products.columns-3,.woocommerce ul.products.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}
	.woocommerce div.product .product_title{font-size:32px}
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none;padding:0}
	.woocommerce-account .woocommerce-MyAccount-navigation{margin-bottom:30px}
	.woocommerce .col2-set,.woocommerce-page .col2-set{grid-template-columns:1fr;gap:24px}
}
@media(max-width:600px){
	.woocommerce-shell{padding-block:34px 56px}
	.woocommerce ul.products,.shop-grid,
	.woocommerce ul.products.columns-2,.woocommerce ul.products.columns-3,
	.woocommerce ul.products.columns-4{grid-template-columns:1fr;gap:18px}
	.woocommerce ul.products li.product,.shop-grid li.product{padding:9px 9px 22px}
	.woocommerce ul.products li.product a img,.shop-grid li.product a img{aspect-ratio:1.25}
	.shop-toolbar{flex-direction:column;align-items:stretch}
	.woocommerce .woocommerce-ordering select{width:100%;min-width:0}
	.woocommerce div.product form.cart{gap:10px}
	.woocommerce div.product form.cart .button{min-width:0;width:100%;flex:1 0 100%}
	.woocommerce .quantity input.qty{width:100%}
	.woocommerce div.product form.cart div.quantity{width:100%}
	.woocommerce div.product .woocommerce-tabs .panel{padding:22px 20px}
	.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:8px 15px;font-size:9px}
	.woocommerce table.shop_table_responsive thead{display:none}
	.woocommerce table.shop_table_responsive tr{display:block;padding:16px 0;border-bottom:1px solid #f3cb6914}
	.woocommerce table.shop_table_responsive tr td{
		display:flex;justify-content:space-between;align-items:center;gap:14px;
		padding:7px 16px;border:0;text-align:right}
	.woocommerce table.shop_table_responsive tr td::before{
		content:attr(data-title);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
	.woocommerce table.shop_table_responsive tr td.product-remove::before{content:''}
	.woocommerce table.shop_table_responsive tr td.actions{display:block;padding-top:16px}
	.woocommerce .cart .actions{flex-direction:column;align-items:stretch}
	.woocommerce .coupon{flex-direction:column}
	.woocommerce #content table.cart td.actions .input-text,
	.woocommerce table.cart td.actions .input-text{width:100%!important}
	.woocommerce .cart .actions .button{width:100%}
	.woocommerce ul.order_details{grid-template-columns:1fr}
	.woocommerce #reviews #comments ol.commentlist li .comment_container{flex-direction:column;gap:12px;padding:18px}
	.woocommerce .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{padding:22px 20px}
	.woocommerce form.checkout #order_review{padding:22px 20px}
	.woocommerce-form-login,.woocommerce-form-coupon{padding:20px}
}

/* A price shown inside a solid gold button must use the dark ink colour,
   otherwise it is gold on gold. Outline buttons keep the gold. */
.button .cta-price,
.button .cta-price .amount,
.button .cta-price .woocommerce-Price-amount,
.button .cta-price bdi{color:#111a25}
.button-outline .cta-price,
.button-outline .cta-price .amount,
.button-outline .cta-price .woocommerce-Price-amount,
.button-outline .cta-price bdi{color:var(--gold)}

/* Safety net: WooCommerce normally renders a placeholder image, but if a
   product card has no image the sale badge must not sit on the title. */
.woocommerce ul.products li.product:not(:has(img)) .onsale,
.shop-grid li.product:not(:has(img)) .onsale{
	position:static;display:inline-block;margin:4px 0 12px}
