html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* end of reset code */

/* preloading page START */
#loading {
	position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  display: table;
	background-color: black;
	z-index: 1000;
}

.loader {
  color: black;
  font-family: 'FoundersGrotesk-Regular', sans-serif;
  font-weight: Regular;
  animation-duration: 8s;
  animation-name: spread, text-flicker-out-glow;
  animation-iteration-count:  ;
  transform: translatez(0,0,0);
  text-transform: none;
  display: table-cell;
  vertical-align: middle;
  font-size: 1.3em;
  letter-spacing: 6em;
  text-indent: -100%;
}
@keyframes spread {
  from {
    letter-spacing: 6em;
    text-indent: -150%;
  }
  5% {
  }
  50% {
    text-indent: 50%;
    letter-spacing: 0.3em;
		color: black;
  }
  to {
    letter-spacing: 8em;
    text-indent: 120%;
  }
}

@keyframes text-flicker-out-glow{84.9%{opacity:1;text-shadow:0 0 30px rgba(255,255,255,.55),0 0 60px rgba(255,255,255,.35),0 0 100px rgba(255,255,255,.1)}85%{opacity:0;text-shadow:none}89.9%{opacity:0;text-shadow:none}90%{opacity:1;text-shadow:0 0 30px rgba(255,255,255,.55),0 0 60px rgba(255,255,255,.35)}92.9%{opacity:1;text-shadow:0 0 30px rgba(255,255,255,.55),0 0 60px rgba(255,255,255,.35)}93%{opacity:0;text-shadow:none}94.9%{opacity:0;text-shadow:none}95%{opacity:1;text-shadow:0 0 30px rgba(255,255,255,.45),0 0 60px rgba(255,255,255,.25)}100%{opacity:0}}
/* preloading page END */

/* preloading page O START */
.loader_O {
	color: white;
	z-index: 101;
}

.flicker-in-2 {
	-webkit-animation: flicker-in-2 8s linear both;
	        animation: flicker-in-2 8s linear both;
}

@-webkit-keyframes flicker-in-2{0%{opacity:0}10%{opacity:0}10.1%{opacity:1}10.2%{opacity:0}20%{opacity:0}20.1%{opacity:1}20.6%{opacity:0}30%{opacity:0}30.1%{opacity:1}30.5%{opacity:1}30.6%{opacity:0}45%{opacity:0}45.1%{opacity:1}50%{opacity:1}55%{opacity:1}55.1%{opacity:0}57%{opacity:0}57.1%{opacity:1}60%{opacity:1}60.1%{opacity:0}65%{opacity:0}65.1%{opacity:1}75%{opacity:1}75.1%{opacity:0}77%{opacity:0}77.1%{opacity:1}85%{opacity:1}85.1%{opacity:0}86%{opacity:0}86.1%{opacity:1}100%{opacity:1}}@keyframes flicker-in-1{0%{opacity:0}10%{opacity:0}10.1%{opacity:1}10.2%{opacity:0}20%{opacity:0}20.1%{opacity:1}20.6%{opacity:0}30%{opacity:0}30.1%{opacity:1}30.5%{opacity:1}30.6%{opacity:0}45%{opacity:0}45.1%{opacity:1}50%{opacity:1}55%{opacity:1}55.1%{opacity:0}57%{opacity:0}57.1%{opacity:1}60%{opacity:1}60.1%{opacity:0}65%{opacity:0}65.1%{opacity:1}75%{opacity:1}75.1%{opacity:0}77%{opacity:0}77.1%{opacity:1}85%{opacity:1}85.1%{opacity:0}86%{opacity:0}86.1%{opacity:1}100%{opacity:0}}

.loader_full_page {
	border: none;
	float: right;
	padding: 0px 0px;
	width: 90%;
	height: 100%;
}

#loading {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
    height: 100vh;
    background: #262727;
    color: #fff;
    text-align: center;
		cursor: url('images/cursor_white.png') 10 5, default;
}

.noise {
    z-index: 100;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: .2;
}

/* preloading page O END */

html, body {
  height: 100%;
}

body {
  margin: 0px 0px;
  cursor: url('images/cursor.png') 10 5, default;
}

h1 {
	position: absolute;
	left: 30px;
  top: 25px;
  font-size: 100px;
  color: black;
  font-family:'FoundersGrotesk-Regular', sans-serif;
  font-weight: 500;
	padding-top: 10px;
}

h1 a {
  color: black;
}

h2 {
  font-size: 30px;
  color: black;
  font-family:  'Open Sans', sans-serif;
  font-weight: 500;
  letter-spacing: 3px;
  writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
}

@font-face {
  font-family: 'FoundersGrotesk-Regular';
  src:  url('fonts/FoundersGrotesk-Regular.otf');
}

/* vertical text */
.vertical  {
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  -ms-writing-mode: vertical-rl;
  -ms-transform: rotate(270deg);
}

/* blinking text */
.text-flicker-in-glow {
 -webkit-animation: text-flicker-in-glow 5s linear both;
         animation: text-flicker-in-glow 5s linear both;
}
.flicker-in-1 {
	-webkit-animation: flicker-in-1 3s linear both;
	        animation: flicker-in-1 3s linear both;
}

@-webkit-keyframes flicker-in-1{0%{opacity:0}10%{opacity:0}10.1%{opacity:1}10.2%{opacity:0}20%{opacity:0}20.1%{opacity:1}20.6%{opacity:0}30%{opacity:0}30.1%{opacity:1}30.5%{opacity:1}30.6%{opacity:0}45%{opacity:0}45.1%{opacity:1}50%{opacity:1}55%{opacity:1}55.1%{opacity:0}57%{opacity:0}57.1%{opacity:1}60%{opacity:1}60.1%{opacity:0}65%{opacity:0}65.1%{opacity:1}75%{opacity:1}75.1%{opacity:0}77%{opacity:0}77.1%{opacity:1}85%{opacity:1}85.1%{opacity:0}86%{opacity:0}86.1%{opacity:1}100%{opacity:1}}
@keyframes flicker-in-1{0%{opacity:0}10%{opacity:0}10.1%{opacity:1}10.2%{opacity:0}20%{opacity:0}20.1%{opacity:1}20.6%{opacity:0}30%{opacity:0}30.1%{opacity:1}30.5%{opacity:1}30.6%{opacity:0}45%{opacity:0}45.1%{opacity:1}50%{opacity:1}55%{opacity:1}55.1%{opacity:0}57%{opacity:0}57.1%{opacity:1}60%{opacity:1}60.1%{opacity:0}65%{opacity:0}65.1%{opacity:1}75%{opacity:1}75.1%{opacity:0}77%{opacity:0}77.1%{opacity:1}85%{opacity:1}85.1%{opacity:0}86%{opacity:0}86.1%{opacity:1}100%{opacity:1}}

 /* ----Style the SIDENAVIGATION STARTS---- */
.tabBar {
  position: fixed;
  left: 0;
  bottom: 10px;
  z-index: 1;
  overflow-x: hidden;
  display: flex;
  flex-flow: column-reverse;
  background-color: transparent;
  width: 80px;
  cursor: url('images/cursor.png') 10 5, default;
}

/* Style the buttons inside the Sidenavigation */
.tabBar span {
    display: flex;
		justify-content: center;
    background-color: transparent;
    color: black;
    padding: 0 0;
    width: 80px;
    height: 135px;
    border: none;
    outline: none;
    transition: 0.3s;
    font-size: 17px;
    text-decoration: none;
    font-family:  'Open Sans', sans-serif;
    letter-spacing: 2px;
    font-weight: 500;
    cursor: url('images/cursor.png') 10 5, default;
}

.tabBar span a{
  display: inline-block;
  position: relative;
	align-self: center;
  color: black;
  text-decoration: none;
  cursor: inherit;
}

.tabBar span a::after {
    content: '';
    display: block;
    width: 2px;
    height: 0;
    background: #000;
    transition: height .3s;
    margin: 0 auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 40%;
}

/*Create an active/current "tab button" class*/
.active, .tabBar .active a::after {
	    height: 100%;
}

/* Style the CONTENT */
.tabcontent {
    border: none;
    float: right;
    padding: 0px 0px;
    width: 90%;
    height: 100%;
}
 /*----Style the Sidenavigation ENDS----*/

 /* ----Scroll bar START-----*/
 /* width */
 ::-webkit-scrollbar {
     width: 16px;
		 cursor: url('images/cursor_white.png') 10 5, default;
 }
 /* Track */
 ::-webkit-scrollbar-track {
     background: #fff;
 }
 /* Handle */
 ::-webkit-scrollbar-thumb {
     background: #000;
 }
 /* Handle on hover */
 ::-webkit-scrollbar-thumb:hover {
     background: #000;
 }
 /* ----Scroll bar END-----*/

/* ----scrolling moving objects START----*/
body {
  overflow-x: hidden;
  /*height: 4000px;*/
}

.disableScrollOn {
	overflow: hidden
}


.ContainerForFloatingImages {
  width: inherit;
  height: 2100px;
  overflow: hidden;
  position: absolute;
	top: 121px;
}

.PicContainerOut {
  display: block;
  position: absolute;
}

.pic1 {
  width: 260px;
  height: 337px;
  right: 30%;
  top: 12%;
}

.pic2 {
  width: 400px;
  height: 266px;
  left:-15%;
  bottom: 10%;
}

.pic3 {
  top: 25%;
  right: 5%;
  width: 450px;
  height: 675px;
}

.pic4 {
  left: -40%;
  width: 250px;
  height: 375px;

}

.pic5 {
  top: 3%;
  left: 7%;
  width: 410px;
  height: 510px;
}

.PicContainerIn img {
  width: 100%;
}
/* ----scrolling moving objects END----*/

/* ----Styling visuals STARTS---*/
.PicContainerIn {
  position: relative;
  width: 100%;
  height: 100%;
    overflow: hidden;
}

.picOverlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  transition: 1.4s ease;
  background-color: rgba(255, 255, 255, 0.9);
}

.PicContainerIn:hover .picOverlay {
  opacity: 1;
}

 /*animation slide-in-bottom */
.PicContainerIn:hover h2 {
  -webkit-animation: slide-in-bottom 1.0s cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.2s both;
  animation: slide-in-bottom 1.0s cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.2s both;
}

@-webkit-keyframes slide-in-bottom {
  0% {
    -webkit-transform: translateY(400px) rotate(180deg);
            transform: translateY(400px) rotate(180deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0) rotate(180deg);
            transform: translateY(0) rotate(180deg);
    opacity: 1;
  }
}
@keyframes slide-in-bottom {
  0% {
    -webkit-transform: translateY(400px) rotate(180deg);
            transform: translateY(400px) rotate(180deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0) rotate(180deg);
            transform: translateY(0) rotate(180deg);
    opacity: 1;
  }
}

 /*animation slide-out-bottom */
 .PicContainerIn h2 {
   -webkit-animation: slide-out-bottom 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) reverse forwards;
   animation: slide-out-bottom 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) reverse forwards;
 }

 @-webkit-keyframes slide-out-bottom {
   0% {
     -webkit-transform: translateY(400px) rotate(180deg);
             transform: translateY(400px) rotate(180deg);
     opacity: 0;
   }
   100% {
     -webkit-transform: translateY(0) rotate(180deg);
             transform: translateY(0) rotate(180deg);
     opacity: 1;
   }
 }
 @keyframes slide-out-bottom {
   0% {
     -webkit-transform: translateY(400px) rotate(180deg);
             transform: translateY(400px) rotate(180deg);
     opacity: 0;
   }
   100% {
     -webkit-transform: translateY(0) rotate(180deg);
             transform: translateY(0) rotate(180deg);
     opacity: 1;
   }
 }

.textOverlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
/* ----Styling visuals END----*/

/* ----Modal + Slideshow START-----*/

/*modal background*/
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: white;
    text-align: center;
    cursor: url('images/exit.png') 10 5, default;
}

.modal:before {
  content: '\200B';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
 }

/* ----Slideshow START----*/
/* Slideshow container */
.slideshow-container {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  max-width: 1372px;
  width: 80%;
  max-height: 900px;
  height: 90vh;
  cursor: url('images/exit.png') 10 5, default;
}

.mySlides {
  display:none;
  z-index: 4;
  max-height: 900px;
  height: 90vh;
}

.mySlides img{
  width: 100%;
  max-height: 900px;
  height: 90vh;
  object-fit: scale-down;
}

.active-slide {
  display:block;
}

/* Next & previous buttons */
.prev, .next {
  position: absolute;
  width: 50%;
  top:0;
  user-select: none;
  z-index: 6;
  height: 100%;
}

.prev {
  left: 0;
  cursor: url('images/prev.png') 10 5, default;
}
/* Position the "next button" to the right */
.next {
  right: 0;
  cursor: url('images/next.png') 10 5, default;
}

.btnExit {
  display: none;
}

.mySlidesTitle  {
  position: fixed;
  left: 3vw;
  z-index: 8;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
	align-items: center;
  height: 90vh;
  max-height: 900px;
  width: 40px;
  font-family:  'Open Sans', sans-serif;
  font-size: 17px;
	font-weight: 500;
}

.mySlidesTitle p {
  text-align: right;
  height: 85px;
  margin: 5px;
}

h3 {
  text-align: right;
  margin: 5px;
	font-size: 17px;
	letter-spacing: 2px;
	font-weight: normal;
}

h3 a {
  text-decoration: none;
  color: black;
}
/* ----Slideshow END----*/
/* ----Modal + Slideshow END-----*/

/* ----RETOUCHING tabs START-----*/
.retouchTabContent{
  top: 141px;
  position: relative;
	right: 80px;
  left: 80px;
  width: 85%;
}

/* Style the RetouchNav */
.RetouchNav {
	position: fixed;
	right: 0;
	z-index: 1;
/*	overflow-x: hidden;  */
	width: 80px;
	height: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	background-color: white;
	cursor: url('images/cursor.png') 10 5, default;
}

.RetouchNavTop {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	margin-top: 78px;
	width: 80px;
}

.RetoutchTabLinks {
	height: 75px;
}

#defaultOpenR {
	height: 69px;
}

.RetouchNavBottom {
	margin-bottom: 25px;
	width: 80px;
}

/* Style the buttons inside the RetouchNav */
.RetouchNav .RetouchNavBottom span, .RetouchNav .RetouchNavTop span {
    border: none;
    outline: none;
    background-color: inherit;
    transition: 0.3s;
    padding: 10px 10px;
		font-family:  'Open Sans', sans-serif;
    text-decoration: none;
    letter-spacing: 2px;
		font-size: 17px;
    font-weight: 300;
		color: black;
    cursor: url('images/cursor.png') 10 5, default;
		display: flex;
		justify-content: center;
}

.RetouchNav .RetouchNavBottom span a, .RetouchNav .RetouchNavTop span a{
	writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	transform: rotate(360deg);
	-ms-transform: rotate(360deg);
	color: black;
	text-decoration: none;
	cursor: inherit;
}

.RetouchNav .RetouchNavTop span a::after, .RetouchNav .RetouchNavBottom span a::after {
    content: '';
    display: block;
    width: 2px;
    height: 0;
    background: #000;
    transition: height .3s;
    margin: 0 auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 40%;
}

 .RetouchNav .RetouchNavBottom span a{
	 max-height: 65px;
 }

/*Create an active/current "tab button" class*/
.RetouchNav .RetouchNavTop .active a::after, .RetouchNav .RetouchNavBottom .active::after {
	  height: 100%;
}

/* ----RETOUCHING tabs END-----*/

/* ----Img Comparison START-----*/
.comparisonCon {
  display: -webkit-flex; /* Safari */
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  justify-content: space-around;
}

.comparisonConImg{
  position: relative;
	margin-bottom: 50px;
}

 .comparisonRight {
   display: flex;
   justify-content: flex-end;
   display: -webkit-flex; /* Safari */
   -webkit-justify-content: flex-end;
 }

.comparisonLeft {
	display: flex;
	justify-content: flex-start;
	display: -webkit-flex; /* Safari */
	-webkit-justify-content: flex-start;
}

.comparisonCenter {
	display: flex;
	justify-content: center;
	display: -webkit-flex; /* Safari */
	-webkit-justify-content: center;
}

.Before, .After {
  max-width: 40vw;
  height: auto;
  flex-grow: 1;
  flex-shrink: 0;
}

.Before {
  opacity: 0;
  position: absolute;
  top: 0;
  cursor: url('images/minus.png') 20 20, default;
}


.visible {
  opacity:1;
	cursor: url('images/plus.png') 20 20, default;
}

.credits {
	color: #80808082;
}

.credtis a {
	text-decoration: none;
}

h4 {
	margin: 6px 6px 3px 6px;
	font-size: 10px;
  letter-spacing: 1px;
  font-weight: 100;
  font-family: sans-serif;
}

h4 a {
  text-decoration: none;
	color: #80808082;
/*  color: black; */
}

#Product {
  display: none;
}
/* ----Img Comparison END-----*/

/* ----Contact section START-----*/
/* ----Contact section END-----*/

/* ----MOBILE screen START-----*/
/* If the screen size is 600px or less, set the */
@media only screen and (max-width: 600px) {
	/* mob. preloading page START */
	.loader {
	  font-size: 1.1em;
	}
	@keyframes spread {
	  from {
	    letter-spacing: 6em;
	    text-indent: -150%;
	  }
	  5% {
	  }
	  50% {
	    text-indent:10%;
	    letter-spacing: 0.3em;
			color: black;
	  }
	  to {
	    letter-spacing: 8em;
	    text-indent: 120%;
	  }
	}
	/* mob. preloading page END */
  h1 {
    font-size: 12vw;
  }
/* ----mob. Sidenavigations START-----*/
  .tabBar {
    width: 40px;
  }
  .tabBar span , .RetouchNav .RetouchNavTop span {
    width: 40px;
		font-size: 14px;
   }
	.RetouchNav .RetouchNavBottom span {
		font-size: 14px;
		}
		.RetouchNav .RetouchNavBottom span a{
			max-height: 55px;
		}
/* ----mob. Main Content START-----*/
   .tabcontent {
    max-width: 90%;
   }
/* ----mob. Visuals START-----*/
   .ContainerForFloatingImages{
		 top:10vh;
		 height: 2000px;
	 }
   .pic1 {
    width: 180px;
    height: 233px;
    right: 10%;
    top: 10%;
    z-index: 1;
   }
	 .pic2 {
	  width: 280px;
	  height: 187px;
	  left: -40%;
	  bottom: 10%;
	 }
	 .pic3 {
    top: 20%;
    right: 20%;
    width: 290px;
    height: 435px;
    }
    .pic4 {
    left: -45%;
    width: 150px;
    height: 225px;
    }
		.pic5 {
    top: 3%;
    left: 7%;
    width: 255px;
    height: 317px;
    }
/* ----mob. Slideshow START-----*/
   .slideshow-container {
    max-width: 90vw;
   }
	 .mySlidesTitle {
     font-size: 14px;
		 left:0;
		 bottom: 0;
	 }
	 .btnExit {
	 display: block;
	 position: fixed;
	 top: 13px;
	 right: 13px;
	 z-index: 8;
	 width: 15px;
   }
	 h3 {
		 font-size: 14px;
	 }
	 h2 {
		 font-size: 20px;
	 }

/* ----mob. Retouching START-----*/
   .RetouchNav {
		 width: 40px;
	 }
	 .RetouchNavTop{
		 margin-top: 100px;
	 }
	 #defaultOpenR {
    height: 58px;
   }
	 .RetoutchTabLinks{
		 height: 65px;
	 }
	 .RetouchNavBottom {
    margin-bottom: 35px;
	 }
	 .retouchTabContent{
		left: 0px;
		top: 110px;
	 }
	 .comparisonConImg {
    margin-bottom: 20px;
   }
   .Before, .After {
    max-width: 80vw;
    height: auto;
  }
	.credits {
		display: none;
	}
	
	.comparisonRight, .comparisonCenter {
		display: block;
/*    justify-content: center;
    -webkit-justify-content: center; */
}
	
	
/* ----mob. Contacts START-----*/
  #email {
    font-size: 7vw;
  }
}

/* If the screen size is between 600px and 1024px, set the */
@media only screen
  and (min-width: 601px)
  and (max-width: 1024px)
  and (-webkit-min-device-pixel-ratio: 1) {
		/* tablet preloading page START */
		@keyframes spread {
			from {
				letter-spacing: 6em;
				text-indent: -150%;
			}
			5% {
			}
			50% {
				text-indent:35%;
				letter-spacing: 0.3em;
				color: black;
			}
			to {
				letter-spacing: 8em;
				text-indent: 120%;
			}
		}
		/* tablet preloading page END */
		h1{
			font-size: 13vw;
		}
  	.btnExit {
		display: block;
		position: fixed;
		top: 40px;
		right: 40px;
		z-index: 8;
	  width: 17px;
	}
	.pic1 {
		right: 10%;
		top: 17%;
		z-index: 1;
	}
	.pic2 {
		left: -30%;
    bottom: 9%;
	}
	.pic4 {
		left: -47%;
	}
	/* ----tablet. Retouching START-----*/
	#Retouching{
		float: none;
	}
	/* .RetouchNav{
		height: 100%;
	} */
	.Before, .After {
    max-width: 75vw;
    height: auto;
}
	/* ----tablet. Contacts START-----*/
	#email {
		font-size: 8vw;
	}
}
/* ----SMALL screen END-----*/
