/* One focus treatment per control. Keep the native form, icon and dialog behavior. */
body.wv-native-header {
  --wv-focus-ink: #001e35;
}

/* Form fields get a single 2px emphasis on their existing boundary, not a floating second box.
   Important is confined to focus presentation, overriding legacy page-specific focus rings. */
body.wv-native-header :where(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="button"]):not([type="reset"]), select, textarea):is(:focus, :focus-visible),
body.wv-native-header .select2-container--focus .select2-selection,
body.wv-native-header .select2-selection:focus-visible {
  outline: 2px solid var(--wv-focus-ink) !important;
  outline-offset: -2px !important;
  box-shadow: none !important;
}

/* Minimog search already owns its border on the form's ::before. Emphasise that one border. */
body.wv-native-header form.search-form .search-field:is(:focus, :focus-visible) {
  outline: none !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}
body.wv-native-header form.search-form.search-field-focused::before,
body.wv-native-header form.search-form:focus-within::before {
  border-color: var(--wv-focus-ink);
  border-width: 2px;
}

/* Keyboard focus stays visible inside solid/outlined buttons; mouse clicks add no outer frame. */
body.wv-native-header :is(button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"], a.button, .wv-btn, .wv-enquiry-button, .wv-ux-header-quote):focus-visible {
  outline: 2px solid currentColor !important;
  outline-offset: -4px !important;
}
body.wv-native-header :is(button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"], a.button, .wv-btn, .wv-enquiry-button, .wv-ux-header-quote):focus:not(:focus-visible) {
  outline: none;
}

/* Preserve the native single FontAwesome glyph and 44px+ hit areas across cart/quick view. */
body.wv-native-header .quantity > :is(button.increase, button.decrease) {
  font-size: 0;
}
