/* React reference uses one landscape banner ratio throughout stacked layouts. */
@media(max-width:1023px){
 .home .dg-hero-grid>.dg-hero-visual{min-height:0;aspect-ratio:12/5;align-self:start}
 .home .dg-hero-grid>.dg-hero-visual img{object-fit:cover;object-position:center}
}
/* Product micro-layout parity: retain the approved palette and typography. */
.dg-header .dg-mobile-tools{display:none}
@media(max-width:900px){
 .dg-header .dg-actions .dg-cart-link,.dg-header .dg-actions .dg-menu-toggle{width:44px;min-width:44px;height:44px;min-height:44px;flex:0 0 44px;align-items:center;justify-content:center;padding:0}
 .dg-header .dg-actions .dg-account-link{min-width:44px;min-height:44px}
 .dg-header .dg-mobile-tools{display:grid;gap:10px;margin-top:8px;padding-top:10px;border-top:1px solid var(--dg-border);min-width:0}
 .dg-header .dg-mobile-account{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;font-size:14px}
 .dg-header .dg-mobile-tools svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}
 .dg-header .dg-mobile-search{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;width:100%;min-width:0;margin:0}
 .dg-header .dg-mobile-search input[type=search]{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--dg-border);border-radius:12px;background:#fff;color:var(--dg-ink);font:inherit;font-size:16px;box-sizing:border-box}
 .dg-header .dg-mobile-search button{display:grid;place-items:center;width:44px;min-height:44px;border:1px solid var(--dg-border);border-radius:12px;background:#f0eaff;color:var(--dg-primary);cursor:pointer}
 .dg-header .dg-mobile-tools :is(a,input,button):focus-visible{outline:2px solid var(--dg-primary);outline-offset:2px}
 .home .dg-hero-actions .dg-button,.woocommerce ul.products li.product a.button{min-height:44px!important}
}
.single-product.woocommerce div.product .dg-single-visual{box-sizing:border-box;width:100%;min-width:0;height:auto;align-self:start}
.single-product.woocommerce div.product .dg-single-visual>.dg-single-art{box-sizing:border-box;width:100%!important;max-width:100%;margin:0!important;aspect-ratio:1;min-height:0;overflow:hidden}
.single-product.woocommerce div.product .dg-single-art--image>img{display:block;width:100%!important;max-width:100%;height:100%!important;aspect-ratio:1;object-fit:cover;margin:0!important}
.single-product.woocommerce div.product table.dg-polished-variations{margin:16px 0 0!important}
.single-product.woocommerce div.product table.dg-polished-variations tbody{gap:10px!important;align-items:start}
.single-product.woocommerce div.product table.dg-polished-variations tr{display:block!important;min-width:0;min-height:0!important;padding:0!important;border:0!important;background:none!important;border-radius:0!important}
.single-product.woocommerce div.product table.dg-polished-variations th.label{display:none!important}
.single-product.woocommerce div.product table.dg-polished-variations td.value{display:block!important;width:100%!important;padding:0!important}
.single-product.woocommerce div.product .dg-option-fieldset{box-sizing:border-box;min-width:0;width:100%;margin:0;padding:10px 12px 12px;border:1px solid var(--dg-border,#e8e0f5);border-radius:16px;background:#f6f2ff}
.single-product.woocommerce div.product .dg-option-fieldset legend{float:none;width:auto;max-width:100%;margin:0;padding:0 3px;font-family:inherit;font-size:14px;font-weight:500;line-height:20px;color:inherit}
.single-product.woocommerce div.product .dg-option-fieldset legend label{display:inline;margin:0!important;padding:0!important;font-size:14px!important;font-weight:500!important;line-height:20px!important}
.single-product.woocommerce div.product .dg-option-fieldset .dg-variation-pills{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 0!important}
.single-product.woocommerce div.product .dg-option-fieldset .dg-variation-pills button{min-height:38px;padding:7px 12px!important;font-size:14px!important;font-weight:400!important;line-height:20px!important;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.single-product.woocommerce div.product .dg-option-fieldset .reset_variations{display:inline-block;margin-top:8px;font-size:12px;line-height:18px}
.single-product.woocommerce div.product .dg-option-fieldset .reset_variations[style*="hidden"]{display:none!important}
.single-product.woocommerce div.product .dg-delivery-field{margin:14px 0 0!important;padding:12px!important;border-radius:16px;gap:0}
.single-product.woocommerce div.product .dg-delivery-field::before{content:none;display:none}
.single-product.woocommerce div.product .dg-delivery-field label{font-size:14px!important;line-height:20px!important;font-weight:500!important;margin:8px 0 5px!important}
.single-product.woocommerce div.product .dg-delivery-field input,.single-product.woocommerce div.product .dg-delivery-field select{font-family:inherit;font-size:14px;min-height:40px;height:auto;padding:8px 12px!important;line-height:22px;border-radius:999px;box-sizing:border-box}
.single-product.woocommerce div.product .dg-delivery-field small{display:block;margin-top:7px;line-height:1.5;font-size:11px}
.single-product.woocommerce div.product form.cart .single_add_to_cart_button{margin-top:16px!important;min-height:46px;line-height:22px!important}
.single-product.woocommerce div.product form.cart .dg-order-terms{clear:both;display:block;margin-top:10px!important;line-height:1.5;overflow-wrap:anywhere}
/* Account has one navigation/content pair, not three nested page cards. */
/* Mobile cart items use the native Woo cells as compact cards, preserving controls. */
@media(max-width:768px){
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart{display:block;width:100%;border:0;background:transparent;box-shadow:none;overflow:visible}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tbody{display:block;width:100%}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item{display:grid;grid-template-columns:56px minmax(0,1fr) 44px;gap:10px 8px;position:relative;margin:0 0 14px;padding:12px;border:1px solid var(--dg-border);border-radius:16px;background:#fff}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td{display:block;width:auto;min-width:0;max-width:100%;padding:0;border:0;background:transparent!important;text-align:left!important;float:none}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td.product-thumbnail{display:block!important;grid-column:1;grid-row:1}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td.product-thumbnail::before,body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td.product-name::before{display:none}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td.product-name{grid-column:2;grid-row:1;overflow-wrap:anywhere}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td.product-name>a{display:block;font-size:14px;line-height:1.4}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td.product-remove{grid-column:3;grid-row:1;align-self:start;justify-self:end}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td.product-remove a{width:44px;height:44px;min-width:44px;min-height:44px;margin:0}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item :is(td.product-price,td.product-quantity,td.product-subtotal){grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;border-top:1px solid var(--dg-border);padding-top:9px}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td.product-quantity{min-height:44px}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item td::before{float:none;font-size:12px;font-weight:500;color:var(--dg-muted)}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item dl.variation{margin:7px 0 0;font-size:12px;line-height:1.5}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item dl.variation :is(dt,dd){float:none;display:block;margin:0;padding:0;overflow-wrap:anywhere;text-align:left}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item dl.variation dd{margin-bottom:5px}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart tr.cart_item dl.variation p{margin:0}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart td.actions{padding:12px;border:1px solid var(--dg-border);border-radius:16px;background:#fff}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart td.actions .coupon{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding-bottom:10px}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.cart td.actions :is(.coupon input.input-text,.coupon button.button,button[name=update_cart]){width:100%!important;margin:0;min-height:44px}
}
/* Keep monetary amounts readable instead of wrapping single digits into new rows. */
.woocommerce .dg-cart-artwork{display:block;width:56px;height:56px;overflow:hidden;border-radius:12px;flex:none;text-align:left}
.woocommerce .dg-cart-artwork>.dg-product-art{width:224px!important;height:224px!important;min-height:0!important;margin:0!important;padding:20px!important;transform:scale(.25);transform-origin:top left;border-radius:0!important;box-sizing:border-box}
.woocommerce .dg-cart-artwork>.dg-product-art strong{font-size:24px!important;line-height:1.15!important}
.woocommerce .dg-cart-product-image{width:56px!important;height:56px!important;object-fit:cover;border-radius:12px}
body.woocommerce-checkout .woocommerce #order_review table.shop_table :is(.product-total,tfoot td){width:100px;min-width:90px;white-space:nowrap;overflow-wrap:normal;word-break:normal;text-align:right;padding-left:14px}
body.woocommerce-checkout .woocommerce #order_review table.shop_table .product-name{overflow-wrap:anywhere}
body.woocommerce-checkout .woocommerce #order_review table.shop_table .amount,body.woocommerce-cart .woocommerce table.shop_table .amount{white-space:nowrap;overflow-wrap:normal;word-break:normal}
body.woocommerce-cart .woocommerce table.shop_table :is(.product-price,.product-subtotal,.product-quantity){white-space:nowrap;overflow-wrap:normal;word-break:normal}
@media(min-width:769px){
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.shop_table :is(th,td){padding:12px 8px}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.shop_table .product-remove{width:44px}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.shop_table .product-thumbnail{width:56px}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.shop_table :is(.product-price,.product-subtotal){min-width:72px}
 body.woocommerce-cart .woocommerce .woocommerce-cart-form:not(.dg-cart-cards) table.shop_table .product-quantity{min-width:76px}
}
.woocommerce-account .dg-page-shell{padding-top:calc(var(--dg-admin-header-height,81px) + 36px);padding-bottom:56px}
/* Desktop header is fixed; mobile header already occupies normal flow.
   Reserve its height for every account endpoint, including guest auth forms. */
@media(max-width:900px){
 .woocommerce-account .dg-page-shell{padding-top:36px}
}
.woocommerce-account .dg-page-shell>.dg-content{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;width:min(1240px,calc(100% - 40px));max-width:none}
.woocommerce-account .dg-content>.dg-editable-page{width:100%;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.woocommerce-account .dg-editable-page>.dg-page-hero{padding:0;margin:0 0 24px;border:0;border-radius:0;box-shadow:none;background:transparent;text-align:left}
.woocommerce-account .dg-editable-page>.dg-page-hero h1{font-size:clamp(26px,3vw,34px);font-weight:600;line-height:1.25;margin:0}
.woocommerce-account .dg-page-content{max-width:none;min-width:0}
.woocommerce-account .woocommerce form.woocommerce-EditAccountForm fieldset{min-width:0;margin:20px 0 16px;padding:16px;border:1px solid var(--dg-border);border-radius:16px;background:#faf9ff}
.woocommerce-account .woocommerce form.woocommerce-EditAccountForm legend{padding:0 6px;font-size:14px;font-weight:500}
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .woocommerce .woocommerce-info{border-top-color:var(--dg-primary);border-radius:12px;background:#f6f2ff;color:var(--dg-ink)}
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .woocommerce .woocommerce-info::before{color:var(--dg-primary)}
.woocommerce-checkout .woocommerce .select2-container .select2-selection--single{min-height:44px;border:1px solid var(--dg-border);border-radius:12px;background:#fff}
.woocommerce-checkout .woocommerce .select2-container .select2-selection--single .select2-selection__rendered{line-height:42px;padding-left:14px;padding-right:28px;color:var(--dg-ink)}
.woocommerce-checkout .woocommerce .select2-container .select2-selection--single .select2-selection__arrow{height:42px;right:7px}
.woocommerce-account .woocommerce-MyAccount-content{overflow-wrap:anywhere}
@media(min-width:640px){
 .single-product.woocommerce div.product .dg-delivery-field input:not([type=checkbox]):not([type=radio]),.single-product.woocommerce div.product .dg-delivery-field select{display:block;width:min(100%,320px)!important}
}
/* Native Elementor forms retain editable content and comfortable mobile/tablet controls. */
@media(max-width:1024px){
 .dg-elementor-content .elementor-widget-form .elementor-field:not([type="hidden"]){font-size:16px!important;min-height:44px!important}
 .dg-elementor-content .elementor-widget-form .elementor-button{min-height:44px!important}
}
@media(max-width:767px){
 .single-product.woocommerce div.product .dg-option-fieldset .dg-variation-pills button{min-height:44px}
 .single-product.woocommerce div.product .dg-delivery-field input,.single-product.woocommerce div.product .dg-delivery-field select,.single-product.woocommerce div.product .dg-delivery-field textarea{font-size:16px!important;width:100%!important}
 .single-product.woocommerce div.product .dg-single-visual{padding:12px!important}
 .woocommerce-account .dg-page-shell{padding-top:24px;padding-bottom:36px}
 .woocommerce-account .dg-page-shell>.dg-content{width:calc(100% - 28px);padding:0}
 .woocommerce-account .dg-editable-page>.dg-page-hero{margin-bottom:18px}
}
