/* Reset CSS */
@font-face {
  font-family: 'ibm_plex_arabiclight';
  src: url("../fonts/ibmplexarabic-light-webfont.woff2") format("woff2"), url("../fonts/ibmplexarabic-light-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'ibm_plex_devanagariregular';
  src: url("../fonts/ibmplexdevanagari-regular-webfont.woff2") format("woff2"), url("../fonts/ibmplexdevanagari-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

* {
  padding: 0;
  margin: 0;
  font-size: 1.5vw;
  line-height: 1.75vw;
  box-sizing: border-box;
}

html, body{
  width: 100%;
  height: 100%;
  background-color: black;
  font-family: 'ibm_plex_arabiclight';
  z-index: 1;
  padding: 0;
  margin: 0;
}
body{
  opacity: 0;
}

canvas{
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1 !important;
  background-color: black;
}

h1, h1 em, h2, h2 em, h3, h3 em {
  font-weight: normal;
  font-size: 3vw;
  line-height: 3vw;
}

a {
  color: black;
  text-decoration: none;
  font-weight: 300 !important;
  font-style: italic;
}

a.long {
  word-break: break-all;
}

a:hover {
  color: black;
  font-style: normal;
}

a:visited {
  color: black;
}

.main {
  z-index: 88;
  width: 100vw;
  height: 100vh;
  padding: 0.5vw;
  position: fixed;
  background-color: none;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
.footer-item{
  cursor: pointer;
}
.grid2{
  width: 100%;
}
.grid-menu{
  opacity: 0;
  pointer-events: none;
}

.zoomOut{
  transform: scale(0.01);
  transition: transform 1s ease-in-out;
}
.zoomIn{
  transform: scale(1);
  transition: transform 1s ease-in-out;
}
.contact-item p, .contact-item a{
  font-size: 3vw;
  line-height: 3vw;
}
.contact-item a{
  /* border-bottom: 0;
  text-decoration: underline;
  text-decoration-style: wavy; */
}
.inner > div{
  overflow: hidden;
}
.zoomOut > .inner div{
  opacity: 0;
  transition: opacity 0.25s ease-in-out;
}
.zoomIn > .inner div{
  opacity: 1;
  transition: opacity 0.25s ease-in-out;
}
/* .trans{
  transition: transform 0s !important;
} */
.no-trans{
  transition: transform 0s ease-in-out !important;
}
.stayScaled{
  transform: scale(0.01) !important;
  transition: transform 0s ease-in-out !important;
}

.grid-item .inner {
  padding: 1vw;
  border-radius: 1vw;
  margin: 0.5vw;
  background-color: white;
}

.menu {
  z-index: 99;
  top: 1vw;
  left: 2vw;
  position: fixed;
  width: 75vw;
  pointer-events: none;
}
.menu p{
  cursor: pointer;
  pointer-events: auto;
}

.grid-item .menu-item, .footer-item {
  padding: 0.5vw;
}

.menu-item {
  font-size: 1.75vw;
  line-height: 3vw !important;
  display: inline-block;
  vertical-align: top;
  float: left;
  width: 24.75vw;
  margin-bottom: 1vw;
  height: 6vw;
}
.footer-item {
  font-size: 1.75vw;
  line-height: 3vw !important;
  display: inline-block;
  vertical-align: top;
  float: left;
  width: 24.75vw;
  margin-bottom: 1vw;
  height: auto;
}

.footer-item, .menu-item, .menu-item > * {
  color: white;
  text-shadow: 0px 0px 4px #000000;
}

.grid-sizer,
.grid-item {
  width: calc(25% - 0.25vw);
}
.gutter-sizer {
  width: 0.25vw;
}
.grid-item-width2 {
  width: calc(50% - 0.25vw);
}
.grid-item-width3 {
  width: calc(75% - 0.25vw);
}
.grid-seperator {
  display: block;
  width: calc(100% - 0.25vw);
}

h2, .hoch {
  display: inline-block;
}

.zoomed {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  position: absolute;
  margin: auto !important;
  zoom: 2%;
}

.cursor img {
  display: none;
  width: 100%;
}

.grid1 {
  bottom: 0;
  right: 0;
  position: fixed;
}

/* PRODUCT */
.slideshow, .image {
  width: 100%;
  height: auto;
  overflow: hidden;
}
.image {
  width: 100%;
}
.content-wrapper{
  height: auto;
}
.grid-item-width2 .content-wrapper{
  height: 36vw;
}
.product-video{
  display: none;
  position: relative;
}
.product-audio{
  display: none;
}
audio{
  width: 100%;
}
button.read{
  background-color: transparent;
  font-weight: 300;
  border: 0;
}
button.read:hover{
  border-bottom: 1px solid;
  background-color: white !important;
  color: black !important;
  display: inline;
}
button.controls{
  cursor: pointer;
  width: calc(10vw - 0.3vw);
  text-align: center;
  border: 0.1vw solid black;
  position: absolute;
  left: 0;
  right: 0;
  top: -3vw;
  bottom: 0;
  z-index: 999;
  height: 3.5vw;
  line-height: 4.25vw;
  margin: auto;
  background-color: transparent;
  display: none;
}
.grid-item-width2 button.controls{
  width: calc(22vw - 0.3vw);
  top: 0;
}
button.controls h2{
  font-weight: 300;
}
button.controls:hover{
  color: white;
  border-color: white;
  background-color: transparent;
}
video{
  width: 100%;
  margin-bottom: 0.5vw;
}
button:focus {
  outline:0;
}
 /* audio player  */

 .holder {
   display: flex;
   flex-direction: column;
   align-items: center;
 }

 .audio.green-audio-player {
   width: 100%;
   height: 56px;
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding-left: 4px;
   padding-right: 4px;
   border-radius: 4px;
   user-select: none;
   -webkit-user-select: none;
   background-color: #fff;
 }
 .audio.green-audio-player .play-pause-btn {
   cursor: pointer;
 }
 .audio.green-audio-player .spinner {
   width: 18px;
   height: 18px;
   background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/355309/loading.png);
   background-size: cover;
   background-repeat: no-repeat;
   animation: spin 0.4s linear infinite;
 }
 .audio.green-audio-player .slider {
   flex-grow: 1;
   background-color: #000;
   cursor: pointer;
   position: relative;
 }
 .audio.green-audio-player .slider .progress {
   background-color: #000;
   border-radius: inherit;
   position: absolute;
   pointer-events: none;
 }
 .audio.green-audio-player .slider .progress .pin {
   height: 16px;
   width: 16px;
   border-radius: 8px;
   background-color: #000;
   position: absolute;
   pointer-events: all;
   box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.32);
 }
 .audio.green-audio-player .controls {
   display: flex;
   flex-grow: 1;
   justify-content: space-between;
   align-items: center;
   margin-left: 4px;
   margin-right: 4px;
 }
 .audio.green-audio-player .controls .slider {
   margin-left: 16px;
   margin-right: 16px;
   border-radius: 2px;
   height: 1px;
 }
 .audio.green-audio-player .controls .slider .progress {
   width: 0;
   height: 100%;
 }
 .audio.green-audio-player .controls .slider .progress .pin {
   right: -8px;
   top: -6px;
 }
 .audio.green-audio-player .controls span {
   cursor: default;
 }
 .audio.green-audio-player .volume {
   position: relative;
 }
 .audio.green-audio-player .volume .volume-btn {
   cursor: pointer;
 }
 .audio.green-audio-player .volume .volume-btn.open path {
   fill: #000;
 }
 .audio.green-audio-player .volume .volume-controls {
   width: 30px;
   height: 135px;
   background-color: rgba(0, 0, 0, 0.62);
   border-radius: 7px;
   position: absolute;
   left: -3px;
   bottom: 52px;
   flex-direction: column;
   align-items: center;
   display: flex;
 }
 .audio.green-audio-player .volume .volume-controls.hidden {
   display: none;
 }
 .audio.green-audio-player .volume .volume-controls .slider {
   margin-top: 12px;
   margin-bottom: 12px;
   width: 6px;
   border-radius: 3px;
 }
 .audio.green-audio-player .volume .volume-controls .slider .progress {
   bottom: 0;
   height: 100%;
   width: 6px;
 }
 .audio.green-audio-player .volume .volume-controls .slider .progress .pin {
   left: -5px;
   top: -8px;
 }
 svg, img {
   display: block;
 }
 @keyframes spin {
   from {
     transform: rotateZ(0);
   }
   to {
     transform: rotateZ(1turn);
   }
 }






.slideshow div, .image > div:first-child  {
  background-position: center;
  background-size: cover;
  width: 100%;
  margin-bottom: 0.5vw;
  height: 16vw;
  display: inline-block;
  float: left;
}
.grid-item-width2 .slideshow div{
  background-position: center;
  background-size: cover;
  width: 100%;
  margin-bottom: 0.5vw;
  height: 30vw;
  display: inline-block;
  float: left;
}
.grid-item-width2 .image > div:first-child {
  background-position: center;
  background-size: cover;
  width: 100%;
  margin-bottom: 1vw;
  height: 30vw;
  display: inline-block;
  float: left;
}
.slick-dots {
  float: right;
  width: 11.25vw;
  margin-right: -0.25vw;
  margin-left: -0.25vw;
}
.product-item .slick-dots {
  float: right;
  width: 11.25vw;
  margin-right: -0.25vw;
  margin-left: -0.25vw;
}
.slideshow.single .slick-dots {
  float: left;
  width: 11.25vw;
  margin-right: -0.25vw;
  margin-left: -0.25vw;
}

.slick-dots li {
  float: left;
  list-style: none;
  display: inline-block;
}

.slick-dots button {
  cursor: pointer;
  line-height: 2.2vw;
  text-align: center;
  display: inline-block;
  margin-right: 0;
  margin-left: 0.25vw;
  width: 2.5vw;
  height: 2.5vw;
  border: 0.1vw solid black;
  border-radius: 10vw;
  outline: none;
  background-color: white;
}

.buttonwrapper {
  margin-top: 0;
  float: left;
}

.buttonwrapper div {
  cursor: pointer;
  width: 10.2vw;
  margin-right: 1vw;
  text-align: center;
  display: inline-block;
  border: 0.1vw solid black;
  height: 2.25vw;
  line-height: 2.6vw;
}

.buttonwrapper {
  margin-top: -2.5vw;
  float: left;
}

.price, .buy {
  height: 3.5vw;
  line-height: 4.25vw;
  margin-top: 1vw;
  width: 22vw;
}

.buy {
  cursor: pointer;
  width: calc(22vw - 0.3vw);
  margin-bottom: 0.1vw;
  border: 0.1vw solid black;
}

.buy .button a, .buy .button a:hover{
  font-style: normal;
  font-size: 3vw;
  line-height: 4vw;
}

.productdescription {
  margin-top: 0.75vw;
  transition: none !important;
  position: relative;
  display: inline-block;
  width: 100%;
}
.productdescription p {
  display: inline;
}
.excerpt{
  display: none;
  transition: none !important;
}
.full{
  display: none;
  transition: none !important;
}
.showww{
  display: block;
}
/* PRODUCT */
/* .grid-item-width2 .productdescription {
  margin-top: -1vw;
} */

.grid-item-width2 .hoch {
  margin-left: 1vw;
  vertical-align: top;
}

.grid-item-width2 .slideshow {
  width: 100%;
  height: 35vw;
  overflow: hidden;
}

.grid-item-width2 .slideshow div {
  background-position: center;
  background-size: cover;
  width: 46.5vw;
  margin-bottom: 0.5vw;
  height: 30vw;
  display: inline-block;
  float: left;
}

.slick-arrow {
  display: none !important;
}

.grid-item-width2 .slick-dots {
  float: right;
  width: 11.25vw;
}

.grid-item-width2 .slick-dots li {
  float: left;
  list-style: none;
  display: inline-block;
}

.grid-item-width2 .slick-dots button {
  cursor: pointer;
  line-height: 2.2vw;
  text-align: center;
  display: inline-block;
  margin-right: 0;
  margin-left: 0.25vw;
  width: 2.5vw;
  height: 2.5vw;
  border: 0.1vw solid black;
  border-radius: 10vw;
  outline: none;
}

.slick-active button {
  font-weight: normal;
  color: white;
  background-color: black;
}

button:hover, .buttonwrapper div:hover{
  color: white;
  background-color: black;
}
.btn-active{
  color: white;
  background-color: black;
}

.grid-item-width2 .buttonwrapper {
  margin-top: -2.5vw;
  float: left;
}

.grid-item-width2 .buttonwrapper div {
  cursor: pointer;
  width: 10.2vw;
  margin-right: 1vw;
  text-align: center;
  display: inline-block;
  border: 0.1vw solid black;
  height: 2.25vw;
  line-height: 2.6vw;
}

.grid-item-width2 .price, .grid-item-width2 .buy {
  height: 3.5vw;
  line-height: 4.25vw;
  margin-top: 1vw;
}

.grid-item-width2 .buy {
  cursor: pointer;
  float: right;
  /* width: calc(23vw - 0.3vw); */
  text-align: center;
}

.text .slick-dots {
  float: left;
}

.text h2 {
  margin-bottom: 0.5vw;
}

.text p {
  margin-bottom: 1vw;
}
p.imprint, p.data-privacy{
  padding-left: 1vw;
}

/* Media Queries */
@media screen and (max-width: 900px) {
  *{
    font-size: 3.5vw;
    line-height: 3.75vw;
  }
  .grid-menu{
    display: none;
  }
  .menu{
    width: 100vw;
    left: 0;
    top: 0;
    padding: 3vw;
    height: 22.25vh;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+87,000000+100&1+86,0+100 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,1) 86%, rgba(0,0,0,0.93) 87%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,1) 86%,rgba(0,0,0,0.93) 87%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,1) 86%,rgba(0,0,0,0.93) 87%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
  }
  .menu-item {
    width: 50%;
    height: auto;
    overflow: hidden;
    display: inline-block;
    float: right;
    text-align: right;
    margin-bottom: 0;
    right: 0;
  }
  .menu-item:first-child {
    width: 50%;
    height: auto;
    overflow: hidden;
    float: left;
    text-align: left;
    height: 20vw;
  }
  .menu-item p{
    font-size: 3.25vh;
    line-height: 3.75vh;
  }
  .main{
    height: 81vh;
    width: 98vw;
    margin: 1vw;
    top: 19vh;
    left: 0;
    padding-bottom: 140px;
  }
  .grid2{
    width: 100%;
    left: 0;
  }
  .grid-sizer,
  .grid-item, .grid-item-width2 {
    width: 100%;
  }
  .gutter-sizer {
    width: 0.25vw;
  }
  h1, h1 em, h2, h2 em, h3, h3 em {
    font-size: 6vw;
    line-height: 6vw;
  }
  .grid-item .inner {
    padding: 2vw;
    border-radius: 2vw;
    margin: 0.5vw;
  }
  .grid-item .buttonwrapper div, .grid-item-width2 .buttonwrapper div {
    cursor: pointer;
    width: 20.2vw;
    margin-right: 1vw;
    text-align: center;
    display: inline-block;
    border: 0.2vw solid black;
    height: 5.25vw;
    line-height: 5.9vw;
  }
  .grid-item .slick-dots , .grid-item-width2 .slick-dots {
    width: 23.25vw;
  }
  .grid-item .slick-dots button , .grid-item-width2 .slick-dots button {
    width: 5.25vw;
    height: 5.25vw;
    border: 0.2vw solid black;
  }
  .grid-item .slideshow , .grid-item-width2 .slideshow {
    width: 100%;
    height: auto;
    overflow: hidden;
  }
  .grid-item .content-wrapper, .grid-item-width2 .content-wrapper {
    height: auto;
    min-height: 73vw;
  }
  .slideshow div, .image > div:first-child  {
    background-position: center;
    background-size: cover;
    width: 100%;
    margin-bottom: 1.5vw;
    height: 32vw;
    display: inline-block;
    float: left;
  }
  .grid-item .slideshow div, .grid-item-width2 .slideshow div{
    background-position: center;
    background-size: cover;
    width: 100%;
    margin-bottom: 1.5vw;
    height: 60vw;
    display: inline-block;
    float: left;
  }
  .price, .grid-item .buy, .grid-item-width2 .buy {
    line-height: 8.25vw;
  }
  .grid-item .buy, .grid-item-width2 .buy {
    width: calc(41vw - 0.3vw);
    cursor: pointer;
    float: right;
    text-align: center;
  }
  .grid-item .price, .grid-item .buy, .grid-item-width2 .price, .grid-item-width2 .buy {
    height: 7.5vw;
    line-height: 8.25vw;
    margin-top: 1vw;
  }
  .grid-item .productdescription, .grid-item-width2 .productdescription {
    margin-top: 2vw;
    margin-bottom: 1vw;
  }
  .grid-item .image > div:first-child, .grid-item-width2 .image > div:first-child {
    background-position: center;
    background-size: cover;
    width: 100%;
    margin-bottom: 0.5vw;
    height: 60vw;
    display: inline-block;
    float: left;
  }
  .grid-item .hoch {
    margin-left: 1vw;
    vertical-align: top;
  }
  h2, .hoch{
    display: inline;
  }
  .slideshow.single .slick-dots {
    float: left;
    width: 30.25vw;
    margin-right: -0.25vw;
    margin-left: -0.25vw;
  }
  .grid-item-width2 .buttonwrapper, .grid-item .buttonwrapper{
    margin-top: -5vw;
    width: 75%;
    height: 5vw;
  }
  .contact-item p, .contact-item a {
    font-size: 6vw;
    line-height: 6vw;
  }
  .text p{
    margin-bottom: 0;
  }
  ul li {
    display: table-cell;
    vertical-align: top;
  }
  button{
    display: table-cell;
    vertical-align: top;
  }
  input {
    border-radius: 0;
  }
  .footer-item{
    width: 98vw;
  }
  p.data-privacy, p.imprint{
    font-size: 3.25vh;
    line-height: 3.75vh;
  }
  button.controls{
    height: 9.5vw;
    width: 30.5vw;
  }
  .buttonwrapper button:hover, .buttonwrapper div:hover {
    color: black;
    background-color: white;
  }
  .btn-active{
    color: white !important;
    background-color: black !important;
  }
  button.controls{
    display: block;
    opacity: 1;
  }
  .newsseperator{
    padding-top: 7vw;
  }
  .slick-dots {
    float: right;
    height: 5.25vw;
    margin-right: -0.25vw;
    margin-left: -0.25vw;
  }
  .product-item .slick-dots {
    float: right;
    height: 5.25vw;
    margin-right: -0.25vw;
    margin-left: -0.25vw;
  }
  .buy .button a, .buy .button a:hover {
    font-style: normal;
    font-size: 6vw;
    line-height: 8.8vw;
  }
}
