.shop-main { min-height: 62vh; padding-block: clamp(44px, 6vw, 92px); }
.shop-layout { display: grid; grid-template-columns: minmax(240px, 280px) minmax(0, 1fr); gap: clamp(34px, 5vw, 76px); align-items: start; }
.shop-content, .product-content { min-width: 0; }
.shop-content .woocommerce-products-header { margin-bottom: 38px; }
.shop-content .woocommerce-products-header__title.page-title { margin: 0; }
.shop-content .woocommerce::before, .shop-content .woocommerce::after { display: none; }
.shop-content .woocommerce-result-count { float: left; margin-top: 15px; }
.shop-content .woocommerce-ordering { float: right; }
.shop-content .woocommerce-ordering select { min-width: 230px; }
.shop-content ul.products { display: grid !important; clear: both; grid-template-columns: repeat(3, minmax(0,1fr)); gap: clamp(24px,3vw,40px) clamp(14px,2vw,26px); margin: 0 !important; padding-top: 8px; }
.shop-content ul.products::before,.shop-content ul.products::after { display: none !important; }
.shop-filter-toggle { display: none; width: 100%; min-height: 52px; margin-bottom: 24px; padding: 12px 16px; border: 1px solid var(--da-ink); background: transparent; text-align: left; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.shop-filter-toggle span { float: right; font-size: 18px; font-weight: 400; }
.shop-filter-backdrop { display: none; }
.shop-sidebar { position: sticky; top: 24px; padding-top: 10px; }
.shop-sidebar__header { display: none; }
.shop-search-standalone { margin: 0; padding: 8px 0 25px; border-bottom: 1px solid var(--da-line); }
.shop-search-standalone .shop-filter-title { margin-bottom: 14px; line-height: 1.45; }
.shop-search-standalone .woocommerce-product-search { display: flex; min-height: 48px; border: 1px solid var(--da-line); background: #fff; }
.shop-search-standalone .search-field { min-width: 0; width: 100%; padding: 11px 13px; border: 0; background: transparent; font-size: 13px; }
.shop-search-standalone button { flex: 0 0 46px; padding: 0; border: 0; border-left: 1px solid var(--da-line); background: transparent; cursor: pointer; font-size: 0; }
.shop-search-standalone button::after { content: "→"; font-size: 18px; }
.shop-filter-widget { margin: 0; padding: 25px 0; border-bottom: 1px solid var(--da-line); }
.shop-filter-widget:first-of-type { padding-top: 0; }
.shop-filter-title { margin: 0 0 17px; font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.filter-title-toggle { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 16px; padding: 0; border: 0; background: transparent; color: var(--da-ink); cursor: pointer; text-align: left; font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.filter-title-icon { display: grid; place-items: center; width: 25px; height: 25px; border: 1px solid var(--da-line); border-radius: 50%; font-size: 16px; font-weight: 400; line-height: 1; }
.filter-accordion > :not(.filter-title-toggle) { display: none !important; }
.filter-accordion.is-open > :not(.filter-title-toggle) { display: block !important; }
.filter-accordion.is-open > .filter-title-toggle { margin-bottom: 17px; }
.filter-accordion.is-open .filter-title-icon { background: var(--da-ink); color: var(--da-white); }
.shop-filter-widget ul { margin: 0; padding: 0; list-style: none; }
.shop-filter-widget li { margin: 0; padding: 0; list-style: none; }
.shop-filter-widget li + li { margin-top: 10px; }
.shop-filter-widget a { color: var(--da-muted); text-decoration: none; font-size: 13px; }
.shop-filter-widget a:hover, .shop-filter-widget .current-cat > a, .shop-filter-widget .chosen > a { color: var(--da-ink); }
.product-category-tree li.cat-parent { position: relative; padding-right: 30px; }
.product-category-tree li > a { display: flex; gap: 10px; justify-content: space-between; align-items: flex-start; }
.product-category-tree ul.children { margin: 9px 0 2px 15px; padding-left: 13px; border-left: 1px solid var(--da-line); }
.product-category-tree li.cat-parent > ul.children { display: none !important; max-height: 0; overflow: hidden; visibility: hidden; }
.product-category-tree li.cat-parent.is-expanded > ul.children { display: block !important; max-height: none; overflow: visible; visibility: visible; }
.product-category-tree ul.children[hidden] { display: none !important; max-height: 0 !important; visibility: hidden !important; }
.product-category-tree li.cat-parent.is-expanded > ul.children:not([hidden]) { display: block !important; max-height: none !important; visibility: visible !important; }
.category-tree-toggle { position: absolute; top: -3px; right: 0; display: grid; place-items: center; width: 25px; height: 25px; padding: 0; border: 0; background: transparent; color: var(--da-muted); cursor: pointer; transition: color .2s, transform .2s; }
.category-tree-toggle::before, .category-tree-toggle::after { content: ""; position: absolute; width: 11px; height: 1px; background: currentColor; }
.category-tree-toggle::after { transform: rotate(90deg); transition: transform .2s; }
.category-tree-toggle[aria-expanded="true"]::after { transform: rotate(0); }
.category-tree-toggle:hover, .category-tree-toggle:focus-visible { color: var(--da-ink); }
.category-tree-toggle:focus-visible { outline: 1px solid var(--da-ink); outline-offset: 2px; }
.product-category-tree .count, .woocommerce-widget-layered-nav-list .count { flex: 0 0 auto; color: #999; font-size: 11px; }
.shop-filter-search .woocommerce-product-search { display: flex; border-bottom: 1px solid var(--da-ink); }
.shop-filter-search .search-field { min-width: 0; padding: 10px 0; font-size: 14px; }
.shop-filter-search button { padding: 0 4px; border: 0; background: transparent; font-size: 0; cursor: pointer; }
.shop-filter-search button::after { content: "→"; font-size: 18px; }
.price_slider_wrapper .ui-widget-content { background: #c8c4bc !important; }
.price_slider_wrapper .ui-slider-range, .price_slider_wrapper .ui-slider-handle { background: var(--da-ink) !important; }
.price_slider_wrapper .ui-slider-handle { width: 14px !important; height: 14px !important; top: -5px !important; border-radius: 50%; }
.price_slider_amount { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.price_slider_amount .button { order: 2; padding: 10px 13px !important; background: var(--da-ink) !important; color: var(--da-white) !important; }
.price_slider_amount .price_label { flex: 1 0 100%; color: var(--da-muted); font-size: 12px; }
.da-price-range-form { padding-top: 2px; }
.da-price-values { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 20px; font-size: 12px; font-weight: 800; }
.da-price-values span { color: var(--da-muted); font-weight: 400; }
.da-dual-range { position: relative; height: 30px; margin: 0 7px 18px; }
.da-dual-range__track { position: absolute; top: 14px; right: 0; left: 0; height: 3px; background: linear-gradient(to right,var(--da-line) 0 var(--range-start),var(--da-ink) var(--range-start) var(--range-end),var(--da-line) var(--range-end) 100%); }
.da-dual-range input[type="range"] { position: absolute; inset: 0; width: 100%; height: 30px; margin: 0; padding: 0; border: 0; outline: 0; background: transparent; pointer-events: none; -webkit-appearance: none; appearance: none; }
.da-dual-range input[type="range"]::-webkit-slider-runnable-track { height: 3px; background: transparent; }
.da-dual-range input[type="range"]::-webkit-slider-thumb { width: 18px; height: 18px; margin-top: -8px; border: 3px solid #fff; border-radius: 50%; background: var(--da-ink); box-shadow: 0 0 0 1px var(--da-ink),0 3px 10px rgba(0,0,0,.18); cursor: grab; pointer-events: auto; -webkit-appearance: none; }
.da-dual-range input[type="range"]::-moz-range-track { height: 3px; background: transparent; }
.da-dual-range input[type="range"]::-moz-range-thumb { width: 14px; height: 14px; border: 3px solid #fff; border-radius: 50%; background: var(--da-ink); box-shadow: 0 0 0 1px var(--da-ink),0 3px 10px rgba(0,0,0,.18); cursor: grab; pointer-events: auto; }
.da-price-submit { width: 100%; min-height: 44px; padding: 10px 14px; border: 1px solid var(--da-ink); background: var(--da-ink); color: #fff; cursor: pointer; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.da-price-submit:hover { background: transparent; color: var(--da-ink); }
.woocommerce-no-products-found { clear: both; padding-top: 12px; }
.woocommerce-no-products-found .woocommerce-info { margin: 0; padding: 24px 28px 24px 58px; border: 1px solid var(--da-line); background: var(--da-white); }
.woocommerce .woocommerce-breadcrumb { margin: 0 0 38px; color: var(--da-muted); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce .woocommerce-products-header__title.page-title { margin-bottom: clamp(32px, 5vw, 62px); }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 34px; color: var(--da-muted); font-size: 12px; }
.woocommerce .woocommerce-ordering select { padding: 12px 38px 12px 14px; border: 1px solid var(--da-line); background: transparent; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: clamp(26px, 4vw, 58px) clamp(12px, 2.4vw, 34px); margin: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { float: none !important; width: auto !important; margin: 0 !important; }
.woocommerce ul.products li.product { position: relative; }
.woocommerce ul.products li.product a { text-decoration: none; }
.woocommerce ul.products li.product a img { aspect-ratio: 4 / 5; margin: 0 0 20px; object-fit: cover; background: var(--da-soft); filter: saturate(.82); transition: transform .45s ease, filter .3s; }
.woocommerce ul.products li.product:hover a img { transform: translateY(-4px); filter: saturate(1); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; font-family: var(--da-serif); font-size: clamp(19px, 2vw, 25px); font-weight: 500; letter-spacing: -.025em; line-height: 1.1; }
.woocommerce ul.products li.product .price { margin-top: 10px; color: var(--da-ink); font-size: 13px; font-weight: 700; }
.woocommerce ul.products li.product .price del { color: var(--da-muted); opacity: 1; }
.woocommerce span.onsale { z-index: 3; top: 12px; left: 12px; min-width: 0; min-height: 0; margin: 0; padding: 7px 10px; border-radius: 0; background: var(--da-ink); font-size: 9px; line-height: 1; letter-spacing: .12em; text-transform: uppercase; }
.woocommerce ul.products li.product .button { width: 100%; margin-top: 16px; padding: 13px; border: 1px solid var(--da-ink); border-radius: 0; background: transparent; color: var(--da-ink); text-align: center; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; transition: .2s; }
.woocommerce ul.products li.product .button:hover { background: var(--da-ink); color: var(--da-white); }
.home-shop .woocommerce ul.products li.product,
.sale-products-section .woocommerce ul.products li.product,
.shop-content ul.products li.product,
.related.products ul.products li.product { display: flex; flex-direction: column; height: 100%; min-height: 100%; padding: 12px 12px 16px; border: 1px solid var(--da-line); background: #fff; transition: transform .25s ease, box-shadow .25s ease; }
.home-shop .woocommerce ul.products li.product:hover,
.sale-products-section .woocommerce ul.products li.product:hover,
.shop-content ul.products li.product:hover,
.related.products ul.products li.product:hover { transform: translateY(-5px); box-shadow: 0 20px 45px rgba(28,23,16,.08); }
.home-shop .woocommerce ul.products li.product a.woocommerce-loop-product__link,
.sale-products-section .woocommerce ul.products li.product a.woocommerce-loop-product__link,
.shop-content ul.products li.product a.woocommerce-loop-product__link,
.related.products ul.products li.product a.woocommerce-loop-product__link { display: flex; flex: 1; flex-direction: column; }
.home-shop .woocommerce ul.products li.product a img,
.sale-products-section .woocommerce ul.products li.product a img,
.shop-content ul.products li.product a img,
.related.products ul.products li.product a img { margin-bottom: 16px; }
.home-shop .woocommerce ul.products li.product .woocommerce-loop-product__title,
.sale-products-section .woocommerce ul.products li.product .woocommerce-loop-product__title,
.shop-content ul.products li.product .woocommerce-loop-product__title,
.related.products ul.products li.product .woocommerce-loop-product__title { display: -webkit-box; min-height: 4.4em; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 4; }
.home-shop .woocommerce ul.products li.product .price,
.sale-products-section .woocommerce ul.products li.product .price,
.shop-content ul.products li.product .price,
.related.products ul.products li.product .price { margin-top: auto; padding-top: 10px; }
.home-shop .woocommerce ul.products li.product .button,
.sale-products-section .woocommerce ul.products li.product .button,
.shop-content ul.products li.product .button,
.related.products ul.products li.product .button { margin-top: 16px; }
.shop-content ul.products li.product a { color: var(--da-ink); text-decoration: none; }
.shop-content ul.products li.product a img { display: block; width: 100%; aspect-ratio: 4/5; margin: 0 0 16px !important; object-fit: cover; background: var(--da-soft); transition: transform .35s ease; }
.shop-content ul.products li.product:hover a img { transform: translateY(-3px); }
.shop-content ul.products li.product .woocommerce-loop-product__title { padding: 0 !important; font-family: var(--da-serif); font-size: clamp(19px,1.7vw,24px); font-weight: 500; letter-spacing: -.025em; line-height: 1.1; }
.shop-content ul.products li.product .price { color: var(--da-ink); font-size: 13px; font-weight: 800; }
.shop-content ul.products li.product .price del { color: var(--da-muted); opacity: 1; }
.shop-content ul.products li.product .button { display: flex !important; width: 100%; min-height: 44px; align-items: center; justify-content: center; padding: 11px 9px !important; border: 1px solid var(--da-ink); border-radius: 0; background: transparent; color: var(--da-ink); text-align: center; font-size: 9px; font-weight: 800; letter-spacing: .11em; line-height: 1.2; text-transform: uppercase; }
.shop-content ul.products li.product .button:hover { background: var(--da-ink); color: #fff; }

.single-product .shop-main { padding-block: clamp(26px, 3.5vw, 52px) clamp(48px, 6vw, 82px); background: linear-gradient(180deg,#f2efe9 0,#f7f6f2 520px); }
.single-product .product-content > .woocommerce-breadcrumb { margin-bottom: clamp(16px, 2vw, 26px); }
.single-product div.product { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(370px,.82fr); gap: clamp(24px, 3.4vw, 56px); align-items: start; }
.single-product .da-product-heading { grid-column: 1 / -1; max-width: 1180px; margin: 0 0 clamp(6px, 1vw, 14px); }
.single-product .da-product-heading .product_title { max-width: 1040px; margin: 0; font-family: var(--da-serif); font-size: clamp(28px, 3.15vw, 46px); font-weight: 400; letter-spacing: -.035em; line-height: 1.04; }
.single-product div.product .woocommerce-product-gallery { position: sticky; top: 24px; width: 100% !important; margin: 0 !important; }
.single-product .woocommerce-product-gallery__wrapper { background: #fff; }
.single-product .woocommerce-product-gallery__image a { display: block; }
.single-product .woocommerce-product-gallery__image img { width: 100%; aspect-ratio: 1 / 1.03; object-fit: contain; padding: clamp(14px, 2vw, 28px); background: #fff; }
.single-product .flex-control-thumbs { display: grid; grid-template-columns: repeat(5,1fr); gap: 8px; margin-top: 10px !important; }
.single-product .flex-control-thumbs li { float: none !important; width: auto !important; }
.single-product .flex-control-thumbs img { aspect-ratio: 1; object-fit: cover; border: 1px solid transparent; opacity: .58 !important; transition: opacity .2s,border-color .2s; }
.single-product .flex-control-thumbs img.flex-active,.single-product .flex-control-thumbs img:hover { border-color: var(--da-ink); opacity: 1 !important; }
.single-product div.product .summary { width: 100% !important; margin: 0 !important; padding: clamp(24px, 3vw, 40px); border: 1px solid var(--da-line); background: rgba(255,255,255,.93); box-shadow: 0 28px 80px rgba(38,31,20,.07); }
.da-product-kicker { display: flex; flex-wrap: wrap; gap: 8px 13px; align-items: center; margin-bottom: 18px; color: var(--da-muted); font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.da-product-kicker > span:first-child { padding: 6px 9px; background: var(--da-ink); color: var(--da-white); }
.da-product-kicker__cats a { color: inherit; text-decoration: none; }
.single-product .woocommerce-product-rating { display: flex; gap: 10px; align-items: center; margin: 0 0 20px !important; color: var(--da-muted); font-size: 12px; }
.single-product .star-rating { color: var(--da-ink); }
.single-product div.product p.price { display: flex; flex-wrap: wrap; gap: 8px 13px; align-items: baseline; margin: 0 0 24px; color: var(--da-ink); font-size: clamp(22px,2.4vw,31px); font-weight: 800; }
.single-product div.product p.price del { color: #8b8983; font-size: .65em; font-weight: 500; opacity: 1; }
.single-product div.product p.price ins { text-decoration: none; }
.single-product .woocommerce-product-details__short-description { margin-bottom: 24px; color: var(--da-muted); font-size: 15px; line-height: 1.75; }
.single-product .woocommerce-product-details__short-description p:last-child { margin-bottom: 0; }
.da-product-availability { margin: 20px 0 4px; padding: 17px 18px; border: 1px solid var(--da-line); background: var(--da-paper); }
.da-product-availability h2 { margin: 0 0 12px; font-family: var(--da-sans); font-size: 11px; font-weight: 900; letter-spacing: .09em; line-height: 1.35; text-transform: uppercase; }
.da-product-availability ul { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.da-product-availability li { display: grid; grid-template-columns: 22px minmax(0,1fr); gap: 7px; align-items: center; margin: 0; color: var(--da-muted); font-size: 12px; font-weight: 700; line-height: 1.35; }
.da-product-availability a { color: inherit; text-decoration: underline; text-decoration-color: color-mix(in srgb, currentColor 35%, transparent); }
.da-product-availability a:hover { color: var(--da-ink); }
.da-availability-icon { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; color: #fff; font-size: 11px; font-weight: 900; line-height: 1; }
.da-product-availability .is-available .da-availability-icon { background: #6f8c62; box-shadow: 0 0 0 3px rgba(111,140,98,.12); }
.da-product-availability .is-unavailable .da-availability-icon { background: #a64b46; box-shadow: 0 0 0 3px rgba(166,75,70,.1); }
.single-product .product_meta { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--da-line); color: var(--da-muted); font-size: 11px; }
.single-product .product_meta > span { display: block; margin-top: 7px; }
.single-product .product_meta a { color: var(--da-ink); text-decoration: none; }
.woocommerce div.product form.cart:not(.variations_form) { display: grid !important; width: 100%; grid-template-columns: 126px minmax(0,1fr); align-items: stretch; column-gap: 10px; row-gap: 20px; margin: 22px 0 0 !important; padding-top: 20px; border-top: 1px solid var(--da-line); }
.woocommerce div.product form.cart:not(.variations_form) > * { grid-column: 1 / -1; min-width: 0; }
.woocommerce div.product form.cart:not(.variations_form) > .quantity { grid-column: 1; }
.woocommerce div.product form.cart:not(.variations_form) > .single_add_to_cart_button { grid-column: 2; }
.woocommerce div.product form.cart.variations_form { display: block; }
.woocommerce div.product form.cart table.variations { margin-bottom: 17px; }
.woocommerce div.product form.cart table.variations th,.woocommerce div.product form.cart table.variations td { display: block; width: 100%; padding: 0 0 8px; text-align: left; }
.woocommerce div.product form.cart table.variations label { font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.woocommerce div.product form.cart table.variations select { width: 100%; min-height: 50px; padding: 10px 38px 10px 12px; border: 1px solid var(--da-line); background: #fff; }
.woocommerce div.product .single_variation_wrap .woocommerce-variation-add-to-cart { display: grid !important; width: 100%; grid-template-columns: 126px minmax(0,1fr); align-items: stretch; column-gap: 10px; row-gap: 20px; }
.woocommerce div.product .single_variation_wrap .woocommerce-variation-add-to-cart > * { grid-column: 1 / -1; min-width: 0; }
.woocommerce div.product .single_variation_wrap .woocommerce-variation-add-to-cart > .quantity { grid-column: 1; }
.woocommerce div.product .single_variation_wrap .woocommerce-variation-add-to-cart > .single_add_to_cart_button { grid-column: 2; }
.single-product form.cart .quantity { position: relative; display: grid !important; flex: 0 0 126px; grid-template-columns: 36px minmax(44px,1fr) 36px; width: 126px !important; margin: 0 !important; border: 1px solid var(--da-line); background: #fff; }
.single-product form.cart .quantity[data-limit-label]::after { content: attr(data-limit-label); position: absolute; top: calc(100% + 4px); left: 0; color: var(--da-muted); font-size: 8px; font-weight: 700; letter-spacing: .04em; white-space: nowrap; text-transform: uppercase; }
.single-product form.cart .quantity .qty { display: block !important; position: static !important; width: 100% !important; min-width: 0; height: 58px !important; min-height: 58px; margin: 0 !important; padding: 0 2px !important; border: 0 !important; border-inline: 1px solid var(--da-line) !important; background: #fff !important; color: var(--da-ink) !important; opacity: 1 !important; visibility: visible !important; clip: auto !important; font-size: 15px !important; font-weight: 800; line-height: 58px !important; text-align: center; -moz-appearance: textfield; }
.single-product form.cart .quantity .qty::-webkit-outer-spin-button,.single-product form.cart .quantity .qty::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }
.da-qty-button { display: grid; place-items: center; width: 36px; min-height: 58px; padding: 0; border: 0; background: transparent; color: var(--da-ink); cursor: pointer; font-size: 20px; line-height: 1; }
.da-qty-button:hover { background: var(--da-soft); }
.da-qty-button:disabled { background: #f1efea; color: #aaa; cursor: not-allowed; }
.woocommerce button.button.alt, .woocommerce a.button.alt, .woocommerce #respond input#submit.alt { min-width: 0; min-height: 58px; padding: 14px 20px; border-radius: 0; background: var(--da-ink); color: var(--da-white); font-size: 11px; letter-spacing: .11em; line-height: 1.2; text-transform: uppercase; white-space: nowrap; }
.single-product button.single_add_to_cart_button { display: flex !important; flex: 1 1 auto !important; width: auto !important; min-width: 0 !important; min-height: 60px !important; align-items: center; justify-content: center; margin: 0 !important; padding: 14px 18px !important; float: none !important; clear: none !important; }
.woocommerce button.button.alt:hover, .woocommerce a.button.alt:hover { background: #333; }
.da-product-assurances { display: grid; gap: 0; margin-top: 24px; border-block: 1px solid var(--da-line); }
.da-product-assurances > div { display: grid; grid-template-columns: 32px 1fr; gap: 10px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--da-line); }
.da-product-assurances > div:last-child { border-bottom: 0; }
.da-assurance-icon { display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid var(--da-line); border-radius: 50%; font-size: 12px; }
.da-product-assurances strong,.da-product-assurances small { display: block; }
.da-product-assurances strong { font-family: var(--da-serif); font-size: 15px; font-weight: 600; }
.da-product-assurances small { color: var(--da-muted); font-size: 10px; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1; margin-top: clamp(12px,2.5vw,30px); padding: clamp(24px,3vw,42px); border: 1px solid var(--da-line); background: #fff; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 25px; margin: 0 0 30px; padding: 0; border-bottom: 1px solid var(--da-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.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 { position: relative; padding: 14px 0; color: var(--da-muted); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--da-ink); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a::after { content: ""; position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; background: var(--da-ink); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 920px; margin: 0; color: var(--da-muted); }
.woocommerce div.product .woocommerce-tabs .panel h2 { color: var(--da-ink); font-family: var(--da-serif); font-size: clamp(28px,3vw,40px); font-weight: 500; }
.woocommerce div.product .related.products { position: relative; grid-column: 1 / -1; min-width: 0; padding-top: clamp(24px,3vw,42px); }
.woocommerce div.product .related.products > h2 { margin: 0 0 26px; padding-right: 120px; font-family: var(--da-serif); font-size: clamp(34px, 4vw, 52px); font-weight: 400; }
.related-carousel-controls { position: absolute; top: clamp(24px,3vw,42px); right: 0; display: flex; gap: 8px; }
.related-carousel-controls button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--da-ink); background: transparent; cursor: pointer; font-size: 18px; }
.related-carousel-controls button:hover { background: var(--da-ink); color: var(--da-white); }
.woocommerce div.product .related.products.is-carousel ul.products { display: grid !important; grid-template-columns: none !important; grid-auto-columns: calc((100% - 50px) / 3.5); grid-auto-flow: column; grid-template-rows: repeat(2, minmax(0,1fr)); gap: 20px; overflow-x: auto; overflow-y: hidden; padding: 2px 2px 10px; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; -ms-overflow-style: none; }
.woocommerce div.product .related.products.is-carousel ul.products::-webkit-scrollbar { display: none; width: 0; height: 0; }
.woocommerce div.product .related.products.is-carousel ul.products li.product { scroll-snap-align: start; }
.woocommerce div.product .related.products.is-static .related-carousel-controls { display: none; }

.woocommerce table.shop_table { border: 1px solid var(--da-line); border-radius: 0; background: var(--da-white); }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 17px; border-color: var(--da-line); }
.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals { float: none; width: min(100%, 560px); margin-left: auto; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .select2-container--default .select2-selection--single { min-height: 50px; padding: 12px; border: 1px solid var(--da-line); border-radius: 0; background: var(--da-white); }
.woocommerce-checkout #customer_details { margin-bottom: 45px; }
.woocommerce-checkout-review-order { padding: clamp(20px, 4vw, 42px); background: var(--da-white); }
.woocommerce-error, .woocommerce-info, .woocommerce-message { border-top-color: var(--da-ink); background: var(--da-white); }
.woocommerce-info::before, .woocommerce-message::before { color: var(--da-ink); }

/* My account */
.woocommerce-account .woocommerce { display: grid; grid-template-columns: minmax(220px,.32fr) minmax(0,1fr); gap: clamp(34px, 6vw, 90px); align-items: start; }
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after { display: none; }
.woocommerce-account .woocommerce-MyAccount-navigation { float: none; width: 100%; padding: 14px; background: var(--da-white); border: 1px solid var(--da-line); }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; border-bottom: 1px solid var(--da-line); list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child { border-bottom: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: flex; align-items: center; justify-content: space-between; padding: 16px 14px; text-decoration: none; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.woocommerce-account .woocommerce-MyAccount-navigation a::after { content: "→"; opacity: .38; transition: transform .2s, opacity .2s; }
.woocommerce-account .woocommerce-MyAccount-navigation a:hover::after, .woocommerce-account .woocommerce-MyAccount-navigation .is-active a::after { opacity: 1; transform: translateX(3px); }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background: var(--da-ink); color: var(--da-white); }
.woocommerce-account .woocommerce-MyAccount-content { float: none; width: 100%; min-height: 340px; padding: clamp(28px, 4vw, 54px); background: var(--da-white); border: 1px solid var(--da-line); }
.woocommerce-account .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-account .woocommerce-MyAccount-content p { font-size: 16px; }
.woocommerce-account .woocommerce-form-login, .woocommerce-account .woocommerce-form-register, .woocommerce-lost-password .woocommerce-ResetPassword { max-width: 620px; margin: 0; padding: clamp(24px, 4vw, 46px); border: 1px solid var(--da-line); border-radius: 0; background: var(--da-white); }
.woocommerce-account .woocommerce-form-login .button, .woocommerce-account .woocommerce-form-register .button { min-height: 50px; padding-inline: 26px; background: var(--da-ink); color: var(--da-white); }
.woocommerce-account .woocommerce-form-login__rememberme { display: block; margin-bottom: 18px; }
.woocommerce-account .woocommerce-orders-table a.button { margin: 2px; padding: 10px 12px; }
.woocommerce-account mark { padding: 2px 6px; background: var(--da-soft); color: var(--da-ink); }
.woocommerce-account .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.woocommerce-account .woocommerce-Address { float: none !important; width: 100% !important; padding: 24px; border: 1px solid var(--da-line); }
.woocommerce-account .woocommerce-Address-title h2 { font-family: var(--da-serif); font-size: 27px; font-weight: 500; }
.woocommerce-account .woocommerce-Address-title .edit { font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }

/* Classic cart and checkout */
.woocommerce-cart .woocommerce-cart-form { margin-bottom: 52px; }
.woocommerce-cart table.cart img { width: 96px; }
.woocommerce-cart table.cart .product-name a { font-family: var(--da-serif); font-size: 21px; text-decoration: none; }
.woocommerce-cart table.cart td.actions { padding: 24px; }
.woocommerce-cart .coupon { display: flex; gap: 8px; }
.woocommerce-cart .coupon .input-text { min-width: 190px; min-height: 48px; padding: 10px !important; border: 1px solid var(--da-line) !important; }
.woocommerce .cart_totals h2, .woocommerce-checkout h3 { font-family: var(--da-serif); font-size: clamp(30px, 4vw, 44px); font-weight: 400; letter-spacing: -.03em; }
.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0,1fr) minmax(390px,470px); gap: clamp(34px, 5vw, 76px); width: 100%; align-items: start; }
.woocommerce-checkout form.checkout > #customer_details { display: block; width: 100%; min-width: 0; margin: 0; }
.woocommerce-checkout #customer_details::before, .woocommerce-checkout #customer_details::after { display: none; }
.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2 { float: none; width: 100%; }
.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2, .woocommerce-checkout #order_review { padding: clamp(24px,3vw,38px); border: 1px solid var(--da-line); background: var(--da-white); }
.woocommerce-checkout #customer_details .col-2 { margin-top: 22px; }
.woocommerce-checkout #customer_details h3, .woocommerce-checkout #order_review_heading { margin: 0 0 28px; font-size: clamp(29px,3vw,39px); line-height: 1.05; }
.woocommerce-checkout #ship-to-different-address { display: flex; align-items: center; }
.woocommerce-checkout #ship-to-different-address label { display: inline-flex; align-items: center; gap: 10px; cursor: pointer; }
.woocommerce-checkout #ship-to-different-address-checkbox { width: 17px; height: 17px; margin: 0; accent-color: var(--da-ink); }
.woocommerce-checkout form .form-row { margin: 0 0 18px; padding: 0; }
.woocommerce-checkout form .form-row label { margin-bottom: 7px; color: var(--da-muted); font-size: 10px; font-weight: 800; letter-spacing: .07em; line-height: 1.35; text-transform: uppercase; }
.woocommerce-checkout form .form-row .required { color: #9b312b; }
.woocommerce-checkout form .form-row input.input-text, .woocommerce-checkout form .form-row textarea, .woocommerce-checkout form .form-row select, .woocommerce-checkout .select2-container--default .select2-selection--single { width: 100%; min-height: 52px; padding: 13px 14px; border: 1px solid var(--da-line); background: #fff; font-size: 14px; }
.woocommerce-checkout form .form-row textarea { min-height: 112px; resize: vertical; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered { padding: 0; line-height: 25px; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow { top: 12px; right: 8px; }
.woocommerce-checkout .woocommerce-form-coupon-toggle { margin-bottom: 30px; }
.woocommerce-checkout form.checkout_coupon { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px; margin: -12px 0 30px; padding: 20px; border: 1px solid var(--da-line); background: var(--da-white); }
.woocommerce-checkout form.checkout_coupon .form-row { float: none; width: auto; margin: 0; }
.woocommerce-checkout form.checkout_coupon .button { min-height: 52px; padding-inline: 22px; }
.woocommerce-checkout form.checkout > #order_review_heading, .woocommerce-checkout form.checkout > #order_review { grid-column: 2; }
.woocommerce-checkout form.checkout > #order_review_heading { grid-row: 1; align-self: start; margin: 2px 0 0; padding: 0 0 20px; border-bottom: 1px solid var(--da-line); }
.woocommerce-checkout form.checkout > #order_review { position: sticky; top: 26px; grid-row: 1; margin-top: 72px; }
.admin-bar.woocommerce-checkout form.checkout > #order_review { top: 58px; }
.woocommerce-checkout-review-order-table { margin: 0 0 24px !important; border: 0 !important; background: transparent !important; }
.woocommerce-checkout-review-order-table thead th { padding: 0 0 13px !important; color: var(--da-muted); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { padding: 15px 0 !important; border-right: 0 !important; border-bottom: 1px solid var(--da-line) !important; font-size: 13px; line-height: 1.4; }
.woocommerce-checkout-review-order-table .product-name { padding-right: 18px !important; font-family: var(--da-serif); font-size: 17px; line-height: 1.25; }
.woocommerce-checkout-review-order-table .product-quantity { display: inline-block; margin-left: 5px; font-family: var(--da-sans); font-size: 11px; font-weight: 800; }
.woocommerce-checkout-review-order-table tfoot th { width: 42%; font-size: 11px; letter-spacing: .05em; text-transform: uppercase; }
.woocommerce-checkout-review-order-table .order-total th, .woocommerce-checkout-review-order-table .order-total td { padding-top: 20px !important; font-size: 18px; }
.woocommerce-checkout-review-order-table ul#shipping_method { margin: 0; }
.woocommerce-checkout-review-order-table ul#shipping_method li { display: grid; grid-template-columns: 17px minmax(0,1fr); gap: 9px; align-items: start; margin: 0 0 12px; text-align: left; }
.woocommerce-checkout-review-order-table ul#shipping_method input { margin: 3px 0 0; accent-color: var(--da-ink); }
.woocommerce-checkout-review-order-table ul#shipping_method label { min-width: 0; font-size: 12px; line-height: 1.35; overflow-wrap: break-word; }
.woocommerce-checkout #payment { border: 1px solid var(--da-line); border-radius: 0; background: var(--da-paper); }
.woocommerce-checkout #payment ul.payment_methods { padding: 8px 20px; border-bottom-color: var(--da-line); }
.woocommerce-checkout #payment ul.payment_methods li { margin: 0; padding: 15px 0; border-bottom: 1px solid var(--da-line); line-height: 1.4; }
.woocommerce-checkout #payment ul.payment_methods li:last-child { border-bottom: 0; }
.woocommerce-checkout #payment ul.payment_methods li > input { margin-right: 8px; accent-color: var(--da-ink); }
.woocommerce-checkout #payment ul.payment_methods li > label { font-size: 12px; font-weight: 800; }
.woocommerce-checkout #payment div.payment_box { margin: 14px 0 0; padding: 16px; background: #fff; font-size: 12px; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff; }
.woocommerce-checkout #payment .payment_box fieldset { margin: 0; padding: 0; border: 0; }
.woocommerce-checkout #payment .place-order { padding: 22px 20px; }
.woocommerce-checkout #payment #place_order { float: none; width: 100%; min-height: 56px; margin-top: 18px; background: var(--da-ink); color: #fff; }
.woocommerce-checkout #payment .woocommerce-privacy-policy-text, .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper { color: var(--da-muted); font-size: 11px; line-height: 1.55; }

/* WooCommerce Cart and Checkout blocks */
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { max-width: none !important; }
.wc-block-cart, .wc-block-checkout { margin: 0; }
.wc-block-components-sidebar-layout { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(400px, .72fr); gap: clamp(28px, 4vw, 56px) !important; align-items: start; }
.wc-block-components-sidebar-layout .wc-block-components-main, .wc-block-cart__main, .wc-block-checkout__main { width: 100% !important; min-width: 0; padding-right: 0 !important; }
.wc-block-components-sidebar-layout .wc-block-components-sidebar, .wc-block-cart__sidebar, .wc-block-checkout__sidebar { position: sticky; top: 24px; width: 100% !important; min-width: 0; margin: 0 !important; padding: clamp(22px, 3vw, 38px) !important; background: var(--da-white); border: 1px solid var(--da-line); }
.woocommerce-checkout .wp-block-woocommerce-checkout, .woocommerce-checkout .wc-block-checkout { width: 100%; }
.wc-block-checkout .wc-block-components-order-summary-item { display: grid !important; grid-template-columns: 64px minmax(0,1fr) auto !important; gap: 8px 13px !important; align-items: start; }
.wc-block-checkout .wc-block-components-order-summary-item__image { position: relative; grid-column: 1; grid-row: 1 / span 2; width: 64px !important; min-width: 64px !important; margin: 0 !important; padding: 0 !important; }
.wc-block-checkout .wc-block-components-order-summary-item__image img { display: block; width: 64px !important; height: 78px !important; object-fit: cover; }
.wc-block-checkout .wc-block-components-order-summary-item__description { grid-column: 2; grid-row: 1 / span 2; width: auto !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; }
.wc-block-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name { display: block; width: 100%; max-width: none; font-size: 16px !important; line-height: 1.25; word-break: normal !important; overflow-wrap: break-word !important; hyphens: auto; }
.wc-block-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-metadata { margin-top: 7px; font-size: 11px; line-height: 1.4; word-break: normal; overflow-wrap: break-word; }
.wc-block-checkout .wc-block-components-order-summary-item__total-price { grid-column: 3; grid-row: 1; min-width: max-content; margin: 0 !important; white-space: nowrap; text-align: right; }
.wc-block-checkout .wc-block-components-order-summary-item__individual-price { grid-column: 3; grid-row: 2; min-width: 0; text-align: right; }
.wc-block-checkout .wc-block-components-order-summary-item__quantity { z-index: 2; }
.wc-block-cart-items { border-collapse: collapse; }
.wc-block-cart-items th { padding: 0 0 14px !important; font-size: 10px !important; letter-spacing: .14em; text-transform: uppercase; }
.wc-block-cart-items td { padding-block: 24px !important; border-color: var(--da-line) !important; }
.wc-block-cart-item__image img { aspect-ratio: 4/5; object-fit: cover; }
.wc-block-components-product-name { font-family: var(--da-serif); font-size: clamp(20px, 2vw, 27px) !important; font-weight: 500; line-height: 1.1; text-decoration: none !important; }
.wc-block-components-product-price, .wc-block-components-totals-item__value { font-weight: 700; }
.wc-block-components-quantity-selector { border-radius: 0 !important; }
.wc-block-components-button, .wc-block-cart__submit-button { min-height: 54px !important; border-radius: 0 !important; background: var(--da-ink) !important; color: var(--da-white) !important; font-size: 11px !important; font-weight: 800 !important; letter-spacing: .12em; text-transform: uppercase; }
.wc-block-components-button:hover { background: #333 !important; }
.wc-block-components-text-input input, .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input { border-radius: 0 !important; background: var(--da-white) !important; }
.wc-block-cart__empty-cart__title { margin-top: 20px !important; font-family: var(--da-serif); font-size: clamp(30px, 5vw, 54px) !important; font-weight: 400 !important; }
.wp-block-woocommerce-empty-cart-block { padding: clamp(28px, 5vw, 70px); background: var(--da-white); border: 1px solid var(--da-line); }
.wp-block-woocommerce-empty-cart-block .wp-block-heading { font-family: var(--da-serif); font-weight: 400; }
.wc-block-checkout__form .wc-block-components-checkout-step { padding: 0 0 34px !important; }
.wc-block-checkout__form .wc-block-components-checkout-step__heading { margin-bottom: 22px; }
.wc-block-checkout__form .wc-block-components-checkout-step__title { font-family: var(--da-serif); font-size: 30px; font-weight: 500; }
.wc-block-components-order-summary { padding: 0 !important; }

/* Klasszikus pénztár: a terméksor akkor se omoljon össze, ha hosszú a terméknév. */
.woocommerce-checkout-review-order-table { width: 100%; table-layout: auto; }
.woocommerce-checkout-review-order-table .product-name { width: auto; min-width: 0; word-break: normal; overflow-wrap: break-word; }
.woocommerce-checkout-review-order-table .product-total { width: 112px; white-space: nowrap; text-align: right; }

@media (max-width: 1120px) {
	.woocommerce-checkout .wc-block-components-sidebar-layout { display: block !important; }
	.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main,
	.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar { width: 100% !important; }
	.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar { position: static; margin-top: 38px !important; }
}

/* Shared buttons, tables and pagination */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button { border-radius: 0; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.woocommerce nav.woocommerce-pagination { clear: both; margin-top: clamp(52px, 6vw, 82px); }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; margin: 0 4px; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 42px; min-height: 42px; display: grid; place-items: center; background: var(--da-white); }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--da-ink); color: var(--da-white); }

@media (max-width: 980px) {
  .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .shop-content ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .shop-layout { display: block; }
  .shop-filter-toggle { display: block; }
  .shop-sidebar { position: fixed; z-index: 151; inset: 0 auto 0 0; width: min(410px, 92vw); height: 100dvh; padding: 28px; overflow-y: auto; overscroll-behavior: contain; background: var(--da-paper); box-shadow: 20px 0 70px rgba(0,0,0,.22); visibility: hidden; transform: translateX(-105%); transition: transform .3s ease, visibility .3s; }
  .shop-sidebar.is-open { transform: translateX(0); }
  .shop-sidebar.is-open { visibility: visible; }
  .shop-filter-backdrop { position: fixed; z-index: 150; inset: 0; display: block; width: 100%; height: 100%; padding: 0; border: 0; background: rgba(17,17,17,.48); opacity: 0; visibility: hidden; cursor: pointer; backdrop-filter: blur(3px); transition: opacity .25s, visibility .25s; }
  .filters-open .shop-filter-backdrop { opacity: 1; visibility: visible; }
  .filters-open { overflow: hidden; }
  .shop-sidebar__header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 22px; padding-bottom: 18px; border-bottom: 1px solid var(--da-line); }
  .shop-sidebar__header p { margin: 0; font-family: var(--da-serif); font-size: 31px; }
  .shop-filter-close { width: 42px; height: 42px; border: 1px solid var(--da-line); background: transparent; font-size: 24px; }
  .admin-bar .shop-sidebar { top: 32px; height: calc(100dvh - 32px); }
  .single-product div.product { grid-template-columns: 1fr; }
	.single-product .da-product-heading { grid-column: 1; }
  .single-product div.product .woocommerce-product-gallery { position: relative; top: auto; }
  .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; overflow-x: auto; }
  .woocommerce-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; border-bottom: 0; border-right: 1px solid var(--da-line); }
}
@media (max-width: 782px) {
  .admin-bar .shop-sidebar { top: 46px; height: calc(100dvh - 46px); }
}
@media (max-width: 820px) {
  .woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
  .woocommerce-checkout form.checkout > #order_review_heading, .woocommerce-checkout form.checkout > #order_review { position: static; grid-column: 1; grid-row: auto; margin-top: 0; }
  .woocommerce-checkout form.checkout > #order_review_heading { margin-top: 12px; }
  .wc-block-components-sidebar-layout { display: block !important; }
  .wc-block-components-sidebar-layout .wc-block-components-main, .wc-block-components-sidebar-layout .wc-block-components-sidebar { width: 100% !important; }
  .wc-block-components-sidebar-layout .wc-block-components-sidebar { position: static; margin-top: 34px !important; }
}
@media (max-width: 680px) {
  .shop-main { padding-block: 28px 48px; }
  .shop-filter-toggle { position: relative; min-height: 50px; margin-bottom: 26px; background: var(--da-white); }
  .shop-sidebar { width: min(100%, 430px); padding: 22px 20px 32px; }
  .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 34px 12px; }
	.home-shop .woocommerce ul.products li.product,
	.sale-products-section .woocommerce ul.products li.product,
	.shop-content ul.products li.product,
	.related.products ul.products li.product { padding: 8px 8px 12px; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.shop-content ul.products li.product .woocommerce-loop-product__title { min-height: 4em; font-size: clamp(16px,4.6vw,20px); line-height: 1.08; }
	.woocommerce ul.products li.product .button,
	.shop-content ul.products li.product .button { min-height: 42px; padding: 9px 5px !important; font-size: 8px; letter-spacing: .08em; white-space: normal; }
	.woocommerce ul.products li.product .price { font-size: 12px; }
	.woocommerce span.onsale { top: 7px; left: 7px; padding: 6px 7px; font-size: 8px; }
	.single-product form.cart .quantity { flex-basis: 112px; width: 112px !important; grid-template-columns: 32px minmax(42px,1fr) 32px; }
	.da-qty-button { width: 32px; }
	.woocommerce div.product .related.products.is-carousel ul.products { grid-template-columns: none !important; grid-auto-columns: minmax(220px, 72vw); grid-template-rows: repeat(2, minmax(0,1fr)); }
	.single-product div.product .summary { padding: 24px 20px; }
	.single-product .da-product-heading .product_title { font-size: clamp(28px,8.5vw,40px); overflow-wrap: anywhere; }
	.single-product .da-product-kicker { line-height: 1.45; }
	.single-product .woocommerce-product-gallery__image img { padding: 12px; }
	.single-product .flex-control-thumbs { grid-template-columns: repeat(4,1fr); }
	.woocommerce div.product form.cart:not(.variations_form),.woocommerce div.product .single_variation_wrap .woocommerce-variation-add-to-cart { grid-template-columns: 112px minmax(0,1fr); }
	.woocommerce button.button.alt, .woocommerce a.button.alt, .woocommerce #respond input#submit.alt { padding-inline: 10px; font-size: 9px; letter-spacing: .08em; white-space: normal; }
  .woocommerce div.product .woocommerce-tabs { padding: 22px 18px; }
	.woocommerce div.product .woocommerce-tabs ul.tabs { gap: 10px 20px; margin-bottom: 22px; }
	.woocommerce div.product .related.products > h2 { padding-right: 100px; font-size: clamp(32px,10vw,44px); }
	.related-carousel-controls button { width: 40px; height: 40px; }
  .woocommerce-account .woocommerce-MyAccount-content { padding: 22px; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: visible; }
	.woocommerce-account .woocommerce-MyAccount-navigation li { border-right: 1px solid var(--da-line); border-bottom: 1px solid var(--da-line); }
	.woocommerce-account .woocommerce-MyAccount-navigation li:nth-child(2n) { border-right: 0; }
	.woocommerce-account .woocommerce-MyAccount-navigation a { min-height: 52px; padding: 10px; font-size: 9px; letter-spacing: .07em; }
  .woocommerce-account .woocommerce-Addresses { grid-template-columns: 1fr; }
  .woocommerce-cart table.cart .product-thumbnail { display: block; }
	.woocommerce-cart .woocommerce-cart-form { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .woocommerce-cart .coupon { display: grid; }
	.woocommerce-cart .coupon .input-text { width: 100% !important; min-width: 0; }
	.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals { width: 100%; }
	.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2, .woocommerce-checkout #order_review { padding: 20px 16px; }
	.woocommerce-checkout form .form-row-first, .woocommerce-checkout form .form-row-last { float: none; width: 100%; }
	.woocommerce-checkout form.checkout_coupon { grid-template-columns: 1fr; }
	.woocommerce-checkout form.checkout_coupon .button { width: 100%; }
	.woocommerce-checkout-review-order-table .product-name { font-size: 15px; }
	.woocommerce-checkout-review-order-table .product-total { width: 86px; }
  .wc-block-cart-items td { padding-block: 18px !important; }
	.wc-block-components-sidebar-layout .wc-block-components-sidebar, .wc-block-cart__sidebar, .wc-block-checkout__sidebar { padding: 20px 16px !important; }
	.wc-block-checkout .wc-block-components-order-summary-item { grid-template-columns: 52px minmax(0,1fr) !important; gap: 8px 11px !important; }
	.wc-block-checkout .wc-block-components-order-summary-item__image { grid-row: 1 / span 3; width: 52px !important; min-width: 52px !important; }
	.wc-block-checkout .wc-block-components-order-summary-item__image img { width: 52px !important; height: 64px !important; }
	.wc-block-checkout .wc-block-components-order-summary-item__description { grid-row: 1; }
	.wc-block-checkout .wc-block-components-order-summary-item__total-price { grid-column: 2; grid-row: 2; min-width: 0; white-space: normal; text-align: left; }
	.wc-block-checkout .wc-block-components-order-summary-item__individual-price { grid-column: 2; grid-row: 3; min-width: 0; text-align: left; }
	.wc-block-components-text-input input, .wc-block-components-combobox-control input, .woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select { font-size: 16px !important; }
  .shop-content .woocommerce-result-count, .shop-content .woocommerce-ordering { float: none; width: 100%; }
  .shop-content .woocommerce-ordering select { width: 100%; }
	.woocommerce nav.woocommerce-pagination ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; }
	.woocommerce nav.woocommerce-pagination ul li { margin: 0; }
}

@media (max-width: 430px) {
	.shop-content ul.products, .woocommerce ul.products { gap: 24px 9px; }
	.home-shop .woocommerce ul.products li.product,
	.sale-products-section .woocommerce ul.products li.product,
	.shop-content ul.products li.product,
	.related.products ul.products li.product { padding: 7px 7px 10px; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.shop-content ul.products li.product .woocommerce-loop-product__title { font-size: 16px; }
	.single-product div.product .summary { padding: 21px 16px; }
	.single-product form.cart .quantity { flex-basis: 106px; width: 106px !important; grid-template-columns: 30px minmax(40px,1fr) 30px; }
	.da-qty-button { width: 30px; }
	.woocommerce div.product form.cart:not(.variations_form),
	.woocommerce div.product .single_variation_wrap .woocommerce-variation-add-to-cart { grid-template-columns: 106px minmax(0,1fr); gap: 8px; }
	.single-product button.single_add_to_cart_button { padding-inline: 7px !important; font-size: 8px !important; }
	.woocommerce div.product .related.products.is-carousel ul.products { grid-auto-columns: minmax(190px, 78vw); gap: 12px; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul { grid-template-columns: 1fr; }
	.woocommerce-account .woocommerce-MyAccount-navigation li { border-right: 0; }
	.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 12px 9px; }
}
