/* WooCommerce presentation for NextKat Market. */

.woocommerce .dgz-icon { pointer-events: none; }
.commerce-page { min-height: 60vh; padding-bottom: 85px; background: #f7f7fa; }
.commerce-page > .woocommerce-breadcrumb,
.commerce-page > .woocommerce-notices-wrapper,
.commerce-page > .woocommerce-products-header,
.commerce-page > .page-title,
.commerce-page > .woocommerce-result-count,
.commerce-page > .woocommerce-ordering,
.commerce-page > ul.products,
.commerce-page > .woocommerce-pagination,
.commerce-page > div.product,
.commerce-page > .term-description { width: min(calc(100% - 48px), var(--dgz-container)); margin-right: auto; margin-left: auto; }

.woocommerce-breadcrumb { padding: 20px 0 14px !important; color: #92929f !important; font-size: .68rem !important; }
.woocommerce-breadcrumb a { color: #666674 !important; }.woocommerce-breadcrumb a:hover { color: var(--dgz-violet) !important; }.breadcrumb-separator { margin: 0 8px; color: #b9b9c4; }
.woocommerce-products-header { margin-bottom: 25px !important; padding: 36px 42px; border-radius: 20px; background: radial-gradient(circle at 85%,rgba(99,219,229,.22),transparent 28%),linear-gradient(125deg,#161724,#292545); color: #fff; }
.woocommerce-products-header__title { margin: 0 !important; color: #fff; font-size: clamp(2.1rem,4vw,3.5rem); }.term-description { color: #bfc0d0; }.term-description p { max-width: 680px; margin: 10px 0 0; color: inherit; }
.woocommerce-result-count { width: auto !important; margin-top: 11px !important; color: #858591; font-size: .69rem; }
.woocommerce-ordering { width: auto !important; margin-top: 0 !important; }.woocommerce-ordering select { min-width: 205px; height: 42px; padding: 0 35px 0 12px; border: 1px solid var(--dgz-line); border-radius: 9px; outline: 0; background: #fff; font-size: .71rem; }.woocommerce-ordering select:focus { border-color: var(--dgz-violet); box-shadow: 0 0 0 3px rgba(104,71,245,.09); }

.woocommerce ul.products { clear: both; display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; padding-top: 18px !important; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { position: relative; width: auto !important; min-width: 0; float: none !important; overflow: hidden; margin: 0 !important; padding: 0 0 17px !important; border: 1px solid #e9e9ef; border-radius: 16px; background: #fff; box-shadow: 0 7px 26px rgba(24,22,52,.045); transition: transform var(--dgz-transition),box-shadow var(--dgz-transition),border-color var(--dgz-transition); }
.woocommerce ul.products li.product:hover { transform: translateY(-5px); border-color: #d9d2fd; box-shadow: 0 21px 45px rgba(26,23,62,.12); }
.woocommerce ul.products li.product a img { width: 100%; aspect-ratio: 1/.88; margin: 0 0 15px !important; object-fit: cover; background: #f3f3f7; transition: transform .4s ease; }.woocommerce ul.products li.product:hover a img { transform: scale(1.025); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 42px; margin: 0; padding: 0 16px !important; color: var(--dgz-ink); font-size: .9rem !important; line-height: 1.35; }
.woocommerce ul.products li.product .price { min-height: 38px; display: flex !important; flex-direction: column; justify-content: end; margin: 9px 16px 0 !important; padding-top: 10px; border-top: 1px solid #f0f0f4; color: var(--dgz-ink) !important; font-size: 1rem !important; font-weight: 820 !important; }.woocommerce ul.products li.product .price del { color: #9b9ba7 !important; font-size: .66rem; }.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button { width: calc(100% - 32px); min-height: 40px; margin: 12px 16px 0 !important; padding: 0 13px !important; border-radius: 10px !important; background: var(--dgz-violet-soft) !important; color: var(--dgz-violet-dark) !important; font-size: .7rem !important; }.woocommerce ul.products li.product .button:hover { background: var(--dgz-violet) !important; color: #fff !important; }.woocommerce ul.products li.product .added_to_cart { display: block; margin: 7px 16px 0; color: var(--dgz-violet); font-size: .66rem; font-weight: 700; text-align: center; }
.woocommerce span.onsale { z-index: 3; min-width: 0 !important; min-height: 0 !important; margin: 10px 0 0 10px !important; padding: 7px 9px !important; border-radius: 7px !important; background: var(--dgz-orange) !important; font-size: .58rem !important; line-height: 1 !important; box-shadow: 0 6px 15px rgba(255,107,53,.22); }
.woocommerce .star-rating { color: #f4aa1e; font-size: .72rem; }
.woocommerce nav.woocommerce-pagination { clear: both; padding-top: 36px; }.woocommerce nav.woocommerce-pagination ul { display: inline-flex; gap: 5px; border: 0 !important; }.woocommerce nav.woocommerce-pagination ul li { border: 0 !important; }.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span { min-width: 39px; height: 39px; display: grid; place-items: center; padding: 0 !important; border: 1px solid var(--dgz-line); border-radius: 8px; background: #fff; color: var(--dgz-ink); font-size: .72rem; }.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover { border-color: var(--dgz-violet); background: var(--dgz-violet); color: #fff; }

/* Notices and shared form controls */
.woocommerce-message,.woocommerce-info,.woocommerce-error { margin: 18px auto !important; padding: 16px 18px 16px 48px !important; border: 0 !important; border-radius: 11px; background: #fff !important; color: var(--dgz-ink) !important; box-shadow: var(--dgz-shadow-sm); font-size: .76rem; }.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before { top: 16px !important; left: 18px !important; color: var(--dgz-green) !important; }.woocommerce-info::before { color: var(--dgz-violet) !important; }.woocommerce-error::before { color: #d84259 !important; }.woocommerce-error { border-left: 3px solid #d84259 !important; }.woocommerce-message { border-left: 3px solid var(--dgz-green) !important; }.woocommerce-info { border-left: 3px solid var(--dgz-violet) !important; }.woocommerce-message .button { min-height: 34px; }
.woocommerce form .form-row { margin-bottom: 13px; }.woocommerce form .form-row label { margin-bottom: 5px; color: #545462; font-size: .7rem; font-weight: 700; }.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce .select2-container .select2-selection--single { min-height: 45px; padding: 10px 12px; border: 1px solid #dedee7; border-radius: 9px; background: #fff; font-size: .78rem; outline: 0; }.woocommerce form .form-row textarea { min-height: 110px; }.woocommerce form .form-row input:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus { border-color: var(--dgz-violet); box-shadow: 0 0 0 3px rgba(104,71,245,.09); }.woocommerce .select2-container .select2-selection--single .select2-selection__rendered { padding: 0; line-height: 23px; }.woocommerce .select2-container .select2-selection--single .select2-selection__arrow { top: 9px; }
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	min-height: 44px;
	padding: 0 19px !important;
	border-radius: var(--dgz-radius-sm) !important;
	background: var(--dgz-ink) !important;
	color: #fff !important;
	font-size: .82rem !important;
	font-weight: 760 !important;
	line-height: 1.2 !important;
	text-align: center;
	white-space: normal;
}
.woocommerce button.button,
.woocommerce a.button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover { background: var(--dgz-orange) !important; color: var(--dgz-ink) !important; }
.woocommerce button.button:focus-visible,
.woocommerce a.button:focus-visible,
.woocommerce input.button:focus-visible { outline: 2px solid var(--dgz-orange); outline-offset: 3px; }
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt { background: var(--dgz-orange) !important; color: var(--dgz-ink) !important; box-shadow: none; }
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover { background: var(--dgz-violet-dark) !important; color: #fff !important; }

/* Product detail */
.commerce-page > div.product { padding-top: 28px; }
.woocommerce div.product { display: flow-root; }
.woocommerce div.product div.images { width: 51% !important; }.woocommerce div.product div.summary { width: 43% !important; padding: 12px 0; }
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper { overflow: hidden; border: 1px solid var(--dgz-line); border-radius: 19px; background: #fff; }.woocommerce div.product div.images img { background: #f5f5f8; }.woocommerce div.product div.images .flex-control-thumbs { display: grid; grid-template-columns: repeat(5,1fr); gap: 8px; margin-top: 10px !important; }.woocommerce div.product div.images .flex-control-thumbs li { width: auto !important; float: none !important; overflow: hidden; border: 1px solid var(--dgz-line); border-radius: 9px; }.woocommerce div.product div.images .flex-control-thumbs li img { aspect-ratio: 1; object-fit: cover; }
.woocommerce div.product .product_title { margin: 0 0 10px; font-size: clamp(2rem,3.6vw,3.2rem); }.woocommerce div.product .woocommerce-product-rating { display: flex; align-items: center; gap: 9px; margin-bottom: 15px; }.woocommerce div.product .woocommerce-review-link { color: #888894; font-size: .67rem; }.woocommerce div.product p.price,.woocommerce div.product span.price { margin: 14px 0; color: var(--dgz-violet) !important; font-size: 1.7rem !important; font-weight: 850; }.woocommerce div.product p.price del { color: #9999a5; font-size: .85rem; }.woocommerce div.product p.price ins { text-decoration: none; }.woocommerce div.product .woocommerce-product-details__short-description { padding: 17px 0; border-top: 1px solid var(--dgz-line); border-bottom: 1px solid var(--dgz-line); }.woocommerce div.product .woocommerce-product-details__short-description p { margin: 0; font-size: .84rem; }
.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; gap: 9px; margin: 24px 0 15px !important; }.woocommerce .quantity .qty { width: 66px !important; min-height: 50px; border: 1px solid var(--dgz-line); border-radius: 10px; outline: 0; }.woocommerce div.product form.cart .button { min-height: 50px; flex: 1; }.woocommerce div.product form.cart .variations { flex-basis: 100%; margin-bottom: 13px; }.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td { padding: 6px 0; }.woocommerce div.product form.cart .variations label { font-size: .72rem; }.woocommerce div.product form.cart .variations select { min-height: 44px; padding: 0 10px; border: 1px solid var(--dgz-line); border-radius: 9px; }.woocommerce div.product .product_meta { display: grid; gap: 5px; padding: 15px; border-radius: 10px; background: var(--dgz-soft); color: #858591; font-size: .66rem; }.woocommerce div.product .product_meta a { color: var(--dgz-violet); }
.dgz-customization { flex: 1 0 100%; min-width: 0; margin: 0 0 10px; padding: 18px; border: 1px solid var(--dgz-line); border-radius: 11px; background: var(--dgz-soft); }
.dgz-customization legend { padding: 0 7px; color: var(--dgz-ink); font-family: Manrope, Inter, ui-sans-serif, sans-serif; font-size: 1rem; font-weight: 800; }
.dgz-customization__intro { margin: 0 0 15px; color: var(--dgz-muted); font-size: .76rem; line-height: 1.55; }
.dgz-customization__field + .dgz-customization__field { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--dgz-line); }
.dgz-customization__field > label { display: block; margin-bottom: 7px; color: var(--dgz-ink); font-size: .78rem; font-weight: 750; }
.dgz-customization__field > label span { color: #b42318; }
.dgz-customization__field input[type="text"],.dgz-customization__control { width: 100%; min-height: 48px; padding: 0 13px; border: 1px solid #d7d7d0; border-radius: 9px; background: var(--dgz-surface); color: var(--dgz-ink); font-size: .85rem; outline: 0; }
/* Generic choices deliberately use the project-wide native select contract. */
.dgz-customization select.dgz-customization__control { cursor: pointer; }
.dgz-customization textarea.dgz-customization__control { min-height: 112px; padding-block: 11px; line-height: 1.5; resize: none; }
.dgz-customization__field input[type="text"]:focus,.dgz-customization__control:focus { border-color: var(--dgz-orange); box-shadow: 0 0 0 3px rgba(255, 90, 31, .1); }
.dgz-customization__control[aria-invalid="true"],.dgz-customization__field input[aria-invalid="true"] { border-color: #b42318; }
.dgz-customization__field > .dgz-customization__help { margin-top: 7px; margin-bottom: 0; }
.dgz-customization__meta { display: flex; justify-content: space-between; gap: 14px; margin-top: 7px; color: var(--dgz-muted); line-height: 1.45; }
.dgz-customization__meta small:first-child { max-width: 78%; }
.dgz-customization__meta small:last-child { flex: 0 0 auto; font-variant-numeric: tabular-nums; }
.dgz-customization__help { margin: 0 0 10px; color: var(--dgz-muted); font-size: .7rem; line-height: 1.55; }
.dgz-customization__picker { padding: 10px; border: 1px dashed #bdbdb5; border-radius: 9px; background: var(--dgz-surface); }
.dgz-customization__picker input[type="file"] { width: 100%; min-height: 46px; color: var(--dgz-muted); font-size: .72rem; }
.dgz-customization__picker input[type="file"]::file-selector-button { min-height: 44px; margin-right: 10px; padding: 0 14px; border: 1px solid var(--dgz-line); border-radius: 8px; background: var(--dgz-surface); color: var(--dgz-ink); cursor: pointer; font: inherit; font-weight: 750; }
.dgz-customization__picker input[type="file"]::file-selector-button:hover { border-color: var(--dgz-orange); background: var(--dgz-orange-soft); }
.dgz-customization__file-status { margin-top: 9px; color: var(--dgz-ink); font-size: .73rem; font-weight: 700; }
.dgz-customization__file-list { display: grid; gap: 5px; margin: 8px 0 0; padding: 0; list-style: none; }
.dgz-customization__file-list li { overflow: hidden; padding: 7px 9px; border-radius: 7px; background: var(--dgz-surface); color: var(--dgz-muted); font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.dgz-customization__clear { min-height: 44px; margin-top: 7px; padding: 0; border: 0; background: transparent; color: var(--dgz-ink); cursor: pointer; font-size: .72rem; font-weight: 750; text-decoration: underline; text-decoration-color: var(--dgz-orange); text-underline-offset: 3px; }
.dgz-customization__error { margin: 8px 0 0; padding: 9px 10px; border-left: 3px solid #b42318; border-radius: 7px; background: #fff1f0; color: #8f1d15; font-size: .72rem; font-weight: 650; }
.dgz-customization [hidden] { display: none !important; }
.woocommerce td.product-name dl.variation dd p { margin: 0; }
.product-assurance { display: grid; grid-template-columns: 1fr; gap: 8px; margin: 14px 0; }.product-assurance span { display: grid; grid-template-columns: 18px minmax(0,1fr); align-items: center; column-gap: 7px; padding: 10px; border: 1px solid var(--dgz-line); border-radius: 9px; color: #666674; font-size: .62rem; font-weight: 650; line-height: 1.35; }.product-assurance span strong { display: block; color: var(--dgz-ink); font-size: .66rem; }.product-assurance span .dgz-icon { grid-row: 1 / span 2; width: 17px; color: var(--dgz-green); }
.nextkat-quantity-deal { display: grid; gap: 5px; padding: 12px 14px; border: 1px solid #ffd9c6; border-radius: 10px; background: #fff7f2; color: var(--dgz-ink); font-size: .78rem; line-height: 1.45; }.nextkat-quantity-deal strong { color: var(--dgz-violet); }.nextkat-quantity-deal small { color: var(--dgz-muted); font-size: .7rem; }
.woocommerce div.product .woocommerce-tabs { clear: both; padding-top: 55px; }.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; gap: 24px; margin: 0 !important; padding: 0 !important; border-bottom: 1px solid var(--dgz-line); }.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none !important; }.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }.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 { padding: 13px 2px !important; color: #888895 !important; font-size: .75rem; }.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { border-bottom: 2px solid var(--dgz-violet); color: var(--dgz-ink) !important; }.woocommerce div.product .woocommerce-tabs .panel { max-width: 900px; padding: 25px 0; }.woocommerce div.product .woocommerce-tabs .panel h2 { font-size: 1.5rem; }.woocommerce div.product .woocommerce-tabs .panel p { font-size: .83rem; }.woocommerce div.product .related.products,.woocommerce div.product .upsells.products { clear: both; padding-top: 50px; }.woocommerce div.product .related.products > h2,.woocommerce div.product .upsells.products > h2 { margin-bottom: 24px; font-size: 2rem; }

/* Cart */
.woocommerce-cart .standard-page__content,.woocommerce-checkout .standard-page__content,.woocommerce-account .standard-page__content { max-width: var(--dgz-container); }
.woocommerce-cart-form { width: 67%; float: left; padding: 20px; border: 1px solid var(--dgz-line); border-radius: 16px; background: #fff; }.woocommerce table.shop_table { margin: 0 !important; border: 0 !important; border-collapse: collapse !important; border-radius: 0 !important; }.woocommerce table.shop_table th { padding: 12px 10px; border-bottom: 1px solid var(--dgz-line); color: #858591; font-size: .65rem; text-transform: uppercase; letter-spacing: .05em; }.woocommerce table.shop_table td { padding: 15px 10px; border-color: var(--dgz-line); font-size: .76rem; }.woocommerce-cart table.cart img { width: 72px !important; border-radius: 8px; }.woocommerce-cart table.cart .product-name a { color: var(--dgz-ink); font-weight: 700; }.woocommerce-cart table.cart .product-name a:hover { color: var(--dgz-violet); }.woocommerce a.remove { width: 27px !important; height: 27px !important; display: grid !important; place-items: center; border-radius: 50%; background: #fff1f3; color: #d74057 !important; font-size: 1.1rem !important; }.woocommerce a.remove:hover { background: #d74057 !important; color: #fff !important; }.woocommerce-cart table.cart td.actions { padding-top: 20px; }.woocommerce-cart table.cart td.actions .coupon { display: flex; gap: 7px; }.woocommerce-cart table.cart td.actions .coupon .input-text { width: 145px !important; min-height: 43px; padding: 0 10px !important; border: 1px solid var(--dgz-line) !important; border-radius: 9px; font-size: .7rem; }
.woocommerce-cart .cart-collaterals { width: 30%; float: right; }.woocommerce .cart-collaterals .cart_totals { width: 100% !important; padding: 22px; border: 1px solid var(--dgz-line); border-radius: 16px; background: #fff; }.woocommerce .cart-collaterals .cart_totals h2 { margin-bottom: 15px; font-size: 1.35rem; }.woocommerce .cart-collaterals .cart_totals table th { width: 42%; color: #777784; text-transform: none; }.woocommerce .cart-collaterals .order-total strong { color: var(--dgz-violet); font-size: 1.15rem; }.woocommerce .wc-proceed-to-checkout { padding-bottom: 0 !important; }.woocommerce .wc-proceed-to-checkout a.checkout-button { min-height: 52px; display: flex !important; align-items: center; justify-content: center; margin: 10px 0 0 !important; font-size: .8rem !important; }
.woocommerce-cart .cart-empty { padding: 55px; border-radius: 16px; background: #fff !important; text-align: center; }.woocommerce-cart .return-to-shop { text-align: center; }

/* Checkout */
.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(350px,.8fr); gap: 28px; align-items: start; }.woocommerce-checkout #customer_details { padding: 25px; border: 1px solid var(--dgz-line); border-radius: 16px; background: #fff; }.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2 { width: 100%; float: none; }.woocommerce-checkout #customer_details h3,.woocommerce-checkout #order_review_heading { margin: 0 0 20px; font-size: 1.35rem; }.woocommerce-checkout #order_review_heading { grid-column: 2; grid-row: 1; margin: 25px 25px 0; z-index: 2; }.woocommerce-checkout #order_review { grid-column: 2; grid-row: 1 / span 2; padding: 68px 24px 24px; border: 1px solid var(--dgz-line); border-radius: 16px; background: #fff; }.woocommerce-checkout-review-order-table .product-name { font-weight: 650; }.woocommerce-checkout-review-order-table .order-total strong { color: var(--dgz-violet); font-size: 1.15rem; }.woocommerce-checkout #payment { border-radius: 12px !important; background: var(--dgz-soft) !important; }.woocommerce-checkout #payment ul.payment_methods { padding: 16px !important; border-bottom-color: var(--dgz-line) !important; }.woocommerce-checkout #payment div.payment_box { background: #fff !important; color: #6c6c78; font-size: .7rem; }.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff !important; }.woocommerce-checkout #payment div.form-row { padding: 16px !important; }.woocommerce-checkout #payment #place_order { width: 100%; min-height: 52px; }.woocommerce-privacy-policy-text p { font-size: .62rem; }

/* Account */
.woocommerce-account .page-hero--compact { padding: 30px 0; background: var(--dgz-soft); }
.woocommerce-account .page-hero--compact .eyebrow { display: none; }
.woocommerce-account .page-hero--compact h1 { margin: 0; font-size: clamp(2rem, 3vw, 2.65rem); }
.woocommerce-account .standard-page__content { padding-block: 32px 68px; }
.woocommerce-account.logged-in .woocommerce { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 24px; align-items: start; }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after { display: none; }
.woocommerce-MyAccount-navigation { width: auto !important; float: none !important; }
.woocommerce-MyAccount-navigation ul { overflow: hidden; margin: 0; padding: 7px; border: 1px solid var(--dgz-line); border-radius: var(--dgz-radius); background: var(--dgz-surface); list-style: none; }
.woocommerce-MyAccount-navigation li + li { border-top: 1px solid var(--dgz-line); }
.woocommerce-MyAccount-navigation li a { min-height: 44px; display: flex; align-items: center; padding: 10px 12px; border-radius: 8px; color: var(--dgz-muted); font-size: .86rem; font-weight: 700; line-height: 1.25; text-decoration: none; }
.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li a:hover { background: var(--dgz-orange-soft); color: var(--dgz-ink); box-shadow: inset 3px 0 0 var(--dgz-orange); }
.woocommerce-MyAccount-content { width: auto !important; min-width: 0; float: none !important; padding: 26px; border: 1px solid var(--dgz-line); border-radius: var(--dgz-radius); background: var(--dgz-surface); }
.woocommerce-MyAccount-content p { margin-bottom: 1rem; font-size: .9rem; line-height: 1.7; }
.woocommerce-MyAccount-content a:not(.button) { color: var(--dgz-ink); font-weight: 700; text-decoration: underline; text-decoration-color: var(--dgz-orange); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.woocommerce-account #customer_login { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after { display: none; }
.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2 { width: auto; float: none; }
.woocommerce-account #customer_login h2 { margin: 0 0 14px; font-size: 1.45rem; }
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register { height: 100%; margin: 0 !important; padding: 26px !important; border: 1px solid var(--dgz-line) !important; border-radius: var(--dgz-radius) !important; background: var(--dgz-surface); }
.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register__submit { min-width: 132px; background: var(--dgz-orange) !important; color: var(--dgz-ink) !important; }
.woocommerce-account .woocommerce-form-login__rememberme { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; margin-right: 12px; font-size: .84rem; }
.woocommerce-account .woocommerce-password-input,
.woocommerce-account .password-input { display: block; }
.woocommerce-account .woocommerce-password-input .show-password-input,
.woocommerce-account .password-input .show-password-input { top: 50% !important; right: 0 !important; width: 44px !important; min-width: 44px; height: 44px !important; display: grid !important; place-items: center; transform: translateY(-50%); }
.woocommerce-account .woocommerce-password-input .show-password-input:focus-visible,
.woocommerce-account .password-input .show-password-input:focus-visible { outline: 2px solid var(--dgz-orange); outline-offset: 2px; }
.woocommerce-MyAccount-content .woocommerce-info { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.woocommerce-MyAccount-content .woocommerce-info .button { order: 2; flex: 0 0 auto; float: none; }

@media (max-width: 920px) {
	.commerce-page > .woocommerce-breadcrumb,.commerce-page > .woocommerce-notices-wrapper,.commerce-page > .woocommerce-products-header,.commerce-page > .page-title,.commerce-page > .woocommerce-result-count,.commerce-page > .woocommerce-ordering,.commerce-page > ul.products,.commerce-page > .woocommerce-pagination,.commerce-page > div.product,.commerce-page > .term-description { width: min(calc(100% - 32px),var(--dgz-container)); }
	.woocommerce ul.products { grid-template-columns: repeat(3,minmax(0,1fr)); }
	.woocommerce div.product div.images,.woocommerce div.product div.summary { width: 100% !important; float: none !important; }.woocommerce div.product div.summary { padding-top: 25px; }
	.woocommerce-cart-form,.woocommerce-cart .cart-collaterals { width: 100%; float: none; }.woocommerce-cart .cart-collaterals { margin-top: 18px; }
	.woocommerce-checkout form.checkout { grid-template-columns: 1fr; }.woocommerce-checkout #order_review_heading { grid-column: 1; grid-row: 2; }.woocommerce-checkout #order_review { grid-column: 1; grid-row: 2; }
	.woocommerce-account.logged-in .woocommerce { grid-template-columns: 1fr; }
	.woocommerce-account #customer_login { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
	.commerce-page { padding-bottom: 55px; }.commerce-page > .woocommerce-breadcrumb,.commerce-page > .woocommerce-notices-wrapper,.commerce-page > .woocommerce-products-header,.commerce-page > .page-title,.commerce-page > .woocommerce-result-count,.commerce-page > .woocommerce-ordering,.commerce-page > ul.products,.commerce-page > .woocommerce-pagination,.commerce-page > div.product,.commerce-page > .term-description { width: min(calc(100% - 24px),var(--dgz-container)); }
	.woocommerce-products-header,.commerce-page > .page-title { padding: 20px; border-radius: var(--dgz-radius); }.woocommerce-products-header__title,.commerce-page > .page-title { font-size: 2rem; }.woocommerce-result-count { float: none !important; margin-bottom: 8px !important; }.woocommerce-ordering { float: none !important; }.woocommerce-ordering select { width: 100%; }
	.woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }.woocommerce ul.products li.product { border-radius: 12px; padding-bottom: 12px !important; }.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 47px; padding-inline: 11px !important; font-size: .77rem !important; }.woocommerce ul.products li.product .price { margin-inline: 11px !important; font-size: .84rem !important; }.woocommerce ul.products li.product .button { width: calc(100% - 22px); min-height: 44px; margin-inline: 11px !important; font-size: .72rem !important; }
	.woocommerce div.product .product_title { font-size: 2rem; }.woocommerce div.product p.price,.woocommerce div.product span.price { font-size: 1.35rem !important; }.woocommerce div.product .woocommerce-tabs ul.tabs { gap: 13px; overflow-x: auto; }.woocommerce div.product .woocommerce-tabs ul.tabs li a { white-space: nowrap; font-size: .67rem; }.woocommerce div.product .related.products > h2,.woocommerce div.product .upsells.products > h2 { font-size: 1.55rem; }
	.dgz-customization { padding: 15px; }
	.dgz-customization__meta { align-items: flex-start; flex-direction: column; gap: 5px; }
	.dgz-customization__meta small:first-child { max-width: none; }
	.product-assurance { grid-template-columns: 1fr; }
	.woocommerce-cart-form { padding: 11px; overflow-x: auto; }.woocommerce table.shop_table_responsive tr { display: block; margin-bottom: 13px; padding: 9px; border: 1px solid var(--dgz-line); border-radius: 10px; }.woocommerce table.shop_table_responsive tr td { border: 0 !important; }.woocommerce-cart table.cart .product-thumbnail { display: block !important; text-align: center !important; }.woocommerce-cart table.cart .product-thumbnail::before { display: none; }.woocommerce-cart table.cart img { width: 95px !important; margin-left: auto; }.woocommerce-cart table.cart td.actions .coupon { width: 100%; float: none !important; }.woocommerce-cart table.cart td.actions .coupon .input-text { flex: 1; }.woocommerce-cart table.cart td.actions > button { width: 100%; margin-top: 8px; }
	.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review { padding-right: 15px; padding-left: 15px; }.woocommerce-checkout #order_review { padding-top: 65px; }.woocommerce-checkout #order_review_heading { margin-left: 16px; }
	.woocommerce-account .page-hero--compact { padding: 24px 0; }
	.woocommerce-account .standard-page__content { padding-block: 22px 56px; }
	.woocommerce-MyAccount-content { padding: 18px; }
	.woocommerce-MyAccount-content .woocommerce-info { align-items: stretch; flex-direction: column; }
	.woocommerce-MyAccount-content .woocommerce-info .button { width: 100%; margin-top: 4px; }
	.woocommerce-account .form-row-first,
	.woocommerce-account .form-row-last { width: 100% !important; float: none !important; }
}

/* Marketplace v2 catalogue and product-detail alignment. */
.commerce-page { background: var(--dgz-soft); }
.woocommerce-products-header,
.commerce-page > .page-title { margin: 24px auto 18px !important; padding: 25px 30px; border: 1px solid var(--dgz-line); border-radius: var(--dgz-radius); background: var(--dgz-surface); color: var(--dgz-ink); }
.woocommerce-products-header__title,
.commerce-page > .page-title { color: var(--dgz-ink); font-size: clamp(1.9rem, 3vw, 2.7rem); line-height: 1.08; }
.commerce-page > .woocommerce-result-count { margin-left: max(24px, calc((100% - var(--dgz-container)) / 2)) !important; }
.commerce-page > .woocommerce-ordering { margin-right: max(24px, calc((100% - var(--dgz-container)) / 2)) !important; }
.term-description,
.term-description p { color: var(--dgz-muted); }
.woocommerce-ordering select:focus { border-color: var(--dgz-orange); box-shadow: 0 0 0 3px rgba(255, 90, 31, .09); }
.woocommerce ul.products { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.woocommerce ul.products li.product { padding-bottom: 12px !important; border-color: var(--dgz-line); border-radius: 11px; box-shadow: none; }
.woocommerce ul.products li.product:hover { border-color: #ccccc5; box-shadow: 0 10px 24px rgba(21, 21, 21, .07); transform: translateY(-2px); }
.woocommerce ul.products li.product a img { aspect-ratio: 1; margin-bottom: 12px !important; background: #f2efe9; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 39px; padding-inline: 12px !important; font-family: Inter, ui-sans-serif, sans-serif; font-size: .82rem !important; font-weight: 650; }
.woocommerce ul.products li.product .price { min-height: 32px; margin: 7px 12px 0 !important; padding-top: 7px; border: 0; font-size: .95rem !important; }
.woocommerce ul.products li.product .button { width: calc(100% - 24px); min-height: 44px; margin: 8px 12px 0 !important; border: 1px solid #deded8 !important; border-radius: 9px !important; background: #fff !important; color: var(--dgz-ink) !important; font-size: .78rem !important; }
.woocommerce ul.products li.product .button:hover { border-color: var(--dgz-orange) !important; background: var(--dgz-orange) !important; color: var(--dgz-ink) !important; }
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt { background: var(--dgz-orange) !important; color: var(--dgz-ink) !important; box-shadow: none; }
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover { background: #f04b13 !important; color: var(--dgz-ink) !important; }

.commerce-page > div.product { padding-top: 18px; }
.woocommerce div.product div.images { width: 55% !important; }
.woocommerce div.product div.summary { position: static; width: 39% !important; padding: 26px; border: 1px solid var(--dgz-line); border-radius: 12px; background: #fff; }
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper { border-radius: 12px; }
.woocommerce div.product div.images .flex-control-thumbs { grid-template-columns: repeat(3, 82px); }
.woocommerce div.product div.images .flex-control-thumbs li { border-radius: 8px; }
.woocommerce div.product .product_title { font-size: clamp(1.9rem, 3.2vw, 2.8rem); }
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--dgz-orange) !important; }
.woocommerce div.product .woocommerce-product-details__short-description { padding-block: 15px; }
.woocommerce div.product .product_meta { background: var(--dgz-soft); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 760px; }

@media (max-width: 1180px) {
	.woocommerce ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 920px) {
	.commerce-page > .woocommerce-result-count { margin-left: 16px !important; }
	.commerce-page > .woocommerce-ordering { margin-right: 16px !important; }
	.woocommerce ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.woocommerce div.product div.images,
	.woocommerce div.product div.summary { width: 100% !important; }
	.woocommerce div.product div.summary { position: static; }
}

@media (max-width: 640px) {
	.woocommerce-products-header,
	.commerce-page > .page-title { margin-top: 12px !important; padding: 20px; }
	.commerce-page > .woocommerce-result-count { margin-left: 12px !important; }
	.commerce-page > .woocommerce-ordering { margin-right: 12px !important; }
	.woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
	.woocommerce div.product div.summary { padding: 18px; }
	.woocommerce div.product div.images .flex-control-thumbs { grid-template-columns: repeat(3, 1fr); }
}

/* Store collections: one physical-product catalogue, separated by real URL state. */
.commerce-page > .dgz-store-intro,
.woocommerce-products-header .dgz-store-intro {
	width: min(calc(100% - 48px), 660px);
	margin: -4px auto 14px max(24px, calc((100% - var(--dgz-container)) / 2));
	color: var(--dgz-muted);
	font-size: .86rem;
	line-height: 1.55;
}

.woocommerce-products-header .dgz-store-intro {
	width: auto;
	margin: 9px 0 0;
}

.commerce-page > .dgz-store-filterbar {
	width: min(calc(100% - 48px), var(--dgz-container));
	clear: both;
	display: flex;
	align-items: center;
	gap: 18px;
	margin: 0 auto 13px;
	padding: 12px 14px;
	border: 1px solid var(--dgz-line);
	border-radius: var(--dgz-radius-sm);
	background: var(--dgz-surface);
}

.dgz-store-filterbar > strong {
	flex: 0 0 auto;
	font-size: .72rem;
}

.dgz-store-filterbar__links {
	min-width: 0;
	display: flex;
	align-items: center;
	gap: 7px;
}

.dgz-store-filterbar__links a {
	min-height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 7px 13px;
	border: 1px solid var(--dgz-line);
	border-radius: 999px;
	background: var(--dgz-surface);
	color: var(--dgz-ink);
	font-size: .72rem;
	font-weight: 700;
	white-space: nowrap;
}

.dgz-store-filterbar__links a:hover {
	border-color: var(--dgz-orange);
}

.dgz-store-filterbar__links a.is-active,
.dgz-store-filterbar__links a[aria-current="page"] {
	border-color: #c8d5c3;
	background: var(--dgz-sage);
	box-shadow: inset 0 -2px 0 var(--dgz-orange);
}

.dgz-store-filterbar__links a:focus-visible {
	outline: 2px solid var(--dgz-orange);
	outline-offset: 2px;
}

.woocommerce ul.products li.product .dgz-loop-product-type {
	display: block;
	margin: 0 12px 3px;
	color: #b9380d;
	font-size: .62rem;
	font-weight: 750;
	line-height: 1.25;
}

@media (max-width: 920px) {
	.commerce-page > .dgz-store-intro {
		width: min(calc(100% - 32px), 660px);
		margin-left: 16px;
	}

	.commerce-page > .dgz-store-filterbar {
		width: min(calc(100% - 32px), var(--dgz-container));
	}

	.dgz-store-filterbar__links {
		overflow-x: auto;
		padding: 2px 2px 8px;
		scrollbar-color: #c6c6be transparent;
		scrollbar-width: thin;
	}

	.dgz-store-filterbar__links::-webkit-scrollbar {
		height: 4px;
	}

	.dgz-store-filterbar__links::-webkit-scrollbar-thumb {
		border-radius: 999px;
		background: #c6c6be;
	}
}

@media (max-width: 640px) {
	.commerce-page > .dgz-store-intro {
		width: calc(100% - 24px);
		margin-left: 12px;
		font-size: .78rem;
	}

	.commerce-page > .dgz-store-filterbar {
		width: min(calc(100% - 24px), var(--dgz-container));
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
		padding: 11px 12px 8px;
	}

	.dgz-store-filterbar__links {
		width: 100%;
	}

	.dgz-store-filterbar__links a {
		min-height: 40px;
	}
}

/* Compact shop masthead: product-led, useful and deliberately smaller than home. */
.woocommerce-shop .woocommerce-products-header { display: none; }

.dgz-store-masthead {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 188px;
	align-items: center;
	gap: 34px;
}

.commerce-page > .dgz-store-masthead {
	width: min(calc(100% - 48px), var(--dgz-container));
	overflow: hidden;
	margin: 24px auto 16px;
	padding: 28px 34px;
	border: 1px solid var(--dgz-line);
	border-radius: var(--dgz-radius);
	background: var(--dgz-surface);
}

.dgz-store-masthead__copy {
	max-width: 720px;
}

.dgz-store-masthead__copy h1 {
	margin: 0 0 18px;
	font-size: clamp(2rem, 3vw, 2.7rem);
}

.dgz-store-masthead__copy strong {
	display: block;
	font-family: Manrope, Inter, ui-sans-serif, sans-serif;
	font-size: clamp(1.15rem, 2vw, 1.6rem);
	line-height: 1.2;
	letter-spacing: -.03em;
}

.dgz-store-masthead__copy p {
	max-width: 620px;
	margin: 8px 0 13px;
	font-size: .84rem;
}

.dgz-store-masthead__copy a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--dgz-ink);
	font-size: .76rem;
	font-weight: 800;
	text-decoration: underline;
	text-decoration-color: var(--dgz-orange);
	text-underline-offset: 4px;
}

.dgz-store-masthead__copy a .dgz-icon {
	width: 16px;
	height: 16px;
}

.dgz-store-masthead__product {
	position: relative;
	width: 188px;
	margin: -50px 0 -8px;
	padding: 8px;
	border: 1px solid #deded8;
	border-radius: 12px;
	background: var(--dgz-surface);
	box-shadow: 0 8px 20px rgba(21, 21, 21, .08);
	transform: rotate(1.5deg);
}

.dgz-store-masthead__product img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 8px;
	background: #f0ede7;
}

.dgz-store-masthead__product figcaption {
	padding: 7px 3px 1px;
	color: var(--dgz-muted);
	font-size: .63rem;
	font-weight: 750;
	text-align: center;
}

/* Cart and checkout are compact commerce steps, not generic content pages. */
.woocommerce-cart .page-hero--compact,
.woocommerce-checkout .page-hero--compact {
	padding: 25px 0;
	border-bottom: 1px solid var(--dgz-line);
	background: var(--dgz-soft);
}

.woocommerce-cart .page-hero--compact .eyebrow,
.woocommerce-checkout .page-hero--compact .eyebrow {
	display: none;
}

.woocommerce-cart .page-hero--compact h1,
.woocommerce-checkout .page-hero--compact h1 {
	margin: 0;
	font-size: clamp(2rem, 3vw, 2.6rem);
}

.woocommerce-cart .standard-page__content,
.woocommerce-checkout .standard-page__content {
	padding-block: 32px 68px;
}

.woocommerce-checkout .woocommerce-form-login-toggle,
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout form.woocommerce-form-login,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
.woocommerce-checkout .wc-block-components-totals-coupon {
	display: none;
}

/* SKU is useful in the admin/operations flow, but does not need to be exposed
 * as storefront copy on customer-facing product pages. */
.single-product .product_meta .sku_wrapper {
	display: none;
}

.woocommerce-checkout .form-row label {
	color: var(--dgz-ink);
	font-size: .76rem;
	font-weight: 700;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea {
	min-height: 46px;
	padding: 10px 12px;
	border: 1px solid #d7d7d0;
	border-radius: 9px;
	background: var(--dgz-surface);
	outline: 0;
}

.woocommerce-checkout .form-row textarea {
	min-height: 112px;
	resize: none;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .select2-container--default.select2-container--focus .select2-selection--single {
	border-color: var(--dgz-orange);
	box-shadow: 0 0 0 3px rgba(255, 90, 31, .1);
}

.woocommerce-checkout .select2-container .select2-selection--single {
	min-height: 46px;
	display: flex;
	align-items: center;
	border-color: #d7d7d0;
	border-radius: 9px;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 9px;
}

@media (max-width: 720px) {
	.commerce-page > .dgz-store-masthead { width: calc(100% - 24px); margin-top: 12px; padding: 21px; }
	.dgz-store-masthead { grid-template-columns: minmax(0, 1fr) 112px; gap: 16px; }
	.dgz-store-masthead__copy h1 { margin-bottom: 12px; }
	.dgz-store-masthead__copy strong { font-size: 1.05rem; }
	.dgz-store-masthead__copy p { margin-bottom: 9px; font-size: .72rem; }
	.dgz-store-masthead__copy a { font-size: .68rem; }
	.dgz-store-masthead__product { width: 112px; margin: -38px 0 -2px; padding: 5px; }
	.dgz-store-masthead__product figcaption { padding-top: 5px; font-size: .55rem; }
	.woocommerce-cart .page-hero--compact,
	.woocommerce-checkout .page-hero--compact { padding: 21px 0; }
	.woocommerce-cart .standard-page__content,
	.woocommerce-checkout .standard-page__content { padding-block: 22px 54px; }
}

@media (forced-colors: active) {
	.dgz-store-masthead__product,
	.woocommerce-checkout .form-row input.input-text,
	.woocommerce-checkout .form-row textarea { border-color: CanvasText; }
}
