/* roulang page: index */
:root{
            --bg:#fbf8ff;
            --bg-2:#f4eefc;
            --card:#ffffff;
            --line:rgba(90, 54, 150, .12);
            --line-strong:rgba(111, 59, 209, .22);
            --text:#231d2d;
            --muted:#6f6780;
            --muted-2:#8f879d;
            --primary:#7b3ff2;
            --primary-2:#5c2dc4;
            --secondary:#ef7d90;
            --accent:#f5b97a;
            --shadow:0 18px 50px rgba(55, 28, 103, .10);
            --shadow-hover:0 24px 62px rgba(55, 28, 103, .16);
            --radius-xl:28px;
            --radius-lg:22px;
            --radius-md:18px;
            --radius-sm:14px;
            --container:1280px;
            --header-h:88px;
            --transition:all .28s ease;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;
            font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",system-ui,-apple-system,sans-serif;
            color:var(--text);
            background:
                radial-gradient(circle at 10% 10%, rgba(123,63,242,.10), transparent 28%),
                radial-gradient(circle at 85% 12%, rgba(239,125,144,.11), transparent 24%),
                radial-gradient(circle at 50% 86%, rgba(245,185,122,.11), transparent 26%),
                linear-gradient(180deg, #fff 0%, var(--bg) 36%, #fff 100%);
            line-height:1.7;
            overflow-x:hidden;
        }
        body::before{
            content:"";
            position:fixed;
            inset:0;
            pointer-events:none;
            opacity:.55;
            background-image:
                linear-gradient(rgba(111,59,209,.035) 1px, transparent 1px),
                linear-gradient(90deg, rgba(111,59,209,.035) 1px, transparent 1px);
            background-size:36px 36px;
            mask-image:linear-gradient(180deg, rgba(0,0,0,.30), rgba(0,0,0,0) 92%);
            z-index:-1;
        }
        a{color:inherit;text-decoration:none;transition:var(--transition)}
        a:hover{color:var(--primary)}
        img{max-width:100%;display:block}
        button,input,textarea,select{font:inherit}
        ::selection{background:rgba(123,63,242,.16);color:var(--text)}
        .page-shell{
            position:relative;
            min-height:100vh;
        }
        .container-xxl{
            max-width:var(--container);
        }
        .site-header{
            position:fixed;
            inset:18px 0 auto;
            z-index:1030;
            transition:var(--transition);
        }
        .site-header .nav-wrap{
            backdrop-filter:blur(16px);
            background:rgba(255,255,255,.82);
            border:1px solid rgba(111,59,209,.14);
            box-shadow:0 14px 42px rgba(43,22,79,.08);
            border-radius:24px;
            padding:16px 20px;
            transition:var(--transition);
        }
        body.is-scrolled .site-header{
            inset:10px 0 auto;
        }
        body.is-scrolled .site-header .nav-wrap{
            padding:12px 18px;
            border-radius:20px;
            background:rgba(255,255,255,.92);
            box-shadow:0 12px 28px rgba(43,22,79,.10);
        }
        .brand{
            display:flex;
            align-items:center;
            gap:12px;
            font-weight:800;
            letter-spacing:.2px;
            color:var(--text);
            min-width:max-content;
        }
        .brand-mark{
            width:42px;height:42px;
            border-radius:14px;
            display:grid;
            place-items:center;
            background:linear-gradient(135deg, var(--primary-2), var(--secondary) 60%, var(--accent));
            color:#fff;
            box-shadow:0 14px 28px rgba(111,59,209,.22);
            flex:none;
            position:relative;
        }
        .brand-mark::after{
            content:"";
            position:absolute;
            inset:6px;
            border:1px solid rgba(255,255,255,.45);
            border-radius:10px;
        }
        .brand-name{
            display:flex;
            flex-direction:column;
            line-height:1.1;
        }
        .brand-name strong{
            font-size:1.02rem;
        }
        .brand-name span{
            font-size:.8rem;
            color:var(--muted);
            font-weight:500;
            margin-top:4px;
        }
        .navbar{
            padding:0;
        }
        .navbar-nav{
            gap:6px;
            align-items:center;
        }
        .navbar .nav-link{
            color:var(--muted);
            font-weight:600;
            border-radius:999px;
            padding:.78rem 1rem;
            position:relative;
        }
        .navbar .nav-link:hover,
        .navbar .nav-link:focus{
            color:var(--primary);
            background:rgba(123,63,242,.07);
        }
        .navbar .nav-link.active{
            color:var(--primary);
            background:rgba(123,63,242,.10);
            box-shadow:inset 0 0 0 1px rgba(123,63,242,.08);
        }
        .nav-actions{
            display:flex;
            align-items:center;
            gap:12px;
            margin-left:auto;
        }
        .command-search{
            display:flex;
            align-items:center;
            gap:10px;
            width:min(320px, 100%);
            padding:10px 14px;
            border-radius:999px;
            border:1px solid rgba(111,59,209,.14);
            background:#fff;
            box-shadow:0 8px 18px rgba(28,18,54,.04);
        }
        .command-search svg{
            width:18px;height:18px;
            color:var(--muted-2);
            flex:none;
        }
        .command-search input{
            border:none;
            outline:none;
            width:100%;
            color:var(--text);
            background:transparent;
            font-size:.95rem;
        }
        .shortcut{
            font-size:.74rem;
            color:var(--muted-2);
            padding:3px 8px;
            border-radius:8px;
            background:rgba(111,59,209,.06);
            border:1px solid rgba(111,59,209,.10);
            flex:none;
        }
        .btn{
            border:0;
            box-shadow:none !important;
        }
        .btn-primary-gradient{
            background:linear-gradient(135deg, var(--primary-2), var(--primary) 48%, var(--secondary));
            color:#fff;
            border-radius:999px;
            padding:.86rem 1.22rem;
            font-weight:700;
            box-shadow:0 16px 32px rgba(111,59,209,.22);
            transition:var(--transition);
            border:1px solid rgba(255,255,255,.12);
        }
        .btn-primary-gradient:hover,
        .btn-primary-gradient:focus{
            color:#fff;
            transform:translateY(-3px);
            box-shadow:0 22px 42px rgba(111,59,209,.26);
            background:linear-gradient(135deg, var(--primary), var(--secondary) 62%, var(--accent));
        }
        .btn-ghost{
            background:rgba(255,255,255,.84);
            border:1px solid rgba(111,59,209,.14);
            color:var(--text);
            border-radius:999px;
            padding:.86rem 1.2rem;
            font-weight:700;
            transition:var(--transition);
        }
        .btn-ghost:hover,
        .btn-ghost:focus{
            color:var(--primary);
            border-color:rgba(123,63,242,.30);
            transform:translateY(-2px);
            background:#fff;
        }
        .btn-outline-soft{
            background:transparent;
            border:1px solid rgba(111,59,209,.18);
            color:var(--primary-2);
            border-radius:999px;
            padding:.76rem 1.08rem;
            font-weight:700;
        }
        .btn-outline-soft:hover{
            background:rgba(123,63,242,.07);
            color:var(--primary);
            border-color:rgba(123,63,242,.26);
        }
        .mobile-topbar{
            display:none;
        }
        .hero{
            padding:150px 0 88px;
            position:relative;
        }
        .hero-grid{
            display:grid;
            grid-template-columns:1.08fr .92fr;
            gap:34px;
            align-items:center;
        }
        .eyebrow{
            display:inline-flex;
            align-items:center;
            gap:10px;
            padding:.5rem .9rem;
            border-radius:999px;
            background:rgba(123,63,242,.08);
            color:var(--primary-2);
            border:1px solid rgba(123,63,242,.12);
            font-weight:700;
            font-size:.92rem;
            margin-bottom:18px;
        }
        .eyebrow i{
            width:8px;height:8px;border-radius:50%;
            background:linear-gradient(180deg, var(--primary), var(--secondary));
            box-shadow:0 0 0 5px rgba(123,63,242,.10);
            display:inline-block;
        }
        .hero h1{
            font-size:clamp(2.55rem, 4vw, 4.1rem);
            line-height:1.05;
            letter-spacing:-.03em;
            font-weight:900;
            margin:0 0 18px;
        }
        .hero h1 .accent{
            background:linear-gradient(135deg, var(--primary-2), var(--secondary) 60%, var(--accent));
            -webkit-background-clip:text;
            background-clip:text;
            color:transparent;
        }
        .hero p.lead{
            color:var(--muted);
            font-size:1.08rem;
            max-width:38rem;
            margin-bottom:28px;
        }
        .hero-actions{
            display:flex;
            flex-wrap:wrap;
            gap:14px;
            margin-bottom:28px;
        }
        .hero-badges{
            display:flex;
            flex-wrap:wrap;
            gap:12px;
        }
        .data-pill{
            display:flex;
            align-items:center;
            gap:12px;
            padding:14px 16px;
            border-radius:18px;
            background:rgba(255,255,255,.92);
            border:1px solid rgba(111,59,209,.12);
            box-shadow:0 12px 24px rgba(28,18,54,.05);
            min-width:170px;
        }
        .data-pill .value{
            font-size:1.22rem;
            font-weight:900;
            color:var(--primary-2);
            line-height:1;
        }
        .data-pill .txt{
            font-size:.9rem;
            color:var(--muted);
            line-height:1.35;
        }
        .hero-card{
            position:relative;
            background:
                linear-gradient(135deg, rgba(111,59,209,.96), rgba(239,125,144,.95) 54%, rgba(245,185,122,.92)),
                linear-gradient(180deg, #7b3ff2, #ef7d90);
            color:#fff;
            border-radius:32px;
            padding:26px;
            box-shadow:0 24px 60px rgba(111,59,209,.22);
            overflow:hidden;
            min-height:520px;
        }
        .hero-card::before,
        .hero-card::after{
            content:"";
            position:absolute;
            border-radius:999px;
            background:rgba(255,255,255,.12);
            filter:blur(2px);
        }
        .hero-card::before{
            width:180px;height:180px;
            top:-42px;right:-22px;
        }
        .hero-card::after{
            width:260px;height:260px;
            bottom:-90px;left:-70px;
            background:rgba(255,255,255,.08);
        }
        .hero-card .mini-head{
            display:flex;
            justify-content:space-between;
            align-items:center;
            position:relative;
            z-index:1;
            margin-bottom:18px;
        }
        .mini-head .brand-badge{
            display:inline-flex;
            align-items:center;
            gap:10px;
            padding:.48rem .8rem;
            border-radius:999px;
            background:rgba(255,255,255,.16);
            border:1px solid rgba(255,255,255,.16);
            font-weight:700;
        }
        .mini-head .status{
            font-size:.88rem;
            color:rgba(255,255,255,.88);
        }
        .hero-card .preview-panel{
            position:relative;
            z-index:1;
            background:rgba(255,255,255,.14);
            border:1px solid rgba(255,255,255,.18);
            border-radius:26px;
            padding:18px;
            backdrop-filter:blur(10px);
            box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
        }
        .preview-grid{
            display:grid;
            grid-template-columns:1.1fr .9fr;
            gap:16px;
        }
        .preview-card{
            background:rgba(255,255,255,.12);
            border:1px solid rgba(255,255,255,.14);
            border-radius:22px;
            padding:18px;
        }
        .preview-card h3{
            font-size:1.06rem;
            margin:0 0 8px;
            font-weight:800;
        }
        .preview-card p{
            margin:0;
            font-size:.92rem;
            color:rgba(255,255,255,.88);
        }
        .progress-bars{
            display:grid;
            gap:10px;
            margin-top:16px;
        }
        .bar-item{
            display:grid;
            grid-template-columns:86px 1fr 42px;
            gap:10px;
            align-items:center;
            font-size:.88rem;
        }
        .bar-track{
            height:10px;
            border-radius:999px;
            background:rgba(255,255,255,.16);
            overflow:hidden;
        }
        .bar-fill{
            height:100%;
            border-radius:inherit;
            background:linear-gradient(90deg, #fff, rgba(255,255,255,.68));
        }
        .bar-fill.w-82{width:82%}
        .bar-fill.w-68{width:68%}
        .bar-fill.w-91{width:91%}
        .floating-card{
            position:absolute;
            right:22px;
            bottom:22px;
            width:min(320px, 86%);
            background:rgba(255,255,255,.92);
            color:var(--text);
            border-radius:22px;
            padding:18px;
            box-shadow:0 18px 34px rgba(42,22,83,.18);
            z-index:2;
        }
        .floating-card .label{
            font-size:.82rem;
            color:var(--primary);
            font-weight:800;
            margin-bottom:8px;
        }
        .floating-card .title{
            font-size:1.02rem;
            font-weight:800;
            margin-bottom:8px;
        }
        .floating-card .desc{
            font-size:.92rem;
            color:var(--muted);
            margin-bottom:0;
        }
        .section{
            padding:84px 0;
            position:relative;
        }
        .section-tight{
            padding-top:48px;
        }
        .section-heading{
            margin-bottom:28px;
        }
        .section-kicker{
            display:inline-flex;
            align-items:center;
            gap:8px;
            font-size:.88rem;
            font-weight:800;
            color:var(--primary-2);
            text-transform:none;
            letter-spacing:.02em;
            margin-bottom:12px;
        }
        .section-kicker::before{
            content:"";
            width:26px;height:2px;
            background:linear-gradient(90deg, var(--primary), var(--secondary));
            border-radius:999px;
        }
        .section-title{
            font-size:clamp(1.9rem, 3vw, 2.8rem);
            line-height:1.15;
            font-weight:900;
            margin:0 0 12px;
            letter-spacing:-.03em;
        }
        .section-desc{
            color:var(--muted);
            max-width:58rem;
            margin:0;
            font-size:1.02rem;
        }
        .gateway{
            display:grid;
            grid-template-columns:1.1fr .9fr;
            gap:24px;
            align-items:stretch;
        }
        .gateway-card{
            background:var(--card);
            border:1px solid rgba(111,59,209,.12);
            border-radius:30px;
            box-shadow:var(--shadow);
            padding:28px;
            position:relative;
            overflow:hidden;
        }
        .gateway-card::after{
            content:"";
            position:absolute;
            inset:auto -60px -70px auto;
            width:220px;height:220px;
            border-radius:50%;
            background:radial-gradient(circle, rgba(123,63,242,.10) 0%, rgba(123,63,242,0) 68%);
            pointer-events:none;
        }
        .gateway-card h3{
            margin:0 0 10px;
            font-size:1.6rem;
            font-weight:900;
        }
        .gateway-card p{
            color:var(--muted);
            margin-bottom:18px;
            max-width:34rem;
        }
        .gateway-list{
            display:grid;
            gap:12px;
        }
        .gateway-list .item{
            display:flex;
            gap:14px;
            align-items:flex-start;
            padding:14px 16px;
            border-radius:18px;
            background:linear-gradient(180deg, rgba(123,63,242,.05), rgba(239,125,144,.03));
            border:1px solid rgba(111,59,209,.10);
        }
        .gateway-list .dot{
            width:38px;height:38px;
            border-radius:14px;
            display:grid;
            place-items:center;
            background:rgba(123,63,242,.10);
            color:var(--primary-2);
            font-weight:900;
            flex:none;
        }
        .gateway-list .item h4{
            margin:0 0 4px;
            font-size:1rem;
            font-weight:800;
        }
        .gateway-list .item span{
            color:var(--muted);
            font-size:.94rem;
        }
        .category-card{
            background:linear-gradient(145deg, rgba(123,63,242,.96), rgba(239,125,144,.96));
            border-radius:30px;
            color:#fff;
            padding:28px;
            box-shadow:var(--shadow);
            overflow:hidden;
            position:relative;
            min-height:100%;
            display:flex;
            flex-direction:column;
            justify-content:space-between;
        }
        .category-card::before{
            content:"";
            position:absolute;
            inset:18px;
            border-radius:24px;
            border:1px solid rgba(255,255,255,.14);
            pointer-events:none;
        }
        .category-card .top{
            position:relative;
            z-index:1;
        }
        .category-card .kicker{
            display:inline-flex;
            padding:.45rem .8rem;
            border-radius:999px;
            background:rgba(255,255,255,.14);
            border:1px solid rgba(255,255,255,.16);
            font-size:.84rem;
            font-weight:800;
            margin-bottom:16px;
        }
        .category-card h3{
            font-size:1.72rem;
            font-weight:900;
            margin:0 0 10px;
        }
        .category-card p{
            color:rgba(255,255,255,.9);
            margin-bottom:18px;
        }
        .tag-cloud{
            display:flex;
            flex-wrap:wrap;
            gap:10px;
        }
        .tag{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:.55rem .85rem;
            border-radius:999px;
            background:rgba(255,255,255,.14);
            border:1px solid rgba(255,255,255,.14);
            color:#fff;
            font-size:.88rem;
            font-weight:700;
        }
        .tag-soft{
            display:inline-flex;
            align-items:center;
            padding:.5rem .78rem;
            border-radius:999px;
            background:rgba(123,63,242,.07);
            color:var(--primary-2);
            border:1px solid rgba(123,63,242,.12);
            font-weight:700;
            font-size:.86rem;
        }
        .service-grid{
            display:grid;
            grid-template-columns:1.05fr .95fr;
            gap:22px;
        }
        .service-panel{
            background:var(--card);
            border:1px solid rgba(111,59,209,.12);
            border-radius:30px;
            box-shadow:var(--shadow);
            overflow:hidden;
        }
        .service-panel .panel-head{
            padding:24px 26px 0;
        }
        .service-panel .panel-body{
            padding:18px 26px 26px;
        }
        .feature-stack{
            display:grid;
            gap:14px;
        }
        .feature-card{
            border-radius:22px;
            padding:20px;
            background:linear-gradient(180deg, #fff, rgba(123,63,242,.03));
            border:1px solid rgba(111,59,209,.10);
            display:flex;
            gap:16px;
            transition:var(--transition);
            min-height:136px;
        }
        .feature-card:hover{
            transform:translateY(-4px);
            box-shadow:0 18px 30px rgba(57,30,104,.10);
            border-color:rgba(123,63,242,.20);
        }
        .icon-bubble{
            width:48px;height:48px;
            border-radius:16px;
            display:grid;
            place-items:center;
            flex:none;
            background:linear-gradient(135deg, rgba(123,63,242,.12), rgba(239,125,144,.12));
            color:var(--primary-2);
            font-size:1.15rem;
            font-weight:900;
        }
        .feature-card h4{
            margin:0 0 8px;
            font-size:1.08rem;
            font-weight:900;
        }
        .feature-card p{
            margin:0 0 10px;
            color:var(--muted);
            font-size:.96rem;
        }
        .micro-meta{
            display:flex;
            flex-wrap:wrap;
            gap:8px;
        }
        .micro-meta .pill{
            padding:.36rem .62rem;
            border-radius:999px;
            background:#fff;
            border:1px solid rgba(123,63,242,.12);
            color:var(--primary-2);
            font-size:.8rem;
            font-weight:700;
        }
        .service-right{
            display:grid;
            gap:22px;
        }
        .showcase-card,
        .info-card{
            background:var(--card);
            border:1px solid rgba(111,59,209,.12);
            border-radius:30px;
            box-shadow:var(--shadow);
            padding:26px;
        }
        .showcase-card{
            min-height:100%;
            position:relative;
            overflow:hidden;
        }
        .showcase-card::before{
            content:"";
            position:absolute;
            inset:auto -30px -70px auto;
            width:210px;height:210px;
            border-radius:50%;
            background:radial-gradient(circle, rgba(239,125,144,.12) 0%, rgba(239,125,144,0) 70%);
        }
        .showcase-card h4,
        .info-card h4{
            margin:0 0 10px;
            font-size:1.22rem;
            font-weight:900;
        }
        .showcase-card p,
        .info-card p{
            color:var(--muted);
            margin-bottom:18px;
        }
        .metric-grid{
            display:grid;
            grid-template-columns:repeat(4,1fr);
            gap:18px;
        }
        .metric{
            background:rgba(255,255,255,.92);
            border:1px solid rgba(111,59,209,.12);
            border-radius:24px;
            padding:22px 20px;
            box-shadow:0 12px 24px rgba(42,22,83,.05);
            transition:var(--transition);
        }
        .metric:hover{
            transform:translateY(-3px);
            box-shadow:var(--shadow-hover);
            border-color:rgba(123,63,242,.18);
        }
        .metric .num{
            font-size:2rem;
            line-height:1;
            font-weight:900;
            color:var(--primary-2);
            margin-bottom:10px;
            letter-spacing:-.03em;
        }
        .metric .label{
            color:var(--muted);
            font-size:.95rem;
            line-height:1.55;
        }
        .split-layout{
            display:grid;
            grid-template-columns:1fr 1fr;
            gap:22px;
        }
        .case-card{
            background:var(--card);
            border:1px solid rgba(111,59,209,.12);
            border-radius:30px;
            box-shadow:var(--shadow);
            overflow:hidden;
            display:flex;
            flex-direction:column;
            min-height:100%;
        }
        .case-top{
            padding:24px 26px;
            background:linear-gradient(135deg, rgba(123,63,242,.06), rgba(239,125,144,.04));
            border-bottom:1px solid rgba(111,59,209,.08);
        }
        .case-top h4{
            margin:0 0 10px;
            font-size:1.28rem;
            font-weight:900;
        }
        .case-top .scene{
            margin:0;
            color:var(--muted);
        }
        .case-body{
            padding:24px 26px 26px;
            display:grid;
            gap:16px;
        }
        .result-box{
            padding:16px 18px;
            border-radius:20px;
            background:rgba(123,63,242,.05);
            border:1px solid rgba(123,63,242,.10);
            color:var(--text);
        }
        .result-box strong{
            display:block;
            margin-bottom:6px;
            color:var(--primary-2);
        }
        .label-row{
            display:flex;
            flex-wrap:wrap;
            gap:10px;
        }
        .result-label{
            padding:.45rem .75rem;
            background:#fff;
            border:1px solid rgba(123,63,242,.12);
            color:var(--primary-2);
            border-radius:999px;
            font-size:.84rem;
            font-weight:700;
        }
        .process{
            background:linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,255,255,.95));
            border-radius:34px;
            border:1px solid rgba(111,59,209,.12);
            box-shadow:var(--shadow);
            padding:28px;
        }
        .timeline{
            display:grid;
            grid-template-columns:repeat(4,1fr);
            gap:16px;
        }
        .step{
            position:relative;
            background:linear-gradient(180deg, #fff, rgba(123,63,242,.03));
            border:1px solid rgba(111,59,209,.10);
            border-radius:24px;
            padding:22px 20px;
            min-height:170px;
        }
        .step .index{
            width:42px;height:42px;
            border-radius:14px;
            display:grid;
            place-items:center;
            background:linear-gradient(135deg, var(--primary-2), var(--secondary));
            color:#fff;
            font-weight:900;
            margin-bottom:14px;
            box-shadow:0 14px 24px rgba(111,59,209,.18);
        }
        .step h4{
            margin:0 0 8px;
            font-size:1.06rem;
            font-weight:900;
        }
        .step p{
            margin:0;
            color:var(--muted);
            font-size:.95rem;
        }
        .step::after{
            content:"";
            position:absolute;
            right:-10px;
            top:50%;
            width:20px;
            height:2px;
            background:linear-gradient(90deg, rgba(111,59,209,.28), rgba(239,125,144,.28));
            transform:translateY(-50%);
        }
        .step:last-child::after{display:none}
        .faq-wrap{
            background:var(--card);
            border:1px solid rgba(111,59,209,.12);
            border-radius:30px;
            box-shadow:var(--shadow);
            overflow:hidden;
        }
        .accordion-item{
            border:0;
            background:transparent;
            border-top:1px solid rgba(111,59,209,.10);
        }
        .accordion-item:first-child{
            border-top:none;
        }
        .accordion-button{
            box-shadow:none !important;
            padding:22px 26px;
            background:transparent;
            color:var(--text);
            font-weight:800;
            font-size:1.03rem;
        }
        .accordion-button:not(.collapsed){
            color:var(--primary-2);
            background:rgba(123,63,242,.04);
        }
        .accordion-button::after{
            background-size:1rem;
            width:1rem;
            height:1rem;
            opacity:.7;
        }
        .accordion-body{
            color:var(--muted);
            padding:0 26px 22px;
        }
        .contact-section{
            padding:92px 0 96px;
        }
        .contact-panel{
            background:
                linear-gradient(145deg, rgba(123,63,242,.96), rgba(239,125,144,.94) 56%, rgba(245,185,122,.92)),
                linear-gradient(180deg, #7b3ff2, #ef7d90);
            color:#fff;
            border-radius:34px;
            padding:30px;
            box-shadow:0 24px 60px rgba(111,59,209,.20);
            position:relative;
            overflow:hidden;
        }
        .contact-panel::before{
            content:"";
            position:absolute;
            inset:16px;
            border-radius:26px;
            border:1px solid rgba(255,255,255,.14);
            pointer-events:none;
        }
        .contact-left{
            position:relative;
            z-index:1;
        }
        .contact-title{
            font-size:clamp(1.8rem, 2.5vw, 2.5rem);
            font-weight:900;
            margin:0 0 10px;
            line-height:1.15;
        }
        .contact-desc{
            color:rgba(255,255,255,.9);
            margin-bottom:18px;
            max-width:42rem;
        }
        .promise-list{
            display:grid;
            gap:10px;
            margin:0;
            padding:0;
            list-style:none;
        }
        .promise-list li{
            display:flex;
            gap:10px;
            align-items:flex-start;
            color:#fff;
            font-size:.98rem;
        }
        .promise-list li::before{
            content:"";
            width:9px;height:9px;
            border-radius:50%;
            background:#fff;
            margin-top:.55rem;
            box-shadow:0 0 0 5px rgba(255,255,255,.16);
            flex:none;
        }
        .form-shell{
            position:relative;
            z-index:1;
            background:rgba(255,255,255,.94);
            color:var(--text);
            border-radius:28px;
            padding:24px;
            box-shadow:0 18px 42px rgba(42,22,83,.16);
        }
        .form-shell .form-label{
            font-weight:700;
            color:var(--text);
            margin-bottom:.5rem;
        }
        .form-control,
        .form-select{
            border-radius:16px;
            border:1px solid rgba(111,59,209,.16);
            padding:.9rem 1rem;
            background:#fff;
            transition:var(--transition);
            box-shadow:none;
        }
        .form-control:focus,
        .form-select:focus{
            border-color:rgba(123,63,242,.42);
            box-shadow:0 0 0 .24rem rgba(123,63,242,.12);
        }
        textarea.form-control{
            min-height:124px;
            resize:vertical;
        }
        .contact-meta{
            display:grid;
            grid-template-columns:repeat(3,1fr);
            gap:14px;
            margin-top:18px;
        }
        .contact-meta .chip{
            padding:14px 16px;
            border-radius:18px;
            background:rgba(255,255,255,.16);
            border:1px solid rgba(255,255,255,.14);
        }
        .contact-meta .chip strong{
            display:block;
            margin-bottom:4px;
            font-size:.96rem;
        }
        .contact-meta .chip span{
            font-size:.9rem;
            color:rgba(255,255,255,.88);
        }
        .site-footer{
            padding:34px 0 28px;
            color:var(--muted);
        }
        .footer-card{
            background:rgba(255,255,255,.90);
            border:1px solid rgba(111,59,209,.12);
            border-radius:30px;
            box-shadow:0 14px 34px rgba(42,22,83,.06);
            padding:30px;
        }
        .footer-brand{
            display:flex;
            align-items:center;
            gap:12px;
            margin-bottom:14px;
        }
        .footer-brand .brand-mark{
            width:38px;height:38px;
            border-radius:13px;
        }
        .footer-title{
            margin:0;
            font-size:1.05rem;
            font-weight:900;
            color:var(--text);
        }
        .footer-text{
            margin:0;
            max-width:26rem;
            color:var(--muted);
        }
        .footer-links{
            display:grid;
            gap:12px;
        }
        .footer-links a{
            color:var(--muted);
            padding:2px 0;
        }
        .footer-links a:hover{
            color:var(--primary);
        }
        .footer-note{
            display:flex;
            justify-content:space-between;
            align-items:center;
            gap:16px;
            flex-wrap:wrap;
            margin-top:18px;
            padding-top:18px;
            border-top:1px solid rgba(111,59,209,.10);
            font-size:.92rem;
        }
        .badge-soft{
            display:inline-flex;
            align-items:center;
            gap:6px;
            padding:.42rem .72rem;
            border-radius:999px;
            background:rgba(123,63,242,.06);
            color:var(--primary-2);
            border:1px solid rgba(123,63,242,.10);
            font-size:.82rem;
            font-weight:700;
        }
        .section-divider{
            height:1px;
            background:linear-gradient(90deg, transparent, rgba(111,59,209,.16), transparent);
            margin:14px 0 0;
        }
        .focus-ring:focus{
            outline:none;
            box-shadow:0 0 0 .24rem rgba(123,63,242,.14);
        }
        .text-soft{color:var(--muted)}
        .small-muted{font-size:.92rem;color:var(--muted)}
        .mobile-only{display:none}
        @media (max-width: 1199.98px){
            .hero-grid,
            .gateway,
            .service-grid,
            .split-layout,
            .timeline{
                grid-template-columns:1fr;
            }
            .metric-grid{
                grid-template-columns:repeat(2,1fr);
            }
            .preview-grid{
                grid-template-columns:1fr;
            }
            .hero-card{
                min-height:unset;
            }
            .floating-card{
                position:relative;
                right:auto;
                bottom:auto;
                width:100%;
                margin-top:16px;
            }
            .step::after{display:none}
            .contact-meta{
                grid-template-columns:1fr;
            }
        }
        @media (max-width: 991.98px){
            .site-header{
                inset:10px 0 auto;
            }
            .site-header .nav-wrap{
                padding:12px 14px;
                border-radius:20px;
            }
            .navbar-collapse{
                padding-top:14px;
            }
            .nav-actions{
                flex-direction:column;
                align-items:stretch;
                width:100%;
                margin:14px 0 0;
            }
            .command-search{
                width:100%;
            }
            .hero{
                padding:136px 0 72px;
            }
            .section{
                padding:70px 0;
            }
            .contact-section{
                padding:78px 0 84px;
            }
            .desktop-only{display:none}
            .mobile-only{display:block}
        }
        @media (max-width: 767.98px){
            .hero h1{
                font-size:clamp(2.1rem, 9vw, 3rem);
            }
            .section-title{
                font-size:clamp(1.7rem, 7vw, 2.3rem);
            }
            .hero-actions,
            .footer-note{
                flex-direction:column;
                align-items:flex-start;
            }
            .metric-grid{
                grid-template-columns:1fr;
            }
            .hero-card,
            .gateway-card,
            .category-card,
            .service-panel,
            .showcase-card,
            .info-card,
            .case-card,
            .process,
            .faq-wrap,
            .footer-card,
            .contact-panel,
            .form-shell{
                border-radius:24px;
            }
            .hero{
                padding-top:124px;
            }
            .hero-card{
                padding:20px;
            }
            .contact-panel{
                padding:22px;
            }
            .form-shell{
                padding:18px;
            }
            .accordion-button,
            .accordion-body{
                padding-left:18px;
                padding-right:18px;
            }
        }
        @media (max-width: 575.98px){
            .site-header .nav-wrap{
                padding:10px 12px;
            }
            .brand-name span{
                display:none;
            }
            .btn-primary-gradient,
            .btn-ghost,
            .btn-outline-soft{
                width:100%;
                justify-content:center;
            }
            .hero-badges{
                flex-direction:column;
            }
            .data-pill{
                width:100%;
                min-width:0;
            }
            .preview-card{
                padding:16px;
            }
            .floating-card{
                padding:16px;
            }
            .gateway-card,
            .category-card,
            .service-panel .panel-body,
            .service-panel .panel-head,
            .case-top,
            .case-body,
            .footer-card{
                padding-left:18px;
                padding-right:18px;
            }
            .section{
                padding:60px 0;
            }
            .hero{
                padding:118px 0 60px;
            }
        }

/* roulang page: category1 */
:root{
      --bg: #f7f3f1;
      --bg-2: #fcfaf8;
      --surface: rgba(255,255,255,.84);
      --surface-solid: #ffffff;
      --surface-strong: #fff8f6;
      --line: rgba(98, 58, 92, .12);
      --line-strong: rgba(98, 58, 92, .18);
      --text: #26212a;
      --muted: #6d6470;
      --muted-2: #8a7f8f;
      --brand: #7a356f;
      --brand-2: #c95d7e;
      --brand-3: #f08b61;
      --brand-deep: #4c1f47;
      --accent: #f2d7ba;
      --accent-2: #fdebe5;
      --success: #2f8a6e;
      --shadow: 0 18px 40px rgba(80, 41, 71, .10);
      --shadow-soft: 0 8px 24px rgba(80, 41, 71, .08);
      --radius-xl: 28px;
      --radius-lg: 22px;
      --radius-md: 18px;
      --radius-sm: 14px;
      --gap: 24px;
      --container: 1280px;
      --transition: all .28s ease;
      --focus: 0 0 0 .22rem rgba(122, 53, 111, .16), 0 0 0 .38rem rgba(201, 93, 126, .10);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: "PingFang SC","Microsoft YaHei","Noto Sans SC",system-ui,-apple-system,sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 10% 8%, rgba(201, 93, 126, .10), transparent 24%),
        radial-gradient(circle at 90% 12%, rgba(240, 139, 97, .10), transparent 22%),
        linear-gradient(180deg, #fbf8f6 0%, #f7f3f1 36%, #f6f1ef 100%);
      line-height:1.7;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background-image:
        linear-gradient(rgba(122,53,111,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(122,53,111,.03) 1px, transparent 1px);
      background-size: 44px 44px;
      mask-image: linear-gradient(180deg, rgba(0,0,0,.55), transparent 95%);
      opacity:.5;
      z-index:-1;
    }
    a{color:inherit;text-decoration:none;transition:var(--transition)}
    a:hover{color:var(--brand)}
    img{max-width:100%;display:block}
    button,input,textarea,select{font:inherit}
    ::selection{background:rgba(122,53,111,.16);color:var(--brand-deep)}
    .container-xxl{
      max-width:var(--container);
      padding-left:18px;
      padding-right:18px;
    }
    .site-header{
      position:sticky;
      top:0;
      z-index:1030;
      padding:14px 0;
      transition:var(--transition);
    }
    .site-header.is-scrolled{
      padding:8px 0;
    }
    .nav-wrap{
      background:rgba(255,255,255,.76);
      border:1px solid rgba(122,53,111,.10);
      box-shadow:0 10px 32px rgba(72, 32, 66, .08);
      backdrop-filter: blur(18px);
      border-radius:24px;
      padding:10px 16px;
    }
    .navbar{padding:0}
    .brand{
      display:flex;
      align-items:center;
      gap:12px;
      min-width:max-content;
    }
    .brand:hover{transform:translateY(-1px)}
    .brand-mark,
    .footer-brand .brand-mark{
      width:42px;
      height:42px;
      border-radius:14px;
      display:grid;
      place-items:center;
      color:#fff;
      background:linear-gradient(135deg, var(--brand-deep), var(--brand), var(--brand-3));
      box-shadow:0 12px 24px rgba(122,53,111,.25);
      font-weight:800;
      letter-spacing:.04em;
      flex:0 0 auto;
    }
    .brand-name{
      display:flex;
      flex-direction:column;
      line-height:1.12;
    }
    .brand-name strong{
      font-size:1.02rem;
      letter-spacing:.02em;
      color:var(--text);
    }
    .brand-name span,
    .brand-sub{
      font-size:.8rem;
      color:var(--muted);
      margin-top:4px;
    }
    .navbar-nav{
      gap:6px;
      align-items:center;
    }
    .navbar-nav .nav-link{
      padding:11px 14px;
      border-radius:9999px;
      color:var(--muted);
      font-weight:600;
      letter-spacing:.01em;
      position:relative;
    }
    .navbar-nav .nav-link:hover,
    .navbar-nav .nav-link:focus{
      color:var(--brand-deep);
      background:rgba(122,53,111,.06);
    }
    .navbar-nav .nav-link.active{
      color:var(--brand-deep);
      background:linear-gradient(135deg, rgba(122,53,111,.11), rgba(240,139,97,.12));
      box-shadow:inset 0 0 0 1px rgba(122,53,111,.10);
    }
    .nav-actions{
      display:flex;
      align-items:center;
      gap:12px;
      margin-left:auto;
    }
    .command-search{
      display:flex;
      align-items:center;
      gap:10px;
      min-width:290px;
      padding:10px 14px;
      border:1px solid rgba(122,53,111,.12);
      background:#fff;
      border-radius:9999px;
      box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
    }
    .command-search svg{
      width:18px;
      height:18px;
      color:var(--brand);
      flex:0 0 auto;
    }
    .command-search input{
      border:0;
      outline:none;
      width:100%;
      background:transparent;
      color:var(--text);
      font-size:.95rem;
    }
    .command-search input::placeholder{color:#9b90a0}
    .shortcut{
      font-size:.75rem;
      color:var(--muted);
      border:1px solid rgba(122,53,111,.12);
      border-radius:9999px;
      padding:2px 8px;
      background:var(--bg-2);
      flex:0 0 auto;
    }
    .btn{
      border:0;
      font-weight:700;
      letter-spacing:.01em;
      padding:.82rem 1.15rem;
      border-radius:9999px;
      transition:var(--transition);
    }
    .btn:focus,
    .btn:active:focus,
    .form-control:focus,
    .form-select:focus,
    .form-check-input:focus,
    .accordion-button:focus{
      box-shadow:var(--focus);
      border-color:rgba(122,53,111,.34);
    }
    .btn-brand{
      color:#fff;
      background:linear-gradient(135deg, var(--brand-deep), var(--brand), var(--brand-2), var(--brand-3));
      background-size:160% 160%;
      box-shadow:0 14px 28px rgba(122,53,111,.24);
    }
    .btn-brand:hover{
      color:#fff;
      transform:translateY(-2px);
      box-shadow:0 18px 36px rgba(122,53,111,.28);
      background-position:100% 0;
    }
    .btn-soft{
      color:var(--brand-deep);
      background:rgba(122,53,111,.06);
      border:1px solid rgba(122,53,111,.12);
    }
    .btn-soft:hover{
      color:var(--brand-deep);
      background:rgba(122,53,111,.10);
      transform:translateY(-2px);
    }
    .btn-ghost{
      color:var(--brand-deep);
      background:#fff;
      border:1px solid rgba(122,53,111,.14);
      box-shadow:0 8px 20px rgba(70,36,64,.06);
    }
    .btn-ghost:hover{
      transform:translateY(-2px);
      border-color:rgba(122,53,111,.26);
      box-shadow:0 16px 28px rgba(70,36,64,.10);
    }
    .navbar-toggler{
      border-radius:14px;
      background:#fff;
      width:48px;
      height:48px;
      padding:0;
      border:1px solid rgba(122,53,111,.12)!important;
      box-shadow:0 10px 20px rgba(70,36,64,.06);
    }
    .navbar-toggler-icon{
      width:22px;
      height:22px;
      background-image:none!important;
      position:relative;
      display:inline-block;
    }
    .navbar-toggler-icon::before,
    .navbar-toggler-icon::after,
    .navbar-toggler-icon span{
      content:"";
      position:absolute;
      left:2px;
      right:2px;
      height:2px;
      border-radius:99px;
      background:var(--brand-deep);
      transition:var(--transition);
    }
    .navbar-toggler-icon::before{top:5px}
    .navbar-toggler-icon::after{bottom:5px}
    .navbar-toggler-icon span{top:50%;transform:translateY(-50%)}
    .hero{
      padding:24px 0 12px;
    }
    .hero-shell{
      position:relative;
      overflow:hidden;
      border-radius:34px;
      background:
        radial-gradient(circle at 85% 10%, rgba(240,139,97,.14), transparent 20%),
        radial-gradient(circle at 20% 20%, rgba(201,93,126,.12), transparent 24%),
        linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,250,248,.96));
      border:1px solid rgba(122,53,111,.10);
      box-shadow:var(--shadow);
      padding:34px;
    }
    .hero-shell::after{
      content:"";
      position:absolute;
      inset:auto -12% -24% auto;
      width:320px;
      height:320px;
      background:radial-gradient(circle, rgba(122,53,111,.10), transparent 66%);
      transform:rotate(18deg);
      pointer-events:none;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 14px;
      border-radius:9999px;
      background:rgba(122,53,111,.07);
      color:var(--brand-deep);
      font-weight:700;
      font-size:.88rem;
      margin-bottom:16px;
    }
    .eyebrow .dot{
      width:8px;
      height:8px;
      border-radius:50%;
      background:linear-gradient(135deg, var(--brand), var(--brand-3));
      box-shadow:0 0 0 6px rgba(201,93,126,.12);
    }
    .hero-title{
      font-size:clamp(2.2rem, 4.6vw, 3.35rem);
      line-height:1.08;
      letter-spacing:-.03em;
      margin:0 0 16px;
      font-weight:800;
      color:var(--text);
    }
    .hero-title .grad{
      background:linear-gradient(135deg, var(--brand-deep), var(--brand-2), var(--brand-3));
      -webkit-background-clip:text;
      background-clip:text;
      color:transparent;
    }
    .hero-lead{
      font-size:1.06rem;
      color:var(--muted);
      max-width:56ch;
      margin-bottom:24px;
    }
    .hero-actions{
      display:flex;
      gap:12px;
      flex-wrap:wrap;
      margin-bottom:22px;
    }
    .stat-row{
      display:flex;
      gap:12px;
      flex-wrap:wrap;
    }
    .stat-badge{
      flex:0 0 auto;
      display:flex;
      flex-direction:column;
      gap:4px;
      min-width:132px;
      padding:14px 16px;
      border-radius:20px;
      background:rgba(255,255,255,.72);
      border:1px solid rgba(122,53,111,.10);
      box-shadow:0 10px 22px rgba(72,32,66,.06);
    }
    .stat-badge strong{
      font-size:1.2rem;
      color:var(--brand-deep);
      line-height:1.1;
    }
    .stat-badge span{
      font-size:.84rem;
      color:var(--muted);
    }
    .hero-panel{
      position:relative;
      z-index:1;
      height:100%;
      border-radius:30px;
      padding:24px;
      background:
        linear-gradient(145deg, rgba(122,53,111,.95), rgba(201,93,126,.92) 55%, rgba(240,139,97,.92));
      color:#fff;
      box-shadow:0 20px 40px rgba(122,53,111,.28);
      overflow:hidden;
    }
    .hero-panel::before{
      content:"";
      position:absolute;
      inset:-20% -30% auto auto;
      width:250px;
      height:250px;
      border-radius:50%;
      background:rgba(255,255,255,.12);
      filter:blur(2px);
    }
    .hero-panel::after{
      content:"";
      position:absolute;
      inset:auto auto -18% -18%;
      width:180px;
      height:180px;
      border-radius:40px;
      background:rgba(255,255,255,.12);
      transform:rotate(14deg);
    }
    .panel-top{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:16px;
      margin-bottom:18px;
    }
    .panel-top h2{
      margin:0;
      font-size:1.4rem;
      font-weight:800;
    }
    .panel-top p{
      margin:8px 0 0;
      color:rgba(255,255,255,.84);
      font-size:.95rem;
    }
    .panel-chip{
      padding:8px 12px;
      border-radius:9999px;
      background:rgba(255,255,255,.14);
      border:1px solid rgba(255,255,255,.18);
      font-size:.82rem;
      white-space:nowrap;
    }
    .panel-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
      margin-top:18px;
    }
    .panel-card{
      background:rgba(255,255,255,.12);
      border:1px solid rgba(255,255,255,.16);
      border-radius:20px;
      padding:16px;
      min-height:126px;
      backdrop-filter: blur(8px);
    }
    .panel-card strong{
      display:block;
      font-size:1.02rem;
      margin-bottom:8px;
    }
    .panel-card span{
      display:block;
      font-size:.86rem;
      color:rgba(255,255,255,.88);
    }
    .panel-mini{
      display:flex;
      gap:12px;
      margin-top:12px;
      flex-wrap:wrap;
    }
    .mini-item{
      flex:1 1 140px;
      padding:12px 14px;
      border-radius:18px;
      background:rgba(255,255,255,.12);
      border:1px solid rgba(255,255,255,.16);
    }
    .mini-item em{
      display:block;
      font-style:normal;
      font-weight:800;
      font-size:1.1rem;
      margin-bottom:4px;
    }
    .mini-item small{
      color:rgba(255,255,255,.82);
    }
    .section{
      padding:58px 0 0;
    }
    .section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:16px;
      margin-bottom:22px;
    }
    .section-head h2{
      margin:0;
      font-size:clamp(1.8rem, 3vw, 2.2rem);
      font-weight:800;
      line-height:1.15;
      letter-spacing:-.02em;
    }
    .section-head p{
      margin:0;
      max-width:58ch;
      color:var(--muted);
      font-size:1rem;
    }
    .section-card{
      background:var(--surface);
      border:1px solid rgba(122,53,111,.10);
      box-shadow:var(--shadow-soft);
      border-radius:28px;
      padding:24px;
      backdrop-filter: blur(12px);
    }
    .filter-toolbar{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      flex-wrap:wrap;
      margin-bottom:18px;
    }
    .filter-group{
      display:flex;
      gap:10px;
      flex-wrap:wrap;
    }
    .chip{
      display:inline-flex;
      align-items:center;
      gap:8px;
      border-radius:9999px;
      padding:10px 14px;
      border:1px solid rgba(122,53,111,.12);
      background:#fff;
      color:var(--muted);
      font-weight:700;
      font-size:.92rem;
      cursor:pointer;
      transition:var(--transition);
      user-select:none;
    }
    .chip:hover{
      color:var(--brand-deep);
      border-color:rgba(122,53,111,.24);
      transform:translateY(-1px);
      box-shadow:0 10px 18px rgba(70,36,64,.06);
    }
    .chip.active{
      color:var(--brand-deep);
      background:linear-gradient(135deg, rgba(122,53,111,.10), rgba(240,139,97,.10));
      border-color:rgba(122,53,111,.22);
    }
    .sort-group{
      display:flex;
      align-items:center;
      gap:10px;
      flex-wrap:wrap;
    }
    .sort-label{
      color:var(--muted);
      font-size:.92rem;
      font-weight:600;
    }
    .form-select,
    .form-control{
      border-radius:16px;
      border:1px solid rgba(122,53,111,.12);
      padding:.82rem 1rem;
      box-shadow:none;
      background:#fff;
      color:var(--text);
    }
    .search-mini{
      min-width:260px;
    }
    .content-grid{
      display:grid;
      grid-template-columns:repeat(12,1fr);
      gap:18px;
    }
    .content-card{
      grid-column:span 4;
      background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,252,250,.88));
      border:1px solid rgba(122,53,111,.10);
      border-radius:26px;
      padding:22px;
      box-shadow:0 14px 30px rgba(72,32,66,.06);
      position:relative;
      overflow:hidden;
      transition:var(--transition);
      min-height:100%;
    }
    .content-card:hover{
      transform:translateY(-3px);
      border-color:rgba(122,53,111,.18);
      box-shadow:0 22px 40px rgba(72,32,66,.10);
    }
    .content-card::after{
      content:"";
      position:absolute;
      inset:auto -16px -16px auto;
      width:110px;
      height:110px;
      background:radial-gradient(circle, rgba(201,93,126,.12), transparent 70%);
      pointer-events:none;
    }
    .card-top{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:14px;
      margin-bottom:14px;
    }
    .icon-badge{
      width:46px;
      height:46px;
      border-radius:16px;
      display:grid;
      place-items:center;
      color:#fff;
      background:linear-gradient(135deg, var(--brand-deep), var(--brand), var(--brand-3));
      box-shadow:0 12px 22px rgba(122,53,111,.22);
      flex:0 0 auto;
    }
    .icon-badge svg{
      width:20px;
      height:20px;
      stroke:currentColor;
    }
    .content-card h3{
      margin:0 0 10px;
      font-size:1.18rem;
      line-height:1.3;
      font-weight:800;
      color:var(--text);
    }
    .content-card p{
      margin:0;
      color:var(--muted);
      font-size:.97rem;
    }
    .meta-row{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-top:16px;
    }
    .tag{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:6px 10px;
      border-radius:9999px;
      background:var(--accent-2);
      color:var(--brand-deep);
      font-size:.78rem;
      font-weight:700;
      border:1px solid rgba(122,53,111,.08);
    }
    .tag.soft{
      background:rgba(122,53,111,.06);
      color:var(--muted);
    }
    .card-foot{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      margin-top:18px;
      padding-top:16px;
      border-top:1px dashed rgba(122,53,111,.14);
      color:var(--muted);
      font-size:.88rem;
    }
    .card-foot strong{
      color:var(--brand-deep);
    }
    .highlight-grid{
      display:grid;
      grid-template-columns:1.15fr .85fr;
      gap:18px;
    }
    .highlight-box{
      border-radius:28px;
      padding:26px;
      border:1px solid rgba(122,53,111,.10);
      background:linear-gradient(180deg, rgba(255,255,255,.9), rgba(250,245,243,.96));
      box-shadow:var(--shadow-soft);
    }
    .highlight-box.dark{
      background:linear-gradient(145deg, rgba(76,31,71,.97), rgba(122,53,111,.95));
      color:#fff;
      border-color:transparent;
    }
    .highlight-box h3{
      margin:0 0 14px;
      font-size:1.32rem;
      font-weight:800;
    }
    .highlight-box p{
      margin:0 0 18px;
      color:inherit;
      opacity:.9;
    }
    .list-clean{
      list-style:none;
      padding:0;
      margin:0;
      display:grid;
      gap:12px;
    }
    .list-clean li{
      display:flex;
      gap:12px;
      align-items:flex-start;
      color:inherit;
    }
    .list-clean .mark{
      width:22px;
      height:22px;
      border-radius:50%;
      display:inline-grid;
      place-items:center;
      background:rgba(201,93,126,.16);
      color:inherit;
      flex:0 0 auto;
      margin-top:2px;
    }
    .list-clean .mark svg{width:12px;height:12px}
    .signal-row{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:14px;
      margin-top:18px;
    }
    .signal{
      padding:18px;
      border-radius:22px;
      background:rgba(255,255,255,.88);
      border:1px solid rgba(122,53,111,.10);
      box-shadow:0 10px 20px rgba(72,32,66,.05);
    }
    .signal strong{
      display:block;
      font-size:1.2rem;
      color:var(--brand-deep);
      margin-bottom:6px;
    }
    .signal span{
      font-size:.88rem;
      color:var(--muted);
    }
    .process{
      position:relative;
      display:grid;
      gap:14px;
    }
    .step{
      display:grid;
      grid-template-columns:92px 1fr;
      gap:18px;
      align-items:start;
      padding:18px 20px;
      border-radius:22px;
      background:#fff;
      border:1px solid rgba(122,53,111,.10);
      box-shadow:0 10px 24px rgba(72,32,66,.05);
    }
    .step-num{
      display:inline-flex;
      align-items:center;
      gap:8px;
      color:var(--brand-deep);
      font-weight:800;
      font-size:.88rem;
    }
    .step-num span{
      width:40px;
      height:40px;
      border-radius:14px;
      display:grid;
      place-items:center;
      color:#fff;
      background:linear-gradient(135deg, var(--brand-deep), var(--brand-2));
      box-shadow:0 10px 20px rgba(122,53,111,.20);
    }
    .step h4{
      margin:0 0 6px;
      font-size:1.08rem;
      font-weight:800;
    }
    .step p{
      margin:0;
      color:var(--muted);
    }
    .step small{
      display:inline-block;
      margin-top:8px;
      color:var(--muted-2);
    }
    .faq-wrap .accordion{
      display:grid;
      gap:12px;
    }
    .accordion-item{
      border:1px solid rgba(122,53,111,.10);
      background:rgba(255,255,255,.92);
      border-radius:20px!important;
      overflow:hidden;
      box-shadow:0 10px 24px rgba(72,32,66,.05);
    }
    .accordion-button{
      padding:18px 20px;
      background:transparent;
      color:var(--text);
      font-weight:800;
      font-size:1rem;
      box-shadow:none!important;
    }
    .accordion-button:not(.collapsed){
      color:var(--brand-deep);
      background:linear-gradient(135deg, rgba(122,53,111,.07), rgba(240,139,97,.08));
    }
    .accordion-button::after{
      background-size:1rem;
      opacity:.8;
    }
    .accordion-body{
      padding:0 20px 18px;
      color:var(--muted);
    }
    .contact-grid{
      display:grid;
      grid-template-columns:1.05fr .95fr;
      gap:18px;
      align-items:stretch;
    }
    .contact-card{
      border-radius:28px;
      background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(252,247,245,.96));
      border:1px solid rgba(122,53,111,.10);
      box-shadow:var(--shadow-soft);
      padding:26px;
    }
    .contact-card.dark{
      background:linear-gradient(145deg, rgba(76,31,71,.97), rgba(122,53,111,.95));
      color:#fff;
    }
    .contact-card.dark .muted,
    .contact-card.dark .form-hint,
    .contact-card.dark p,
    .contact-card.dark li{
      color:rgba(255,255,255,.84);
    }
    .contact-card h3{
      margin:0 0 12px;
      font-size:1.38rem;
      font-weight:800;
    }
    .contact-card p{
      color:var(--muted);
      margin-bottom:18px;
    }
    .form-label{
      font-weight:700;
      color:var(--text);
      margin-bottom:8px;
    }
    .form-hint{
      font-size:.85rem;
      color:var(--muted);
      margin-top:8px;
    }
    .form-control,
    .form-select{
      min-height:52px;
    }
    textarea.form-control{
      min-height:132px;
      resize:vertical;
    }
    .form-control::placeholder,
    .form-select{
      color:#9a8fa0;
    }
    .contact-list{
      display:grid;
      gap:14px;
      margin:18px 0 0;
      padding:0;
      list-style:none;
    }
    .contact-list li{
      display:flex;
      gap:12px;
      align-items:flex-start;
      color:inherit;
    }
    .contact-list .bullet{
      width:24px;
      height:24px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:rgba(255,255,255,.14);
      flex:0 0 auto;
      margin-top:1px;
    }
    .contact-list .bullet svg{width:12px;height:12px}
    .pagination-wrap{
      display:flex;
      justify-content:center;
      margin-top:18px;
    }
    .pagination{
      gap:8px;
    }
    .page-link{
      border-radius:14px!important;
      border:1px solid rgba(122,53,111,.12);
      color:var(--muted);
      background:#fff;
      min-width:44px;
      text-align:center;
      box-shadow:0 8px 18px rgba(72,32,66,.04);
    }
    .page-link:hover{
      color:var(--brand-deep);
      border-color:rgba(122,53,111,.18);
      background:rgba(122,53,111,.06);
    }
    .page-item.active .page-link{
      background:linear-gradient(135deg, var(--brand-deep), var(--brand-2));
      color:#fff;
      border-color:transparent;
    }
    .recommend-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:16px;
    }
    .recommend{
      padding:18px;
      border-radius:22px;
      background:#fff;
      border:1px solid rgba(122,53,111,.10);
      box-shadow:0 10px 22px rgba(72,32,66,.05);
    }
    .recommend .mini-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin-bottom:10px;
    }
    .recommend h4{
      margin:0;
      font-size:1.02rem;
      font-weight:800;
    }
    .recommend p{
      margin:0;
      color:var(--muted);
      font-size:.93rem;
    }
    .site-footer{
      padding:64px 0 24px;
    }
    .footer-card{
      border-radius:30px;
      border:1px solid rgba(122,53,111,.10);
      background:rgba(255,255,255,.78);
      box-shadow:var(--shadow-soft);
      padding:28px;
      backdrop-filter: blur(12px);
    }
    .footer-brand{
      display:flex;
      align-items:flex-start;
      gap:12px;
      margin-bottom:14px;
    }
    .footer-title{
      margin:0;
      font-size:1.05rem;
      font-weight:800;
      color:var(--text);
    }
    .footer-text{
      color:var(--muted);
      margin:0;
      max-width:34ch;
    }
    .footer-links{
      display:grid;
      gap:10px;
      color:var(--muted);
      font-size:.94rem;
    }
    .footer-links a{
      color:var(--muted);
    }
    .footer-links a:hover{
      color:var(--brand-deep);
      transform:translateX(2px);
    }
    .footer-note{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      flex-wrap:wrap;
      margin-top:18px;
      padding-top:18px;
      border-top:1px solid rgba(122,53,111,.10);
      color:var(--muted);
      font-size:.88rem;
    }
    .badge-soft{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border-radius:9999px;
      background:rgba(122,53,111,.07);
      color:var(--brand-deep);
      font-size:.82rem;
      font-weight:700;
      border:1px solid rgba(122,53,111,.08);
    }
    .desktop-only{display:flex}
    .mobile-only{display:none}
    .text-brand{color:var(--brand-deep)}
    .muted{color:var(--muted)}
    .small-note{font-size:.87rem;color:var(--muted)}
    .divider-line{
      height:1px;
      background:linear-gradient(90deg, transparent, rgba(122,53,111,.14), transparent);
      margin:22px 0;
    }
    .floating-info{
      display:grid;
      gap:12px;
      margin-top:18px;
    }
    .floating-info .info-item{
      padding:14px 16px;
      border-radius:18px;
      background:rgba(255,255,255,.16);
      border:1px solid rgba(255,255,255,.16);
    }
    .floating-info strong{
      display:block;
      margin-bottom:6px;
      font-size:1rem;
    }
    .floating-info span{
      font-size:.85rem;
      color:rgba(255,255,255,.84);
    }
    @media (min-width: 1200px){
      .content-card{grid-column:span 3}
    }
    @media (max-width: 1199.98px){
      .command-search{min-width:230px}
      .content-card{grid-column:span 6}
      .recommend-grid{grid-template-columns:repeat(2,1fr)}
      .signal-row{grid-template-columns:repeat(2,1fr)}
    }
    @media (max-width: 991.98px){
      .hero-shell{padding:24px}
      .panel-grid,.highlight-grid,.contact-grid{grid-template-columns:1fr}
      .signal-row{grid-template-columns:repeat(2,1fr)}
      .section-head{flex-direction:column;align-items:flex-start}
      .nav-actions{margin-left:0;width:100%;justify-content:flex-start;flex-wrap:wrap}
      .command-search{width:100%;min-width:0}
      .desktop-only{display:none!important}
      .mobile-only{display:flex}
      .navbar-collapse{
        padding-top:14px;
      }
      .navbar-nav{
        align-items:stretch;
        width:100%;
        padding:10px 0 4px;
      }
      .navbar-nav .nav-link{
        width:100%;
      }
      .nav-wrap{padding:12px}
      .content-card{grid-column:span 12}
      .step{grid-template-columns:1fr}
      .step-num{margin-bottom:4px}
      .footer-note{justify-content:flex-start}
    }
    @media (max-width: 767.98px){
      .hero-shell{border-radius:26px}
      .hero-title{font-size:clamp(2rem, 9vw, 2.6rem)}
      .stat-badge{min-width:calc(50% - 6px)}
      .panel-grid,.signal-row,.recommend-grid{grid-template-columns:1fr}
      .section{padding-top:44px}
      .site-footer{padding-top:48px}
      .footer-card{padding:22px}
      .hero-actions .btn{width:100%;justify-content:center}
      .filter-toolbar{align-items:stretch}
      .sort-group{width:100%}
      .search-mini{width:100%;min-width:0}
      .pagination .page-link{min-width:40px}
      .container-xxl{padding-left:14px;padding-right:14px}
    }
    @media (max-width: 575.98px){
      .site-header{padding:10px 0}
      .brand-name span{display:none}
      .hero-shell{padding:20px}
      .section-card,.contact-card,.highlight-box,.footer-card{padding:18px}
      .stat-badge{min-width:100%}
      .chip{width:100%;justify-content:center}
      .filter-group{width:100%}
      .sort-group .form-select{width:100%}
      .accordion-button{padding:16px}
      .accordion-body{padding:0 16px 16px}
    }
