.cda-dmm {
	display: none;
}

@media (max-width: 1024px) {
	html.cda-dmm-ready .cda-dmm-source .hfe-nav-menu__toggle,
	html.cda-dmm-ready .cda-dmm-source .hfe-nav-menu__layout-horizontal {
		display: none !important;
	}

	.cda-dmm {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		font-family: "Fahkwang", sans-serif;
	}

	.cda-dmm,
	.cda-dmm *,
	.cda-dmm *::before,
	.cda-dmm *::after {
		box-sizing: border-box;
	}

	.cda-dmm__trigger,
	.cda-dmm__close,
	.cda-dmm__submenu-toggle {
		margin: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		font: inherit;
		-webkit-appearance: none;
		appearance: none;
		cursor: pointer;
	}

	.cda-dmm__trigger,
	.cda-dmm__close {
		position: relative;
		display: inline-flex;
		flex: 0 0 44px;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		padding: 0;
	}

	.cda-dmm__trigger {
		z-index: 2;
		color: #000;
	}

	.cda-dmm__trigger::before,
	.cda-dmm__trigger::after,
	.cda-dmm__close::before,
	.cda-dmm__close::after {
		position: absolute;
		left: 10px;
		width: 24px;
		height: 1.5px;
		background: currentColor;
		content: "";
		transform-origin: center;
		transition: transform 350ms cubic-bezier(.77, 0, .18, 1), top 350ms cubic-bezier(.77, 0, .18, 1);
	}

	.cda-dmm__trigger::before {
		top: 17px;
	}

	.cda-dmm__trigger::after {
		top: 26px;
	}

	.cda-dmm__trigger:hover,
	.cda-dmm__trigger:focus-visible {
		color: #000;
		background: transparent;
	}

	.cda-dmm__overlay {
		position: fixed;
		z-index: 2147483000;
		inset: 0;
		display: block;
		width: 100%;
		height: 100vh;
		height: 100dvh;
		overflow: hidden;
		visibility: hidden;
		background: #000;
		clip-path: inset(0 0 100% 0);
		pointer-events: none;
		transition:
			clip-path 650ms cubic-bezier(.77, 0, .18, 1),
			visibility 0s linear 650ms;
	}

	.cda-dmm.is-open .cda-dmm__overlay {
		visibility: visible;
		clip-path: inset(0);
		pointer-events: auto;
		transition:
			clip-path 650ms cubic-bezier(.77, 0, .18, 1),
			visibility 0s linear 0s;
	}

	.cda-dmm__panel {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: 100%;
		min-height: 100%;
		color: #fff;
		background: #000;
	}

	.cda-dmm__top {
		display: flex;
		flex: 0 0 auto;
		align-items: center;
		justify-content: space-between;
		min-height: calc(72px + env(safe-area-inset-top));
		padding: env(safe-area-inset-top) 16px 0;
	}

	.cda-dmm__brand {
		display: inline-flex;
		align-items: center;
		max-width: calc(100% - 64px);
		color: #fff !important;
		font-family: "Fahkwang", sans-serif;
		font-size: 26px;
		font-weight: 500;
		line-height: 1;
		text-decoration: none !important;
	}

	.cda-dmm__brand img,
	.cda-dmm__brand svg {
		display: block;
		width: auto;
		max-width: 180px;
		height: auto;
		max-height: 42px;
		filter: grayscale(1) brightness(0) invert(1);
	}

	.cda-dmm__close {
		color: #fff;
	}

	.cda-dmm__close::before,
	.cda-dmm__close::after {
		top: 21px;
	}

	.cda-dmm__close::before {
		transform: rotate(45deg);
	}

	.cda-dmm__close::after {
		transform: rotate(-45deg);
	}

	.cda-dmm__close:hover,
	.cda-dmm__close:focus-visible {
		color: #fff;
		background: transparent;
	}

	.cda-dmm__nav {
		display: flex;
		flex: 1 1 auto;
		align-items: flex-start;
		justify-content: center;
		min-height: 0;
		padding: clamp(30px, 7vh, 64px) 24px calc(32px + env(safe-area-inset-bottom));
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
	}

	.cda-dmm__list,
	.cda-dmm__submenu {
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.cda-dmm__list {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		width: min(100%, 560px);
		gap: clamp(18px, 3vh, 28px);
		text-align: center;
	}

	.cda-dmm__item {
		position: relative;
		width: 100%;
		opacity: 0;
		transform: translateY(20px);
		transition:
			opacity 260ms ease,
			transform 450ms cubic-bezier(.22, 1, .36, 1);
	}

	.cda-dmm.is-open .cda-dmm__item {
		opacity: 1;
		transform: translateY(0);
		transition-delay: calc(190ms + (var(--cda-dmm-index, 0) * 55ms));
	}

	.cda-dmm__row {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
	}

	.cda-dmm__link {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		max-width: 100%;
		padding: 0;
		color: #fff !important;
		font-family: "Fahkwang", sans-serif;
		font-size: clamp(23px, 6.4vw, 34px);
		font-weight: 400;
		line-height: 1.2;
		letter-spacing: -.025em;
		text-align: center;
		text-decoration: none !important;
		text-transform: uppercase;
		transition: opacity 200ms ease;
	}

	.cda-dmm__link:hover,
	.cda-dmm__link:focus-visible {
		color: #fff !important;
		opacity: .65;
	}

	.cda-dmm__item.is-current > .cda-dmm__row > .cda-dmm__link,
	.cda-dmm__link[aria-current="page"] {
		text-decoration: underline !important;
		text-decoration-thickness: 1px !important;
		text-underline-offset: 7px;
	}

	.cda-dmm__submenu-toggle {
		position: relative;
		display: inline-flex;
		flex: 0 0 38px;
		align-items: center;
		justify-content: center;
		width: 38px;
		height: 38px;
		margin-left: 4px;
		padding: 0;
		color: #fff;
	}

	.cda-dmm__submenu-toggle::before,
	.cda-dmm__submenu-toggle::after {
		position: absolute;
		width: 14px;
		height: 1px;
		background: currentColor;
		content: "";
		transition: transform 300ms cubic-bezier(.77, 0, .18, 1);
	}

	.cda-dmm__submenu-toggle::after {
		transform: rotate(90deg);
	}

	.cda-dmm__item.is-submenu-open > .cda-dmm__row .cda-dmm__submenu-toggle::after {
		transform: rotate(0deg);
	}

	.cda-dmm__submenu-toggle:hover,
	.cda-dmm__submenu-toggle:focus-visible {
		color: #fff;
		background: transparent;
	}

	.cda-dmm__submenu {
		max-height: 0;
		overflow: hidden;
		opacity: 0;
		transition:
			max-height 450ms cubic-bezier(.77, 0, .18, 1),
			opacity 250ms ease;
	}

	.cda-dmm__item.is-submenu-open > .cda-dmm__submenu {
		opacity: 1;
	}

	.cda-dmm__submenu .cda-dmm__item {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.cda-dmm__submenu .cda-dmm__link {
		padding: 7px 12px;
		font-size: clamp(14px, 3.8vw, 17px);
		font-weight: 400;
		line-height: 1.35;
		letter-spacing: .02em;
		opacity: .78;
	}

	.cda-dmm__submenu > .cda-dmm__item:first-child {
		padding-top: 16px;
	}

	.cda-dmm__item.is-cta {
		padding-top: 4px;
	}

	.cda-dmm__item.is-cta > .cda-dmm__row > .cda-dmm__link {
		min-height: 48px;
		padding: 13px 22px;
		border: 1px solid #fff;
		font-size: 15px;
		font-weight: 500;
		letter-spacing: .06em;
	}

	.cda-dmm__item.is-cta > .cda-dmm__row > .cda-dmm__link:hover,
	.cda-dmm__item.is-cta > .cda-dmm__row > .cda-dmm__link:focus-visible {
		color: #000 !important;
		background: #fff;
		opacity: 1;
	}

	.cda-dmm__trigger:focus-visible,
	.cda-dmm__close:focus-visible,
	.cda-dmm__submenu-toggle:focus-visible,
	.cda-dmm__link:focus-visible,
	.cda-dmm__brand:focus-visible {
		outline: 1px solid currentColor;
		outline-offset: 4px;
	}

	html.cda-dmm-open,
	body.cda-dmm-open {
		overflow: hidden !important;
		overscroll-behavior: none;
	}

	.cda-dmm__sr-only {
		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;
	}
}

@media (max-width: 1024px) and (max-height: 700px) {
	.cda-dmm__nav {
		justify-content: flex-start;
		padding-top: 20px;
	}

	.cda-dmm__list {
		gap: 15px;
	}

	.cda-dmm__link {
		font-size: clamp(20px, 5.8vw, 28px);
	}
}

@media (max-width: 1024px) and (prefers-reduced-motion: reduce) {
	.cda-dmm__overlay,
	.cda-dmm__item,
	.cda-dmm__submenu,
	.cda-dmm__submenu-toggle::after {
		transition-duration: 1ms !important;
		transition-delay: 0ms !important;
	}
}

@media (max-width: 1024px) {
	@supports not (clip-path: inset(0)) {
		.cda-dmm__overlay {
			transform: translateY(-100%);
			transition:
				transform 650ms cubic-bezier(.77, 0, .18, 1),
				visibility 0s linear 650ms;
		}

		.cda-dmm.is-open .cda-dmm__overlay {
			transform: translateY(0);
		}
	}
}
