/* roulang page: index */
:root {
            --brand-primary: #0F4C81;
            --brand-accent: #F97316;
            --brand-cyan: #06B6D4;
            --bg-canvas: #F8FAFC;
        }
        body {
            background-color: var(--bg-canvas);
            color: #334155;
            -webkit-font-smoothing: antialiased;
        }
        .hero-mesh {
            background: radial-gradient(circle at 10% 20%, rgba(2, 132, 199, 0.08) 0%, transparent 40%),
                        radial-gradient(circle at 90% 80%, rgba(249, 115, 22, 0.05) 0%, transparent 40%);
        }
        .glass-header {
            background: rgba(255, 255, 255, 0.94);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }
        .soft-card {
            background: #FFFFFF;
            border: 1px solid rgba(226, 232, 240, 0.8);
            box-shadow: 0 4px 20px -2px rgba(15, 76, 129, 0.05);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .soft-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 30px -4px rgba(15, 76, 129, 0.12);
            border-color: rgba(6, 182, 212, 0.35);
        }
        .vertical-mockup {
            aspect-ratio: 9 / 18.5;
            box-shadow: 0 25px 50px -12px rgba(15, 76, 129, 0.25);
        }
        /* 隐藏滚动条 */
        .no-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .no-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
