:root {
	--rvst-bg: #ffffff;
	--rvst-surface: #ffffff;
	--rvst-surface-raised: #f8f6ed;
	--rvst-text: #25211f;
	--rvst-muted: #625a56;
	--rvst-border: #ded8d4;
	--rvst-gold: #efd44d;
	--rvst-accent: var(--rvst-gold);
	--rvst-accent-text: #17160f;
}

html[data-rvst-theme="dark"] {
	color-scheme: dark;
	--rvst-bg: #15140f;
	--rvst-surface: #211f18;
	--rvst-surface-raised: #2b281d;
	--rvst-text: #f7f2df;
	--rvst-muted: #d3caab;
	--rvst-border: #625a3a;
	--rvst-accent: var(--rvst-gold);
	--rvst-accent-text: #17160f;
}

html[data-rvst-theme="dark"] body,
html[data-rvst-theme="dark"] .site,
html[data-rvst-theme="dark"] #content,
html[data-rvst-theme="dark"] .site-content {
	background-color: var(--rvst-bg);
	color: var(--rvst-text);
}

html[data-rvst-theme="dark"] .site-header,
html[data-rvst-theme="dark"] .ast-primary-header-bar,
html[data-rvst-theme="dark"] .ast-mobile-header-wrap,
html[data-rvst-theme="dark"] .ast-desktop-header-content,
html[data-rvst-theme="dark"] .site-footer,
html[data-rvst-theme="dark"] .site-primary-footer-wrap,
html[data-rvst-theme="dark"] .site-below-footer-wrap,
html[data-rvst-theme="dark"] .ast-separate-container .ast-article-post,
html[data-rvst-theme="dark"] .ast-separate-container .ast-article-single,
html[data-rvst-theme="dark"] .woocommerce-error,
html[data-rvst-theme="dark"] .woocommerce-info,
html[data-rvst-theme="dark"] .woocommerce-message,
html[data-rvst-theme="dark"] .widget,
html[data-rvst-theme="dark"] .wp-block-search__inside-wrapper {
	background-color: var(--rvst-surface);
	color: var(--rvst-text);
}

.main-header-menu a,
html[data-rvst-theme="dark"] .main-header-menu a,
html[data-rvst-theme="dark"] .ast-header-break-point .main-header-menu a {
	color: var(--rvst-gold);
}

html[data-rvst-theme="dark"] :is(
	body,
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	p,
	li,
	dt,
	dd,
	label,
	legend,
	.entry-content,
	.ast-post-excerpt,
	.woocommerce-result-count,
	.woocommerce-breadcrumb,
	.widget-title,
	.woocommerce-loop-product__title,
	.woocommerce div.product .product_title,
	.woocommerce div.product .woocommerce-tabs .panel,
	.woocommerce table.shop_table,
	.woocommerce table.shop_table th,
	.woocommerce table.shop_table td
) {
	color: var(--rvst-text);
}

html[data-rvst-theme="dark"] a:not(.button):not(.wp-block-button__link):not(.woocommerce-loop-product__link),
html[data-rvst-theme="dark"] a.woocommerce-loop-product__link:hover {
	color: var(--rvst-gold);
}

html[data-rvst-theme="dark"] :is(
	input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
	select,
	textarea,
	.select2-container--default .select2-selection--single,
	.select2-dropdown
) {
	border-color: var(--rvst-border);
	background-color: var(--rvst-surface-raised);
	color: var(--rvst-text);
}

html[data-rvst-theme="dark"] input::placeholder,
html[data-rvst-theme="dark"] textarea::placeholder {
	color: var(--rvst-muted);
	opacity: 1;
}

html[data-rvst-theme="dark"] :is(
	.ast-button,
	button,
	input[type="button"],
	input[type="reset"],
	input[type="submit"],
	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button,
	.wp-block-button__link
) {
	border-color: var(--rvst-accent);
	background-color: var(--rvst-accent);
	color: var(--rvst-accent-text);
}

html[data-rvst-theme="dark"] :is(
	.woocommerce ul.products li.product,
	.woocommerce-page ul.products li.product,
	.woocommerce div.product .woocommerce-tabs ul.tabs li,
	.woocommerce div.product .woocommerce-tabs ul.tabs::before,
	.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
	.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
	.woocommerce div.product .woocommerce-tabs .panel,
	.woocommerce-cart .cart-collaterals .cart_totals,
	.woocommerce-checkout #payment,
	.woocommerce-checkout #payment div.payment_box,
	.woocommerce-account .woocommerce-MyAccount-content,
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.ast-search-menu-icon .search-form
) {
	border-color: var(--rvst-border);
	background-color: var(--rvst-surface);
	color: var(--rvst-text);
}

html[data-rvst-theme="dark"] .woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background-color: var(--rvst-bg);
}

html[data-rvst-theme="dark"] :is(
	.ast-separate-container .ast-article-post,
	.ast-separate-container .ast-article-single,
	.woocommerce ul.products li.product,
	.woocommerce-page ul.products li.product
) {
	box-shadow: 0 1px 0 var(--rvst-border);
}

html[data-rvst-theme="dark"] hr,
html[data-rvst-theme="dark"] :is(
	.ast-separate-container .ast-article-post,
	.ast-separate-container .ast-article-single,
	.woocommerce table.shop_table,
	.woocommerce table.shop_table th,
	.woocommerce table.shop_table td
) {
	border-color: var(--rvst-border);
}

.rvst-theme-toggle {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 2.75rem;
	padding: 0.65rem 0.9rem;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	box-shadow: none;
	cursor: pointer;
	font: inherit;
}

.rvst-theme-menu-item {
	display: flex;
	align-items: center;
}

.rvst-language-menu-item {
	display: flex;
	align-items: center;
}

.rvst-language-switch {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	padding: 0.65rem 0.75rem;
	color: var(--rvst-gold);
	font-weight: 700;
	text-decoration: none;
}

.rvst-language-switch:hover {
	color: var(--rvst-gold);
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.rvst-theme-menu-item .rvst-theme-toggle {
	color: var(--rvst-gold);
}

.rvst-theme-toggle:hover {
	color: var(--rvst-gold);
}

.rvst-theme-icon {
	width: 1.15rem;
	height: 1.15rem;
	flex: 0 0 auto;
}

.rvst-theme-icon-light {
	display: none;
}

html[data-rvst-theme="dark"] .rvst-theme-icon-dark {
	display: none;
}

html[data-rvst-theme="dark"] .rvst-theme-icon-light {
	display: block;
}

.rvst-filter {
	--rvst-filter-border: var(--rvst-border);
	--rvst-filter-text: var(--rvst-text);
	width: 100%;
	color: var(--rvst-filter-text);
}

.rvst-filter-open {
	display: none;
}

.rvst-filter-dialog,
.rvst-filter-dialog:not([open]) {
	box-sizing: border-box;
	display: block;
	position: static;
	inset: auto;
	width: 100%;
	max-width: none;
	max-height: none;
	margin: 0;
	padding: 1rem;
	overflow: visible;
	border: 1px solid var(--rvst-filter-border);
	border-radius: 0.75rem;
	background: var(--rvst-surface);
	color: var(--rvst-filter-text);
	box-shadow: none;
}

.rvst-filter-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.rvst-filter-header h2 {
	margin: 0;
	color: inherit;
	font-size: 1.15rem;
}

.rvst-filter-close {
	display: none;
}

.rvst-filter-group {
	min-width: 0;
	margin: 0 0 1rem;
	padding: 0 0 1rem;
	border: 0;
	border-bottom: 1px solid var(--rvst-filter-border);
}

.rvst-filter-group legend {
	float: left;
	width: 100%;
	margin: 0 0 0.6rem;
	padding: 0;
	font-weight: 700;
}

.rvst-filter-group legend + * {
	clear: both;
}

.rvst-price-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.rvst-price-fields label,
.rvst-filter-group > label {
	display: grid;
	gap: 0.35rem;
	font-size: 0.9rem;
}

.rvst-price-fields input,
.rvst-filter-search input,
.rvst-filter-group select {
	box-sizing: border-box;
	width: 100%;
	min-height: 2.7rem;
	padding: 0.5rem 0.65rem;
	border: 1px solid var(--rvst-filter-border);
	border-radius: 0.4rem;
	background: var(--rvst-surface);
	color: var(--rvst-filter-text);
	font: inherit;
}

.rvst-filter-options {
	display: grid;
	gap: 0.45rem;
	max-height: 13rem;
	overflow: auto;
}

.rvst-filter-option {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	font-size: 0.92rem;
	line-height: 1.4;
	cursor: pointer;
}

.rvst-filter-option input {
	width: 1rem;
	height: 1rem;
	flex: 0 0 auto;
	margin: 0.15rem 0 0;
	accent-color: var(--rvst-accent);
}

.rvst-filter-actions {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-top: 0.25rem;
}

.rvst-filter-apply {
	min-height: 2.8rem;
	padding: 0.65rem 1rem;
	border: 1px solid var(--rvst-accent);
	border-radius: 0.45rem;
	background: var(--rvst-accent);
	color: var(--rvst-accent-text);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.rvst-filter-reset {
	color: var(--rvst-filter-text);
	text-decoration: underline;
}

html[data-rvst-theme="dark"] .rvst-filter-dialog {
	border-color: var(--rvst-border);
	background: var(--rvst-surface);
	color: var(--rvst-text);
}

html[data-rvst-theme="dark"] .rvst-theme-menu-item .rvst-theme-toggle {
	border-color: transparent;
	background: transparent;
	color: var(--rvst-gold);
}

@media (max-width: 767px) {
	.rvst-filter-open {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 2.9rem;
		margin: 0 0 0.75rem;
		padding: 0.7rem 1rem;
		border: 1px solid var(--rvst-accent);
		border-radius: 0.5rem;
		background: var(--rvst-accent);
		color: var(--rvst-accent-text);
		font: inherit;
		font-weight: 700;
		cursor: pointer;
	}

	.rvst-filter-dialog,
	.rvst-filter-dialog:not([open]) {
		display: none;
	}

	.rvst-filter-dialog[open] {
		display: block;
		position: fixed;
		inset: 1rem;
		width: min(34rem, calc(100vw - 2rem));
		max-width: none;
		max-height: calc(100dvh - 2rem);
		margin: auto;
		padding: 1.1rem;
		overflow: auto;
		border: 1px solid var(--rvst-filter-border);
		border-radius: 0.85rem;
		background: var(--rvst-surface);
		color: var(--rvst-filter-text);
		box-shadow: 0 1rem 3rem rgb(0 0 0 / 28%);
	}

	.rvst-filter-dialog::backdrop {
		background: rgb(20 16 14 / 62%);
	}

	.rvst-filter-close {
		display: inline-grid;
		width: 2.5rem;
		height: 2.5rem;
		place-items: center;
		border: 1px solid var(--rvst-filter-border);
		border-radius: 50%;
		background: transparent;
		color: inherit;
		font: inherit;
		font-size: 1.5rem;
		line-height: 1;
		cursor: pointer;
	}

	.rvst-theme-menu-item .rvst-theme-toggle {
		width: 100%;
		justify-content: flex-start;
	}

	.rvst-language-menu-item .rvst-language-switch {
		width: 100%;
	}
}

@media (min-width: 922px) {
	.home .uagb-block-eacda952 > .wp-block-group:first-child {
		padding-bottom: 8px !important;
		margin-bottom: -12px;
	}
}
