
    /* === Preloader === */
    #preloader {
      position: fixed;
      background: var(--white);
      width: 100%;
      height: 100%;
      z-index: 9999;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      transition: opacity 0.8s ease;
    }

    .preloader-content {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
    }

    .preloader-logo {
      width: 240px;
      height: auto;
      margin-bottom: 30px;
      object-fit: contain;
      animation: pulse 2s infinite;
      filter: drop-shadow(0 0 10px rgba(192, 213, 174, 0.5));
    }

    @keyframes pulse {
      0% { transform: scale(0.95); opacity: 0.7; }
      50% { transform: scale(1); opacity: 1; }
      100% { transform: scale(0.95); opacity: 0.7; }
    }

    .line-loader {
      width: 200px;
      height: 2px;
      background: rgba(222, 219, 194, 0.2);
      border-radius: 2px;
      overflow: hidden;
      position: relative;
    }

    .line-loader::before {
      content: '';
      display: block;
      height: 100%;
      width: 0;
      background: var(--light-moss);
      animation: line-load 1.8s cubic-bezier(0.4,0,0.2,1) infinite;
      border-radius: 2px;
    }

    @keyframes line-load {
      0% { width: 0; }
      50% { width: 100%; }
      100% { width: 0; }
    }
