/* roulang page: index */
:root {
        --color-primary: #1E40AF;
        --color-primary-hover: #1D4ED8;
        --color-accent-cyan: #06B6D4;
        --color-accent-orange: #F97316;
        --color-bg-base: #FFFFFF;
        --color-bg-alt: #F8FAFC;
        --color-text-main: #0F172A;
        --color-text-body: #334155;
        --color-text-muted: #64748B;
        --border-color: #E2E8F0;
        --radius-box: 1rem;
        --shadow-soft: 0 4px 20px -2px rgba(15, 23, 42, 0.06);
        --shadow-hover: 0 20px 25px -5px rgba(30, 64, 175, 0.1), 0 8px 10px -6px rgba(30, 64, 175, 0.05);
      }
      html {
        scroll-behavior: smooth;
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      }
      body {
        background-color: var(--color-bg-base);
        color: var(--color-text-body);
        line-height: 1.65;
        margin: 0;
        padding: 0;
        overflow-x: hidden;
      }
      .custom-card {
        background: #FFFFFF;
        border: 1px solid var(--border-color);
        border-radius: var(--radius-box);
        box-shadow: var(--shadow-soft);
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
      }
      .custom-card:hover {
        transform: translateY(-4px);
        box-shadow: var(--shadow-hover);
        border-color: #93C5FD;
      }
      .hero-gradient {
        background: linear-gradient(135deg, #F0F7FF 0%, #FFFFFF 50%, #F5F3FF 100%);
      }
      .dark-tech-pattern {
        background-color: #0F172A;
        background-image: radial-gradient(rgba(37, 99, 235, 0.18) 1px, transparent 1px);
        background-size: 24px 24px;
      }
      .faq-item summary::-webkit-details-marker {
        display: none;
      }
      .faq-item[open] summary .faq-chevron {
        transform: rotate(180deg);
      }
      .badge-glow {
        box-shadow: 0 0 12px rgba(6, 182, 212, 0.4);
      }
