.planovo-hamburger-menu {
	--planovo-hamburger-color: #00a76f;
	--planovo-hamburger-middle-opacity: 0.4;
	--planovo-hamburger-duration: 420ms;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	padding: 0;
	overflow: hidden;
	border: 0;
	border-radius: 12px;
	background-color: rgba(0, 167, 111, 0.12);
	color: var(--planovo-hamburger-color);
	line-height: 0;
	text-decoration: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition:
		background-color 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease;
}

.planovo-hamburger-menu:hover,
.planovo-hamburger-menu:focus {
	color: var(--planovo-hamburger-color);
	text-decoration: none;
}

.planovo-hamburger-menu:hover {
	background-color: rgba(0, 167, 111, 0.18);
}

.planovo-hamburger-menu:active {
	transform: scale(0.96);
}

.planovo-hamburger-menu:focus-visible {
	outline: 2px solid var(--planovo-hamburger-color);
	outline-offset: 3px;
}

.planovo-hamburger-menu__icon {
	display: block;
	width: 24px;
	height: 24px;
	overflow: visible;
	color: inherit;
}

.planovo-hamburger-menu__line {
	transform-box: fill-box;
	transform-origin: center;
	transition:
		transform var(--planovo-hamburger-duration) cubic-bezier(0.65, 0.05, 0, 1),
		opacity calc(var(--planovo-hamburger-duration) * 0.65) ease;
}

.planovo-hamburger-menu__line--middle {
	opacity: var(--planovo-hamburger-middle-opacity);
}

.planovo-hamburger-menu.is-active .planovo-hamburger-menu__line--top,
.planovo-hamburger-menu[aria-expanded="true"] .planovo-hamburger-menu__line--top {
	transform: translate(-3px, 7px) rotate(45deg) scaleX(1.35);
}

.planovo-hamburger-menu.is-active .planovo-hamburger-menu__line--middle,
.planovo-hamburger-menu[aria-expanded="true"] .planovo-hamburger-menu__line--middle {
	opacity: 0;
	transform: scaleX(0.2);
}

.planovo-hamburger-menu.is-active .planovo-hamburger-menu__line--bottom,
.planovo-hamburger-menu[aria-expanded="true"] .planovo-hamburger-menu__line--bottom {
	transform: translate(-3px, -7px) rotate(-45deg) scaleX(1.35);
}

@media (prefers-reduced-motion: reduce) {
	.planovo-hamburger-menu,
	.planovo-hamburger-menu__line {
		transition-duration: 1ms !important;
	}
}
