:root {
  --hero-bg: linear-gradient(135deg, #f7f7ff 0%, #ffffff 60%, #eef6ff 100%);
  --shadow-hover: 0 12px 30px rgba(0, 0, 0, 0.12);
  --hero-watermark-opacity: 0.28;
}

body {
  background: #fff;
}

.card-hover {
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.card-hover:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-hover);
}

.reveal {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 550ms ease, transform 550ms ease;
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.hero {
  background: var(--hero-bg);
  position: relative;
  overflow: hidden;
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../asset/images/1_WhatsApp%20Image%202025-11-30%20%C3%A0%2020.28%20(1).jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: var(--hero-watermark-opacity);
  filter: grayscale(1);
  pointer-events: none;
}

.hero > .container {
  position: relative;
  z-index: 1;
}

.object-fit-cover {
  object-fit: cover;
}
