/* ================================
   PARALLAX STYLES
   ================================ */

/* Each parallax section is a viewport-height container */
.parallax-hero,
.parallax-section {
  position: relative;
  height: 100vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* The moving background layer inside each section */
.parallax-bg {
  position: absolute;
  inset: -30%; /* Oversized so it can shift without revealing edges */
  background-size: cover;
  background-position: center;
  will-change: transform; /* GPU hint for smooth animation */
  z-index: 0;
}

/* -------- Assign a background image to each section -------- */
#hero .parallax-bg {
  background-image: url('../images/hero/hero-bg.jpg');
}

#work .parallax-bg {
  background-image: url('../images/hero/work-bg.jpg');
}

#contact-cta .parallax-bg {
  background-image: url('../images/hero/cta-bg.jpg');
}

/* Content sits above the parallax background */
.hero-content,
.section-content {
  position: relative;
  z-index: 1;
  text-align: center;
  padding: 2rem;
}

.hero-content h1 {
  font-size: clamp(2.5rem, 6vw, 5rem);
  font-family: var(--font-heading);
  margin-bottom: 1rem;
}

.hero-content p {
  font-size: 1.25rem;
  margin-bottom: 2rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  opacity: 0.75;
}

.section-content h2 {
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-family: var(--font-heading);
  margin-bottom: 1.5rem;
}

/* Optional dark overlay on each background */
.parallax-hero::after,
.parallax-section::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 0;
}

/* Make sure content is above the overlay */
.hero-content,
.section-content {
  z-index: 2;
}
