/* roulang page: index */
:root {
      --brand-indigo: #4f46e5;
      --brand-purple: #7c3aed;
      --brand-cyan: #06b6d4;
      --brand-orange: #f97316;
      --dark-slate: #0b0f19;
      --dark-card: #131b2e;
      --text-main: #0f172a;
      --text-muted: #475569;
    }
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
      scroll-behavior: smooth;
    }
    body {
      font-family: 'Noto Sans SC', 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
      background-color: #0b0f19;
      color: #0f172a;
      line-height: 1.6;
      overflow-x: hidden;
    }
    .custom-gradient-text {
      background: linear-gradient(135deg, #a5b4fc 0%, #38bdf8 50%, #c084fc 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .glow-box {
      box-shadow: 0 0 40px -10px rgba(79, 70, 229, 0.3);
    }
    .glow-border {
      border: 1px solid rgba(255, 255, 255, 0.12);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .glow-border:hover {
      border-color: rgba(99, 102, 241, 0.5);
      box-shadow: 0 10px 30px -10px rgba(99, 102, 241, 0.3);
      transform: translateY(-4px);
    }
    .accordion-content {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease-out, opacity 0.3s ease;
      opacity: 0;
    }
    .accordion-content.active {
      max-height: 240px;
      opacity: 1;
    }
    .video-card-glow {
      position: relative;
    }
    .video-card-glow::before {
      content: '';
      position: absolute;
      inset: -2px;
      background: linear-gradient(45deg, #4f46e5, #06b6d4, #7c3aed);
      border-radius: 1.25rem;
      z-index: -1;
      opacity: 0.4;
      filter: blur(8px);
      transition: opacity 0.3s;
    }
    .video-card-glow:hover::before {
      opacity: 0.9;
    }
