/* Maintained interaction overrides; the recovered design remains the base. */
.cart-panel .cart-x,.cart-panel .cart-qty-btn,.cart-panel .cart-remove{
  min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;
}
.cart-panel .cart-qty{padding:0 .25rem;gap:.25rem}
.dt-media--gallery .dt-zoomhint{display:none}
.dt-media--gallery .lcn-gallery-zoom{
  position:absolute;right:12px;bottom:12px;z-index:4;min-height:44px;
  padding:8px 12px;border:1px solid #000;border-radius:999px;background:#fff;color:#000;
  font:500 11px/1.3 var(--font-mono,monospace);cursor:pointer;
}
.dt-media--gallery .dt-arrow{width:44px;height:44px}
.dt-media--gallery .lcn-gallery-zoom:focus-visible,.dt-media--gallery .dt-arrow:focus-visible{
  outline:2px solid #000;outline-offset:3px;background:#fff;
}
.marketing-email-form input[aria-invalid=true],.marketing-sms-form input[aria-invalid=true]{
  border:2px solid #8a241c;
}
@media(max-width:600px){
  /* Flex items must shrink to the signup section rather than their text's intrinsic width. */
  .ec .ec-copy,.ec .ec-form-wrap{min-width:0;width:100%;max-width:100%}
  .ec .hh-form{min-width:0;width:100%;max-width:100%}
}
@media(max-width:360px){
  .ec .hh-form{flex-direction:column}
  .ec .hh-form input,.ec .hh-form button{box-sizing:border-box;width:100%;max-width:100%}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .dt-media img,.dt-media--gallery .dt-frame-img,.lk-nav,.lk-menu-chev,
  .lk-announce button span{transition:none!important;animation:none!important}
}

.legal .inline-privacy-action{font:inherit;color:var(--color-teal);text-decoration:underline;text-underline-offset:2px;border:0;background:transparent;padding:0;min-height:44px;cursor:pointer}
