/* roulang page: index */
:root{
            --navy:#102a43;
            --blue:#2167d5;
            --blue-dark:#174ea6;
            --cyan:#40b9c9;
            --ink:#172b4d;
            --muted:#6b7c93;
            --soft:#f4f8fc;
            --line:#dfe8f2;
            --white:#fff;
            --gold:#e2a93b;
            --radius:20px;
            --shadow:0 16px 45px rgba(30,65,105,.10);
            --shadow-sm:0 8px 24px rgba(30,65,105,.08);
        }
        *{box-sizing:border-box;margin:0;padding:0}
        html{scroll-behavior:smooth}
        body{font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.7;font-size:15px}
        a{color:inherit;text-decoration:none}
        img{display:block;width:100%;object-fit:cover}
        button,input{font:inherit}
        button{cursor:pointer;border:0}
        :focus-visible{outline:3px solid rgba(33,103,213,.35);outline-offset:3px}
        .container{width:min(1180px,calc(100% - 40px));margin:auto}
        .topline{height:4px;background:linear-gradient(90deg,var(--blue),var(--cyan))}
        header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(223,232,242,.85)}
        .nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
        .brand{display:flex;align-items:center;gap:12px;min-width:max-content}
        .brand-mark{width:38px;height:38px;border-radius:12px;background:var(--navy);color:white;display:grid;place-items:center;font-size:18px;font-weight:800;box-shadow:0 8px 16px rgba(16,42,67,.2)}
        .brand-name{font-size:18px;font-weight:800;letter-spacing:.3px}
        .nav-links{display:flex;align-items:center;gap:25px;color:#53677e;font-size:14px}
        .nav-links a{padding:9px 0;position:relative;transition:.2s}
        .nav-links a:after{content:"";position:absolute;height:2px;left:0;right:100%;bottom:1px;background:var(--blue);transition:.25s}
        .nav-links a:hover,.nav-links a.active{color:var(--blue)}
        .nav-links a:hover:after,.nav-links a.active:after{right:0}
        .nav-age{font-size:12px;color:var(--blue-dark);background:#eaf3ff;border:1px solid #cfe2fb;border-radius:99px;padding:7px 12px;white-space:nowrap}
        .menu-btn{display:none;background:#edf4fb;color:var(--navy);padding:8px 10px;border-radius:10px}
        .hero{background:linear-gradient(115deg,#f5f9ff 0%,#edf7fa 56%,#fff 100%);padding:78px 0 70px;position:relative;overflow:hidden}
        .hero:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(64,185,201,.12);right:-170px;top:-220px}
        .hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:70px;position:relative}
        .eyebrow{color:var(--blue);font-weight:800;font-size:13px;letter-spacing:2px;margin-bottom:15px}
        h1{font-size:clamp(34px,5vw,62px);line-height:1.16;letter-spacing:-2px;margin-bottom:20px;max-width:720px}
        h1 em{font-style:normal;color:var(--blue)}
        .hero-copy{font-size:16px;line-height:1.9;color:#50657d;max-width:680px}
        .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:12px 20px;font-weight:700;transition:.22s;border:1px solid transparent}
        .btn-primary{background:var(--blue);color:white;box-shadow:0 9px 20px rgba(33,103,213,.22)}
        .btn-primary:hover{background:var(--blue-dark);transform:translateY(-2px)}
        .btn-outline{background:white;border-color:#c9d9e9;color:var(--navy)}
        .btn-outline:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-2px)}
        .search-panel{background:var(--white);border:1px solid #dbe8f2;border-radius:24px;padding:25px;box-shadow:var(--shadow)}
        .search-panel h2{font-size:20px;margin-bottom:5px}
        .search-panel p{font-size:13px;color:var(--muted);margin-bottom:17px}
        .search-box{display:flex;gap:8px;background:#f4f8fc;padding:6px;border-radius:13px}
        .search-box input{border:0;background:transparent;outline:0;min-width:0;flex:1;padding:9px;color:var(--ink)}
        .search-box button{background:var(--navy);color:#fff;border-radius:9px;padding:9px 16px}
        .quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}
        .quick-links a{font-size:12px;color:var(--blue);background:#edf5ff;padding:6px 10px;border-radius:99px}
        section{padding:76px 0}
        .section-soft{background:var(--soft)}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
        .section-kicker{font-size:12px;color:var(--blue);font-weight:800;letter-spacing:1.5px;margin-bottom:7px}
        h2{font-size:30px;line-height:1.25;letter-spacing:-.7px}
        .section-desc{max-width:590px;color:var(--muted);font-size:14px}
        .text-link{color:var(--blue);font-weight:700;font-size:14px;white-space:nowrap}
        .text-link:hover{text-decoration:underline}
        .benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
        .benefit{padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}
        .benefit-icon{width:42px;height:42px;border-radius:13px;background:#eaf3ff;color:var(--blue);display:grid;place-items:center;font-weight:800;font-size:18px;margin-bottom:17px}
        .benefit h3{font-size:18px;margin-bottom:8px}
        .benefit p{color:var(--muted);font-size:14px}
        .cover-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
        .cover-card{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden;box-shadow:var(--shadow-sm);transition:.24s}
        .cover-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
        .cover-img{height:230px;position:relative;background:#dbe8f2}
        .cover-img:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(9,24,42,.7))}
        .cover-tag{position:absolute;top:12px;left:12px;z-index:1;background:rgba(16,42,67,.84);color:#fff;padding:4px 8px;border-radius:6px;font-size:11px}
        .cover-body{padding:15px}
        .cover-body h3{font-size:16px;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .meta{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}
        .score{color:var(--gold);font-weight:800}
        .category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}
        .category{padding:20px 17px;border-radius:16px;background:#fff;border:1px solid var(--line);transition:.2s}
        .category:hover{border-color:#9ec3ec;box-shadow:var(--shadow-sm);transform:translateY(-3px)}
        .category strong{display:block;font-size:16px;margin-bottom:8px;color:var(--navy)}
        .category span{display:block;color:var(--muted);font-size:12px;line-height:1.65}
        .ranking{display:grid;grid-template-columns:1.1fr .9fr;gap:25px}
        .rank-list{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
        .rank-item{display:grid;grid-template-columns:42px 1fr auto auto;align-items:center;gap:12px;padding:14px 19px;border-bottom:1px solid #edf2f7}
        .rank-item:last-child{border-bottom:0}
        .rank-num{font-size:20px;font-weight:800;color:#b6c7d9}
        .rank-item:nth-child(-n+3) .rank-num{color:var(--blue)}
        .rank-title{font-weight:700;font-size:14px}
        .rank-type{font-size:11px;color:var(--blue);background:#edf5ff;padding:3px 8px;border-radius:99px}
        .rank-hot{font-size:12px;color:var(--muted);white-space:nowrap}
        .insight{border-radius:var(--radius);padding:30px;background:var(--navy);color:#fff;box-shadow:var(--shadow)}
        .insight h3{font-size:23px;margin-bottom:13px}
        .insight p{color:#c5d5e6;font-size:14px;line-height:1.85}
        .insight-stat{display:flex;gap:28px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15)}
        .insight-stat b{font-size:25px;display:block;color:#78d7df}
        .insight-stat span{font-size:12px;color:#b6c8db}
        .feature-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}
        .feature-card{min-height:270px;border-radius:var(--radius);overflow:hidden;position:relative;color:#fff;background:#183b5e}
        .feature-card img{height:100%;position:absolute;inset:0;opacity:.58}
        .feature-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,25,43,.9),transparent 70%)}
        .feature-copy{position:absolute;z-index:1;bottom:24px;left:24px;right:24px}
        .feature-copy h3{font-size:23px;margin-bottom:7px}
        .feature-copy p{font-size:13px;color:#dbe9f5}
        .timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}
        .step{padding:25px 22px;border-right:1px solid var(--line);position:relative}
        .step:last-child{border-right:0}
        .step-num{color:var(--blue);font-size:12px;font-weight:800;margin-bottom:14px}
        .step h3{font-size:17px;margin-bottom:8px}
        .step p{color:var(--muted);font-size:13px}
        .news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
        .news{display:flex;gap:15px;background:#fff;border-bottom:1px solid var(--line);padding:0 0 17px}
        .news img{width:112px;height:82px;border-radius:11px;flex:none}
        .news h3{font-size:15px;line-height:1.45;margin-bottom:6px}
        .news time{font-size:12px;color:#91a2b5}
        .quote{background:#edf7fa;border:1px solid #d8eef1;border-radius:var(--radius);padding:30px;text-align:center}
        .quote p{font-size:19px;line-height:1.8;color:var(--navy);max-width:760px;margin:auto;font-weight:600}
        .quote span{display:block;margin-top:15px;color:var(--muted);font-size:13px}
        .faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
        details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px 20px}
        summary{font-weight:700;cursor:pointer;list-style:none}
        summary::-webkit-details-marker{display:none}
        summary:after{content:"＋";float:right;color:var(--blue);font-size:20px}
        details[open] summary:after{content:"－"}
        details p{color:var(--muted);font-size:14px;padding-top:12px;line-height:1.8}
        .final-cta{background:linear-gradient(110deg,var(--navy),#20528b);color:#fff;padding:56px 0}
        .cta-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}
        .cta-wrap h2{font-size:32px;margin-bottom:9px}
        .cta-wrap p{color:#c9d9e8;max-width:650px}
        .cta-wrap .btn-primary{background:#65d0d5;color:#102a43;box-shadow:none}
        footer{background:#0c2035;color:#b8c9da;padding:53px 0 22px}
        .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px;padding-bottom:40px}
        footer .brand-name{color:#fff}
        footer .brand-mark{background:#2d719d}
        .footer-intro{font-size:13px;line-height:1.8;margin-top:17px;max-width:290px;color:#9eb3c8}
        footer h3{font-size:14px;color:#fff;margin-bottom:14px}
        footer li{list-style:none;margin:8px 0;font-size:13px}
        footer li a:hover{color:#fff}
        .copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:19px;text-align:center;font-size:12px;color:#7890a7}
        .float-bar{position:fixed;right:20px;bottom:20px;z-index:10;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:13px;padding:10px 15px;font-size:12px;color:var(--blue-dark)}
        @media(max-width:1024px){
            .hero-grid{gap:35px}.cover-grid{grid-template-columns:repeat(3,1fr)}
            .category-grid{grid-template-columns:repeat(3,1fr)}.news-grid{grid-template-columns:repeat(2,1fr)}
        }
        @media(max-width:768px){
            .container{width:min(100% - 28px,620px)}.nav{height:68px}.menu-btn{display:block}
            .nav-links{display:none;position:absolute;top:68px;left:14px;right:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0}
            .nav-links.open{display:flex}.nav-links a{padding:11px 0}.nav-age{display:none}
            .hero{padding:55px 0}.hero-grid{grid-template-columns:1fr}.hero-copy{font-size:15px}
            h1{font-size:39px}.search-panel{margin-top:4px}section{padding:56px 0}
            .section-head{display:block}.section-desc{margin-top:10px}.section-head .text-link{display:inline-block;margin-top:14px}
            .benefits,.ranking,.feature-row,.timeline{grid-template-columns:1fr}.benefit{padding:21px}
            .cover-grid{grid-template-columns:repeat(2,1fr)}.cover-img{height:210px}
            .category-grid{grid-template-columns:repeat(2,1fr)}.timeline{display:grid}
            .step{border-right:0;border-bottom:1px solid var(--line)}.step:last-child{border-bottom:0}
            .news-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}
            .cta-wrap{display:block}.cta-wrap .btn{margin-top:22px}
        }
        @media(max-width:520px){
            .brand-name{font-size:15px}.hero-actions .btn{width:100%}.cover-grid{gap:11px}
            .cover-img{height:175px}.cover-body{padding:12px}.cover-body h3{font-size:14px}
            .category-grid{gap:10px}.category{padding:16px 13px}.rank-item{grid-template-columns:30px 1fr auto;gap:8px;padding:13px}
            .rank-type{display:none}.rank-hot{font-size:11px}.faq-grid{grid-template-columns:1fr}
            .footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
            .float-bar{right:12px;bottom:12px}
        }
