/* ==========================================================================
   Seraphine — WooCommerce
   ========================================================================== */

.wc-wrap { padding-bottom: clamp(80px, 10vw, 140px); }
.wc-wrap--product { padding-top: 26px; }
.breadcrumb { font-size: .68rem; letter-spacing: .18em; text-transform: uppercase; color: var(--s-muted); margin-bottom: 26px; }
.breadcrumb a:hover { color: var(--s-ink); }
.breadcrumb .sep { margin: 0 10px; opacity: .5; }

/* ---------- Forms ---------- */
.woocommerce input[type="text"], .woocommerce input[type="email"], .woocommerce input[type="tel"],
.woocommerce input[type="password"], .woocommerce input[type="number"], .woocommerce textarea,
.woocommerce select, .woocommerce .select2-container .select2-selection--single {
	width: 100%; background: transparent; border: 1px solid var(--line); border-radius: 0;
	padding: 14px 16px; font-size: .95rem; color: var(--s-ink); min-height: 50px; outline: 0;
	transition: border-color .3s;
}
.woocommerce input:focus, .woocommerce textarea:focus, .woocommerce select:focus { border-color: var(--s-ink); }
.woocommerce label { font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; margin-bottom: 6px; display: inline-block; }
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button,
.woocommerce #respond input#submit {
	background: var(--s-dark); color: var(--s-ivory); border-color: var(--s-dark);
}
.woocommerce .button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { background: var(--s-gold); border-color: var(--s-gold); color: var(--s-dark); }
.woocommerce .button.alt, .woocommerce button.button.alt, .woocommerce a.checkout-button, .woocommerce #place_order {
	background: var(--s-gold); border-color: var(--s-gold); color: var(--s-dark); width: 100%; padding-block: 20px;
}
.woocommerce .button.alt:hover, .woocommerce #place_order:hover { background: var(--s-dark); border-color: var(--s-dark); color: var(--s-ivory); }
.woocommerce .button:disabled, .woocommerce .button.disabled { opacity: .45; cursor: not-allowed; }

/* ---------- Notices ---------- */
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner {
	list-style: none; margin: 0 0 30px; padding: 18px 22px;
	background: var(--s-surface); border-left: 2px solid var(--s-gold);
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px;
	font-size: .95rem;
}
.woocommerce-error { border-color: #a23b2a; }
.woocommerce-message .button, .woocommerce-info .button { order: 2; padding: 12px 20px; }

/* ---------- Shop archive ---------- */
.chips--shop { margin: 0 auto 50px; padding-top: 0; }
.shop-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 0 0 26px; margin-bottom: 40px; border-bottom: 1px solid var(--line); }
.woocommerce-result-count { margin: 0; font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; color: var(--s-muted); }
.woocommerce-ordering { margin: 0; }
.woocommerce-ordering select { width: auto; min-height: 0; border: 0; border-bottom: 1px solid var(--line); padding: 8px 28px 8px 0; font-size: .8rem; letter-spacing: .08em; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231b1713'/%3E%3C/svg%3E") right center no-repeat; appearance: none; }
.woocommerce-pagination { margin-top: 70px; text-align: center; }
.woocommerce-pagination ul { list-style: none; display: inline-flex; gap: 8px; padding: 0; margin: 0; border: 0; }
.woocommerce-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 46px; height: 46px; border: 1px solid var(--line); font-size: .85rem; }
.woocommerce-pagination .page-numbers.current, .woocommerce-pagination a.page-numbers:hover { background: var(--s-ink); border-color: var(--s-ink); color: var(--s-ivory); }
.woocommerce-no-products-found { text-align: center; }

/* ---------- Single product ---------- */
.single-product div.product {
	display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr);
	gap: 0 clamp(40px, 6vw, 110px); align-items: start; position: relative;
}
.single-product div.product > * { grid-column: 1 / -1; }
.single-product div.product > .woocommerce-product-gallery { grid-column: 1; grid-row: 1; }
.single-product div.product > .summary { grid-column: 2; grid-row: 1; position: sticky; top: calc(var(--header-h) + 30px); padding-bottom: 40px; }
.single-product div.product > .onsale {
	grid-column: 1; grid-row: 1; justify-self: start; align-self: start; z-index: 5; margin: 20px;
	background: var(--s-dark); color: var(--s-gold); padding: 8px 14px; border-radius: 99px;
	font-size: .62rem; letter-spacing: .2em; text-transform: uppercase;
}

.woocommerce-product-gallery { position: relative; margin: 0; }
.woocommerce-product-gallery .flex-viewport, .woocommerce-product-gallery__wrapper { background: var(--s-surface); }
.woocommerce-product-gallery__wrapper { margin: 0; }
.woocommerce-product-gallery__image img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.woocommerce-product-gallery__image:first-child img { mix-blend-mode: multiply; }
.woocommerce-product-gallery__trigger {
	position: absolute; top: 20px; right: 20px; z-index: 5; width: 44px; height: 44px; border-radius: 50%;
	background: var(--s-bg); display: grid; place-items: center; font-size: 0;
}
.woocommerce-product-gallery__trigger::before { content: ""; width: 14px; height: 14px; border: 1px solid var(--s-ink); border-radius: 50%; }
.flex-control-thumbs { list-style: none; margin: 14px 0 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.flex-control-thumbs li { cursor: pointer; background: var(--s-surface); }
.flex-control-thumbs img { aspect-ratio: 1; object-fit: cover; opacity: .5; transition: opacity .4s; mix-blend-mode: multiply; }
.flex-control-thumbs img.flex-active, .flex-control-thumbs img:hover { opacity: 1; }

.sp-eyebrow { display: flex; gap: 18px; flex-wrap: wrap; }
.sp-eyebrow .eyebrow { margin-bottom: 14px; }
.summary .product_title { font-size: calc(clamp(2.8rem, 4.8vw, 4.6rem) * var(--s-h-scale)); line-height: .98; margin-bottom: 10px; font-weight: 300; }
.sp-tagline { font-family: var(--s-font-heading); font-style: italic; font-size: 1.45rem; color: var(--s-muted); margin-bottom: 18px; }
.summary .woocommerce-product-rating { display: flex; align-items: center; gap: 10px; font-size: .8rem; margin-bottom: 14px; }
.summary .price { font-family: var(--s-font-heading); font-size: 2rem; margin: 0 0 24px; }
.summary .price del { opacity: .45; font-size: .7em; margin-right: 8px; }
.summary .price ins { text-decoration: none; }
.woocommerce-product-details__short-description { color: var(--s-muted); margin-bottom: 24px; }

.sp-notes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0 0 28px; border-block: 1px solid var(--line); }
.sp-notes > div { padding: 18px 14px 18px 0; }
.sp-notes > div + div { padding-left: 16px; border-left: 1px solid var(--line); }
.sp-notes dt { font-size: .62rem; letter-spacing: .24em; text-transform: uppercase; color: var(--s-gold-deep); margin-bottom: 6px; }
.sp-notes dt::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--accent); margin-right: 8px; vertical-align: 1px; }
.sp-notes dd { margin: 0; font-family: var(--s-font-heading); font-size: 1.1rem; line-height: 1.35; }

.sp-box { margin: 0 0 28px; }
.sp-box .eyebrow { margin-bottom: 12px; }
.sp-box ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 10px; }
.sp-box a { display: flex; align-items: center; gap: 12px; padding: 8px; border: 1px solid var(--line); transition: border-color .3s; }
.sp-box a:hover { border-color: var(--c); }
.sp-box img { width: 54px; height: 54px; object-fit: cover; background: var(--s-surface); mix-blend-mode: multiply; }
.sp-box span { font-family: var(--s-font-heading); font-size: 1.15rem; line-height: 1.1; }
.sp-box small { display: block; font-family: var(--s-font-body); font-size: .68rem; color: var(--s-muted); margin-top: 3px; }

/* Add to cart */
.summary form.cart { display: flex; flex-wrap: wrap; gap: 12px; margin: 0 0 28px; }
.summary form.cart .gift-opt { flex: 1 0 100%; }
.quantity { display: inline-flex; align-items: center; border: 1px solid var(--line); height: 56px; }
.quantity .qty { width: 46px; border: 0 !important; text-align: center; background: transparent; min-height: 0 !important; padding: 0 !important; -moz-appearance: textfield; font-size: 1rem; }
.quantity .qty::-webkit-outer-spin-button, .quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; }
.qty-btn { width: 44px; height: 100%; display: grid; place-items: center; }
.qty-btn .icon { width: 14px; height: 14px; }
.qty-btn:hover { color: var(--s-gold-deep); }
.summary .single_add_to_cart_button { flex: 1; min-width: 200px; height: 56px; background: var(--s-dark); border-color: var(--s-dark); color: var(--s-ivory); }
.summary .single_add_to_cart_button:hover { background: var(--s-gold); border-color: var(--s-gold); color: var(--s-dark); }
.summary .single_add_to_cart_button.loading { opacity: .6; }
.stock { font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; }
.stock.out-of-stock { color: #a23b2a; }

.gift-opt { border: 1px dashed color-mix(in srgb, var(--s-gold) 70%, transparent); padding: 14px 16px; margin-bottom: 4px; background: color-mix(in srgb, var(--s-gold) 6%, transparent); }
.gift-opt__toggle { display: flex !important; align-items: center; gap: 12px; margin: 0 !important; cursor: pointer; text-transform: none !important; letter-spacing: 0 !important; font-size: .92rem !important; }
.gift-opt__toggle input { position: absolute; opacity: 0; pointer-events: none; }
.gift-opt__box { width: 18px; height: 18px; border: 1px solid var(--s-ink); flex-shrink: 0; display: grid; place-items: center; transition: background .3s; }
.gift-opt__toggle input:checked + .gift-opt__box { background: var(--s-ink); }
.gift-opt__toggle input:checked + .gift-opt__box::after { content: ""; width: 5px; height: 9px; border: solid var(--s-ivory); border-width: 0 1.5px 1.5px 0; transform: rotate(45deg) translate(-1px, -1px); }
.gift-opt__toggle input:focus-visible + .gift-opt__box { outline: 1px solid var(--s-gold); outline-offset: 2px; }
.gift-opt__toggle .icon { width: 20px; color: var(--s-gold-deep); flex-shrink: 0; }
.gift-opt__toggle em { font-style: normal; color: var(--s-gold-deep); font-size: .8rem; margin-left: 6px; letter-spacing: .06em; }
.gift-opt__note textarea { margin-top: 12px; min-height: 84px; background: var(--s-bg); }

.sp-promises { list-style: none; padding: 0; margin: 0 0 30px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 20px; }
.sp-promises li { display: flex; align-items: center; gap: 10px; font-size: .84rem; color: var(--s-muted); }
.sp-promises .icon { width: 20px; height: 20px; color: var(--s-gold-deep); flex-shrink: 0; }

.accordion { border-top: 1px solid var(--line); }
.accordion__item { border-bottom: 1px solid var(--line); }
.accordion__item summary {
	list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center;
	padding: 20px 0; font-size: .74rem; letter-spacing: .2em; text-transform: uppercase; font-weight: 500;
}
.accordion__item summary::-webkit-details-marker { display: none; }
.accordion__icon { width: 12px; height: 12px; position: relative; }
.accordion__icon::before, .accordion__icon::after { content: ""; position: absolute; left: 0; top: 50%; width: 100%; height: 1px; background: currentColor; transition: transform .4s var(--ease); }
.accordion__icon::after { transform: rotate(90deg); }
.accordion__item[open] .accordion__icon::after { transform: rotate(0); }
.accordion__body { padding: 0 0 24px; color: var(--s-muted); font-size: .96rem; }
.accordion__body table { width: 100%; border-collapse: collapse; }
.accordion__body th, .accordion__body td { text-align: left; padding: 8px 0; border-bottom: 1px solid var(--line); font-weight: 400; }

/* Below the fold */
.sp-reviews, .sp-related, .related.products, .upsells.products { margin-top: clamp(90px, 10vw, 150px); padding-top: clamp(60px, 7vw, 100px); border-top: 1px solid var(--line); }
.related.products > h2, .upsells.products > h2, .cross-sells > h2 {
	text-align: center; font-size: calc(clamp(2.2rem, 4.4vw, 3.8rem) * var(--s-h-scale)); margin-bottom: 60px;
}
.related .p-grid, .upsells .p-grid { --cols: 4; }
#reviews .woocommerce-Reviews-title { font-size: 2.4rem; }
#reviews ol.commentlist { list-style: none; padding: 0; margin: 30px 0 50px; display: grid; gap: 24px; }
#reviews .comment_container { display: flex; gap: 18px; padding: 24px; background: var(--s-surface); }
#reviews .comment_container img.avatar { width: 48px; height: 48px; border-radius: 50%; }
#reviews .comment-text { flex: 1; }
#reviews .meta { font-size: .8rem; color: var(--s-muted); }
.star-rating { position: relative; display: inline-block; width: 5.4em; height: 1.1em; font-size: .8rem; letter-spacing: .12em; overflow: hidden; line-height: 1; color: var(--s-gold); }
.star-rating::before { content: "★★★★★"; opacity: .25; position: absolute; left: 0; top: 0; }
.star-rating span { position: absolute; left: 0; top: 0; overflow: hidden; padding-top: 1.5em; }
.star-rating span::before { content: "★★★★★"; position: absolute; left: 0; top: 0; }
p.stars a { color: var(--s-gold); font-size: 0; }
p.stars a::before { content: "★"; font-size: 1.3rem; }
#review_form_wrapper { max-width: 680px; }
#review_form .comment-reply-title { font-family: var(--s-font-heading); font-size: 1.8rem; display: block; margin-bottom: 20px; }

/* Sticky add-to-bag bar */
.sticky-atc {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 45;
	background: color-mix(in srgb, var(--s-bg) 94%, transparent);
	-webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
	border-top: 1px solid var(--line);
	transform: translateY(110%); transition: transform .6s var(--ease);
}
.sticky-atc.is-visible { transform: none; }
.sticky-atc__row { display: flex; align-items: center; gap: 16px; padding-block: 12px; }
.sticky-atc img { width: 52px; height: 52px; object-fit: cover; background: var(--s-surface); mix-blend-mode: multiply; }
.sticky-atc__info { flex: 1; display: flex; flex-direction: column; line-height: 1.3; min-width: 0; }
.sticky-atc__info b { font-family: var(--s-font-heading); font-weight: 400; font-size: 1.3rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sticky-atc__info span { font-size: .9rem; color: var(--s-muted); }
.sticky-atc__info del { opacity: .5; }
.sticky-atc__info ins { text-decoration: none; }

/* ---------- Bag drawer (mini cart) ---------- */
.ship-progress { padding: 18px 28px; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--s-gold) 8%, transparent); }
.ship-progress p { margin: 0 0 10px; font-size: .85rem; }
.ship-progress__bar { display: block; height: 2px; background: var(--line); }
.ship-progress__bar i { display: block; height: 100%; background: var(--s-gold); transition: width 1s var(--ease); }
.drawer .widget_shopping_cart_content { display: flex; flex-direction: column; flex: 1; min-height: 100%; }
.woocommerce-mini-cart { list-style: none; margin: 0; padding: 10px 28px; flex: 1; }
.woocommerce-mini-cart-item {
	position: relative; display: grid; grid-template-columns: 76px 1fr; gap: 4px 16px;
	padding: 20px 30px 20px 0; border-bottom: 1px solid var(--line); font-size: .9rem;
}
.woocommerce-mini-cart-item > a:not(.remove) { display: contents; font-family: var(--s-font-heading); font-size: 1.3rem; line-height: 1.2; }
.woocommerce-mini-cart-item img { grid-row: span 3; width: 76px; height: 90px; object-fit: cover; background: var(--s-surface); mix-blend-mode: multiply; }
.woocommerce-mini-cart-item .quantity { border: 0; height: auto; color: var(--s-muted); font-size: .85rem; }
.woocommerce-mini-cart-item dl.variation { margin: 0; font-size: .78rem; color: var(--s-muted); display: grid; grid-template-columns: auto 1fr; gap: 0 6px; }
.woocommerce-mini-cart-item dl.variation dd, .woocommerce-mini-cart-item dl.variation p { margin: 0; }
.woocommerce-mini-cart-item .remove { position: absolute; right: 0; top: 20px; width: 22px; height: 22px; display: grid; place-items: center; font-size: 1.1rem; color: var(--s-muted); border-radius: 50%; }
.woocommerce-mini-cart-item .remove:hover { background: var(--s-ink); color: var(--s-ivory); }
.woocommerce-mini-cart__total { display: flex; justify-content: space-between; align-items: baseline; margin: 0; padding: 22px 28px 12px; border-top: 1px solid var(--line); font-size: .78rem; letter-spacing: .18em; text-transform: uppercase; }
.woocommerce-mini-cart__total .amount { font-family: var(--s-font-heading); font-size: 1.6rem; letter-spacing: 0; }
.woocommerce-mini-cart__buttons { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0; padding: 8px 28px 28px; }
.woocommerce-mini-cart__buttons .button { width: 100%; padding: 17px 10px; }
.woocommerce-mini-cart__buttons .checkout { background: var(--s-gold) !important; border-color: var(--s-gold) !important; color: var(--s-dark) !important; }
.woocommerce-mini-cart__empty-message { padding: 60px 28px; text-align: center; font-family: var(--s-font-heading); font-style: italic; font-size: 1.5rem; color: var(--s-muted); }
.drawer .blockUI.blockOverlay { background: var(--s-bg) !important; }

/* ---------- Cart & checkout (classic shortcodes) ---------- */
.woocommerce-cart-form { margin-bottom: 50px; }
table.shop_table { width: 100%; border-collapse: collapse; font-size: .95rem; }
table.shop_table th { font-size: .66rem; letter-spacing: .2em; text-transform: uppercase; font-weight: 500; text-align: left; padding: 14px 10px; border-bottom: 1px solid var(--s-ink); }
table.shop_table td { padding: 22px 10px; border-bottom: 1px solid var(--line); vertical-align: middle; }
table.shop_table .product-thumbnail img { width: 84px; height: 100px; object-fit: cover; background: var(--s-surface); mix-blend-mode: multiply; }
table.shop_table .product-name a { font-family: var(--s-font-heading); font-size: 1.35rem; }
table.shop_table .product-remove a { font-size: 1.3rem; color: var(--s-muted); }
table.shop_table td.actions { padding-top: 30px; }
.coupon { display: inline-flex; gap: 10px; }
.coupon input { width: 200px !important; }
.cart-collaterals { display: flex; justify-content: flex-end; }
.cart_totals { width: min(460px, 100%); background: var(--s-surface); padding: 34px; }
.cart_totals h2, #order_review_heading, .woocommerce-billing-fields h3, .woocommerce-additional-fields h3 { font-size: 2rem; }
.cart_totals th, .cart_totals td { border-bottom: 1px solid var(--line); padding: 14px 0; }
.order-total .amount { font-family: var(--s-font-heading); font-size: 1.6rem; }
.cross-sells { margin-bottom: 60px; }
.woocommerce-checkout { display: grid; grid-template-columns: 1.2fr 1fr; gap: 0 clamp(40px, 6vw, 90px); align-items: start; }
.woocommerce-checkout > .woocommerce-NoticeGroup, .woocommerce-checkout > .col2-set { grid-column: 1; }
.woocommerce-checkout #order_review_heading, .woocommerce-checkout #order_review { grid-column: 2; }
.woocommerce-checkout #order_review_heading { grid-row: 1; }
.woocommerce-checkout #order_review { grid-row: 2 / span 3; background: var(--s-surface); padding: 30px; position: sticky; top: calc(var(--header-h) + 20px); }
.col2-set .col-1, .col2-set .col-2 { width: 100%; }
.form-row { margin: 0 0 18px; }
.form-row-first, .form-row-last { width: calc(50% - 8px); display: inline-block; vertical-align: top; }
.form-row-first { margin-right: 12px; }
#payment ul.payment_methods { list-style: none; padding: 0; margin: 20px 0; }
#payment ul.payment_methods li { padding: 14px 0; border-bottom: 1px solid var(--line); }
#payment .payment_box { font-size: .88rem; color: var(--s-muted); padding: 10px 0 0; }
.woocommerce-privacy-policy-text { font-size: .8rem; color: var(--s-muted); }
.woocommerce-order-overview { list-style: none; padding: 24px; background: var(--s-surface); display: flex; flex-wrap: wrap; gap: 24px; }

/* ---------- Cart & checkout (blocks) ---------- */
.wc-block-cart, .wc-block-checkout { font-family: var(--s-font-body); }
.wc-block-components-product-name { font-family: var(--s-font-heading); font-size: 1.3rem !important; }
.wc-block-components-button:not(.is-link), .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
	background: var(--s-dark) !important; color: var(--s-ivory) !important; border-radius: 0 !important;
	text-transform: uppercase; letter-spacing: .2em; font-size: .74rem !important; min-height: 56px;
}
.wc-block-components-button:not(.is-link):hover { background: var(--s-gold) !important; color: var(--s-dark) !important; }
.wc-block-components-text-input input, .wc-block-components-combobox input, .wc-block-components-select select { border-radius: 0 !important; }
.wc-block-cart-item__image img { mix-blend-mode: multiply; background: var(--s-surface); }
.wc-block-components-sidebar { background: var(--s-surface); padding: 28px !important; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-family: var(--s-font-heading); font-size: 1.6rem; }

/* ---------- My Account ---------- */
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 240px 1fr; gap: 60px; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.woocommerce-MyAccount-navigation li a { display: block; padding: 14px 0; border-bottom: 1px solid var(--line); font-size: .74rem; letter-spacing: .18em; text-transform: uppercase; }
.woocommerce-MyAccount-navigation li.is-active a, .woocommerce-MyAccount-navigation a:hover { color: var(--s-gold-deep); }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
.u-columns.col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
.woocommerce-form-login, .woocommerce-form-register { padding: 36px; background: var(--s-surface); }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.single-product div.product { grid-template-columns: 1fr; }
	.single-product div.product > .woocommerce-product-gallery, .single-product div.product > .summary { grid-column: 1; }
	.single-product div.product > .summary { grid-row: auto; position: static; padding-top: 34px; }
	.related .p-grid, .upsells .p-grid { --cols: 2 !important; }
	.woocommerce-checkout { grid-template-columns: 1fr; }
	.woocommerce-checkout #order_review_heading, .woocommerce-checkout #order_review { grid-column: 1; grid-row: auto; position: static; }
	.woocommerce-account .woocommerce, .u-columns.col2-set { grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 760px) {
	.shop-toolbar { flex-direction: column; align-items: flex-start; gap: 10px; }
	.sp-notes { grid-template-columns: 1fr; }
	.sp-notes > div + div { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
	.sp-promises { grid-template-columns: 1fr; }
	.summary .single_add_to_cart_button { min-width: 0; }
	.sticky-atc img { display: none; }
	.sticky-atc .btn { padding-inline: 20px; }
	table.shop_table_responsive thead { display: none; }
	table.shop_table_responsive tr { display: block; border-bottom: 1px solid var(--line); padding: 12px 0; }
	table.shop_table_responsive td { display: flex; justify-content: space-between; border: 0; padding: 8px 0; text-align: right; }
	table.shop_table_responsive td::before { content: attr(data-title); font-size: .66rem; letter-spacing: .18em; text-transform: uppercase; }
	table.shop_table_responsive td.product-thumbnail::before, table.shop_table_responsive td.product-remove::before, table.shop_table_responsive td.actions::before { display: none; }
	.coupon { display: flex; flex-direction: column; width: 100%; }
	.coupon input { width: 100% !important; }
	.form-row-first, .form-row-last { width: 100%; margin-right: 0; }
	.cart_totals { padding: 24px; }
}
