/* ============================
   Home Page Specific Styles
   ============================ */

/* Hero refinements for home */
.hero {
  background: var(--color-bg);
}

/* Hero with background image */
.hero--bg {
  position: relative;
  align-items: flex-end;
  justify-content: flex-start;
}

.hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.hero__bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 25%;
  filter: brightness(1.1) contrast(1.05);
}

/* Gradient overlay: vignette + bottom fade into dark bg */
.hero__bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at center, rgba(10, 10, 10, 0.1) 0%, rgba(10, 10, 10, 0.6) 80%),
    linear-gradient(to top, rgba(10, 10, 10, 1) 0%, rgba(10, 10, 10, 0.4) 20%, transparent 40%),
    linear-gradient(to bottom, rgba(10, 10, 10, 0.5) 0%, transparent 15%);
  pointer-events: none;
  z-index: 1;
}

/* Service cards grid on home */
#services .grid--3 {
  gap: var(--space-8);
}

/* Work section — force symmetrical 2×2 grid */
#work .grid--2 {
  grid-template-columns: repeat(2, 1fr) !important;
  gap: var(--space-6);
}

@media (max-width: 767px) {
  #work .grid--2 {
    grid-template-columns: 1fr !important;
  }
}

/* CTA section glow effect */
.section--cta {
  position: relative;
}

.section--cta::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, var(--color-accent-subtle) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.5;
}
