/* Focus, touch targets and reflow without changing the brand artwork. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 5px white}
:where(button,input,select,textarea){max-width:100%}
input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select{min-height:44px}
textarea{min-height:96px}
.search button{min-width:44px;min-height:44px}
.bag-count{background:var(--teal-dark)}
.filter-chips a,.pagination a,.desk-tabs a{min-height:44px;display:inline-flex;align-items:center}
summary{min-height:44px;cursor:pointer}
.shopping-info summary{display:list-item}
.checkout-panel table{width:100%;border-collapse:collapse}
.checkout-panel th,.checkout-panel td{padding:10px;text-align:start;overflow-wrap:anywhere}
.field-help,.errorlist,.form-error-summary,.preview-note{overflow-wrap:anywhere}
.errorlist{color:#9b1c31}
main :where([id],a,button,input,select,textarea,summary){scroll-margin-block:180px 100px}
@media(max-width:600px){
  .mobile-nav{padding-inline:8px;gap:0}
  .mobile-nav a{min-width:0;min-height:48px;flex:1;padding-inline:3px;overflow-wrap:anywhere}
  .catalog-filters .field{min-width:0}
  .catalog-filters input,.catalog-filters select{width:100%}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight;box-shadow:none}.status-badge,.bag-count{border:1px solid CanvasText}}
