/* roulang page: index */
:root {
      --brand-blue: #2563EB;
      --brand-blue-hover: #1D4ED8;
      --brand-navy: #0F172A;
      --slate-soft: #F8FAFC;
      --border-gray: #E2E8F0;
      --text-muted: #64748B;
    }
    body {
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
      line-height: 1.75;
      color: #1E293B;
      background-color: #FFFFFF;
    }
    .hero-bg {
      background-image: linear-gradient(to right, rgba(15, 23, 42, 0.88), rgba(30, 58, 138, 0.75)), url('/assets/images/fbb952d19214b640.png');
      background-size: cover;
      background-position: center;
    }
    .card-shadow {
      box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.05), 0 8px 10px -6px rgba(15, 23, 42, 0.05);
      transition: all 0.25s ease-in-out;
    }
    .card-shadow:hover {
      transform: translateY(-3px);
      box-shadow: 0 20px 30px -10px rgba(37, 99, 235, 0.12), 0 10px 15px -5px rgba(15, 23, 42, 0.04);
    }
    .timeline-node::before {
      content: '';
      position: absolute;
      top: 20px;
      left: 14px;
      height: calc(100% - 10px);
      width: 2px;
      background: #CBD5E1;
      z-index: 0;
    }
    @media (min-width: 1024px) {
      .timeline-node::before {
        display: none;
      }
    }
