/* roulang page: index */
:root{
      --ink:#21172b;
      --ink-deep:#170f20;
      --plum:#4c254e;
      --plum-2:#6e3564;
      --coral:#f0785d;
      --coral-dark:#cf594f;
      --amber:#f2b35f;
      --mint:#a8d6c5;
      --paper:#fbf8f5;
      --mist:#f1eaf0;
      --surface:#fffdfb;
      --line:#e6dce3;
      --muted:#766b78;
      --white:#fff;
      --radius:18px;
      --shadow:0 18px 45px rgba(43,23,44,.10);
      --container:1240px;
      --section:92px;
      --ease:all .28s ease;
    }
    *,*:before,*:after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.75}
    a{color:inherit;text-decoration:none;transition:var(--ease)}
    img{max-width:100%;display:block}
    button,input,textarea{font:inherit}
    .container{max-width:var(--container);padding-left:24px;padding-right:24px}
    .site-header{position:fixed;z-index:1000;top:0;left:0;right:0;background:rgba(23,15,32,.92);border-bottom:1px solid rgba(255,255,255,.11);backdrop-filter:blur(14px);transition:var(--ease)}
    .navbar{min-height:78px}
    .brand{display:flex;align-items:center;gap:11px;color:#fff;font-weight:800;letter-spacing:-.04em;font-size:18px;line-height:1.15;max-width:250px}
    .brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--coral);color:#fff;font-size:14px;box-shadow:0 7px 20px rgba(240,120,93,.3)}
    .nav-link{color:#d9cdd9!important;font-size:14px;font-weight:600;padding:9px 15px!important;border-radius:9px}
    .nav-link:hover,.nav-link.active{color:#fff!important;background:rgba(255,255,255,.10)}
    .nav-actions{display:flex;align-items:center;gap:10px}
    .btn-main,.btn-soft,.btn-outline-light-custom{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:12px;font-weight:700;font-size:14px;border:1px solid transparent;transition:var(--ease)}
    .btn-main{background:var(--coral);color:#fff;box-shadow:0 9px 22px rgba(240,120,93,.22)}
    .btn-main:hover{background:var(--coral-dark);color:#fff;transform:translateY(-2px)}
    .btn-soft{background:#f6e8e2;color:var(--plum)}
    .btn-soft:hover{background:#fff;color:var(--plum);transform:translateY(-2px)}
    .btn-outline-light-custom{color:#fff;border-color:rgba(255,255,255,.28)}
    .btn-outline-light-custom:hover{background:#fff;color:var(--ink)}
    .btn-main:focus,.btn-soft:focus,.btn-outline-light-custom:focus,.nav-link:focus,input:focus,textarea:focus{outline:3px solid rgba(242,179,95,.55);outline-offset:3px}
    .navbar-toggler{border:1px solid rgba(255,255,255,.35);padding:8px 10px}
    .navbar-toggler:focus{box-shadow:0 0 0 3px rgba(242,179,95,.35)}
    .hero{padding:155px 0 78px;background:var(--ink-deep);color:#fff;position:relative;overflow:hidden}
    .hero:before,.hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
    .hero:before{width:520px;height:520px;right:-160px;top:-230px;background:rgba(110,53,100,.42)}
    .hero:after{width:260px;height:260px;left:44%;bottom:-180px;border:1px solid rgba(240,120,93,.35)}
    .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:end}
    .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--amber);font-size:12px;font-weight:800;letter-spacing:.13em}
    .eyebrow:before{content:"";width:24px;height:2px;background:var(--coral)}
    h1{font-size:clamp(42px,5.4vw,76px);letter-spacing:-.075em;line-height:1.08;margin:18px 0 23px;font-weight:900}
    .hero-copy{max-width:650px;color:#d9cedb;font-size:18px;line-height:1.9}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
    .hero-note{display:flex;gap:18px;flex-wrap:wrap;margin-top:25px;color:#bcaebe;font-size:13px}
    .hero-note span{display:flex;align-items:center;gap:7px}
    .hero-note i{width:7px;height:7px;background:var(--mint);border-radius:50%;display:inline-block}
    .feature-stage{min-height:340px;border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:18px;background:rgba(255,255,255,.055);box-shadow:0 25px 60px rgba(0,0,0,.22)}
    .visual{height:230px;border-radius:16px;position:relative;overflow:hidden;background:linear-gradient(135deg,#3c1e44,#9c4c5e 56%,#ef9b67)}
    .visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,9,24,.65),transparent 60%)}
    .visual-lines{position:absolute;inset:25px;background:repeating-linear-gradient(115deg,transparent 0 29px,rgba(255,255,255,.15) 30px 31px);transform:skewX(-15deg)}
    .play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;background:#fff;color:var(--plum);border-radius:50%;display:grid;place-items:center;font-size:22px;padding-left:4px}
    .visual-label{position:absolute;z-index:2;left:18px;bottom:14px;font-size:13px;color:#fff;font-weight:700}
    .duration{position:absolute;z-index:2;right:15px;bottom:14px;background:rgba(0,0,0,.55);padding:2px 8px;border-radius:6px;font-size:12px}
    .stage-meta{display:flex;justify-content:space-between;gap:12px;margin-top:15px;color:#d8cad7;font-size:13px}
    .stage-meta strong{display:block;color:#fff;font-size:16px}
    .metric-strip{background:var(--plum);color:#fff;padding:24px 0}
    .metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
    .metric{padding:5px 28px;border-right:1px solid rgba(255,255,255,.17)}
    .metric:first-child{padding-left:0}.metric:last-child{border:0}
    .metric strong{display:block;color:#fff;font-size:29px;line-height:1.2;letter-spacing:-.04em}
    .metric span{display:block;color:#cdbbcf;font-size:13px;margin-top:5px}
    .section{padding:var(--section) 0}
    .section-head{max-width:700px;margin-bottom:42px}
    .section-kicker{color:var(--plum-2);letter-spacing:.08em}
    h2{font-size:clamp(30px,3.5vw,47px);line-height:1.2;letter-spacing:-.055em;margin:12px 0 14px;font-weight:850}
    .section-head p{color:var(--muted);margin:0;font-size:16px}
    .matrix{display:grid;grid-template-columns:1.4fr .8fr .8fr;grid-template-rows:220px 180px;gap:18px}
    .content-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 8px 25px rgba(56,33,57,.05);transition:var(--ease)}
    .content-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
    .content-card:hover .card-art{transform:scale(1.04)}
    .card-large{grid-row:span 2}
    .card-art{position:absolute;inset:0;background:linear-gradient(135deg,#5a315f,#c45c64 58%,#f1b069);transition:transform .5s ease}
    .card-art.art-two{background:linear-gradient(135deg,#283e45,#6ba698 60%,#d4ba85)}
    .card-art.art-three{background:linear-gradient(135deg,#322448,#7b588e 62%,#e88c82)}
    .card-art.art-four{background:linear-gradient(135deg,#4e2833,#b55d4c 62%,#f2c27b)}
    .card-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(21,10,27,.8),transparent 65%)}
    .card-content{position:absolute;z-index:2;left:22px;right:22px;bottom:18px;color:#fff}
    .tag{display:inline-flex;padding:3px 9px;border-radius:7px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.25);font-size:11px;color:#fff;margin-bottom:9px}
    .card-content h3{font-size:21px;line-height:1.35;margin:0 0 4px;letter-spacing:-.03em}
    .card-content p{font-size:13px;color:#e9dfe9;margin:0;line-height:1.6}
    .card-content .meta{font-size:12px;color:#f8d3a7;margin-top:9px}
    .compare{background:var(--mist)}
    .compare-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:55px;align-items:center}
    .compare-intro p{color:var(--muted)}
    .path-box{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:25px;box-shadow:var(--shadow)}
    .path-row{display:flex;gap:15px;align-items:flex-start;padding:17px 0;border-bottom:1px solid var(--line)}
    .path-row:last-child{border-bottom:0;padding-bottom:0}
    .path-number{width:31px;height:31px;flex:0 0 31px;border-radius:10px;background:#f7d8cb;color:var(--coral-dark);font-weight:800;display:grid;place-items:center}
    .path-row strong{display:block;font-size:15px}
    .path-row small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
    .path-bar{height:6px;background:#eee4ea;border-radius:10px;margin-top:9px;overflow:hidden}
    .path-bar span{display:block;height:100%;background:var(--coral);border-radius:10px}
    .faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px}
    .faq-note{color:var(--muted)}
    .accordion-item{border:1px solid var(--line)!important;border-radius:13px!important;overflow:hidden;margin-bottom:11px;background:var(--surface)}
    .accordion-button{font-weight:750;color:var(--ink);background:var(--surface);padding:19px 21px;box-shadow:none!important}
    .accordion-button:not(.collapsed){color:var(--plum-2);background:#f8eff5}
    .accordion-button:after{background-image:none;content:"+";font-size:22px;color:var(--coral);font-weight:400;transform:none}
    .accordion-button:not(.collapsed):after{content:"−";transform:none}
    .accordion-body{color:var(--muted);font-size:14px;padding:0 21px 20px;line-height:1.8}
    .cta-section{padding:0 0 var(--section)}
    .cta-box{background:var(--ink-deep);color:#fff;border-radius:24px;padding:48px 52px;display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}
    .cta-box h2{margin-top:0}.cta-box p{color:#cdbdce}
    .form-label{font-size:13px;color:#e8dce7;margin-bottom:6px}
    .form-control{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;border-radius:11px;padding:11px 13px}
    .form-control::placeholder{color:#a997aa}.form-control:focus{background:rgba(255,255,255,.12);border-color:var(--coral);color:#fff;box-shadow:none}
    .form-hint{font-size:12px;color:#a997aa;margin-top:12px}.invalid-feedback{font-size:12px}
    .site-footer{background:#120d18;color:#c9bacb;padding:50px 0 25px}
    .footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:50px;padding-bottom:38px;border-bottom:1px solid rgba(255,255,255,.12)}
    .footer-brand{font-size:18px;color:#fff;font-weight:800;margin-bottom:13px}
    .footer-copy{font-size:13px;color:#9e8ea2;max-width:330px}
    .footer-title{font-size:13px;color:#fff;font-weight:800;margin-bottom:14px}
    .footer-links{display:flex;flex-direction:column;gap:7px;font-size:13px;color:#aa9baa}
    .footer-links a:hover{color:var(--coral)}
    .copyright{display:flex;justify-content:space-between;gap:20px;padding-top:21px;font-size:12px;color:#89788d}
    @media(max-width:991px){
      .hero-grid,.compare-layout,.faq-layout,.cta-box{grid-template-columns:1fr;gap:35px}
      .hero-grid{gap:38px}.matrix{grid-template-columns:1fr 1fr;grid-template-rows:260px 180px}.card-large{grid-row:span 2}
      .nav-actions{margin-top:15px;align-items:stretch}.nav-actions a{flex:1}
    }
    @media(max-width:767px){
      :root{--section:64px}.container{padding-left:18px;padding-right:18px}
      .navbar{min-height:70px}.brand{font-size:15px;max-width:210px}.brand-mark{width:30px;height:30px}
      .hero{padding:125px 0 52px}.hero-copy{font-size:16px}.hero-actions a{width:100%}
      h1{font-size:43px}.metric-strip{padding:20px 0}.metrics{grid-template-columns:1fr 1fr}
      .metric{padding:13px 15px;border-right:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17)}
      .metric:nth-child(2){border-right:0}.metric:nth-child(3),.metric:nth-child(4){border-bottom:0}
      .matrix{display:flex;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory}.content-card{min-width:285px;height:245px;scroll-snap-align:start}.card-large{height:300px}
      .cta-box{padding:32px 23px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}
      .copyright{flex-direction:column;gap:4px}
    }
    @media(max-width:520px){
      h1{font-size:38px}.feature-stage{min-height:300px}.visual{height:190px}.section-head{margin-bottom:28px}
      .footer-grid{grid-template-columns:1fr}
      .footer-grid>div:first-child{grid-column:auto}
    }

/* roulang page: category1 */
:root{
            --ink:#21172b;
            --ink-deep:#170f20;
            --plum:#4c254e;
            --plum-2:#6e3564;
            --coral:#f0785d;
            --coral-dark:#cf594f;
            --amber:#f2b35f;
            --mint:#a8d6c5;
            --paper:#fbf8f5;
            --mist:#f1eaf0;
            --surface:#fffdfb;
            --line:#e6dce3;
            --muted:#766b78;
            --white:#fff;
            --radius:18px;
            --shadow:0 18px 45px rgba(43,23,44,.10);
            --container:1240px;
            --section:82px;
            --ease:all .28s ease;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.75}
        a{color:inherit;text-decoration:none;transition:var(--ease)}
        img{max-width:100%;display:block}
        button,input,textarea{font:inherit}
        .container{max-width:var(--container);padding-left:24px;padding-right:24px}
        .site-header{position:fixed;z-index:1000;top:0;left:0;right:0;background:rgba(23,15,32,.94);border-bottom:1px solid rgba(255,255,255,.11);backdrop-filter:blur(14px)}
        .navbar{min-height:78px}
        .brand{display:flex;align-items:center;gap:11px;color:#fff;font-weight:800;letter-spacing:-.04em;font-size:18px;line-height:1.15;max-width:250px}
        .brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--coral);color:#fff;font-size:14px;box-shadow:0 7px 20px rgba(240,120,93,.3)}
        .nav-link{color:#d9cdd9!important;font-size:14px;font-weight:600;padding:9px 15px!important;border-radius:9px}
        .nav-link:hover,.nav-link.active{color:#fff!important;background:rgba(255,255,255,.10)}
        .nav-actions{display:flex;align-items:center;gap:10px}
        .btn-main,.btn-soft,.btn-outline-light-custom{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:12px;font-weight:700;font-size:14px;border:1px solid transparent;transition:var(--ease)}
        .btn-main{background:var(--coral);color:#fff;box-shadow:0 9px 22px rgba(240,120,93,.22)}
        .btn-main:hover{background:var(--coral-dark);color:#fff;transform:translateY(-2px)}
        .btn-soft{background:#f6e8e2;color:var(--plum)}
        .btn-soft:hover{background:#fff;color:var(--plum);transform:translateY(-2px)}
        .btn-outline-light-custom{color:#fff;border-color:rgba(255,255,255,.28)}
        .btn-outline-light-custom:hover{background:#fff;color:var(--ink)}
        .btn-main:focus,.btn-soft:focus,.btn-outline-light-custom:focus,.nav-link:focus,input:focus,textarea:focus,.accordion-button:focus{outline:3px solid rgba(242,179,95,.55);outline-offset:3px}
        .navbar-toggler{border:1px solid rgba(255,255,255,.35);padding:8px 10px}
        .navbar-toggler:focus{box-shadow:0 0 0 3px rgba(242,179,95,.35)}
        .inner-hero{padding:150px 0 78px;background:var(--mist);position:relative;overflow:hidden}
        .inner-hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-150px;top:-180px;background:rgba(110,53,100,.10)}
        .hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}
        .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--plum-2);font-size:12px;font-weight:800;letter-spacing:.12em}
        .eyebrow:before{content:"";width:24px;height:2px;background:var(--coral)}
        h1{font-size:clamp(38px,5vw,66px);line-height:1.15;letter-spacing:-.06em;margin:16px 0 20px;color:var(--ink)}
        h2{font-size:clamp(27px,3vw,40px);line-height:1.25;letter-spacing:-.045em;margin:10px 0 15px}
        h3{font-size:21px;line-height:1.4;margin:0 0 8px}
        .hero-text{color:var(--muted);font-size:18px;max-width:690px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
        .hero-panel{background:var(--ink);color:#fff;border-radius:24px;padding:25px;box-shadow:var(--shadow)}
        .panel-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:17px;margin-bottom:18px}
        .panel-title{font-size:14px;color:#d9cdd9}
        .status-dot{width:9px;height:9px;background:var(--mint);border-radius:50%;display:inline-block;margin-right:7px}
        .panel-number{font-size:46px;font-weight:800;letter-spacing:-.06em;line-height:1}
        .panel-sub{color:#bcaebe;font-size:13px;margin-top:8px}
        .panel-bars{display:flex;gap:7px;align-items:end;height:76px;margin-top:22px}
        .panel-bars span{flex:1;border-radius:5px 5px 2px 2px;background:var(--coral);opacity:.9}
        .panel-bars span:nth-child(1){height:42%}.panel-bars span:nth-child(2){height:70%;background:var(--amber)}.panel-bars span:nth-child(3){height:56%;background:var(--plum-2)}.panel-bars span:nth-child(4){height:88%;background:var(--coral)}.panel-bars span:nth-child(5){height:65%;background:var(--mint)}
        .section{padding:var(--section) 0}
        .section-head{max-width:700px;margin-bottom:38px}
        .section-head p{color:var(--muted);margin:0}
        .filter-bar{display:flex;gap:10px;align-items:center;overflow-x:auto;padding-bottom:8px;margin-bottom:32px;scrollbar-width:thin}
        .filter-chip{white-space:nowrap;padding:9px 15px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:14px;font-weight:700}
        .filter-chip:hover,.filter-chip.active{background:var(--plum);border-color:var(--plum);color:#fff}
        .feature-grid{display:grid;grid-template-columns:1.45fr .85fr;gap:20px}
        .visual-card{min-height:390px;position:relative;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#432044,#9d4f68 56%,#f1ae6c);box-shadow:var(--shadow);color:#fff}
        .visual-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(22,10,28,.86),transparent 65%)}
        .visual-pattern{position:absolute;inset:30px;border:1px solid rgba(255,255,255,.25);border-radius:16px;opacity:.65}
        .visual-pattern:before,.visual-pattern:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.25)}
        .visual-pattern:before{width:150px;height:150px;right:13%;top:13%}.visual-pattern:after{width:65px;height:65px;left:15%;bottom:18%}
        .visual-content{position:absolute;left:28px;right:28px;bottom:24px;z-index:2}
        .tag{display:inline-flex;padding:3px 9px;border-radius:7px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.25);font-size:11px;color:#fff;margin-bottom:10px}
        .visual-content h3{font-size:29px;max-width:470px}
        .visual-content p{color:#f0dfe7;margin:0;font-size:14px}
        .side-stack{display:grid;gap:20px}
        .guide-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:23px;display:flex;flex-direction:column;justify-content:space-between;min-height:185px;transition:var(--ease)}
        .guide-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d4b7ce}
        .guide-card .card-icon{width:40px;height:40px;border-radius:12px;background:#f7e6df;color:var(--coral-dark);display:grid;place-items:center;font-weight:800;margin-bottom:18px}
        .guide-card p{color:var(--muted);font-size:14px;margin:0 0 13px}
        .guide-link{color:var(--plum-2);font-weight:800;font-size:14px}
        .guide-link:hover{color:var(--coral-dark)}
        .path-section{background:#f2e9ee}
        .path-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:start}
        .path-intro p{color:var(--muted)}
        .path-list{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:12px 25px}
        .path-row{display:flex;gap:17px;align-items:flex-start;padding:19px 0;border-bottom:1px solid var(--line)}
        .path-row:last-child{border-bottom:0}
        .path-index{width:32px;height:32px;border-radius:10px;background:var(--plum);color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px;flex:none}
        .path-row strong{display:block;font-size:16px}.path-row small{display:block;color:var(--muted);font-size:13px;margin-top:3px}
        .faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px}
        .faq-note{color:var(--muted)}
        .accordion-item{border:1px solid var(--line)!important;border-radius:13px!important;overflow:hidden;margin-bottom:11px;background:var(--surface)}
        .accordion-button{font-weight:750;color:var(--ink);background:var(--surface);padding:19px 21px;box-shadow:none!important}
        .accordion-button:not(.collapsed){color:var(--plum-2);background:#f8eff5}
        .accordion-button:after{background-image:none;content:"+";font-size:22px;color:var(--coral)}
        .accordion-button:not(.collapsed):after{content:"−";transform:none}
        .accordion-body{color:var(--muted);font-size:14px;padding:0 21px 20px}
        .feedback{padding:30px 0 82px}
        .feedback-box{background:var(--ink);border-radius:22px;padding:40px;color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center}
        .feedback-box p{color:#cbbdca;margin:0}
        .feedback-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
        .field-full{grid-column:1/-1}
        label{display:block;color:#e9dce9;font-size:13px;font-weight:700;margin-bottom:6px}
        input,textarea{width:100%;border:1px solid rgba(255,255,255,.19);border-radius:11px;background:rgba(255,255,255,.08);color:#fff;padding:11px 13px}
        textarea{min-height:95px;resize:vertical}
        input::placeholder,textarea::placeholder{color:#aa9aaa}
        input:focus,textarea:focus{border-color:var(--amber);outline:3px solid rgba(242,179,95,.24)}
        .form-note{grid-column:1/-1;color:#a99ca9;font-size:12px;margin-top:-5px}
        .site-footer{background:var(--ink-deep);color:#fff;padding:55px 0 22px}
        .footer-grid{display:grid;grid-template-columns:1.4fr .7fr .8fr;gap:60px;padding-bottom:36px}
        .footer-brand{font-size:21px;font-weight:800;letter-spacing:-.04em}
        .footer-copy{color:#ad9eaf;max-width:390px;font-size:14px;margin:12px 0 0}
        .footer-title{font-weight:800;margin-bottom:13px}
        .footer-links{display:grid;gap:8px;color:#ad9eaf;font-size:14px}
        .footer-links a:hover{color:var(--coral)}
        .copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:19px;color:#887a8b;font-size:12px;display:flex;justify-content:space-between;gap:20px}
        @media(max-width:991px){
            .navbar-collapse{background:var(--ink-deep);padding:18px 0 22px}
            .nav-actions{padding:15px 0 0}.hero-layout,.path-layout,.feedback-box{grid-template-columns:1fr;gap:35px}
            .feature-grid{grid-template-columns:1fr}.faq-layout{grid-template-columns:1fr;gap:30px}
        }
        @media(max-width:767px){
            :root{--section:58px}
            .container{padding-left:18px;padding-right:18px}
            .inner-hero{padding:125px 0 55px}
            h1{font-size:39px}.hero-text{font-size:16px}
            .visual-card{min-height:310px}.visual-content h3{font-size:24px}
            .feedback-box{padding:27px 20px}.feedback-form{grid-template-columns:1fr}.field-full,.form-note{grid-column:auto}
            .footer-grid{grid-template-columns:1fr;gap:28px}.copyright{display:block}.copyright span{display:block;margin-top:5px}
        }
        @media(max-width:520px){
            .brand{font-size:15px}.brand-mark{width:31px;height:31px}
            .nav-actions{display:grid;grid-template-columns:1fr 1fr}
            .nav-actions a{padding-left:8px;padding-right:8px}
            .hero-actions a{width:100%}.path-list{padding:8px 17px}
        }

/* roulang page: category2 */
:root{
      --ink:#21172b;
      --ink-deep:#170f20;
      --plum:#4c254e;
      --plum-2:#6e3564;
      --coral:#f0785d;
      --coral-dark:#cf594f;
      --amber:#f2b35f;
      --mint:#a8d6c5;
      --paper:#fbf8f5;
      --mist:#f1eaf0;
      --surface:#fffdfb;
      --line:#e6dce3;
      --muted:#766b78;
      --white:#fff;
      --radius:18px;
      --shadow:0 18px 45px rgba(43,23,44,.10);
      --container:1240px;
      --section:84px;
      --ease:all .28s ease;
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.75}
    a{color:inherit;text-decoration:none;transition:var(--ease)}
    img{max-width:100%;display:block}
    button,input,textarea{font:inherit}
    .container{max-width:var(--container);padding-left:24px;padding-right:24px}
    .site-header{position:fixed;z-index:1000;top:0;left:0;right:0;background:rgba(23,15,32,.94);border-bottom:1px solid rgba(255,255,255,.11);backdrop-filter:blur(14px);transition:var(--ease)}
    .navbar{min-height:78px}
    .brand{display:flex;align-items:center;gap:11px;color:#fff;font-weight:800;letter-spacing:-.04em;font-size:18px;line-height:1.15;max-width:250px}
    .brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--coral);color:#fff;font-size:14px;box-shadow:0 7px 20px rgba(240,120,93,.3)}
    .nav-link{color:#d9cdd9!important;font-size:14px;font-weight:600;padding:9px 15px!important;border-radius:9px}
    .nav-link:hover,.nav-link.active{color:#fff!important;background:rgba(255,255,255,.10)}
    .nav-actions{display:flex;align-items:center;gap:10px}
    .btn-main,.btn-soft,.btn-outline-light-custom{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:12px;font-weight:700;font-size:14px;border:1px solid transparent;transition:var(--ease)}
    .btn-main{background:var(--coral);color:#fff;box-shadow:0 9px 22px rgba(240,120,93,.22)}
    .btn-main:hover{background:var(--coral-dark);color:#fff;transform:translateY(-2px)}
    .btn-soft{background:#f6e8e2;color:var(--plum)}
    .btn-soft:hover{background:#fff;color:var(--plum);transform:translateY(-2px)}
    .btn-outline-light-custom{color:#fff;border-color:rgba(255,255,255,.28)}
    .btn-outline-light-custom:hover{background:#fff;color:var(--ink)}
    .btn-main:focus,.btn-soft:focus,.btn-outline-light-custom:focus,.nav-link:focus,.filter-link:focus,.content-link:focus{outline:3px solid rgba(242,179,95,.55);outline-offset:3px}
    .navbar-toggler{border:1px solid rgba(255,255,255,.35);padding:8px 10px}
    .navbar-toggler:focus{box-shadow:0 0 0 3px rgba(242,179,95,.35)}
    .hero{padding:155px 0 76px;background:var(--ink-deep);color:#fff;position:relative;overflow:hidden}
    .hero::before,.hero::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
    .hero::before{width:580px;height:580px;right:-210px;top:-300px;background:rgba(110,53,100,.42)}
    .hero::after{width:340px;height:340px;left:46%;bottom:-275px;border:1px solid rgba(240,120,93,.34)}
    .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.12fr .88fr;gap:70px;align-items:center}
    .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--amber);font-size:12px;font-weight:800;letter-spacing:.13em}
    .eyebrow::before{content:"";width:24px;height:2px;background:var(--coral)}
    h1{font-size:clamp(38px,5vw,68px);line-height:1.15;letter-spacing:-.06em;margin:17px 0 20px;font-weight:850}
    h2{font-size:clamp(27px,3vw,40px);line-height:1.25;letter-spacing:-.045em;margin:10px 0 15px;font-weight:820}
    h3{font-size:21px;line-height:1.35;margin:0 0 8px;font-weight:780}
    .hero-copy{max-width:650px;color:#d9cedb;font-size:18px;line-height:1.9;margin:0}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
    .hero-note{display:flex;gap:18px;flex-wrap:wrap;margin-top:25px;color:#bcaebe;font-size:13px}
    .hero-note span{display:flex;align-items:center;gap:7px}
    .hero-note i{width:7px;height:7px;background:var(--mint);border-radius:50%;display:inline-block}
    .update-board{border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:24px;background:rgba(255,255,255,.055);box-shadow:0 25px 60px rgba(0,0,0,.22)}
    .board-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.13);padding-bottom:18px;margin-bottom:19px}
    .board-title{font-size:17px;font-weight:750}
    .live-dot{display:inline-flex;align-items:center;gap:7px;color:#d9f0e7;font-size:12px}
    .live-dot::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px rgba(168,214,197,.12)}
    .board-number{font-size:58px;line-height:1;font-weight:850;color:#fff;margin:5px 0 6px}
    .board-label{color:#c6b6c5;font-size:13px}
    .board-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:14px;color:#e4d9e3}
    .board-row:last-child{border-bottom:0;padding-bottom:0}
    .board-row strong{color:var(--amber);font-size:15px}
    .section{padding:var(--section) 0}
    .section-head{max-width:720px;margin-bottom:38px}
    .section-kicker{color:var(--plum-2);letter-spacing:.08em}
    .section-head p{color:var(--muted);margin:0;font-size:16px}
    .filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:16px 0 26px;border-bottom:1px solid var(--line)}
    .filter-label{font-size:13px;color:var(--muted);font-weight:700;margin-right:5px}
    .filter-link{display:inline-flex;padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:13px;font-weight:650}
    .filter-link:hover,.filter-link.active{background:var(--plum);border-color:var(--plum);color:#fff}
    .timeline-wrap{position:relative;margin:34px 0 48px;overflow-x:auto;padding:4px 0 17px}
    .timeline{display:flex;min-width:790px;position:relative}
    .timeline::before{content:"";position:absolute;left:17px;right:17px;top:17px;height:2px;background:#ddc8d8}
    .timeline-step{position:relative;z-index:1;flex:1;min-width:155px}
    .timeline-dot{width:35px;height:35px;border-radius:50%;background:var(--paper);border:8px solid var(--plum-2);margin-bottom:13px}
    .timeline-step.current .timeline-dot{border-color:var(--coral);box-shadow:0 0 0 7px rgba(240,120,93,.13)}
    .timeline-step strong{display:block;font-size:14px}
    .timeline-step small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
    .feature-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:22px}
    .feature-main,.mini-update{position:relative;overflow:hidden;border-radius:var(--radius);min-height:340px;color:#fff;border:1px solid rgba(255,255,255,.12);background:#43264c}
    .feature-main{padding:30px;display:flex;align-items:end;background:linear-gradient(135deg,#48244d,#843f66 56%,#ed8765)}
    .feature-main::before{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(255,255,255,.26);border-radius:50%;right:12%;top:16%;box-shadow:0 0 0 28px rgba(255,255,255,.05),0 0 0 56px rgba(255,255,255,.035)}
    .feature-main::after{content:"▶";position:absolute;right:35px;top:31px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2);font-size:18px}
    .feature-text{position:relative;z-index:2;max-width:520px}
    .feature-text p{color:#f4e8ed;margin:0;font-size:14px}
    .mini-stack{display:grid;gap:22px}
    .mini-update{min-height:159px;padding:22px;background:linear-gradient(135deg,#294246,#4e7c78 58%,#c5ab7a)}
    .mini-update.alt{background:linear-gradient(135deg,#3d223a,#7b4a77 62%,#de827c)}
    .mini-update h3{font-size:18px;max-width:230px}
    .mini-update p{font-size:13px;color:#f1e7ed;margin:0;max-width:270px}
    .update-meta{position:absolute;bottom:18px;left:22px;font-size:12px;color:#f9d4a6}
    .group-section{background:var(--mist)}
    .group-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;align-items:start}
    .group-intro{position:sticky;top:110px}
    .group-intro p{color:var(--muted);margin-bottom:25px}
    .group-list{display:grid;gap:14px}
    .group-item{display:grid;grid-template-columns:78px 1fr auto;gap:18px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:16px;transition:var(--ease)}
    .group-item:hover{transform:translateX(4px);border-color:#d0a9c7;box-shadow:0 12px 26px rgba(56,33,57,.08)}
    .group-thumb{height:57px;border-radius:11px;background:linear-gradient(135deg,#633460,#ed866e);position:relative}
    .group-thumb.two{background:linear-gradient(135deg,#2d4a4a,#9cc9b6)}
    .group-thumb.three{background:linear-gradient(135deg,#3f2a58,#c281a1)}
    .group-thumb::after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:13px}
    .group-item h3{font-size:16px;margin:0}
    .group-item p{font-size:13px;color:var(--muted);margin:2px 0 0}
    .group-status{font-size:12px;color:var(--plum-2);white-space:nowrap;background:#f5e7f1;border-radius:8px;padding:5px 8px}
    .compare{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .compare-layout{display:grid;grid-template-columns:5fr 7fr;gap:30px;align-items:stretch}
    .compare-intro{padding:34px 0}
    .compare-intro p{color:var(--muted);max-width:400px}
    .path-panel{border:1px solid var(--line);border-radius:18px;padding:25px;background:#fff}
    .path-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:17px}
    .path-head strong{font-size:17px}
    .path-head span{font-size:12px;color:var(--plum-2);background:#f6e8f1;padding:5px 9px;border-radius:7px}
    .path-row{display:flex;gap:15px;align-items:flex-start;padding:15px 0;border-bottom:1px solid var(--line)}
    .path-row:last-child{border-bottom:0}
    .path-num{width:25px;height:25px;display:grid;place-items:center;background:var(--plum);color:#fff;border-radius:8px;font-size:12px;font-weight:800;flex:none}
    .path-row strong{display:block;font-size:15px}
    .path-row small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
    .faq-section{background:var(--paper)}
    .faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px}
    .faq-note{color:var(--muted)}
    .accordion-item{border:1px solid var(--line)!important;border-radius:13px!important;overflow:hidden;margin-bottom:11px;background:var(--surface)}
    .accordion-button{font-weight:750;color:var(--ink);background:var(--surface);padding:19px 21px;box-shadow:none!important}
    .accordion-button:not(.collapsed){color:var(--plum-2);background:#f8eff5}
    .accordion-button::after{background-image:none;content:"+";font-size:22px;color:var(--coral);transform:none}
    .accordion-button:not(.collapsed)::after{content:"−";transform:none}
    .accordion-body{padding:0 21px 19px;color:var(--muted);font-size:14px}
    .cta{padding:65px 0;background:var(--plum);color:#fff}
    .cta-box{display:flex;justify-content:space-between;align-items:center;gap:28px}
    .cta h2{margin-bottom:8px}
    .cta p{color:#dbcbd9;margin:0;max-width:680px}
    .cta .btn-main{background:var(--coral)}
    .site-footer{background:var(--ink-deep);color:#fff;padding:60px 0 24px}
    .footer-grid{display:grid;grid-template-columns:1.5fr .7fr .8fr;gap:60px;padding-bottom:42px}
    .footer-brand{font-size:20px;font-weight:800;letter-spacing:-.04em}
    .footer-copy{color:#bcaebe;max-width:390px;font-size:14px;margin:14px 0 0}
    .footer-title{font-size:14px;font-weight:800;color:#fff;margin-bottom:14px}
    .footer-links{display:grid;gap:9px;color:#bcaebe;font-size:14px}
    .footer-links a:hover{color:var(--coral)}
    .copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#968699;font-size:12px}
    @media (max-width:1100px){
      .hero-grid{gap:38px}.group-layout{gap:38px}.nav-actions{margin-top:14px}
      .navbar-collapse{padding-bottom:18px}
    }
    @media (max-width:991px){
      .hero-grid,.feature-grid,.group-layout,.compare-layout,.faq-layout{grid-template-columns:1fr}
      .hero-grid{align-items:start}.update-board{max-width:650px}
      .group-intro{position:static}.feature-main{min-height:310px}
      .mini-stack{grid-template-columns:1fr 1fr}
      .nav-actions{justify-content:flex-start}
    }
    @media (max-width:767px){
      :root{--section:58px}
      .container{padding-left:18px;padding-right:18px}
      .hero{padding:130px 0 58px}
      h1{font-size:39px}.hero-copy{font-size:16px}
      .timeline-wrap{margin-bottom:34px}
      .mini-stack{grid-template-columns:1fr}
      .feature-main{min-height:285px;padding:23px}
      .group-item{grid-template-columns:62px 1fr}
      .group-status{grid-column:2;justify-self:start}
      .cta-box{display:block}.cta .btn-main{margin-top:22px}
      .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
      .footer-grid>div:first-child{grid-column:1/-1}
      .copyright{display:block}.copyright span{display:block;margin-top:5px}
    }
    @media (max-width:575px){
      .brand{font-size:15px}.brand-mark{width:31px;height:31px}
      .hero-actions,.nav-actions{display:grid;grid-template-columns:1fr;width:100%}
      .hero-actions a,.nav-actions a{width:100%}
      .board-number{font-size:48px}
      .filters{align-items:flex-start}
      .filter-label{width:100%}
      .feature-main{min-height:310px}
      .group-item{gap:12px;padding:13px}
      .path-panel{padding:18px}
      .footer-grid{grid-template-columns:1fr}
      .footer-grid>div:first-child{grid-column:auto}
    }
