/* Founder-approved Sovereign Elements premium hero treatment.
   The founder-supplied emblem is a static PNG asset. Motion is browser-only;
   there is no AI image-generation or rendering cost per visit. */

.se-premium-emblem-stage {
  position: relative;
  isolation: isolate;
  width: clamp(31rem, 46vw, 48rem) !important;
  max-width: none !important;
  aspect-ratio: 912 / 860 !important;
  transform: translateX(2%);
  overflow: visible;
}

.se-premium-emblem-halo {
  position: absolute;
  inset: 3%;
  z-index: 0;
  border-radius: 9999px;
  background: conic-gradient(
    from 0deg,
    transparent 0deg 38deg,
    rgba(34, 211, 238, 0.66) 54deg,
    transparent 74deg 184deg,
    rgba(251, 191, 36, 0.82) 210deg,
    transparent 232deg 360deg
  );
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 1px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 1px));
  opacity: 0.16;
  filter: drop-shadow(0 0 13px rgba(34, 211, 238, 0.30)) drop-shadow(0 0 18px rgba(251, 191, 36, 0.30));
  will-change: transform, opacity;
}

.se-premium-emblem-image {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: block !important;
  width: 183.333333% !important;
  max-width: none !important;
  height: auto !important;
  clip-path: inset(8.607864% 0 0 45.454545%);
  opacity: 1 !important;
  filter: drop-shadow(0 30px 72px rgba(0, 0, 0, 0.54)) drop-shadow(0 0 34px rgba(245, 158, 11, 0.12));
  transform-origin: 50% 52%;
  will-change: transform;
}

/* One-time arrival story: controlled uncertainty resolves into one electrical
   charge, a central activation, recognizable sound, and an incomplete spiral. */
.se-premium-emblem-veil,
.se-premium-emblem-strike,
.se-premium-emblem-impact,
.se-premium-emblem-wave,
.se-premium-emblem-spiral {
  position: absolute;
  pointer-events: none;
  opacity: 0;
}

.se-premium-emblem-veil {
  inset: -3%;
  z-index: 4;
  background: radial-gradient(circle at 53% 49%, rgba(3, 5, 9, 0.03) 0 12%, rgba(3, 5, 9, 0.48) 52%, rgba(2, 4, 8, 0.86) 100%);
  opacity: 0;
}

.se-premium-emblem-strike {
  z-index: 6;
  left: 30%;
  top: -4%;
  width: 20px;
  height: 57%;
  filter: drop-shadow(0 0 5px rgba(255, 251, 235, 0.92)) drop-shadow(0 0 15px rgba(245, 158, 11, 0.72));
  transform: translateX(-50%) rotate(-24deg) scaleY(0);
  transform-origin: 50% 0%;
}

.se-premium-emblem-strike::before,
.se-premium-emblem-strike::after {
  position: absolute;
  content: '';
  transform-origin: 50% 0%;
}

.se-premium-emblem-strike::before {
  inset: 0;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    rgba(251, 191, 36, 0.18) 13%,
    rgba(255, 251, 235, 0.98) 55%,
    rgba(245, 158, 11, 0.96) 84%,
    transparent 100%
  );
  clip-path: polygon(42% 0, 62% 0, 49% 38%, 70% 38%, 34% 72%, 54% 72%, 39% 100%, 44% 65%, 25% 65%, 55% 31%, 37% 31%);
}

.se-premium-emblem-strike::after {
  right: 2px;
  top: 51%;
  width: 1px;
  height: 30%;
  background: linear-gradient(to bottom, rgba(254, 243, 199, 0.88), rgba(245, 158, 11, 0.58), transparent);
  transform: rotate(21deg);
}

.se-premium-emblem-impact {
  z-index: 7;
  left: 53%;
  top: 49%;
  width: 15%;
  aspect-ratio: 1;
  border-radius: 9999px;
  background: radial-gradient(
    circle,
    rgba(255, 251, 235, 0.96) 0%,
    rgba(251, 191, 36, 0.54) 16%,
    rgba(245, 158, 11, 0.18) 38%,
    transparent 70%
  );
  filter: drop-shadow(0 0 24px rgba(251, 191, 36, 0.52));
  transform: translate(-50%, -50%) scale(0.18);
}

.se-premium-emblem-impact::after {
  position: absolute;
  inset: 24%;
  border: 1px solid rgba(255, 251, 235, 0.86);
  border-radius: inherit;
  box-shadow: 0 0 9px rgba(251, 191, 36, 0.88), inset 0 0 8px rgba(251, 191, 36, 0.72);
  content: '';
}

.se-premium-emblem-wave {
  top: 43%;
  z-index: 6;
  display: flex;
  width: 43%;
  height: 12%;
  align-items: center;
  gap: clamp(2px, 0.48vw, 5px);
  filter: drop-shadow(0 0 7px rgba(251, 191, 36, 0.68)) drop-shadow(0 0 16px rgba(245, 158, 11, 0.34));
}

.se-premium-emblem-wave::after {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(251, 191, 36, 0.48), rgba(255, 251, 235, 0.94));
  content: '';
}

.se-premium-emblem-frequency {
  width: 1px;
  height: calc(var(--frequency-peak) * 100%);
  flex: 1 1 0;
  border-radius: 999px;
  background: linear-gradient(to bottom, transparent, rgba(254, 243, 199, 0.98), rgba(245, 158, 11, 0.78), transparent);
  opacity: 0.92;
  transform: scaleY(0.08);
}

.se-premium-emblem-wave-left {
  right: 47%;
  flex-direction: row-reverse;
  transform: scaleX(0);
  transform-origin: 100% 50%;
}

.se-premium-emblem-wave-left::after {
  transform: scaleX(-1);
}

.se-premium-emblem-wave-right {
  left: 53%;
  transform: scaleX(0);
  transform-origin: 0% 50%;
}

.se-premium-emblem-spiral {
  inset: 2% -3% 1% -3%;
  z-index: 5;
  transform: scale(0.68) rotate(-16deg);
  transform-origin: 53% 49%;
}

.se-premium-emblem-trail {
  position: absolute;
  border: 1px solid transparent;
  border-radius: 50%;
  filter: drop-shadow(0 0 6px rgba(251, 191, 36, 0.62));
}

.se-premium-emblem-trail-1 {
  inset: 7% 2% 10% 5%;
  border-top-color: rgba(254, 243, 199, 0.82);
  border-right-color: rgba(245, 158, 11, 0.62);
  transform: rotate(18deg);
}

.se-premium-emblem-trail-2 {
  inset: 14% 8% 4% 1%;
  border-right-color: rgba(251, 191, 36, 0.78);
  border-bottom-color: rgba(245, 158, 11, 0.38);
  transform: rotate(-12deg);
}

.se-premium-emblem-trail-3 {
  inset: 20% 15% 17% 11%;
  border-top-color: rgba(254, 243, 199, 0.60);
  border-left-color: rgba(245, 158, 11, 0.48);
  transform: rotate(34deg);
}

.se-premium-emblem-spark {
  position: absolute;
  width: var(--spark-size, 4px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: rgba(255, 251, 235, 0.96);
  box-shadow: 0 0 7px 2px rgba(251, 191, 36, 0.68);
}

.se-premium-emblem-spark-1 { --spark-size: 5px; left: 9%; top: 56%; }
.se-premium-emblem-spark-2 { right: 8%; top: 31%; }
.se-premium-emblem-spark-3 { right: 20%; bottom: 5%; }
.se-premium-emblem-spark-4 { --spark-size: 3px; left: 25%; top: 9%; }
.se-premium-emblem-spark-5 { --spark-size: 2px; right: 4%; bottom: 34%; }
.se-premium-emblem-spark-6 { --spark-size: 3px; left: 39%; bottom: 1%; }

.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-veil {
  animation: se-premium-veil-reveal 700ms ease-out 0ms 1 both;
}

.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-strike {
  animation: se-premium-strike 720ms cubic-bezier(0.18, 0.72, 0.2, 1) 120ms 1 both;
}

.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-impact {
  animation: se-premium-impact 620ms cubic-bezier(0.2, 0.76, 0.24, 1) 650ms 1 both;
}

.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-wave-left,
.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-wave-right {
  animation: se-premium-wave-release 720ms cubic-bezier(0.18, 0.72, 0.2, 1) 820ms 1 both;
}

.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-frequency {
  animation: se-premium-frequency-decode 520ms cubic-bezier(0.18, 0.72, 0.2, 1) 900ms 1 both;
}

.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-spiral {
  animation: se-premium-spiral-awaken 1280ms cubic-bezier(0.16, 0.74, 0.22, 1) 1120ms 1 both;
}

.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-trail {
  animation: se-premium-trail-decay 1180ms ease-out 1160ms 1 both;
}

.se-premium-emblem-stage.is-ready:not(.is-settled) .se-premium-emblem-spark {
  animation: se-premium-spark-decay 1040ms ease-out 1260ms 1 both;
}

/* Retention phase: the world around the emblem moves slowly; the emblem itself
   stays grounded and authoritative. */
.se-premium-emblem-stage.is-settled .se-premium-emblem-halo {
  opacity: 0.46;
  animation: se-premium-orbit 28s linear infinite;
}

.se-premium-emblem-stage.is-settled .se-premium-emblem-image {
  animation: se-premium-emblem-breathe 10s ease-in-out infinite;
}

.se-premium-emblem-stage.is-paused .se-premium-emblem-halo,
.se-premium-emblem-stage.is-paused .se-premium-emblem-image,
.se-premium-emblem-stage.is-paused .se-premium-emblem-veil,
.se-premium-emblem-stage.is-paused .se-premium-emblem-strike,
.se-premium-emblem-stage.is-paused .se-premium-emblem-impact,
.se-premium-emblem-stage.is-paused .se-premium-emblem-wave,
.se-premium-emblem-stage.is-paused .se-premium-emblem-frequency,
.se-premium-emblem-stage.is-paused .se-premium-emblem-spiral,
.se-premium-emblem-stage.is-paused .se-premium-emblem-trail,
.se-premium-emblem-stage.is-paused .se-premium-emblem-spark {
  animation-play-state: paused !important;
}

.se-premium-emblem-stage.is-failed .se-premium-emblem-halo,
.se-premium-emblem-stage.is-failed .se-premium-emblem-veil,
.se-premium-emblem-stage.is-failed .se-premium-emblem-strike,
.se-premium-emblem-stage.is-failed .se-premium-emblem-impact,
.se-premium-emblem-stage.is-failed .se-premium-emblem-wave,
.se-premium-emblem-stage.is-failed .se-premium-emblem-spiral {
  opacity: 0 !important;
  animation: none !important;
}

@keyframes se-premium-veil-reveal {
  0%, 18% { opacity: 0.72; }
  100% { opacity: 0; }
}

.se-premium-motion-control {
  position: absolute;
  right: 4%;
  bottom: 3%;
  z-index: 8;
  display: grid;
  width: 2.1rem;
  height: 2.1rem;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 9999px;
  background: rgba(3, 5, 9, 0.58);
  color: rgba(244, 244, 245, 0.66);
  font: 700 0.68rem/1 system-ui, sans-serif;
  box-shadow: 0 8px 26px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(10px);
  cursor: pointer;
  transition: border-color 180ms ease, color 180ms ease, background 180ms ease;
}

.se-premium-motion-control:hover,
.se-premium-motion-control:focus-visible {
  border-color: rgba(253, 230, 138, 0.46);
  background: rgba(24, 24, 27, 0.78);
  color: rgba(254, 243, 199, 0.96);
  outline: none;
}

@keyframes se-premium-strike {
  0% {
    opacity: 0;
    transform: translateX(-50%) rotate(-24deg) scaleY(0);
  }
  18% { opacity: 0.92; }
  72% {
    opacity: 1;
    transform: translateX(-50%) rotate(-24deg) scaleY(1);
  }
  100% {
    opacity: 0;
    transform: translateX(-50%) rotate(-24deg) scaleY(1);
  }
}

@keyframes se-premium-frequency-decode {
  0% { transform: scaleY(0.08); }
  42% { transform: scaleY(1); }
  100% { transform: scaleY(0.16); }
}

@keyframes se-premium-spiral-awaken {
  0% {
    opacity: 0;
    transform: scale(0.68) rotate(-16deg);
  }
  32% { opacity: 0.82; }
  78% { opacity: 0.54; }
  100% {
    opacity: 0;
    transform: scale(1.03) rotate(22deg);
  }
}

@keyframes se-premium-trail-decay {
  0% { filter: drop-shadow(0 0 2px rgba(251, 191, 36, 0.32)); }
  38% { filter: drop-shadow(0 0 9px rgba(251, 191, 36, 0.78)); }
  100% { filter: drop-shadow(0 0 3px rgba(251, 191, 36, 0.18)); }
}

@keyframes se-premium-spark-decay {
  0% { opacity: 0; transform: scale(0.35) translate3d(0, 0, 0); }
  34% { opacity: 0.92; }
  100% { opacity: 0; transform: scale(0.15) translate3d(10px, -7px, 0); }
}

@keyframes se-premium-impact {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.18);
  }
  34% { opacity: 0.86; }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.55);
  }
}

@keyframes se-premium-wave-release {
  0% {
    opacity: 0;
    transform: scaleX(0);
  }
  28% { opacity: 0.82; }
  82% { opacity: 0.48; }
  100% {
    opacity: 0;
    transform: scaleX(1);
  }
}

@keyframes se-premium-emblem-breathe {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-3px) scale(1.004); }
}

@keyframes se-premium-orbit {
  to { transform: rotate(360deg); }
}

@media (max-width: 1279px) {
  .se-premium-emblem-stage {
    width: clamp(29rem, 45vw, 38rem) !important;
    transform: translateX(1%);
  }
}

@media (max-width: 1023px) {
  .se-premium-emblem-stage {
    width: min(100%, 34rem) !important;
    margin-top: 0.5rem;
    transform: none;
  }

  .se-premium-emblem-strike {
    height: 48%;
  }

  .se-premium-emblem-wave {
    gap: 2px;
  }

  .se-premium-emblem-spark:nth-of-type(n + 8) {
    display: none;
  }
}

@media (max-width: 639px) {
  .se-premium-emblem-stage {
    width: min(100%, 27rem) !important;
  }

  .se-premium-emblem-image {
    filter: drop-shadow(0 22px 54px rgba(0, 0, 0, 0.48)) drop-shadow(0 0 22px rgba(245, 158, 11, 0.10));
  }

  .se-premium-emblem-strike {
    height: 43%;
    filter: drop-shadow(0 0 4px rgba(254, 243, 199, 0.72)) drop-shadow(0 0 10px rgba(245, 158, 11, 0.46));
  }

  .se-premium-emblem-wave {
    box-shadow: 0 0 8px rgba(251, 191, 36, 0.36);
  }

  .se-premium-motion-control {
    right: 3%;
    bottom: 2%;
    width: 1.9rem;
    height: 1.9rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .se-premium-emblem-halo,
  .se-premium-emblem-image,
  .se-premium-emblem-veil,
  .se-premium-emblem-strike,
  .se-premium-emblem-impact,
  .se-premium-emblem-wave {
    animation: none !important;
  }

  .se-premium-emblem-halo {
    opacity: 0.36;
  }

  .se-premium-emblem-strike,
  .se-premium-emblem-impact,
  .se-premium-emblem-wave,
  .se-premium-emblem-spiral,
  .se-premium-motion-control {
    display: none !important;
  }
}
