@charset "utf-8";
address,
article,
aside,
button,
blockquote,
body,
dd,
dialog,
dl,
dt,
fieldset,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
li,
nav,
ol,
p,
pre,
section,
td,
th,
tr,
ul {
  margin: 0;
  padding: 0;
}

body { /*#d6cdb7;*/
  background-color: #d6cdb7;
  color: #2b2209;
  margin: 0;
  font-family: sans-serif;
  overflow-x: hidden;
   touch-action: manipulation !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@font-face {
  font-family: "FT1";
  src: url("OTGubestileUnlicensedTrial-Extended.otf")
    format("opentype");
}

@font-face {
  font-family: "FT2";
  src: url("OPTISpire.otf")
    format("opentype");
}

@font-face {
  font-family: "FTScript";
  src: url("UniversLTStd BoldCn.otf")
    format("opentype");
}

a {text-decoration:none; color:  #2b2209 !important;}

.btn:focus {
  outline: none !important;
  box-shadow: none !important;
}

::-webkit-scrollbar {
  display: none !important; 
  width: 0px !important;	
  opacity: 0 !important; 	
}


h1 {font-weight:normal;}


html {
    -webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape while allowing user zoom */
}

.transition-fade {
    transition: .1s;
    opacity: 1;
	/*transition-delay: .3s;*/
}

html.is-animating .transition-fade {
    opacity: 0;
}




.lazyload,
.lazyloading {
	opacity: 0;
}
.lazyloaded {
	opacity: 1;
	transition: opacity 300ms;
}



.logoSpan {
  font-family: "FT1";	
  margin-bottom:0;
  margin-top:0;
  font-weight:300;
  font-size: .85vw;
  line-height: 1.2em;
  letter-spacing:.35em;	
  text-transform:uppercase;
}

.logoSub {
  font-family: "FT1";	
  margin-bottom:0;
  margin-top:0;
  font-weight:300;
  font-size: .65vw;
  line-height: 1.9vh;
  letter-spacing:.1em;	
  text-transform:uppercase;
}

#fixed-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 1;
  mix-blend-mode: multiply;
}

.imgHolder {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 60%;
  height: 60vh;
  display: flex;
  align-items: center;
  justify-content: center;
  will-change: transform, opacity;
  transform: translateZ(0);
  backface-visibility: hidden;
}

.imgHolder img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  cursor: pointer;
  will-change: opacity;
  transform: translateZ(0);
  backface-visibility: hidden;
}

.imgHolder h1 {
  font-family: "FT2";
  position: absolute; 
  margin: 0;
  color: #171717;
  opacity: 0; 
  pointer-events: none; 
  letter-spacing:.05em;
  text-transform:uppercase;
  display: block !important;
  text-align:center;
  font-size: 400px;
  width: max-content; 
  line-height: 1.15;
  will-change: opacity, transform;
  transform: translateZ(0); 
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}




#salon-view {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100dvh !important;
  z-index: 200;
  background-color: #d6cdb7;
  display: none;
  opacity: 0;
  overflow: hidden; 
  overscroll-behavior: none; 
  touch-action: none; 
}

#salon-canvas {
  position: absolute;
  width: 600vw;  
  height: 600vh;
  top: -250vh;
  left: -250vw;
  will-change: transform; 
  transform-origin: center center; 
}

.salon-img {
  position: absolute;
  max-width: 50vw;
  cursor: grab;
  -webkit-user-drag: none; 
  user-select: none; 
  backface-visibility: hidden; 
  will-change: transform; 
}

.salon-img:active {
  cursor: grabbing;
}

.closerSpan {
  color: #171717;
  font-family: "FT1";
  font-size: 10px;
  letter-spacing: 4px;
  pointer-events: auto;
  cursor: pointer;
  /*transition: opacity 0.3s ease;*/
  font-variant-numeric: tabular-nums; 
  opacity:.9;
}

#slide-counter {
  color: #171717;
  font-family: "FT2";
  font-size: 50px;
  letter-spacing: 1px;
  pointer-events: auto;
  cursor: pointer;
  /*transition: opacity 0.3s ease;*/
  font-variant-numeric: tabular-nums; 
  opacity:.9;
}

@media (hover: hover) {
  #slide-counter:hover {
     opacity: .9;
  }
}

#salon-close {
  color: #171717;
  font-family: "FT2";
  font-size: 50px;
  letter-spacing: 1px;
  pointer-events: auto;
  cursor: pointer;
  display: none;
  opacity: 0;
  text-transform: uppercase;
  user-select: none; 
}

#trigger-area {
  position: relative;
  z-index: 2;
  pointer-events: none;
}
#empty-container {
  height: 50vh;
  background-color: none;
  position: relative;
  z-index: 10;
}




.aboutContain {
	width:40%;
	text-align:center !important;
	padding-bottom:10vh;
}

.aboutALTContain {
	width:40%;
	text-align:center !important;
}


.loader-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: #d6cdb7;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.logo {
 opacity: 0; 
}


.counterHolder {
   position:fixed; bottom:3em; left:0; width:100vw; display:flex; align-items:center; justify-content:center; z-index:1000;
}

.closeHolder {
   position:fixed; bottom:3em; left:0; width:100vw; display:flex; align-items:center; justify-content:center; z-index:1000;
}


.notetoScroll {
   position:fixed; top:2em; right:3em; z-index:1000;
}

.contactHolder {
   opacity:1; position:fixed; padding-top:5em; top:0; left:0; width:100vw; display:flex; justify-content:center; z-index: 100005; pointer-events: none;
}	
	

@media (hover: hover) {
 .contactHolder:hover {
   opacity:1 !important;
}
}


#logoHolder {
	position:fixed; top:0; left:0; width:100vw; height:100vh; display:flex; align-items:center; justify-content:center; opacity:0; text-align:center !important; z-index:100; pointer-events:none;
}



.homeClicker {
  z-index: 100005; /* CRITICAL: Keeps the "X" clickable over the menu */
}

.menu {
  width: 100vw;
  height: 85vh;
  position: fixed;
  bottom: 0;
  left: 0;
  display: flex; 
  align-items: center; 
  justify-content: center; 
  background: #d6cdb7;
  transform: translateY(120%); 
  box-sizing: border-box; 
  border-radius: 24px 24px 0 0;
  box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.15);
}

.main-menu {
  z-index: 100002 !important; 
}


@media (max-height: 1000px) {
	
	
.counterHolder {
   position:fixed; bottom:2.5em; left:0; width:100vw; display:flex; align-items:center; justify-content:center; z-index:1000;
}

.closeHolder {
   position:fixed; bottom:2.5em; left:0; width:100vw; display:flex; align-items:center; justify-content:center; z-index:1000;
}
	
.notetoScroll {
   position:fixed; top:1em; right:1.5em; z-index:1000;
}

.contactHolder {
   opacity:1; position:fixed; padding-top:3em; top:0; left:0; width:100vw; display:flex; justify-content:center; z-index: 100005; pointer-events: none;
}	
	
	
.closerSpan {
  color: #171717;
  font-family: "FT1";
  font-size: 8px;
  letter-spacing: 3px;
  pointer-events: auto;
  cursor: pointer;
  /*transition: opacity 0.3s ease;*/
  font-variant-numeric: tabular-nums; 
  opacity:.9;
}	
	

#slide-counter {
  color: #171717;
  font-family: "FT2";
  font-size: 35px;
  letter-spacing: 1px;
  pointer-events: auto;
  cursor: pointer;
  /*transition: opacity 0.3s ease;*/
  font-variant-numeric: tabular-nums; 
  opacity:.9;
}
	
	
#salon-close {
  color: #171717;
  font-family: "FT2";
  font-size: 35px;
  letter-spacing: 1px;
  pointer-events: auto;
  cursor: pointer;
  display: none;
  opacity: 0;
  text-transform: uppercase;
  user-select: none; 
}	
	
.imgHolder {
  position: absolute;
  top: 0;
  bottom: 10vh;
  left: 0;
  right: 0;
  margin: auto;
  width: 60%;
  height: 60vh;
  display: flex;	
  align-items: center;
  justify-content: center;
  will-change: transform, opacity;
  transform: translateZ(0);
  backface-visibility: hidden;
}	
		
	

}



@media (max-width: 800px) {
	
	
.menu {
  width: 100vw;
  height: 85vh;
  position: fixed;
  bottom: 0;
  left: 0;
  display: flex; 
  align-items: center; 
  justify-content: center; 
  background: #d6cdb7;
  transform: translateY(120%); 
  box-sizing: border-box; 
  border-radius: 24px 24px 0 0;
  box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.15);
}	
	
.counterHolder {
   position:fixed; bottom:2.5em; left:0; width:100vw; display:flex; align-items:center; justify-content:center; z-index:1000;
}

.closeHolder {
   position:fixed; bottom:2.5em; left:0; width:100vw; display:flex; align-items:center; justify-content:center; z-index:1000;
}
	
.notetoScroll {
    position:fixed; left:0; top:0; width:100vw; display:flex; justify-content:center; padding-top:2em; z-index:1001 !important; 
}

.contactHolder {
   opacity:1; position:fixed; padding-top:3em; top:0; left:0; width:100vw; display:flex; justify-content:center; z-index: 100005; pointer-events: none;
}	
	
	
.closerSpan {
  color: #090909;
  font-family: "FT1";
  font-size: 8px;
  letter-spacing: 2px;
  pointer-events: auto;
  cursor: pointer;
  /*transition: opacity 0.3s ease;*/
  font-variant-numeric: tabular-nums; 
  opacity:1;
}	
	
.aboutContain {
	width:60%;
	text-align:center !important;
}
	
.aboutALTContain {
	width:60%;
	text-align:center !important;
}
	
	
#salon-view {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100lvh !important;
  z-index: 200;
  background-color: #d6cdb7;
  display: none;
  opacity: 0;
  overflow: hidden; 
  overscroll-behavior: none; 
  touch-action: none; 
}

	
.imgHolder {
  position: absolute;
  top: 0;
  bottom: 10vh;
  left: 0;
  right: 0;
  margin: auto;
  width: 70%;
  height: 60vh;
  display: flex;	
  align-items: center;
  justify-content: center;
  will-change: transform, opacity;
  transform: translateZ(0);
  backface-visibility: hidden;
}	
	

#slide-counter {
  color: #171717;
  font-family: "FT2";
  font-size: 35px;
  letter-spacing: 1px;
  pointer-events: auto;
  cursor: pointer;
  /*transition: opacity 0.3s ease;*/
  font-variant-numeric: tabular-nums; 
  opacity:.9;
}	
	
#salon-close {
  color: #171717;
  font-family: "FT2";
  font-size: 35px;
  letter-spacing: 1px;
  pointer-events: auto;
  cursor: pointer;
  display: none;
  opacity: 0;
  text-transform: uppercase;
  user-select: none; 
  opacity:.9;	
}	

	
.logoSpan {
  font-family: "FT1";	
  margin-bottom:0;
  margin-top:0;
  font-weight:300;
  font-size: 2.5vw;
  line-height: 1.2em;
  letter-spacing:.35em;	
  text-transform:uppercase;
}
	
.logoSub {
  font-family: "FT1";	
  margin-bottom:0;
  margin-top:0;
  font-weight:300;
  font-size: 1.75vw;
  line-height: 1.75vh;
  letter-spacing:.1em;	
  text-transform:uppercase;
}	
	
	

	

	
}


