/* roulang page: index */
:root {
      --primary-navy: #0F3B68;
      --primary-blue: #1D4ED8;
      --accent-gold: #D97706;
      --accent-teal: #0D9488;
      --text-main: #1E293B;
      --text-muted: #475569;
      --bg-light: #F8FAFC;
      --bg-alt: #F1F5F9;
      --border-color: #E2E8F0;
      --shadow-soft: 0 4px 20px -2px rgba(15, 59, 104, 0.06), 0 2px 6px -1px rgba(15, 59, 104, 0.04);
      --shadow-hover: 0 12px 28px -4px rgba(15, 59, 104, 0.12), 0 4px 10px -2px rgba(15, 59, 104, 0.06);
    }
    html {
      scroll-behavior: smooth;
    }
    body {
      color: var(--text-main);
      background-color: #FFFFFF;
      font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      line-height: 1.75;
      -webkit-font-smoothing: antialiased;
    }
    .custom-card-shadow {
      box-shadow: var(--shadow-soft);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .custom-card-shadow:hover {
      box-shadow: var(--shadow-hover);
      transform: translateY(-4px);
    }
    .btn-primary {
      background-color: var(--primary-navy);
      color: #FFFFFF;
      transition: all 0.25s ease;
    }
    .btn-primary:hover {
      background-color: var(--primary-blue);
      box-shadow: 0 6px 16px rgba(29, 78, 216, 0.25);
      transform: translateY(-2px);
    }
    .btn-accent {
      background-color: var(--accent-gold);
      color: #FFFFFF;
      transition: all 0.25s ease;
    }
    .btn-accent:hover {
      background-color: #B45309;
      box-shadow: 0 6px 16px rgba(217, 119, 6, 0.3);
      transform: translateY(-2px);
    }
