.nav {
  display: none;
}

.pusher {
  position: relative;
  height: 100%;
  -moz-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.3s;
  -ms-transform: translatex(0);
  -webkit-transform: translatex(0);
  transform: translatex(0);
  .logo-res {
    border-bottom: solid 1px var(--almostblack);
    .region-logo {
      #block-sadgirlstheme-logoheader {
        .clearfix.text-formatted {
          text-align: center;
          padding: 23px 60px 30px 60px;
          a {
            img {
              width: 100px;
              height: auto;
              object-fit: contain;
            }
          }
        }
      }
    }
  }
}

.with--sidebar .site-cache {
  position: absolute;
  z-index: 100;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  background: rgba(0, 0, 0, 0.5) none repeat scroll 0% 0%;
}
.with--sidebar .pusher {
  -ms-transform: translatex(-250px);
  -webkit-transform: translatex(-250px);
  transform: translatex(-250px);
}
.with--sidebar #nav-res {
  display: block;
}
#toggle {
  position: absolute;
  top: 44px;
  right: 25px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 24px;
  height: 19px;
  span.bar {
    display: block;
    height: 2px;
    width: 100%;
    background: var(--dark-red);
    transition: transform 0.8s ease;
  }
}
#nav-res {
  display: none;
  width: 260px;
  position: absolute;
  right: -250px;
  top: 0;
  bottom: 0;
  z-index: 99999;
  padding: 20px 0px;
  background-color: var(--dark-red);
  height: 100%;
  .region-logo {
    #block-sadgirlstheme-logoheader {
      div.text-formatted {
        text-align: center;
        padding: 10px 30px 25px;
        a {
          img {
            width: auto;
            height: 50px;
            object-fit: contain;
          }
        }
      }
    }
  }
  .region-navres {
    nav.navigation {
      margin: 40px 30px 40px 30px;
      ul {
        display: flex;
        flex-flow: column nowrap;
        row-gap: 30px;
        margin: 0px;
        padding: 0px;
        li.menu-item {
          font-family: "Source Sans Pro", sans-serif;
          text-align: center;
          color: var(--background-2);
          font-size: 16px;
          letter-spacing: 1.75px;
          padding: 0px;
          margin: 0px;
          a.is-active {
            color: var(--background-2);
            position: relative;
            font-style: italic;
            &:after {
              content: "";
              width: 45px;
              height: 0.75px;
              background-color: var(--background-2);
              display: block;
              margin: 3px auto 0px;
            }
          }
        }
      }
    }
  }
}

/* Animation des barres de menu lorsqu'elles sont activées */
.with--sidebar #toggle span:nth-child(1) {
  transform: rotate(46deg) translate(13px, 12px);
}

.with--sidebar #toggle span:nth-child(2) {
  opacity: 0;
}

.with--sidebar #toggle span:nth-child(3) {
  transform: rotate(-47deg) translate(0px, 0px);
}

@media only screen and (min-width: 1280px) {
  .pusher {
    transform: none;
  }
  .logo-res {
    display: none;
  }
  .nav {
    display: block;
    position: relative;
    z-index: 2;
  }
  #toggle {
    display: none;
  }
  #nav-res {
    display: none;
  }
  .nav {
    #navigation {
      display: flex;
      flex-flow: row nowrap;
      justify-content: space-between;
      align-items: center;
      padding: 30px 60px 60px 60px;
      max-width: 1740px;
      margin: 0px auto;
      div.region.region-logo {
        #block-sadgirlstheme-logoheader {
          .clearfix.text-formatted {
            text-align: left;
            padding: 0px;
            a {
              img {
                width: 200px;
                height: auto;
                object-fit: contain;
              }
            }
          }
        }
      }
      div.region.region-navigation {
        nav.menu--main {
          h2 {
          }
          ul {
            display: flex;
            flex-flow: row nowrap;
            justify-content: center;
            column-gap: 40px;
            margin: 0px;
            padding: 0px;
            li {
              font-family: "Source Sans Pro", sans-serif;
              text-align: center;
              color: var(--dark-red);
              font-size: 18px;
              font-weight: 500;
              letter-spacing: 1.5px;
              padding: 0px;
              margin: 0px;
              &.menu-item--active-trail {
                color: var(--dark-red);
                font-style: italic;
                a.is-active {
                  color: var(--dark-red);
                }
                &:after {
                  content: "";
                  width: 30px;
                  height: 1px;
                  background-color: var(--dark-red);
                  display: block;
                  margin: 0px auto 0px;
                }
              }
              a {
              }
            }
          }
        }
      }
    }
  }
}
