:root {
  --bg: #ffffff;
  --text-blue: #4a89c0;
  --text-muted: #7cb1db;
}

body {
  margin: 0;
  padding: 0;
  text-align: center;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color: var(--text-blue);
  background-color: var(--bg);
  width: 100vw;
  height: 100svh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

h1 {
  margin: 0;
  padding: 0;
  width: min(95vw, 1200px);
  height: auto;
  perspective: 1200px;
  display: flex;
  justify-content: center;
  pointer-events: none;
  z-index: 1;
}

.rex-svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
  transform: rotateX(12deg);
  filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.05));
}

.rex-svg text {
  font-family: 'Bebas Neue', 'Haettenschweiler', 'Arial Narrow', sans-serif;
  font-weight: 900;
  font-size: 340px;
  fill: var(--text-blue);
  transform: scaleY(1.4);
  transform-origin: center;
  letter-spacing: -4px;
  text-rendering: optimizeLegibility;
}

.credits {
  margin-top: -1vh; 
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2em;
  position: relative;
  z-index: 10;
}

header {
  font-size: 0.95em;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--text-blue);
  opacity: 0.8;
}

footer {
  font-size: 1.4em;
  font-weight: 700;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5em 1em;
}

ul li {
  padding: 0;
}

a:link,
a:active,
a:visited {
  text-decoration: none;
  color: var(--text-blue);
  transition: all 0.2s ease-in-out;
  border-bottom: 2px solid var(--text-blue);
}

a:hover {
  opacity: 0.6;
  border-bottom: 2px dotted var(--text-blue);
}
