/* Curated retail layout. Commerce mechanics remain native WooCommerce. */
.dp-mast-top {padding:var(--space-6) 0;gap:var(--space-6);align-items:center}
.dp-wordmark {font-size:clamp(28px,3.6vw,44px);line-height:1;letter-spacing:-.02em}
.dp-tagline {font-family:var(--body);font-size:var(--text-small);text-transform:none;letter-spacing:0;margin-top:var(--space-2)}
.dp-search {margin-left:auto;min-width:0;max-width:360px}
.dp-search input {min-width:0;font-size:var(--text-body)}
.dp-search button,.dp-depts a,.dp-cartlink {min-height:var(--touch);display:inline-flex;align-items:center}
.dp-depts ul {gap:var(--space-6);flex-wrap:wrap}
.dp-depts a {font-size:var(--text-small);letter-spacing:.03em}
.dp-front {padding-top:0}
.dp-shop-intro {display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:var(--space-16);align-items:center;padding:var(--space-12) 0;border-bottom:var(--line);margin-bottom:var(--space-10)}
.dp-shop-intro h1 {font-family:var(--display);font-size:clamp(42px,5.4vw,64px);line-height:1.04;font-weight:400;letter-spacing:0;margin:var(--space-4) 0 var(--space-6);max-width:18ch}
.dp-storefront > section + section {margin-top:var(--space-8)}
.dp-shop-intro > div > p:not(.dp-eyebrow) {font-size:var(--text-lead);max-width:var(--measure);color:var(--graphite)}
.dp-primary {display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-10);min-height:48px;padding:var(--space-3) var(--space-6);background:var(--wrap);color:var(--label);font-weight:600;text-decoration:none}
.dp-primary:hover {background:var(--wrap-deep);color:var(--label)}
.dp-shop-note {border-left:2px solid var(--wrap);padding:var(--space-4) 0 var(--space-4) var(--space-8);max-width:38ch}
.dp-shop-note p {color:var(--graphite);font-size:var(--text-body)}
.dp-shop-note .dp-eyebrow {color:var(--wrap);font-weight:600;font-size:12px}
.dp-shop-note a {font-size:var(--text-small);font-weight:600}
.dp-sechead {align-items:center;margin-bottom:var(--space-6)}
.dp-sechead h2 {font-size:32px}
.dp-sechead > a {font-size:var(--text-small);min-height:var(--touch);display:inline-flex;align-items:center}
:is(ul.products,.dp-grid) {grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-6)}
:is(ul.products,.dp-grid) > li {min-width:0}
.dp-tag {border:var(--line);height:100%;background:var(--label);transition:border-color .15s ease}
.dp-tag:hover {border-color:var(--wrap);box-shadow:none;transform:none}
.dp-tag::before,.dp-tag::after {content:none}
.dp-shot {aspect-ratio:1/1;height:auto;background:var(--label);padding:var(--space-6);border-bottom:var(--line)}
.dp-shot img {width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.dp-shot--none {display:flex;align-items:center;justify-content:center;color:var(--graphite);font:var(--text-small) var(--body)}
.dp-tagbody {padding:var(--space-4);display:flex;flex:1;flex-direction:column;gap:var(--space-2)}
.dp-tagbody .dp-eyebrow {font-size:11px;letter-spacing:.05em;color:var(--graphite);margin:0}
.dp-name {font:600 var(--text-body)/1.4 var(--body);display:block;-webkit-line-clamp:unset;overflow:visible;min-height:0;margin:0 0 var(--space-3)}
.dp-tagfoot {margin-top:auto;align-items:center;flex-wrap:wrap;gap:var(--space-2)}
.dp-price {font-size:22px}
.dp-view-item {display:flex;justify-content:space-between;padding-top:var(--space-3);border-top:var(--line);margin-top:var(--space-2);font-size:var(--text-small);font-weight:600}
.dp-instock {font-size:11px}
.dp-service-strip {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8);border-top:var(--line);border-bottom:var(--line);padding:var(--space-8) 0;margin-top:var(--space-12)}
.dp-service-strip h2 {font:600 var(--text-body)/1.5 var(--body);margin:0 0 var(--space-2)}
.dp-service-strip p {font-size:var(--text-small);color:var(--graphite);margin:0}
.dp-live-note {display:flex;justify-content:space-between;gap:var(--space-8);align-items:center;padding:var(--space-10) 0}
.dp-live-note h2 {font-family:var(--display);font-size:32px;margin-bottom:var(--space-2)}
.dp-live-note p {color:var(--graphite);margin-bottom:var(--space-2)}
.dp-live-note > a {flex-shrink:0;min-height:var(--touch);display:inline-flex;align-items:center}
.dp-cols {display:block}
.dp-head {padding-bottom:var(--space-6)}
.dp-manifest {gap:var(--space-4);flex-wrap:wrap}
.dp-manifest form {display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}
.dp-manifest select,.dp-manifest button {min-height:var(--touch);font-size:var(--text-small)}
.dp-manifest button {padding:var(--space-2) var(--space-4);background:var(--wrap);color:var(--label);border:0;cursor:pointer}
.dp-ptitle {font:600 clamp(26px,3vw,38px)/1.15 var(--body);letter-spacing:-.025em}
.dp-gallery .woocommerce-product-gallery,.dp-gallery .woocommerce-product-gallery__wrapper,.dp-gallery .woocommerce-product-gallery__image > a {height:100%;display:block}
.dp-pstock {font-size:var(--text-small)}
.dp-pprice {margin-bottom:var(--space-2)}
.dp-product-note {font-size:var(--text-small);color:var(--graphite);margin:var(--space-3) 0 var(--space-6)}
.dp-spec {margin-top:var(--space-6)}
.dp-fulfil {font-size:var(--text-small)}
.dp-fulfil h2 {font:600 var(--text-body)/1.5 var(--body)}
.dp-product-description {margin-top:var(--space-6);font-size:var(--text-body)}
.dp-order-help {padding:var(--space-4);border-left:3px solid var(--wrap);background:var(--label);font-size:var(--text-small)}
.single-product form.cart {display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}
.single-product form.cart .quantity {float:none;margin:0}
.single-product form.cart .qty {min-height:48px;max-width:96px;font-size:var(--text-body)}
.single-product form.cart .single_add_to_cart_button {min-height:48px;flex:1;font-size:var(--text-body)}
.dp-footrail {font-family:var(--body);font-size:var(--text-small);text-transform:none;letter-spacing:0;flex-wrap:wrap}
.dp-footdepts {gap:var(--space-4);flex-wrap:wrap}
.dp-footdepts a {min-height:var(--touch);display:inline-flex;align-items:center}
.dp-copyright {font-size:12px;color:var(--mast-dim);margin-top:var(--space-6)}
.woocommerce-page .site-main,.woocommerce-page .entry-content {min-width:0}
.woocommerce-cart .entry-title,.woocommerce-checkout .entry-title {font-family:var(--display);font-size:40px}
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout {font-family:var(--body)}
.dp-empty {padding:var(--space-8);max-width:var(--measure)}
.dp-empty p {margin-top:var(--space-3)}
@media (max-width:900px) {
  .dp-mast-top {flex-wrap:wrap;gap:var(--space-4)}
  .dp-search {order:3;flex:1 1 100%;max-width:none}
  .dp-cartlink {margin-left:auto}
  .dp-shop-intro {gap:var(--space-8)}
  :is(ul.products,.dp-grid) {grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
}
@media (max-width:600px) {
  :root {--gutter:16px}
  .dp-mast-top {padding:var(--space-4) 0}
  .dp-wordmark {font-size:32px}
  .dp-tagline {font-size:12px;max-width:29ch;line-height:1.4}
  .dp-depts ul {gap:var(--space-4);justify-content:space-between;flex-wrap:nowrap}
  .dp-depts a {font-size:12px;letter-spacing:0;white-space:nowrap}
  .dp-search label {display:none}
  .dp-shop-intro {grid-template-columns:minmax(0,1fr);padding:var(--space-8) 0;gap:var(--space-6);margin-bottom:var(--space-8)}
  .dp-shop-intro h1 {font-size:48px;margin:var(--space-3) 0 var(--space-4)}
  .dp-shop-intro > div > p:not(.dp-eyebrow) {font-size:var(--text-body)}
  .dp-desktop-break {display:none}
  .dp-shop-note {display:none}
  .dp-shop-note p {font-size:var(--text-small);margin-bottom:var(--space-2)}
  .dp-shop-note .dp-eyebrow {font-size:11px}
  :is(ul.products,.dp-grid) {grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
  .dp-shot {padding:var(--space-3)}
  .dp-tagbody {padding:var(--space-3)}
  .dp-name {font-size:var(--text-small)}
  .dp-price {font-size:20px}
  .dp-tagfoot {display:block}
  .dp-instock {display:block;margin-top:var(--space-1)}
  .dp-view-item {font-size:12px}
  .dp-sechead h2 {font-size:28px}
  .dp-sechead > a {font-size:12px}
  .dp-service-strip {grid-template-columns:minmax(0,1fr);gap:var(--space-5);margin-top:var(--space-8)}
  .dp-live-note {display:block;padding:var(--space-8) 0}
  .dp-live-note > a {margin-top:var(--space-3)}
  .dp-footrail {display:block}
  .dp-footrail > div {margin-bottom:var(--space-2)}
  .dp-manifest {align-items:flex-start}
  .dp-manifest form {width:100%}
}
@media (prefers-reduced-motion:reduce) { .dp-tag {transition:none} }

.dp-whatnot h2 {font-family:var(--display);font-size:32px;font-weight:400;line-height:1.15}
