
    /* Ambient moving glow layer */
    /* ******************************************************* */
    .intro-panel::before {
      content: "";
      position: absolute;
      inset: -40% -20%;
      background:
        radial-gradient(600px 400px at 20% 30%, rgba(105,177,255,.18), transparent 70%),
        radial-gradient(800px 500px at 80% 70%, rgba(34,211,238,.12), transparent 75%);
      animation: ambientDrift 18s ease-in-out infinite alternate;
      pointer-events: none;
      z-index: 0;
      filter: blur(40px);
      opacity: .6;
    }

    /* Ensure text sits above glow */
    /* ******************************************************* */
    .intro-inner {
      position: relative;
      z-index: 1;
      max-width: 880px;
      margin: 0 auto;
    }

    /* Typography refinement */
    /* ******************************************************* */
    .intro-panel h2 {
      margin-top: 0;
      margin-bottom: 24px;
      font-size: clamp(24px, 3vw, 34px);
      font-weight: 600;
      letter-spacing: .5px;
    }

    .intro-panel p {
      color: #c8d6e8;
      line-height: 1.9;
      margin-bottom: 18px;
      font-size: 15.5px;
    }

    .intro-panel p.music-note {
      margin-top: 28px;
      padding-top: 18px;
      border-top: 1px solid rgba(105,177,255,.15);
      font-style: italic;
      color: #dce8f7;
      opacity: .9;
    }

    /* --- Reflective Intro Panel with Ambient Glow --- */
    /* ******************************************************* */
    .intro-panel {
      position: relative;
      margin: 40px 0 20px;
      padding: 48px 40px;
      border-radius: 26px;
      overflow: hidden;
      background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
      border: 1px solid rgba(105,177,255,.18);
      box-shadow: 0 20px 60px rgba(0,0,0,.45);
    }

    /* Ambient moving glow layer */
    /* ******************************************************* */
    .intro-panel::before {
      content: "";
      position: absolute;
      inset: -40% -20%;
      background:
        radial-gradient(700px 450px at 20% 30%, rgba(105,177,255,.16), transparent 70%),
        radial-gradient(900px 550px at 80% 70%, rgba(34,211,238,.10), transparent 75%),
        radial-gradient(600px 400px at 50% 80%, rgba(255, 210, 140, .10), transparent 75%);
      animation: ambientDrift 22s ease-in-out infinite alternate;
      pointer-events: none;
      z-index: 0;
      filter: blur(50px);
      opacity: .65;
    }

    /* Ensure text sits above glow */
    /* ******************************************************* */
    .intro-inner {
      position: relative;
      z-index: 1;
      max-width: 880px;
      margin: 0 auto;
    }

    /* Glow animation */
    /* ******************************************************* */
    @keyframes ambientDrift {
      0% {
        transform: translateX(-2%) translateY(-2%) scale(1);
      }
      50% {
        transform: translateX(2%) translateY(1%) scale(1.05);
      }
      100% {
        transform: translateX(-1%) translateY(2%) scale(1.03);
      }
    }

    /* Typography refinement */
    /* ******************************************************* */
    .intro-panel h2 {
      margin-top: 0;
      margin-bottom: 24px;
      font-size: clamp(24px, 3vw, 34px);
      font-weight: 600;
      letter-spacing: .5px;
    }

    .intro-panel p {
      color: #c8d6e8;
      line-height: 1.9;
      margin-bottom: 18px;
      font-size: 15.5px;
    }

    .intro-panel p.music-note {
      margin-top: 28px;
      padding-top: 18px;
      border-top: 1px solid rgba(105,177,255,.15);
      font-style: italic;
      color: #dce8f7;
      opacity: .9;
    }
    .intro-panel p.music-note {
        margin-top: 28px;
        padding-top: 18px;
        border-top: 1px solid rgba(105, 177, 255, .15);
        font-style: italic;
        color: #dce8f7;
        opacity: .9;
    }
    .intro-panel h2,
.intro-panel p {
  position: relative;
  z-index: 1;
  text-shadow: none;
  mix-blend-mode: normal;
  opacity: 1;
}

.hide-intro {
  display: none !important;
}
