/*************************************************
partnavigation-2 horizontal
*************************************************/

/* fundementals */
.partNavigation.horizontal {
    text-align: left;
}

.partNavigation.horizontal ul li {
    position: relative;
}

.partNavigation.horizontal ul li a {
    text-decoration: none;
}

.partNavigation.horizontal li a:focus {
    cursor: pointer;
}

.partNavigation.horizontal li:focus,
.partNavigation.horizontal li a:focus {
    outline: none;
}

/* icon */
.partNavigation.horizontal .navigationIcon {
	margin-right: 6px;
	display: flex; 
	justify-content: center; 
	align-items: center;
}

.partNavigation.horizontal .navigationIcon svg, .partNavigation.horizontal .navigationIcon img { 
	fill:#000;
	height:12px;
}

/* dropdown icon */
.partNavigation.horizontal .navigationIconDropdown {
	margin-left: 6px;
	display: flex; 
	justify-content: center; 
	align-items: center;
}

.partNavigation.horizontal .navigationIconDropdown svg {
	margin-top: 2px; /* align arrow better with text */
	width: 10px; 
	height:5px;
	fill:#fff;
}

	/* level 0 */
	.partNavigation.horizontal ul.level-0 {
		display: flex;
		position: relative;
        line-height: 1.2em;
        font-size: 20px;
	}    

	.partNavigation.horizontal ul.level-0 > li > a {
		color: #fff;
		display: flex;
		align-items: center;
		padding:23px;
		transition: background-color ease 0.3s;
	}
	
	/* dropdown & icon */
    .partNavigation.horizontal ul.level-0 > li.selected > a svg {
        fill: #fff;
    }

    .partNavigation.horizontal ul.level-0 > li > a:hover svg,
	.partNavigation.horizontal ul.level-0 > li > a:focus svg,
	.partNavigation.horizontal ul.level-0 > li:hover > a svg {
        fill: #fff;
    }

    /* hover & focus */
    .partNavigation.horizontal ul.level-0 > li > a:hover,
	.partNavigation.horizontal ul.level-0 > li > a:focus,
	.partNavigation.horizontal ul.level-0 > li:hover > a {
		background-color: #f07e14;
    }

    /* selected */
    .partNavigation.horizontal ul.level-0 > li.selected > a {
        background-color: #f07e14;
    }
    
/* dropdown container */
.partNavigation.horizontal ul li ul {
	visibility: hidden;
	opacity: 0;
	min-width: 280px;
	position: absolute;
	z-index: 2000;
	top:100%;
	left: 0;
	transition: visibility 0s, opacity ease 0.3s;
}

.partNavigation.horizontal ul.level-0 > li:last-child ul {
	left:initial; right:0;
}

/* showing menu on focus/hover */
.partNavigation.horizontal ul li:hover > ul,
.partNavigation.horizontal ul li a:focus + ul,
.partNavigation.horizontal ul li ul:hover,
.partNavigation.horizontal ul li ul:focus {
	visibility: visible;
	opacity: 1;
}

.partNavigation.horizontal ul li:focus-within > ul {
	visibility: visible;
	opacity: 1;
}

/* level 1 */
    .partNavigation.horizontal ul.level-1 {
        
        box-shadow: 0 0 4px rgba(0,0,0,0.15);
        font-size: 16px;
        background-color: #f07e14;
    }

    .partNavigation.horizontal ul.level-1 li {
        border-bottom: 1px solid rgba(255,255,255,0.35);
    }

    .partNavigation.horizontal ul.level-1 li a {
        color: #fff;
        padding:5px 25px;
        display: flex;
        align-items: center;
    }

    .partNavigation.horizontal ul.level-1 > li.selected > a svg {
        fill: #fff;
    }

    .partNavigation.horizontal ul.level-1 > li > a:hover svg,
    .partNavigation.horizontal ul.level-1 > li > a:focus svg {
        fill: #fff;
    }

    /* arrow */
    .partNavigation.horizontal ul.level-1 > li .navigationIconDropdown  {
        margin-left: auto;
    }

    .partNavigation.horizontal ul.level-1 > li .navigationIconDropdown svg {
        height:5px; width: 10px; transform: rotate(-90deg);
    }

    /* hover & focus */
    .partNavigation.horizontal ul.level-1 > li > a:hover,
    .partNavigation.horizontal ul.level-1 > li > a:focus {
        background-color: #e46f03;
        color: #fff;
    }

    /* selected */
    .partNavigation.horizontal ul.level-1 > li.selected > a {
        background-color: #0093d7;
        color: #fff;
    }

/* level 2 */
    .partNavigation.horizontal ul.level-2 {
        top:0;
        left:100%;
        background-color: #e46f03;
        box-shadow: 0 0 4px rgba(0,0,0,0.15);
        min-width: 380px;
    }

    .partNavigation.horizontal ul.level-2 li a {
        color: #fff;
        padding:5px 25px;
        display: flex;
        align-items: center;
    }

    /* hover & focus */
    .partNavigation.horizontal ul.level-2 > li > a:hover,
    .partNavigation.horizontal ul.level-2 > li > a:focus {
        background: #cd6302;
    }

    /* selected */
    .partNavigation.horizontal ul.level-2 > li.selected > a {
        background-color: #0093d7;
    }

/*************************************************
partnavigation-2 vertical
*************************************************/

/* fundementals */
.partNavigation.vertical {
    text-align: left;
}   

.partNavigation.vertical ul li {
    position: relative;
    transition-duration: 0.5s;
}

.partNavigation.vertical ul li a {
    text-decoration: none;
}

.partNavigation.vertical li a:focus {
    cursor: pointer;
}

.partNavigation.vertical li:focus,
.partNavigation.vertical li a:focus {
    outline: none;
}

/* level 0 */
.partNavigation.vertical ul.level-0 {
    display: flex; 
    flex-direction: column;
    line-height: 1.3em;
}

.partNavigation.vertical ul.level-0 > li {
    background-color: #f0f0f0;
}

.partNavigation.vertical ul.level-0 > li > a {
    color: #000;
    display: flex;
    align-items: center;
    padding:15px;
}

    /* icon */
    .partNavigation.vertical .navigationIcon {
        margin-right: 6px;
        display: flex; 
        justify-content: center; 
        align-items: center;
    }
    
    .partNavigation.vertical .navigationIcon svg { 
        fill:#000;
        height:10px;
    }

    /* dropdown icon */
    .partNavigation.vertical .navigationIconDropdown {
        margin-left: auto;
        display: flex; 
        justify-content: center; 
        align-items: center;
    }

    .partNavigation.vertical .navigationIconDropdown svg {
        width: 5px; 
        height:10px;
        fill:#000;
    }
    
    .partNavigation.vertical ul.level-0 > li.selected > a svg {
        fill: #fff;
    }

    .partNavigation.vertical ul.level-0 > li > a:hover svg,
    .partNavigation.vertical ul.level-0 > li > a:focus svg {
    fill: #fff;
    }

    /* hover & focus */
    .partNavigation.vertical ul.level-0 > li > a:hover,
    .partNavigation.vertical ul.level-0 > li > a:focus {
        background: #555;
        color: #fff;
    }

    /* selected */
    .partNavigation.vertical ul.level-0 > li.selected > a {
        background: #000;
        color: #fff;
    }

/* level 1 */

    /* dropdown container */
    .partNavigation.vertical ul li ul {
        visibility: hidden;
        opacity: 0;
        min-width: 200px;
        position: absolute;
        top:0;
        left: 100%;
        transition: 0.2s 0s; /* first value fade in, second value fade out */
    }

    /* showing menu on focus/hover */
    .partNavigation.vertical ul li:hover > ul,
    .partNavigation.vertical ul li a:focus + ul,
    .partNavigation.vertical ul li ul:hover,
    .partNavigation.vertical ul li ul:focus {
    visibility: visible;
    opacity: 1;
    transition-delay: 0s; /* react immediately on hover */
    }

    .partNavigation.vertical ul li:focus-within > ul {
        visibility: visible;
        opacity: 1;
    }

.partNavigation.vertical ul.level-1 {
    background: #fff;
    box-shadow: 0 0 4px rgba(0,0,0,0.15);
}

.partNavigation.vertical ul.level-1 li a {
    color: #000;
    padding:15px;
    display: flex;
}

    /* arrow */
    .partNavigation.vertical ul.level-1 > li .navigationIconDropdown svg  {
        width: 5px; height:10px; margin-left: auto;
    }

    .partNavigation.vertical ul.level-1 > li > a:hover svg,
    .partNavigation.vertical ul.level-1 > li > a:focus svg {
    fill: #fff;
    }

    .partNavigation.vertical ul.level-1 > li.selected > a .navigationIconDropdown svg {
        fill: #fff;
    }

    /* hover & focus */
    .partNavigation.vertical ul.level-1 > li > a:hover,
    .partNavigation.vertical ul.level-1 > li > a:focus {
        background: #999;
        color: #fff;
    }

    /* selected */
    .partNavigation.vertical ul.level-1 > li.selected > a {
        background: #777;
        color: #fff;
    }

/* level 2 */
.partNavigation.vertical ul.level-2 {
    top:0;
    left:100%;
    background: #fff;
    box-shadow: 0 0 4px rgba(0,0,0,0.15);
}

.partNavigation.vertical ul.level-2 li a {
    color: #000;
    padding:10px;
    display: flex;
    align-items: center;
}

    /* hover & focus */
    .partNavigation.vertical ul.level-2 > li > a:hover,
    .partNavigation.vertical ul.level-2 > li > a:focus {
        background: #555;
        color: #fff;
    }

    /* selected */
    .partNavigation.vertical ul.level-2 > li.selected > a {
        background: #000;
        color: #fff;
    }