:root {
  color-scheme: light;
}

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  min-height: 100%;
  background: #fff;
  color: #111;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.75;
  padding: 56px 24px;
  -webkit-font-smoothing: antialiased;
}

main {
  max-width: 600px;
  margin: 0 auto;
}

p {
  margin: 0 0 1.75em 0;
}

a {
  color: #111;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

a:hover {
  opacity: 0.7;
}

/* inline logo + name, e.g. [icon] ec database */
.org {
  white-space: nowrap;
}

.org .icon {
  display: inline-block;
  width: 19px;
  height: 19px;
  margin: 0 8px 0 4px;
  vertical-align: -3px;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 0 0 1px #e5e5e5;
  overflow: hidden;
}

/* the logo files have lots of whitespace; zoom in to fill the tile */
.org .icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: scale(1.5);
}

.bears {
  display: flex;
  gap: 16px;
  margin-bottom: 1.75em;
}

.bears img {
  flex: 1;
  min-width: 0;
  width: 100%;
  height: auto;
}

@media (max-width: 480px) {
  body {
    font-size: 15px;
    padding: 40px 16px;
  }
}

.org .icon.no-zoom img {
  transform: scale(0.85);
}

/* glitch-in on load: each block appears pixelated, then sharpens (filters live in glitch.js) */
@keyframes glitch-in {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
    filter: url(#px-2);
  }
  50%,
  100% {
    opacity: 1;
    filter: none;
  }
}

main > * {
  opacity: 0;
  animation: glitch-in 0.3s steps(1, end) forwards;
}

main > *:nth-child(2) { animation-delay: 0.06s; }
main > *:nth-child(3) { animation-delay: 0.12s; }
main > *:nth-child(4) { animation-delay: 0.18s; }
main > *:nth-child(5) { animation-delay: 0.24s; }
main > *:nth-child(6) { animation-delay: 0.3s; }

@media (prefers-reduced-motion: reduce) {
  main > * {
    opacity: 1;
    animation: none;
  }
}

.org .icon.ec img {
  transform: scale(1.2);
  image-rendering: pixelated;
}
