body[data-site-page="discord"] {
  background: #fafafa;
  color: #2f2f2f;
  font-family: var(--site-font);
  -webkit-font-smoothing: antialiased;
}
.discord-page, .discord-page * { box-sizing: border-box; }
.discord-page {
  width: min(984px, 100%);
  margin-inline: auto;
  padding-top: min(9.553vw, 94px);
  padding-bottom: 55px;
  direction: ltr;
  outline: none;
}
.discord-headline { position: relative; width: 72.3577%; aspect-ratio: 712 / 261; margin: 0 auto; }
.discord-sticker--logo { left: 41.8539%; top: 0; width: 16.2921%; height: 44.4444%; }
.discord-sticker--title { left: 16.2921%; top: 51.341%; width: 67.4157%; height: 48.659%; margin: 0; }
.discord-title-surprise {
  position: absolute;
  z-index: 3;
  inset: 51.341% 5% 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  text-align: center;
  font-size: clamp(12px, 1.6vw, 16px);
  line-height: 1.45;
  pointer-events: none;
}
.discord-title-surprise[hidden] { display: none; }
.discord-title-surprise p { margin: 0; }
.discord-title-surprise strong { font-size: clamp(15px, 2.25vw, 22px); font-weight: 650; }
.discord-title-surprise a { color: inherit; text-decoration: none; pointer-events: auto; }
.discord-title-surprise a:hover { text-decoration: underline; text-underline-offset: 3px; }
.discord-sticker--title .discord-sticker-restore::before { opacity: .25; }
.discord-hero-action { display: flex; justify-content: center; margin-top: 32px; }
.discord-collage {
  position: relative;
  isolation: isolate;
  width: 100%;
  aspect-ratio: 984 / 764;
  margin-top: 52px;
}
.discord-phone, .discord-hand, .discord-sticker { position: absolute; }
.discord-phone {
  left: 28.3239%; top: 17.6702%; width: 43.8308%; height: 40.5434%;
  object-fit: cover;
  filter: drop-shadow(0 2.895px 3.474px rgb(0 0 0 / 25%));
}
.discord-hand { left: 34.9593%; top: 70.0262%; width: 28.4553%; height: 29.9738%; }
.discord-sticker { z-index: 1; }
.discord-sticker--mascot { left: 10.1626%; top: 2.356%; width: 18.1911%; height: 24.8691%; }
.discord-sticker--air-build { left: 62.0935%; top: 0; width: 27.7439%; height: 35.733%; }
.discord-sticker--free { left: 21.3565%; top: 44.2205%; width: 19.8171%; height: 25.5236%; }
.discord-sticker--ticket { left: 11.0292%; top: 75.5785%; width: 18.3943%; height: 19.5026%; }
.discord-sticker--freedom { left: 67.0818%; top: 60.5992%; width: 22.3577%; height: 28.7958%; }
/* Play once as each piece enters the viewport; the resting collage stays still. */
.discord-collage [data-entrance] { pointer-events: none; }
.discord-collage [data-entrance="pending"] { opacity: 0; }
.discord-sticker[data-entrance="playing"] {
  animation: discord-sticker-fall 720ms cubic-bezier(.22, .8, .3, 1) both;
  animation-delay: var(--entrance-delay, 0ms);
  transform-origin: 50% 50%;
}
.discord-sticker--mascot { --entrance-x: -5px; --entrance-angle: -3deg; }
.discord-sticker--air-build { --entrance-x: 6px; --entrance-angle: 3deg; --entrance-delay: 55ms; }
.discord-sticker--free { --entrance-x: -3px; --entrance-angle: -2deg; --entrance-delay: 90ms; }
.discord-sticker--ticket { --entrance-x: -5px; --entrance-angle: -3deg; --entrance-delay: 45ms; }
.discord-sticker--freedom { --entrance-x: 5px; --entrance-angle: 3deg; --entrance-delay: 80ms; }
.discord-hand[data-entrance="playing"] { animation: discord-hand-rise 900ms cubic-bezier(.22, 1, .36, 1) both; }
@keyframes discord-sticker-fall {
  0% { opacity: 0; transform: translate3d(var(--entrance-x), -32px, 0) rotate(var(--entrance-angle)) scale(1.025); }
  30% { opacity: 1; }
  100% { opacity: 1; transform: translate3d(0, 0, 0) rotate(0deg) scale(1); }
}
@keyframes discord-hand-rise {
  from { opacity: 0; transform: translate3d(0, 76px, 0); filter: blur(14px); }
  to { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }
}
@media (prefers-reduced-motion: reduce) {
  .discord-collage [data-entrance] { animation: none; opacity: 1; pointer-events: auto; }
}
.discord-sticker-art { position: absolute; inset: 0; pointer-events: none; }
.discord-sticker-art img { display: block; width: 100%; height: 100%; user-select: none; }
.discord-sticker-art .discord-freedom-type {
  position: absolute;
  left: 3.5977%; top: 30.4645%; width: 92.7273%; height: 36.3636%;
}
.discord-sticker-surface { position: absolute; inset: -15%; opacity: 0; }
.discord-sticker[data-ready] .discord-sticker-surface { opacity: 1; }
.discord-sticker[data-ready] .discord-sticker-art,
.discord-sticker[data-removed] .discord-sticker-art { visibility: hidden; }
.discord-sticker-restore {
  appearance: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  touch-action: manipulation;
}
.discord-sticker-restore[hidden] { display: none; }
.discord-sticker-restore::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(0 0 0 / 8%);
  -webkit-mask: var(--sticker-imprint) center / 100% 100% no-repeat;
  mask: var(--sticker-imprint) center / 100% 100% no-repeat;
}
.discord-sticker-restore:focus-visible { outline: 2px solid #278eff; outline-offset: 5px; border-radius: 8px; }
.discord-sticker:focus-within, .discord-sticker[data-peeling] { z-index: 2; }
.discord-sticker-surface canvas:focus-visible { outline: 2px solid #278eff; outline-offset: 3px; border-radius: 12px; }
.discord-sticker[data-input="pointer"] canvas:focus-visible,
.discord-sticker[data-input="pointer"] .discord-sticker-restore:focus-visible { outline: none; }
.discord-invitation { display: flex; flex-direction: column; align-items: center; gap: 12px; margin-top: 16.8699%; text-align: center; }
.discord-join {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  min-width: 220px;
  padding: 12px 28px;
  border-radius: 999px;
  background: #5865f2;
  color: #fff;
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -.024em;
  text-decoration: none;
  touch-action: manipulation;
}
.discord-join-icon { display: block; width: 22px; height: 22px; flex: none; margin-right: 8px; }
.discord-join--waitlist { background: transparent; color: #2f2f2f; box-shadow: inset 0 0 0 1px #d5d5d5; }
.discord-details .discord-invite-note { width: min(440px, 100%); margin: 0 auto; text-wrap: pretty; }
.discord-page a:focus-visible { outline: 3px solid #278eff; outline-offset: 6px; border-radius: 4px; }
.discord-details {
  width: min(669px, calc(100% - 40px));
  margin: 24px auto 0;
  padding-top: 124px;
  color: #2f2f2f;
  text-align: center;
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -.024em;
}
.discord-details p { margin: 0; }
.discord-details .discord-eligibility { margin-top: 24px; }
.discord-inline-link { display: inline-block; vertical-align: baseline; white-space: nowrap; }
.discord-link-icon { display: inline-block; width: 1.25em; height: 1.25em; margin-right: 5px; vertical-align: -.25em; }
.discord-link-icon--calendar { border-radius: 24%; filter: drop-shadow(0 1px 1px rgb(0 0 0 / 12%)); }
.discord-eligibility a { color: inherit; text-decoration: none; }
.discord-eligibility a:not(.discord-calendar):hover { text-decoration: underline; }
.discord-eligibility .discord-calendar { position: relative; }
.discord-calendar-hint {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  z-index: 3;
  transform: translateX(-50%);
  padding: 6px 10px;
  border-radius: 6px;
  background: #222;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  visibility: hidden;
  pointer-events: none;
}
.discord-calendar:hover .discord-calendar-hint,
.discord-calendar:focus-visible .discord-calendar-hint { visibility: visible; }
.discord-details > p strong { font-weight: 600; }
.discord-details .discord-disclaimer {
  max-width: 100%;
  margin: 33px auto 0;
  color: #7d7d7d;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.55;
  letter-spacing: -.01em;
  text-wrap: pretty;
}
.discord-disclaimer p + p { margin-top: 12px; }
.discord-skip { position: fixed; inset: 12px auto auto 20px; z-index: 200; padding: 12px 18px; color: #fff; background: #0b0b0b; border-radius: 8px; transform: translateY(-200%); }
.discord-skip:focus { transform: none; }
@media (max-width: 600px) {
  .discord-page { padding-top: 42px; padding-bottom: 48px; }
  .discord-headline { width: 100%; }
  .discord-hero-action { margin-top: 24px; }
  .discord-title-surprise { inset: 45% 20px auto; min-height: 55%; gap: 6px; }
  .discord-collage { margin-top: 56px; }
  .discord-invitation { margin-top: 64px; }
  .discord-desktop-break { display: none; }
  .discord-details { font-size: 14px; }
  .discord-details .discord-disclaimer { margin-top: 24px; font-size: 12px; }
}
