.fdmm,
.fdmm-default-trigger{display:none}

body.fdmm-locked{overflow:hidden;touch-action:none}

.fdmm{
	position:fixed;
	inset:0;
	z-index:999999;
	background:var(--fdmm-bg);
	color:var(--fdmm-text);
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity .28s ease,visibility .28s ease;
	font-family:inherit
}

.fdmm.is-open{
	opacity:1;
	visibility:visible;
	pointer-events:auto
}

.fdmm-topbar{
	height:76px;
	padding:0 20px;
	display:grid;
	grid-template-columns:1fr auto 1fr;
	align-items:center;
	border-bottom:1px solid color-mix(in srgb,var(--fdmm-text) 16%,transparent)
}

.fdmm-title{
	font-size:12px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase
}

.fdmm-close,.fdmm-back{
	appearance:none;
	border:0;
	background:transparent;
	color:inherit;
	font:inherit;
	cursor:pointer
}

.fdmm-close{
	justify-self:end;
	font-size:36px;
	font-weight:300;
	line-height:1
}

.fdmm-back{
	justify-self:start;
	display:flex;
	gap:9px;
	align-items:center;
	padding:10px 0;
	font-size:13px;
	letter-spacing:.05em;
	opacity:0;
	pointer-events:none;
	transition:opacity .2s ease
}

.fdmm-back.is-visible{opacity:1;pointer-events:auto}

.fdmm-viewport{
	position:relative;
	height:calc(100dvh - 76px);
	overflow:hidden
}

.fdmm-panel{
	position:absolute;
	inset:0;
	z-index:0;
	background:var(--fdmm-bg);
	padding:24px 22px 42px;
	overflow-y:auto;
	overscroll-behavior:contain;
	contain:paint;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
	will-change:transform;
	transform:translateX(100%);
	visibility:hidden;
	opacity:0;
	pointer-events:none;
	transition:transform .38s cubic-bezier(.65,0,.35,1)
}

.fdmm-panel.is-entering{
	z-index:3;
	transform:translateX(100%);
	visibility:visible;
	opacity:1
}

.fdmm-panel.is-active{
	z-index:3;
	transform:translateX(0);
	visibility:visible;
	opacity:1;
	pointer-events:auto
}

.fdmm-panel.is-previous{
	z-index:2;
	transform:translateX(-28%);
	visibility:visible;
	opacity:1
}

.fdmm-panel.is-previous.is-stored{
	z-index:0;
	visibility:hidden;
	opacity:0;
	transform:translateX(-28%)
}

.fdmm-panel.is-exiting{
	z-index:3;
	transform:translateX(100%);
	visibility:visible;
	opacity:1
}

.fdmm.is-transitioning .fdmm-panel{pointer-events:none}

.fdmm-panel-header{
	margin:5px 0 42px
}

.fdmm-panel-heading{
	margin:0;
	font-size:clamp(42px,12vw,64px);
	font-weight:500;
	line-height:1.02;
	letter-spacing:-.045em
}

.fdmm-list{list-style:none;margin:0;padding:0}

.fdmm-item{
	margin:0;
	border-bottom:1px solid color-mix(in srgb,var(--fdmm-text) 15%,transparent)
}

.fdmm-row{display:flex;align-items:stretch}

.fdmm-link{
	color:inherit;
	text-decoration:none;
	background:transparent;
	border:0;
	font:inherit
}

.fdmm-link{
	flex:1;
	padding:19px 0;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	font-size:21px;
	font-weight:450;
	line-height:1.25;
	letter-spacing:-.015em
}

.fdmm-link--submenu{cursor:pointer}

.fdmm-link-arrow{
	flex:0 0 auto;
	font-size:24px;
	font-weight:400;
	line-height:1
}

.fdmm-link:focus-visible,.fdmm-close:focus-visible,.fdmm-back:focus-visible,.fdmm-open:focus-visible{
	outline:2px solid var(--fdmm-accent);
	outline-offset:3px
}

.fdmm-view-all{
	display:inline-flex;
	margin-top:20px;
	padding-bottom:5px;
	color:var(--fdmm-accent);
	border-bottom:1px solid currentColor;
	font-size:13px;
	font-weight:600;
	letter-spacing:.1em;
	text-decoration:none;
	text-transform:uppercase
}

.fdmm-default-trigger{
	position:fixed;
	right:18px;
	bottom:18px;
	z-index:99990;
	align-items:center;
	gap:9px;
	padding:12px 15px;
	border:0;
	border-radius:999px;
	background:var(--fdmm-accent);
	color:#fff;
	box-shadow:0 8px 28px rgb(0 0 0 / 18%);
	font:600 12px/1 inherit;
	letter-spacing:.06em;
	text-transform:uppercase;
	cursor:pointer
}

.fdmm-trigger-lines{display:grid;gap:4px;width:19px}
.fdmm-trigger-lines i{display:block;height:1px;background:currentColor}

@media (prefers-reduced-motion:reduce){
	.fdmm,.fdmm-panel{transition-duration:.01ms!important}
}
