/* REM Side Menu — clinic-style accordion panel. */

.rsm-sr {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

button.rsm-toggle-btn {
	appearance: none;
	-webkit-appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	margin: 0;
	padding: 8px 2px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--rsm-burger, #39393b);
	font-family: var(--rsm-font, "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: normal;
	text-transform: none;
	text-decoration: none;
	cursor: pointer;
	width: auto !important;
	max-width: none;
	-webkit-tap-highlight-color: transparent;
	user-select: none;
}

button.rsm-toggle-btn:hover,
button.rsm-toggle-btn:focus {
	background: transparent;
	color: var(--rsm-burger, #39393b);
	box-shadow: none;
}

button.rsm-toggle-btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.rsm-toggle-label {
	color: var(--rsm-burger-label, #39393b);
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
}

button.rsm-toggle-btn .rsm-toggle-label:empty,
button.rsm-toggle-btn .rsm-sr {
	display: none !important;
}

.rsm-icon-slot {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 23px;
	height: 19px;
	flex: 0 0 23px;
}

.rsm-burger {
	position: relative;
	display: block;
	width: 23px;
	height: 19px;
}

.rsm-burger__line,
.rsm-burger__line::before,
.rsm-burger__line::after {
	position: absolute;
	left: 0;
	width: 23px;
	height: 3px;
	border-radius: 1px;
	background: currentColor;
	content: "";
}

.rsm-burger__line {
	top: 8px;
}

.rsm-burger__line::before {
	top: -8px;
}

.rsm-burger__line::after {
	top: 8px;
}

.rsm-toggle-btn .rsm-close-icon {
	display: none;
}

.rsm-toggle-btn.is-active .rsm-burger {
	display: none;
}

.rsm-toggle-btn.is-active .rsm-close-icon {
	display: block;
	width: 16px;
	height: 16px;
}

.rsm-floating {
	position: fixed;
	z-index: 1000002;
	top: var(--rsm-btn-top, 18px);
}

.rsm-floating.is-corner-right {
	right: var(--rsm-btn-inset, 16px);
	left: auto;
}

.rsm-floating.is-corner-left {
	left: var(--rsm-btn-inset, 16px);
	right: auto;
}

.rsm-root {
	font-family: var(--rsm-font, "Helvetica Neue", Helvetica, Arial, sans-serif);
}

.rsm-overlay {
	position: fixed;
	top: var(--rsm-top, 0px);
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000000;
	background: var(--rsm-overlay, rgba(0, 0, 0, 0.62));
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.rsm-root.is-open .rsm-overlay {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transition: opacity 0.3s ease, visibility 0s;
}

.rsm-panel {
	position: fixed;
	top: var(--rsm-top, 0px);
	bottom: 0;
	z-index: 1000001;
	width: min(var(--rsm-width, 300px), calc(100vw - 56px));
	background: var(--rsm-panel, #a19f92);
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
	scrollbar-width: none;
	-webkit-font-smoothing: antialiased;
	transform: translateX(-100%);
	visibility: hidden;
	transition: transform 0.3s cubic-bezier(0.5, 0, 0.5, 1), visibility 0s linear 0.3s;
}

.rsm-root.is-left .rsm-panel {
	left: 0;
	right: auto;
	transform: translateX(-100%);
}

.rsm-root.is-right .rsm-panel {
	right: 0;
	left: auto;
	transform: translateX(100%);
}

.rsm-root.is-open .rsm-panel {
	transform: translateX(0);
	visibility: visible;
	transition: transform 0.3s cubic-bezier(0.5, 0, 0.5, 1), visibility 0s;
}

.rsm-skin,
.rsm-skin * {
	box-sizing: border-box;
}

#rsm-panel.rsm-skin ul.rsm-list,
#rsm-panel.rsm-skin ul.rsm-sub,
.rsm-mini.rsm-skin ul.rsm-list,
.rsm-mini.rsm-skin ul.rsm-sub {
	list-style: none;
	margin: 0;
	padding: 0;
}

#rsm-panel.rsm-skin > ul.rsm-list {
	padding-bottom: calc(88px + env(safe-area-inset-bottom));
}

#rsm-panel.rsm-skin li.rsm-item,
.rsm-mini.rsm-skin li.rsm-item {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	margin: 0;
	padding: 0;
	float: none;
	width: auto;
	list-style: none;
	line-height: 1.25;
	text-align: left;
}

.rsm-skin li.rsm-item > a.rsm-link {
	grid-column: 1;
	grid-row: 1;
}

.rsm-skin li.rsm-item > .rsm-sub {
	grid-column: 1;
	grid-row: 2;
}

.rsm-skin .rsm-depth-0 {
	border-bottom: 1px solid var(--rsm-line, #8d8b7f);
}

.rsm-skin .rsm-depth-1 {
	border-bottom: 1px solid var(--rsm-sub-line, #3f3f3f);
}

.rsm-skin .rsm-depth-2 {
	border-bottom: 1px solid var(--rsm-deep-line, #d9d4c8);
}

.rsm-skin a.rsm-link {
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 52px;
	margin: 0;
	padding: 14px 62px 14px 18px;
	border: 0;
	box-shadow: none;
	text-decoration: none;
	font-family: var(--rsm-font, "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-weight: 400;
	font-size: var(--rsm-size, 15px);
	line-height: 1.25;
	letter-spacing: 0;
	text-transform: none;
	white-space: normal;
	word-break: break-word;
	-webkit-tap-highlight-color: transparent;
}

.rsm-skin .rsm-depth-0 > a.rsm-link {
	color: var(--rsm-item-color, #f1efe9);
	background-color: var(--rsm-item-bg, #a19f92);
	font-size: var(--rsm-size, 15px);
}

.rsm-skin .rsm-depth-1 > a.rsm-link {
	color: var(--rsm-sub-color, #ffffff);
	background-color: var(--rsm-sub-bg, #585858);
	font-size: var(--rsm-sub-size, 14px);
}

.rsm-skin .rsm-depth-2 > a.rsm-link {
	color: var(--rsm-deep-color, #39393b);
	background-color: var(--rsm-deep-bg, #f1efe9);
	font-size: var(--rsm-sub-size, 14px);
}

.rsm-skin .rsm-item.is-current > a.rsm-link {
	color: var(--rsm-active-color, #ffffff);
	background-color: var(--rsm-active-bg, #39393b);
}

.rsm-skin .rsm-depth-0 > a.rsm-link:hover,
.rsm-skin .rsm-depth-2 > a.rsm-link:hover {
	filter: brightness(0.96);
}

.rsm-skin .rsm-depth-1 > a.rsm-link:hover {
	filter: brightness(1.12);
}

.rsm-skin a.rsm-link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: -4px;
}

.rsm-skin .rsm-sub {
	display: none;
	margin: 0;
	padding: 0;
}

.rsm-skin .rsm-item.is-open > .rsm-sub {
	display: block;
}

#rsm-panel.rsm-skin button.rsm-subtoggle,
.rsm-mini.rsm-skin button.rsm-subtoggle {
	position: relative;
	top: auto;
	right: auto;
	z-index: 2;
	grid-column: 1;
	grid-row: 1;
	justify-self: end;
	align-self: center;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	min-height: 0;
	margin: 0 14px 0 0;
	padding: 0;
	border: 0;
	border-radius: 5px;
	background: var(--rsm-toggle-bg, #070707);
	color: var(--rsm-toggle-color, #ffffff);
	box-shadow: none;
	line-height: 1;
	cursor: pointer;
	transform: none;
	-webkit-tap-highlight-color: transparent;
}

.rsm-skin button.rsm-subtoggle:hover,
.rsm-skin button.rsm-subtoggle:focus {
	background: var(--rsm-toggle-bg, #070707);
	color: var(--rsm-toggle-color, #ffffff);
}

.rsm-skin button.rsm-subtoggle:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 2px;
}

.rsm-skin .rsm-plus,
.rsm-skin .rsm-minus {
	width: 18px;
	height: 18px;
	pointer-events: none;
}

.rsm-skin .rsm-plus {
	display: block;
}

.rsm-skin .rsm-minus {
	display: none;
}

.rsm-skin .rsm-item.is-open > .rsm-subtoggle .rsm-plus {
	display: none;
}

.rsm-skin .rsm-item.is-open > .rsm-subtoggle .rsm-minus {
	display: block;
}

#rsm-panel.rsm-skin li.rsm-item {
	position: relative !important;
	display: grid !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	width: auto !important;
	list-style: none !important;
}

#rsm-panel.rsm-skin a.rsm-link {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-height: 52px !important;
	margin: 0 !important;
	padding: 14px 62px 14px 18px !important;
	text-decoration: none !important;
	border: 0 !important;
	box-shadow: none !important;
	float: none !important;
	opacity: 1 !important;
	text-transform: none !important;
	font-weight: 400 !important;
	line-height: 1.25 !important;
}

#rsm-panel.rsm-skin .rsm-depth-0 > a.rsm-link {
	color: var(--rsm-item-color, #f1efe9) !important;
	background-color: var(--rsm-item-bg, #a19f92) !important;
	font-size: var(--rsm-size, 15px) !important;
}

#rsm-panel.rsm-skin .rsm-depth-1 > a.rsm-link {
	color: var(--rsm-sub-color, #ffffff) !important;
	background-color: var(--rsm-sub-bg, #585858) !important;
	font-size: var(--rsm-sub-size, 14px) !important;
}

#rsm-panel.rsm-skin .rsm-depth-2 > a.rsm-link {
	color: var(--rsm-deep-color, #39393b) !important;
	background-color: var(--rsm-deep-bg, #f1efe9) !important;
	font-size: var(--rsm-sub-size, 14px) !important;
}

#rsm-panel.rsm-skin .rsm-item.is-current > a.rsm-link {
	color: var(--rsm-active-color, #ffffff) !important;
	background-color: var(--rsm-active-bg, #39393b) !important;
}

#rsm-panel.rsm-skin button.rsm-subtoggle {
	background: var(--rsm-toggle-bg, #070707) !important;
	color: var(--rsm-toggle-color, #ffffff) !important;
	border: 0 !important;
	border-radius: 5px !important;
	position: relative !important;
	top: auto !important;
	right: auto !important;
	grid-column: 1;
	grid-row: 1;
	justify-self: end;
	align-self: center;
	width: 35px !important;
	height: 35px !important;
	min-height: 0 !important;
	margin: 0 14px 0 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
	box-shadow: none !important;
	transform: none !important;
}

#rsm-panel.rsm-skin ul {
	list-style: none !important;
	margin: 0 !important;
}

#rsm-panel.rsm-skin > ul.rsm-list {
	padding: 0 0 calc(88px + env(safe-area-inset-bottom)) 0 !important;
}

#rsm-panel.rsm-skin ul.rsm-sub {
	padding: 0 !important;
}

.rsm-panel::-webkit-scrollbar {
	width: 0;
	height: 0;
}

@media (prefers-reduced-motion: reduce) {
	.rsm-panel,
	.rsm-overlay {
		transition: none !important;
	}
}

@media print {
	.rsm-root,
	.rsm-toggle-btn {
		display: none !important;
	}
}
