/* roulang page: index */
:root {
      --color-primary: #1F2421;
      --color-accent: #D4A373;
      --color-slate-green: #4F6D7A;
      --color-bg-paper: #F9F9F8;
      --color-dark: #161917;
      --card-border: rgba(0, 0, 0, 0.08);
      --card-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05);
    }
    body {
      color: #2b2f2d;
      background-color: var(--color-bg-paper);
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
      line-height: 1.75;
      -webkit-font-smoothing: antialiased;
    }
    h1, h2, h3, h4, h5, h6 {
      color: var(--color-primary);
      line-height: 1.28;
      letter-spacing: -0.015em;
    }
    .custom-card {
      border: 1px solid var(--card-border);
      box-shadow: var(--card-shadow);
      background-color: #FFFFFF;
      transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .custom-card:hover {
      box-shadow: 0 12px 28px -4px rgba(0, 0, 0, 0.08);
      border-color: rgba(212, 163, 115, 0.5);
      transform: translateY(-2px);
    }
    .btn-brand {
      background-color: var(--color-primary);
      color: #FFFFFF;
      transition: all 0.2s ease;
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }
    .btn-brand:hover {
      background-color: #2F3732;
      box-shadow: 0 4px 14px rgba(31, 36, 33, 0.25);
    }
    .btn-accent {
      background-color: var(--color-accent);
      color: #FFFFFF;
      transition: all 0.2s ease;
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }
    .btn-accent:hover {
      background-color: #BC8D5E;
      box-shadow: 0 4px 14px rgba(212, 163, 115, 0.3);
    }
    .custom-section {
      padding-top: 5rem;
      padding-bottom: 5rem;
    }
    @media (max-width: 768px) {
      .custom-section {
        padding-top: 3.5rem;
        padding-bottom: 3.5rem;
      }
    }
