:root {
				--rs-body-bg: #ffffff;
				--rs-cc-bg: rgba(255,255,255,1);
				--rs-cc-heading: #111111;
				--rs-cc-text: #111111;
				--rs-content-bg: rgba(255,255,255,1);
				--rs-content-heading: #111111;
				--rs-content-text: #111111;
				--rs-content-link: #4861ba;
				--rs-font-heading: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
				--rs-font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
				--rs-font-spacing-h: normal;
				--rs-font-upper-h: none;
				--rs-font-upper-btn: none;
				--rs-nav-bg: #111111;
				--rs-nav-bg-2: #4861ba;
				--rs-nav-fg: #ffffff;
				--rs-nav-fg-hover: #111111;
				--rs-nav-bg-hover: #ffffff;
				--rs-nav-initial-bg: transparent;
				--rs-nav-top-size: 1rem;
				--rs-nav-divider-gap: 0.5rem;
				--rs-header-bg-solid: #36013f;
				--rs-header-bg: rgba(54,1,63,1);
				--rs-header-fg: #ffffff;
				--rs-header-height: 0vh;
				--rs-btn-bg: #111111;
				--rs-btn-fg: #ffffff;
				--rs-btn-bg-hover: #ffffff;
				--rs-btn-fg-hover: #111111;
				--rs-form-bg: #ffffff;
				--rs-form-fg: #111111;
				--rs-footer-bg: #111111;
				--rs-footer-fg: #ffffff;
				--rs-footer-heading: #ffffff;
				--rs-consent-bg: #111111;
				--rs-consent-fg: #ffffff;
				--rs-sticky-bg: rgba(72,97,186,0);
				--rs-sticky-head: #ffffff;
				--rs-sticky-text: #ffffff;
			}


	/* --- GENERAL --- */
	html {
		scroll-behavior: smooth;
		min-height: 100vh;
	}
	body {
		color: var(--rs-cc-text);
		/* Removed !important to allow overrides if needed, though usually body bg is foundational */
		background-color: var(--rs-body-bg);
		font-family: var(--rs-font-body);
			}

	/* Content Containers */
	#homepage-content,
	#rs-page-content,
	#main.rs-homepage-content,
	#main.rs-page-content {
		background-color: var(--rs-cc-bg);
	}
	
	.rs-page-content-class,
	#rs-page-content .rs-container--theme,
	#main.rs-page-content .rs-container--theme {
		background-color: var(--rs-content-bg);
		color: var(--rs-content-text);
	}

	/* Links 
	   Added :not(.has-text-color) to ensure block specific link colors work
	*/
	a:not(.has-text-color) {
		text-decoration: none;
		color: var(--rs-content-link);
	}
	a:hover {
		text-decoration: none;
	}

	/* Typography - Headings 
	   Only apply theme color if the block does not have a user-selected color 
	*/
	h1, .h1,
	h2, .h2,
	h3, .h3,
	h4, .h4,
	h5, .h5,
	h6, .h6,
	.accordion-header {
		font-family: var(--rs-font-heading);
		text-transform: var(--rs-font-upper-h);
		letter-spacing: var(--rs-font-spacing-h);
		text-decoration: none;
	}
	
	h1:not(.has-text-color), .h1:not(.has-text-color),
	h2:not(.has-text-color), .h2:not(.has-text-color),
	h3:not(.has-text-color), .h3:not(.has-text-color),
	h4:not(.has-text-color), .h4:not(.has-text-color),
	h5:not(.has-text-color), .h5:not(.has-text-color),
	h6:not(.has-text-color), .h6:not(.has-text-color),
	.accordion-header:not(.has-text-color) {
		color: var(--rs-content-heading);
	}

	.accordion-header { font-size: 1.6rem; }

	.home-content-upto-header { margin-top: -1.75em; }
	
	/* Accordion: Constrained wildcards to allow inner blocks to have their own backgrounds/colors */
	#cat-accordion *:not(.has-background) {
		background-color: var(--rs-content-bg);
	}
	#cat-accordion *:not(.has-text-color) {
		color: var(--rs-content-text);
	}

	/* --- FORMS --- */
	input, textarea, select {
		background-color: var(--rs-form-bg);
		color: var(--rs-form-fg);
	}

	/* --- BUTTONS --- 
	   Removed !important and added specificity guards 
	*/
	.btn.btn-theme:not(.has-background) {
		background-color: var(--rs-btn-bg);
	}
	.btn.btn-theme:not(.has-text-color) {
		color: var(--rs-btn-fg);
		text-transform: var(--rs-font-upper-btn);
		letter-spacing: var(--rs-font-spacing-h);
	}
	
	.btn.btn-theme:hover:not(.has-background) {
		background-color: var(--rs-btn-bg-hover);
		transition: all .3s ease-in-out;
	}
	.btn.btn-theme:hover:not(.has-text-color) {
		color: var(--rs-btn-fg-hover);
	}

	/* --- STICKY POSTS --- 
	   Added :not guards for colors
	*/
	#rs-sticky-post {
		background-color: var(--rs-sticky-bg);
		margin: 0;
	}
	#rs-sticky-post h1:not(.has-text-color) {
		color: var(--rs-sticky-head);
		text-decoration: none;
	}
	#rs-sticky-post p:not(.has-text-color) {
		color: var(--rs-sticky-text);
	}

	/* --- MISC UI ELEMENTS --- */
	/* List Groups - Added :not guards */
	ul:not( #policy-list ).rs-list-group,
	ul:not( #policy-list ).rs-list-group * li:not(.has-background),
	ul:not( #policy-list ) li.rs-list-group__item:not(.has-background) {
		background-color: transparent;
		position:relative;
		display:block;
		padding:.5rem 1rem;
		text-decoration:none;
		border:1px solid rgba(0,0,0,.125);
	}
	
	ul:not( #policy-list ).rs-list-group * li:not(.has-text-color),
	ul:not( #policy-list ) li.rs-list-group__item:not(.has-text-color) {
		color: var(--rs-content-text);
	}
	
	.rs-list-group > li:first-child { border-top-left-radius:inherit; border-top-right-radius:inherit; }
	.rs-list-group > li:last-child { margin-bottom: 0.6em; border-bottom-right-radius:inherit; border-bottom-left-radius:inherit; }

	/* Modals Body */
	.rs-modal__body {
		background-color: var(--rs-content-bg);
		padding-top: 0.6rem;
		padding-bottom: 0.6rem;
	}

	.rs-modal--announce .rs-modal__header {
		background-color: var(--rs-announce-header-bg, var(--rs-content-bg));
		color: var(--rs-announce-header-fg, var(--rs-content-text));
	}
	.rs-modal--announce .rs-modal__body {
		background-color: var(--rs-announce-body-bg, var(--rs-content-bg));
	}
	.rs-modal--announce .rs-modal__footer {
		background-color: var(--rs-announce-footer-bg, var(--rs-content-bg));
	}
	.rs-modal--announce .announce-title {
		color: inherit;
	}

	/* Dividers */
	hr.title-divider {
		width: 100%; height: 1px;
		background: var(--rs-header-fg);
		margin:0em; margin-bottom: .5em; padding:0;
	}
	hr.site-title-hr {
		width: 100%;
		border: 1px solid white;
		background: white;
		margin: 0.05em 0; padding: .05em;
	}
	hr.navbrand-title-divider {
		height: 2px; width: 100%;
		border: 1px solid var(--rs-nav-fg);
		background: var(--rs-nav-fg);
		margin: 0 0 -8px 0; padding: 0;
	}

	/* Cards */
	.card, .card-body { background-color: transparent; }

	/* Blockquotes */
	.blockquote { padding: 0.7em; border-left: 0.3rem solid steelblue; }
	.blockquote p { font-style: italic; }
	.blockquote p::before {
		display: inline-block; font-family: "bootstrap-icons"; font-weight: 900;
		content: "\F6B0 "; margin-right: .5rem; vertical-align: super;
	}
	.blockquote p::after {
		display: inline-block; font-family: "bootstrap-icons"; font-weight: 900;
		content: " \F6B0"; margin-left: .5rem; vertical-align: sub; transform: rotate(180deg);
	}
	.blockquote cite { display: block; text-align: right; right: 0; }

	/* WooCommerce Fixes */
	#order_comments_field > label { width: 100%; }
	#order_comments { width: 100%; box-sizing: border-box; }

	/* --- COVERS LAYOUT --- */
	.rs-cover-item {
		transition: transform 0.3s ease, box-shadow 0.3s ease;
	}
	.rs-cover-item:hover {
		transform: translateY(-5px);
		box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
	}
	.rs-cover-item .rs-btn--outline-light:hover {
		background-color: var(--rs-content-bg);
		color: var(--rs-content-text) !important;
	}

	/* --- COMMON NAVIGATION --- */
	/* Default Background for elements that always have the nav color */
	#rs-one-offcanvas-nav,
	nav#rs-classic-menu * .rs-nav__submenu,
	ul.rs-nav__submenu.show a.rs-nav__submenu-link.rs-nav__link--toggle.show,
	#rs-offcanvas-menu-list,
	#rs-offcanvas-topbar,
	#rs-offcanvas-menu-list ul.rs-nav__list * .rs-nav__submenu,
	#rs-offcanvas-menu-list ul.rs-nav__list * .rs-nav__submenu.active,
	#rs-offcanvas-menu-list ul.rs-nav__list * .rs-nav__submenu:active,
	#rs-offcanvas-menu-list ul.rs-nav__list * .rs-nav__submenu.current-menu-item,
	#rs-offcanvas-menu-list ul.rs-nav__list * .rs-nav__submenu li,
	#rs-offcanvas-menu-list ul.rs-nav__list * .rs-nav__submenu li a,
	#rs-offcanvas-menu-list *.rs-nav__submenu * .active {
		background-color: var(--rs-nav-bg);
	}

	/* --- CLASSIC & MEGA MENU TOPBAR --- */
	nav#rs-classic-menu.rs-nav,
	#rs-offcanvas-topbar.rs-one-nav-topbar.rs-nav {
		--rs-topbar-height: 2.5rem;
		transition: background-color 300ms ease-in-out, box-shadow 300ms ease-in-out;
		background-color: var(--rs-nav-initial-bg, var(--rs-nav-bg));
		color: var(--rs-nav-fg);
		box-shadow: 0 1px 0 color-mix(in srgb, var(--rs-nav-fg) 12%, transparent);
		padding: 0 !important;
		min-height: 0;
		line-height: 1.2;
	}

	#rs-offcanvas-topbar.rs-one-nav-topbar {
		position: sticky;
		top: 0;
		z-index: 1030;
		width: 100%;
	}

	nav#rs-classic-menu.rs-nav > .rs-container,
	nav#rs-classic-menu.rs-nav > .rs-container--fluid,
	nav#rs-classic-menu.rs-nav > .rs-container--theme,
	nav#rs-classic-menu.rs-nav > .rs-topbar-shell,
	#rs-offcanvas-topbar.rs-nav > .rs-container,
	#rs-offcanvas-topbar.rs-nav > .rs-container--fluid,
	#rs-offcanvas-topbar.rs-nav > .rs-container--theme,
	#rs-offcanvas-topbar.rs-nav > .rs-topbar-shell,
	nav#rs-classic-menu .rs-nav__collapse,
	#rs-offcanvas-topbar .rs-nav__collapse {
		background-color: transparent !important;
		background-image: none !important;
	}

	nav#rs-classic-menu.rs-nav > .rs-container,
	nav#rs-classic-menu.rs-nav > .rs-container--fluid,
	nav#rs-classic-menu.rs-nav > .rs-container--theme,
	nav#rs-classic-menu.rs-nav > .rs-topbar-shell,
	#rs-offcanvas-topbar.rs-nav > .rs-container,
	#rs-offcanvas-topbar.rs-nav > .rs-container--fluid,
	#rs-offcanvas-topbar.rs-nav > .rs-container--theme,
	#rs-offcanvas-topbar.rs-nav > .rs-topbar-shell {
		align-items: center;
		min-height: var(--rs-topbar-height);
		padding: 0;
	}

	nav#rs-classic-menu .rs-nav__collapse,
	#rs-offcanvas-topbar .rs-nav__collapse {
		align-items: center;
	}

	nav#rs-classic-menu .rs-nav__collapse .rs-nav__list,
	#rs-offcanvas-topbar .rs-nav__collapse .rs-nav__list {
		width: 100%;
		margin-bottom: 0;
	}

	nav#rs-classic-menu .rs-nav__list > .rs-nav__item > .rs-nav__link,
	nav#rs-classic-menu .rs-nav__list > .menu-item > .rs-nav__link,
	#rs-offcanvas-topbar .rs-nav__list > .rs-nav__item > .rs-nav__link,
	#rs-offcanvas-topbar .rs-nav__list > .menu-item > .rs-nav__link {
		display: flex;
		align-items: center;
		padding-top: 0.25rem;
		padding-bottom: 0.25rem;
		line-height: 1.2;
	}

	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > .rs-nav__item > .rs-nav__link,
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > .menu-item > .rs-nav__link,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > .rs-nav__item > .rs-nav__link,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > .menu-item > .rs-nav__link {
		display: inline-flex;
		align-items: center;
		min-height: var(--rs-nav-underline-link-height, 2.75rem);
	}

	nav#rs-classic-menu .rs-nav__brand,
	#rs-offcanvas-topbar .rs-nav__brand {
		padding-top: 0;
		padding-bottom: 0;
		line-height: 1.2;
	}

	nav#rs-classic-menu .rs-nav__toggle,
	#rs-offcanvas-topbar .rs-nav__toggle {
		min-height: var(--rs-topbar-height);
		min-width: var(--rs-topbar-height);
		padding: 0.2rem 0.5rem;
	}

	@media (min-width: 768px) {
		nav#rs-classic-menu.rs-nav--collapse-at-md > .rs-container,
		nav#rs-classic-menu.rs-nav--collapse-at-md > .rs-container--fluid,
		nav#rs-classic-menu.rs-nav--collapse-at-md > .rs-container--theme {
			flex-wrap: nowrap;
		}

		nav#rs-classic-menu.rs-nav--collapse-at-md .rs-nav__collapse {
			flex: 1 1 auto;
			min-width: 0;
			display: flex !important;
		}
	}

	@media (min-width: 992px) {
		nav#rs-classic-menu.rs-nav--collapse-at-lg > .rs-container,
		nav#rs-classic-menu.rs-nav--collapse-at-lg > .rs-container--fluid,
		nav#rs-classic-menu.rs-nav--collapse-at-lg > .rs-container--theme,
		nav#rs-classic-menu.rs-nav--collapse-at-xl > .rs-container,
		nav#rs-classic-menu.rs-nav--collapse-at-xl > .rs-container--fluid,
		nav#rs-classic-menu.rs-nav--collapse-at-xl > .rs-container--theme,
		nav#rs-classic-menu.rs-nav--collapse-at-xxl > .rs-container,
		nav#rs-classic-menu.rs-nav--collapse-at-xxl > .rs-container--fluid,
		nav#rs-classic-menu.rs-nav--collapse-at-xxl > .rs-container--theme {
			flex-wrap: nowrap;
		}

		nav#rs-classic-menu.rs-nav--collapse-at-lg .rs-nav__collapse,
		nav#rs-classic-menu.rs-nav--collapse-at-xl .rs-nav__collapse,
		nav#rs-classic-menu.rs-nav--collapse-at-xxl .rs-nav__collapse {
			flex: 1 1 auto;
			min-width: 0;
			display: flex !important;
		}
	}

	@media (max-width: 767.98px) {
		nav#rs-classic-menu.rs-nav > .rs-container,
		nav#rs-classic-menu.rs-nav > .rs-container--fluid,
		nav#rs-classic-menu.rs-nav > .rs-container--theme {
			flex-wrap: wrap;
			min-height: 0;
		}
	}

	nav#rs-classic-menu .rs-nav__brand a,
	nav#rs-classic-menu .topbar-brand a,
	#rs-offcanvas-topbar .rs-nav__brand a {
		color: inherit;
		text-decoration: none;
	}
	
	/* Solid state when transparent nav is active AND scrolled */
	nav#rs-classic-menu.nav-scrolled {
		position: fixed !important;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 1030;
		background-color: var(--rs-nav-bg) !important;
		box-shadow: 0 2px 5px rgba(0,0,0,0.2);
	}

	/* --- ADMIN BAR OFFSETS --- */
	/* Prevents the sticky topbar from overlapping the WordPress Admin Bar */
	body.admin-bar nav#rs-classic-menu.nav-scrolled {
		top: 32px !important;
	}
	body.admin-bar.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) {
		top: 32px !important;
	}

	body.admin-bar #rs-offcanvas-topbar.rs-one-nav-topbar {
		top: 32px;
	}

	@media screen and (max-width: 782px) {
		body.admin-bar nav#rs-classic-menu.nav-scrolled,
		body.admin-bar.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled),
		body.admin-bar #rs-offcanvas-topbar.rs-one-nav-topbar {
			top: 46px !important;
		}
	}

	/* --- TRANSPARENT TOPBAR LOGIC --- */
	body.has-transparent-topbar,
	body.has-transparent-correction {
		--rs-topbar-height: 2.5rem;
	}

	/* Transparent topbar overlays hero — no sticky positioning until scrolled. */
	nav#rs-classic-menu.rs-nav--transparent-topbar:not(.nav-scrolled) {
		position: absolute !important;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 1030;
		background-color: transparent !important;
		box-shadow: none !important;
	}

	nav#rs-classic-menu.rs-nav--transparent-topbar:not(.nav-scrolled) .rs-topbar-shell,
	nav#rs-classic-menu.rs-nav--transparent-topbar:not(.nav-scrolled) .rs-container,
	nav#rs-classic-menu.rs-nav--transparent-topbar:not(.nav-scrolled) .rs-container--fluid,
	nav#rs-classic-menu.rs-nav--transparent-topbar:not(.nav-scrolled) .rs-container--theme,
	nav#rs-classic-menu.rs-nav--transparent-topbar:not(.nav-scrolled) .rs-nav__collapse,
	nav#rs-classic-menu.rs-nav--transparent-topbar:not(.nav-scrolled) .rs-nav__brand,
	nav#rs-classic-menu.rs-nav--transparent-topbar:not(.nav-scrolled) .rs-brand-wrap {
		background-color: transparent !important;
		background-image: none !important;
		box-shadow: none !important;
	}

	/* Nav overlays the hero; hero canvas starts at the viewport top. */
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) {
		background-color: transparent !important;
		box-shadow: none !important;
	}

	/* Specificity fix to guarantee background switches to the standard color when scrolled */
	body.has-transparent-topbar nav#rs-classic-menu.nav-scrolled {
		background-color: var(--rs-nav-bg) !important;
	}

	/* Transparent State Custom Colors */
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) ul li .rs-nav__link,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) ul li .rs-nav__submenu-link,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__brand > a,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__brand a,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) #rs-one-nav-title,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__toggle {
		color: #ffffff !important;
	}

	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list:not(.rs-nav--underline) > li > .rs-nav__link:hover,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) ul.rs-nav__submenu li .rs-nav__link:hover,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) ul.rs-nav__submenu li .rs-nav__submenu-link:hover,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list:not(.rs-nav--underline) > li.rs-nav__item--dropdown > .rs-nav__link.show,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list:not(.rs-nav--underline) > li.current-menu-item > .rs-nav__link,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list:not(.rs-nav--underline) > li.current-menu-ancestor > .rs-nav__link {
		color: #dddddd !important;
		background-color: transparent !important;
	}

	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list.rs-nav--underline > li,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list.rs-nav--underline > li > .rs-nav__link,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list.rs-nav--underline > li > .rs-nav__link:hover,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list.rs-nav--underline > li > .rs-nav__link:focus-visible,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list.rs-nav--underline > li > .rs-nav__link:active,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list.rs-nav--underline > li.rs-nav__item--dropdown > .rs-nav__link.show,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list.rs-nav--underline > li.current-menu-item > .rs-nav__link,
	body.has-transparent-topbar nav#rs-classic-menu:not(.nav-scrolled) .rs-nav__list.rs-nav--underline > li.current-menu-ancestor > .rs-nav__link {
		text-decoration: none !important;
		background: none !important;
		background-color: transparent !important;
	}

	/* Hero fills viewport top; offset inner content only (not the background image/video). */
	body.has-transparent-correction header[id^="hero"] {
		padding-top: 0 !important;
		margin-top: 0;
		background-position: center top;
		position: relative;
		z-index: 1;
	}

	body.has-transparent-correction header[id^="hero"] #rs-one-header-sections,
	body.has-transparent-correction header[id^="hero"] .widget,
	body.has-transparent-correction header[id^="hero"] aside,
	body.has-transparent-correction header[id^="hero"] .wp-block-group {
		padding-top: calc(var(--rs-topbar-height, 2.5rem) + 0.25rem);
	}

	/* End Transparent Override */

	/* Links (Standard/Scrolled State) */
	nav#rs-classic-menu ul li .rs-nav__link,
	nav#rs-classic-menu ul li .rs-nav__submenu-link {
		color: var(--rs-nav-fg);
		white-space: nowrap;
		text-overflow: ellipsis;
	}

	/* Hover, Active & OPEN States (Standard/Scrolled State) — not underline top-level */
	nav#rs-classic-menu .rs-nav__list:not(.rs-nav--underline) > li > .rs-nav__link:hover,
	nav#rs-classic-menu ul.rs-nav__submenu li .rs-nav__link:hover,
	nav#rs-classic-menu ul.rs-nav__submenu li .rs-nav__submenu-link:hover,
	nav#rs-classic-menu .rs-nav__list:not(.rs-nav--underline) > li.rs-nav__item--dropdown > .rs-nav__link.show,
	nav#rs-classic-menu .rs-nav__list:not(.rs-nav--underline) > li.current-menu-item > .rs-nav__link,
	nav#rs-classic-menu .rs-nav__list:not(.rs-nav--underline) > li.current-menu-ancestor > .rs-nav__link {
		color: var(--rs-nav-fg-hover);
		background-color: var(--rs-nav-bg-hover);
	}

	/* Underline nav: no background fills on top-level items (underline only) */
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > li,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > li,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li,
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > li > .rs-nav__link,
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > li > .rs-nav__link:hover,
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > li > .rs-nav__link:focus-visible,
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > li > .rs-nav__link:active,
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > li.rs-nav__item--dropdown > .rs-nav__link.show,
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > li.current-menu-item > .rs-nav__link,
	nav#rs-classic-menu .rs-nav__list.rs-nav--underline > li.current-menu-ancestor > .rs-nav__link,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > li > .rs-nav__link,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > li > .rs-nav__link:hover,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > li > .rs-nav__link:focus-visible,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > li > .rs-nav__link:active,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > li.current-menu-item > .rs-nav__link,
	#rs-offcanvas-topbar .rs-nav__list.rs-nav--underline > li.current-menu-ancestor > .rs-nav__link,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li > .rs-nav__link,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li:hover > a.rs-nav__link,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li > .rs-nav__link:hover,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li > .rs-nav__link:focus-visible,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li > .rs-nav__link:active,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li.current-menu-item > .rs-nav__link,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li.current-menu-ancestor > .rs-nav__link,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li.rs-nav__item--dropdown > .rs-nav__link.show,
	#rs-offcanvas-menu-list .rs-nav__list.rs-nav--underline > li.menu-item-has-children > .rs-nav__link.show {
		text-decoration: none !important;
		background: none !important;
		background-color: transparent !important;
	}
	
	/* Standard Dropdown Link Hover Background */
	nav#rs-classic-menu ul li .rs-nav__submenu.show:not(.rs-mega-dropdown) * a:hover {
		background-color: var(--rs-nav-bg-hover);
	}

	/* Navbar Buttons */
	nav#rs-classic-menu .rs-nav__brand > button,
	nav#rs-classic-menu .rs-nav__brand > button *,
	#rs-offcanvas-topbar .rs-nav__brand > button,
	#rs-offcanvas-topbar .rs-nav__brand > button * {
		background-color: transparent;
		color: var(--rs-nav-fg);
	}
	nav#rs-classic-menu .rs-nav__brand > a,
	#rs-offcanvas-topbar .rs-nav__brand > a,
	#rs-one-nav-title {
		color: var(--rs-nav-fg);
		opacity: 0.9;
	}
	nav#rs-classic-menu .rs-nav__brand a:hover,
	#rs-offcanvas-topbar .rs-nav__brand a:hover {
		opacity: 1;
	}

	/* --- MEGA MENU STYLES --- */
	nav#rs-classic-menu .rs-mega-dropdown,
    nav#rs-classic-menu .rs-mega-dropdown .rs-container.rs-container--fluid {
		background-color: var(--rs-mega-bg) !important;
		max-height: 80vh;
		overflow-y: auto;
		overflow-x: hidden;
	}

	/* Scrollbar Styling */
	.rs-mega-dropdown::-webkit-scrollbar { width: 6px; }
	.rs-mega-dropdown::-webkit-scrollbar-track { background: transparent; }
	.rs-mega-dropdown::-webkit-scrollbar-thumb {
		background-color: rgba(255,255,255,0.2);
		border-radius: 10px;
	}
	.rs-mega-dropdown::-webkit-scrollbar-thumb:hover { background-color: rgba(255,255,255,0.5); }

	/* Layout */
	.rs-mega-masonry {
		display: flex;
		flex-wrap: wrap;
		gap: 1rem;
		align-items: flex-start;
	}
	.rs-mega-col {
		flex: 1 0 0%;
		min-width: 0;
		display: flex;
		flex-direction: column;
		gap: 0.25rem;
	}
	.rs-mega-item {
		width: 100%;
	}

	/* Mega Menu Text Colors & Spacing */
	.rs-mega-item .h6,
	.rs-mega-item .rs-nav__submenu-heading,
	.rs-mega-item .rs-nav-heading {
		font-family: var(--rs-font-heading) !important;
		color: var(--rs-mega-heading) !important;
		font-size: var(--rs-mega-h-size) !important;
		font-weight: 700;
		padding: 0.5rem 1rem !important; 
		border-radius: 0.25rem;
        margin-bottom: var(--rs-mega-head-gap) !important; 
	}
	
	.rs-mega-item a.rs-nav__submenu-heading {
		cursor: pointer;
	}
	
	.rs-mega-dropdown .rs-mega-item .rs-nav__submenu-link {
		color: var(--rs-mega-fg) !important;
		padding: 0.15rem 1rem !important; 
		border-radius: 0.25rem;
	}
	
	.rs-mega-item ul {
		display: flex;
		flex-direction: column;
		gap: var(--rs-mega-gap);
	}

	/* Hover States */
	.rs-mega-item .h6:hover,
	.rs-mega-item .rs-nav__submenu-heading:hover,
	.rs-mega-item .rs-nav-heading:hover {
		color: var(--rs-mega-heading-hover) !important;
		background-color: var(--rs-mega-heading-bg-hover);
	}
	
	.rs-mega-dropdown .rs-mega-item .rs-nav__submenu-link:hover {
		background-color: var(--rs-mega-bg-hover) !important;
		color: var(--rs-mega-fg-hover) !important;
	}

	/* Dividers */
	.rs-mega-v-divider {
		border-right: 1px solid var(--rs-nav-fg); 
		padding-right: var(--rs-mega-divider-gap);
		margin-right: var(--rs-mega-divider-gap);
	}
	.rs-mega-v-divider:last-child { 
		border-right: none;
		padding-right: 0;
		margin-right: 0;
	}
	
	.rs-mega-divider {
		border-top-color: var(--rs-mega-heading) !important;
		opacity: 1 !important;
	}

	nav#rs-classic-menu .rs-nav__brand,
	nav#rs-classic-menu .rs-nav__list > .rs-nav__item > .rs-nav__link,
	nav#rs-classic-menu .rs-nav__list > .menu-item > .rs-nav__link {
		font-size: var(--rs-nav-top-size);
	}

    
	@media (max-width: 991px) {
		.rs-mega-masonry { display: block; }
		.rs-mega-col { width: 100%; flex: none; }
	}

	/* --- OFF CANVAS MENU --- */
	#rs-offcanvas-topbar,
	#rs-offcanvas-menu-list {
		position: relative;
		width: 100%!important;
	}
	#rs-offcanvas-topbar {
		padding: 0;
	}
	#rs-offcanvas-menu-list ul.rs-nav__list * a,
	.rs-offcanvas__header * {
		color: var(--rs-nav-fg);
	}
	.rs-offcanvas__body { padding: 0; }
	
	#rs-offcanvas-menu-list * .rs-nav__submenu * li:hover a,
	#rs-offcanvas-menu-list .rs-nav__list:not(.rs-nav--underline) > li.current-menu-item > a,
	#rs-offcanvas-menu-list .rs-nav__list:not(.rs-nav--underline) > li:hover > a:hover,
	#rs-offcanvas-menu-list ul.rs-nav__list li.rs-nav__item--dropdown ul.rs-nav__submenu.show a.rs-nav__submenu-link.rs-nav__link--toggle.show:hover {
		background-color: var(--rs-nav-bg-hover);
		color: var(--rs-nav-fg-hover) !important;
	}

	#rs-offcanvas-menu-list .rs-nav__list:not(.rs-nav--underline) .rs-nav__link.show {
		background-color: var(--rs-nav-bg-hover);
		color: var(--rs-nav-fg-hover) !important;
	}
	
	.current-menu-item { font-weight: 750; }

	#rs-offcanvas-menu-list > .rs-nav__list > li.rs-nav__item--dropdown > ul.rs-nav__submenu.show,
	#rs-offcanvas-menu-list > .rs-nav__list > li.rs-nav__item--dropdown.rs-show > ul.rs-nav__submenu {
		display: block !important;
		position: relative !important;
		width: 100% !important;
		margin: 0 !important;
		border-top: 1px solid rgba(255,255,255,0.1);
	}
	
	#rs-offcanvas-menu-list .rs-nav__submenu .rs-nav__submenu {
		position: relative !important;
		float: none !important;
		transform: none !important;
		margin: 0 !important;
		margin-top: -5px !important;
		margin-left: 1rem !important;
		border-left: 2px solid rgba(255,255,255,0.2) !important;
		width: auto !important;
		min-width: 0 !important;
		background-color: transparent !important;
		padding-top: 0.5rem !important;
	}
	#rs-offcanvas-menu-list .rs-nav__submenu .rs-nav__submenu.show,
	#rs-offcanvas-menu-list .rs-nav__item--dropdown.rs-show > .rs-nav__submenu.sub-menu {
		display: block !important;
	}
	
	.rs-nav__toggle, .rs-nav__toggle2 {
		background: none;
		color: var(--rs-nav-fg) !important;
	}
	.btn-close {
		background-color: var(--rs-nav-bg);
		color: var(--rs-nav-fg);
	}

	/* --- BRAND IMAGE RESPONSIVE SIZING & SPACING --- */
	/* Fix for the white box and space reduction */
	.rs-brand-wrap,
	.rs-brand-wrap a,
	.rs-text-center.rs-mx-auto .rs-brand-wrap {
		background-color: transparent !important;
		padding: 2px 5px !important; /* Extremely minimal padding, saving space but preventing edge touch */
		margin: 0 !important;
	}

	.rs-nav-brand-img {
		max-height: 60px; /* Base height for mobile */
		width: auto;
		max-width: calc(100vw - 90px); /* Leave room for toggler */
		object-fit: contain;
		transition: all 0.3s ease-in-out;
		background-color: transparent !important; /* Ensure image block itself is transparent */
	}

	/* If text is displayed alongside the image */
	.rs-brand-wrap a.rs-flex .rs-nav-brand-img {
		max-width: calc(100vw - 200px);
	}

	@media (min-width: 992px) {
		.rs-nav-brand-img {
			/* Larger on Desktop */
			max-height: 80px; 
			max-width: 300px;
		}
	}

	/* Nav toolbar utilities (dark mode toggle, etc.) */
	.rs-nav__toolbar-actions {
		display: inline-flex;
		align-items: center;
		margin-left: auto;
	}

	.rs-nav__tool-btn,
	.rs-dark-mode-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 2.5rem;
		min-height: 2.5rem;
		padding: 0.35rem 0.5rem;
		border: 1px solid color-mix(in srgb, var(--rs-nav-fg) 25%, transparent);
		border-radius: 0.375rem;
		background: transparent;
		color: var(--rs-nav-fg);
		line-height: 1;
	}

	.rs-nav__tool-btn:hover,
	.rs-nav__tool-btn:focus-visible,
	.rs-dark-mode-toggle:hover,
	.rs-dark-mode-toggle:focus-visible {
		background-color: var(--rs-nav-bg-hover);
		color: var(--rs-nav-fg-hover);
	}

	/* --- SITE BANNER --- */
	/* NOTE: Margins and Padding are NOT reset here to allow for 
	   customization via the Block Editor (Dimensions settings).
	*/
	#rs-site-banner {
		width: 100%;
	}

	#rs-site-banner .widget {
		/* Structural Fixes Only: */
		/* 1. Ensure the widget fills the container width */
		width: 100%;
		
		/* 2. 'flex' ensures the container expands to fit child blocks 
		      and backgrounds render correctly without collapsing */
		display: flex; 
		flex-direction: column;
		
		/* 3. Inherit Color Settings from the Block Editor 
		      (Fixes issues where theme text defaults override block settings) */
		background-color: inherit;
		color: inherit;
	}

	/* Fix: Ensure links inside the banner inherit the block's text color 
	   (e.g. if you set White Text on a Dark Background, links should be White) */
	#rs-site-banner .widget a:not(.btn) {
		color: inherit;
		text-decoration: underline;
	}
	
	#rs-site-banner .widget a:not(.btn):hover {
		opacity: 0.8;
	}

	/* Base Hero Style */
	#hero {
		position: relative;
		isolation: isolate;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: stretch;
		width: 100%;
		background-color: var(--rs-header-bg-solid); /* Fallback */
		background-image: url(https://staging-thedonkeyhut-com.recoded.solutions/wp-content/uploads/2026/07/PHOTO-1-FRONT-DOOR-OLIVE-TREE.jpg);background-position: top 50% left 50%;background-size: cover; background-repeat: no-repeat; background-attachment: fixed; overflow-y: hidden;	}

	/* Keep header content above background media */
	#hero > *:not(video):not(iframe) {
		position: relative;
		z-index: 2;
		width: 100%;
	}

	#rs-one-header-sections {
		padding: 1.25rem 0;
	}

	#rs-one-header-sections .rs-grid {
		align-items: center;
		justify-content: center;
		width: 100%;
	}

	#rs-one-header-sections .header-section {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding: 0.5rem 0;
		min-height: 3rem;
	}

	#rs-one-header-sections .header-section .widget {
		width: 100%;
	}

	#rs-one-header-section-logo {
		text-align: center;
	}

	#rs-one-header-section-logo img {
		display: block;
		max-width: 100%;
		height: auto;
		margin: 0 auto;
	}

	#site-title-tagline {
		margin-top: 0.5rem;
	}

	#hero .widget,
	#hero aside,
	#hero .wp-block-group,
	#hero .widget-area {
		width: 100%;
		padding: 0.75rem 0;
	}

	/* Gradient Overlay */
	#hero.hero-overlay {
		border-image: radial-gradient(circle, rgba(54,1,63,1) 0%, rgba(255,255,255,0.1) 35%) 1 fill;	}

	/* No Image / Fallback */
	#hero-noimg,
	#hero-noimg > .hero-overlay {
		background-image: none !important;
		background-color: var(--rs-header-bg);
	}

	/* Video Background Specifics */
	
	/* Widget Background */
	
	/* Site Title & Logo */
		#rs-one-header-section-logo > a > img {
		max-width: 55% !important;
	}
		p.header-site-title,
	p.header-site-tagline {
		text-transform: var(--rs-font-upper-h);
		letter-spacing: var(--rs-font-spacing-h);
		color: var(--rs-header-fg);
		opacity: .8;
		text-decoration: none;
	}
	p.header-site-title { font-size: 1.6em; margin: 0; padding: 0; line-height: 1.2em; }
	p.header-site-tagline { font-size: .75em; }

	/* HEADER BLOCK TEXT COLORS */
	/* Forces blocks inside the header (like Heading and Paragraph) to use the
	   Header Text Color from the Customizer, UNLESS overridden by block settings. */
	#hero h1:not(.has-text-color),
	#hero h2:not(.has-text-color),
	#hero h3:not(.has-text-color),
	#hero h4:not(.has-text-color),
	#hero h5:not(.has-text-color),
	#hero h6:not(.has-text-color),
	#hero p:not(.has-text-color) {
		color: var(--rs-header-fg);
	}

	/* Breadcrumbs */
	#breadcrumbs > li > a,
	#breadcrumbs > li.rs-comment__item,
	#breadcrumbs > li.rs-comment__item > a {
		text-decoration: none;
		background: none;
		color: var(--rs-header-fg);
	}
	
	/* Page Banner */
	body:has( '.rs-banner' ) {
		background-color: var(--rs-cc-bg);
		color: var(--rs-content-heading) !important;
	}
	#banner-title {
		background-color: var(--rs-cc-bg);
		color: var(--rs-content-heading) !important;
					border-radius: 8% 8% 0% 0%;
				margin-bottom: -1.25rem;
	}

	/* --- FOOTER --- */
	#rs-one-footer {
		background-color: var(--rs-footer-bg);
		color: var(--rs-footer-fg);
		padding-top: 0.6em;
					padding-bottom: 0.6em;
			}

	/* Headings — beat global content-heading / theme.json rules */
	#rs-one-footer h1:not(.has-text-color),
	#rs-one-footer h2:not(.has-text-color),
	#rs-one-footer h3:not(.has-text-color),
	#rs-one-footer h4:not(.has-text-color),
	#rs-one-footer h5:not(.has-text-color),
	#rs-one-footer h6:not(.has-text-color),
	#rs-one-footer .h1:not(.has-text-color),
	#rs-one-footer .h2:not(.has-text-color),
	#rs-one-footer .h3:not(.has-text-color),
	#rs-one-footer .h4:not(.has-text-color),
	#rs-one-footer .h5:not(.has-text-color),
	#rs-one-footer .h6:not(.has-text-color),
	#rs-one-footer .wp-block-heading:not(.has-text-color) {
		color: var(--rs-footer-heading);
	}

	/* Body text / widgets / blocks — beat theme.json paragraph & content-text rules */
	#rs-one-footer,
	#rs-one-footer p:not(.has-text-color),
	#rs-one-footer li:not(.has-text-color),
	#rs-one-footer .wp-block-paragraph:not(.has-text-color),
	#rs-one-footer .wp-block-list:not(.has-text-color),
	#rs-one-footer .wp-block-list-item:not(.has-text-color),
	#rs-one-footer .wp-block-group:not(.has-text-color),
	#rs-one-footer .wp-block-columns:not(.has-text-color),
	#rs-one-footer .wp-block-column:not(.has-text-color),
	#rs-one-footer .widget:not(.has-text-color),
	#rs-one-footer .textwidget:not(.has-text-color),
	#rs-one-footer .footer-text:not(.has-text-color),
	#rs-one-footer #rs-one-dev:not(.has-text-color) {
		color: var(--rs-footer-fg);
	}

	/* Links (uses Footer Text — no separate footer-link setting) */
	#rs-one-footer a:not(.has-text-color),
	#rs-one-footer a:not(.has-text-color):hover,
	#rs-one-footer a:not(.has-text-color):visited,
	#rs-one-footer .wp-block-navigation-item__content:not(.has-text-color) {
		color: var(--rs-footer-fg);
		text-decoration: none;
	}

		#rs-one-footer-logo {
		width: 50%;
	}
		.footer-text,
	#rs-one-dev,
	#rs-one-footer-logo > a > #site-title-tagline > * {
		text-decoration: none;
		color: var(--rs-footer-fg);
	}
	#rs-one-footer-logo > a > #site-title-tagline > * { opacity: .6; }
	#rs-one-footer-logo > a > #site-title-tagline > h4 { font-size: .95em; }
	#rs-one-footer-logo > a > #site-title-tagline > h6 { font-size: .7em; }
	
	@media ( max-width: 767px ) {
		#rs-one-footer-logo { margin-right: auto; margin-left: auto; max-width: 50%; }
	}
	@media ( min-width: 768px ) {
				#rs-one-footer-logo { max-width: 50%; }
			}

	#rs-footer-sections * ul { list-style-type: none; padding-left: 0; }
	.footer-menu ul li { display: inline-block; padding: 12px; }
	#rs-footer-sections * li { padding: .75rem 0rem; }

	/* --- MODALS (Footer Related) --- */
	/* Contact Modal */
	#rs-one-contact-us .rs-modal__header {
		color: var(--rs-header-fg);
		background-color: var(--rs-header-bg); /* Uses header bg logic */
	}
	#rs-one-contact-us .rs-modal__title { color: var(--rs-content-heading); }
	
	#rs-one-contact-us .rs-modal__footer {
		background-color: var(--rs-footer-bg);
		color: var(--rs-footer-fg);
	}

	/* Policy List */
	#policy-list.rs-list-group,
	#policy-list * {
		text-decoration: none;
		background-color: var(--rs-footer-bg);
		color: var(--rs-footer-fg);
	}