/* === RESET + STRUCTURE === */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body, html {
  height: 100%;
  font-family: sans-serif;
  /*overflow: hidden; */
}

/* === HEADER WITH LOGO ONLY === */
.header {
  width: 100%;
  padding: 10px 40px;
  background-color: transparent;
  display: flex;
  align-items: center;
  position: absolute;
  z-index: 10;
}

.header .logo {
  height: 70px;
}


/* Default (Desktop & Tablet) also new */
.hero-container {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.hero-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

    .overlay-img {
      opacity: 0;
      transition: opacity 0.5s ease-in-out;
      z-index: 2;
    }

    .hero-container img.face-img,
    .hero-container img.overlay-img {
      width: 100%;
      height: 100vh;
      object-fit: cover;
      position: absolute;
      top: 0;
      left: 0;
    }
/* end new */


/* === BASE SPLIT IMAGE (ALWAYS VISIBLE) === */
.face-img {
  width: 100%;
 /* height: 100%; */
  height:auto;
  object-fit: cover;
  position: absolute;
  z-index: 1;
}

/* === OVERLAY FULL FACE IMAGES (INITIAL STATE HIDDEN) === */
.overlay-img {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
  opacity: 0;
  transition: opacity 1.2s ease, transform 1.2s ease;
  pointer-events: none;
}

.hero-container.show-photo .full-photo {
  opacity: 1;
  transform: translateX(0);
  z-index: 3;
}

.hero-container.show-lashes .full-lashes {
  opacity: 1;
  transform: translateX(0);
  z-index: 3;
}

/* === INTERACTION ZONES === */
.hover-zone {
  position: absolute;
  top: 0;
  width: 50%;
  height: 100%;
/*  z-index: 4; */
  z-index: 3;
}

.zone-left {
  left: 0;
}

.zone-right {
  right: 0;
}

/* === LABELS (BUTTONS) WITH HEADINGS === */
.label {
  position: absolute;
 top: 50%; 

  transform: translateY(-50%);
  /* background-color: rgba(0, 0, 0, 0.6); */
  background-color: #7b4966; /* deep plum */
  color: white;
  padding: 24px 40px;
  border-radius: 12px;
  font-size: 1.3rem;
  text-decoration: none;
/*  z-index: 5;*/    /* change back to original if needed */
  z-index: 4;
  text-align: center;
  transition: transform 0.4s ease, background-color 0.3s ease, opacity 0.4s ease;
}

.label.left {
  left: 15%;
   
}

.label.right {
  right: 15%;
} 


.label h2 {
  margin-bottom: 8px;
  font-size: 1.5rem;
}

.label p {
  font-size: 20px;

}

/* === Hover effect: Enlarge hovered, fade the opposite === */
.hero-container.show-photo .label.left {
  /*background-color: rgba(0, 0, 0, 0.85); */
  background-color: rgba(182, 124, 160, 0.85); 
 /* background-color: #b67ca0; /* light lavender d5b4e2 936F85*/
  animation: jiggle 0.6s ease-in-out;
  transform: translateY(-50%) scale(1.15);
  opacity: 1;
}
.hero-container.show-photo .label.right {
  opacity: 0.08;
}

.hero-container.show-lashes .label.right {
  /*background-color: hwb(310 39% 29% / 0.58); */
  background-color: rgba(182, 124, 160, 0.85); 
  animation: jiggle 0.6s ease-in-out;
  transform: translateY(-50%) scale(1.15);
  opacity: 1;
}
.hero-container.show-lashes .label.left {
  opacity: 0.05;
}

@keyframes jiggle {
  0%, 100% { transform: translateY(-50%) scale(1.15); }
  25% { transform: translateY(-50%) scale(1.2) rotate(-2deg); }
  50% { transform: translateY(-50%) scale(1.2) rotate(2deg); }
  75% { transform: translateY(-50%) scale(1.15) rotate(-1deg); }
}


/* === new update to mach pallete === */

.overlay-button {
  background-color: #4b2e3f; /* deep plum */
  color: #ffffff;
  padding: 12px 20px;
  font-weight: bold;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-block;
}

.overlay-button:hover {
  color: #d5b4e2; /* light lavender */
  background-color: #5c3a50; /* optional: slightly lighter plum */
}



/* === MOBILE RESPONSIVE STYLES === */
@media (max-width: 768px) {
  .hero-container {
    flex-direction: column;
    align-items: center;
    padding-top: 6rem;
    display: flex;
    position: relative;
    gap: 1.5rem;
    /* new
    height: auto;*/
  }

  .label {
    position: static;
    width: 40%;
    max-width: 300px;
    font-size: 1rem;
    padding: 12px 16px;
    background-color: rgba(0, 0, 0, 0.5);
    transform: none;
    text-align: center;
    margin: 0 auto;
  }

  .label h2 {
    font-size: 1.1rem;
  }

  .label p {
    font-size: 0.85rem;
  }

  .label.left,
  .label.right {
    left: auto;
    right: auto;
    top: auto;
  }

  .hover-zone {
    display: none; /* Disable hover zones on mobile */
  }

  .label.left{
    margin-top: 10rem;
  }

}


