/**
 * Florete editorial commerce header.
 * Bujor-inspired structure, adapted to the Florete palette.
 */

:root {
	--fl-header-ink: #24201d;
	--fl-header-deep: #2d2823;
	--fl-header-paper: #fffdf9;
	--fl-header-cream: #f9f4ea;
	--fl-header-sand: #c5b697;
	--fl-header-taupe: #ac9c7e;
	--fl-header-line: rgba(172, 156, 126, 0.28);
}

.topbar {
	min-height: 34px;
	border: 0;
	background: var(--fl-header-deep) !important;
	color: var(--fl-header-cream) !important;
	font-family: "Montserrat", sans-serif;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.04em;
}

.topbar .woostify-container {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	min-height: 34px;
}

.topbar a,
.topbar .topbar-item {
	color: inherit !important;
}

.topbar-left {
	text-align: left;
}

.topbar-center {
	text-align: center;
}

.topbar-right {
	text-align: right;
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 990;
	border: 0 !important;
	background: rgba(255, 253, 249, 0.97) !important;
	box-shadow: 0 8px 30px rgba(36, 32, 29, 0.035);
	backdrop-filter: blur(14px);
}

.admin-bar .site-header {
	top: 32px;
}

.site-header .site-header-inner {
	border-bottom: 1px solid var(--fl-header-line);
	background: transparent;
}

.site-header-inner > .woostify-container {
	width: min(100% - 48px, 1420px);
	max-width: 1420px;
	margin-inline: auto;
}

.site-branding {
	min-width: 0;
}

.site-branding .custom-logo-link,
.site-branding .logo {
	display: inline-flex;
	align-items: center;
	margin: 0;
}

.site-branding img,
.site-branding .custom-logo {
	display: block;
	width: auto !important;
	max-width: 190px !important;
	height: auto !important;
	max-height: 54px;
	object-fit: contain;
}

.florete-header-search {
	width: 100%;
	max-width: 560px;
}

.florete-header-search form {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 46px;
	border: 1px solid var(--fl-header-line);
	border-radius: 999px;
	background: var(--fl-header-paper);
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

.florete-header-search form:focus-within {
	border-color: var(--fl-header-taupe);
	box-shadow: 0 0 0 3px rgba(197, 182, 151, 0.16);
}

.florete-header-search input[type="search"] {
	width: 100%;
	height: 44px;
	margin: 0;
	padding: 0 52px 0 18px;
	border: 0 !important;
	border-radius: 999px;
	outline: 0;
	background: transparent !important;
	color: var(--fl-header-ink);
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	box-shadow: none !important;
	-webkit-appearance: none;
}

.florete-header-search input[type="search"]::placeholder {
	color: #968b7f;
	opacity: 1;
}

.florete-header-search button {
	position: absolute;
	top: 50%;
	right: 5px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--fl-header-sand) !important;
	color: var(--fl-header-ink) !important;
	transform: translateY(-50%);
	box-shadow: none !important;
}

.florete-header-search button:hover,
.florete-header-search button:focus-visible {
	background: var(--fl-header-deep) !important;
	color: var(--fl-header-paper) !important;
}

.florete-header-search button svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
}

.site-tools {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 3px;
}

.site-tools .header-search-icon {
	display: none !important;
}

.site-tools .tools-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: 0 !important;
	border-radius: 50%;
	color: var(--fl-header-ink) !important;
	transition: color 180ms ease, background-color 180ms ease;
}

.site-tools .tools-icon:hover {
	background: var(--fl-header-cream);
	color: var(--fl-header-taupe) !important;
}

.site-tools .tools-icon svg {
	width: 21px;
	height: 21px;
	stroke-width: 1.5;
}

.site-tools .theme-item-count,
.site-tools .shop-cart-count {
	top: 1px !important;
	right: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 17px;
	height: 17px;
	padding: 0 4px;
	border: 2px solid var(--fl-header-paper);
	border-radius: 999px;
	background: var(--fl-header-sand) !important;
	color: var(--fl-header-ink) !important;
	font-size: 9px;
	font-weight: 700;
	line-height: 1;
}

@media (min-width: 992px) {
	.site-header-inner > .woostify-container {
		display: grid !important;
		grid-template-columns: minmax(180px, 0.72fr) minmax(320px, 1.65fr) minmax(190px, 0.72fr);
		grid-template-areas:
			"brand search tools"
			"nav nav nav";
		align-items: center;
		column-gap: clamp(24px, 3.5vw, 64px);
		padding: 17px 0 0;
	}

	.site-branding {
		grid-area: brand;
		justify-self: start;
	}

	.florete-header-search {
		grid-area: search;
		justify-self: center;
	}

	.site-tools {
		grid-area: tools;
		justify-self: end;
	}

	.site-navigation {
		grid-area: nav;
		width: 100%;
		min-width: 0;
		margin-top: 15px;
		border-top: 1px solid var(--fl-header-line);
	}

	.main-navigation {
		width: 100%;
	}

	.main-navigation > .primary-navigation,
	.main-navigation .primary-navigation:not(.primary-mobile-navigation) {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: clamp(12px, 1.25vw, 22px);
		width: 100%;
		margin: 0;
		padding: 0;
		overflow-x: auto;
		list-style: none;
		scrollbar-width: none;
	}

	.main-navigation > .primary-navigation::-webkit-scrollbar,
	.main-navigation .primary-navigation:not(.primary-mobile-navigation)::-webkit-scrollbar {
		display: none;
	}

	.main-navigation .primary-mobile-navigation {
		display: none !important;
	}

	.main-navigation .primary-navigation > li {
		flex: 0 0 auto;
		margin: 0;
	}

	.main-navigation .primary-navigation > li > a {
		display: inline-flex;
		align-items: center;
		min-height: 50px;
		padding: 0 2px;
		color: var(--fl-header-ink) !important;
		font-family: "Montserrat", sans-serif;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: 0.025em;
		line-height: 1.2;
		white-space: nowrap;
	}

	.main-navigation .primary-navigation > li > a::after {
		height: 1px;
		background: var(--fl-header-taupe);
	}

	.wrap-toggle-sidebar-menu {
		display: none !important;
	}
}

@media (max-width: 991px) {
	.topbar {
		min-height: 30px;
		font-size: 10px;
	}

	.topbar .woostify-container {
		display: flex;
		justify-content: center;
		min-height: 30px;
		padding-inline: 14px;
	}

	.topbar-left,
	.topbar-right {
		display: none !important;
	}

	.topbar-center {
		width: 100%;
		text-align: center;
	}

	.site-header-inner > .woostify-container {
		display: grid !important;
		grid-template-columns: 42px minmax(0, 1fr) auto;
		grid-template-areas:
			"toggle brand tools"
			"search search search";
		align-items: center;
		gap: 10px 12px;
		width: 100%;
		padding: 10px 15px 12px;
	}

	.wrap-toggle-sidebar-menu {
		grid-area: toggle;
		display: flex !important;
		align-items: center;
		justify-content: flex-start;
		width: 42px;
		margin: 0 !important;
	}

	.toggle-sidebar-menu-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 38px;
		height: 38px;
		color: var(--fl-header-ink);
	}

	.site-branding {
		grid-area: brand;
		justify-self: center;
		text-align: center;
	}

	.site-branding img,
	.site-branding .custom-logo {
		max-width: 145px !important;
		max-height: 42px;
	}

	.florete-header-search {
		grid-area: search;
		max-width: none;
	}

	.florete-header-search form {
		min-height: 42px;
	}

	.florete-header-search input[type="search"] {
		height: 40px;
		padding-left: 15px;
		font-size: 12px;
	}

	.florete-header-search button {
		width: 34px;
		height: 34px;
	}

	.site-tools {
		grid-area: tools;
		gap: 0;
	}

	.site-tools .tools-icon {
		width: 36px;
		height: 36px;
	}

	.site-tools .tools-icon svg {
		width: 19px;
		height: 19px;
	}

	.site-navigation {
		margin: 0;
	}

	.site-navigation .primary-navigation > li > a {
		font-family: "Montserrat", sans-serif;
		font-size: 13px;
		font-weight: 600;
	}

	.admin-bar .site-header {
		top: 46px;
	}
}

@media (max-width: 575px) {
	.site-header-inner > .woostify-container {
		grid-template-columns: 40px minmax(0, 1fr) auto;
		gap: 9px 8px;
		padding-inline: 12px;
	}

	.site-branding img,
	.site-branding .custom-logo {
		max-width: 126px !important;
		max-height: 38px;
	}

	.site-tools .header-wishlist-icon {
		display: none !important;
	}

	.site-tools .tools-icon {
		width: 34px;
		height: 34px;
	}

	.florete-header-search input[type="search"] {
		font-size: 11px;
	}
}

@media (max-width: 782px) {
	.admin-bar .site-header {
		top: 46px;
	}
}

/* Product-category dropdowns. */
.florete-product-menu .florete-product-menu-item {
	position: relative;
}

.florete-product-menu .florete-submenu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 32px;
	margin: 0 0 0 -3px;
	padding: 0;
	border: 0 !important;
	background: transparent !important;
	color: var(--fl-header-taupe) !important;
	box-shadow: none !important;
}

.florete-product-menu .florete-submenu-toggle svg {
	width: 10px;
	height: 7px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.5;
	transition: transform 180ms ease;
}

.florete-product-menu .is-open > .florete-submenu-toggle svg {
	transform: rotate(180deg);
}

@media (min-width: 992px) {
	.florete-product-menu > .florete-product-menu-item {
		display: inline-flex;
		align-items: center;
	}

	.florete-product-menu .sub-menu {
		position: absolute;
		top: calc(100% - 1px);
		left: 0;
		z-index: 40;
		display: grid !important;
		grid-template-columns: 1fr;
		gap: 0;
		width: 286px;
		margin: 0 !important;
		padding: 12px !important;
		border: 1px solid var(--fl-header-line);
		border-radius: 0 0 14px 14px;
		background: var(--fl-header-paper);
		box-shadow: 0 18px 38px rgba(36, 32, 29, 0.12);
		opacity: 0;
		visibility: hidden;
		transform: translateY(8px);
		pointer-events: none;
		transition: opacity 160ms ease, visibility 160ms ease, transform 160ms ease;
	}

	.florete-product-menu .florete-wide-menu > .sub-menu {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 520px;
	}

	.florete-product-menu > li:nth-last-child(-n + 3) > .sub-menu {
		right: 0;
		left: auto;
	}

	.florete-product-menu .menu-item-has-children:hover > .sub-menu,
	.florete-product-menu .menu-item-has-children:focus-within > .sub-menu,
	.florete-product-menu .menu-item-has-children.is-open > .sub-menu {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
		pointer-events: auto;
	}

	.florete-product-menu .sub-menu li {
		margin: 0;
		list-style: none;
	}

	.florete-product-menu .sub-menu a {
		display: block;
		padding: 10px 12px;
		border-radius: 8px;
		color: #514a43 !important;
		font-family: "Montserrat", sans-serif;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.35;
	}

	.florete-product-menu .sub-menu a:hover,
	.florete-product-menu .sub-menu a:focus-visible {
		background: var(--fl-header-cream);
		color: var(--fl-header-ink) !important;
	}

	.florete-product-menu .florete-view-all a {
		color: var(--fl-header-taupe) !important;
		font-weight: 700;
	}
}

@media (max-width: 991px) {
	.florete-product-navigation .florete-product-menu {
		display: block;
		width: 100%;
		margin: 0;
		padding: 8px 0 24px;
	}

	.florete-product-menu > li {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1fr) 44px;
		align-items: center;
		border-bottom: 1px solid var(--fl-header-line);
	}

	.florete-product-menu > li > a {
		display: flex;
		align-items: center;
		min-height: 50px;
		padding: 10px 4px;
		color: var(--fl-header-ink) !important;
		font-size: 13px;
		font-weight: 600;
	}

	.florete-product-menu .florete-submenu-toggle {
		grid-column: 2;
	}

	.florete-product-menu .sub-menu {
		display: none !important;
		grid-column: 1 / -1;
		margin: 0 !important;
		padding: 2px 0 12px 14px !important;
		background: var(--fl-header-cream);
	}

	.florete-product-menu .is-open > .sub-menu {
		display: grid !important;
	}

	.florete-product-menu .sub-menu li {
		margin: 0;
		list-style: none;
	}

	.florete-product-menu .sub-menu a {
		display: block;
		padding: 9px 12px;
		color: #62594f !important;
		font-size: 12px;
		line-height: 1.4;
	}
}

@media (prefers-reduced-motion: reduce) {
	.florete-header-search form,
	.florete-header-search button,
	.site-tools .tools-icon,
	.florete-product-menu .sub-menu,
	.florete-product-menu .florete-submenu-toggle svg {
		transition: none;
	}
}

/* Final visual polish: calmer proportions and clearer hierarchy. */
.topbar {
	min-height: 31px;
	font-size: 10px;
	letter-spacing: 0.055em;
}

.topbar .woostify-container {
	min-height: 31px;
}

.site-header {
	box-shadow: 0 7px 24px rgba(36, 32, 29, 0.028);
}

.florete-header-search form {
	min-height: 43px;
	border-radius: 12px;
	background: #fffdf9;
}

.florete-header-search input[type="search"] {
	height: 41px;
	border-radius: 12px;
}

.florete-header-search button {
	right: 4px;
	width: 35px;
	height: 35px;
	border-radius: 9px !important;
}

.site-tools .tools-icon {
	width: 38px;
	height: 38px;
}

@media (min-width: 992px) {
	.site-header-inner > .woostify-container {
		grid-template-columns: minmax(170px, 0.65fr) minmax(330px, 1.7fr) minmax(180px, 0.65fr);
		column-gap: clamp(22px, 3vw, 48px);
		padding-top: 14px;
	}

	.site-branding img,
	.site-branding .custom-logo {
		max-width: 172px !important;
		max-height: 48px;
	}

	.florete-header-search {
		max-width: 520px;
	}

	.site-navigation {
		margin-top: 13px;
		border-top: 1px solid rgba(197, 182, 151, 0.22);
		background: #2d2823;
	}

	.main-navigation .primary-navigation > li > a {
		color: #fffdf9 !important;
	}

	.florete-product-menu > .menu-item-has-children > .florete-submenu-toggle {
		color: #c5b697 !important;
	}

	.main-navigation .primary-navigation > li:hover > a,
	.main-navigation .primary-navigation > li:focus-within > a,
	.main-navigation .primary-navigation > li.current-menu-item > a,
	.florete-menu-all > a {
		color: #c5b697 !important;
	}

	.main-navigation > .primary-navigation,
	.main-navigation .primary-navigation:not(.primary-mobile-navigation) {
		gap: clamp(13px, 1.4vw, 24px);
		padding-inline: 12px;
	}

	.main-navigation .primary-navigation > li > a {
		min-height: 44px;
		font-size: 10.5px;
		font-weight: 650;
		letter-spacing: 0.045em;
	}

	.florete-product-menu .florete-submenu-toggle {
		width: 20px;
		height: 30px;
		margin-left: -5px;
	}

	.florete-product-menu .sub-menu {
		top: 100%;
		width: 270px;
		padding: 10px !important;
		border-color: rgba(172, 156, 126, 0.24);
		border-radius: 0 0 12px 12px;
		box-shadow: 0 20px 44px rgba(36, 32, 29, 0.11);
	}

	.florete-product-menu .florete-wide-menu > .sub-menu {
		width: 492px;
	}

	.florete-product-menu .sub-menu a {
		padding: 9px 11px;
		font-size: 11.5px;
	}

	.florete-menu-all > a {
		color: var(--fl-header-taupe) !important;
	}
}

@media (max-width: 991px) {
	.site-header-inner > .woostify-container {
		padding-top: 9px;
		padding-bottom: 10px;
	}

	.florete-header-search form,
	.florete-header-search input[type="search"] {
		border-radius: 10px;
	}

	.florete-product-menu > li > a {
		min-height: 47px;
		font-size: 12.5px;
	}

	.florete-product-menu .sub-menu {
		border-radius: 10px;
		background: rgba(249, 244, 234, 0.78);
	}
}

/* Dropdown visibility and precise arrow alignment. */
@media (min-width: 992px) {
	.site-header,
	.site-header-inner,
	.site-header-inner > .woostify-container,
	.florete-product-navigation,
	.florete-product-navigation .main-navigation,
	.florete-product-navigation .florete-product-menu {
		overflow: visible !important;
	}

	.florete-product-menu > .menu-item-has-children {
		position: relative;
	}

	.florete-product-menu > .menu-item-has-children > a {
		padding-right: 18px !important;
	}

	.florete-product-menu > .menu-item-has-children > .florete-submenu-toggle {
		position: absolute !important;
		top: 50% !important;
		right: 0 !important;
		left: auto !important;
		width: 18px !important;
		height: 24px !important;
		margin: 0 !important;
		transform: translateY(-50%);
	}

	.florete-product-menu > .menu-item-has-children > .sub-menu {
		display: grid !important;
		top: 100% !important;
		z-index: 9999 !important;
		overflow: visible !important;
	}

	.florete-product-menu > .menu-item-has-children:hover > .sub-menu,
	.florete-product-menu > .menu-item-has-children:focus-within > .sub-menu,
	.florete-product-menu > .menu-item-has-children.is-open > .sub-menu {
		display: grid !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: translateY(0) !important;
		pointer-events: auto !important;
	}
}

@media (max-width: 991px) {
	.florete-product-menu > .menu-item-has-children > .florete-submenu-toggle {
		position: static !important;
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
		width: 42px;
		height: 42px;
		margin: 0 !important;
		transform: none;
	}
}

/* Full-width menu bar and a more compact header rhythm. */
.topbar,
.topbar .woostify-container {
	min-height: 28px;
}

@media (min-width: 992px) {
	.site-header-inner > .woostify-container {
		padding-top: 10px;
	}

	.site-branding img,
	.site-branding .custom-logo {
		max-width: 158px !important;
		max-height: 42px;
	}

	.florete-header-search form {
		min-height: 39px;
	}

	.florete-header-search input[type="search"] {
		height: 37px;
		font-size: 12px;
	}

	.florete-header-search button {
		width: 31px;
		height: 31px;
	}

	.site-tools .tools-icon {
		width: 35px;
		height: 35px;
	}

	.site-tools .tools-icon svg {
		width: 19px;
		height: 19px;
	}

	.site-navigation {
		width: 100vw !important;
		max-width: none !important;
		margin-top: 9px;
		margin-right: calc(50% - 50vw) !important;
		margin-left: calc(50% - 50vw) !important;
	}

	.site-navigation .main-navigation {
		width: min(100% - 48px, 1420px);
		margin-inline: auto;
	}

	.main-navigation .primary-navigation > li > a {
		min-height: 40px;
		font-size: 10px;
	}
}

@media (max-width: 991px) {
	.topbar,
	.topbar .woostify-container {
		min-height: 27px;
	}

	.site-header-inner > .woostify-container {
		gap: 7px 10px;
		padding-top: 7px;
		padding-bottom: 8px;
	}

	.site-branding img,
	.site-branding .custom-logo {
		max-height: 36px;
	}

	.florete-header-search form {
		min-height: 38px;
	}

	.florete-header-search input[type="search"] {
		height: 36px;
	}

	.florete-header-search button {
		width: 30px;
		height: 30px;
	}
}

/* Keep the seasonal category and every desktop menu item within the bar. */
@media (min-width: 992px) {
	.florete-product-navigation .main-navigation .florete-product-menu {
		flex-wrap: wrap;
		justify-content: center;
		column-gap: clamp(10px, 1.5vw, 22px);
		row-gap: 0;
	}

	.florete-product-navigation .main-navigation .florete-product-menu > li > a {
		margin-inline: 0 !important;
		padding-block: 14px;
	}
}

/* Refined desktop account dropdown. */
@media (min-width: 992px) {
	.site-tools > .my-account {
		position: relative;
		overflow: visible !important;
	}

	.site-tools > .my-account > .subbox {
		position: absolute !important;
		top: calc(100% + 7px) !important;
		right: -8px !important;
		left: auto !important;
		z-index: 10020 !important;
		display: block !important;
		width: 218px !important;
		min-width: 218px !important;
		margin: 0 !important;
		padding: 8px !important;
		border: 1px solid rgba(172, 156, 126, 0.28) !important;
		border-radius: 12px !important;
		background: var(--fl-header-paper) !important;
		box-shadow: 0 18px 42px rgba(36, 32, 29, 0.13) !important;
		opacity: 0;
		visibility: hidden;
		transform: translateY(6px);
		pointer-events: none;
		transition: opacity 160ms ease, visibility 160ms ease, transform 160ms ease;
	}

	.site-tools > .my-account > .subbox::before {
		position: absolute;
		top: -10px;
		right: 0;
		width: 58px;
		height: 12px;
		content: "";
	}

	.site-tools > .my-account:hover > .subbox,
	.site-tools > .my-account:focus-within > .subbox {
		opacity: 1 !important;
		visibility: visible !important;
		transform: translateY(0) !important;
		pointer-events: auto !important;
	}

	.site-tools > .my-account > .subbox ul {
		display: grid;
		gap: 2px;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none;
	}

	.site-tools > .my-account > .subbox li {
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		list-style: none;
	}

	.site-tools > .my-account > .subbox a {
		display: flex !important;
		align-items: center;
		min-height: 38px;
		padding: 9px 12px !important;
		border: 0 !important;
		border-radius: 8px;
		background: transparent !important;
		color: #514a43 !important;
		font-family: "Montserrat", sans-serif;
		font-size: 12px !important;
		font-weight: 550;
		line-height: 1.3;
		text-decoration: none !important;
		box-shadow: none !important;
	}

	.site-tools > .my-account > .subbox a:hover,
	.site-tools > .my-account > .subbox a:focus-visible {
		background: var(--fl-header-cream) !important;
		color: var(--fl-header-deep) !important;
		outline: none;
	}
}

/* Static header and balanced logo placement. */
.site-header,
.admin-bar .site-header {
	position: relative !important;
	top: auto !important;
}

.site-branding {
	display: flex !important;
	align-items: center !important;
	min-height: 42px;
	line-height: 0;
}

.site-branding .custom-logo-link,
.site-branding .logo {
	display: flex !important;
	align-items: center;
	justify-content: flex-start;
	width: auto;
	height: 42px;
	line-height: 0;
}

.site-branding img,
.site-branding .custom-logo {
	width: auto !important;
	height: auto !important;
	max-width: 164px !important;
	max-height: 40px !important;
	margin: 0 !important;
	vertical-align: middle;
	object-fit: contain;
	object-position: left center;
}

@media (max-width: 991px) {
	.site-branding {
		min-height: 36px;
		justify-content: center;
	}

	.site-branding .custom-logo-link,
	.site-branding .logo {
		justify-content: center;
		height: 36px;
	}

	.site-branding img,
	.site-branding .custom-logo {
		max-width: 136px !important;
		max-height: 34px !important;
		object-position: center;
	}
}

/* Keep third-party cart and collection actions inside the Florete palette. */
html:root {
	--moderncart-floating-icon-bg-color: #2d2823 !important;
	--moderncart-floating-icon-bg-color-light: #2d282312 !important;
	--moderncart-floating-icon-color: #fffdf9 !important;
	--moderncart-floating-icon-color-light: #fffdf912 !important;
	--moderncart-floating-count-bg-color: #c5b697 !important;
	--moderncart-floating-count-bg-color-light: #c5b69712 !important;
	--moderncart-floating-count-text-color: #24201d !important;
	--moderncart-floating-count-text-color-light: #24201d12 !important;
}

.elementor-element-489c83f .eael-load-more-button,
.elementor-element-489c83f .eael-product-gallery-load-more,
.elementor-element-489c83f button[class*="load-more"],
.elementor-element-489c83f a[class*="load-more"] {
	border-color: #2d2823 !important;
	background: #2d2823 !important;
	color: #fffdf9 !important;
	box-shadow: none !important;
}

.elementor-element-489c83f .eael-load-more-button:hover,
.elementor-element-489c83f .eael-load-more-button:focus-visible,
.elementor-element-489c83f .eael-product-gallery-load-more:hover,
.elementor-element-489c83f .eael-product-gallery-load-more:focus-visible,
.elementor-element-489c83f button[class*="load-more"]:hover,
.elementor-element-489c83f button[class*="load-more"]:focus-visible,
.elementor-element-489c83f a[class*="load-more"]:hover,
.elementor-element-489c83f a[class*="load-more"]:focus-visible {
	border-color: #c5b697 !important;
	background: #c5b697 !important;
	color: #24201d !important;
}

/* Replace Essential Addons' default purple product-carousel overlay. */
.elementor-page-57 .eael-woo-product-carousel-container .carousel-overlay {
	background: rgba(45, 40, 35, 0.62) !important;
}

.elementor-page-57 .eael-woo-product-carousel-container .eael-product-carousel:hover .image-wrap a {
	opacity: 0.76 !important;
}

.elementor-page-57 .eael-woo-product-carousel-container .image-wrap a::after {
	display: none !important;
}

.elementor-page-57 .eael-woo-product-carousel-container .product-overlay-content {
	padding: 18px !important;
	text-shadow: 0 1px 10px rgba(36, 32, 29, 0.28);
}

.elementor-page-57 .eael-woo-product-carousel-container .eael-product-carousel:hover .eael-product-title *,
.elementor-page-57 .eael-woo-product-carousel-container .eael-product-carousel:hover .eael-product-excerpt {
	color: #fffdf9 !important;
}

.elementor-page-57 .eael-woo-product-carousel-container .eael-product-carousel:hover .eael-product-price,
.elementor-page-57 .eael-woo-product-carousel-container .eael-product-carousel:hover .eael-product-price .amount,
.elementor-page-57 .eael-woo-product-carousel-container .eael-product-carousel:hover .eael-product-price bdi {
	color: #f9f4ea !important;
	font-weight: 700 !important;
}

