.gw-startup {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 22% 22%,rgba(239,78,154,.13),transparent 31rem),
    radial-gradient(circle at 82% 72%,rgba(67,216,232,.12),transparent 29rem),
    #030405;
  color: #fff;
  opacity: 1;
  isolation: isolate;
}

.gw-startup__center {
  position:relative;
  display: grid;
  justify-items: center;
  width: min(88vw, 440px);
  text-align: center;
}

.gw-startup__aura{
  position:absolute;
  left:50%;top:41%;
  width:min(78vw,330px);height:min(78vw,330px);
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:conic-gradient(from 180deg,#ef4e9a,#8d72ff,#43d8e8,#4b8fff,#ff9c45,#ef4e9a);
  filter:blur(58px);
  opacity:0;
  animation:gw-aura-reveal 1.7s cubic-bezier(.2,.8,.2,1) .08s forwards,gw-aura-turn 8s linear infinite;
}

.gw-startup__mark-frame{
  position:relative;
  width:clamp(132px,35vw,174px);
  height:clamp(218px,57vw,286px);
  overflow:hidden;
  opacity:0;
  transform:scale(.82);
  animation:gw-frame-reveal .78s cubic-bezier(.2,.82,.2,1) .1s forwards;
}

.gw-startup__mark {
  display:block;
  width:100%;
  height: auto;
  opacity:1;
  filter:drop-shadow(0 0 20px rgba(141,114,255,.2));
  animation:gw-mark-float 3.8s ease-in-out .85s infinite;
}

.gw-startup__name {
  display: flex;
  justify-content: center;
  margin-top: 18px;
  font: 800 clamp(25px, 7vw, 40px)/1 Arial, Helvetica, sans-serif;
  letter-spacing: .21em;
  white-space: nowrap;
}

.gw-startup__name span {
  display: inline-block;
  opacity: 0;
  transform: translateY(16px) scale(.84);
  filter:blur(5px);
  animation: gw-letter-reveal .42s cubic-bezier(.2,.8,.2,1) forwards;
}

.gw-startup__name span:nth-child(1) { animation-delay: .72s; }
.gw-startup__name span:nth-child(2) { animation-delay: .77s; }
.gw-startup__name span:nth-child(3) { animation-delay: .82s; }
.gw-startup__name span:nth-child(4) { animation-delay: .87s; }
.gw-startup__name span:nth-child(5) { animation-delay: .92s; }
.gw-startup__name span:nth-child(6) { animation-delay: .97s; }
.gw-startup__name span:nth-child(7) { animation-delay: 1.02s; }
.gw-startup__name span:nth-child(8) { animation-delay: 1.07s; }

.gw-startup__line {
  width: 0;
  height: 3px;
  margin-top: 16px;
  border-radius: 999px;
  background:linear-gradient(90deg,#ef4e9a,#8d72ff,#43d8e8,#ff9c45);
  box-shadow:0 0 18px rgba(141,114,255,.42);
  animation: gw-line-reveal .52s ease 1.16s forwards;
}

.gw-startup--closing {
  pointer-events: none;
  animation: gw-startup-close .46s ease forwards;
}

@keyframes gw-aura-reveal{0%{opacity:0;transform:translate(-50%,-50%) scale(.45)}55%{opacity:.27}100%{opacity:.14;transform:translate(-50%,-50%) scale(1)}}
@keyframes gw-aura-turn{to{rotate:360deg}}
@keyframes gw-frame-reveal{0%{opacity:0;transform:scale(.68);clip-path:inset(48% 0 48%)}68%{opacity:1;transform:scale(1.025);clip-path:inset(0)}100%{opacity:1;transform:scale(1);clip-path:inset(0)}}
@keyframes gw-mark-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}

@keyframes gw-letter-reveal {
  to { opacity: 1; transform: none; filter:none; }
}

@keyframes gw-line-reveal {
  to { width: 74px; }
}

@keyframes gw-startup-close {
  to { opacity: 0; transform: scale(1.025); visibility: hidden; }
}

@media (prefers-reduced-motion: reduce) {
  .gw-startup__mark,
  .gw-startup__mark-frame,
  .gw-startup__aura,
  .gw-startup__name span,
  .gw-startup__line,
  .gw-startup--closing { animation-duration: .01ms !important; animation-delay: 0ms !important; }
}
