/*
 * Retina Sprites for Compass
 * by:              Gaya Kessler
 * last update:     03/11/14
 *
 * Usage:
 * 1. create two folders in your image directory (in this case 'icons' and 'icons-2x').
 * 2. adjust the foldernames defined below if you use different names.
 * 3. create sprite images for pixel ratio 1 screens and put them in the first folder.
 * 4. create sprite images for pixel ratio 2 screens and put them in the second folder, use the same filenames.
 * 5. use the sprite-image in your Sass/Scss using: '@include use-sprite(<sprite-name>)'
 */
/*
 * Retina Backgrounds for Compass
 * by:              Gaya Kessler
 * last update:     03/11/14
 *
 * Usage:
 * 1. create background image for pixel ratio 1 screens and put it somewhere in your images folder.
 * 2. create background image for pixel ratio 2 screens and put it somewhere in your images folder.
 * 3. include the background-image property in your Sass/Scss using: '@include background-retina(<ratio-1-imagefile>, <ratio-2-imagefile>)'
 */
.not-scrollable {
  overflow: hidden; }

.menu-vertical {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
  z-index: 150;
  font-family: "Roboto-Condensed", Arial /*rtl:"Roboto Condensed", Arial*/; }
  .menu-vertical.menu--visible {
    pointer-events: auto; }
  .menu-vertical .app-menu {
    position: fixed;
    max-width: 355px;
    width: 90%;
    height: 100%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
    -webkit-transform: translate(-103%, 0);
    -ms-transform: translate(-103%, 0);
    transform: translate(-103%, 0);
    display: flex;
    flex-direction: column;
    will-change: transform;
    z-index: 160;
    pointer-events: auto;
    overflow-y: auto;
    text-transform: uppercase;
    background-color: #0072b5;
    background-image: -moz-linear-gradient(top, rgba(0, 114, 181, 0.95), rgba(0, 114, 181, 0.95)), url(/modules/decashopverticalmenu/views/img/bg-menu.jpg);
    background-image: -o-linear-gradient(top, rgba(0, 114, 181, 0.95), rgba(0, 114, 181, 0.95)), url(/modules/decashopverticalmenu/views/img/bg-menu.jpg);
    background-image: -ms-linear-gradient(top, rgba(0, 114, 181, 0.95), rgba(0, 114, 181, 0.95)), url(/modules/decashopverticalmenu/views/img/bg-menu.jpg);
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 114, 181, 0.95)), to(rgba(0, 114, 181, 0.95))), url(/modules/decashopverticalmenu/views/img/bg-menu.jpg);
    background-image: -webkit-linear-gradient(top, rgba(0, 114, 181, 0.95), rgba(0, 114, 181, 0.95)), url(/modules/decashopverticalmenu/views/img/bg-menu.jpg);
    background-image: linear-gradient(to bottom, rgba(0, 114, 181, 0.95), rgba(0, 114, 181, 0.95)), url(/modules/decashopverticalmenu/views/img/bg-menu.jpg);
    background-size: cover;
    background-position: center top; }
    .menu-vertical .app-menu .app-menu-header {
      height: 75px;
      top : 0;
      position: sticky;
     }

      .menu-vertical .app-menu .app-menu_level2 .app-menu-header {
        height: 75px;
        top : 0;
        position: sticky;
        z-index: 375; 
      }

      .menu-vertical .app-menu .app-menu_level3 .app-menu-header {
      height: 75px;
      top : 0;
      position: sticky;
      z-index: 375; }

      .menu-vertical .app-menu .app-menu-header .app-menu_close {
        float: right;
        cursor: pointer;
        text-align: center;
        width: 75px;
        height: 75px;
        font-size: 13px;
        padding-top: 18px;
        border: none;
        background: no-repeat;
        color: #000;}
        .menu-vertical .app-menu .app-menu-header .app-menu_close i {
          display: block;
          font-size: 23px;
          color: #000; }
      .menu-vertical .app-menu .app-menu-header .app-menu_back {
        float: left;
        cursor: pointer;
        width: 95px;
        height: 75px;
        color: #efefef;
        background-color: #0072b5;
        background-image: -webkit-linear-gradient(8deg, #0072b5 69%, #e3e3e3 70%);
        background-image: -o-linear-gradient(8deg, #0072b5 69%, #e3e3e3 70%);
        background-image: linear-gradient(82deg, #0072b5 69%, #e3e3e3 70%);
        text-align: center;
        font-size: 13px;
        padding: 18px 0 0 0;
        border: none; }
        .menu-vertical .app-menu .app-menu-header .app-menu_back span {
          position: relative;
          top: -10px;
          margin-left: -20px; }
        .menu-vertical .app-menu .app-menu-header .app-menu_back i {
          display: block;
          font-size: 23px;
          margin-left: -20px; }
    .menu-vertical .app-menu .app-menu_level1 {
      font-size: 17px;
      width: 100%;
      height: 100%; }
      .menu-vertical .app-menu .app-menu_level1 i.arrow {
        position: absolute;
        font-size: 16px;
        margin-top: -8px;
        right: 0;
        top: 50%; }
      .menu-vertical .app-menu .app-menu_level1 li {
        line-height: 40px; }
        .menu-vertical .app-menu .app-menu_level1 li a {
          color: #fff;
          display: block;
          text-decoration: none;
          position: relative;
          padding-right: 25px; }
      .menu-vertical .app-menu .app-menu_level1 .app-menu-header .app-menu_close {
        color: rgba(40, 40, 40, 0.5); }
      .menu-vertical .app-menu .app-menu_level1 .app-menu-content_level1 {
        padding-left: 50px;
        padding-right: 30px;
        font-weight: bold; }

        .menu-vertical .app-menu .app-menu_level1 .app-menu-header .app-menu_close {
        color : #fff; }
        .menu-vertical .app-menu .app-menu_level1 .app-menu-header  .app-menu_close i {
          display: block;
          font-size: 23px;
          color : #fff !important; 
      }
      .menu-vertical .app-menu .app-menu_level2 .app-menu-header .app-menu_close {
        color : #000; }
        .menu-vertical .app-menu .app-menu_level2 .app-menu-header  .app-menu_close i {
          display: block;
          font-size: 23px;
          color : #000 !important; 
      }
      .menu-vertical .app-menu .app-menu_level3 .app-menu-header .app-menu_close {
        color : #000; }
        .menu-vertical .app-menu .app-menu_level3 .app-menu-header  .app-menu_close i {
          display: block;
          font-size: 23px;
          color : #000 !important; 
      }

      .menu-vertical .app-menu .app-menu_level1 .menu-links {
        font-weight: normal; }
        .menu-vertical .app-menu .app-menu_level1 .menu-links i {
          float: left;
          font-size: 30px;
          color: #fff;
          padding-right: 10px;
          padding-top: 2px; }
    .menu-vertical .app-menu .app-menu_level2, .menu-vertical .app-menu .app-menu_level3 {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
      -webkit-transform: translate(-103%, 0);
      -ms-transform: translate(-103%, 0);
      transform: translate(-103%, 0);
      display: flex;
      flex-direction: column;
      will-change: transform;
      pointer-events: none;
      overflow-y: auto; }
      .menu-vertical .app-menu .app-menu_level2 .app-menu-header, .menu-vertical .app-menu .app-menu_level3 .app-menu-header {
        background: #e3e3e3; }
        .menu-vertical .app-menu .app-menu_level2 .app-menu-header .app-menu_link, .menu-vertical .app-menu .app-menu_level3 .app-menu-header .app-menu_link {
          width: calc(100% - 95px - 75px);
          margin-left: 95px;
          text-transform: uppercase;
          line-height: 1.2;
          text-align: left;
          position: relative;
          top: 50%;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          color: #282828;
          font-weight: lighter;
          padding-right: 0;
          font-size: 14px; }
        .menu-vertical .app-menu .app-menu_level2 .app-menu-header .app-menu_close, .menu-vertical .app-menu .app-menu_level3 .app-menu-header .app-menu_close {
          color: rgba(40, 40, 40, 0.5); }
          .menu-vertical .app-menu .app-menu_level2 .app-menu-header .app-menu_close span, .menu-vertical .app-menu .app-menu_level3 .app-menu-header .app-menu_close span {
            position: relative;
            top: -10px; }
    .menu-vertical .app-menu .app-menu_level2 {
      background-color: #fbfbfb;
      font-size: 17px;
      font-weight: normal;
      z-index: 350; }
      .menu-vertical .app-menu .app-menu_level2 li {
        line-height: 64px; }
        .menu-vertical .app-menu .app-menu_level2 li a {
          color: #353535;
          text-decoration: none; }
      .menu-vertical .app-menu .app-menu_level2 .app-menu__list {
        padding-left: 10px;
        padding-right: 20px;
        position: relative; }
      .menu-vertical .app-menu .app-menu_level2 .app-menu-content_level2 {
        padding-left: 30px;
        padding-right: 30px; }
    .menu-vertical .app-menu .app-menu_level3 {
      font-size: 14px;
      background-color: #fff;
      z-index: 400; }
      .menu-vertical .app-menu .app-menu_level3 .accordion i.arrow {
        right: 25px; }
      .menu-vertical .app-menu .app-menu_level3 li {
        line-height: 45px; }
        .menu-vertical .app-menu .app-menu_level3 li a {
          color: #000;
          text-decoration: none; }
      .menu-vertical .app-menu .app-menu_level3 .app-menu_close {
        color: rgba(40, 40, 40, 0.5); }
      .menu-vertical .app-menu .app-menu_level3 .app-menu_intro {
        padding-top: 20px;
        padding-bottom: 20px; }
        .menu-vertical .app-menu .app-menu_level3 .app-menu_intro a {
          position: relative; }
        .menu-vertical .app-menu .app-menu_level3 .app-menu_intro .app-menu_intro_image {
          float: left;
          width: 85px; }
        .menu-vertical .app-menu .app-menu_level3 .app-menu_intro .app-menu_intro_text {
          padding-right: 30px;
          line-height: 1.2;
          text-align: right; }
          .menu-vertical .app-menu .app-menu_level3 .app-menu_intro .app-menu_intro_text .title {
            font-size: 18px;
            font-weight: 100; }
          .menu-vertical .app-menu .app-menu_level3 .app-menu_intro .app-menu_intro_text .category-name {
            font-size: 18px;
            font-weight: bold; }
          .menu-vertical .app-menu .app-menu_level3 .app-menu_intro .app-menu_intro_text i {
            position: relative;
            top: 50%;
            -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
            transform: translateY(-50%);
            position: absolute;
            right: 25px; }
      .menu-vertical .app-menu .app-menu_level3 .app-menu-content_level3 .accordion-toggle.accordion-toggle_expended {
        background: #fbfbfb; }
      .menu-vertical .app-menu .app-menu_level3 .app-menu-content_level3 ul > li {
        margin-bottom: 2px; }
        .menu-vertical .app-menu .app-menu_level3 .app-menu-content_level3 ul > li a {
          background-color: #ededed;
          font-size: 14px;
          font-weight: normal;
          padding: 9px 30px 6px 50px;
          color: #353535; }
      .menu-vertical .app-menu .app-menu_level3 .app-menu-content_level3 .accordion-content {
        display: none;
        font-size: 14px;
        padding-left: 5px; }
        .menu-vertical .app-menu .app-menu_level3 .app-menu-content_level3 .accordion-content > li a {
          background: #fff;
          font-size: 14px;
          line-height: 2.5;
          text-transform: none;
          position: relative; }
    .menu-vertical .app-menu .favorites [class^='col-sm'] {
      padding: 0; }
      .menu-vertical .app-menu .favorites [class^='col-sm'] a {
        font-size: 12px;
        text-align: center; }
        .menu-vertical .app-menu .favorites [class^='col-sm'] a img {
          margin: 0 auto; }
        .menu-vertical .app-menu .favorites [class^='col-sm'] a span {
          color: #353535;
          display: block;
          line-height: 1.6;
          padding-top: 10px; }
        .menu-vertical .app-menu .favorites [class^='col-sm'] a:hover {
          background: #fff; }
    .menu-vertical .app-menu .app-menu_filter {
      text-transform: uppercase;
      width: 100%;
      outline: none;
      color: #a6a6a6;
      font-size: 16px;
      border: solid #c9c9c9;
      border-width: 0 0 1px 0;
      background: #fbfbfb;
      position: sticky;
      top: 75px;
      padding: 10px;
      z-index: 375; }
      .menu-vertical .app-menu .app-menu_filter::-webkit-input-placeholder {
        /* WebKit, Blink, Edge */
        color: #a6a6a6; }
      .menu-vertical .app-menu .app-menu_filter:-moz-placeholder {
        /* Mozilla Firefox 4 to 18 */
        color: #a6a6a6;
        opacity: 1; }
      .menu-vertical .app-menu .app-menu_filter::-moz-placeholder {
        /* Mozilla Firefox 19+ */
        color: #a6a6a6;
        opacity: 1; }
      .menu-vertical .app-menu .app-menu_filter:-ms-input-placeholder {
        /* Internet Explorer 10-11 */
        color: #a6a6a6; }
      .menu-vertical .app-menu .app-menu_filter::-ms-input-placeholder {
        /* Microsoft Edge */
        color: #a6a6a6; }
      .menu-vertical .app-menu .app-menu_filter::placeholder {
        /* Most modern browsers support this now. */
        color: #a6a6a6; }
    .menu-vertical .app-menu .app-menu_filter_empty {
      text-transform: none;
      line-height: 1.2;
      font-weight: bold;
      margin-top: 20px;
      margin-bottom: 10px;
      font-size: 16px; }
    .menu-vertical .app-menu .app-menu__list--show {
      display: block; }
    .menu-vertical .app-menu .app-menu__list--hide {
      display: none; }
  .menu-vertical:after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    opacity: 0;
    will-change: opacity;
    pointer-events: none;
    transition: opacity 330ms cubic-bezier(0, 0, 0.3, 1); }

.menu-vertical.menu--visible .app-menu {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none; }
.menu-vertical.menu--animatable .app-menu {
  transition: all 330ms ease-in; }
.menu-vertical.menu--visible.menu--animatable .app-menu {
  transition: all 330ms ease-out; }
.menu-vertical.menu--visible:after {
  opacity: 1;
  pointer-events: auto; }
.menu-vertical .app-menu_level2.menu--visible {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none; }
.menu-vertical .app-menu_level2.menu--animatable {
  transition: all 330ms ease-in; }
.menu-vertical .app-menu_level2.menu--visible.menu--animatable {
  transition: all 330ms ease-out; }
.menu-vertical .app-menu .app-menu_level2 {
  pointer-events: auto; }
.menu-vertical .app-menu_level3.menu--visible {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none; }
.menu-vertical .app-menu_level3.menu--animatable {
  transition: all 330ms ease-in; }
.menu-vertical .app-menu_level3.menu--visible.menu--animatable {
  transition: all 330ms ease-out; }
.menu-vertical .app-menu .app-menu_level3 {
  pointer-events: auto; }

.menu-vertical-icon {
  position: relative;
  cursor: pointer;
  display: block;
  float: left;
  text-transform: uppercase;
  font-family: "Roboto Condensed", Arial /*rtl:"Roboto Condensed", Arial*/;
  font-size: 14px;
  color: #393939;
  background-color: #efefef;
  border: none;
  height: 63px;
  width: 125px;
  margin-right: 32px;
  /*rtl:begin:remove*/
  //background-image: url(/modules/decashopverticalmenu/views/img/picto-menu.png);
  /*rtl:end:remove*/
  /*rtl:raw: background-image: url(/modules/decashopverticalmenu/views/img/picto-menu_rtl.png);*/
  background-repeat: no-repeat;
  background-position: 15% 50%;
  padding: 0; 
  top: -10px;
  transition: all 330ms ease-in;
}

.menu-vertical-icon span {
  position: relative;
}
.menu-vertical-icon:hover {
  color: white;
  transition: all 330ms;
}

.menu-vertical-icon:before {
  content:'';
  position: absolute;
  top: 0px;
  left: 0px;
  width: 0px;
  height: 63px;
  background:  #3481be;
  transition: all 100ms;
} 

.menu-vertical-icon:hover:before {
  width: 100%;
  transform-origin: bottom left;
  -ms-transform: skew(15deg, 0deg);
  -webkit-transform: skew(15deg, 0deg);
  transform: skew(15deg, 0deg);
  transition: all 150ms ease-out;
}

.menu-vertical-icon:hover:after {
  background-color: #3481be;
  transition-delay: 100ms;
}

.menu-vertical-icon:after {
  position: absolute;
  content: '';
  background-color: #efefef;
  /*rtl:raw:transform: rotate(180deg);*/
  width: 25px;
  height: 63px;
  right: -17px;
  top: 0; 
  transform-origin: bottom left;
  -ms-transform: skew(15deg, 0deg);
  -webkit-transform: skew(15deg, 0deg);
  transform: skew(15deg, 0deg);
}
.menu-vertical-icon .fa {
  font-size: 20px;
  padding-right: 5px;
}

.header-container {
  position: sticky;
  top: 0;
  z-index: 100;
}


@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .menu-vertical .app-menu .app-menu-header {
    position: absolute;
    width: 100%;
  }
  .menu-vertical .app-menu .app-menu_level1 .app-menu-content_level1 {
    margin-top: 100px;
  }
  .menu-vertical .app-menu .app-menu_level2 .app-menu-content_level2 {
    margin-top: 100px;
  }
}