/* roulang page: index */
:root {
      --color-primary: #0F2444;
      --color-secondary: #1A365D;
      --color-accent: #F97316;
      --color-bg: #F8FAFC;
      --color-text-main: #0F172A;
      --color-text-body: #334155;
      --color-text-muted: #64748B;
      --color-border: rgba(226, 232, 240, 0.85);
    }
    html {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    }
    body {
      background-color: var(--color-bg);
      color: var(--color-text-body);
      overflow-x: hidden;
    }
    .hero-overlay {
      background: linear-gradient(135deg, rgba(11, 17, 32, 0.94) 0%, rgba(15, 36, 68, 0.88) 50%, rgba(26, 54, 93, 0.78) 100%);
    }
    .badge-pill {
      display: inline-flex;
      align-items: center;
      padding: 0.25rem 0.875rem;
      border-radius: 9999px;
      font-size: 0.8125rem;
      font-weight: 600;
      letter-spacing: 0.025em;
    }
    .badge-accent {
      background-color: rgba(249, 115, 22, 0.12);
      color: #EA580C;
      border: 1px solid rgba(249, 115, 22, 0.25);
    }
    .badge-blue {
      background-color: rgba(26, 54, 93, 0.08);
      color: #1A365D;
      border: 1px solid rgba(26, 54, 93, 0.18);
    }
    .card-border-gradient {
      border: 1px solid rgba(226, 232, 240, 0.9);
      transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .card-border-gradient:hover {
      border-color: rgba(249, 115, 22, 0.4);
      transform: translateY(-4px);
    }
    .faq-answer {
      transition: max-height 0.35s cubic-bezier(0, 1, 0, 1), opacity 0.3s ease;
    }
    .faq-answer.collapsed {
      max-height: 0;
      opacity: 0;
      overflow: hidden;
    }
    .faq-answer.expanded {
      max-height: 400px;
      opacity: 1;
    }
