:root {
  color-scheme: dark;
  --page-background: #000000;
  --mark-color: #f5f5f3;
}

* {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  min-height: 100%;
  background: var(--page-background);
  overscroll-behavior: none;
}

body {
  margin: 0;
  overflow: hidden;
}

main {
  position: fixed;
  inset: 0;
  display: grid;
  width: 100%;
  height: 100vh;
  height: 100svh;
  place-items: center;
  background: var(--page-background);
}

.wordmark {
  display: block;
  width: 100vw;
  height: 100vh;
  height: 100svh;
  color: var(--mark-color);
  fill: currentColor;
  shape-rendering: geometricPrecision;
}

.motion-shape {
  will-change: transform, opacity;
}

.rule {
  transform-box: fill-box;
  transform-origin: left center;
}

.letter {
  transform-box: fill-box;
  transform-origin: center bottom;
}

.tail-piece {
  transform-box: fill-box;
  transform-origin: center top;
}

.tail-cap {
  transform-origin: 48% 82%;
}

@media (prefers-reduced-motion: reduce) {
  .motion-shape {
    will-change: auto;
  }
}
