/* Copyright (c) Meta Platforms, Inc. and affiliates.
 * Astryx entry/layer presets adapted for this static site.
 * MIT license: /licenses/astryx-MIT.txt
 */
:root {
  --motion-fast:175ms;
  --motion-entry:235ms;
  --motion-medium:410ms;
  --motion-ease:cubic-bezier(0.24, 1, 0.4, 1);
}
.btn, .take-form button, .reset, .mobile-menu summary {
  transition:transform var(--motion-fast) var(--motion-ease), opacity var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease);
  transform-origin:center;
}
.btn:active { transform:translateY(0) scale(0.97); }
.take-form button:active, .reset:active, .mobile-menu summary:active { transform:scale(0.97); }
.slip {
  transition:transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);
  transform-origin:50% 90%;
}
.leaderboard li {
  transition:transform var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease);
}
.top nav a, .menu-list a, .link, .foot-nav a, .sign-in {
  transition:color var(--motion-fast) var(--motion-ease), opacity var(--motion-fast) var(--motion-ease);
}
.take-form { transition:border-color var(--motion-fast) var(--motion-ease); }
.mobile-menu[open] .menu-list {
  transform-origin:top right;
  animation:astryx-layer-below var(--motion-entry) var(--motion-ease) backwards;
}
@keyframes astryx-layer-below {
  from { opacity:0; transform:translateY(-8px) scale(0.95); }
  to { opacity:1; transform:translateY(0) scale(1); }
}
@media (hover:hover) and (pointer:fine) {
  .btn:hover { transform:translateY(-2px); }
  .slip:hover { transform:translateY(-4px); box-shadow:0 12px 22px -16px rgb(0 0 0 / 30%); }
  .leaderboard li:hover { transform:translateX(4px); background-color:hsl(var(--wash)); }
}
@media (prefers-reduced-motion:reduce) {
  .btn, .take-form button, .reset, .mobile-menu summary, .slip, .leaderboard li,
  .top nav a, .menu-list a, .link, .foot-nav a, .sign-in, .take-form { transition:none; }
  .btn:hover, .btn:active, .take-form button:active, .reset:active, .mobile-menu summary:active,
  .slip:hover, .leaderboard li:hover { transform:none; }
  .mobile-menu[open] .menu-list { animation:none; }
}
