/* roulang page: index */
:root {
      --color-brand: #0052D9;
      --color-brand-light: #EBF1FD;
      --color-brand-navy: #0A1F44;
      --color-amber: #FF7D00;
      --color-bg-base: #F8FAFC;
      --color-text-title: #0F172A;
      --color-text-body: #334155;
      --color-border: #E2E8F0;
      --shadow-sm: 0 4px 20px -2px rgba(15, 23, 42, 0.05);
      --shadow-hover: 0 16px 32px -4px rgba(0, 82, 217, 0.12);
    }
    
    body {
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Heiti SC", sans-serif;
      background-color: var(--color-bg-base);
      color: var(--color-text-body);
      -webkit-font-smoothing: antialiased;
    }

    .card-hover {
      transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-hover:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-hover);
      border-color: #BFDBFE;
    }

    /* 移动端菜单控制 */
    #mobile-menu {
      transition: max-height 0.3s ease-in-out, opacity 0.25s ease-in-out;
    }
    #mobile-menu.hidden-menu {
      max-height: 0;
      opacity: 0;
      overflow: hidden;
      pointer-events: none;
    }
    #mobile-menu.active-menu {
      max-height: 480px;
      opacity: 1;
      overflow: visible;
      pointer-events: auto;
    }
