#pull {display: none;}
#hamburger {display: none;}
#pullClose {display: none;}

/*@media screen and (max-width: 1200px) {
  .menu {
    float: left;
    width: 1200px;
    max-height: 55px; 
    margin: 0 0 0 calc(50% - 600px);
  }
}
*/
#hamburger {
  width: 50px;
  height: 40px;
  position: relative;
  float: right;
  margin: 6px 0 0 40px;
  transform: rotate(0deg);
  transition: .5s ease-in-out;
  cursor: pointer;
}
#hamburger span {
  display: block;
  position: absolute;
  height: 6px;
  width: 100%;
  background: var(--grey);
  border-radius: 9px;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: .25s ease-in-out;
}
#hamburger span:nth-child(1) {
  top: 3px;
}
#hamburger span:nth-child(2),
#hamburger span:nth-child(3) {
  top: 17px;
}
#hamburger span:nth-child(4) {
  top: 31px;
}
#hamburger.open span:nth-child(1) {
  top: 17px;
  width: 0%;
  left: 50%;
}
#hamburger.open span:nth-child(2) {
  transform: rotate(45deg);
}
#hamburger.open span:nth-child(3) {
  transform: rotate(-45deg);
}
#hamburger.open span:nth-child(4) {
  top: 17px;
  width: 0%;
  left: 50% ;
}
@media (min-width: 901px) {
  .header > .menu > ul > li > ul {
    display: none;
  }
  .header > .menu > ul > li:hover > ul {
    display: block;
    position: absolute;
    width: calc(100vw - 80px);
    min-height: calc(100vh - 220px);
    left: 0;
    top: 60px;
    background: #fff;
    margin: 0;
    padding: 10px;
    list-style-type: none;
    -webkit-box-shadow: 4px 4px 8px 0px rgba(34, 60, 80, 0.2);
    -moz-box-shadow: 4px 4px 8px 0px rgba(34, 60, 80, 0.2);
    box-shadow: 4px 4px 8px 0px rgba(34, 60, 80, 0.2);
  }
    .header > .menu > ul > li:hover > ul > li {
      width: 300px;
      padding: 2px 6px;
      text-align: left;
      text-transform: none;
    }
      .header > .menu > ul > li:hover > ul > li:hover {
        background: #f8f8f8;
      }
      .header > .menu > ul > li:hover > ul > li > a {
        text-decoration: none;
        color: var(--link-grey);
        font-weight: normal;
        display: block;
      }
        .header > .menu > ul > li:hover > ul > li > a:hover {
          color: #000;
          text-decoration: underline;
        }

        .header > .menu > ul > li:hover > ul > li > ul {
          display: none;
        }

        .header > .menu > ul > li:hover > ul > li:hover > ul {
          display: inline-block;
          position: absolute;
          width: calc(100vw - 380px);
          min-height: calc(100vh - 220px);
          left: 319px;
          top: 0;
          margin: 0;
          padding: 10px 5px;
        }
          .header > .menu > ul > li:hover > ul > li:hover > ul > li {
            display: inline-block;
            width: 33%;
            float: left;
          }
            .header > .menu > ul > li:hover > ul > li:hover > ul > li > a {
              color: var(--link-grey);
              padding: 2px 6px;
              font-weight: 300;
              text-decoration: none;
            }
            .header > .menu > ul > li:hover > ul > li:hover > ul > li > a:hover {
              text-decoration: underline;
            }
}
@media (max-width: 900px) {
  nav {
    width: 330px;
  }
}

@media screen and (max-width: 960px) {
    .header {
      position: relative;
    }
    .header > .menu {
      margin: 0;
      min-height: 30px;
      position: absolute;
      top: 249px;
      right: 0;
    }
      .header > .menu > ul {
        margin: 0;
      }
    .menu a#pullClose {display: none;}
    #hamburger {
      grid-row: 2;
      grid-column: 2;
      width: 40px;
      height: 36px;
      position: relative;
      float: right;
      margin: 0;
      transform: rotate(0deg);
      transition: .5s ease-in-out;
      cursor: pointer;
      display: block;
      top: 0;
      right: -5px;
    }
    #hamburger span {
      display: block;
      position: absolute;
      height: 4px;
      width: 100%;
      background: #000;
      border-radius: 9px;
      opacity: 1;
      left: 0;
      transform: rotate(0deg);
      transition: .25s ease-in-out;
    }
    #hamburger span:nth-child(1) {
      top: 3px;
    }
    #hamburger span:nth-child(2),
    #hamburger span:nth-child(3) {
      top: 17px;
    }
    #hamburger span:nth-child(4) {
      top: 31px;
    }
    #hamburger.open span:nth-child(1) {
      top: 17px;
      width: 0%;
      left: 50%;
    }

    #hamburger.open span:nth-child(2) {
      transform: rotate(45deg);
    }
    #hamburger.open span:nth-child(3) {
      transform: rotate(-45deg);
    }
    #hamburger.open span:nth-child(4) {
      top: 17px;
      width: 0%;
      left: 50% ;
    }

    .main__menu a#pull {
      display: block;
      color: #000;
      background: #000;
      width: 40px;
      position: relative;
      font-size: 4vw;
      height: 40px;
      position: absolute;
      text-align: center;
      text-decoration: none;
      right: 5px;
      top: 2px;
      border-radius: 3px;
      -webkit-border-radius: 3px;
      -moz-border-radius: 3px;
    }
    #pullClose {
      position: absolute;
      top: 0;
      right: 5px;
      margin: 3px 5px 0 0;
      width: 40px;
      height: 40px;
      line-height: 40px;
      font-size: 14pt;
    }

        .menu a#pull img{width: 40px; height: 30px; margin: 5px 0 0 0; float: left;}
        .menu a#pull:after {content:""; width: 100%; line-height: 55px; display: inline-block; float: left;}
      .main__menu > .inner > .menu {
        grid-column: 1 / -1;
        grid-row: 3;
        display: none;
        width: 100%;
        padding: 0;
        margin: 10px 0 -6px 0;
        background: #fff;
        z-index: 999;
        background: #e9e9e9;
      }

        .main__menu > .inner > .menu > li {
          float: left;
          width: 98%;
          text-align: right;
          line-height: 40px;
          margin: 0;
          font-weight: 400;
          z-index: 999;
          padding: 0 1%;
          border-bottom: 1px solid #ccc;
          display: block;
        }
        .main__menu > .inner > .menu > li:last-child {
          float: left;
          line-height: 40px;
          margin: 0;
          display: block;
        }
          
          .main__menu > .inner > .menu > li > a {
            text-decoration: none;
            color: #222222;
            display: block;
          }
            .main__menu > .inner > .menu > li > ul {
              list-style-type: none;
              width: calc(100% - 40px);
              margin: 0 20px;
              padding: 0;
            }
              .main__menu > .inner > .menu > li > ul > li {
                border-bottom: 1px solid #D8D5DA;
              }
                .main__menu > .inner > .menu > li > ul > li:last-child {
                  border-bottom: 0;
                }
              .main__menu > .inner > .menu > li > ul > li > a {
                color: #7D7D7D;
                text-decoration: none;
              }
              .main__menu > .inner > .menu > li > ul > li > ul {
                display: none;
              }
}