/*
Theme Name: Hello-Elementor-Child-RTS
Theme URI: https://reasonstostay.co.uk
Template: hello-elementor
Author: Sonny x Inkfire
Author URI: https://inkfire.co.uk
Description: Reasons to Stay child theme (production). Accessibility-first, letters system, admin tools.
Tags: mental-health,accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 5.6.16.1
*/


/* 0) Safety: don't remove focus for keyboard users.
      Only hide outlines for mouse/touch focus. */
.elementor-button:focus:not(:focus-visible) {
  outline: none;
}

/* 1) Keyboard-only visible focus (high contrast, no layout shift) */
.elementor-button:focus-visible {
  outline: 3px solid #FCA311;
  outline-offset: 3px;
}

/* Optional: underline text only, keeps the button box stable */
.elementor-button:focus-visible .elementor-button-text {
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-thickness: 3px;
}

/* 2) Minimum target size (touch + motor accessibility)
      Use padding where possible instead of forcing width/height. */
.elementor-button {
  min-height: 44px;
  min-width: 44px;
  padding-block: max(10px, 0.6em);
  padding-inline: max(14px, 1em);
}

/* 3) Disabled state clarity (non-colour-only cues + no interaction) */
.elementor-button[aria-disabled="true"],
.elementor-button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
  filter: grayscale(15%);
}

/* 4) Reduce motion respect (future-proof) */
@media (prefers-reduced-motion: reduce) {
  .elementor-button {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }
}

/* 5) Forced-colors (Windows High Contrast Mode) support */
@media (forced-colors: active) {
  .elementor-button:focus-visible {
    outline: 2px solid CanvasText;
    outline-offset: 2px;
  }
}