/* Mantic Truths – Represent-style menu */

:root {
	--mt-h-d: 72px;        /* overridden from Customizer */
	--mt-h: var(--mt-h-d);
	--mt-h-m: 60px;
	--mt-logo-h: 48px;
	--mt-logo-h-m: 30px;
	--mt-fs: 14px;
	--mt-top: var(--wp-admin--admin-bar--height, 0px);
	--mt-ink: #000;
	--mt-mute: #757575;
	--mt-line: #eae9e9;
	--mt-bg: #fff;
	--mt-ease: cubic-bezier(.2, .7, .2, 1);
}

/* ---- Hide Flatsome's header & mobile sidebar when ours is active ---- */
body.mt-rm-on #header,
body.mt-rm-on .header-wrapper,
body.mt-rm-on #main-menu { display: none !important; }
/* Flatsome's off-canvas cart drawer (#cart-popup) must stay usable and sit above our header. */
body.mt-rm-on .mfp-wrap, body.mt-rm-on .mfp-bg { z-index: 100000 !important; }

body.mt-rm-on:not(.mt-rm-transparent) { padding-top: var(--mt-h); }
html.mt-rm-lock, html.mt-rm-lock body { overflow: hidden; }

/* ---- Reset theme styles inside the component ---- */
.mt-rm, .mt-rm * { box-sizing: border-box; }
.mt-rm {
	font-family: var(--mt-font, inherit);
	font-size: var(--mt-fs);
	line-height: 1.35;
	letter-spacing: .011em;
	color: var(--mt-ink);
	-webkit-font-smoothing: antialiased;
	text-transform: none;
}
.mt-rm button { all: unset; box-sizing: border-box; cursor: pointer; font: inherit; color: inherit; -webkit-tap-highlight-color: transparent; }
.mt-rm button:focus-visible, .mt-rm a:focus-visible { outline: 1px solid currentColor; outline-offset: -3px; }
.mt-rm a { color: inherit; text-decoration: none; }
.mt-rm ul, .mt-rm li { list-style: none; margin: 0; padding: 0; }
.mt-rm img { max-width: 100%; display: block; }
.mt-rm .mt-rm-ico { display: block; flex: none; }
.mt-rm .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); }

/* ---- Top bar ---- */
.mt-rm .mt-rm-bar {
	position: fixed;
	top: var(--mt-top);
	left: 0;
	right: 0;
	z-index: 1002;
	height: var(--mt-h);
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: 16px;
	padding: 0 32px;
	background: var(--mt-bg);
	color: var(--mt-ink);
	border-bottom: 1px solid var(--mt-line);
	transition: background-color .3s linear, color .3s linear, border-color .3s linear;
}
.mt-rm .mt-rm-bar__left { display: flex; align-items: center; height: 100%; margin-left: -12px; }
.mt-rm .mt-rm-bar__right { display: flex; align-items: center; justify-content: flex-end; height: 100%; margin-right: -12px; }
.mt-rm .mt-rm-depts { display: flex; height: 100%; }

.mt-rm .mt-rm-dept,
.mt-rm .mt-rm-utility__link {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	padding: 0 12px;
	white-space: nowrap;
	user-select: none;
}
.mt-rm .mt-rm-dept { font-weight: 600; }
.mt-rm .mt-rm-inline { display: flex; height: 100%; }
.mt-rm .mt-rm-inline .mt-rm-utility__link { padding: 0 11px; }
.mt-rm .mt-rm-dept::after,
.mt-rm .mt-rm-utility__link::after {
	content: "";
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: calc(50% - 13px);
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .3s var(--mt-ease);
}
.mt-rm .mt-rm-dept:hover::after,
.mt-rm .mt-rm-dept[aria-expanded="true"]::after,
.mt-rm .mt-rm-utility__link:hover::after { transform: scaleX(1); }

.mt-rm .mt-rm-utility { display: flex; height: 100%; }
.mt-rm .mt-rm-iconbtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	height: 100%;
	min-width: 40px;
	padding: 0 10px;
}
.mt-rm .mt-rm-cart-count { font-size: 13px; line-height: 1; min-width: 8px; }
.mt-rm .mt-rm-iconbtn .mt-rm-ico { width: 22px; height: 22px; }

/* Logo */
.mt-rm .mt-rm-logo { display: flex; align-items: center; justify-content: center; height: 100%; }
.mt-rm .mt-rm-logo img { height: var(--mt-logo-h); width: auto; max-width: 42vw; object-fit: contain; }
.mt-rm .mt-rm-logo__light { display: none !important; }
.mt-rm .mt-rm-logo__text { font-size: 24px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }

/* Transparent header over hero (homepage / Flatsome transparent templates) */
body.mt-rm-transparent .mt-rm:not(.is-solid) .mt-rm-bar {
	background: transparent;
	color: #fff;
	border-bottom-color: transparent;
}
body.mt-rm-transparent .mt-rm:not(.is-solid) .mt-rm-logo__dark { display: none !important; }
body.mt-rm-transparent .mt-rm:not(.is-solid) .mt-rm-logo__light { display: block !important; }

/* Burger (mobile) */
.mt-rm .mt-rm-burger { display: none; align-items: center; justify-content: center; width: 44px; height: 100%; }
.mt-rm .mt-rm-burger .mt-rm-ico--close { display: none; }
.mt-rm.is-open .mt-rm-burger .mt-rm-ico--menu { display: none; }
.mt-rm.is-open .mt-rm-burger .mt-rm-ico--close { display: block; }
.mt-rm .mt-rm-mobile-only { display: none; }

/* ---- Slide-out panel (desktop: left half of the screen) ---- */
.mt-rm .mt-rm-panel {
	position: fixed;
	top: calc(var(--mt-top) + var(--mt-h));
	left: 0;
	z-index: 1001;
	width: 50vw;
	height: calc(100vh - var(--mt-top) - var(--mt-h));
	height: calc(100dvh - var(--mt-top) - var(--mt-h));
	display: grid;
	grid-template-columns: minmax(300px, 1fr) 2fr;
	background: var(--mt-bg);
	overflow: hidden;
	visibility: hidden;
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity .25s var(--mt-ease), transform .25s var(--mt-ease), visibility 0s linear .25s;
}
.mt-rm.is-open .mt-rm-panel {
	visibility: visible;
	opacity: 1;
	transform: none;
	transition: opacity .25s var(--mt-ease), transform .25s var(--mt-ease), visibility 0s;
}

.mt-rm .mt-rm-panel__col {
	display: flex;
	flex-direction: column;
	min-height: 0;
	overflow-y: auto;
	scrollbar-width: none;
}
.mt-rm .mt-rm-panel__col::-webkit-scrollbar { display: none; }
.mt-rm .mt-rm-nav { padding-top: 28px; }

.mt-rm .mt-rm-item { position: relative; }
.mt-rm .mt-rm-item--label { margin-top: 48px; }
.mt-rm .mt-rm-item--label:first-child { margin-top: 0; }
.mt-rm .mt-rm-label {
	display: block;
	padding: 6px 32px;
	font-size: 11px;
	line-height: 16px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--mt-mute);
}

.mt-rm .mt-rm-link {
	display: flex;
	align-items: center;
	gap: 6px;
	min-height: 40px;
	padding: 8px 32px;
	font-size: var(--mt-fs);
}
.mt-rm .mt-rm-item.has-sub .mt-rm-link { padding-right: 60px; }
.mt-rm .mt-rm-item--quick .mt-rm-link {
	min-height: 30px;
	padding: 4px 32px;
	font-size: calc(var(--mt-fs) + 2px);
	line-height: 22px;
	font-weight: 700;
	letter-spacing: .005em;
}
.mt-rm .mt-rm-txt { background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; transition: background-size .3s var(--mt-ease); }
.mt-rm .mt-rm-link:hover .mt-rm-txt,
.mt-rm .mt-rm-sublink:hover .mt-rm-txt,
.mt-rm .mt-rm-footlink:hover .mt-rm-txt,
.mt-rm .mt-rm-item.is-active > .mt-rm-link .mt-rm-txt,
.mt-rm [aria-current="page"] .mt-rm-txt { background-size: 100% 1px; }
.mt-rm .mt-rm-link { flex-wrap: wrap; row-gap: 2px; }
.mt-rm .mt-rm-desc { flex-basis: 100%; font-size: calc(var(--mt-fs) - 2px); color: var(--mt-mute); }

.mt-rm .mt-rm-expand {
	position: absolute;
	top: 0;
	right: 0;
	width: 60px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--mt-mute);
}
.mt-rm .mt-rm-expand .mt-rm-ico { width: 14px; height: 14px; transition: transform .2s; }
.mt-rm .mt-rm-item.is-active .mt-rm-expand { color: var(--mt-ink); }

.mt-rm .mt-rm-foot {
	margin-top: auto;
	padding: 48px 32px 32px;
}
.mt-rm .mt-rm-footlink {
	display: flex;
	align-items: center;
	min-height: 32px;
	font-size: calc(var(--mt-fs) - 1px);
	line-height: 1.3;
	color: var(--mt-mute);
}

/* Featured image */
.mt-rm .mt-rm-panel__feature {
	position: relative;
	z-index: 0;
	display: flex;
	padding: 24px;
	border-left: 1px solid var(--mt-line);
	overflow: hidden;
}
.mt-rm .mt-rm-feature { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; background: #f3f3f3; }
.mt-rm .mt-rm-feature img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--mt-ease); }
.mt-rm .mt-rm-feature:hover img { transform: scale(1.03); }
.mt-rm .mt-rm-feature__cta {
	position: absolute;
	left: 20px;
	bottom: 20px;
	color: #fff;
	font-size: 18px;
	line-height: 1.2;
	font-weight: 500;
	text-shadow: 0 1px 12px rgba(0, 0, 0, .25);
}

/* Second level */
.mt-rm .mt-rm-sub {
	position: absolute;
	top: 0;
	left: max(300px, 33.3333%);
	right: 0;
	width: auto;
	height: 100%;
	z-index: 2;
	padding: 24px 12px;
	background: var(--mt-bg);
	border-left: 1px solid var(--mt-line);
	overflow-y: auto;
	visibility: hidden;
	opacity: 0;
	transition: opacity .2s var(--mt-ease), visibility 0s linear .2s;
}
.mt-rm .mt-rm-sub.is-open { visibility: visible; opacity: 1; transition: opacity .2s var(--mt-ease), visibility 0s; }
.mt-rm .mt-rm-sublist { width: 50%; min-width: 200px; }
.mt-rm .mt-rm-sublink { display: block; padding: 11px 20px; font-size: var(--mt-fs); }
.mt-rm .mt-rm-back { display: none; }

/* Scrim (blurs the rest of the page) */
.mt-rm .mt-rm-scrim {
	position: fixed;
	inset: 0;
	z-index: 1000;
	background: rgba(0, 0, 0, .03);
	-webkit-backdrop-filter: blur(24px);
	backdrop-filter: blur(24px);
	visibility: hidden;
	opacity: 0;
	transition: opacity .3s linear, visibility 0s linear .3s;
}
.mt-rm.is-open .mt-rm-scrim,
.mt-rm.is-searching .mt-rm-scrim { visibility: visible; opacity: 1; transition: opacity .3s linear, visibility 0s; }

/* Search */
.mt-rm .mt-rm-search {
	position: fixed;
	top: calc(var(--mt-top) + var(--mt-h));
	left: 0;
	right: 0;
	z-index: 1001;
	background: var(--mt-bg);
	border-bottom: 1px solid var(--mt-line);
	visibility: hidden;
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity .2s var(--mt-ease), transform .2s var(--mt-ease), visibility 0s linear .2s;
}
.mt-rm.is-searching .mt-rm-search { visibility: visible; opacity: 1; transform: none; transition: opacity .2s var(--mt-ease), transform .2s var(--mt-ease), visibility 0s; }
.mt-rm .mt-rm-search form { display: flex; align-items: center; gap: 12px; height: 64px; padding: 0 24px; margin: 0; }
.mt-rm .mt-rm-search input[type="search"] {
	flex: 1;
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
	font: inherit;
	font-size: 18px;
	color: var(--mt-ink);
	outline: none;
}
.mt-rm .mt-rm-search input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; display: none; }
.mt-rm .mt-rm-search .mt-rm-search-close { height: 44px; margin-right: -9px; }

/* Live suggestions */
.mt-rm .mt-rm-suggest { display: none; padding: 0 24px 22px 54px; }
.mt-rm .mt-rm-suggest.is-open { display: block; }
.mt-rm .mt-rm-suggest__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 4px 24px; }
.mt-rm .mt-rm-suggest__item { display: flex; align-items: center; gap: 14px; padding: 8px 0; }
.mt-rm .mt-rm-suggest__item img { flex: none; width: 48px; height: 64px; object-fit: cover; background: #f3f3f3; }
.mt-rm .mt-rm-suggest__txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.mt-rm .mt-rm-suggest__name { font-size: var(--mt-fs); font-weight: 500; line-height: 1.3; text-transform: none; }
.mt-rm .mt-rm-suggest__item:hover .mt-rm-suggest__name { text-decoration: underline; text-underline-offset: 3px; }
.mt-rm .mt-rm-suggest__price { font-size: calc(var(--mt-fs) - 1px); color: var(--mt-mute); }
.mt-rm .mt-rm-suggest__none { margin: 4px 0 12px; color: var(--mt-mute); }
.mt-rm .mt-rm-suggest__all { display: inline-block; margin-top: 12px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }

/* ---- Mobile / tablet ---- */
@media (max-width: 1023.98px) {
	:root { --mt-h: var(--mt-h-m); }
	.mt-rm .mt-rm-bar { padding: 0 12px; }
	.mt-rm .mt-rm-bar__left { margin-left: -6px; }
	.mt-rm .mt-rm-bar__right { margin-right: -6px; }
	.mt-rm .mt-rm-burger { display: inline-flex; }
	.mt-rm .mt-rm-mobile-only { display: inline-flex; }
	.mt-rm .mt-rm-depts,
	.mt-rm .mt-rm-inline,
	.mt-rm .mt-rm-utility,
	.mt-rm .mt-rm-desktop-only { display: none; }
	.mt-rm .mt-rm-logo img { height: var(--mt-logo-h-m); max-width: 52vw; }
	.mt-rm .mt-rm-iconbtn { min-width: 38px; padding: 0 8px; }
	.mt-rm .mt-rm-burger .mt-rm-ico { width: 24px; height: 24px; }

	.mt-rm .mt-rm-panel {
		width: 100vw;
		grid-template-columns: 1fr;
		transform: translateX(-100%);
		opacity: 1;
		transition: transform .35s var(--mt-ease), visibility 0s linear .35s;
	}
	.mt-rm.is-open .mt-rm-panel { transform: none; transition: transform .35s var(--mt-ease), visibility 0s; }
	.mt-rm .mt-rm-panel__feature { display: none; }

	.mt-rm .mt-rm-item--quick .mt-rm-link { font-size: calc(var(--mt-fs) + 4px); min-height: 38px; padding-left: 24px; }
	.mt-rm .mt-rm-link { min-height: 46px; font-size: calc(var(--mt-fs) + 2px); padding-left: 24px; }
	.mt-rm .mt-rm-label { padding-left: 24px; }
	.mt-rm .mt-rm-foot { padding-left: 24px; }
	.mt-rm .mt-rm-expand { height: 46px; width: 60px; }
	.mt-rm .mt-rm-item--label { margin-top: 36px; }

	.mt-rm .mt-rm-sub {
		left: 0;
		width: 100%;
		padding: 0 0 24px;
		border-left: 0;
		visibility: inherit;
		opacity: 1;
		transform: translateX(100%);
		transition: transform .3s var(--mt-ease);
	}
	.mt-rm .mt-rm-sub.is-open { transform: none; transition: transform .3s var(--mt-ease); }
	.mt-rm .mt-rm-sublist { width: 100%; }
	.mt-rm .mt-rm-sublink { padding: 13px 24px; font-size: calc(var(--mt-fs) + 2px); }
	.mt-rm .mt-rm-back {
		display: flex;
		align-items: center;
		gap: 8px;
		width: 100%;
		height: 56px;
		padding: 0 18px;
		margin-bottom: 8px;
		font-size: calc(var(--mt-fs) + 2px);
		font-weight: 500;
		border-bottom: 1px solid var(--mt-line);
	}
	.mt-rm .mt-rm-back .mt-rm-ico { width: 16px; height: 16px; }
	.mt-rm .mt-rm-scrim { display: none; }
	.mt-rm .mt-rm-search form { padding: 0 12px; }
	.mt-rm .mt-rm-suggest { padding: 0 12px 16px 12px; max-height: calc(100vh - var(--mt-h) - 80px); overflow-y: auto; }
}

@media (prefers-reduced-motion: reduce) {
	.mt-rm *, .mt-rm *::after { transition: none !important; }
}

/* Inline quick links need room next to the logo */
@media (max-width: 1279.98px) { .mt-rm .mt-rm-inline, .mt-rm .mt-rm-utility { display: none; } }
