/* Menu styles */
.menu {
	position: fixed;
	top: 100px;
	left: 0;
	width: 100%;
	height: calc(100vh - 120px);
}

@media (max-width: 649px){
	.menu {
		top: 75px;
	}
}


@media (max-height: 599px){
	.menu {
		top: 100px;
	}
}

@media (max-height: 499px){
	.menu {
		top: 80px;
	}
}

.menu__wrap {
	overflow: hidden;
	width: 100%;
}

.menu__level {
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
	overflow: hidden;
	overflow-y: scroll;
	width: calc(100% + 50px);
	height: 100%;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.menu__level--current {
	visibility: visible;
}

.menu__item {
	display: block;
	width: calc(100% - 50px);
}

@media (max-width: 549px){
	.menu__item {
		width: calc(100% - 120px);
	}
}
@media (max-width: 480px){
	.menu__item {
		width: calc(100% - 150px);
	}
}


.menu__link {
	font-weight: bold;
	
    font-family: Constantia, Palatino, "Palatino Linotype", "Palatino LT STD", Georgia, serif;
    font-size: 20px;
    position: relative;
    display: block;
    padding: 0 30px 7px 50px;
    color: #98BDC6;
    -webkit-transition: color 0.1s;
    transition: color 0.1s;
}


.menu__item.red .menu__link
{
	color: #ef7864 !important;
    font-weight: 1000 !important;
    font-size: 20px !important;
}

.menu__item.red .menu__link:hover
{
	color: #e63b1c !important;
}

.expertises ul .menu__item:first-of-type
{
	padding-top: 20px;
}

.menu__level.submenu .menu__item
{
}

.menu__level.submenu .menu__item.title
{
	font-weight: 400;
    font-family: absara;
    font-size: 30px;
    position: relative;
    display: block;
    padding: 0 30px 20px 50px;
    color: #98BDC6;
    -webkit-transition: color 0.1s;
    transition: color 0.1s;
}

.menu__level.submenu .menu__item.title i
{
	color: #98BDC6;
    font-size: 14px;
    position: absolute;
    left: 20px;
    top: 5px;
}
.menu__level.submenu .menu__link
{
	font-weight: 300;
    font-size: 19px;
    padding-bottom: 5px;
}

@media (max-width: 649px){
	.menu__link {
	    padding: 0 20px 7px 20px;
	}
	.menu__level.submenu .menu__item.title
	{
	    padding: 0 30px 20px 30px;
	}
	.menu__level.submenu .menu__item.title i {
	    left: 5px;
	}
}
@media (max-width: 549px){
	.menu__link {
	    /*padding: 0 10px 7px 10px;*/
	}
}
@media (max-width: 480px){
	.menu__link {
	    /*padding: 0 5px 7px 5px;*/
	}
}
@media (max-height: 599px){
	.menu__link {
	    /*padding-bottom: 4px;*/
	}
}
@media (max-height: 690px){
	/*.menu__link {
	    font-size: 25px;
	    padding-bottom: 6px;
	}*/
	/*.menu__item.red .menu__link
	{
	    display: none;
	}*/
	.submenu .menu__item.red .menu__link
	{
	    display: block;
	}
}
@media (max-height: 499px){
	.menu__link, .menu__level.submenu .menu__link {
	    font-size: 25px;
	}
	.menu__item.red .menu__link, .menu__level.submenu .menu__item.red .menu__link
	{
	    font-size: 18px !important;
	}
	.expertises ul .menu__item:first-of-type
	{
		padding-top: 0;
	}
}
@media (max-height: 410px){
	.menu__link, .menu__level.submenu .menu__link {
	    font-size: 20px;
	}
	.menu__item.red .menu__link, .menu__level.submenu .menu__item.red .menu__link
	{
	    font-size: 15px !important;
	}
}
@media (max-height: 370px){
	.menu__link, .menu__level.submenu .menu__link {
	    font-size: 18px;
	}
	.menu__item.red .menu__link, .menu__level.submenu .menu__item.red .menu__link
	{
	    font-size: 15px !important;
	}
}




.menu__link:hover,
.menu__link[data-submenu]:hover::after {
	color: #e63b1c;
}

.menu__link--current::before {
	content: '\00B7';
	font-size: 1.5em;
	line-height: 0;
	position: absolute;
	top: 50%;
	left: 0.5em;
	height: 4px;
	color: #5c5edc;
}

[class^='animate-'],
[class*=' animate-'] {
	visibility: visible;
}

.animate-outToRight .menu__item {
	-webkit-animation: outToRight 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
	animation: outToRight 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
}

@-webkit-keyframes outToRight {
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
}

@keyframes outToRight {
	to {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
}

.animate-outToLeft .menu__item {
	-webkit-animation: outToLeft 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
	animation: outToLeft 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
}

@-webkit-keyframes outToLeft {
	to {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}

@keyframes outToLeft {
	to {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}

.animate-inFromLeft .menu__item {
	-webkit-animation: inFromLeft 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
	animation: inFromLeft 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
}

@-webkit-keyframes inFromLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes inFromLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.animate-inFromRight .menu__item {
	-webkit-animation: inFromRight 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
	animation: inFromRight 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
}

@-webkit-keyframes inFromRight {
	from {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes inFromRight {
	from {
		opacity: 0;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.menu__breadcrumbs {
	font-size: 0.65em;
	line-height: 1;
	position: relative;
	padding: 2.5em 3.75em 1.5em 2.5em;
}

.menu__breadcrumbs a {
	font-weight: bold;
	display: inline-block;
	cursor: pointer;
	vertical-align: middle;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #5c5edc;
}

.menu__breadcrumbs a:last-child {
	pointer-events: none;
}

.menu__breadcrumbs a:hover {
	color: #8182e0;
}

.menu__breadcrumbs a:not(:last-child)::after {
	content: '\e902';
	font-family: 'feather';
	display: inline-block;
	padding: 0 0.5em;
	color: #33353e;
}

.menu__breadcrumbs a:not(:last-child):hover::after {
	color: #33353e;
}

.menu__back {
	font-size: 1.05em;
	position: absolute;
	z-index: 100;
	top: 0;
	right: 2.25em;
	margin: 0;
	padding: 1.365em 0.65em 0 0;
	cursor: pointer;
	color: #2a2b30;
	border: none;
	background: none;
}

.menu__back--hidden {
	pointer-events: none;
	opacity: 0;
}

.menu__back:hover,
.menu__back:focus {
	color: #fff;
	outline: none;
}


/* Open and close buttons */

.action {
	position: absolute;
	display: block;
	margin: 0;
	padding: 0;
	cursor: pointer;
	border: none;
	background: none;
}

.action:focus {
	outline: none;
}

.action--open {
	font-size: 1.5em;
	top: 1em;
	left: 1em;
	display: none;
	color: #fff;
	position: fixed;
	z-index: 1000;
}

.action--close {
	font-size: 1.1em;
	top: 1.25em;
	right: 1em;
	display: none;
	color: #45464e;
}

/*@media screen and (max-width: 40em) {
	.action--open,
	.action--close {
		display: block;
	}
	.menu {
		z-index: 1000;
		top: 0;
		width: 100%;
		height: 100vh;
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		-webkit-transition: -webkit-transform 0.3s;
		transition: transform 0.3s;
	}
	.menu--open {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}
*/
