/* roulang page: index */
:root{
            --blue:#3478b8;
            --blue-deep:#235781;
            --blue-soft:#eaf4fb;
            --lavender:#eeeaf7;
            --coral:#e9a18f;
            --gold:#d7b979;
            --ink:#203344;
            --muted:#718395;
            --bg:#f7fafc;
            --surface:#ffffff;
            --line:#dce7ee;
            --radius-lg:28px;
            --radius-md:18px;
            --radius-sm:10px;
            --shadow:0 14px 38px rgba(39,76,105,.09);
            --shadow-hover:0 20px 44px rgba(39,76,105,.16);
            --max:1200px;
            --section:112px;
        }
        *,*::before,*::after{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans SC","Microsoft YaHei","PingFang SC",Arial,sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}
        a{color:inherit;text-decoration:none}
        img{max-width:100%;display:block}
        button,input{font:inherit}
        .container{max-width:var(--max)}
        .site-header{background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1000;backdrop-filter:blur(14px)}
        .navbar{min-height:78px;padding:12px 0}
        .brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.02em;color:var(--blue-deep);line-height:1.2}
        .brand-mark{width:38px;height:38px;border-radius:12px;background:var(--blue);position:relative;box-shadow:0 8px 18px rgba(52,120,184,.25)}
        .brand-mark:before,.brand-mark:after{content:"";position:absolute;background:#fff;border-radius:50%}
        .brand-mark:before{width:16px;height:16px;left:7px;top:8px;opacity:.9}
        .brand-mark:after{width:9px;height:9px;right:7px;bottom:7px;background:var(--coral)}
        .brand-text{font-size:15px;max-width:190px}
        .nav-link{font-size:14px;color:var(--muted)!important;margin:0 5px;padding:10px 14px!important;border-radius:10px;transition:.2s}
        .nav-link:hover,.nav-link.active{color:var(--blue-deep)!important;background:var(--blue-soft)}
        .nav-action{border:1px solid var(--blue);color:var(--blue-deep);padding:9px 17px;border-radius:10px;font-size:14px;transition:.2s}
        .nav-action:hover{background:var(--blue);color:#fff}
        .navbar-toggler{border:1px solid var(--line);padding:8px 10px;border-radius:10px}
        .navbar-toggler:focus{box-shadow:0 0 0 3px rgba(52,120,184,.16)}
        .hero{padding:78px 0 74px;background:linear-gradient(180deg,#f5faff 0%,#fff 100%);overflow:hidden}
        .hero-copy{padding:26px 0}
        .eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--blue-deep);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
        .eyebrow:before,.section-kicker:before{content:"";width:24px;height:2px;background:var(--coral)}
        h1,h2,h3{font-weight:800;line-height:1.28;letter-spacing:-.035em;margin:0;color:var(--ink)}
        h1{font-size:clamp(38px,5vw,68px);max-width:650px;margin:20px 0}
        h2{font-size:clamp(28px,3.3vw,42px)}
        h3{font-size:20px}
        .hero-lead{font-size:17px;color:var(--muted);max-width:610px;margin:0 0 30px}
        .btn-main,.btn-sub{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 21px;border-radius:11px;font-size:14px;font-weight:700;transition:.22s;border:1px solid transparent}
        .btn-main{background:var(--blue);color:#fff;box-shadow:0 9px 20px rgba(52,120,184,.2)}
        .btn-main:hover{background:var(--blue-deep);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-hover)}
        .btn-sub{background:#fff;color:var(--blue-deep);border-color:var(--line)}
        .btn-sub:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-2px)}
        .btn-main:focus,.btn-sub:focus,.nav-action:focus{outline:3px solid rgba(52,120,184,.25);outline-offset:3px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
        .hero-meta{display:flex;gap:28px;margin-top:34px;flex-wrap:wrap}
        .meta-item strong{display:block;font-size:21px;color:var(--blue-deep)}
        .meta-item span{font-size:12px;color:var(--muted)}
        .hero-stage{min-height:440px;position:relative;padding:20px}
        .visual-board{height:410px;border-radius:var(--radius-lg);position:relative;overflow:hidden;background:linear-gradient(145deg,#c9e3f2,#e9d9df 58%,#f3e9d2);box-shadow:var(--shadow)}
        .visual-board:before{content:"";position:absolute;width:270px;height:360px;right:18%;bottom:-72px;border-radius:48% 52% 0 0;background:linear-gradient(150deg,rgba(255,255,255,.75),rgba(95,139,173,.36));transform:rotate(13deg)}
        .visual-board:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.42),transparent 46%,rgba(27,65,91,.12))}
        .board-label{position:absolute;left:24px;top:24px;z-index:2;background:rgba(255,255,255,.76);padding:8px 12px;border-radius:8px;color:var(--blue-deep);font-size:12px;font-weight:700}
        .board-caption{position:absolute;left:26px;bottom:26px;z-index:2;color:#fff;text-shadow:0 2px 12px rgba(25,50,65,.35)}
        .board-caption b{display:block;font-size:25px}
        .floating-card{position:absolute;z-index:3;background:#fff;border:1px solid rgba(255,255,255,.8);border-radius:16px;padding:16px;box-shadow:var(--shadow);width:190px}
        .floating-card.top{top:2px;right:-2px}.floating-card.bottom{bottom:14px;left:-4px}
        .floating-card small{color:var(--muted);display:block;font-size:11px}.floating-card strong{display:block;margin-top:5px;color:var(--blue-deep);font-size:15px}
        .dot-row{display:flex;gap:6px;margin-top:12px}.dot-row i{width:9px;height:9px;border-radius:50%;background:var(--blue-soft)}.dot-row i:first-child{background:var(--coral)}.dot-row i:nth-child(2){background:var(--gold)}
        .section{padding:var(--section) 0}
        .section-head{max-width:650px;margin-bottom:40px}.section-head p{color:var(--muted);margin:15px 0 0;font-size:15px}
        .soft-section{background:#eef6fb}
        .story-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}
        .story-card,.value-panel,.quote-card,.topic-card,.info-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow);transition:.24s}
        .story-card:hover,.topic-card:hover,.quote-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}
        .story-card{padding:28px;display:flex;gap:20px;align-items:flex-start}.story-card + .story-card{margin-top:16px}
        .number{font-size:12px;color:var(--coral);font-weight:800;letter-spacing:.1em;min-width:35px}
        .story-card p{color:var(--muted);font-size:14px;margin:8px 0 0}
        .path{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
        .path-item{padding:25px 20px;border-top:3px solid var(--blue);background:#fff;border-radius:var(--radius-sm);box-shadow:var(--shadow)}
        .path-item:nth-child(2){border-color:var(--coral)}.path-item:nth-child(3){border-color:var(--gold)}.path-item:nth-child(4){border-color:#9d9acb}
        .path-item span{font-size:12px;color:var(--muted)}.path-item h3{margin:12px 0 8px;font-size:18px}.path-item p{font-size:13px;color:var(--muted);margin:0}
        .value-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:stretch}
        .value-panel{padding:30px;background:var(--blue-deep);color:#fff}.value-panel h3{color:#fff;margin:10px 0}.value-panel p{color:#c9dae7;font-size:14px}
        .value-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.value-box{padding:23px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm)}.value-box strong{font-size:30px;color:var(--blue)}.value-box span{display:block;color:var(--muted);font-size:13px;margin-top:5px}
        .topic-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:22px}.topic-card{overflow:hidden}.topic-art{height:230px;background:linear-gradient(135deg,#a7cde2,#f0d5d4 55%,#e8dfc4);position:relative}.topic-art.alt{height:150px;background:linear-gradient(135deg,#d8d1e9,#bedde4)}.topic-art.third{height:150px;background:linear-gradient(135deg,#e5d6be,#d8e8ef)}
        .topic-art:after{content:"";position:absolute;width:150px;height:220px;right:18%;bottom:-72px;border-radius:50% 50% 0 0;background:rgba(255,255,255,.42);transform:rotate(18deg)}
        .topic-body{padding:23px}.topic-body p{font-size:13px;color:var(--muted);margin:8px 0 16px}.tag{display:inline-block;background:var(--blue-soft);color:var(--blue-deep);border-radius:7px;padding:4px 9px;font-size:11px;font-weight:700;margin:0 4px 5px 0}.tag.warm{background:#f9eee9;color:#98624f}.topic-side{display:grid;gap:22px}
        .quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.quote-card{padding:25px}.quote-card p{font-size:14px;min-height:90px;margin:0;color:#536675}.quote-card footer{border-top:1px solid var(--line);padding-top:14px;margin-top:18px;color:var(--blue-deep);font-size:13px;font-weight:700}
        .accordion-item{border:1px solid var(--line)!important;border-radius:12px!important;overflow:hidden;margin-bottom:12px;background:#fff;box-shadow:none}.accordion-button{font-weight:700;color:var(--ink);background:#fff;padding:20px 22px}.accordion-button:not(.collapsed){color:var(--blue-deep);background:var(--blue-soft);box-shadow:none}.accordion-button:focus{box-shadow:0 0 0 3px rgba(52,120,184,.14)}.accordion-body{color:var(--muted);font-size:14px;padding:0 22px 21px}
        .cta{padding:65px 0;background:var(--blue-soft)}.cta-box{background:#fff;border:1px solid #cfe1ed;border-radius:var(--radius-lg);padding:40px 48px;display:flex;align-items:center;justify-content:space-between;gap:25px;box-shadow:var(--shadow)}.cta-box p{color:var(--muted);margin:10px 0 0;font-size:14px}
        .site-footer{background:#1e3445;color:#c5d4df;padding:58px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:40px}.footer-brand{color:#fff;font-size:17px;font-weight:800}.footer-text{font-size:13px;max-width:350px;color:#9fb3c1;margin-top:14px}.footer-title{font-size:13px;color:#fff;font-weight:700;margin-bottom:14px}.footer-links a{display:block;color:#9fb3c1;font-size:13px;margin:8px 0;transition:.2s}.footer-links a:hover{color:#fff;transform:translateX(3px)}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;color:#829aa9;font-size:12px}
        @media(max-width:991px){.nav-action{display:none}.hero{padding:55px 0}.hero-stage{margin-top:28px}.story-grid,.value-wrap,.topic-grid{grid-template-columns:1fr}.path{grid-template-columns:repeat(2,1fr)}}
        @media(max-width:767px){:root{--section:72px}.brand-text{font-size:13px;max-width:155px}.navbar-collapse{padding-top:15px}.nav-link{margin:3px 0}.hero-copy{padding:0}h1{font-size:39px}.hero-lead{font-size:15px}.hero-stage{min-height:355px;padding:10px}.visual-board{height:330px}.floating-card{width:155px;padding:12px}.floating-card.top{right:0}.floating-card.bottom{left:0}.board-caption b{font-size:20px}.value-list,.quote-grid{grid-template-columns:1fr}.cta-box{padding:30px 24px;display:block}.cta-box .btn-main{margin-top:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1}}
        @media(max-width:520px){.path{grid-template-columns:1fr}.hero-actions .btn-main,.hero-actions .btn-sub{width:100%}.hero-meta{gap:18px}.topic-grid{gap:16px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}

/* roulang page: category1 */
:root{
 --blue:#3478b8;--blue-deep:#235781;--blue-soft:#eaf4fb;--lavender:#eeeaf7;
 --coral:#e9a18f;--gold:#d7b979;--ink:#203344;--muted:#718395;
 --bg:#f7fafc;--surface:#fff;--line:#dce7ee;--radius-lg:28px;--radius-md:18px;
 --radius-sm:10px;--shadow:0 14px 38px rgba(39,76,105,.09);
 --shadow-hover:0 20px 44px rgba(39,76,105,.16);--max:1200px;--section:86px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans SC","Microsoft YaHei","PingFang SC",Arial,sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select{font:inherit}
.container{max-width:var(--max)}
.site-header{background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1000;backdrop-filter:blur(14px)}
.navbar{min-height:78px;padding:12px 0}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.02em;color:var(--blue-deep);line-height:1.2}
.brand-mark{width:38px;height:38px;border-radius:12px;background:var(--blue);position:relative;box-shadow:0 8px 18px rgba(52,120,184,.25)}
.brand-mark:before,.brand-mark:after{content:"";position:absolute;background:#fff;border-radius:50%}
.brand-mark:before{width:16px;height:16px;left:7px;top:8px;opacity:.9}
.brand-mark:after{width:9px;height:9px;right:7px;bottom:7px;background:var(--coral)}
.brand-text{font-size:15px;max-width:190px}
.nav-link{font-size:14px;color:var(--muted)!important;margin:0 5px;padding:10px 14px!important;border-radius:10px;transition:.2s}
.nav-link:hover,.nav-link.active{color:var(--blue-deep)!important;background:var(--blue-soft)}
.nav-action{border:1px solid var(--blue);color:var(--blue-deep);padding:9px 17px;border-radius:10px;font-size:14px;transition:.2s}
.nav-action:hover{background:var(--blue);color:#fff}
.navbar-toggler{border:1px solid var(--line);padding:8px 10px;border-radius:10px}
.navbar-toggler:focus{box-shadow:0 0 0 3px rgba(52,120,184,.16)}
.hero{padding:76px 0 68px;background:linear-gradient(180deg,#f4faff 0%,#fff 100%)}
.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--blue-deep);font-size:12px;font-weight:800;letter-spacing:.1em}
.eyebrow:before,.section-kicker:before{content:"";width:24px;height:2px;background:var(--coral)}
h1,h2,h3{line-height:1.3;letter-spacing:-.025em}
h1{font-size:clamp(2.2rem,5vw,4.3rem);margin:18px 0 20px;max-width:720px}
h2{font-size:clamp(1.7rem,3vw,2.5rem);margin:10px 0}
h3{font-size:18px;margin:0 0 8px}
.hero-lead{font-size:17px;color:var(--muted);max-width:650px;margin:0 0 28px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn-main,.btn-sub{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 21px;border-radius:11px;font-size:14px;font-weight:700;transition:.22s;border:1px solid transparent}
.btn-main{background:var(--blue);color:#fff;box-shadow:0 9px 20px rgba(52,120,184,.2)}
.btn-main:hover{background:var(--blue-deep);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-hover)}
.btn-sub{background:#fff;color:var(--blue-deep);border-color:var(--line)}
.btn-sub:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-2px)}
.btn-main:focus,.btn-sub:focus,.nav-action:focus,.filter-btn:focus{outline:3px solid rgba(52,120,184,.25);outline-offset:3px}
.hero-panel{min-height:350px;border-radius:var(--radius-lg);background:#dceefa;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.hero-panel:before{content:"";position:absolute;width:78%;height:120%;right:-16%;top:-28%;border-radius:50%;background:#b8d9ed}
.hero-panel:after{content:"";position:absolute;width:53%;height:74%;left:9%;bottom:-20%;border-radius:50% 50% 0 0;background:#f7d8cf}
.panel-note{position:absolute;z-index:2;top:24px;left:25px;background:rgba(255,255,255,.84);padding:14px 17px;border-radius:13px;box-shadow:var(--shadow);font-size:12px;color:var(--blue-deep)}
.panel-note strong{display:block;font-size:20px;margin-top:3px}
.panel-caption{position:absolute;z-index:3;right:24px;bottom:24px;background:#fff;padding:19px 20px;border-radius:14px;box-shadow:var(--shadow);width:220px}
.panel-caption span{color:var(--muted);font-size:12px}.panel-caption strong{display:block;color:var(--blue-deep);font-size:16px}
.section{padding:var(--section) 0}
.section-head{max-width:680px;margin-bottom:34px}.section-head p{color:var(--muted);margin:12px 0 0;font-size:15px}
.filter-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);padding:18px;box-shadow:var(--shadow);margin-bottom:30px}
.filter-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.filter-btn{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:22px;padding:7px 15px;font-size:13px;transition:.2s}
.filter-btn:hover,.filter-btn.active{background:var(--blue-soft);color:var(--blue-deep);border-color:#b9d7eb}
.search-wrap{margin-left:auto;display:flex;gap:8px;min-width:260px}
.form-control,.form-select{border:1px solid var(--line);border-radius:10px;color:var(--ink);font-size:13px;padding:10px 13px}
.form-control:focus,.form-select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(52,120,184,.13)}
.index-layout{display:grid;grid-template-columns:1.16fr .84fr;gap:22px}
.feature-card,.topic-card,.info-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow);overflow:hidden;transition:.24s}
.feature-card:hover,.topic-card:hover,.info-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}
.visual{min-height:215px;position:relative;overflow:hidden;background:#d9ebf5}
.visual:before{content:"";position:absolute;width:68%;height:150%;right:-18%;top:-35%;background:#a9cfe5;border-radius:50%}
.visual:after{content:"";position:absolute;width:45%;height:88%;left:15%;bottom:-30%;background:#f1c9bf;border-radius:50% 50% 0 0}
.visual.violet{background:#e7e4f3}.visual.violet:before{background:#c2bddc}.visual.violet:after{background:#f2d7c9}
.visual.gold{background:#f3ead5}.visual.gold:before{background:#e3cd9e}.visual.gold:after{background:#d9b9b0}
.card-body{padding:24px}.card-body p{font-size:13px;color:var(--muted);margin:9px 0 16px}
.tag{display:inline-block;background:var(--blue-soft);color:var(--blue-deep);border-radius:7px;padding:4px 9px;font-size:11px;font-weight:700;margin:0 4px 5px 0}.tag.warm{background:#f9eee9;color:#98624f}.tag.lilac{background:var(--lavender);color:#68628d}
.side-stack{display:grid;gap:22px}
.side-card{display:grid;grid-template-columns:145px 1fr}.side-card .visual{min-height:100%}.side-card .card-body{padding:18px}
.meta{font-size:12px;color:var(--muted);display:flex;gap:12px}
.band{padding:25px 30px;background:var(--blue-deep);border-radius:var(--radius-md);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;box-shadow:var(--shadow)}
.band p{color:#d9e8f2;margin:8px 0 0;font-size:14px}.band .btn-sub{background:transparent;border-color:#a9c9dd;color:#fff}
.group-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card{padding:24px}.info-card p{color:var(--muted);font-size:13px;margin:8px 0 18px}.index-list{padding:0;margin:0;list-style:none}.index-list li{padding:10px 0;border-top:1px solid var(--line);font-size:13px;display:flex;justify-content:space-between}.index-list li span{color:var(--muted)}
.accordion{--bs-accordion-bg:#fff;--bs-accordion-border-color:var(--line);--bs-accordion-btn-color:var(--ink);--bs-accordion-active-color:var(--blue-deep);--bs-accordion-active-bg:var(--blue-soft)}
.accordion-item{border-radius:12px!important;overflow:hidden;margin-bottom:10px}.accordion-button{font-size:14px;font-weight:700;padding:18px 20px}.accordion-button:focus{box-shadow:none}.accordion-body{font-size:13px;color:var(--muted);padding:0 20px 19px}
.cta{background:#edf6fb;border:1px solid #cfe3ef;border-radius:var(--radius-lg);padding:42px 48px;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta p{color:var(--muted);margin:8px 0 0;font-size:14px}
.site-footer{margin-top:80px;background:#203b50;color:#d9e8f1;padding:48px 0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:35px}.footer-brand{font-size:18px;font-weight:800;color:#fff}.footer-copy{font-size:13px;color:#adc4d2;max-width:300px;margin-top:12px}.footer-title{font-size:13px;color:#fff;font-weight:700;margin-bottom:12px}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:7px 0;font-size:13px;color:#b8ceda}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:35px;padding-top:18px;font-size:12px;color:#9db6c4;display:flex;justify-content:space-between;gap:15px}
@media(max-width:991px){.search-wrap{margin-left:0;width:100%}.index-layout{grid-template-columns:1fr}.hero-panel{margin-top:25px}.group-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){:root{--section:58px}.navbar{min-height:70px}.brand-text{font-size:13px}h1{font-size:2.35rem}.hero{padding:45px 0}.hero-panel{min-height:290px}.band,.cta{display:block;padding:28px 24px}.band .btn-sub,.cta .btn-main{margin-top:20px}.side-card{grid-template-columns:110px 1fr}.group-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}}
@media(max-width:520px){.hero-actions a{width:100%}.filter-row{align-items:stretch}.filter-btn{flex:1}.search-wrap{display:block}.search-wrap .btn-main{width:100%;margin-top:8px}.side-card{display:block}.side-card .visual{min-height:150px}.footer-grid{grid-template-columns:1fr}}
