.controller[data-template="menu"] ul {
	list-style: none;
	margin-top: 0;
	padding-left: 0;
}

.controller[data-template="menu"] ul a {
	display: block;
	padding: 10px 0;
}

.controller[data-template="menu"] ul li {
	padding: 0 10px;
	box-sizing: border-box;
}

.controller[data-template="menu"] .hamburger {
	position: absolute;
	right: 0;
	top: 10px;
	right: 5px;
}

.controller[data-template="menu"].is-horizontal .menu-contents {
	display: inline-block;
	float: right; 
	
	width: 100%;
}

.controller[data-template="menu"].is-horizontal .menu-contents ul.is-head {
	float: right;
}

.controller[data-template="menu"].is-horizontal:not(.is-hamburger) li {
	float: left;
	padding: 0 20px;
}

.controller[data-template="menu"].is-horizontal:not(.is-hamburger) ul::after {
	content: '';
	display: block;
	clear: both;
}

.controller[data-template="menu"].is-floating ul {
	position: absolute;
	z-index: 2;
}

.controller[data-template="menu"].is-horizontal.is-floating ul {
	float: none;
	right: 0;
}

.controller[data-template="menu"].is-floating.is-centered {
	left: 0;
	right: 0;
}

.controller[data-template="menu"].grid-2 .is-head > li {
	width: 50%;
	float: left;
}

.controller[data-template="menu"].grid-2 .menu-contents {
	width: 100%;
}

.controller[data-template="menu"].grid-2 .is-head::after {
	content: '';
	display: block;
	clear: left;
}

.controller[data-template="menu"].has-indicator {
	position: relative;
}

.controller[data-template="menu"]:not(.is-hamburger).is-horizontal .menu-contents {
	position: relative;
}

@media (max-width: 800px) {
	.controller[data-template="menu"].is-hamburger {
		width: 100%;
		height: 40px;
		box-sizing: border-box;

		position: fixed;
		top: 0;
	}

	.controller[data-template="menu"].is-hamburger .menu-contents {
		text-align: center;

		width: 200px;
	}
}
