/* roulang page: index */
:root {
      --primary: #1B362F;
      --primary-hover: #264D43;
      --accent: #FF6B35;
      --accent-hover: #E85924;
      --text-main: #141716;
      --text-muted: #4A5568;
      --bg-light: #F8F9FA;
      --bg-dark: #111615;
      --border-color: #E2E8F0;
      --radius: 12px;
      --shadow-sm: 0 2px 8px rgba(0,0,0,0.04);
      --shadow-md: 0 10px 25px -5px rgba(0,0,0,0.06), 0 8px 10px -6px rgba(0,0,0,0.04);
      --shadow-lg: 0 20px 30px -10px rgba(27,54,47,0.12);
    }
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      color: var(--text-main);
      background-color: #ffffff;
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
    }
    html {
      scroll-behavior: smooth;
    }
    .custom-container {
      max-width: 1240px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 1.25rem;
      padding-right: 1.25rem;
    }
    .section-spacing {
      padding-top: 5rem;
      padding-bottom: 5rem;
    }
    .card-hover {
      transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-hover:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-lg);
    }
    details summary::-webkit-details-marker {
      display: none;
    }
    .accent-gradient-badge {
      background: linear-gradient(135deg, #FF6B35 0%, #FF8A5B 100%);
    }
