:root {
  --smallMenu-dektop-height: 44px;
  --smallMenu-mobile-height: 30px;
  --header-desktop-height: 54px;
}

body {
  --shoptet: none;

  &.no-scroll {
    overflow: hidden;

    & div#hamburger-btn {
      display: none;
    }
  }

  & div.overall-wrapper {
    margin-top: calc(var(--smallMenu-dektop-height) + var(--header-desktop-height));
  }
}

header#header {
  background-color: #2d2d2c;
  height: calc(var(--smallMenu-dektop-height) + var(--header-desktop-height));
  left: 0;
  position: fixed;
  top: 0;
  transition: transform .3s ease-out;
  width: 100%;
  z-index: 100;





  &.tucked {
    transform: translateY(calc(0px - var(--smallMenu-dektop-height)));
    transition: transform .3s ease-in;

    & div.container {
      border-radius: 0px !important;
      transition: 0.3s ease-in;
    }
  }

  & div#smallMenu {
    display: flex;
    flex-direction: row;
    gap: 4.2rem;
    padding: 0 4.2rem;
    height: var(--smallMenu-dektop-height);
    align-items: center;
    background-color: #2d2d2c;
    font-size: 12px;
    color: white;
    justify-content: flex-end;

    & div.smallMenu__buttons{
      display:flex;
      flex-direction:row;
      gap:2rem;
      z-index: 1002;

      & div.smallMenu__settings {
      position: relative;
      display: flex;
      flex-shrink: 0;
      height: 100%;
      align-items: center;

      &:hover ul.dropdown {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        z-index: 9999;
      }

      &:focus-within ul.dropdown {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
      }

      & span.settings-button {
        cursor: pointer;
        user-select: none;
        transition: 0.2s ease-in;

        &:hover {
          opacity: 0.65;
        }

        & span:first-child::after {
          content: ', ';
        }
      }

      ul.dropdown {
        position: absolute;
        top: 100%;
        right: 0;
        list-style: none;
        margin: 0;
        padding: 1rem;
        padding-right: 3rem;
        margin-right: -4.2rem;
        margin-left: 2rem;
        background: #2d2d2C;
        border: none;
        border-radius: 0;
        min-width: 160px;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity 0.15s, visibility 0.15s;

        & li {
          display: flex;
          align-items: center;
          justify-content: space-between;
          gap: 2rem;
          padding: 0.4rem 0.75rem;
          margin-bottom: 1rem;

          & select {
            width: 100%;
            min-width: 100px;
            line-height: inherit;
            border-radius: 20px;
          }
        }
      }
    }

      & div.account {
        flex-shrink: 0;
  
        & a {
          color: white;
          transition: 0.2s ease-in;
  
          &:hover {
            opacity: 0.65;
            cursor: pointer;
          }
        }
      }
    }

    & div.campaign {
      width: 100%;
      display: flex;
      position: absolute;
      justify-content: center;

      & div.sp-headline {
        overflow: hidden;

        & span.sp-words-wrapper {
          position: relative;
          overflow: hidden;

          & b {
            display: inline-block;
            position: absolute;
            white-space: nowrap;
            left: 0;
            top: 0;
            opacity: 0;
            font-size: 13px;
            font-weight: 400;
            color: #fff;
            pointer-events: none;

            & a {
              color: #fff;
              font-size: 13px;
              font-weight: 400;
              text-decoration: underline;
              text-underline-offset: 2px;
              cursor: pointer;
              transition: 0.2s ease-in;

              &:hover {
                color: #ffffffa6;
              }
            }

            & span.shop-status {
              display: inline-flex;
              padding: 0 0.5rem;

              & span.shopOpen {
                display: none;
              }

              &.shop-open {
                --shoptet: none;

                & span.shopOpen {
                  display: inline-flex;
                }

                & span.shopClosed {
                  display: none;
                }
              }
            }

            &.is-visible {
              position: relative;
              opacity: 1;
              pointer-events: auto;
            }
          }
        }
      }

      & div.sp-headline.slide {
        --shoptet: none;

        & span.sp-words-wrapper {
          --shoptet: none;

          & b {
            white-space: nowrap;

            &.is-visible {
              top: 0;
              opacity: 1;
              animation: slide-in 0.6s;
            }

            &.is-hidden {
              animation: slide-out 0.6s;
            }
          }
        }
      }
    }
  }

  & div.container {
    background-color: #fff;
    box-shadow: #F2F3F6 0px 1px 0px 0px;
    border-radius: 1.3337rem 1.3337rem 0 0;
    max-height: var(--header-desktop-height);
    min-height: unset;
    height: var(--header-desktop-height);
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-evenly;
    gap: 2.337rem;
    transition: 0.3s ease-in;

    & div.site-name {
      flex: unset;
    }

    & nav {
      height: unset;
      display: flex;
      flex: unset;
      flex-direction: row;
      flex-wrap: nowrap;
      width: 100%;
      gap: 2.337rem;
      align-items: center;
      height: 100%;

      & ul.nav__list {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        column-gap: 0;
        height: 100%;
        margin-block-end: 0;
        padding-inline-start: 0;
        margin-block-start: 0;
        z-index: 2;

        & li.dropdown__item {
          display: flex;
          cursor: pointer;
          flex-shrink: 0;
          height: 100%;
          padding: 0 1.5rem;

          & div.dropdown__button {
            cursor: pointer;
            column-gap: 0.25rem;
            pointer-events: none;

            & a {
              font-size: 14px;
              font-weight: 600;
              color: #393939;
              transition: 0.2s ease-in;
            }
          }

          &:hover div.dropdown__button a {
            color: #6c6c6c;
          }

          & div.dropdown__container {
            height: max-content;
            position: fixed;
            left: 0;
            right: 0;
            top: calc(var(--smallMenu-dektop-height) + var(--header-desktop-height));
            background-color: var(--ss-bg);
            box-shadow: 0 6px 8px hsla(220, 68%, 12%, 0.05);
            pointer-events: none;
            opacity: 0;
            transition: top 0.4s, opacity 0.3s;

            & div.dropdown__content {
              display: grid;
              row-gap: 0;
              grid-template-columns: repeat(5, max-content);
              column-gap: 0;
              max-width: unset;
              margin-inline: auto;
              justify-content: space-around;
              align-items: baseline;

              & div.dropdown__group {
                display: grid;
                margin-top: 1.25rem;
                padding: 3rem 0;
                align-content: baseline;
                row-gap: 1.25rem;

                & a.dropdown__title {
                  font-size: 14px;
                  font-weight: 600;
                  color: #2d2d2c;

                  &:hover {
                    text-decoration: underline;
                    text-underline-offset: 2px;
                  }
                }

                & ul.dropdown__list {
                  display: grid;
                  row-gap: 0.75rem;
                  list-style: none;
                  padding: 0;

                  & li {
                    --shoptet: none;

                    & a.dropdown__link {
                      font-size: 14px;
                      font-weight: 400;
                      color: #666;

                      &:hover {
                        text-decoration: underline;
                        text-underline-offset: 2px;
                      }
                    }
                  }
                }

                & ul.dropdown__list2 {
                  display: grid;
                  row-gap: 0.75rem;
                  list-style: none;
                  padding: 0;

                  & li {
                    --shoptet: none;

                    & a.dropdown__link {
                      font-size: 14px;
                      font-weight: 500;
                      color: #2d2d2c;

                      &:hover {
                        text-decoration: underline;
                        text-underline-offset: 2px;
                      }
                    }
                  }
                }
              }
            }
          }

          &:hover div.dropdown__container {
            opacity: 1;
            z-index: 999;
            pointer-events: initial;
            cursor: initial;
          }
        }
      }

      & div#Searchbar {
        width: 100%;
        justify-content: center;
        position: fixed;
        left: 0;
        top: calc(var(--header-desktop-height) + var(--smallMenu-dektop-height));
        padding: 1rem;
        background-color: white;
        box-shadow: #F2F3F6 0px 1px 0px 0px;
        border-top: solid 1px #F2F3F6;
        display:none;

        & div.search {
          max-width: 450px;
          width: 100%;
          margin:0 auto;
          

          & h2,
          h3 {
            display: none;
          }

          & form {
            position: unset;
            display: flex;
            width: 100%;
            justify-content: center;
            text-align: center;

            & fieldset {
              width: 100%;
            }

            & input {
              height: 40px;
              border: none;
              border-radius: 1rem;
              color: #7A7a7A;
              font-weight: 500;
              font-size: 13px;
              letter-spacing: 0.5px;
              width: 100%;
              transition: .2s ease-in;
              padding-left: 4rem;
              background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="rgba(158,158,158,1)"><path d="M18.031 16.6168L22.3137 20.8995L20.8995 22.3137L16.6168 18.031C15.0769 19.263 13.124 20 11 20C6.032 20 2 15.968 2 11C2 6.032 6.032 2 11 2C15.968 2 20 6.032 20 11C20 13.124 19.263 15.0769 18.031 16.6168ZM16.0247 15.8748C17.2475 14.6146 18 12.8956 18 11C18 7.1325 14.8675 4 11 4C7.1325 4 4 7.1325 4 11C4 14.8675 7.1325 18 11 18C12.8956 18 14.6146 17.2475 15.8748 16.0247L16.0247 15.8748Z"></path></svg>');
              background-repeat: no-repeat;
              background-size: 20px;
              background-position: 10px 10px;
              background-color: #f5f5f5;

              &::placeholder {
                color: #7A7a7A;
              }

              &:focus-visible {
                outline: 0;
                box-shadow: unset;
                outline-offset: 0;
                transition: .2s ease-in;
              }

              &:focus-visible::placeholder {
                color: transparent;
              }
            }

            & button {
              display: none;
            }

            & div.search-whisperer.active {
              max-width: 80vw;
              border: none;
              position: fixed;
              border-radius: 0 0 1.337rem 1.337rem;
              box-shadow: var(--ss-shad2);

              & div.search-whisperer-documents {
                display: none;
              }

              & ul.search-whisperer-products {
                padding: 1.337rem;

                li {
                  border: none;

                  &:nth-child(n+5) {
                    display: none;
                  }

                  & a {
                    border-radius: 1rem;
                    padding: 0.7rem;
                    display: grid;
                    grid-template-columns: max-content;
                    grid-template-rows: auto;
                    grid-gap: 0;

                    &:hover {
                      background-color: #f5f5f5;
                    }
                  }

                  & span.search-whisperer-image {
                    max-width: 80px;
                    background-color: #f7f7f7;
                    border-radius: 0.773rem;
                    transition: .2s ease-in;
                    grid-area: 1 / 1 / 3 / 2;
                    

                    & img {
                      border-radius: 0.773rem;
                      mix-blend-mode: multiply;
                      transition: .2s ease-in;
                    }
                  }

                  & span.p-info{
                    grid-area: 1 / 2 / 2 / 3;
                    padding: 1rem;
                    width: 100%;
                  }

                  & a:hover span.search-whisperer-image {
                    background-color: #fff;
                    transition: .2s ease-in;
                  }

                  & span.p-info span {
                    color: #393939;

                    &.p-availability span {
                      color: #9e9e9e;
                    }
                  }

                  & span.price-final {
                    font-size: 12px;
                    color: #393939;
                    grid-area: 2 / 2 / 3 / 3;
                    width: min-content;
                    white-space: nowrap;
                    padding: 0 1rem;
                  }
                }
              }
            }
          }
        }
      }

      & div.menu {
        display: none;
      }

      & span.navigation-close {
        display: none;
      }

      & .nav__link {
        color: #393939;
        font-weight: 500;
        font-size: 14px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        transition: background-color 0.3s;
        padding: 0;
      }
    }

    & div.menu-helper {
      display: none;
    }

    & div.navigation-buttons {
      padding: 0;
      height: 100%;
      
      &.green-cart {
        background-color: #2a9a88;
        transition:0.2s ease-in;

        &:hover{
          background-color:#258A79;
        }

        & a[data-target="cart"] {
          --shoptet: none;

          &:before {
            color: #fff;
          }

          & i {
            color: #2d2d2c;
            background-color: #fff
          }
        }
      }

      & div.Searchbar__button{
        display: flex;
        height:100%;
        width: 40px;
        justify-content: center;
        align-items: center;
        background-color: #fff;

        &:hover{
          cursor:pointer;
        }

        & i{
          color: #666;
          font-size: 20px;
        }

        &.active{
          background-color:#2a9a88;
          transition:0.2s ease-in;

          & i{
            color:#fff;
          }
        }
      }

      & div.languagesMenu {
        display: none;
      }

      & a[data-target="search"] {
        display: none;
      }

      & .top-nav-button-account {
        display: none;
      }

      & .top-nav-button-login {
        display: none;
      }

      & a[data-target="cart"] {
        height: unset;
        line-height: unset;
        max-width: 50px;

        &:before{
          color:#666;
          vertical-align: unset;
        }

        & span {
          --shoptet: none;
        }

        & i {
          font-size: 10px;
          background-color: #2a9a88;
          bottom: unset;
          top: 0;
        }
      }
    }

    & div.hamburger__container {
      display: none;
    }
  }
}

/* <----- init */

body.type-page.in-hledat header#header {
  height: var(--header-desktop-height);

  &.tucked {
    transform: unset;
  }

  & div.container {
    --shoptet: none;

    & nav {
      --shoptet: none;

      & ul.nav__list {
        display: none;
      }

      & div#Searchbar {
        display: none;
      }
    }
  }

  & div#smallMenu {
    display: none;
  }
}

body.customer-page header#header {
  --shoptet: none;

  & div.container{
    --shoptet: none;

    & div.site-name{
      width:100%;
    }

    & nav{
      display:none;
    }

    & div.navigation-buttons{
      display:none;
    }
  }
}

body.ordering-process header#header {
  --shoptet: none;

  & div.container{
    --shoptet: none;

    & div.site-name{
      width:100%;
    }

    & nav{
      display:none;
    }

    & div.navigation-buttons{
      display:none;
    }
  }
}

/* <---- Checkout */

/* For small devices */

@media screen and (max-width: 999px) {

  body {
    --shoptet: none;

    & div.overall-wrapper {
      margin-top: calc(var(--smallMenu-mobile-height) + var(--header-desktop-height));
    }
  }

  header#header {
    height: calc(var(--header-desktop-height) + var(--smallMenu-mobile-height));

    &.tucked {
      transform: translateY(calc(0px - var(--smallMenu-mobile-height)));
    }

    & div#smallMenu {
      height: var(--smallMenu-mobile-height);
      justify-content: end;

      & div.campaign {
        display:none;
      }
    }

    & div.container {
      justify-content: space-between;
      width: 100%;
      gap: 1rem;

      & div.site-name a img{
        width:110px;
        max-height:unset;
        max-width: unset;
      }
      
      & div.navigation-buttons {
        position: unset;
        flex-shrink:0;

        & div.Searchbar__button{
          display:flex;
        }

        & a[data-target="navigation"] {
          display: none;
        }
      }

      & nav {
        padding-top: 0;
        position: unset;

        & ul.nav__list {
          display: none;
        }

        & div#Searchbar {
          top:calc(var(--header-desktop-height) + var(--smallMenu-mobile-height));
          padding:1rem;

          & div.search {
            margin: 0 auto;
            max-width: 80vw;

            & form {
              --shoptet: none;

              & input {
                font-size: 12px;
              }
            }
          }
        }
      }
    }

    & div.container {
      --shoptet: none;

      & div.hamburger__container {
        display: block;
        padding: 0 1rem;
        margin-bottom: 3px;
      }
    }

    & div.wrapper__hamburger {
      --shoptet: none;

      & .m-menu__toggle {
        cursor: pointer;

        &.close-all {
          z-index: 9999;
        }

        & img {
          width: 20px;
          max-width:unset;
          opacity: 0.65;
        }
      }

      & .m-menu__overlay {
        background-color: rgba(103, 103, 103, 0.5);
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        z-index: 1;
        display: none;

        &.is-open {
          display: block;
        }
      }

      & .m-menu {
        position: fixed;
        top: 0;
        right: 0;
        max-width: 450px;
        width: 100%;
        height: 100%;
        -moz-transform: scaleX(0);
        -o-transform: scaleX(0);
        -ms-transform: scaleX(0);
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        transform-origin: top right;
        -moz-transition: transform 0.15s;
        -o-transition: transform 0.15s;
        -webkit-transition: transform 0.15s;
        transition: transform 0.15s;
        z-index: 1003;
        background-color: #fff;
        max-height: 100vh;

        &.is-open {
          -moz-transform: scaleX(1);
          -o-transform: scaleX(1);
          -ms-transform: scaleX(1);
          -webkit-transform: scaleX(1);
          transform: scaleX(1);
          -moz-transition: transform 0.15s;
          -o-transition: transform 0.15s;
          -webkit-transition: transform 0.15s;
          transition: transform 0.15s;
        }

        & .m-menu__header {
          padding: 0 2rem;
          padding-top: 0.5rem;
          padding-bottom: 0.5rem;
          height: 51px;
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          justify-content: flex-end;
          align-items: center;
          box-shadow: #F2F3F6 0px 1px 0px 0px;

          & h2{
            width:100%;
            font-weight:300;
            font-size:22px;
          }

          & span {
            font-size: 14px;
            width: 100%;
            padding-left: 0.7rem;
            color: #393939;
          }

          & .m-menu__toggle span {
            font-size: 20px;
            font-weight: lighter;
            padding-left: 0rem;

            &.icon {
              width: unset;
            }

            &.popisek {
              font-size: 15px;
              font-weight: normal;
              padding-left: 1rem;
              background: #fff;
              text-transform: none;
            }
          }
        }

        & .m-menu {
          -moz-transform: scaleX(0);
          -o-transform: scaleX(0);
          -ms-transform: scaleX(0);
          -webkit-transform: scaleX(0);
          transform: scaleX(0);
          transform-origin: top right;
          -moz-transition: transform 0.15s;
          -o-transition: transform 0.15s;
          -webkit-transition: transform 0.15s;
          transition: transform 0.15s;

          &.is-open {
            -moz-transform: scaleX(1);
            -o-transform: scaleX(1);
            -ms-transform: scaleX(1);
            -webkit-transform: scaleX(1);
            transform: scaleX(1);
          }

          & .m-menu__toggle {
            display: -ms-flexbox;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            width: 100%;
            border-bottom: 0;
            padding: 0;
            -webkit-box-sizing: content-box;
            -moz-box-sizing: content-box;
            box-sizing: content-box;
          }
        }

        & ul {
          list-style-type: none;
          padding-left: 2rem;
          padding-right: 1rem;
          overflow-x: hidden;
          overflow-y: scroll;

          &.m-menu__dalsi {
            border-top: solid 1px #F2F3F6;

            & li a {
              text-transform: none;
              width: fit-content;
            }
          }

          & li {
            margin: 1.337rem 0;

            & h2 {
              font-weight: 500;
              font-size: 24px;
              padding-bottom: 1rem;
              padding-top: 1rem;
            }

            & h4 {
              font-size: 1.337rem;
              font-weight: normal;
            }

            & span {
              display: block;
              text-align: left;
              line-height: 2.5rem;
              text-decoration: none;
              color: #393939;
              cursor: pointer;
              font-size: 15px;
              position: relative;
              text-transform: uppercase;
              font-weight: 400;

              &.level-2 {
                font-size: 16px;
                color: #666;
                font-weight: 500;
                text-transform: none;

                &.a-label__chevron::after {
                  color: #666;
                }
              }

              &.a-label__chevron::after {
                font-family: 'Material Symbols Rounded';
                content: 'chevron_right';
                position: absolute;
                top: 50%;
                right: 8px;
                transform: translateY(-50%);
                font-size: 25px;
                line-height: 1;
                color: #666;
                font-weight: 200;
              }
            }

            & a {
              display: block;
              text-align: left;
              line-height: 2.5rem;
              text-decoration: none;
              color: #393939;
              cursor: pointer;
              position: relative;
              text-transform: uppercase;
              font-weight: 400;
              width: fit-content;
              font-size: 15px;

              &.level-2 {
                font-size: 16px;
                color: #666;
                font-weight: 500;
                text-transform: none;

                &.a-label__chevron::after {
                  color: #666;
                }
              }
            }

            & .-invisible {
              border-bottom: 0;
            }
          }
        }
      }

      & .material-symbols-rounded {
        font-size: 22px;
        color: #2d2d2c;
        line-height: 1;
        user-select: none;
      }
    }
  }
}

/* For large devices */

@media screen and (min-width: 999px) {
  .nav__toggle {
    display: none !important;
  }
}

@keyframes slide-in {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }

  60% {
    opacity: 1;
    transform: translateY(10%);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slide-out {
  0% {
    opacity: 1;
    transform: translateY(0);
  }

  60% {
    opacity: 0;
    transform: translateY(120%);
  }

  100% {
    opacity: 0;
    transform: translateY(100%);
  }
}