:root {
  --gp-bg: #050202;
  --gp-red: #BE0E1D;
  --gp-dark-red: #700710;
  --gp-gold: #F5A329;
  --gp-gold-light: #FFD066;
  --gp-brown: #502817;
}

.gp-animated-splash {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 43%, rgba(112, 7, 16, 0.62), rgba(16, 5, 5, 0.88) 48%, var(--gp-bg) 100%),
    radial-gradient(circle at 17% 88%, rgba(245, 163, 41, 0.20), transparent 54%),
    radial-gradient(circle at 84% 16%, rgba(80, 40, 23, 0.42), transparent 54%),
    var(--gp-bg);
  opacity: 1;
  visibility: visible;
}

.gp-animated-splash::before,
.gp-animated-splash::after {
  content: "";
  position: absolute;
  width: min(92vw, 1180px);
  height: min(38vw, 470px);
  border: 1px solid rgba(245, 163, 41, 0.18);
  border-radius: 999px;
  transform: rotate(-7deg);
  animation: gp-orbit-breathe 3.2s ease-in-out infinite;
}
.gp-animated-splash::after {
  width: min(110vw, 1360px);
  height: min(48vw, 620px);
  border-color: rgba(190, 14, 29, 0.16);
  transform: rotate(-5deg) translateY(36px);
  animation-delay: .35s;
}

.gp-animated-splash__layout {
  position: relative;
  display: grid;
  grid-template-columns: minmax(220px, 400px) 4px minmax(360px, 720px);
  align-items: center;
  justify-content: center;
  gap: clamp(28px, 4.5vw, 70px);
  width: min(1180px, 88vw);
  padding: 48px 24px;
}
.gp-animated-splash__mark {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 1;
  filter: drop-shadow(0 26px 36px rgba(0,0,0,.48));
  animation: gp-mark-enter 920ms cubic-bezier(.17,.89,.28,1.25) 70ms both;
}
.gp-animated-splash__mark::before {
  content:"";
  position:absolute;
  inset:-10%;
  border-radius:999px;
  background:radial-gradient(circle, rgba(190,14,29,.34), transparent 62%);
  filter:blur(24px);
  animation: gp-glow-pulse 1.9s ease-in-out infinite;
}
.gp-animated-splash__orbit {
  position:absolute;
  inset:-7%;
  border-radius:999px;
  border:6px solid rgba(245,163,41,.18);
}
.gp-animated-splash__orbit::before {
  content:"";
  position:absolute;
  inset:-6px;
  border-radius:inherit;
  border:6px solid transparent;
  border-top-color:var(--gp-gold);
  border-right-color:rgba(190,14,29,.86);
  filter:drop-shadow(0 0 12px rgba(245,163,41,.34));
  animation: gp-spin 1.38s linear infinite;
}
.gp-animated-splash__symbol { position:relative; display:block; width:100%; height:auto; }
.gp-animated-splash__divider {
  width:3px;
  height:clamp(210px,28vw,360px);
  border-radius:999px;
  background:linear-gradient(180deg, transparent, rgba(245,163,41,.78), transparent);
  transform-origin:50% 50%;
  animation:gp-divider-draw 700ms cubic-bezier(.2,.7,.2,1) 480ms both;
}
.gp-animated-splash__wordmark { position:relative; display:flex; flex-direction:column; justify-content:center; gap:clamp(22px,3.2vw,38px); }
.gp-animated-splash__word { display:block; height:auto; object-fit:contain; filter:drop-shadow(0 18px 24px rgba(0,0,0,.28)); }
.gp-animated-splash__word--goldplan { width:min(100%,660px); animation:gp-word-enter-right 820ms cubic-bezier(.16,.84,.31,1) 620ms both; }
.gp-animated-splash__word--analytics { width:min(84%,560px); animation:gp-word-enter-right 820ms cubic-bezier(.16,.84,.31,1) 800ms both; }
.gp-animated-splash__progress { width:min(54%,360px); height:6px; overflow:hidden; border-radius:999px; background:rgba(245,163,41,.14); opacity:0; animation:gp-progress-appear 500ms ease 1120ms forwards; }
.gp-animated-splash__progress span { display:block; width:42%; height:100%; border-radius:inherit; background:linear-gradient(90deg, rgba(245,163,41,.18), var(--gp-gold), rgba(190,14,29,.88)); animation:gp-progress-slide 1.45s ease-in-out infinite; }
.gp-animated-splash--complete { pointer-events:none; animation:gp-splash-exit 380ms ease forwards; }

@keyframes gp-mark-enter { 0%{opacity:0;transform:scale(.72) rotate(-8deg)} 70%{opacity:1} 100%{opacity:1;transform:scale(1) rotate(0)} }
@keyframes gp-word-enter-right { 0%{opacity:0;transform:translate3d(48px,18px,0);filter:blur(8px)} 100%{opacity:1;transform:translate3d(0,0,0);filter:blur(0) drop-shadow(0 18px 24px rgba(0,0,0,.28))} }
@keyframes gp-divider-draw { from{opacity:0;transform:scaleY(0)} to{opacity:1;transform:scaleY(1)} }
@keyframes gp-spin { to{transform:rotate(360deg)} }
@keyframes gp-orbit-breathe { 0%,100%{opacity:.68;transform:rotate(-7deg) scale(1)} 50%{opacity:1;transform:rotate(-7deg) scale(1.035)} }
@keyframes gp-glow-pulse { 0%,100%{opacity:.72;transform:scale(.96)} 50%{opacity:1;transform:scale(1.06)} }
@keyframes gp-progress-appear { to{opacity:1} }
@keyframes gp-progress-slide { 0%{transform:translateX(-115%)} 100%{transform:translateX(260%)} }
@keyframes gp-splash-exit { to{opacity:0;visibility:hidden;transform:scale(1.015)} }

@media (max-width:780px), (orientation:portrait) {
  .gp-animated-splash__layout { grid-template-columns:1fr; grid-template-rows:auto auto; gap:clamp(28px,6vh,46px); width:min(88vw,520px); padding:32px 20px; text-align:center; }
  .gp-animated-splash__divider { display:none; }
  .gp-animated-splash__mark { width:min(72vw,360px); justify-self:center; }
  .gp-animated-splash__wordmark { align-items:center; gap:clamp(18px,3.4vh,26px); }
  .gp-animated-splash__word--goldplan { width:min(76vw,370px); }
  .gp-animated-splash__word--analytics { width:min(62vw,310px); }
  .gp-animated-splash__progress { width:min(54vw,260px); }
}
@media (prefers-reduced-motion:reduce) {
  .gp-animated-splash, .gp-animated-splash *, .gp-animated-splash::before, .gp-animated-splash::after { animation:none!important; transition:none!important; }
  .gp-animated-splash__word, .gp-animated-splash__mark, .gp-animated-splash__divider, .gp-animated-splash__progress { opacity:1; transform:none; filter:none; }
}
