/* --- LOADING SCREEN CSS (Bouncing Dots) --- */
    #loader-wrapper {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #fffdfb; /* Your --bg-light color */
      z-index: 9999;
      display: flex;
      justify-content: center;
      align-items: center;
      transition: opacity 0.5s ease-out, visibility 0.5s;
    }

    #loader-wrapper.fade-out {
      opacity: 0;
      visibility: hidden;
    }

    .bouncing-loader {
      display: flex;
      justify-content: center;
    }

    .bouncing-loader > div {
      width: 16px;
      height: 16px;
      margin: 3px 6px;
      border-radius: 50%;
      background-color: #7a1538; /* Your --maroon-dark color */
      opacity: 1;
      animation: bouncing-loader 0.6s infinite alternate;
    }

    .bouncing-loader > div:nth-child(2) {
      animation-delay: 0.2s;
    }

    .bouncing-loader > div:nth-child(3) {
      animation-delay: 0.4s;
    }

    @keyframes bouncing-loader {
      to {
        opacity: 0.1;
        transform: translateY(-16px);
      }
    }
