/* Stage 4 — accessibility refinements, scoped to Katie's existing design.
   Content, RRP prices, real photography, Wix consent, Analytics and manual
   enquiries are not changed. Focus indicators remain keyboard-only. */

/* FAQ numerals are decorative, but retain comfortable visual contrast.
   Original #a88f9e on white was only ~2.96:1. */
.legacy-article .faq-hub .faq-step {
  color: #654867;
}
.legacy-article .faq-hub .faq-eyebrow {
  color: #745461 !important;
}
/* Make the links between FAQ sections a comfortable touch size without
   turning prose links into artificial buttons. */
.legacy-article .faq-hub .faq-next a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding-block: 7px;
  line-height: 1.4;
}
.legacy-article .faq-hub .faq-topics a {
  min-height: 44px;
}
/* Explicit keyboard-only outlines for controls in both layout families.
   Existing Stage 3 focus styles remain as an additional safety net. */
:is(.legacy-article,.contact-page-v23,.products-page,.gallery-page)
  :is(a,button,input,select,textarea,summary):focus-visible {
  outline: 3px solid #583562;
  outline-offset: 3px;
}
.mobile-bar a:focus-visible {
  outline: 3px solid #ffe1ac;
  outline-offset: -4px;
}
.footer [data-open-cookie-settings]:focus-visible {
  outline: 3px solid #ffe1ac;
  outline-offset: 3px;
}
.contact-page-v23 :is(input,select,textarea):focus-visible {
  border-color: #583562;
}
/* The mobile action strip and customer enquiries remain reachable without
   tiny touch targets; do not move or cover Wix's cookie choice panel. */
.mobile-bar a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  line-height: 1.4;
}
.footer [data-open-cookie-settings] {
  min-height: 44px;
  cursor: pointer;
}
:where(.contact-page-v23,.gallery-page,.products-page) .btn,
:where(.contact-page-v23,.gallery-page,.products-page) button[data-map-load] {
  min-height: 44px;
}
@media (prefers-reduced-motion: reduce) {
  .legacy-article .faq-hub,
  :is(.contact-page-v23,.products-page,.gallery-page) {
    scroll-behavior: auto;
  }
}
