/* roulang page: index */
:root {
      --primary: #1E5BF0;
      --primary-hover: #1448C8;
      --secondary: #0E38B1;
      --accent: #00B4D8;
      --bg-light: #F8FAFC;
      --bg-white: #FFFFFF;
      --dark-surface: #0F172A;
      --text-main: #0F172A;
      --text-muted: #64748B;
      --border-color: #E2E8F0;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      background-color: var(--bg-light);
      color: var(--text-main);
      overflow-x: hidden;
    }

    /* 弥散阴影与平滑交互 */
    .card-shadow {
      box-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.05);
      transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.28s ease;
    }

    .card-shadow:hover {
      box-shadow: 0 20px 35px -5px rgba(30, 91, 240, 0.12);
      transform: translateY(-4px);
    }

    .dark-card-shadow {
      box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.45);
      border: 1px solid rgba(255, 255, 255, 0.08);
    }

    /* FAQ 手风琴动画 */
    .faq-content {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease-out, opacity 0.3s ease;
      opacity: 0;
    }

    .faq-item.active .faq-content {
      max-height: 280px;
      opacity: 1;
    }

    .faq-item.active .faq-icon {
      transform: rotate(180deg);
    }
