
/*
 Navigation
*/

.header {
    font-family: sans-serif;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
    padding: 1.6rem 4.8rem;
    border-top: 0.3rem solid #00ffff;
}

@media (max-width: 767px) {
  .header {
      padding: 1.2rem 1.8rem;
  }
}

.visuallyHidden {
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.logo {
    display: inline-block;
    height: 4rem;
    width: auto;
}

@media (max-width: 767px) {
  .logo {
      height: 3rem;
  }
}

.nav {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
}

.nav ul , .nav ol {
     margin: 0; 
}

.nav ul li, .nav ol li {
     margin: 0; 
}

.nav > * + *,
.menu > * + * {
    margin: 0 0 0 3.2rem;
}

.menu {
    display: flex;
    list-style-type: none;
    margin: 0 0 0 3.2rem;
    padding: 0;
    text-transform: uppercase;
}

.offCanvas {
    position: relative;
    top: -5rem;
}

.offCanvas .open {
    position: relative;
    top: 5rem;
    display: flex;
    flex-direction: column;
    text-transform: uppercase;
    text-decoration: none;
    color: #00ffff;
    font-size: 1.4rem;
}

.offCanvas .open div.menuLine {
  width: 20px;
  height: 1px;
  margin: 2px 0;
  background-color: #00ffff;
}

#offCanvas:target .content {
    right: 0;
    transition-delay: 0s;
}

.offCanvas .content {
    position: fixed;
    z-index: 1000;
    top: 0;
    height: 100vh;
    display: flex;
    flex-direction: column;
    width: 100vw;
    right: -100vw;
    transition: right .3s ease-in-out;
}

@media (min-width: 768px) {
  .offCanvas .content {
      flex-direction: row;
      width: 50rem;
      right: -50rem;
  }
}

.offCanvas .content .close {
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    padding: 1.6rem;
    background-color: #282828;
    text-decoration: none;
    color: #fff;
    font-size: 2rem;
}

@media (min-width: 768px) {
  .offCanvas .content .close {
      position: static;
      display: inline-flex;
      padding: 1.25rem;
      color: aqua;
      background-color: transparent;
  }
}

.offCanvas .content .navigation {
    padding: 5.5rem 3.2rem 4.8rem;
    font-size: 1.4rem;
    width: 100%;
    height: 100%;
    background-color: #282828;
    overflow-y: auto;
    color: #fff;
}

@media (max-width: 768px) {
  .offCanvas .content .navigation {
      width: auto;
  }
}

@media (min-width: 768px) {
  .offCanvas .content .navigation {
      padding: 4.8rem;
  }
}

.menuItem, .plainItem {
    position: relative;
    border-top: 0.1rem solid hsla(0,0%,100%,.2);
    list-style-type: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.menuItem summary {
    list-style: none;
}

.plainItem,
.navigation > .menuItem > summary {
    padding: .6rem 1.6rem;
}

details > summary:first-of-type {
    display: list-item;
    counter-increment: list-item 0;
/*
    list-style: inside disclosure-closed;
*/
}
details summary::-webkit-details-marker {
  display:none;
}

span {
    margin-right: 1em;
}

.menuItem summary {
    list-style: none;
    color: #00ffff;
    text-align: left;
}

summary:after {
    position: absolute;
    top: .8rem;
    right: 0;
    content: "+";
    font-family: sans-serif;
    font-size: 2rem;
/*
    color: hsla(0,0%,100%,.8);
*/
        color: #00ffff;
}

.subnav summary:after {
  top: -.3rem;
}

.menuItem {
  width: 100%;
}

details[open] > summary::after {
    content: "−";
}

.menuItem > .subnav {
  padding: 0 2.2rem 0 1.6rem;
  margin-bottom: 2.8rem;
  font-size: 1.3rem;
  border: none;
}

.menuItem > .subnav .subnav {
  padding: 0;
  padding-top: 1rem;
  padding-left: 1.6rem;
  margin-bottom: .5rem;
  font-size: 1.2rem;
}

.menuItem > .subnav .subnav {
    margin-bottom: 0;
}

.menuItem > .subnav .menuItem,
.menuItem > .subnav .plainItem {
    border: none;
    border-bottom: 1px solid hsla(0,0%,100%,.2);
}

.menuItem[open] .subnav .plainItem:last-child {
    border: none !important;
}

.plainItem > .menuItem {
    border: none !important;
}

.menuItem > .subnav .subnav .plainItem {
    padding: .6rem 0;
    font-size: 1.2rem;
    border: none;
    border-bottom: 1px solid hsla(0,0%,100%,.2);
}

.menuItem .link,
.plainItem .link {
    color: #00ffff;
    text-decoration: none;
}

.menu li > a {
    color: #00ffff;
    text-decoration: none;
    font-size: 1.4rem;
}

summary:hover::after,
a:hover {
  color: gold !important;
}
