:root {
  --cream: #f7f5f2;
  --ink: #1a1a1a;
  --accent: #FFC107;
}

body {
  background: var(--cream);
  color: var(--ink);
  font-family: 'Inter', sans-serif;
}

.text-outline {
  -webkit-text-stroke: 2px #1a1a1a;
  color: transparent;
}

.text-outline-white {
  -webkit-text-stroke: 2px #ffffff;
  color: transparent;
}

.text-outline-thin {
  -webkit-text-stroke: 0.5px currentColor;
  color: transparent;
}

@media (min-width: 1024px) {
  .text-outline {
    -webkit-text-stroke: 2px currentColor;
  }
}

.card-impact {
  transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.card-impact:hover {
  transform: translateY(-12px) scale(1.02);
  box-shadow: 0 40px 80px -20px rgba(0,0,0,0.3);
}

.card-impact:hover img {
  filter: brightness(0.6) saturate(1.2);
}

.huge-type {
  font-size: clamp(4rem, 15vw, 15rem);
  line-height: 0.75;
  letter-spacing: -0.06em;
  font-weight: 900;
  text-transform: uppercase;
}

@keyframes reveal {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.reveal {
  opacity: 0;
}

.animate-reveal {
  animation: reveal 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

details summary {
  list-style: none;
}

details summary::-webkit-details-marker {
  display: none;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
