/* NOVARIS CLEAN – kritische Premium-Erstansicht */

html.novaris-booting,
html.novaris-booting body {
  background: #050505;
}

#novaris-page-veil {
  position: fixed;
  z-index: 2147483000;
  inset: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 44%, rgba(214,175,89,.16), transparent 22%),
    linear-gradient(140deg, #080705 0%, #050505 62%, #121007 100%);
  color: #fff4d2;
  isolation: isolate;
  opacity: 1;
  visibility: visible;
  transition: opacity 240ms cubic-bezier(.2,.7,.2,1), visibility 240ms step-end;
}

#novaris-page-veil::before,
#novaris-page-veil::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

#novaris-page-veil::before {
  width: min(76vw, 780px);
  height: 1px;
  top: 50%;
  background: linear-gradient(90deg, transparent, rgba(247,230,173,.1), rgba(247,230,173,.85), rgba(247,230,173,.1), transparent);
  box-shadow: 0 0 24px rgba(214,175,89,.42);
  animation: novaris-boot-line 2.4s ease-in-out infinite;
}

#novaris-page-veil::after {
  width: min(72vw, 820px);
  height: min(72vw, 820px);
  border: 1px solid rgba(214,175,89,.12);
  border-radius: 50%;
  transform: scale(.62);
  box-shadow: 0 0 0 55px rgba(214,175,89,.018), 0 0 0 110px rgba(214,175,89,.012);
  animation: novaris-boot-orbit 3.4s ease-in-out infinite;
}

.novaris-boot-content {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  gap: 1.25rem;
  padding: 2rem;
  text-align: center;
}

.novaris-boot-monogram {
  display: grid;
  width: clamp(4.4rem, 10vw, 6.5rem);
  height: clamp(4.4rem, 10vw, 6.5rem);
  place-items: center;
  border: 1px solid rgba(247,230,173,.72);
  box-shadow: 0 0 0 7px rgba(214,175,89,.045), inset 0 0 26px rgba(214,175,89,.12);
  color: #d6af59;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(3rem, 6.4vw, 4.5rem);
  font-weight: 700;
  line-height: 1;
}

.novaris-boot-wordmark {
  margin: .15rem 0 0;
  color: #fff4d2;
  font-size: .67rem;
  font-weight: 900;
  letter-spacing: .34em;
  text-indent: .34em;
  text-transform: uppercase;
}

.novaris-boot-subline {
  margin: 0;
  color: rgba(255,244,210,.58);
  font-size: .56rem;
  font-weight: 800;
  letter-spacing: .19em;
  text-transform: uppercase;
}

html.novaris-ready #novaris-page-veil {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

@keyframes novaris-boot-line {
  0%, 100% { transform: scaleX(.34); opacity: .35; }
  50% { transform: scaleX(1); opacity: 1; }
}

@keyframes novaris-boot-orbit {
  0%, 100% { transform: scale(.62); opacity: .45; }
  50% { transform: scale(.86); opacity: .88; }
}

@media (prefers-reduced-motion: reduce) {
  #novaris-page-veil::before,
  #novaris-page-veil::after { animation: none; }
}
