:root {
	--button_color: #00b8b6;
	--button_color_2: #00b8b6;
	--button_color_hover: #02d0ce;
	--button_color_active: #00b8b6;
	--main-color: #00b8b6;
	/* Leuchtende Farbe */
	--laser-glow: rgba(0, 184, 182, 0.6);
	/* Gl�hen des Lasers */
	/* BUTTON SHINE */
	--shine-transition: all 0.65s ease-in-out;
	--shine-degree: 120deg;
	--shine-color: rgba(255, 255, 255, 0.4);
	--shine-effect: linear-gradient(var(--shine-degree), transparent, var(--shine-color), transparent);
}


.hidden{
	display: none !important;
}


#navigation {
	/* display: none; */
	z-index: 999 !important;
	justify-content: space-around;
}

.loader,
.loader_small {
	top: calc(50% - 25px);
	left: calc(50% - 25px);
	transform: translate(50%, 50%);
	z-index: 1;
	border: 5px solid #bdf8f7;
	border-radius: 50%;
	border-top: 5px solid #00cbc8;
	width: 40px;
	height: 40px;
	-webkit-animation: spin 0.8s linear infinite;
	animation: spin 0.8s linear infinite;
	position: absolute;
	display: inline-block;
}

.loader_small {
	top: calc(50% - 27px);
	left: calc(50% - 15px);
	transform: translate(50%, 50%);
	width: 20px;
	height: 20px;
	z-index: 1;
}

@-webkit-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/*
#ar_live_image {
	transition: all 3s ease;
	-ms-transition: 3s ease;
	-webkit-transition: 3s ease;
	-moz-transition: 3s ease;
	-o-transition: 3s ease;
}
*/

.image_img_link {
    height: 160px;
    overflow: hidden;
    width: 160px;
    max-width: 160px;
    position: relative;
    display: block;
    background-color: rgba(0, 0, 0, 0.5);
}

.height-placeholder {
	width: 100%;

}

.height-placeholder > div{
    display: flex;
    height: 100%;
    top: 0px;
    position: absolute !important;
    width: 100%;
    justify-content: center;
    align-content: center;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.025);
	overflow: hidden;
    
}

.height-placeholder > div > img {
    z-index: 2;
    object-fit: cover;
    transition: all .5s ease;
    -ms-transition: .5s ease;
    -webkit-transition: .5s ease;
    transform: scale(1) translate(0%, 0%);
    bottom: 0;
    left: 0px;
    right: 0px;
    top: 0;
    width: 100%;
    height: auto;
}

.preview_image {
	position: relative;
    width: 100% !important;
    height: 100% !important;
    top: calc(0% - 13px) !important;
}

.ar_product_select svg.liked{
	z-index: 2;
	width:16px;
	height:16px;
	position:absolute;
	top:10px;
	right:10px;
	display:none;
}

.ar_product_select svg.liked.active{
	display:block;
}

/*
.preview_image.horizontal {
	position: relative;
    width: 100% !important;
    height: auto !important;
    top: calc(0% - 12px);
}

.preview_image.portrait {
	width: auto !important;
    height: 100% !important;
}
*/





.label_size {
	width: 100%;
    bottom: 0px;
    position: absolute;
    display: block;
    z-index: 2;
    margin: 0 auto;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.8);
    padding: 4px;
    color: white;
    backdrop-filter: blur(2px);
}

a {
	text-decoration: none;
}

#menu {
	z-index: 1;
	top: 60px;
}

.ar_navigation {
	z-index: 9;
	display: flex;
	overflow-x: auto;
	overflow-y: hidden;
	width: auto;
	justify-content: flex-start;
	margin-bottom: 15px;
	flex-direction: row;
	flex-wrap: nowrap;
	padding-bottom: 7px;
}

.nav_content {
	max-height: 50vh;
	color: white;
	position: relative;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	display: flex;
	overflow: auto;
	align-items: center;
}




#header_side_layer_bottom {
	width: 100%;
	height: 250px;
	position: fixed;
	bottom: -250px;
	transition: all 0.5s ease;
	-ms-transition: 0.5s ease;
	-webkit-transition: 0.5s ease;
	-moz-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	overflow-y: scroll;
	z-index: 99;
	left: 0px;
	background: rgba(0, 0, 0, 0.3);
	box-shadow: 6px 9px 10px 1px rgba(0, 0, 0, 0.5);
}

#header_side_layer_bottom.open {
	bottom: 0px !important;
}


.ar_nav_link {
	display: flex;
    margin: 0 3px 0 3px;
    white-space: nowrap;
    padding: 15px;
    color: white !important;
    border-radius: 50px;
    margin-top: 5px;
    background-color: rgba(0, 0, 0, 0.75);
    transition: all 0.3s ease;
    -ms-transition: 0.3s ease;
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    flex-direction: row;
    align-items: center;
}

.ar_nav_link > svg {
	margin-right:8px;
}

.ar_nav_link:hover {
	background-color: rgba(0, 0, 0, 0.9);
}

.ar_nav_link:focus {
	background-color: var(--button_color_active);
}

.ar_nav_link:active {
	background-color: var(--button_color_active);
}

.ar_nav_link.active {
	background-color: var(--button_color_active) !important;
}

a.button_ar, .button_ar {
	display: flex;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(5px);
	border-radius: 50px;
	padding: 10px;
	color: white;
	text-decoration: none;
	text-transform: uppercase;
	cursor:pointer;
	align-content: center;
    align-items: center;
}

a.button_ar:focus, .button_ar:focus {
	background: rgba(0, 0, 0, 0.9);
}


a.button_ar > svg{
	position:relative;
}


#header {
	position: fixed;
	top: -70px;
	left: 0;
	background-color: none;
	background: none !important;
	text-align: center;
	z-index: 999;
	width: 100%;
	padding-top: 10px;
	transition: all 0.5s ease 0s;
}

#header.active {
	position: fixed;
	top: 0;
	transition: all 0.5s ease 0s;

}

#btn_shop {
	display:flex;
	position: absolute;
	transition: all 0.5s ease 0s;
	z-index: 1000;
	top: calc(100% - 65px);
    bottom: 15px;
    left: calc(100%);
    right: -50px;
    
}


#btn_shop.active {
	display:flex;
	top: calc(100% - 65px);
    bottom: 15px;
    left: calc(100% - 65px);
    right: 15px;
}

.sold_label {
	font-size: 9pt;
	left: 50%;
	box-sizing: border-box;
	display: block;
	z-index: 3;
	padding: 5px;
	transform: translateX(-50%);
	position: absolute;
	background-color: rgb(250 0 0 / 70%);
	bottom: 40px;
	border-radius: 20px;
	color: white;
}

.selected_label {
	font-size: 9pt;
	left: 50%;
	box-sizing: border-box;
	display: block;
	z-index: 3;
	padding: 5px;
	transform: translateX(-50%);
	position: absolute;
	background-color: rgb(0 184 182);
	top: 5%;
	border-radius: 20px;
	color: white;
	display: none;
}

.image_box_outer {
	margin: 3px;
    border-radius: 15px;
	border: 2px solid transparent;
	overflow: hidden;
	transition: all 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
	transition: all 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
    -ms-transition: 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
    -webkit-transition: 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
    -moz-transition: 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
    -o-transition: 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
}

.transition{
	transition: all 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
	transition: all 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
    -ms-transition: 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
    -webkit-transition: 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
    -moz-transition: 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
    -o-transition: 0.5s cubic-bezier(0.49, 0.96, 0.47, 0.98);
}

.image_box_outer.active {
	border: 2px solid #00b8b6;
	transform: scale(1.02);
}

.image_box_outer.active img {
    transform: scale(1.15);
}

.nav_content > * {
	flex-shrink: 0;
}

#btn_open_layer_help {
	display:flex;
	position: relative;
	transition: all 1s ease 0s;
	/*display:none;
	opacity:0;*/
	bottom:-100px;
}

#btn_open_layer_help.active {
	display:flex;
	bottom:0px;
}

#btn_open_layer_help > svg {
	margin-left: 3px;
    position: relative;
    margin-right: 5px;
    top: 1px;
}

#btn_open_layer_help > .btn_help_text {
	padding-left: 5px;
    position: relative;
    padding-right: 5px;
    
}

#layer_help {
	border-radius: 20px 20px 0px 0px;
    background-color: white;
    width: 100%;
    max-height: 80vh;
    position: fixed;
    bottom: -600px;
    transition: all 0.5s ease 0s;
    z-index: 1100;
    left: 0px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-content: center;
    align-items: flex-start;
}

#layer_help_inner {
	margin: 20px auto;
	overflow: auto;
}

.help_text_title{
	font-weight: bold;
    text-align: center;
    margin-bottom: 25px;
    font-size: 18pt;
}

.help_text {
	display: flex;
    margin-bottom: 20px;
    font-size: 12pt;
    line-height: 140%;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-content: center;
    align-items: center;
}

.help_text > svg {
	margin-right:25px;
	margin-left:5px;
}



#bottom_outer {
	width: 100%;
	max-height: 80vh;
	height: 90px;
	position: fixed;
	bottom: -300px;
	transition: all 0.5s ease 0s;
	z-index: 99;
	left: 0px;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	
	border-radius: 20px 20px 0px 0px;
    /* background-color: rgba(255, 255, 255, 0.2);
    	backdrop-filter: blur(2px);
    */
}

#bottom_nav {
	z-index:1;
	position: relative;
    display: flex;
    width: 100%;
    flex-direction: column;
    bottom: -140px;
    transition: all 0.75s ease;
}

.bottom_products {
	z-index:2;
	width: 100%;
	position: absolute;
	bottom: 0px;
	height: 170px;
	backdrop-filter: blur(5px);
}

#bottom_outer.open, #layer_help.open  {
	bottom: 0px;
	position: fixed;
}

#bottom_outer.open {
	height:275px;
}

#bottom_outer.open > #bottom_nav  {
	bottom: 13px;
}



#btn_open_nav {
	display: flex;
	position: absolute;
	transition: all 0.5s ease;
	z-index: 1000;
	width:30px;
	height:30px;
	top: calc(100% - 65px);
    bottom:15px;
    left:-50px;
    right:calc(100%);
}


#btn_open_nav.active {
	display:flex;
 	top: calc(100% - 65px);
    bottom:15px;
    left:15px;
    right:calc(100% - 65px);
}

#btn_close_nav {
	height: 24px;
    width: 24px;
    padding: 16px;
    margin: 0 auto 0px auto;
    position: relative;
    bottom: -100px;
    transition: all 1.1s ease 0s;
    display: inline-block;
}


#btn_close_nav.active {
	bottom: 15px;
}

.open_close_menu_outer {
	left: 0px;
	padding-bottom: 15px;
	width: 100%;
	position: absolute;
	bottom: 0px;
	z-index: 1;
	display:  flex;
	text-align: center;
	justify-content: space-between;
	flex-direction: row;
	align-items: center;
	flex-wrap: nowrap;
	z-index: 999;
}

#btn_take_photo {
	background-color: rgba(255, 255, 255, .1);
	transform: translateX(-50%);
	position: absolute;
	border: 3px solid white;
	width: 60px;
	height: 60px;
	border-radius: 100px;
	padding: 0px;
	left: 50%;
	bottom: 30px;
	display: block;
	cursor: pointer;
	z-index: 9999999;
}

.nav_notice_no_products{
	text-align: center;
	margin: 0 auto;
    display: inline-block;
    font-size:16pt;
}



.btn_scanner {
	border-radius: 50px;
	display: flex;
	height: 30px;
	width: 30px;
	padding: 10px;
	background-color: rgba(0, 0, 0, 0.75);
	z-index: 9999;
	position:absolute;
    top: 15px;
    bottom:calc(100% - 65px);
    left:-50px;
    right:calc(100%);
    transition: all 0.5s ease;
}


.btn_scanner.active {
	display: flex;
	position:absolute;
    top: 15px;
    bottom:calc(100% - 65px);
    left:15px;
    right:calc(100% - 65px);
}

.btn_scanner > svg {
	height: 25px;
    padding: 3px;
    width: 25px;
}


.like_icon{
    display:flex;
    z-index: 999;
    transition:ease 0s;
    /* opacity:0; */
    position:absolute;
    top: 15px;
    bottom:calc(100% - 65px);
    left:calc(100%);
    right:-50px;
    transition: all 0.5s ease;
    width:30px;
    height:30px;
    justify-content: center;
    align-items: center;
}

.like_icon.active{
	top: 15px;
    bottom: calc(100% - 65px);
    left: calc(100% - 65px);
    right: 15px;
}

.like_icon svg {
    width: 25px;
	height: 25px;
    display:none;
}

.like_icon:not(.liked) > svg.like{
    display:block !important;
}

.like_icon.liked > svg.liked{
    display:block !important;
}



@media screen and (orientation: portrait) {

	#bottom_outer {
		width: 100%;
		max-height: 50vh;
		height: 285px;
		bottom: -285px;
	}

	.bottom_products {
		height: 170px;
	}

	.image_img_link {
		/*width: 200px;
		max-width: 60vw;*/
	}
	
	
	@media screen and (min-width: 1024px) {

		#bottom_outer {
			width: 100%;
			max-height: unset;
			height: 285px;
			bottom: -285px;
		}
	
		.bottom_products {
			height: 170px;
		}
	
		#ar_navigation {
			justify-content: center;
		}
	
		.image_img_link {
			/*width: 200px;
			max-width: 60vw;**/
		}
	
	}
}

.nav_notice_no_products {
    font-size:16pt;
}
	

@media screen and (orientation: landscape) {

	#layer_help {
	    left: 50%;
        transform: translate(-50%, 0%);
        position: absolute !important;
	    width: 500px;
	    max-height: 90vh;
	    max-height: 90dvh;
	    bottom: -110%;
	    overflow-y: auto;
	    margin:0 auto;
	}

	
	#layer_help.open {
	    max-height: 70vh;
	    max-height: 70dvh;
        left: 50%;
        position: fixed;
        padding: 15px;
        bottom: 0px;
        transform: translate(-50%, 0%);
	}
	
	#bottom_outer.open{
	    top: 0px;
	    position: fixed;
	    right: 0px;
	}
	
	#bottom_outer, .nav_notice_no_products {
	    width: 195px;
	    max-height: 100vh;
	    max-height: 100dvh;
	    height: 100vh;
	    height: 100dvh;
	    top: 0px;
	    right: -215px;
	    display: flex;
	    flex-direction: column;
	    flex-wrap: nowrap;
	    left:unset;
	}
	
	#btn_close_nav {
	    right: -250px;
	   	bottom: 15px;
	}
	
	#btn_close_nav.active {
	    right: -65px;
    	bottom: 15px;
	}
	
	#bottom_nav {
	    right: -190px;
	    bottom: unset;
	    z-index: 1;
	    position: relative;
	    display: flex;
	    width: 100%;
	    flex-direction: column;
	    bottom: -125px;
	    transition: all 0.75s ease;
	    flex-wrap: nowrap;
	}
	
	#bottom_outer.open > #bottom_nav {
		right: 210px;
        bottom: -115px;
	}
	
	#ar_navigation{
		flex-wrap: nowrap;
	    align-items: flex-end;
	    flex-direction: column;
    }
    
    .ar_nav_link {
    	margin: 3px;
    	margin-bottom: 8px;
    }
	
	.bottom_products {
	    top: 0px;
	    height: 100vh;
	    height: 100dvh;
	}
		
	
	.nav_content {
		max-height: 100vh;
	    max-height: 100dvh;
	    display: flex;
	    align-items: flex-start;
	    align-content: flex-start;
	    flex-direction: column;
	}
	
	.image_box_outer {
    	/* margin-bottom: 3px; */
	}
	
	.image_img_link {
	    /*width: 165px;
	    max-width: 165px;*/
	}
	
	.nav_notice_no_products{
        display: flex;
        flex-direction: column;
        justify-content: center;
	}
	
	.nav_notice_no_products svg{
		margin: 0 auto;
	    margin-bottom: 20px;
	    display: block;
	}
	
	.like_icon.nav_open{
	    right:215px;
	}
}



.btn {
	position: relative;
	overflow: hidden;
}

.btn::before {
	content: "";
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	background: var(--shine-effect);
}

.btn-anim::before {
	-webkit-animation: shine 5s ease-in-out infinite;
	animation: shine 5s ease-in-out infinite;
}

@-webkit-keyframes shine {
	0% {
		left: -100%;
		transition-property: left;
	}

	11.5044247788%,
	100% {
		left: 100%;
		transition-property: left;
	}
}

@keyframes shine {
	0% {
		left: -100%;
		transition-property: left;
	}

	11.5044247788%,
	100% {
		left: 100%;
		transition-property: left;
	}
}


.button {
	display: inline-flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	margin-bottom: 25px;
	background-color: var(--button_color);
	width: auto;
	padding: 20px 30px 20px 30px;
	font-size: 16pt;
	color: white !important;
	text-decoration: none !important;
	cursor: pointer;
	font-weight: normal;
	white-space: nowrap;
	-webkit-box-shadow: 0px 3px 19px -10px rgba(0, 0, 0, 0.66);
	-moz-box-shadow: 0px 3px 19px -10px rgba(0, 0, 0, 0.66);
	box-shadow: 0px 3px 19px -10px rgba(0, 0, 0, 0.66);
	/* border: 1px solid #45d9d7; */
	border-radius: 100px;
	text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.3);
	border: none;
	margin: 0 auto;
}

.button:hover {
	background-color: var(--button_color_hover);
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	text-shadow: 0px 1px 4px rgba(0, 0, 0, 0.3);
}

.button:active {
	background-color: var(--button_color_active);
	-webkit-box-shadow: inset 0px 1px 7px -3px rgba(0, 0, 0, 0.66);
	-moz-box-shadow: inset 0px 1px 7px -3px rgba(0, 0, 0, 0.66);
	box-shadow: inset 0px 1px 7px -3px rgba(0, 0, 0, 0.66);
}

.button-55 {
	box-shadow: rgba(0, 0, 0, .2) 10px 25px 25px -18px;
	box-sizing: border-box;
	transition: all 100ms ease-in-out;
	user-select: none;
	-webkit-user-select: none;
	touch-action: manipulation;
}

.button-55:hover {
	box-shadow: rgba(0, 0, 0, .3) 2px 2px 5px -5px;
	transform: translate3d(0, 2px, 0);
}

.button-55:focus {
	box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px;
}



.svg_icon_box{
    display: block;
}

.svg_icon_box > svg{
    fill:white;
}

.svg_icon_box .icon_small{
    margin-top: 1px;
}

.svg_like_icon{
    transform: scale(1);
}

.svg_like_icon.liked {
  animation: liked .3s ease;
}
@keyframes liked {
  0% {
    transform: scale(.8);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}

button.icon {
	padding-top: 6px;
    top: 15px;
    right: 15px;
    position: absolute;
    z-index: 999999;
    padding:13px;
    border: 0px !important;
}

.icon {
    box-shadow: none;
    border-radius: 50%;
    background: rgb(0 0 0 / 75%);
    width: 50px;
    height: 50px;
    transition: ease 0.3s;
    cursor: pointer;
}

  
 .rotate_90{
 transform:rotate(90deg) !important;
 }
 
  .rotate_neg90{
 transform:rotate(-90deg) !important;
 }
 
  .rotate_180{
 transform:rotate(90deg) !important;
 }
 
 
 #btn_close_layer_help{
 	position: absolute; 
 	top:25px; 
 	right: 25px;
 }
 
 #btn_close_layer_help.rotate_90{
 	position: absolute;
    top: 25px;
    right: 25px;
 }
 
  #btn_close_layer_help.rotate_neg90{
 	position: absolute;
    top: 25px;
    left: 25px;
    right: unset !important;
 }
 
 
 #like_icon.rotate_90{
 	top:unset;
 	bottom:15px;
 	left:unset;
 	top: calc(100% - 65px);
    bottom: -50px;
    left: calc(100%);
    right: 15px;
 }
 
 
 #like_icon.active.rotate_90{
 	top: calc(100% - 65px);
    bottom: 15px;
    left: calc(100% - 65px);
    right: 15px;
 }
 
  #like_icon.active.rotate_neg90{
 	top: 15px;
    bottom: calc(100% - 65px);
    left: 15px;
    right: calc(100% - 65px);
 }
 
 #btn_open_nav.rotate_90{
 	top: -50px;
    bottom:calc(100%);
    left:15px;
    right:calc(100% - 65px);
 }
 
 #btn_open_nav.active.rotate_90{
 	top: 15px;
    bottom: calc(100% - 65px);
    left: 15px;
    right: calc(100% - 65px);
 }
 
 #btn_open_nav.active.rotate_neg90{
 	top: calc(100% - 65px);
    bottom:15px;
    left:calc(100% - 65px);
    right:15px;
 }
 
 #btn_shop.rotate_90 {
	top: calc(100%);
    bottom: -50px;
    left: 15px;
    right: calc(100% - 65px);
}

#btn_shop.active.rotate_90 {
	top: calc(100% - 65px);
    bottom: 15px;
    left: 15px;
    right: calc(100% - 65px);
}

#btn_shop.active.rotate_neg90 {
	top: 15px;
    bottom: calc(100% - 65px);
    left: calc(100% - 65px);
    right: 15px;
}
 
 
 .btn_scanner.active.rotate_90 {
    top: -50px;
    bottom:calc(100% - 65px);
    left:calc(100% - 65px);
    right:15px;
}

 
.btn_scanner.active.rotate_90 {
    top: 15px;
    bottom:calc(100% - 65px);
    left:calc(100% - 65px);
    right:15px;
}


.btn_scanner.active.rotate_neg90 {
    top: calc(100% - 65px);
    bottom:15px;
    left:15px;
    right:calc(100% - 65px);
}


 