/* OSM — brand-agnostic tweaks on top of Tailwind */

/* Scroll-reveal — Framer-Motion style entrance without the runtime */
[data-reveal] {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .8s cubic-bezier(.22,.61,.36,1), transform .8s cubic-bezier(.22,.61,.36,1);
  will-change: opacity, transform;
}
[data-reveal].is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Small selection tweak */
::selection {
  background: #4f46e5;
  color: #fff;
}

/* Details/summary marker cleanup — the "+" indicator handles the affordance */
details summary::-webkit-details-marker { display: none; }
details summary { outline: none; }
details[open] summary { color: #4f46e5; }

/* Smooth anchor scroll */
html { scroll-behavior: smooth; scroll-padding-top: 80px; }

/* Reduce motion for anyone who's asked for it */
@media (prefers-reduced-motion: reduce) {
  [data-reveal] { opacity: 1; transform: none; transition: none; }
  html { scroll-behavior: auto; }
}
