:root {
  --dot-bg: #ffffff;
}

html {
  scroll-behavior: auto; /* GSAP handles smooth scroll */
}

/* Small custom utilities used by the static copy */
.radial-sheen {
  background: radial-gradient(ellipse at top left, rgba(255, 255, 255, 0.8), transparent 60%);
}

.footer-dots {
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.1'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* Make placeholder images look decent */
.placeholder-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Used by the gallery cards to match 16:9 aspect */
.aspect-16-9 {
  aspect-ratio: 16 / 9;
}

/* Help the hero slides overlap like Next/Image fill */
.hero-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

