/* Navigation */

/* Mobile View */
@media screen and (max-width: 79.5rem){

#nav_toggle{
display:inline-block;
height:2.25rem;
width:2.25rem;
overflow:hidden;
margin:.15rem 0 0 0;
}

.btn_nav_toggle{
height:2.25rem;
width:2.25rem;
margin:0;
padding:0;
cursor:pointer;
position:relative;
}

.btn_nav_toggle .status{
position:absolute;
top:1.1rem;
left:0
}

.btn_nav_toggle .status,
.btn_nav_toggle .status:before,
.btn_nav_toggle .status:after{
content: '';
display:block;
background:var(--base-theme-color);
height:1px;
width:2rem;
border-radius:1px;
transition: all ease-in-out 250ms;
}

.btn_nav_toggle .status:before{
transform:translateY(-8px);
}

.btn_nav_toggle .status:after{
transform:translateY(7px);
}

.btn_nav_toggle .status.active{
transform:rotate(45deg);
}

.btn_nav_toggle .status.active:before{
opacity:0;
}

.btn_nav_toggle .status.active:after{
transform:translateY(-2px) rotate(-90deg);
}

nav{
display:none;
}

#nav nav{
display:block;
}

#nav{
float:left;
margin-top:.75rem;
z-index:100;
background:var(--base-background-color);
}

.open{
display:block;
opacity:1;
height:100%;
}

.close{
display:none;
opacity:0;
height:0;
}

#nav nav ul{
display:block;
list-style:none;
margin:0 0 0 1.5rem;
padding:0;
}

#nav nav ul:first-child{
margin:0;
padding:0;
display:block;
}

#nav nav ul li{
float:left;
width:100%;
display:block;
text-align:left;
border-bottom:var(--base-border-color) 1px solid;
padding:.15rem 0;
-webkit-tap-highlight-color:var(--asset-background-color);
}

#nav nav ul li a{
float:left;
width:calc(100% - 3.5rem);
margin:0;
padding:.5rem;
}

#nav nav ul li a:hover,
#nav nav ul li a.on{
color:var(--asset-theme-color);
}

#nav nav ul li > ul{
float:left;
width:100%;
display:none;
margin:0;
padding:0;
}

#nav nav ul li > ul li a:before{
display:inline-block;
content:'';
width:.45rem;
height:.45rem;
margin:0 .35rem 0 0;
border:var(--base-theme-color) solid;
border-width:0 1px 1px 0;
border-radius:1px;
position:relative;
top:-.1rem;
}

#nav nav ul li > ul li a:before{
transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
}

#nav nav ul li > ul li:last-of-type{
border-bottom:0;
}

#nav nav ul li > ul a{
float:left;
width:calc(100% - 3.5rem);
margin:0;
padding:.25rem .5rem .25rem 1.5rem;
font-weight:normal;
}

#nav nav ul li .arrow{
float:right;
position:relative;
top:.25em;
display:flex;
justify-content:center;
align-items:center;
width:2.5rem;
height:100%;
margin:0 .5rem 0 0;
padding:.5rem;
cursor:pointer;
}

#nav nav ul li .arrow em{
width:.75rem;
height:.75rem;
border:var(--base-theme-color) solid;
border-width:0 2px 2px 0;
display:inline-block;
border-radius:2px;
}

#nav nav ul li .arrow.is_open{
position:relative;
top:.25rem;
}

#nav nav ul li .arrow.is_open em{
transform:rotate(-135deg);
-webkit-transform:rotate(-135deg);
transition:all ease-in-out 250ms;
}

#nav nav ul li .arrow em,
#nav nav ul li .arrow.is_closed em{
transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transition:all ease-in-out 250ms;
}

.subnav_1{
display:none;
}

.subnav_1 ul{
float:left;
width:100%;
list-style-type:none;
margin:0;
padding:0;
}

.subnav_1 ul li{
float:left;
width:100%;
margin:0;
padding:0;
border-bottom:var(--base-border-color) 1px solid;
}

.subnav_1 ul li:last-child{
border-bottom:0;
}

.subnav_1 a{
float:left;
width:100%;
margin:.35em 0 .35em 0;
padding:.45em .75em .35em .75em;
color:var(--base-font-color);
text-decoration:none;
font-size:var(--m-font-size);
}

.subnav_1 a:hover,
.subnav_1 a.on{
color:var(--asset-theme-color);
}


.subnav_1 ul ul > li{
float:left;
text-align:left;
width:100%;
margin:0;
padding:0 1rem;
border-bottom:1px solid var(--base-border-color);
}

.subnav_1 ul ul > li a:before{
display:inline-block;
content:'';
width:.45rem;
height:.45rem;
margin:0 .35rem 0 0;
border:var(--base-theme-color) solid;
border-width:0 1px 1px 0;
border-radius:1px;
position:relative;
top:-.1rem;
}

.subnav_1 ul ul > li a:before{
transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
}


.subnav_1 ul ul > li a{
float:left;
width:100%;
margin:.25em 0;
padding:.35em .25em .25em .25em;
color:var(--base-font-color);
text-decoration:none;
font-size:var(--m-font-size);
transition: background 50ms;
}

.subnav_1 ul ul > li a:hover,
.subnav_1 ul ul > li a.on{
color:var(--light-theme-color);
}

}


/* Desktop View */
@media screen and (min-width: 79.5rem){

#nav_toggle{
display:none
}

#nav{
display:block;
width:100%;
}

.nav_1 ul{
display:flex;
justify-content:flex-start;
list-style-type:none;
margin:1.25rem 0 0 0;
padding:0;
}

.nav_1 ul li{
float:left;
text-align:left;
width:auto;
margin:0 1rem;
padding:0;
position:relative;
}

.nav_1 ul li:first-of-type{
display:none;
}

.nav_1 ul ul li:first-of-type{
display:block
}

.nav_1 ul li .arrow em{
position:absolute;
top:.85rem;
right:-.75rem;
width:.5rem;
height:.5rem;
border:#FFF solid;
border-width:0 2px 2px 0;
display:inline-block;
}

.nav_1 ul li .arrow em{
transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transition:all ease-in-out 250ms;
}

.nav_1 ul li a{
display:inline-block;
font-family:var(--nav-font-family);
color:var(--base-font-color);
text-decoration:none;
text-transform:uppercase;
font-weight:normal;
font-size:1.25rem;
width:auto;
margin:0 .5rem;
padding:.35rem 0 .25rem 0;
transition:border ease-in-out 50ms;
}

.nav_1 ul li a:hover,
.nav_1 ul li a.on{
border-bottom:var(--base-font-color) 1px solid;
}

.nav_1 ul li:hover ul{
top:35px;
}

.nav_1 ul ul,
.nav_2 ul ul{
display:block;
position:absolute;
top:-9999px;
left:-.5em;
z-index:100;
width:16em;
margin:0;
padding:.5rem 0 .5rem 0;
background:rgba(255,255,255,.98);
-webkit-backdrop-filter:blur(10px);
border-top:0;
border-top:var(--base-border-color) 1px solid;
border-left:var(--base-border-color) 1px solid;
border-right:var(--base-border-color) 1px solid;
border-bottom:var(--base-border-color) 1px solid;
border-radius:.25rem;
}

.nav_1 ul ul li{
display:block;
text-align:left;
width:15em;
margin:0 .5rem;
padding:0;
border-bottom:var(--base-border-color) 1px solid;
}

.nav_1 ul ul li:last-of-type{
border-bottom:0;
}

.nav_1 ul ul li > a{
float:left;
width:100%;
margin:.15rem 0;
padding:.25rem .5rem;
font-family:var(--nav-bold-font-family);
color:var(--base-font-color);
font-size:var(--m-font-size);
text-decoration:none;
text-transform:none;
}

.nav_1 ul ul li > a:hover{
font-weight:bold;
}

.nav_1 ul ul li > .activ:hover{
font-weight:bold;
}

.nav_1 ul ul li > a:hover,
.nav_1 ul ul li > a.on{
color:var(--light-font-color);
background:var(--asset-theme-color);
border-radius:.25rem;
border-bottom:0;
}

.nav_2{
background:var(--asset-background-color);
}

.nav_2 ul{
display:flex;
justify-content:flex-end;
list-style-type:none;
margin:.25rem 0 0 0;
padding:0;
}


.nav_3 ul{
display:flex;
justify-content:center;
list-style-type:none;
margin:.85em 0 0 0;
padding:0;
}

.nav_2 ul li,
.nav_3 ul li{
float:left;
text-align:left;
width:auto;
margin:0;
padding:0 .5em;
}

.nav_2 a{
font-family:var(--nav-bold-font-family);
color:var(--base-font-color);
text-decoration:none;
font-size:var(--s-font-size);
}


.nav_3 a{
font-family:var(--nav-font-family);
color:var(--base-font-color);
text-decoration:none;
text-transform:uppercase;
font-size:var(--s-font-size);
}

.nav_2 a:hover,
.nav_2 a.on,
.nav_3 a:hover,
.nav_3 a.on{
text-decoration:underline;
}


.subnav_1{
grid-area:subnav;
float:left;
width:15rem;
margin:0 0 2.5em 0;
padding:0 0 0 .5em;
border-radius:.25rem;
background:var(--light-background-color);
}

.subnav_1 ul{
float:left;
list-style-type:none;
margin:.25em 0 .25em 0;
padding:0;
}

.subnav_1 ul li{
float:left;
text-align:left;
width:14rem;
min-height:2em;
margin:0;
padding:0;
border-bottom:var(--base-border-color) 1px solid;
}

.subnav_1 ul li:last-child{
border-bottom:0;
}

.subnav_1 a{
float:left;
width:100%;
margin:.25em 0;
padding:.25em .5em;
color:var(--base-font-color);
text-decoration:none;
font-size:var(--m-font-size);
font-weight:bold;
}

.subnav_1 a:hover,
.subnav_1 a.on{
background:var(--asset-theme-color);
border-radius:.25rem;
}

.subnav_1 ul ul{
float:left;
width:100%;
display:block;
margin:0;
padding:0;
}

.subnav_1 ul ul > li{
float:left;
text-align:left;
width:14em;
margin:0;
padding:0 0 0 1rem;
border-bottom:1px solid var(--base-border-color);
}

.subnav_1 ul ul > li a:before{
display:inline-block;
content:'';
width:.45rem;
height:.45rem;
margin:0 .35rem 0 0;
border:var(--base-font-color) solid;
border-width:0 1px 1px 0;
border-radius:1px;
position:relative;
top:-.1rem;
}

.subnav_1 ul ul > li a:before{
transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
}


.subnav_1 ul ul > li a{
float:left;
width:100%;
margin:.25em 0;
padding:.15em .25em;
color:var(--base-font-color);
text-decoration:none;
font-size:var(--m-font-size);
transition: background 50ms;
}

.subnav_1 ul ul > li a:hover,
.subnav_1 ul ul > li a.on{
background:var(--asset-theme-color);
border-radius:.25rem;
}

}



.sitemap{
display:block;
float:left;
text-align:left;
width:100%;
margin:0;
padding:0;
}

.sitemap ul{
float:left;
width:100%;
list-style-type:none;
margin:0;
padding:0;
}

.sitemap li{
float:left;
width:100%;
margin:0;
padding:.25rem 0;
border-bottom:var(--base-border-color) 1px solid;
}

.sitemap li:last-child{
border-bottom:0;
}


.sitemap a{
display:block;
text-decoration:none;
font-weight:bold;
font-size:1.1rem;
width:auto;
padding:.35em .5em .5em .75em;
}

.sitemap li > ul a{
display:block;
margin:0;
padding:.25rem .5rem .25rem 1.5rem;
font-weight:normal;
}

.sitemap li > ul a:before{
display:inline-block;
content:'';
width:.45rem;
height:.45rem;
margin:0 .35rem 0 0;
border:var(--base-theme-color) solid;
border-width:0 1px 1px 0;
border-radius:1px;
position:relative;
top:-.1rem;
}

.sitemap li > ul a:before{
transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
}




#footer{
background:var(--base-background-color);
}

#footer .navigation{
margin:.5rem 0 2rem 0;
padding:0;
background:var(--base-background-color);
}

#footer .navigation ul{
all: unset;
display:flex;
justify-content:space-between;
list-style-type:none;
margin:0;
padding:0 .5rem;
}

#footer .navigation ul li{
float:left;
width:100%;
display:block;
text-align:left;
margin:0;
padding:.15rem 0;
}

#footer .navigation ul li a{
margin:0;
padding:0 .25rem;
color:var(--base-font-color);
font-weight:bold;
text-decoration:none;
}

#footer .navigation ul li a:hover{
text-decoration:underline;
}

#footer .navigation ul ul{
all: unset;
float:left;
width:100%;
list-style-type:none;
margin:0;
padding:0;
}

#footer .navigation ul ul > li{
all: unset;
float:left;
width:100%;
display:block;
text-align:left;
margin:0;
padding:.15rem 0;
}

#footer .navigation ul ul > li a{
all: revert;
float:left;
width:100%;
margin:0;
padding:0 .25rem;
color:var(--base-font-color);
font-weight:normal;
text-decoration:none;
}


/*
#footer nav ul li > a{
float:left;
width:100%;
margin:.15rem 0;
padding:.25rem .5rem;
font-family:var(--nav-bold-font-family);
color:var(--base-font-color);
font-size:var(--m-font-size);
text-decoration:none;
text-transform:none;
}

#footer nav ul li > ul{
float:left;
width:100%;
display:none;
margin:0;
padding:0;
}

#footer nav ul li > ul li a{
float:left;
width:100%;
margin:.15rem 0;
padding:.25rem .5rem;
font-family:var(--nav-bold-font-family);
color:var(--base-font-color);
font-size:var(--m-font-size);
text-decoration:none;
text-transform:none;
}
*/