/* roulang page: index */
:root {
      --primary: #0F52BA;
      --accent: #FF5722;
      --dark: #0A1128;
      --bg-light: #F4F7FB;
      --text-main: #1E293B;
      --text-muted: #64748B;
      --border: #E2E8F0;
    }
    html {
      scroll-behavior: smooth;
      font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    }
    body {
      background-color: var(--bg-light);
      color: var(--text-main);
      overflow-x: hidden;
    }
    .hero-bg {
      background-image: linear-gradient(135deg, rgba(10, 17, 40, 0.92) 0%, rgba(15, 82, 186, 0.85) 100%), url('/assets/images/d10949b05c9d6dd6.webp');
      background-size: cover;
      background-position: center;
    }
    .tech-bg {
      background-image: linear-gradient(rgba(10, 17, 40, 0.95), rgba(28, 37, 65, 0.98)), url('/assets/images/88875f18cb99d215.webp');
      background-size: cover;
      background-position: center;
    }
    .cta-banner {
      background: linear-gradient(135deg, #0F52BA 0%, #FF5722 100%);
    }
    .card-hover {
      transition: transform 0.25s ease, box-shadow 0.25s ease;
    }
    .card-hover:hover {
      transform: translateY(-5px);
      box-shadow: 0 14px 28px rgba(15, 82, 186, 0.08);
    }
