/* ==========================================================================
   RightHomes4U — focus-state fix  (v4.9)

   Many themes (Hello / Elementor kits included) paint a red :focus state on
   buttons and links. This file forces every RightHomes4U control to keep its
   own colours on :focus / :focus-visible / :focus-within / :active, and adds
   a soft orange focus ring for keyboard users instead.

   Loaded LAST so it always wins. Everything is scoped to our own containers,
   so the rest of the site is untouched.
   ========================================================================== */

:root {
	--rh-orange: #f2600c;
	--rh-orange-dark: #d95309;
	--rh-orange-soft: #fff3ec;
	--rh-ring: 0 0 0 3px rgba(242, 96, 12, .18);
	--rh-ink: #1c2430;
	--rh-line: #e6eaf0;
}

/* --------------------------------------------------------------------------
   0. Kill the theme's red focus everywhere inside our components
   -------------------------------------------------------------------------- */
.rh-page :is(a, button, input, select, textarea, [role="button"]):focus,
.rh-page :is(a, button, input, select, textarea, [role="button"]):focus-visible,
.rh-page :is(a, button, input, select, textarea, [role="button"]):active,
.rh-hero :is(a, button, input, select, textarea, [role="button"]):focus,
.rh-hero :is(a, button, input, select, textarea, [role="button"]):focus-visible,
.rh-hero :is(a, button, input, select, textarea, [role="button"]):active,
.rh-featured :is(a, button, input, select, textarea, [role="button"]):focus,
.rh-featured :is(a, button, input, select, textarea, [role="button"]):focus-visible,
.rh-featured :is(a, button, input, select, textarea, [role="button"]):active,
.rh-single :is(a, button, input, select, textarea, [role="button"]):focus,
.rh-single :is(a, button, input, select, textarea, [role="button"]):focus-visible,
.rh-single :is(a, button, input, select, textarea, [role="button"]):active,
.rh-ac :is(a, button, [role="option"]):focus,
.rh-map :is(a, button, input, select):focus {
	outline: none !important;
	outline-color: transparent !important;
	background-image: none !important;
	text-decoration: none !important;
	box-shadow: var(--rh-ring) !important;
}

/* --------------------------------------------------------------------------
   1. Solid ORANGE buttons — stay orange on focus, darker orange on hover
   -------------------------------------------------------------------------- */
.rh-hero .rh-hero__btn,
.rh-page .rh-hero__btn,
.rh-page .rh-btn,
.rh-page .rh-btn--primary,
.rh-page .rh-apply,
.rh-page .rh-filters__apply,
.rh-page .rh-search__btn,
.rh-page .rh-searchbar__btn,
.rh-page .rh-searchbar__submit,
.rh-page .rh-msearch__btn,
.rh-page .rh-sb__btn,
.rh-page button[type="submit"],
.rh-page input[type="submit"],
.rh-single .rh-enq-submit,
.rh-single .rh-book__submit,
.rh-single .rh-btn--primary,
.rh-single button[type="submit"],
.rh-featured .rh-fc-btn,
.rh-featured .rh-fc-more {
	background-color: var(--rh-orange) !important;
	background-image: none !important;
	color: #fff !important;
	border-color: var(--rh-orange) !important;
}

.rh-hero .rh-hero__btn:hover,
.rh-page .rh-hero__btn:hover,
.rh-page .rh-btn:hover,
.rh-page .rh-btn--primary:hover,
.rh-page .rh-apply:hover,
.rh-page .rh-filters__apply:hover,
.rh-page .rh-search__btn:hover,
.rh-page .rh-searchbar__btn:hover,
.rh-page .rh-searchbar__submit:hover,
.rh-page .rh-msearch__btn:hover,
.rh-page .rh-sb__btn:hover,
.rh-page button[type="submit"]:hover,
.rh-page input[type="submit"]:hover,
.rh-single .rh-enq-submit:hover,
.rh-single .rh-book__submit:hover,
.rh-single .rh-btn--primary:hover,
.rh-single button[type="submit"]:hover,
.rh-featured .rh-fc-btn:hover,
.rh-featured .rh-fc-more:hover {
	background-color: var(--rh-orange-dark) !important;
	color: #fff !important;
	border-color: var(--rh-orange-dark) !important;
}

.rh-hero .rh-hero__btn:focus,
.rh-hero .rh-hero__btn:focus-visible,
.rh-hero .rh-hero__btn:active,
.rh-page .rh-hero__btn:focus,
.rh-page .rh-btn:focus,
.rh-page .rh-btn--primary:focus,
.rh-page .rh-apply:focus,
.rh-page .rh-filters__apply:focus,
.rh-page .rh-search__btn:focus,
.rh-page .rh-searchbar__btn:focus,
.rh-page .rh-searchbar__submit:focus,
.rh-page .rh-msearch__btn:focus,
.rh-page .rh-sb__btn:focus,
.rh-page button[type="submit"]:focus,
.rh-page input[type="submit"]:focus,
.rh-page .rh-btn:active,
.rh-page button[type="submit"]:active,
.rh-single .rh-enq-submit:focus,
.rh-single .rh-book__submit:focus,
.rh-single .rh-btn--primary:focus,
.rh-single button[type="submit"]:focus,
.rh-single button[type="submit"]:active,
.rh-featured .rh-fc-btn:focus,
.rh-featured .rh-fc-btn:active,
.rh-featured .rh-fc-more:focus {
	background-color: var(--rh-orange) !important;
	background-image: none !important;
	color: #fff !important;
	border-color: var(--rh-orange) !important;
	box-shadow: var(--rh-ring) !important;
}

.rh-hero .rh-hero__btn:focus:hover,
.rh-page .rh-btn:focus:hover,
.rh-page button[type="submit"]:focus:hover,
.rh-page input[type="submit"]:focus:hover,
.rh-single button[type="submit"]:focus:hover,
.rh-featured .rh-fc-btn:focus:hover {
	background-color: var(--rh-orange-dark) !important;
	color: #fff !important;
}

/* --------------------------------------------------------------------------
   2. LIGHT / OUTLINE controls — white background, orange accent on focus
      (chips, reset, view toggles, tabs, pagination, accordion heads)
   -------------------------------------------------------------------------- */
.rh-page .rh-chip,
.rh-page .rh-chip__x,
.rh-page .rh-chips__clear,
.rh-page .rh-reset,
.rh-page .rh-filters__reset,
.rh-page .rh-btn--ghost,
.rh-page .rh-view,
.rh-page .rh-view__link,
.rh-page .rh-toolbar__view a,
.rh-page .rh-acc__head,
.rh-page .rh-accordion__head,
.rh-page .rh-pagination a,
.rh-page .rh-pag a,
.rh-page .page-numbers,
.rh-single .rh-tab,
.rh-single .rh-tabs__btn,
.rh-single .rh-gal__nav,
.rh-featured .rh-fx-arrow,
.rh-featured .rh-featured__arrow,
.rh-featured .rh-dot {
	background-image: none !important;
}

.rh-page .rh-chip:hover,
.rh-page .rh-chips__clear:hover,
.rh-page .rh-reset:hover,
.rh-page .rh-filters__reset:hover,
.rh-page .rh-btn--ghost:hover,
.rh-page .rh-view:hover,
.rh-page .rh-view__link:hover,
.rh-page .rh-toolbar__view a:hover,
.rh-page .rh-acc__head:hover,
.rh-page .rh-accordion__head:hover,
.rh-page .rh-pagination a:hover,
.rh-page .rh-pag a:hover,
.rh-page .page-numbers:hover,
.rh-single .rh-tab:hover,
.rh-single .rh-tabs__btn:hover,
.rh-single .rh-gal__nav:hover,
.rh-featured .rh-fx-arrow:hover,
.rh-featured .rh-featured__arrow:hover {
	background-color: var(--rh-orange-soft) !important;
	color: var(--rh-orange) !important;
	border-color: var(--rh-orange) !important;
}

.rh-page .rh-chip:focus,
.rh-page .rh-chip:focus-visible,
.rh-page .rh-chip:active,
.rh-page .rh-chip__x:focus,
.rh-page .rh-chips__clear:focus,
.rh-page .rh-chips__clear:focus-visible,
.rh-page .rh-chips__clear:active,
.rh-page .rh-reset:focus,
.rh-page .rh-reset:active,
.rh-page .rh-filters__reset:focus,
.rh-page .rh-btn--ghost:focus,
.rh-page .rh-view:focus,
.rh-page .rh-view:active,
.rh-page .rh-view__link:focus,
.rh-page .rh-toolbar__view a:focus,
.rh-page .rh-acc__head:focus,
.rh-page .rh-accordion__head:focus,
.rh-page .rh-pagination a:focus,
.rh-page .rh-pag a:focus,
.rh-page .page-numbers:focus,
.rh-single .rh-tab:focus,
.rh-single .rh-tabs__btn:focus,
.rh-single .rh-gal__nav:focus,
.rh-featured .rh-fx-arrow:focus,
.rh-featured .rh-featured__arrow:focus,
.rh-featured .rh-dot:focus {
	background-color: #fff !important;
	color: var(--rh-orange) !important;
	border-color: var(--rh-orange) !important;
	box-shadow: var(--rh-ring) !important;
}

/* Final theme-proof safety net for every non-submit RH button. Specific
   component rules below still preserve orange-filled active controls. */
.rh-page button:not([type="submit"]):focus,
.rh-page button:not([type="submit"]):focus-visible,
.rh-page button:not([type="submit"]):active,
.rh-hero button:not([type="submit"]):focus,
.rh-hero button:not([type="submit"]):focus-visible,
.rh-featured button:not([type="submit"]):focus,
.rh-featured button:not([type="submit"]):focus-visible,
.rh-single button:not([type="submit"]):focus,
.rh-single button:not([type="submit"]):focus-visible {
	background-image: none !important;
	background-color: #fff !important;
	color: var(--rh-orange) !important;
	border-color: var(--rh-orange) !important;
	outline: none !important;
	box-shadow: var(--rh-ring) !important;
}

/* Active state stays orange-filled where it already was */
.rh-page .rh-view.is-active,
.rh-page .rh-view.is-active:focus,
.rh-page .rh-view__link.is-active,
.rh-page .rh-view__link.is-active:focus,
.rh-single .rh-tab.is-active,
.rh-single .rh-tab.is-active:focus,
.rh-single .rh-tabs__btn.is-active,
.rh-single .rh-tabs__btn.is-active:focus,
.rh-hero .rh-hero__tab.is-active,
.rh-hero .rh-hero__tab.is-active:focus,
.rh-page .rh-hero__tab.is-active,
.rh-page .rh-hero__tab.is-active:focus,
.rh-page .page-numbers.current {
	background-color: var(--rh-orange) !important;
	color: #fff !important;
	border-color: var(--rh-orange) !important;
}

/* Sales / Lettings tabs (hero, list page, map page) ------------------------ */
.rh-hero .rh-hero__tab:focus,
.rh-hero .rh-hero__tab:focus-visible,
.rh-hero .rh-hero__tab:active,
.rh-page .rh-hero__tab:focus,
.rh-page .rh-dept:focus,
.rh-page .rh-dept-tab:focus,
.rh-page .rh-searchbar__tab:focus,
.rh-page .rh-msearch__tab:focus {
	background-color: #fff !important;
	color: var(--rh-ink) !important;
	box-shadow: var(--rh-ring) !important;
}

.rh-page .rh-dept.is-active,
.rh-page .rh-dept.is-active:focus,
.rh-page .rh-dept-tab.is-active,
.rh-page .rh-dept-tab.is-active:focus,
.rh-page .rh-searchbar__tab.is-active,
.rh-page .rh-searchbar__tab.is-active:focus,
.rh-page .rh-msearch__tab.is-active,
.rh-page .rh-msearch__tab.is-active:focus {
	background-color: var(--rh-orange) !important;
	color: #fff !important;
}

/* --------------------------------------------------------------------------
   3. Inputs / selects / checkboxes — orange focus, never red
   -------------------------------------------------------------------------- */
.rh-page input:focus,
.rh-page select:focus,
.rh-page textarea:focus,
.rh-hero input:focus,
.rh-hero select:focus,
.rh-single input:focus,
.rh-single select:focus,
.rh-single textarea:focus {
	border-color: var(--rh-orange) !important;
	box-shadow: var(--rh-ring) !important;
	background-color: #fff !important;
	color: var(--rh-ink) !important;
}

.rh-page input[type="checkbox"],
.rh-page input[type="radio"],
.rh-single input[type="checkbox"] {
	accent-color: var(--rh-orange) !important;
}

.rh-page input[type="checkbox"]:focus,
.rh-page input[type="radio"]:focus {
	box-shadow: var(--rh-ring) !important;
	background-color: transparent !important;
}

/* Card links must never inherit a red focus colour ------------------------- */
.rh-page .rh-card a:focus,
.rh-page .rh-card a:active,
.rh-featured .rh-fc a:focus,
.rh-featured .rh-fc a:active,
.rh-single a:focus {
	color: inherit !important;
	box-shadow: none !important;
}

.rh-page .rh-card a:focus-visible,
.rh-featured .rh-fc a:focus-visible {
	box-shadow: var(--rh-ring) !important;
	border-radius: 8px !important;
}
