/* roulang page: index */
:root{--paper:#f3f1ea;--white:#fbfaf6;--ink:#181a17;--text:#272925;--muted:#6e746b;--line:#c9cdc2;--lime:#b8d93b;--amber:#d98a32;--soft:#e5e8df;--radius:14px;--big:18px;--shadow:0 12px 30px rgba(24,26,23,.08);--ease:all .3s cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:3px}.container{width:min(1240px,calc(100% - 64px));margin:auto}.topbar{height:38px;background:var(--ink);color:#dce0d6;font-size:12px}.topbar .container,.navrow .container{height:100%;display:flex;align-items:center;justify-content:space-between}.toplinks{display:flex;gap:22px}.navrow{height:78px;background:rgba(243,241,234,.96);border-bottom:1px solid var(--line);position:relative;z-index:5}.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;letter-spacing:-.05em;white-space:nowrap}.logo-mark{width:25px;height:25px;border:2px solid var(--ink);position:relative}.logo-mark:after{content:"";position:absolute;left:4px;right:-5px;top:10px;height:4px;background:var(--lime);transform:skew(-28deg)}.navlinks{display:flex;gap:25px;margin-left:auto;margin-right:28px;font-size:14px}.navlinks a{padding:8px 0;border-bottom:2px solid transparent;transition:var(--ease)}.navlinks a:hover,.navlinks a.active{border-color:var(--lime);color:#111}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:10px;font-weight:700;font-size:14px;transition:var(--ease)}.btn-primary{background:var(--lime);color:var(--ink)}.btn-primary:hover{background:#c8e950;transform:translateY(-2px);box-shadow:0 8px 18px rgba(184,217,59,.25)}.btn-dark{background:var(--ink);color:var(--paper)}.btn-dark:hover{background:#343831;transform:translateY(-2px)}.btn-outline{border:1px solid var(--ink);background:transparent}.btn-outline:hover{background:var(--ink);color:var(--paper)}.menu-btn{display:none;background:transparent;width:44px;height:44px;font-size:22px}.hero{min-height:535px;position:relative;overflow:hidden;background:var(--ink);color:var(--white)}.slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;background-size:cover;background-position:center}.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,26,23,.9) 0%,rgba(24,26,23,.62) 46%,rgba(24,26,23,.2) 100%)}.slide.active{opacity:1}.slide:nth-child(1){background-image:url('/assets/images/backpic/back-1.webp')}.slide:nth-child(2){background-image:url('/assets/images/backpic/back-2.webp')}.slide:nth-child(3){background-image:url('/assets/images/backpic/back-3.webp')}.hero-content{position:relative;z-index:1;padding:100px 0 80px;max-width:720px}.eyebrow,.kicker{font-size:12px;letter-spacing:.12em;color:var(--lime);font-weight:700}.hero h1{font-size:clamp(38px,5.2vw,72px);line-height:1.08;letter-spacing:-.07em;margin:18px 0 22px}.hero p{max-width:650px;color:#e3e6dd;font-size:17px}.hero-actions{display:flex;gap:12px;margin-top:32px}.hero .btn-outline{border-color:#d8ded2;color:#fff}.statusbox{position:absolute;z-index:2;right:max(32px,calc((100% - 1240px)/2));bottom:52px;width:250px;border:1px solid rgba(220,225,214,.35);padding:18px;background:rgba(24,26,23,.7);font-size:12px}.statusbox strong{display:block;font-size:15px;color:var(--lime);margin-bottom:10px}.statusrow{display:flex;justify-content:space-between;border-top:1px solid rgba(220,225,214,.2);padding-top:7px;margin-top:7px}.hero-controls{position:absolute;z-index:3;bottom:24px;left:max(32px,calc((100% - 1240px)/2));display:flex;align-items:center;gap:10px}.hero-controls button{width:38px;height:38px;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:50%}.hero-controls button:hover{background:var(--lime);color:var(--ink)}.pager{font-family:monospace;margin-left:8px}.section{padding:110px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section-head h2{font-size:clamp(28px,3.3vw,48px);line-height:1.15;letter-spacing:-.06em;color:var(--ink)}.section-head p{max-width:470px;color:var(--muted);font-size:15px}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:72px;align-items:center}.intro-img{height:440px;border-radius:var(--big);overflow:hidden}.intro-img img{height:100%;transition:transform .6s}.intro-img:hover img{transform:scale(1.035)}.intro-copy{border-left:2px solid var(--lime);padding-left:28px}.intro-copy h2{font-size:38px;letter-spacing:-.06em;line-height:1.2}.intro-copy p{margin:20px 0;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-flex;padding:5px 11px;border:1px solid var(--line);border-radius:99px;font-size:12px;color:#51584d}.matrix{background:var(--white)}.grid6{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service{min-height:220px;padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);transition:var(--ease);position:relative;overflow:hidden}.service:first-child{grid-column:span 2;min-height:300px;background:var(--ink);color:var(--white)}.service:hover{border-color:var(--lime);transform:translateY(-4px);box-shadow:var(--shadow)}.service-num{font:12px monospace;color:var(--amber)}.service h3{font-size:21px;margin:32px 0 10px;letter-spacing:-.04em}.service p{font-size:14px;color:var(--muted)}.service:first-child p{color:#c9cec3}.service .tag{margin-top:20px}.dark-section{background:var(--ink);color:var(--white)}.dark-section .section-head h2{color:var(--white)}.dark-section .section-head p{color:#adb5a8}.data-band{display:grid;grid-template-columns:repeat(4,1fr);background:#242821;color:#fff;padding:30px 0;border-top:1px solid #41483d;border-bottom:1px solid #41483d}.data-item{padding:8px 30px;border-right:1px solid #41483d}.data-item:last-child{border:0}.data-num{font:700 clamp(32px,4vw,50px)/1 monospace;color:var(--lime)}.data-num small{font:14px sans-serif;color:#d9ded4}.data-item p{font-size:13px;color:#aeb5aa;margin-top:8px}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid var(--line)}.step{padding:27px 20px 20px;border-right:1px solid var(--line);position:relative}.step:last-child{border:0}.step:before{content:"";width:11px;height:11px;background:var(--lime);border-radius:50%;position:absolute;top:-6px;left:20px;box-shadow:0 0 0 5px var(--paper)}.step b{font:13px monospace;color:var(--amber)}.step h3{font-size:18px;margin:20px 0 8px}.step p{font-size:13px;color:var(--muted)}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.product{background:var(--white);border-radius:var(--big);overflow:hidden;border:1px solid var(--line);transition:var(--ease)}.product:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.product img{height:210px}.product-body{padding:23px}.product h3{font-size:22px;margin:10px 0}.product p{color:var(--muted);font-size:14px}.product dl{display:flex;gap:16px;margin:19px 0;border-top:1px solid var(--line);padding-top:14px;font-size:12px}.product dd{color:var(--muted)}.case-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:14px}.case{min-height:230px;padding:25px;border:1px solid #454c42;background:#20241f;position:relative;overflow:hidden}.case.feature{grid-row:span 2;min-height:475px;background-image:linear-gradient(0deg,rgba(24,26,23,.95),rgba(24,26,23,.1)),url('/assets/images/backpic/back-5.webp');background-size:cover;background-position:center}.case h3{font-size:22px;line-height:1.3;margin:14px 0}.case p{color:#b9c0b5;font-size:13px}.case .case-meta{position:absolute;bottom:22px;left:25px;right:25px;display:flex;justify-content:space-between;color:var(--lime);font:12px monospace}.stories{display:grid;grid-template-columns:1fr 1fr;gap:20px}.story{display:grid;grid-template-columns:180px 1fr;min-height:210px;border-bottom:1px solid var(--line);gap:22px;padding-bottom:20px}.story img{height:180px;border-radius:12px}.quote{font-size:19px;line-height:1.55;color:var(--ink);margin:22px 0 16px}.quote:before{content:"“";font-size:36px;color:var(--lime);vertical-align:-10px;margin-right:4px}.stats{background:var(--lime);padding:48px 0}.stats .data-band{background:transparent;color:var(--ink);border:0;padding:0}.stats .data-item{border-color:rgba(24,26,23,.22)}.stats .data-num{color:var(--ink)}.stats .data-item p{color:#3e4734}.reviews{display:grid;grid-template-columns:1.4fr .8fr;gap:18px}.review{padding:30px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius)}.review.main-review{grid-row:span 2;display:flex;flex-direction:column;justify-content:center}.review q{font-size:22px;line-height:1.55;color:var(--ink)}.review small{display:block;color:var(--amber);margin-top:24px}.news-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:45px}.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:100px 1fr 110px;gap:22px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.news-item time{font:12px monospace;color:var(--amber)}.news-item h3{font-size:18px}.news-item p{font-size:13px;color:var(--muted)}.news-item img{height:72px;border-radius:8px}.ecosystem{border:1px solid var(--line);padding:30px;background:var(--white)}.eco-strip{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.eco-pill{padding:13px 20px;border:1px solid var(--line);font-weight:700;background:var(--paper)}.eco-note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px}.faq{max-width:900px;margin:auto}.faq-item{border-top:1px solid var(--line)}.faq-q{width:100%;padding:22px 0;background:transparent;text-align:left;display:flex;justify-content:space-between;font-weight:700;font-size:17px;color:var(--ink)}.faq-q span{font-size:24px;color:var(--amber);transition:transform .3s}.faq-a{display:none;padding:0 40px 23px 0;color:var(--muted);font-size:14px}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q span{transform:rotate(45deg)}.support{background:#e4e8de;padding:28px 0}.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.support-item{display:flex;gap:15px;align-items:center;border-right:1px solid var(--line)}.support-item:last-child{border:0}.support-item b{font:13px monospace;color:var(--amber)}.support-item strong{font-size:15px}.cta{background:var(--ink);color:var(--white);padding:100px 0}.cta-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}.cta h2{font-size:clamp(32px,4vw,55px);line-height:1.15;letter-spacing:-.06em}.cta p{color:#b9c0b5;margin:20px 0 25px}.form{background:var(--lime);color:var(--ink);padding:30px;border-radius:var(--big)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{background:#dced9a;border:1px solid #94ad2b;padding:11px 13px;border-radius:8px;color:var(--ink);min-height:44px}.field textarea{min-height:90px;resize:vertical}.field input:invalid:not(:placeholder-shown){border-color:var(--amber)}.form .btn-dark{margin-top:18px;width:100%}.form-success{display:none;background:#edf5c7;margin-top:14px;padding:12px;border-radius:8px;font-size:13px}.contact-strip{padding:35px 0;border-bottom:1px solid var(--line)}.contact-flex{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.contact-flex strong{display:block;font-size:16px}.contact-flex span{font-size:13px;color:var(--muted)}footer{background:var(--ink);color:#e2e6dd;padding:65px 0 25px}footer .logo{font-size:25px;color:#fff}.footer-top{display:grid;grid-template-columns:1.4fr .7fr .9fr;gap:60px;padding-bottom:50px;border-bottom:1px solid #3d443b}.footer-desc{color:#aeb6aa;font-size:14px;max-width:350px;margin-top:18px}.footer-title{color:var(--lime);font-size:13px;margin-bottom:17px}.footer-links{display:grid;gap:8px;color:#b6beb2;font-size:13px}.footer-links a:hover{color:var(--lime)}.copyright{display:flex;justify-content:space-between;gap:20px;padding-top:22px;color:#8e978b;font-size:12px}.mobile-panel{display:none}
@media(max-width:992px){.navlinks{gap:13px;margin-right:15px}.intro{gap:35px}.case-grid{grid-template-columns:1fr 1fr}.case.feature{grid-column:span 2;grid-row:auto;min-height:350px}.data-item{padding:8px 15px}.cta-grid{gap:35px}}
@media(max-width:768px){.container{width:min(100% - 36px,600px)}.toplinks span:nth-child(2){display:none}.navrow{height:68px}.navlinks,.navrow>.container>.btn-primary{display:none}.menu-btn{display:block}.navrow .container{justify-content:space-between}.mobile-panel{position:fixed;display:flex;flex-direction:column;gap:20px;inset:68px 0 0;background:var(--ink);color:#fff;padding:35px;z-index:10;transform:translateX(100%);transition:transform .35s}.mobile-panel.open{transform:translateX(0)}.mobile-panel a{font-size:20px;border-bottom:1px solid #3d443b;padding-bottom:14px}.hero{min-height:600px}.hero-content{padding:75px 0 110px}.hero h1{font-size:43px}.statusbox{right:18px;bottom:70px;width:220px}.hero-controls{left:18px}.section{padding:75px 0}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:15px}.intro,.news-layout,.cta-grid{grid-template-columns:1fr}.intro-img{height:300px}.grid6,.products{grid-template-columns:1fr 1fr}.service:first-child{grid-column:span 2}.data-band{grid-template-columns:1fr 1fr;gap:22px}.data-item:nth-child(2){border:0}.steps{grid-template-columns:1fr;border-left:1px solid var(--line);margin-left:10px}.step{border-right:0;border-bottom:1px solid var(--line);padding-left:30px}.step:before{left:-6px;top:28px}.stories{grid-template-columns:1fr}.reviews{grid-template-columns:1fr}.review.main-review{grid-row:auto}.news-item{grid-template-columns:70px 1fr}.news-item img{display:none}.support-grid{grid-template-columns:1fr 1fr}.support-item:nth-child(2){border:0}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.footer-top>div:first-child{grid-column:1/-1}}
@media(max-width:520px){.hero h1{font-size:37px}.hero p{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.statusbox{display:none}.grid6,.products{grid-template-columns:1fr}.service:first-child{grid-column:auto}.case-grid{grid-template-columns:1fr}.case.feature{grid-column:auto}.story{grid-template-columns:100px 1fr;gap:14px}.story img{height:125px}.quote{font-size:16px;margin:8px 0}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-top{grid-template-columns:1fr}.footer-top>div:first-child{grid-column:auto}.copyright{display:block}.copyright span{display:block;margin-top:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category2 */
:root{--paper:#f3f1ea;--white:#fbfaf6;--ink:#181a17;--text:#272925;--muted:#6e746b;--line:#c9cdc2;--lime:#b8d93b;--amber:#d98a32;--soft:#e5e8df;--radius:14px;--big:18px;--shadow:0 12px 30px rgba(24,26,23,.08);--ease:all .3s cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;line-height:1.7}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;object-fit:cover}
button,input,select,textarea{font:inherit}
button{cursor:pointer;border:0}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.container{width:min(1240px,calc(100% - 64px));margin:auto}
.topbar{height:38px;background:var(--ink);color:#dce0d6;font-size:12px}
.topbar .container,.navrow .container{height:100%;display:flex;align-items:center;justify-content:space-between}
.topbar-left{letter-spacing:.04em}
.topbar-right{display:flex;gap:20px;align-items:center}
.topbar-right a:hover{color:var(--lime)}
.navrow{height:78px;background:rgba(243,241,234,.97);border-bottom:1px solid var(--line);position:relative;z-index:20}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;letter-spacing:-.05em;white-space:nowrap}
.logo-mark{width:25px;height:25px;border:2px solid var(--ink);position:relative;display:inline-block;flex:0 0 auto}
.logo-mark:after{content:"";position:absolute;left:4px;right:-5px;top:10px;height:4px;background:var(--lime);transform:skew(-28deg)}
.navlinks{display:flex;gap:25px;margin-left:auto;margin-right:28px;font-size:14px}
.navlinks a{padding:8px 0;border-bottom:2px solid transparent;transition:var(--ease);white-space:nowrap}
.navlinks a:hover,.navlinks a.active{border-color:var(--lime);color:#111}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:10px;font-weight:700;font-size:14px;transition:var(--ease);white-space:nowrap}
.btn-primary{background:var(--lime);color:var(--ink)}
.btn-primary:hover{background:#c8e950;transform:translateY(-2px);box-shadow:0 8px 18px rgba(184,217,59,.25)}
.btn-primary:active,.btn-dark:active,.btn-outline:active{transform:translateY(0)}
.btn-dark{background:var(--ink);color:var(--paper)}
.btn-dark:hover{background:#343831;transform:translateY(-2px)}
.btn-outline{border:1px solid var(--ink);background:transparent;color:var(--ink)}
.btn-outline:hover{background:var(--ink);color:var(--paper)}
.menu-btn{display:none;background:transparent;width:44px;height:44px;font-size:22px;color:var(--ink);position:relative;z-index:25}
.section{padding:112px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}
.section-head h2{font-size:clamp(28px,3.4vw,48px);line-height:1.14;letter-spacing:-.06em;color:var(--ink);max-width:690px}
.section-head p{max-width:455px;color:var(--muted);font-size:15px}
.eyebrow{font-size:12px;letter-spacing:.13em;color:#697557;font-weight:800;text-transform:uppercase}
.tag{display:inline-flex;align-items:center;padding:5px 11px;border:1px solid var(--line);border-radius:999px;color:#51584d;font-size:12px;line-height:1.4}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.page-hero{padding:72px 0 64px;overflow:hidden;border-bottom:1px solid var(--line);position:relative;background:var(--white)}
.page-hero:before{content:"";position:absolute;width:44vw;height:44vw;right:-12vw;top:-22vw;border:1px solid var(--line);border-radius:50%;box-shadow:0 0 0 42px rgba(201,205,194,.23),0 0 0 84px rgba(201,205,194,.14)}
.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:66px;align-items:center;position:relative}
.breadcrumb{display:flex;gap:9px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:35px}
.breadcrumb span{color:var(--amber)}
.page-hero h1{font-size:clamp(42px,5.5vw,74px);line-height:1.04;letter-spacing:-.08em;max-width:720px;margin:13px 0 22px}
.page-hero p{font-size:16px;color:var(--muted);max-width:610px}
.page-id{display:inline-flex;align-items:center;gap:10px;font:700 12px monospace;letter-spacing:.08em;color:var(--amber);margin-top:30px}
.page-id:before{content:"";width:34px;height:1px;background:var(--amber)}
.hero-image{height:350px;border-radius:var(--big);overflow:hidden;position:relative;box-shadow:var(--shadow)}
.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(184,217,59,.12),transparent 45%,rgba(24,26,23,.25))}
.hero-image img{height:100%;transition:transform .6s}
.hero-image:hover img{transform:scale(1.035)}
.index-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#e9ebe4}
.index-strip .container{display:flex;align-items:center;gap:0;overflow:auto}
.index-strip a{flex:0 0 auto;padding:16px 22px;border-right:1px solid var(--line);font-size:13px;font-weight:700;transition:var(--ease)}
.index-strip a:first-child{border-left:1px solid var(--line)}
.index-strip a:hover{background:var(--lime)}
.overview{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:start}
.overview-aside{border-top:2px solid var(--ink);padding-top:18px}
.overview-aside b{display:block;font-size:14px}
.overview-aside p{font-size:14px;color:var(--muted);margin-top:12px}
.overview-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.overview-item{background:var(--white);padding:24px;min-height:132px;transition:var(--ease)}
.overview-item:hover{background:#faffdf}
.overview-item strong{display:block;font:800 23px/1 monospace;color:var(--amber);margin-bottom:16px}
.overview-item span{font-size:15px;font-weight:700}
.module-list{border-top:2px solid var(--ink)}
.module-row{display:grid;grid-template-columns:92px 1.15fr .85fr 1.2fr;align-items:center;gap:25px;padding:25px 16px;border-bottom:1px solid var(--line);transition:var(--ease)}
.module-row:hover{background:var(--white);padding-left:25px}
.module-no{font:700 13px monospace;color:var(--amber)}
.module-row h3{font-size:19px;line-height:1.35;letter-spacing:-.03em}
.module-row .apply{font-size:13px;color:#56604f}
.module-row p{font-size:13px;color:var(--muted)}
.list-more{display:flex;justify-content:flex-end;margin-top:24px}
.text-link{font-size:14px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:3px;transition:var(--ease)}
.text-link:hover{color:#667d12;border-color:var(--lime)}
.analysis-wrap{display:grid;grid-template-columns:1fr .9fr;gap:60px;align-items:center}
.analysis-card{background:var(--ink);color:var(--white);border-radius:var(--big);padding:34px;position:relative;overflow:hidden;min-height:360px}
.analysis-card:after{content:"";position:absolute;width:290px;height:290px;border:1px solid rgba(184,217,59,.28);border-radius:50%;right:-100px;bottom:-130px;box-shadow:0 0 0 28px rgba(184,217,59,.05),0 0 0 56px rgba(184,217,59,.04)}
.code-line{position:relative;z-index:1;display:flex;justify-content:space-between;gap:15px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.code-line:last-child{border:0}
.code-line b{font:700 16px monospace;color:var(--lime)}
.code-line span{font-size:13px;color:#d0d6cb;text-align:right}
.analysis-copy h2,.archive-copy h2,.adapt-copy h2{font-size:clamp(29px,3.2vw,44px);line-height:1.16;letter-spacing:-.06em;margin:14px 0 20px}
.analysis-copy p,.archive-copy p,.adapt-copy p{color:var(--muted);font-size:15px;margin-bottom:24px}
.bullet-list{list-style:none;display:grid;gap:13px}
.bullet-list li{padding-left:21px;position:relative;font-size:14px}
.bullet-list li:before{content:"";position:absolute;left:0;top:.72em;width:8px;height:8px;background:var(--lime);transform:skew(-22deg)}
.archive{background:var(--white)}
.archive-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:65px;align-items:center}
.report-sheet{background:var(--paper);border:1px solid var(--line);padding:22px;border-radius:var(--radius);box-shadow:8px 8px 0 var(--soft);transform:rotate(-1.5deg)}
.report-top{display:flex;justify-content:space-between;padding-bottom:14px;border-bottom:2px solid var(--ink);font-size:11px;font-weight:800}
.report-title{font-size:24px;font-weight:800;letter-spacing:-.05em;margin:23px 0 20px}
.report-field{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}
.report-field span:first-child{color:var(--muted)}
.report-status{color:#526613;font-weight:800}
.adapt-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.adapt-copy{padding:20px 28px}
.spec-table{border:1px solid var(--line);background:var(--white)}
.spec-row{display:grid;grid-template-columns:1fr 1.35fr;border-bottom:1px solid var(--line)}
.spec-row:last-child{border-bottom:0}
.spec-row b,.spec-row span{padding:15px 18px;font-size:13px}
.spec-row b{background:#e8ebe2;border-right:1px solid var(--line)}
.flow-mini{display:flex;gap:0;padding-top:24px}
.flow-mini div{flex:1;position:relative;padding:14px 11px 0 0;font-size:12px;font-weight:700}
.flow-mini div:before{content:attr(data-step);display:block;width:25px;height:25px;border:1px solid var(--ink);border-radius:50%;text-align:center;line-height:23px;margin-bottom:9px;background:var(--paper)}
.flow-mini div:not(:last-child):after{content:"";position:absolute;height:1px;background:var(--ink);left:25px;right:0;top:12px}
.related{padding:58px 0;background:#e2e6db;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.related-inner{display:grid;grid-template-columns:250px 1fr;gap:45px;align-items:center}
.related h2{font-size:27px;line-height:1.2;letter-spacing:-.05em}
.related-links{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.related-links a{padding:14px;border-top:2px solid var(--ink);font-size:13px;font-weight:800;transition:var(--ease)}
.related-links a:hover{background:var(--lime);transform:translateY(-3px)}
.cta{padding:95px 0;background:var(--ink);color:var(--white);position:relative;overflow:hidden}
.cta:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 58px,rgba(255,255,255,.035) 59px)}
.cta-grid{display:grid;grid-template-columns:1fr .86fr;gap:70px;align-items:center;position:relative}
.cta h2{font-size:clamp(34px,4.4vw,58px);line-height:1.08;letter-spacing:-.07em;margin:14px 0 20px}
.cta p{color:#c8cec3;max-width:560px}
.cta .tags{margin-top:25px}.cta .tag{border-color:#596157;color:#e2e7dc}
.cta-box{background:var(--lime);color:var(--ink);padding:31px;border-radius:var(--radius)}
.cta-box b{font-size:18px;display:block;margin-bottom:9px}
.cta-box p{color:#30362c;font-size:14px;margin-bottom:20px}
.cta-box .btn-dark{width:100%}
footer{background:#121310;color:#d4d9cf;padding:72px 0 25px;position:relative}
footer:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}
.footer-top,.copyright{position:relative}
.footer-top{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:70px;padding-bottom:48px}
footer .logo{color:var(--white);font-size:22px}
footer .logo-mark{border-color:var(--white)}
.footer-desc{font-size:14px;color:#aeb5aa;max-width:390px;margin-top:17px}
.footer-title{font-size:12px;letter-spacing:.12em;color:var(--lime);font-weight:800;margin-bottom:16px}
.footer-links{display:grid;gap:8px;font-size:14px;color:#c7cdc2}
.footer-links a:hover{color:var(--lime)}
.copyright{border-top:1px solid #3b4039;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#939b90;font-size:12px}
@media(max-width:1200px){.navlinks{gap:16px;margin-right:18px}.hero-grid{gap:35px}.module-row{grid-template-columns:70px 1.1fr .85fr 1.1fr}}
@media(max-width:992px){.navlinks{position:fixed;inset:0 0 0 auto;width:min(340px,88vw);height:100dvh;background:var(--paper);padding:110px 32px 32px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;transform:translateX(105%);transition:transform .35s ease;box-shadow:-18px 0 45px rgba(0,0,0,.16);margin:0;z-index:22}.navlinks.open{transform:translateX(0)}.navlinks a{font-size:18px;width:100%;padding:11px 0}.navlinks:after{content:"400-806-2168\A 服务时间 09:00—18:00";white-space:pre-wrap;margin-top:auto;font:13px/1.9 monospace;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.menu-btn{display:block}.navrow .btn-primary{display:none}.hero-grid,.analysis-wrap,.archive-grid,.cta-grid{grid-template-columns:1fr}.hero-image{height:290px;max-width:680px}.overview{grid-template-columns:1fr;gap:30px}.module-row{grid-template-columns:70px 1fr 1fr}.module-row p{grid-column:2/-1}.related-inner{grid-template-columns:1fr;gap:25px}.footer-top{grid-template-columns:1.3fr 1fr;gap:40px}.footer-top>div:first-child{grid-column:1/-1}}
@media(max-width:768px){.container{width:min(100% - 38px,1240px)}.topbar-left{display:none}.topbar .container{justify-content:flex-end}.topbar-right{gap:12px;font-size:11px}.topbar-right span:last-child{display:none}.navrow{height:68px}.section{padding:70px 0}.page-hero{padding:52px 0}.page-hero h1{font-size:42px}.hero-grid{gap:32px}.hero-image{height:230px}.section-head{display:block;margin-bottom:31px}.section-head p{margin-top:15px}.overview-list{grid-template-columns:1fr 1fr}.analysis-card{min-height:310px}.adapt-layout{grid-template-columns:1fr}.related-links{grid-template-columns:repeat(2,1fr)}.cta{padding:70px 0}.copyright{display:block}.copyright span{display:block}.copyright span+span{margin-top:8px}}
@media(max-width:520px){.topbar-right a{display:none}.logo{font-size:16px}.logo-mark{width:22px;height:22px}.page-hero h1{font-size:36px}.page-hero p{font-size:14px}.hero-image{height:205px}.overview-list{grid-template-columns:1fr}.module-row{grid-template-columns:54px 1fr;gap:12px;padding:20px 4px}.module-row .apply,.module-row p{grid-column:2}.module-row:hover{padding-left:10px}.module-row h3{font-size:17px}.analysis-card{padding:24px}.report-sheet{padding:16px}.report-field{grid-template-columns:85px 1fr;gap:8px}.spec-row b,.spec-row span{padding:12px 11px;font-size:12px}.flow-mini{overflow:auto}.flow-mini div{min-width:100px}.related-links{grid-template-columns:1fr 1fr}.cta-box{padding:24px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-top>div:first-child{grid-column:auto}.footer-desc{margin-top:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category1 */
:root{--paper:#f3f1ea;--white:#fbfaf6;--ink:#181a17;--text:#272925;--muted:#6e746b;--line:#c9cdc2;--lime:#b8d93b;--amber:#d98a32;--soft:#e5e8df;--radius:14px;--big:18px;--shadow:0 12px 30px rgba(24,26,23,.08);--ease:all .3s cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;line-height:1.7}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;object-fit:cover}
button,input,select,textarea{font:inherit}
button{cursor:pointer;border:0}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.container{width:min(1240px,calc(100% - 64px));margin:auto}
.topbar{height:38px;background:var(--ink);color:#dce0d6;font-size:12px}
.topbar .container,.navrow .container{height:100%;display:flex;align-items:center;justify-content:space-between}
.topbar-left{color:#d8ddd4}.topbar-right{display:flex;gap:18px}.topbar a:hover{color:var(--lime)}
.navrow{height:78px;background:rgba(243,241,234,.97);border-bottom:1px solid var(--line);position:relative;z-index:20}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;letter-spacing:-.05em;white-space:nowrap}
.logo-mark{width:25px;height:25px;border:2px solid var(--ink);position:relative;display:inline-block}
.logo-mark:after{content:"";position:absolute;left:4px;right:-5px;top:10px;height:4px;background:var(--lime);transform:skew(-28deg)}
.navlinks{display:flex;gap:25px;margin-left:auto;margin-right:28px;font-size:14px}
.navlinks a{padding:8px 0;border-bottom:2px solid transparent;transition:var(--ease)}
.navlinks a:hover,.navlinks a.active{border-color:var(--lime);color:#111}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:10px;font-weight:700;font-size:14px;transition:var(--ease)}
.btn-primary{background:var(--lime);color:var(--ink)}.btn-primary:hover{background:#c8e950;transform:translateY(-2px);box-shadow:0 8px 18px rgba(184,217,59,.25)}
.btn-dark{background:var(--ink);color:var(--paper)}.btn-dark:hover{background:#343831;transform:translateY(-2px)}
.btn-outline{border:1px solid var(--ink);background:transparent}.btn-outline:hover{background:var(--ink);color:var(--paper)}
.menu-btn{display:none;background:transparent;width:44px;height:44px;font-size:23px;color:var(--ink)}
.section{padding:108px 0}.section-soft{background:var(--white)}
.kicker{font-size:12px;letter-spacing:.12em;color:#607128;font-weight:800}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:42px}
.section-head h2{font-size:clamp(29px,3.5vw,49px);line-height:1.15;letter-spacing:-.065em;color:var(--ink);max-width:720px}
.section-head p{max-width:420px;color:var(--muted);font-size:15px}
.page-hero{min-height:365px;background:var(--ink);color:var(--white);position:relative;overflow:hidden;isolation:isolate}
.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,26,23,.94) 0%,rgba(24,26,23,.76) 49%,rgba(24,26,23,.25) 100%);z-index:-1}
.page-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(184,217,59,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(184,217,59,.10) 1px,transparent 1px);background-size:70px 70px;opacity:.35;z-index:-1}
.page-hero .hero-photo{position:absolute;inset:0;z-index:-2;background:url('/assets/images/backpic/back-4.webp') center/cover no-repeat}
.hero-inner{padding:55px 0 65px}
.breadcrumb{display:flex;gap:10px;align-items:center;font-size:13px;color:#c4cabd;margin-bottom:30px}.breadcrumb span{color:var(--lime)}
.page-hero h1{font-size:clamp(39px,5vw,68px);line-height:1.08;letter-spacing:-.07em;max-width:780px}
.page-hero p{max-width:600px;color:#d8ded3;font-size:16px;margin-top:19px}
.page-no{position:absolute;right:max(32px,calc((100% - 1240px)/2));bottom:38px;color:var(--lime);font:700 13px ui-monospace,monospace;letter-spacing:.12em}
.tags{display:flex;flex-wrap:wrap;gap:9px}.tag{display:inline-flex;align-items:center;padding:6px 12px;border:1px solid var(--line);border-radius:99px;font-size:12px;color:#51584d;background:rgba(255,255,255,.3)}
.guide-row{display:grid;grid-template-columns:1.2fr 2fr;gap:48px;border-top:1px solid var(--line);padding-top:28px}.guide-row p{color:var(--muted);font-size:15px;max-width:520px}
.guide-tags{align-content:start}.guide-tags .tag{font-weight:700;background:var(--white)}
.solution-list{border-top:1px solid var(--ink)}
.solution-item{display:grid;grid-template-columns:92px 1.15fr 1fr 120px;gap:25px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line);transition:var(--ease)}
.solution-item:hover{padding-left:10px;border-color:#94aa32}
.solution-num{font:700 14px ui-monospace,monospace;color:var(--amber)}.solution-num small{display:block;margin-top:6px;font:11px ui-monospace,monospace;color:var(--muted)}
.solution-item h3{font-size:21px;line-height:1.3;letter-spacing:-.04em}.solution-item p{font-size:14px;color:var(--muted)}
.capability{display:flex;flex-wrap:wrap;gap:6px}.capability span{font-size:11px;padding:3px 8px;border:1px solid var(--line);border-radius:20px;color:#596052}
.text-link{font-size:14px;font-weight:800;white-space:nowrap;color:var(--ink);transition:var(--ease)}.text-link:hover{color:#708718;transform:translateX(3px)}
.more-line{display:flex;justify-content:flex-end;padding-top:25px}
.split-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.split-feature.reverse .feature-copy{order:-1}
.feature-image{min-height:420px;position:relative;border-radius:var(--big);overflow:hidden}.feature-image img{height:420px;transition:transform .6s}.feature-image:hover img{transform:scale(1.035)}
.image-index{position:absolute;left:22px;bottom:20px;padding:7px 11px;background:var(--lime);color:var(--ink);font:700 12px ui-monospace,monospace}
.feature-copy h2{font-size:clamp(29px,3.3vw,45px);letter-spacing:-.06em;line-height:1.16;margin:15px 0 20px}.feature-copy>p{color:var(--muted);font-size:15px;margin-bottom:26px}
.point-list{list-style:none;border-top:1px solid var(--line)}.point-list li{padding:14px 0;border-bottom:1px solid var(--line);display:flex;gap:14px;font-size:14px}.point-list b{color:var(--amber);font:700 12px ui-monospace,monospace;padding-top:3px}
.timeline{position:relative;padding-left:28px;border-left:1px solid #879281}.timeline-item{position:relative;padding:0 0 25px}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";position:absolute;width:9px;height:9px;left:-33px;top:8px;background:var(--lime);border:2px solid var(--ink)}.timeline-item strong{display:block;font-size:16px}.timeline-item p{font-size:14px;color:var(--muted);margin-top:3px}
.ev-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.ev-panel{padding:30px;border:1px solid var(--line);background:var(--white);min-height:260px}.ev-panel.dark{background:var(--ink);color:var(--white);position:relative;overflow:hidden}.ev-panel.dark:after{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(184,217,59,.35);border-radius:50%;right:-75px;bottom:-90px}.ev-panel h3{font-size:22px;letter-spacing:-.04em;margin-bottom:15px}.ev-panel p{font-size:14px;color:var(--muted)}.ev-panel.dark p{color:#c4cdc0}.param-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:20px}.param{border:1px solid rgba(201,205,194,.55);padding:11px;font-size:12px}.param b{display:block;color:var(--lime);font:700 11px ui-monospace,monospace;margin-bottom:3px}
.category-entry{background:#dde1d7;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.category-grid{display:grid;grid-template-columns:1.25fr repeat(4,1fr);gap:0}.category-intro{padding:23px 28px 23px 0}.category-intro h2{font-size:28px;line-height:1.2;letter-spacing:-.05em}.category-entry a{min-height:125px;padding:22px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;font-weight:800;font-size:14px;transition:var(--ease)}.category-entry a span{font:12px ui-monospace,monospace;color:var(--amber)}.category-entry a:hover{background:var(--lime)}
.cta-section{padding:86px 0;background:var(--ink);color:var(--white);position:relative;overflow:hidden}.cta-section:after{content:"";position:absolute;right:-80px;top:-140px;width:470px;height:470px;border:1px solid rgba(184,217,59,.23);border-radius:50%;box-shadow:0 0 0 38px rgba(184,217,59,.04),0 0 0 76px rgba(184,217,59,.03)}.cta-box{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}.cta-box h2{font-size:clamp(31px,4vw,52px);line-height:1.13;letter-spacing:-.065em;margin:13px 0 16px}.cta-box p{max-width:560px;color:#c3cbc0}.cta-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;font-size:13px;color:var(--lime)}.cta-side{border-left:1px solid rgba(255,255,255,.23);padding-left:35px}.cta-side p{font-size:14px;margin-bottom:20px}
footer{background:#121411;color:#d3d9cf;padding:70px 0 23px;position:relative;overflow:hidden}footer:before{content:"";position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(184,217,59,.3) 1px,transparent 1px),linear-gradient(90deg,rgba(184,217,59,.3) 1px,transparent 1px);background-size:38px 38px;pointer-events:none}.footer-top,.copyright{position:relative;z-index:1}.footer-top{display:grid;grid-template-columns:1.35fr .8fr 1fr;gap:65px;padding-bottom:52px}.footer-top .logo{color:var(--white);font-size:22px}.footer-top .logo-mark{border-color:var(--white)}.footer-desc{max-width:410px;color:#9fa89b;font-size:14px;margin-top:16px}.footer-title{font-size:13px;color:var(--lime);font-weight:800;margin-bottom:15px}.footer-links{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#c6cec2}.footer-links a:hover{color:var(--lime)}.copyright{border-top:1px solid rgba(201,205,194,.22);padding-top:18px;display:flex;justify-content:space-between;gap:25px;color:#8e978b;font-size:12px}
@media(max-width:1200px){.navlinks{gap:16px;margin-right:18px}.solution-item{grid-template-columns:72px 1.1fr 1fr 105px}.split-feature{gap:45px}}
@media(max-width:992px){.navlinks{position:fixed;inset:0 0 0 auto;width:min(360px,88vw);background:var(--paper);padding:110px 34px 35px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;transform:translateX(105%);transition:transform .35s;box-shadow:-15px 0 35px rgba(0,0,0,.14);margin:0}.navlinks.open{transform:translateX(0)}.navlinks a{font-size:18px;width:100%}.navlinks:after{content:"400-806-2168\A服务时间：周一至周六 09:00—18:00";white-space:pre-wrap;margin-top:auto;font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.nav-cta{display:none}.menu-btn{display:block;position:relative;z-index:25}.section{padding:82px 0}.split-feature,.cta-box{grid-template-columns:1fr}.split-feature.reverse .feature-copy{order:0}.feature-image,.feature-image img{min-height:360px;height:360px}.ev-layout{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr 1fr}.category-intro{grid-column:1/-1;padding:25px 0}.category-entry a:nth-of-type(1){border-left:0}.footer-top{gap:35px;grid-template-columns:1.2fr .8fr}.footer-top>div:last-child{grid-column:1/-1}.cta-side{border-left:0;border-top:1px solid rgba(255,255,255,.23);padding:25px 0 0}}
@media(max-width:768px){.container{width:min(100% - 40px,1240px)}.topbar-right{gap:10px}.topbar-right span:last-child{display:none}.page-hero{min-height:355px}.page-no{right:20px;bottom:24px}.section-head{display:block;margin-bottom:31px}.section-head p{margin-top:15px}.guide-row{grid-template-columns:1fr;gap:20px}.solution-item{grid-template-columns:60px 1fr;gap:13px;padding:24px 0}.solution-item p,.solution-item .capability{grid-column:2}.solution-item .text-link{grid-column:2;margin-top:2px}.feature-image,.feature-image img{min-height:300px;height:300px}.category-entry a{border-left:0;border-top:1px solid var(--line);min-height:90px}.footer-top{grid-template-columns:1fr}.footer-top>div:last-child{grid-column:auto}.copyright{display:block}.copyright span{display:block}.copyright span+span{margin-top:8px}}
@media(max-width:480px){.topbar-left{font-size:11px}.topbar-right a{font-size:0}.topbar-right a:after{content:"邮箱";font-size:11px}.navrow{height:68px}.logo{font-size:16px}.page-hero h1{font-size:39px}.hero-inner{padding:46px 0 54px}.section{padding:62px 0}.section-head h2{font-size:30px}.solution-item h3{font-size:18px}.solution-item{grid-template-columns:45px 1fr}.solution-num{font-size:12px}.category-grid{grid-template-columns:1fr}.category-intro{padding:20px 0}.cta-section{padding:63px 0}.cta-meta{display:block}.cta-meta span{display:block;margin:5px 0}.btn{width:100%}.footer-top{padding-bottom:36px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category3 */
:root{--paper:#f3f1ea;--white:#fbfaf6;--ink:#181a17;--text:#272925;--muted:#6e746b;--line:#c9cdc2;--lime:#b8d93b;--amber:#d98a32;--soft:#e5e8df;--radius:14px;--big:18px;--shadow:0 12px 30px rgba(24,26,23,.08);--ease:all .3s cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:3px}.container{width:min(1240px,calc(100% - 64px));margin:auto}
.topbar{height:38px;background:var(--ink);color:#dce0d6;font-size:12px}.topbar .container,.navrow .container{height:100%;display:flex;align-items:center;justify-content:space-between}.topbar-info{display:flex;gap:20px}.topbar-contact{display:flex;gap:18px;color:#c9cdc2}.navrow{height:78px;background:rgba(243,241,234,.97);border-bottom:1px solid var(--line);position:relative;z-index:20}.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;letter-spacing:-.05em;white-space:nowrap}.logo-mark{width:25px;height:25px;border:2px solid var(--ink);position:relative;display:inline-block}.logo-mark:after{content:"";position:absolute;left:4px;right:-5px;top:10px;height:4px;background:var(--lime);transform:skew(-28deg)}.navlinks{display:flex;gap:25px;margin-left:auto;margin-right:28px;font-size:14px}.navlinks a{padding:8px 0;border-bottom:2px solid transparent;transition:var(--ease)}.navlinks a:hover,.navlinks a.active{border-color:var(--lime);color:#111}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:10px;font-weight:700;font-size:14px;transition:var(--ease)}.btn-primary{background:var(--lime);color:var(--ink)}.btn-primary:hover{background:#c8e950;transform:translateY(-2px);box-shadow:0 8px 18px rgba(184,217,59,.25)}.btn-dark{background:var(--ink);color:var(--paper)}.btn-dark:hover{background:#343831;transform:translateY(-2px)}.btn-outline{border:1px solid var(--ink);background:transparent}.btn-outline:hover{background:var(--ink);color:var(--paper)}.menu-btn{display:none;background:transparent;width:44px;height:44px;font-size:22px;color:var(--ink)}
.section{padding:108px 0}.kicker{font-size:12px;letter-spacing:.13em;color:var(--amber);font-weight:800}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:42px}.section-head h2{font-size:clamp(29px,3.5vw,48px);line-height:1.16;letter-spacing:-.065em;margin:10px 0 0;color:var(--ink)}.section-head p{max-width:480px;margin:0;color:var(--muted);font-size:15px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-flex;align-items:center;min-height:30px;padding:4px 11px;border:1px solid var(--line);border-radius:99px;font-size:12px;color:#51584d;background:rgba(251,250,246,.45)}.tag.dark{border-color:#4a5048;color:#dfe4d9;background:transparent}.tag.lime{background:var(--lime);border-color:var(--lime);color:var(--ink);font-weight:700}
.page-hero{min-height:360px;position:relative;isolation:isolate;background:var(--ink);color:var(--white);overflow:hidden}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,26,23,.96) 15%,rgba(24,26,23,.67) 60%,rgba(24,26,23,.34));z-index:-1}.page-hero:after{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(184,217,59,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(184,217,59,.08) 1px,transparent 1px),url('/assets/images/backpic/back-5.webp');background-size:46px 46px,46px 46px,cover;background-position:center}.breadcrumb{padding-top:44px;font-size:13px;color:#c8cfc3}.breadcrumb span{color:var(--lime);margin:0 8px}.hero-copy{padding:38px 0 58px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px}.hero-copy h1{max-width:760px;margin:10px 0 13px;font-size:clamp(38px,5.3vw,67px);line-height:1.08;letter-spacing:-.075em}.hero-copy p{max-width:620px;margin:0;color:#d8ddd3;font-size:16px}.issue-no{align-self:end;color:var(--lime);font:700 14px/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;text-align:right}.issue-no b{display:block;color:#f6f7f2;font-size:42px;letter-spacing:-.07em}
.guide{padding:34px 0;border-bottom:1px solid var(--line);background:var(--white)}.guide-row{display:flex;justify-content:space-between;align-items:center;gap:25px}.guide-title{font-weight:800;white-space:nowrap}.guide .tags{justify-content:flex-end}
.case-editorial{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.case-card{position:relative;border:1px solid var(--line);background:var(--white);transition:var(--ease);overflow:hidden}.case-card:hover{transform:translateY(-5px);border-color:var(--lime);box-shadow:var(--shadow)}.case-card:hover .case-image img{transform:scale(1.04)}.case-card.feature{grid-column:span 7;min-height:510px;background:var(--ink);color:var(--white);border-color:var(--ink)}.case-card.small-a{grid-column:span 5}.case-card.small-b{grid-column:span 5}.case-card.small-c{grid-column:span 7}.case-image{overflow:hidden}.case-image img{height:215px;transition:transform .6s var(--ease)}.feature .case-image{position:absolute;inset:0;opacity:.68}.feature .case-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(24,26,23,.96),rgba(24,26,23,.08) 75%)}.feature .case-image img{height:100%}.case-body{padding:25px}.feature .case-body{position:absolute;inset:auto 0 0;z-index:1;padding:34px}.case-num{font:700 12px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--amber)}.feature .case-num{color:var(--lime)}.case-body h3{margin:10px 0 10px;font-size:clamp(21px,2vw,31px);line-height:1.22;letter-spacing:-.05em}.small-a h3,.small-b h3,.small-c h3{font-size:22px}.case-body p{margin:0;color:var(--muted);font-size:14px}.feature .case-body p{color:#dde1d9;max-width:580px}.case-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 18px;margin-top:22px;padding-top:17px;border-top:1px solid rgba(201,205,194,.6)}.feature .case-facts{border-color:rgba(255,255,255,.25)}.case-facts span{font-size:12px;color:var(--muted)}.case-facts b{display:block;color:var(--text);font-size:13px;font-weight:700}.feature .case-facts span{color:#b6beb0}.feature .case-facts b{color:#fff}.more-row{margin-top:28px;display:flex;justify-content:flex-end}.text-link{font-weight:800;font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:3px;transition:var(--ease)}.text-link:hover{color:#61771b;border-color:var(--lime);transform:translateX(3px)}
.split-support{display:grid;grid-template-columns:.88fr 1.12fr;gap:72px;align-items:center}.support-image{height:430px;border-radius:var(--big);overflow:hidden}.support-image img{height:100%;transition:transform .6s}.support-image:hover img{transform:scale(1.035)}.support-copy h2{margin:12px 0 18px;font-size:clamp(28px,3.2vw,43px);line-height:1.18;letter-spacing:-.06em}.support-copy>p{color:var(--muted);margin:0 0 24px}.compare-list{border-top:1px solid var(--line)}.compare-item{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}.compare-item b{font:700 12px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--amber)}.compare-item strong{display:block;font-size:15px}.compare-item p{margin:3px 0 0;font-size:13px;color:var(--muted)}
.dark-section{background:var(--ink);color:var(--white);position:relative;overflow:hidden}.dark-section:before{content:"";position:absolute;inset:0;opacity:.13;background-image:linear-gradient(90deg,transparent 49%,var(--lime) 50%,transparent 51%);background-size:90px 90px}.dark-section .container{position:relative}.dark-section h2{color:var(--white)}.dark-section .section-head p{color:#adb5a8}.fleet-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center}.fleet-board{padding:24px;border:1px solid #485047;background:#22251f}.fleet-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid #454c42;font:700 12px ui-monospace,SFMono-Regular,Consolas,monospace;color:#d7ddd1}.fleet-head i{width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 5px rgba(184,217,59,.12)}.fleet-lines{margin-top:7px}.fleet-line{display:grid;grid-template-columns:70px 1fr 85px;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #394037;font-size:13px}.fleet-line span{color:#bac3b5}.fleet-line b{font-weight:700}.fleet-line em{font-style:normal;color:var(--lime);text-align:right}.fleet-copy p{color:#b8c0b3}.fleet-points{padding:0;margin:25px 0 0;list-style:none}.fleet-points li{padding:14px 0;border-top:1px solid #434a40;font-size:14px}.fleet-points li:before{content:"+";color:var(--lime);font-size:19px;font-weight:700;margin-right:12px}
.ev-grid{display:grid;grid-template-columns:1fr .9fr;gap:18px}.ev-visual{min-height:385px;border-radius:var(--big);position:relative;overflow:hidden}.ev-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(24,26,23,.72),transparent 62%)}.ev-visual img{height:100%}.ev-caption{position:absolute;z-index:1;left:25px;bottom:23px;color:#fff}.ev-caption b{display:block;font-size:21px}.ev-caption span{font-size:13px;color:#d6ddd0}.dimension-panel{padding:28px;background:var(--soft);border-radius:var(--big)}.dimension-panel h3{font-size:22px;line-height:1.3;margin:4px 0 20px}.dimension-list{list-style:none;padding:0;margin:0}.dimension-list li{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-top:1px solid var(--line);font-size:14px}.dimension-list b{font:700 12px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--amber)}.category-entry{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.entry-wrap{display:grid;grid-template-columns:1.1fr 2fr;gap:35px;align-items:center}.entry-wrap h2{font-size:28px;line-height:1.25;letter-spacing:-.05em}.entry-links{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.entry-links a{padding:17px 13px;border:1px solid var(--line);font-size:14px;font-weight:700;transition:var(--ease)}.entry-links a:hover{background:var(--lime);border-color:var(--lime);transform:translateY(-3px)}
.cta{background:var(--ink);color:var(--white);padding:78px 0}.cta-inner{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.cta h2{font-size:clamp(31px,4vw,51px);line-height:1.1;letter-spacing:-.07em;margin:14px 0}.cta p{color:#cbd2c6;max-width:510px}.cta .tags{margin-top:25px}.contact-form{padding:24px;background:var(--white);color:var(--text);border-radius:var(--radius)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:flex;flex-direction:column;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:700}.field input,.field select{min-height:44px;padding:0 11px;border:1px solid var(--line);background:#f5f5ef;color:var(--ink);border-radius:7px}.field input:focus,.field select:focus{border-color:var(--lime);outline:2px solid rgba(184,217,59,.35)}.form-tip{margin:12px 0 0;font-size:12px;color:var(--muted)}.form-msg{display:none;margin-top:11px;padding:9px 11px;background:#e8f0cb;color:#33420a;border-radius:6px;font-size:13px}
footer{background:#121411;color:#d5dbd0;padding:70px 0 23px;position:relative;overflow:hidden}footer:before{content:"";position:absolute;inset:0;opacity:.08;background-image:radial-gradient(var(--lime) 1px,transparent 1px);background-size:17px 17px}.footer-top,.copyright{position:relative}.footer-top{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:60px;padding-bottom:52px}.footer-top .logo{color:#fff}.footer-top .logo-mark{border-color:#fff}.footer-desc{max-width:385px;color:#9da69b;font-size:14px}.footer-title{font-weight:800;color:#fff;margin-bottom:15px}.footer-links{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#aeb7ab}.footer-links a:hover{color:var(--lime)}.copyright{padding-top:22px;border-top:1px solid #333930;display:flex;justify-content:space-between;gap:20px;color:#899286;font-size:12px}
@media(max-width:992px){.navlinks{gap:15px;margin-right:15px}.navlinks a{font-size:13px}.case-card.feature,.case-card.small-a,.case-card.small-b,.case-card.small-c{grid-column:span 6}.split-support,.fleet-layout,.cta-inner{grid-template-columns:1fr;gap:38px}.entry-wrap{grid-template-columns:1fr}.entry-links{max-width:760px}.footer-top{gap:35px}.support-image{height:350px}}
@media(max-width:768px){.container{width:min(100% - 36px,1240px)}.topbar{height:auto;padding:8px 0}.topbar-info{display:none}.topbar-contact{width:100%;justify-content:space-between;font-size:11px;gap:5px}.navrow{height:68px}.navlinks{position:fixed;inset:0 0 0 auto;width:min(330px,88vw);height:100vh;padding:98px 28px 30px;margin:0;background:var(--white);display:flex;flex-direction:column;align-items:flex-start;gap:7px;transform:translateX(105%);transition:transform .35s ease;box-shadow:-15px 0 35px rgba(0,0,0,.13)}body.menu-open{overflow:hidden}.navlinks.open{transform:translateX(0)}.navlinks a{width:100%;padding:12px 0;font-size:17px}.navrow .btn-primary{display:none}.menu-btn{display:block;margin-left:auto;position:relative;z-index:21}.page-hero{min-height:330px}.hero-copy{padding:30px 0 48px;grid-template-columns:1fr}.issue-no{display:none}.section{padding:70px 0}.section-head{display:block;margin-bottom:29px}.section-head p{margin-top:15px}.guide-row{align-items:flex-start;flex-direction:column}.guide .tags{justify-content:flex-start}.case-editorial{grid-template-columns:1fr}.case-card.feature,.case-card.small-a,.case-card.small-b,.case-card.small-c{grid-column:auto;min-height:0}.case-card.feature{min-height:465px}.case-facts{gap:10px}.ev-grid{grid-template-columns:1fr}.entry-links{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.copyright{display:block}.copyright span{display:block;margin:6px 0}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}
@media(max-width:480px){.topbar-contact span:nth-child(2){display:none}.logo{font-size:16px}.page-hero{min-height:305px}.breadcrumb{padding-top:29px}.hero-copy h1{font-size:37px}.case-card.feature{min-height:490px}.feature .case-body{padding:24px}.case-facts{grid-template-columns:1fr}.support-image{height:275px}.fleet-board{padding:17px}.fleet-line{grid-template-columns:55px 1fr 62px;font-size:11px}.dimension-panel{padding:21px}.entry-links{grid-template-columns:1fr}.cta{padding:62px 0}.footer-top{grid-template-columns:1fr}.footer-top>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* roulang page: category4 */
:root{--paper:#f3f1ea;--white:#fbfaf6;--ink:#181a17;--text:#272925;--muted:#6e746b;--line:#c9cdc2;--lime:#b8d93b;--amber:#d98a32;--soft:#e5e8df;--radius:14px;--big:18px;--shadow:0 12px 30px rgba(24,26,23,.08);--ease:all .3s cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--text);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;object-fit:cover}
button,input,select,textarea{font:inherit}
button{cursor:pointer;border:0}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.container{width:min(1240px,calc(100% - 64px));margin:auto}
.topbar{height:38px;background:var(--ink);color:#dce0d6;font-size:12px}
.topbar .container,.navrow .container{height:100%;display:flex;align-items:center;justify-content:space-between}
.topbar-right{display:flex;align-items:center;gap:18px}
.topbar-right a:hover{color:var(--lime)}
.navrow{height:78px;background:rgba(243,241,234,.97);border-bottom:1px solid var(--line);position:relative;z-index:20}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;letter-spacing:-.05em;white-space:nowrap}
.logo-mark{width:25px;height:25px;border:2px solid var(--ink);position:relative;display:inline-block;flex:0 0 auto}
.logo-mark:after{content:"";position:absolute;left:4px;right:-5px;top:10px;height:4px;background:var(--lime);transform:skew(-28deg)}
.navlinks{display:flex;gap:25px;margin-left:auto;margin-right:28px;font-size:14px}
.navlinks a{padding:8px 0;border-bottom:2px solid transparent;transition:var(--ease);white-space:nowrap}
.navlinks a:hover,.navlinks a.active{border-color:var(--lime);color:#111}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:10px;font-weight:700;font-size:14px;transition:var(--ease);text-align:center}
.btn-primary{background:var(--lime);color:var(--ink)}
.btn-primary:hover{background:#c8e950;transform:translateY(-2px);box-shadow:0 8px 18px rgba(184,217,59,.25)}
.btn-primary:active,.btn-outline:active{transform:translateY(0)}
.btn-outline{border:1px solid var(--ink);background:transparent}
.btn-outline:hover{background:var(--ink);color:var(--paper)}
.menu-btn{display:none;background:transparent;width:44px;height:44px;font-size:24px;color:var(--ink)}
.section{padding:112px 0}
.kicker{font-size:12px;letter-spacing:.12em;color:#778a24;font-weight:800}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:42px}
.section-head h2{max-width:670px;font-size:clamp(29px,3.5vw,50px);line-height:1.16;letter-spacing:-.065em;color:var(--ink)}
.section-head p{max-width:435px;color:var(--muted);font-size:15px}
.breadcrumb{font-size:13px;color:#90958c;display:flex;gap:9px;align-items:center}
.breadcrumb i{width:5px;height:5px;background:var(--lime);display:inline-block;transform:rotate(45deg)}
.page-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.page-hero:before{content:"";position:absolute;width:440px;height:440px;right:-140px;top:-115px;border:1px solid var(--line);border-radius:50%;box-shadow:0 0 0 38px rgba(201,205,194,.38),0 0 0 76px rgba(201,205,194,.18)}
.page-hero .container{position:relative;min-height:410px;padding:58px 0 70px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:end}
.page-hero h1{max-width:780px;margin:18px 0 20px;font-size:clamp(42px,5.5vw,76px);line-height:1.04;letter-spacing:-.085em;color:var(--ink)}
.page-hero p{max-width:640px;color:#596055;font-size:16px}
.issue-box{align-self:center;position:relative;background:var(--ink);color:var(--white);padding:28px;border-radius:var(--big);min-height:230px;overflow:hidden}
.issue-box:after{content:"";position:absolute;right:-32px;bottom:-45px;width:165px;height:165px;border:1px solid rgba(184,217,59,.5);border-radius:50%;box-shadow:0 0 0 20px rgba(184,217,59,.08)}
.issue-no{color:var(--lime);font:700 13px/1.2 ui-monospace,SFMono-Regular,monospace;letter-spacing:.08em}
.issue-box strong{display:block;font-size:23px;line-height:1.3;margin-top:25px;max-width:200px}
.issue-box span{display:block;margin-top:18px;color:#b8c0b3;font-size:13px}
.topic-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white)}
.topic-strip .container{min-height:92px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.strip-label{font-size:13px;font-weight:800;margin-right:9px;color:var(--ink)}
.tag{display:inline-flex;padding:6px 12px;border:1px solid var(--line);border-radius:99px;font-size:12px;color:#51584d;background:var(--paper);transition:var(--ease)}
.tag:hover{border-color:var(--lime);background:#f7f9ee}
.guide-list{border-top:1px solid var(--line)}
.guide-item{display:grid;grid-template-columns:130px minmax(0,1fr) 200px;gap:30px;padding:29px 0;border-bottom:1px solid var(--line);align-items:center;transition:var(--ease)}
.guide-item:hover{padding-left:10px;border-color:#9eaa81}
.guide-index{font:700 13px/1.5 ui-monospace,SFMono-Regular,monospace;color:var(--amber)}
.guide-index span{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.guide-copy h3{font-size:22px;line-height:1.35;letter-spacing:-.04em}
.guide-copy p{font-size:14px;color:var(--muted);margin-top:7px;max-width:650px}
.guide-thumb{height:114px;border-radius:10px;overflow:hidden;background:var(--soft)}
.guide-thumb img{height:100%;transition:transform .45s}
.guide-item:hover .guide-thumb img{transform:scale(1.06)}
.guide-item.featured{grid-template-columns:130px minmax(0,1fr) 330px;padding:34px 0}
.guide-item.featured .guide-copy h3{font-size:clamp(25px,2.8vw,37px)}
.guide-item.featured .guide-thumb{height:195px;border-radius:var(--radius)}
.text-link{display:inline-flex;align-items:center;gap:9px;margin-top:30px;font-weight:800;font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:4px;transition:var(--ease)}
.text-link:after{content:"→";font-size:18px;line-height:1}
.text-link:hover{color:#657b14;border-color:#657b14;gap:14px}
.process-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:start}
.process-intro{position:sticky;top:20px}
.process-intro h2{font-size:clamp(30px,3.4vw,48px);line-height:1.16;letter-spacing:-.065em;margin:15px 0 18px}
.process-intro p{color:var(--muted);font-size:15px;max-width:390px}
.process-steps{border-left:1px solid var(--line)}
.step{position:relative;padding:0 0 34px 42px;margin-left:0}
.step:last-child{padding-bottom:0}
.step:before{content:"";position:absolute;left:-8px;top:3px;width:15px;height:15px;border:3px solid var(--paper);background:var(--lime);border-radius:50%}
.step-num{font:700 12px ui-monospace,SFMono-Regular,monospace;color:var(--amber)}
.step h3{font-size:21px;line-height:1.35;margin:7px 0}
.step p{font-size:14px;color:var(--muted);max-width:580px}
.step-note{margin-top:11px;font-size:12px;font-weight:700;color:#4a5736}
.code-section{background:var(--ink);color:var(--white);position:relative;overflow:hidden}
.code-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(184,217,59,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(184,217,59,.08) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,#000,transparent 80%)}
.code-section .container{position:relative}
.code-section .section-head h2{color:var(--white)}
.code-section .section-head p{color:#bbc2b6}
.code-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}
.code-panel{border:1px solid #454c42;padding:30px;border-radius:var(--radius);background:rgba(255,255,255,.025)}
.code-line{display:grid;grid-template-columns:95px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid #41483d}
.code-line:last-child{border-bottom:0}
.code{font:700 17px ui-monospace,SFMono-Regular,monospace;color:var(--lime)}
.code-line p{font-size:14px;color:#d1d7cc}
.risk-card{padding:30px;border-radius:var(--radius);background:var(--white);color:var(--ink)}
.risk-card h3{font-size:22px;line-height:1.3;margin-bottom:17px}
.risk-list{list-style:none}
.risk-list li{padding:13px 0;border-top:1px solid var(--line);font-size:14px}
.risk-level{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:10px}
.low{background:#9dad7c}.middle{background:var(--amber)}.high{background:#b95540}
.report-grid{display:grid;grid-template-columns:1fr .95fr;gap:65px;align-items:center}
.report-sheet{background:var(--white);box-shadow:var(--shadow);padding:28px;border:1px solid #dde0d8;transform:rotate(-2deg)}
.report-top{display:flex;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:16px;font-size:12px;font-weight:800}
.report-title{font-size:22px;margin:19px 0 14px}
.report-row{display:grid;grid-template-columns:100px 1fr;gap:15px;padding:10px 0;border-top:1px solid var(--soft);font-size:13px}
.report-row span:first-child{color:var(--muted)}
.report-copy h2{font-size:clamp(30px,3.5vw,48px);line-height:1.16;letter-spacing:-.065em;margin:14px 0 20px}
.report-copy>p{color:var(--muted);font-size:15px}
.field-list{list-style:none;margin-top:24px}
.field-list li{border-top:1px solid var(--line);padding:13px 0;font-size:14px}
.field-list b{display:inline-block;min-width:94px;color:var(--ink)}
.category-entry{padding:70px 0;background:var(--soft)}
.category-entry-inner{display:grid;grid-template-columns:1fr 2fr;gap:45px;align-items:start}
.category-entry h2{font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-.06em}
.category-entry p{color:#5e665c;margin-top:13px;font-size:14px}
.category-links{border-top:1px solid #aeb5a7}
.category-links a{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #aeb5a7;font-weight:700;font-size:15px;transition:var(--ease)}
.category-links a span{color:var(--amber);font-size:19px}
.category-links a:hover{padding-left:8px;color:#53661a}
.cta{padding:96px 0;background:var(--ink);color:var(--white)}
.cta-box{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;padding:44px;background:#252a22;border:1px solid #41483d;border-radius:var(--big);position:relative;overflow:hidden}
.cta-box:after{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(184,217,59,.3);border-radius:50%;right:-85px;top:-110px}
.cta-copy{position:relative;z-index:1}
.cta-copy .kicker{color:var(--lime)}
.cta h2{font-size:clamp(31px,3.5vw,49px);line-height:1.15;letter-spacing:-.065em;margin:13px 0}
.cta p{color:#b9c1b4;max-width:650px;font-size:15px}
.cta .btn{position:relative;z-index:1;white-space:nowrap}
footer{background:#181a17;color:#dfe4db;padding:67px 0 25px;position:relative;overflow:hidden}
footer:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(184,217,59,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(184,217,59,.055) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(0deg,transparent,#000 60%)}
footer .container{position:relative}
.footer-top{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:70px;padding-bottom:42px}
footer .logo{color:var(--white)}
footer .logo-mark{border-color:var(--white)}
.footer-desc{max-width:370px;margin-top:18px;font-size:14px;color:#aeb5aa}
.footer-title{font-size:12px;letter-spacing:.11em;font-weight:800;color:var(--lime);margin-bottom:16px}
.footer-links{display:flex;flex-direction:column;gap:9px;font-size:14px;color:#c2c9be}
.footer-links a:hover{color:var(--lime)}
.copyright{padding-top:20px;border-top:1px solid #41483d;display:flex;justify-content:space-between;gap:20px;color:#929a8f;font-size:12px}
@media(max-width:1100px){
.navlinks{gap:16px;margin-right:16px}.navrow .btn{padding:0 15px}.page-hero .container{grid-template-columns:1fr 280px}.guide-item.featured{grid-template-columns:105px 1fr 250px}.code-grid{gap:12px}
}
@media(max-width:860px){
.container{width:min(100% - 40px,1240px)}.topbar-right{gap:10px}.topbar-right span:nth-child(2){display:none}.navrow{height:70px}.navlinks{position:fixed;right:0;top:0;bottom:0;width:min(330px,88vw);margin:0;padding:92px 30px 30px;background:var(--paper);box-shadow:-12px 0 30px rgba(0,0,0,.14);display:flex;flex-direction:column;gap:8px;transform:translateX(105%);transition:transform .35s;z-index:30}.navlinks.open{transform:translateX(0)}.navlinks a{font-size:17px;padding:11px 0}.navrow .btn{display:none}.menu-btn{display:block;z-index:40}.menu-btn[aria-expanded="true"]{position:fixed;right:20px;top:12px}.page-hero .container{min-height:0;grid-template-columns:1fr;padding:48px 0}.issue-box{max-width:330px;min-height:160px;padding:22px}.issue-box strong{font-size:19px;margin-top:14px}.section{padding:76px 0}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:15px}.guide-item,.guide-item.featured{grid-template-columns:92px 1fr 150px;gap:18px}.guide-item.featured .guide-thumb{height:130px}.guide-copy h3,.guide-item.featured .guide-copy h3{font-size:20px}.guide-copy p{font-size:13px}.process-layout,.report-grid{grid-template-columns:1fr;gap:38px}.process-intro{position:static}.code-grid{grid-template-columns:1fr}.category-entry-inner{grid-template-columns:1fr;gap:28px}.cta-box{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr;gap:38px}.footer-top>div:first-child{grid-column:span 2}
}
@media(max-width:560px){
.container{width:calc(100% - 32px)}.topbar{height:34px;font-size:11px}.topbar-right a{display:none}.logo{font-size:16px}.logo-mark{width:22px;height:22px}.navrow{height:64px}.page-hero .container{padding:37px 0 42px}.page-hero h1{font-size:42px;margin:13px 0 17px}.page-hero p{font-size:14px}.issue-box{display:none}.topic-strip .container{padding:15px 0;min-height:0;gap:8px}.strip-label{width:100%;margin-bottom:2px}.section{padding:62px 0}.section-head h2{font-size:31px}.guide-item,.guide-item.featured{grid-template-columns:60px 1fr;padding:22px 0;gap:14px}.guide-item:hover{padding-left:4px}.guide-thumb{display:none}.guide-index{font-size:11px}.guide-index span{font-size:10px}.guide-copy h3,.guide-item.featured .guide-copy h3{font-size:19px}.guide-copy p{font-size:13px}.step{padding-left:30px}.code-panel,.risk-card{padding:22px}.code-line{grid-template-columns:76px 1fr;gap:12px}.report-sheet{padding:20px;transform:none}.report-row{grid-template-columns:82px 1fr;gap:8px;font-size:12px}.category-entry{padding:56px 0}.cta{padding:64px 0}.cta-box{padding:29px 23px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-top>div:first-child{grid-column:auto}.copyright{display:block;line-height:1.8}.copyright span{display:block}.copyright span+span{margin-top:6px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
