/*! #######################################################################

	MeanMenu 2.0.7
	--------
	To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/)

####################################################################### */

/* hide the link until viewport size is reached */
a.meanmenu-reveal { display:none; }

/* when under viewport size, .mean-container is added to body */
.mean-container .meanclose + .mean-nav::after { }
.mean-container .mean-bar { width:100%; max-width:375px;  box-sizing:border-box; }
.mean-container .mean-nav { display:flex; justify-content:center; width:100vw; position:fixed; top:0; right:0; z-index:9990; background:#223; margin: auto; transition:0.25s; border-radius:0 0 50% 50%; opacity:0; overflow-y:auto; }
.mean-container .mean-nav h1 { width:240px; position:absolute; left:8px; top:7px; padding:0; margin:0; font-size:10px; line-height:36px; }
.mean-container .mean-nav h1 img { width:100%; }
.mean-container .mean-nav > ul { padding:14rem 1rem 0 1rem; margin:0 auto; width:100%; max-width:14rem; list-style-type:none; position: relative; }
.mean-container .mean-nav > ul > li:nth-of-type(1) { }
.mean-container .mean-nav > ul > li { position:relative; width:100%; padding:0; margin:0; letter-spacing:-.4em; box-sizing:border-box; }
.mean-container .mean-nav ul h2 { letter-spacing:1px; color:#09e; width:100%; padding:5px 15px; margin:0 !important; text-align:left; font-size:1.0em; }

.mean-container .mean-nav > ul > li a { display:block; color:#fff; letter-spacing:0.05rem; text-decoration:none; box-sizing:border-box; position: relative; text-shadow:none; text-align:center; }
.mean-container .mean-nav > ul > li > a { display:block; line-height:1.5rem; margin:0; padding: 0.75rem 1rem; background:url(../img/i_arrow_rw.svg) right 0.25rem center /0.75rem no-repeat; }

.mean-container .mean-nav > ul > li { border-top:1px solid #fff;}
.mean-container .mean-nav ul li a:hover, .mean-container .mean-nav ul li > a.active { font-weight: 500; }
.mean-container .mean-nav ul li a br { display: none; }

.mean-container .mean-nav ul li a.mean-expand { margin-top:0; width:3rem; height:3rem; line-height:2.9rem; padding:0; text-align:center; position:absolute; display:block; right:-1rem; top:0; z-index:2; font-weight:300; box-sizing:border-box; border:none !important; cursor:pointer; border-radius: 3rem; background:#223;  }
.mean-container .mean-nav ul li a.mean-expand:hover {  }
.mean-container .mean-nav ul li a.mean-expand::after { content:"＋"; display: block; transition:0.15s; }
.mean-container .mean-nav ul li a.mean-expand::before { display: none; }
.mean-container .mean-nav ul li a.mean-expand.mean-clicked::after { transform: rotate(45deg); }
.mean-container .mean-push { float:left; width:100%; padding:0; margin:0; clear:both; }
.mean-nav .wrapper { width:100%; padding:0; margin:0; }

.mean-container .mean-nav ul li ul { margin:0; padding:0 0 1rem 0; width:100%; }
.mean-container .mean-nav ul li ul li { display:inline-block; vertical-align:top; text-shadow:none !important; visibility:visible; box-sizing:border-box; margin:0; position: relative; }
.mean-container .mean-nav ul li ul li a { border:none; padding:0.25rem 1rem;  }
.mean-container .mean-nav ul li ul li a::before { content:""; position:absolute; bottom:0; left:0.75rem; right:1rem;  }
.mean-container .mean-nav ul li ul li a img { height:20px; margin:0 5px 0 0; vertical-align:middle; }
.mean-container .mean-nav ul li.mean-last a { margin-bottom:0; }



.mean-container .mean-nav ul li ul li ul { padding:0 0 1rem 1rem; }

.mean-container .mean-nav .sub { }
.mean-container .mean-nav .sub li { width:100%; }
.mean-container .mean-nav .sub li h2 { }
.mean-container .mean-nav .sub li a { display:block; vertical-align:top; text-shadow:none !important; visibility:visible; box-sizing:border-box; }
.mean-container .mean-nav .sub li:last-of-type a { border-bottom:none; } 

/* Fix for box sizing on Foundation Framework etc. */
.mean-container .mean-bar, .mean-container .mean-bar * { -webkit-box-sizing:content-box; -moz-box-sizing:content-box; box-sizing:content-box; }


.mean-container .mean-bar .logo { display:block; width:100px; }
.mean-container a.meanmenu-reveal { width:5rem; height:5rem; position:fixed; right:0; top:0; left:auto; bottom:auto; cursor:pointer; text-decoration:none; display:block; box-sizing:border-box; z-index:9999; transition:1s; /*background:#fff;*/ }
body.logged-in.mean-container a.meanmenu-reveal { top:32px; }
.mean-container a.meanmenu-reveal span { height:1px; background:#222; position:absolute; transition:.2s; } 
.mean-container a.meanmenu-reveal span:nth-child(1) { top:43%; left:25%; width:50%; }
.mean-container a.meanmenu-reveal span:nth-child(2) { top:50%; left:25%; width:50%; display:none; }
.mean-container a.meanmenu-reveal span:nth-child(3) { top:57%; left:25%; width:50%; }
.mean-container a.meanmenu-reveal.meanclose span { background:#fff; }
.mean-container a.meanmenu-reveal.meanclose span:nth-child(1) { top:50%; left:25%; transform: rotate(-45deg); }
.mean-container a.meanmenu-reveal.meanclose span:nth-child(2) { width:0; left:50%; }
.mean-container a.meanmenu-reveal.meanclose span:nth-child(3) { top:50%; left:25%; transform: rotate(45deg); }
/*.mean-container a.meanmenu-reveal::after { content:"MENU"; color:#222; display:block; width:100%; font-size:10px; text-align:center; position:absolute; line-height: 1.25; bottom:1.5rem; left:0; font-weight:500;  }
.mean-container a.meanmenu-reveal.meanclose::after { content:"CLOSE"; }*/

.mean-container .meanclose + .mean-nav { width:100vw; height:100vh; max-height:100vh; overflow-y:auto; border-radius:0; opacity:1; }

.mean-remove { display:none !important; }
body.logged-in.mean-container .mean-nav { top:calc(0px + 32px); }
body.logged-in.mean-container .meanclose + .mean-nav { height:calc(100vh - 32px); }

.mean-nav .lang { padding:1rem 0 3rem 0 !important;}



@media screen and (max-width:782px) {
body.logged-in.mean-container a.meanmenu-reveal { top:46px; }
body.logged-in.mean-container .mean-nav { top:calc(0px + 46px); }
body.logged-in.mean-container .meanclose + .mean-nav { height:calc(100vh - 46px); }

}

@media screen and (max-width:640px) {
.mean-container a.meanmenu-reveal { width:3.5rem; height:3.5rem; top:0.25rem; }
body.logged-in.mean-container a.meanmenu-reveal { top:calc(0.25rem + 46px); }
}

