.modal{display:none;position:fixed;z-index:1;padding-top:48px;left:0;top:0;width:100%;height:100%;overflow:auto; background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4);;}
.modal-content{background-color:#fefefe;margin:auto;border:0px solid #b2e8ff;width:90%;}
.modal-header{background-color:var(--lvl1-bg-color3);min-height:30px;padding:10px;font-weight:bold;}
.modal-body{background-color:#fff;padding:8px;position:relative;}
.modal-footer{background-color:var(--lvl1-bg-color3);min-height:20px;padding:10px;}
.modal-close{color:var(--lvl1-link-color);float:right;font-size:32px;font-weight:bold;position:relative;top:-16px;right:-16px;background:#fff;border-radius:50%;width:32px;height:32px;text-align:center;border:2px solid var(--lvl1-border-color2);line-height:28px;}
.modal-close:hover, .modal-close:focus{color:#ff0000;text-decoration:none;cursor:pointer;}
.modal-nav-left{position:absolute;color:var(--lvl1-link-color);top:0px;left:20px;font-size:24px;font-weight:bold;}
.modal-nav-right{position:absolute;color:var(--lvl1-link-color);top:0px;right:20px;font-size:24px;font-weight:bold;}
.ratings{overflow:visible;padding:1px;position:relative;width:180px;}
.ratings_stars{background:url('star_blank.png') no-repeat;float:left;height:32px;padding:0px 2px;width:32px;}
.ratings_vote{background:url('star_voted.png') no-repeat;}
.ratings_over{background:url('star_overs.png') no-repeat;}
.container{position:relative;width:236px;}
.overlay{position:absolute;top:0;bottom:0;left:0;right:0;opacity:0;transition:.5s ease;}
.overlay2{position:absolute;top:0;bottom:0;left:0;right:0;height:100%;width:100%;opacity:1;transition:.5s ease;}
.container:hover .overlay{opacity:1;}
.heartbox{position:absolute;top:16px;right:16px;}
.f1_container{position:relative;margin:5px 5px;min-width:220px;border:0px solid #000;}
.face{position:absolute;width:100%;height:100%;backface-visibility:hidden;}
.face.front{font-size:28px;font-family:'Averia Sans Libre';}
.face.back{display:block;transform:rotateY(180deg);box-sizing:border-box;padding:10px;color:#444;background-color:#fff;}
.backhead{font-size:16px;font-family:monospace;font-weight:bold;padding-left:10px;}
.backdescription{margin:2px;}
.backfooter,.backfooter a{text-align:right;color:#ff0000;padding-top:5px;}
.bx-wrapper{position:relative;margin:0 auto 60px;padding:0;*zoom:1;}
.bx-wrapper img{max-width:100%;display:block;}
.bx-wrapper .bx-viewport{-moz-box-shadow:0 0 5px #ccc;-webkit-box-shadow:0 0 5px #ccc;box-shadow:0 0 5px #ccc;border:5px solid #fff;left:-5px;background:#fff;-webkit-transform:translatez(0);-moz-transform:translatez(0);-ms-transform:translatez(0);-o-transform:translatez(0);transform:translatez(0);}
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto{position:absolute;bottom:-30px;width:100%;}
.bx-wrapper .bx-loading{min-height:50px;background:url(images/bx_loader.gif) center center no-repeat #fff;height:100%;width:100%;position:absolute;top:0;left:0;z-index:2000;}
.bx-wrapper .bx-pager{text-align:center;font-size:.85em;font-family:Arial;font-weight:bold;color:#666;padding-top:20px;}
.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item{display:inline-block;*zoom:1;*display:inline;}
.bx-wrapper .bx-pager.bx-default-pager a{background:#666;text-indent:-9999px;display:block;width:10px;height:10px;margin:0 5px;outline:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active{background:#000;}
.bx-wrapper .bx-prev{left:10px;background:url(images/controls.png) no-repeat 0 -32px;}
.bx-wrapper .bx-next{right:10px;background:url(images/controls.png) no-repeat -43px -32px;}
.bx-wrapper .bx-prev:hover{background-position:0 0;}
.bx-wrapper .bx-next:hover{background-position:-43px 0;}
.bx-wrapper .bx-controls-direction a{position:absolute;top:50%;margin-top:-16px;outline:0;width:32px;height:32px;text-indent:-9999px;z-index:9999;}
.bx-wrapper .bx-controls-direction a.disabled{display:none;}
.bx-wrapper .bx-controls-auto{text-align:center;}
.bx-wrapper .bx-controls-auto .bx-start{display:block;text-indent:-9999px;width:10px;height:11px;outline:0;background:url(images/controls.png) -86px -11px no-repeat;margin:0 3px;}
.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active{background-position:-86px 0;}
.bx-wrapper .bx-controls-auto .bx-stop{display:block;text-indent:-9999px;width:9px;height:11px;outline:0;background:url(images/controls.png) -86px -44px no-repeat;margin:0 3px;}
.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active{background-position:-86px -33px;}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager{text-align:left;width:80%;}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto{right:0;width:35px;}
.bx-wrapper .bx-caption{position:absolute;bottom:0;left:0;background:#666\9;background:rgba(80, 80, 80, 0.75);width:100%;}
.bx-wrapper .bx-caption span{color:#fff;font-family:Arial;display:block;font-size:.85em;padding:10px;}
.sticky{position:fixed;top:0;width:100%}

/*page preloader*/
#preloader {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background-color:var(--lvl0-color);
  display:flex;
  justify-content: center;
  align-items: center;
  z-index: 99;
  /* makes sure it stays on top */
}
#preloader .spinner {
  margin: auto auto;
  width: 80px;
  height: 80px;
  position: relative;
  text-align: center;
  -webkit-animation: sk-rotate 2.0s infinite linear;
  animation: sk-rotate 2.0s infinite linear;
}
#preloader .dot1, #preloader .dot2 {
  width: 60%;
  height: 60%;
  display: inline-block;
  position: absolute;
  top: 90;
  background-color:var(--lvl0-alt-color);
  border-radius: 100%;
  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
  animation: sk-bounce 2.0s infinite ease-in-out;
}
#preloader .dot2 {top: auto; bottom: 0; -webkit-animation-delay: -1.0s; animation-delay: -1.0s;}
@-webkit-keyframes sk-rotate { 100% { -webkit-transform: rotate(360deg) }}
@keyframes sk-rotate { 100% { transform: rotate(360deg); -webkit-transform: rotate(360deg) }}
@-webkit-keyframes sk-bounce {0%, 100% { -webkit-transform: scale(0.0) }  50% { -webkit-transform: scale(1.0) }}
@keyframes sk-bounce {0%, 100% {transform: scale(0.0);-webkit-transform: scale(0.0); } 50% {transform: scale(1.0); -webkit-transform: scale(1.0);}}

#preloader .content {
  text-align: center;
  top:70vh;
  position: absolute;
  color:var(--lvl0-alt-color);
  font-size:24px;
}
#preloader .content .sign {
  letter-spacing: 2;  
  text-shadow: 0 0 0.4rem #ffe6ff, 0 0 0.5rem var(--lvl0-alt-color),
    -0.2rem 0.1rem 1rem var(--lvl0-alt2-color), 0.2rem 0.1rem 1rem var(--lvl0-alt-color),
    0 -0.5rem 2rem var(--lvl0-alt2-color), 0 0.5rem 3rem var(--lvl0-alt2-color);
  animation: shine 2s forwards, flicker 3s infinite;
}

@keyframes blink {
  0%,
  22%,
  36%,
  75% {
    color: #ffe6ff;
    text-shadow: 0 0 0.4rem #ffe6ff, 0 0 1.0rem var(--lvl0-alt-color),
      -0.2rem 0.1rem 1rem var(--lvl0-alt-color), 0.2rem 0.1rem 1rem var(--lvl0-alt-color),
      0 -0.5rem 2rem var(--lvl0-alt2-color), 0 0.5rem 3rem var(--lvl0-alt2-color);
  }
  28%,
  33% {
    color: var(--lvl0-alt-color);
    text-shadow: none;
  }
  82%,
  97% {
    color: var(--lvl0-alt2-color);
    text-shadow: none;
  }
}

#preloader .slow-flicker {
  animation: shine 1s forwards, blink 2s 1s infinite;
}

#preloader .flicker {
  animation: shine 1s forwards, blink 1.5s 1s infinite;
}

#preloader .fast-flicker {
  animation: shine 1s forwards, blink 1s 0s infinite;
}

@keyframes shine {
  0% {
    color: #6b1839;
    text-shadow: none;
  }
  100% {
    color: #ffe6ff;
    text-shadow: 0 0 0.2rem #ffe6ff, 0 0 0.5rem var(--lvl0-alt-color),
      -0.2rem 0.1rem 1rem var(--lvl0-alt-color), 0.2rem 0.1rem 1rem var(--lvl0-alt-color),
      0 -0.5rem 2rem var(--lvl0-alt2-color), 0 0.4rem 2rem #ff2483;
  }
}

@keyframes flicker {
  from {
    opacity: 1;
  }

  4% {
    opacity: 0.9;
  }

  6% {
    opacity: 0.85;
  }

  8% {
    opacity: 0.95;
  }

  10% {
    opacity: 0.9;
  }

  11% {
    opacity: 0.922;
  }

  12% {
    opacity: 0.9;
  }

  14% {
    opacity: 0.95;
  }

  16% {
    opacity: 0.98;
  }

  17% {
    opacity: 0.9;
  }

  19% {
    opacity: 0.93;
  }

  20% {
    opacity: 0.99;
  }

  24% {
    opacity: 1;
  }

  26% {
    opacity: 0.94;
  }

  28% {
    opacity: 0.98;
  }

  37% {
    opacity: 0.93;
  }

  38% {
    opacity: 0.5;
  }

  39% {
    opacity: 0.96;
  }

  42% {
    opacity: 1;
  }

  44% {
    opacity: 0.97;
  }

  46% {
    opacity: 0.94;
  }

  56% {
    opacity: 0.9;
  }

  58% {
    opacity: 0.9;
  }

  60% {
    opacity: 0.99;
  }

  68% {
    opacity: 1;
  }

  70% {
    opacity: 0.9;
  }

  72% {
    opacity: 0.95;
  }

  93% {
    opacity: 0.93;
  }

  95% {
    opacity: 0.95;
  }

  97% {
    opacity: 0.93;
  }

  to {
    opacity: 1;
  }
}
.scrollmenuhoriz {
  overflow: auto;
  white-space: nowrap;
}

.scrollmenuhoriz a {
	display:inline-block;
	padding:8px;
	
}

@keyframes changewidth {
  from {
    transform: scaleX(0.95);
  }
  to {
    transform: scaleX(1.1);
	box-shadow: 5px 5px #888888;
  }
}

.anim_change_width {
  animation-duration: 4s;
  animation-name: changewidth;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

.anim_change_width_reverse {
  animation-duration: 4s;
  animation-name: changewidth;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
  animation-delay: -4s;
}

@keyframes circle_border_rotate{
  0% {
    transform: rotate(0deg);
  }
  100% {
   transform: rotate(360deg);
  }
}
.anim_circle_border_rotate {
	animation: circle_border_rotate 18s ease infinite alternate-reverse;
}

/*blink*/
@keyframes blinker_text { 
	0% {
        opacity: 1;
    }
    25% {
        opacity: 1;
    }
    50% {
        opacity: 1;
    }
    75% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    } }
.blinker_text{animation: blinker_text 2s step-end infinite alternate;}

/*item image preview*/
.item-image-preview {
    float: left;
    padding: 0px 0px 4px 4px;
	min-height:200px;
}
.item-image-preview img {
    width: 100%;
    max-width: 320px;
    height: auto;
	border-radius:12px;
}
.item-image-preview img.thumbnail {
    width: 50px;
    height:50px;	
	margin-bottom: 8px;
    padding: 5px;
	border: 1px solid #ccc;
	object-fit: contain;
	float:left;
	margin-right:4px;
}
.item-image-preview img.item_img_thumb_focus {
    border: var(--lvl1-border-color4) 2px solid;
}
.item-image-view {
    border: #CCC 0px solid;
    overflow: auto;
    display: inline-block;
    padding-top: 8px;
    margin-top:4px;
    text-align:left;
	margin-right:4px;
}
#item-image-thumbnail-container,#variant-image-thumbnail-container {
    width: 60px;
    float: left;
}
#item-image-preview-enlarged,#variant-image-preview-enlarged {
    float: right;
	width:320px;
}
#item-image-preview-enlarged img,#variant-image-preview-enlarged img {
	object-fit: contain;
	max-height:360px;
}

@media screen and (max-width: 600px) {
  
  /*flexible responsive table*/
  .tbl_flx {
    border: 0;
  }

  .tbl_flx thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  
  .tbl_flx tr {
    border-bottom: 3px solid #ddd;
    display: block;
    margin-bottom: .625em;
  }
  
  .tbl_flx td, .tbl_flx tfoot td {
    border-bottom: 1px solid #ddd;
    display: block;
    text-align: right;
  }
  
  .tbl_flx td::before, .tbl_flx tfoot td::before {
    /*
    * aria-label has no advantage, it won't be read inside a table
    content: attr(aria-label);
    */
    content: attr(data-label);
    float: left;
    font-weight: bold;
    /*text-transform: uppercase;*/
  }
  
  .tbl_flx tfoot td:empty {
	  display: none;
	}
	  
  .tbl_flx td:last-child, .tbl_flx tfoot td:last-child {
    border-bottom: 0;
  }
}

@media screen and (max-width: 1060px) {
	#item-image-preview-enlarged,#variant-image-preview-enlarged {
		float: none;
	}
	#item-image-thumbnail-container,#variant-image-thumbnail-container {
		width: auto;
		margin-top: 10px;
	}
}
.rotate_right {
  float: left;
  -ms-transform: rotate(4deg); /* IE 9 */
  -webkit-transform: rotate(4deg); /* Safari */
  transform: rotate(4deg);
}

.rotate_left {
  float: left;
  -ms-transform: rotate(-5deg); /* IE 9 */
  -webkit-transform: rotate(-5deg); /* Safari */
  transform: rotate(-5deg);
}
.video-responsive{
    overflow:hidden;
    padding-bottom: calc(var(--aspect-ratio, .5625) * 100%);
    position:relative;
    height:0;
}
.video-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}
.zoom {overflow: hidden;}
.zoom img {
	/*width: inherit;*/
	transition: 0.8s all ease-in-out;
}
   
.zoom:hover img {
	transform: scale(1.2);
}
.carousel-container{
	position: relative;
}
.carousel-container .carousel-control{
	position: absolute;
	top: 50%;
	z-index:2;
	display: inline-block;
	background:#e0e0e0;
	color:#505050;
	width:40px; height:40px;
	border-radius:50%;
	text-align:center;
	font-weight:bold;
	vertical-align:middle;
	font-size:24px;
	opacity:0.6;
}
.carousel-container .carousel-control:hover{
	background:#b0b0b0;
	color:#f0f0f0;
}
.carousel-container .carousel-control.left{
	left:4px;	
}
.carousel-container .carousel-control.right{
	right:4px;
}

/* image slide show */
.img_slide_show {display: none;}
/* Slideshow container */
.img_slide_show-container {
  position: relative;
  margin: auto;
}

/* Caption text */
.img_slide_show .text {
  color: #f2f2f2;
  font-size: 15px;
  padding: 8px 12px;
  position: absolute;
  bottom: 8px;
  width: 100%;
  text-align: center;
  text-shadow:2px 2px #000;
}

/* Number text (1/3 etc) */
.img_slide_show .numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.img_slide_show_dot {
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #c0c0c0;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.img_slide_show_active {
  background-color: #555;
}

/* Fading animation */
.fade {
  animation-name: fade;
  animation-duration: 3s;
}

@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

.text_overflow{white-space:nowrap;overflow:hidden; text-overflow:ellipsis;	}
.text_overflow:hover{white-space:normal;overflow:visible;}