* {
  box-sizing: border-box;
}

html {
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "SF Pro Display",
    "SF Pro Text",
    "Helvetica Neue",
    Arial,
    sans-serif;
}

body {
  margin: 0;
  min-height: 100vh;
  color: white;

  background:
    radial-gradient(
      circle at 50% 18%,
      rgba(56, 116, 255, 0.24),
      transparent 32%
    ),
    radial-gradient(
      circle at 72% 38%,
      rgba(244, 90, 180, 0.13),
      transparent 28%
    ),
    radial-gradient(
      circle at 24% 72%,
      rgba(115, 80, 255, 0.12),
      transparent 32%
    ),
    #07090d;
}

.hero {
  min-height: calc(100vh - 72px);

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 36px 24px;
}

.glass-card {
  width: min(820px, 100%);

  padding: 44px 56px 54px;

  text-align: center;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.07),
      rgba(255, 255, 255, 0.03)
    );

  border: 1px solid rgba(255, 255, 255, 0.12);

  border-radius: 34px;

  backdrop-filter: blur(34px);
  -webkit-backdrop-filter: blur(34px);

  box-shadow:
    0 36px 90px rgba(0, 0, 0, 0.48),
    inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.hero-logo {
  width: 110px;
  height: auto;

  display: block;

  margin: 0 auto 14px;

  filter:
    drop-shadow(0 16px 28px rgba(0, 0, 0, 0.34))
    drop-shadow(0 0 18px rgba(71, 124, 255, 0.14));
}

.eyebrow {
  margin-bottom: 18px;

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.28em;

  color: rgba(255, 255, 255, 0.48);
}

h1 {
  margin: 0;

  font-size: clamp(52px, 8vw, 92px);
  line-height: 0.96;
  letter-spacing: -0.055em;

  font-weight: 700;
}

.subtitle {
  max-width: 600px;

  margin: 26px auto 0;

  font-size: clamp(17px, 2vw, 22px);
  line-height: 1.5;

  color: rgba(255, 255, 255, 0.64);
}

.actions {
  margin-top: 34px;

  display: flex;
  justify-content: center;
  gap: 12px;

  flex-wrap: wrap;
}

.button {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  min-height: 50px;

  padding: 0 24px;

  border-radius: 999px;

  text-decoration: none;

  font-weight: 600;
  font-size: 15px;

  transition:
    transform 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease;
}

.button:hover {
  transform: translateY(-2px);
}

.primary {
  color: #08090c;
  background: white;
}

.primary:hover {
  background: rgba(255, 255, 255, 0.9);
}

.secondary {
  color: white;

  background: rgba(255, 255, 255, 0.07);

  border: 1px solid rgba(255, 255, 255, 0.12);
}

.secondary:hover {
  background: rgba(255, 255, 255, 0.11);
}

.coming-soon {
  margin-top: 24px;

  font-size: 13px;

  color: rgba(255, 255, 255, 0.34);
}

footer {
  min-height: 72px;

  display: flex;
  align-items: center;
  justify-content: center;

  gap: 22px;

  padding: 18px;

  font-size: 13px;

  color: rgba(255, 255, 255, 0.36);
}

footer a {
  color: rgba(255, 255, 255, 0.52);

  text-decoration: none;
}

footer a:hover {
  color: white;
}

@media (max-width: 600px) {

  .hero {
    padding: 20px 14px;
  }

  .glass-card {
    padding: 34px 20px 42px;

    border-radius: 26px;
  }

  .hero-logo {
    width: 95px;

    margin-bottom: 12px;
  }

  .eyebrow {
    margin-bottom: 16px;
  }

  h1 {
    font-size: 50px;
  }

  .subtitle {
    margin-top: 22px;
  }

  .actions {
    margin-top: 28px;

    flex-direction: column;
  }

  .button {
    width: 100%;
  }

  footer {
    flex-wrap: wrap;

    gap: 14px;
  }
}
