@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&display=swap");

.loginPage {
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  width: 100%;
  padding: clamp(20px, 4vw, 56px);
  display: grid;
  align-items: center;
  justify-items: start;
  background-color: #d8d4c8;
  background-image: url("/login-background.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.loginPanel {
  position: relative;
  z-index: 1;
  max-width: 820px;
  margin-left: -24px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.loginTitle,
.tagline,
.statusText {
  text-align: center;
}

.loginAuraWrap {
  pointer-events: none;
  position: absolute;
  right: -100px;
  top: 52.5%;
  transform: translateY(-50%);
  opacity: 0.95;
}

.loginTitle {
  margin: 0;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.6rem, 9.5vw, 7.6rem);
  letter-spacing: 0.02em;
  line-height: 0.9;
  color: #242226;
  text-shadow: 5px 5px 0 #6b4dcb;
  white-space: nowrap;
}

.tagline {
  margin: clamp(20px, 3vw, 34px) 0 1;
  color: #0d1016;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(0.8rem, 1.9vw, 2.7rem);
  font-weight: 500;
}

.statusText {
  margin-top: 32px;
  color: #15181f;
  font-size: 1.05rem;
}

.loginButton {
  position: relative;
  isolation: isolate;
  margin-top: clamp(34px, 4vw, 52px);
  width: clamp(130px, 14vw, 180px);
  height: clamp(130px, 14vw, 180px);
  background: transparent;
  color: #111016;
  border: none;
  border-radius: 50%;
  padding: 0;
  display: grid;
  place-items: center;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 450;
  line-height: 1;
  letter-spacing: 0.03em;
  box-shadow: none;
  margin-left: auto;
  margin-right: auto;
}

.loginButton::before {
  content: "";
  position: absolute;
  inset: -22%;
  border-radius: 50%;
  z-index: -1;
  background:
    radial-gradient(
      120% 120% at 22% 78%,
      rgba(255, 76, 168, 0.34) 0%,
      rgba(255, 76, 168, 0.2) 34%,
      rgba(255, 76, 168, 0.08) 56%,
      transparent 78%
    ),
    radial-gradient(
      36% 32% at 66% 29%,
      rgba(255, 56, 174, 0.96) 0%,
      rgba(255, 56, 174, 0.66) 34%,
      rgba(255, 56, 174, 0.22) 58%,
      transparent 78%
    ),
    radial-gradient(
      84% 82% at 49% 56%,
      rgba(255, 209, 151, 0.96) 0%,
      rgba(255, 167, 118, 0.9) 44%,
      rgba(250, 124, 128, 0.82) 69%,
      rgba(238, 126, 152, 0.3) 86%,
      rgba(238, 126, 152, 0.04) 100%
    );
  filter: blur(14px) saturate(1.2);
  opacity: 0.98;
  pointer-events: none;
}

.loginButton:hover {
  transform: none;
}

.loginButton:focus-visible {
  outline: 2px solid rgba(20, 16, 22, 0.75);
  outline-offset: 4px;
}

@media (max-width: 768px) {
  .loginPanel {
    margin-left: 0;
  }

  .loginAuraWrap {
    display: none;
  }

  .loginTitle {
    line-height: 0.95;
  }

  .tagline {
    max-width: 28ch;
  }
}

@media (min-width: 768px) {
  .auraRingVideo {
    width: 1800px;
    height: 1800px;
  }
}
