.material-symbols-outlined {
	font-variation-settings: "FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;
}

.fill-icon {
	font-variation-settings: "FILL" 1, "wght" 300, "GRAD" 0, "opsz" 24;
}

.text-link {
	color: #541e12;
	text-decoration: underline;
	text-decoration-color: rgba(84, 30, 18, 0.3);
	text-underline-offset: 4px;
	transition: color 0.2s, text-decoration-color 0.2s;
}

.text-link:hover {
	color: #732e1d;
	text-decoration-color: #732e1d;
}

.image-hover-zoom {
	transition: transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}

.image-hover-zoom:hover {
	transform: scale(1.035);
}

.caricole-desktop-navigation a {
	display: inline-flex;
	align-items: center;
}

.caricole-header .caricole-desktop-navigation {
	display: none;
}

.caricole-header .caricole-menu-toggle {
	display: flex;
}

.caricole-primary-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.caricole-primary-menu a {
	font-weight: 600;
}

.caricole-header-cta-menu {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.caricole-header-cta-menu--desktop {
	display: none;
}

.caricole-header-cta-menu--mobile {
	flex-direction: column;
	gap: 0.75rem;
	margin-top: auto;
	padding-top: 2rem;
}

.caricole-mobile-navigation {
	flex: 1;
}

#mobile-navigation {
	padding-bottom: 7rem;
}

body.mobile-navigation-open iframe[src*="bookings.zenchef.com"][src*="sdk=1"] {
	display: none !important;
}

.caricole-header-cta-menu a {
	align-items: center;
	white-space: nowrap;
}

.caricole-header-cta-menu--mobile a {
	width: 100%;
}

.caricole-menu-icon-close {
	display: none;
}

.caricole-menu-toggle.is-open .caricole-menu-icon-open {
	display: none;
}

.caricole-menu-toggle.is-open .caricole-menu-icon-close {
	display: block;
}

@media (min-width: 768px) {
	.caricole-header-cta-menu--desktop {
		display: flex;
		align-items: center;
		gap: 0.5rem;
	}
}

.caricole-primary-menu--desktop {
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.caricole-primary-menu--desktop > .menu-item {
	position: relative;
}

.caricole-primary-menu--desktop .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 60;
	display: none;
	min-width: 13rem;
	margin: 0;
	border: 1px solid rgba(84, 30, 18, 0.12);
	background: #fcfbf9;
	padding: 0.5rem 0;
	box-shadow: 0 12px 24px rgba(42, 34, 32, 0.12);
}

.caricole-primary-menu--desktop .menu-item:hover > .sub-menu,
.caricole-primary-menu--desktop .menu-item:focus-within > .sub-menu {
	display: block;
}

.caricole-primary-menu--desktop .sub-menu a {
	display: flex;
	width: 100%;
	padding: 0.7rem 1rem;
	letter-spacing: 0.08em;
	white-space: nowrap;
}

.caricole-desktop-navigation a:hover,
.caricole-mobile-navigation a:hover,
.caricole-footer-navigation a:hover {
	color: #541e12;
}

.caricole-desktop-navigation a[aria-current="page"],
.caricole-mobile-navigation a[aria-current="page"],
.caricole-primary-menu .current-menu-item > a,
.caricole-primary-menu .current_page_item > a {
	color: #541e12;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.caricole-mobile-navigation a {
	display: block;
}

.caricole-primary-menu--mobile,
.caricole-primary-menu--mobile .sub-menu {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.caricole-primary-menu--mobile .sub-menu {
	margin: 1rem 0 0 0.75rem;
	border-left: 1px solid rgba(84, 30, 18, 0.18);
	padding-left: 1rem;
}

.caricole-primary-menu--mobile .sub-menu a {
	font-size: 1rem;
}

.caricole-footer-navigation a {
	transition: color 0.2s;
}

.custom-logo-link {
	display: inline-flex;
	align-items: center;
}

.custom-logo {
	width: auto;
	max-height: 2rem;
}

.max-w-container-max-width {
	max-width: 1180px;
}

.caricole-logo {
	display: block;
	width: auto;
}

.caricole-logo--header {
	height: 1.25rem;
}

.caricole-logo--footer {
	height: 1.5rem;
}

.caricole-header .custom-logo {
	max-height: 1.25rem;
}

.caricole-footer-logo .custom-logo {
	max-height: 1.5rem;
}

body.admin-bar .caricole-header nav {
	top: 32px;
}

body {
	padding-top: 81px;
}

@media (min-width: 768px) {
	.md\:px-margin-desktop {
		padding-right: 64px;
		padding-left: 64px;
	}

	.md\:gap-gutter {
		gap: 32px;
	}

	.caricole-logo--header {
		height: 1.5rem;
	}

	.caricole-header .custom-logo {
		max-height: 1.5rem;
	}
}

@media (min-width: 1300px) {
	.caricole-header .caricole-desktop-navigation {
		display: flex;
	}

	.caricole-header .caricole-menu-toggle,
	.caricole-header #mobile-navigation {
		display: none;
	}
}

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

@media (max-width: 767px) {
	body {
		padding-top: 73px;
	}
}

@media (max-width: 600px) {
	body.admin-bar #wpadminbar {
		position: fixed;
	}
}
