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

	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 { width:calc(100% - 2rem); max-width:22rem; position:fixed; top:5rem; right:1rem; bottom:auto; z-index:9990; background: rgba(255,255,255,0.97); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow:0 -0.25rem 0.75rem -0.25rem rgba(34,34,34,0.15); margin: auto; }
body.logged-in.mean-container .mean-nav { top:calc(4.5rem + 32px);}
.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:1rem; margin:0; width:100%; list-style-type:none; display:none;  position: relative; box-sizing:border-box;  }
.mean-container .mean-nav > ul > li:nth-of-type(1) { /*border-top:1px solid rgba(34,34,34, 0.1);*/ }
.mean-container .mean-nav > ul > li { position:relative; width:100%; padding:0; margin:0; letter-spacing:-.4em; box-sizing:border-box; /*border-bottom:1px solid rgba(34,34,34, 0.1);*/ }
.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; line-height:1.5rem; margin:0; padding:0.75rem 0 0.75rem 2rem; text-decoration:none; box-sizing:border-box; letter-spacing:0.05rem; position: relative; background:url(../img/i_arrow_r.svg) left -1.5rem center /3rem no-repeat; }
.mean-container .mean-nav ul li a:hover, .mean-container .mean-nav ul li > a.active { font-weight: 500; color: #037; }
.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:-0.5rem; top:0; z-index:2; font-weight:300; box-sizing:border-box; border:none !important; cursor:pointer; background:none; }
.mean-container .mean-nav ul li a.mean-expand:hover { background-color:rgba(255,255,255,0.05);  }
.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::after { content:""; position:absolute; bottom:0; left:0; right:-1rem; border-bottom:1px solid rgba(0,0,0,0.07); }

.mean-container .mean-nav ul li ul { margin:0; padding:0 0 1rem 0; }
.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 { display:block; border:none; padding:0.5rem 0.5rem 0.5rem 3rem ; background:url(../img/i_arrow_r.svg) left -0.5rem center /3rem no-repeat; }
.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:4.5rem; height:4.5rem; position:fixed; cursor:pointer; text-decoration:none; display:block; box-sizing:border-box; z-index:9999; transition:.2s; /*background:#fff;*/ }
.mean-container a.meanmenu-reveal span { height:1px; background:#222; position:absolute; transition:.2s; width:40%; left:30%; } 
.mean-container a.meanmenu-reveal span:nth-child(1) { top:24%; }
.mean-container a.meanmenu-reveal span:nth-child(2) { top:38%; }
.mean-container a.meanmenu-reveal span:nth-child(3) { top:52%; }
.mean-container a.meanmenu-reveal.meanclose span { }
.mean-container a.meanmenu-reveal.meanclose span:nth-child(1) { top:38%; 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:38%; transform: rotate(45deg); }
.mean-container a.meanmenu-reveal::after { content:"MENU"; color:#222; display:block; width:100%; font-size:9px; text-align:center; position:absolute; line-height: 1.25; bottom:1rem; left:0; font-weight:500;  }
.mean-container a.meanmenu-reveal.meanclose::after { content:"CLOSE"; }

.mean-container .meanclose + .mean-nav { height: auto;  max-height:calc(100vh - 6rem);  overflow-y:auto; }

.mean-remove { display:none !important; }

@media screen and (max-width:782px) {
body.logged-in.mean-container .mean-nav { top:calc(4.5rem + 46px);}
}