:root,[data-bs-theme="dark"] {
  --aurora-bg-gradient: radial-gradient(120% 100% at 50% 0%,
                        var(--navy-800) 0%,
                        var(--navy-900) 60%,
                        #070b15 100%);
}

[data-bs-theme="light"] {
  --aurora-bg-gradient: radial-gradient(120% 100% at 50% 0%,
                        var(--navy-100) 0%,
                        var(--navy-200) 60%,
                        #ffffff 100%);
}
.aurora-bg {
    position: fixed;
    inset: 0;
    overflow: hidden;
    isolation: isolate;
    z-index: -1;
  background: var(--aurora-bg-gradient);
}

/* Background glow layers */
.aurora-layers {
    position: absolute;
    inset: -15% -10%;
    z-index: 0;
}

.aurora.disc {
    position: absolute;
    width: 160vmax;
    height: 160vmax;
    left: 50%;
    top: 48%;
    transform: translate(-50%, -50%);
    filter: blur(72px) saturate(115%);
    opacity: .42;
    mix-blend-mode: screen;
    will-change: transform;
}


.disc-a{
  background: conic-gradient(
    from 0deg at 40% 50%,
    color-mix(in oklab, var(--overa-orange) 85%, white 10%) 0 25%,
    transparent 30% 60%,
    color-mix(in oklab, var(--accent-cyan) 70%, white 5%) 65% 85%,
    transparent 90% 100%
  );
  animation: spinA 42s linear infinite;
}
.disc-b{
  background: conic-gradient(
    from 180deg at 65% 55%,
    color-mix(in oklab, var(--accent-cyan) 70%, white 5%) 0 18%,
    transparent 22% 58%,
    color-mix(in oklab, var(--overa-orange) 86%, white 6%) 62% 82%,
    transparent 86% 100%
  );
  opacity:.36;
  animation: spinB 56s linear infinite reverse;
}



@keyframes spinA {
    to {
        transform: translate(-50%, -50%) rotate(360deg)
    }
}

@keyframes spinB {
    to {
        transform: translate(-50%, -50%) rotate(360deg)
    }
}

/* Morphing glow blob */
.aurora.blob {
    position: absolute;
    width: 68vmax;
    height: 68vmax;
    left: 50%;
    top: 60%;
    transform: translate(-50%, -50%);
    background: radial-gradient(50% 60% at 35% 30%, color-mix(in oklab, var(--overa-orange) 90%, white 6%) 0%, transparent 70%),
    radial-gradient(60% 70% at 70% 65%, color-mix(in oklab, #e9ecef 75%, white 5%) 0%, transparent 80%);
    filter: blur(46px);
    opacity: .55;
    mix-blend-mode: screen;
    border-radius: 48% 52% 60% 40% / 42% 55% 45% 58%;
    animation: blobMorph 22s ease-in-out infinite alternate;
    will-change: border-radius, transform, opacity;
}

@keyframes blobMorph {
    25% {
        border-radius: 55% 45% 50% 50% / 40% 60% 46% 54%;
        transform: translate(-50%, -52%) rotate(2deg) scale(1.02);
        opacity: .6;
    }
    50% {
        border-radius: 44% 56% 58% 42% / 58% 42% 60% 40%;
        transform: translate(-50%, -48%) rotate(-2deg) scale(1.01);
        opacity: .58;
    }
    75% {
        border-radius: 60% 40% 46% 54% / 46% 64% 36% 54%;
        transform: translate(-50%, -51%) rotate(1deg);
        opacity: .57;
    }
    100% {
        border-radius: 48% 52% 60% 40% / 42% 55% 45% 58%;
        transform: translate(-50%, -50%) rotate(0deg) scale(1);
        opacity: .55;
    }
}

/* Animated logo sizing (responsive with min/max bounds) */
.hero-logo {
    height: clamp(40px, 10vw, 96px);
    width: auto;
    display: inline-block;
}