/* roulang page: index */
:root{
      --bg:#121018;
      --bg-soft:#191621;
      --bg-card:#211d2b;
      --bg-elevated:#282334;
      --text:#fffaf1;
      --muted:#b8adbf;
      --weak:#8f8499;
      --line:rgba(255,255,255,.12);
      --line-strong:rgba(255,255,255,.2);
      --primary:#ffb545;
      --primary-2:#ff6b57;
      --accent:#6ee7d8;
      --green:#7adf92;
      --danger:#ff7b9c;
      --shadow:0 24px 80px rgba(0,0,0,.38);
      --shadow-sm:0 12px 30px rgba(0,0,0,.25);
      --radius-xl:28px;
      --radius-lg:22px;
      --radius-md:16px;
      --radius-sm:12px;
      --container:1180px;
      --nav-h:76px;
      --ease:all .24s ease;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 12% 4%, rgba(255,181,69,.18), transparent 32%),
        radial-gradient(circle at 90% 8%, rgba(110,231,216,.12), transparent 28%),
        linear-gradient(180deg,#121018 0%,#17131f 42%,#100e15 100%);
      line-height:1.75;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none;transition:var(--ease)}
    a:hover{color:var(--primary)}
    img{max-width:100%;height:auto;display:block}
    button,input{font:inherit}
    ::selection{background:rgba(255,181,69,.35);color:#fff}
    :focus-visible{outline:3px solid rgba(110,231,216,.55);outline-offset:4px;border-radius:10px}
    .container-page{max-width:var(--container);margin:0 auto;padding:0 22px}
    .section-pad{padding:92px 0}
    .section-pad-sm{padding:70px 0}
    .section-kicker{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border:1px solid var(--line);
      border-radius:999px;
      background:rgba(255,255,255,.055);
      color:var(--accent);
      font-weight:700;
      font-size:.9rem;
      letter-spacing:.02em;
    }
    .section-title{
      margin:18px 0 12px;
      font-size:clamp(1.8rem,3vw,3.1rem);
      line-height:1.16;
      font-weight:900;
      letter-spacing:-.04em;
    }
    .section-desc{
      max-width:760px;
      color:var(--muted);
      font-size:1.05rem;
      margin:0;
    }
    .text-gradient{
      background:linear-gradient(90deg,var(--primary),#fff0cf,var(--accent));
      -webkit-background-clip:text;
      background-clip:text;
      color:transparent;
    }

    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      min-height:var(--nav-h);
      background:rgba(18,16,24,.72);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(255,255,255,.09);
    }
    .navbar-custom{
      position:relative;
      min-height:var(--nav-h);
      padding:0;
    }
    .brand-center{
      position:absolute;
      left:50%;
      top:50%;
      transform:translate(-50%,-50%);
      z-index:2;
      display:flex;
      align-items:center;
      gap:10px;
      font-weight:950;
      letter-spacing:-.03em;
      white-space:nowrap;
      color:var(--text);
    }
    .brand-mark{
      width:38px;
      height:38px;
      border-radius:14px;
      display:grid;
      place-items:center;
      color:#1c1204;
      font-weight:950;
      background:linear-gradient(135deg,var(--primary),var(--primary-2));
      box-shadow:0 10px 28px rgba(255,181,69,.28);
    }
    .brand-text{font-size:1.06rem}
    .navbar-custom .navbar-toggler{
      border:1px solid var(--line);
      border-radius:14px;
      padding:8px 10px;
      background:rgba(255,255,255,.06);
      color:var(--text);
      box-shadow:none;
    }
    .navbar-custom .navbar-toggler-icon{
      filter:invert(1) grayscale(1) brightness(1.8);
    }
    .nav-zone{
      width:100%;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
    }
    .nav-left,.nav-right{
      display:flex;
      align-items:center;
      gap:12px;
      min-width:220px;
    }
    .nav-right{justify-content:flex-end}
    .nav-link-custom{
      display:inline-flex;
      align-items:center;
      gap:8px;
      min-height:42px;
      padding:8px 15px;
      border-radius:999px;
      color:var(--muted);
      font-weight:800;
      font-size:.95rem;
    }
    .nav-link-custom:hover,
    .nav-link-custom.active{
      color:var(--text);
      background:rgba(255,255,255,.08);
    }
    .nav-dot{
      width:7px;
      height:7px;
      border-radius:50%;
      background:var(--primary);
      box-shadow:0 0 0 5px rgba(255,181,69,.14);
    }
    .header-cta{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:42px;
      padding:8px 17px;
      border-radius:999px;
      font-weight:900;
      color:#20150b;
      background:linear-gradient(135deg,var(--primary),#ffd982);
      box-shadow:0 10px 30px rgba(255,181,69,.18);
    }
    .header-cta:hover{
      color:#110b04;
      transform:translateY(-2px);
      box-shadow:0 16px 36px rgba(255,181,69,.3);
    }

    .hero{
      position:relative;
      min-height:690px;
      display:flex;
      align-items:center;
      overflow:hidden;
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .hero::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(90deg,rgba(18,16,24,.88) 0%,rgba(18,16,24,.58) 42%,rgba(18,16,24,.84) 100%),
        radial-gradient(circle at 50% 35%,rgba(255,181,69,.22),transparent 28%),
        repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 78px);
      z-index:0;
    }
    .hero::after{
      content:"";
      position:absolute;
      inset:80px 4vw auto;
      height:360px;
      border-radius:42px;
      background:
        linear-gradient(135deg,rgba(255,107,87,.28),rgba(110,231,216,.08)),
        linear-gradient(120deg,rgba(255,255,255,.08),transparent 55%);
      filter:blur(.1px);
      border:1px solid rgba(255,255,255,.08);
      transform:skewY(-3deg);
      opacity:.72;
      z-index:0;
      box-shadow:var(--shadow);
    }
    .hero-content{
      position:relative;
      z-index:1;
      width:100%;
      padding:96px 0 70px;
    }
    .hero-grid{
      display:grid;
      grid-template-columns:minmax(0,1.1fr) minmax(320px,.62fr);
      gap:36px;
      align-items:end;
    }
    .hero-badge-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-bottom:22px;
    }
    .badge-soft{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border:1px solid var(--line);
      border-radius:999px;
      background:rgba(255,255,255,.07);
      color:var(--text);
      font-weight:800;
      font-size:.92rem;
      backdrop-filter:blur(10px);
    }
    .badge-soft .pulse{
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--green);
      box-shadow:0 0 0 0 rgba(122,223,146,.5);
      animation:pulse 1.8s infinite;
    }
    @keyframes pulse{
      0%{box-shadow:0 0 0 0 rgba(122,223,146,.45)}
      70%{box-shadow:0 0 0 10px rgba(122,223,146,0)}
      100%{box-shadow:0 0 0 0 rgba(122,223,146,0)}
    }
    .hero h1{
      max-width:930px;
      margin:0;
      font-size:clamp(2.7rem,6.1vw,6.4rem);
      line-height:.98;
      letter-spacing:-.065em;
      font-weight:950;
      text-wrap:balance;
    }
    .hero-intro{
      max-width:760px;
      margin:26px 0 0;
      color:#e1d8e6;
      font-size:clamp(1rem,1.5vw,1.22rem);
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:14px;
      margin-top:34px;
    }
    .btn-brand,.btn-ghost,.btn-darkline{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      min-height:50px;
      padding:13px 22px;
      border-radius:999px;
      border:1px solid transparent;
      font-weight:950;
      transition:var(--ease);
      cursor:pointer;
      white-space:nowrap;
    }
    .btn-brand{
      color:#1a1005;
      background:linear-gradient(135deg,var(--primary),#ffe3a2);
      box-shadow:0 14px 40px rgba(255,181,69,.24);
    }
    .btn-brand:hover{
      color:#100902;
      transform:translateY(-3px);
      box-shadow:0 18px 48px rgba(255,181,69,.34);
    }
    .btn-ghost{
      color:var(--text);
      background:rgba(255,255,255,.08);
      border-color:var(--line-strong);
    }
    .btn-ghost:hover{
      color:#fff;
      background:rgba(255,255,255,.13);
      transform:translateY(-3px);
    }
    .btn-darkline{
      color:var(--text);
      background:rgba(18,16,24,.5);
      border-color:var(--line);
    }
    .btn-darkline:hover{
      color:var(--primary);
      border-color:rgba(255,181,69,.45);
      transform:translateY(-2px);
    }
    .hero-trust{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:28px;
      color:#d8d0dc;
    }
    .trust-chip{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 11px;
      border-radius:999px;
      background:rgba(0,0,0,.24);
      border:1px solid rgba(255,255,255,.1);
      font-size:.92rem;
    }
    .check{
      width:18px;
      height:18px;
      border-radius:50%;
      background:rgba(110,231,216,.16);
      color:var(--accent);
      display:inline-grid;
      place-items:center;
      font-size:.75rem;
      font-weight:950;
    }
    .hero-panel{
      border:1px solid rgba(255,255,255,.13);
      border-radius:var(--radius-xl);
      background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06));
      box-shadow:var(--shadow);
      backdrop-filter:blur(18px);
      overflow:hidden;
    }
    .panel-top{
      padding:20px 20px 0;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
    }
    .panel-title{
      font-weight:950;
      font-size:1.08rem;
      margin:0;
    }
    .panel-live{
      color:#20150b;
      background:var(--accent);
      border-radius:999px;
      padding:5px 10px;
      font-weight:950;
      font-size:.8rem;
    }
    .stage-strip{
      padding:20px;
      display:grid;
      gap:12px;
    }
    .stage-item{
      display:grid;
      grid-template-columns:auto 1fr auto;
      gap:12px;
      align-items:center;
      padding:14px;
      border-radius:18px;
      background:rgba(18,16,24,.5);
      border:1px solid rgba(255,255,255,.1);
    }
    .stage-num{
      width:34px;
      height:34px;
      border-radius:12px;
      display:grid;
      place-items:center;
      color:#20150b;
      background:linear-gradient(135deg,var(--primary),#ffe5ac);
      font-weight:950;
    }
    .stage-item strong{display:block;font-size:.98rem}
    .stage-item span{display:block;color:var(--muted);font-size:.88rem;line-height:1.45}
    .stage-tag{
      color:var(--accent);
      font-weight:900;
      font-size:.82rem;
    }
    .hero-metrics{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      border-top:1px solid rgba(255,255,255,.12);
      background:rgba(0,0,0,.18);
    }
    .metric{
      padding:16px 14px;
      border-right:1px solid rgba(255,255,255,.1);
    }
    .metric:last-child{border-right:0}
    .metric strong{
      display:block;
      font-size:1.45rem;
      line-height:1.1;
      color:#fff;
      font-weight:950;
    }
    .metric span{
      color:var(--weak);
      font-size:.83rem;
    }

    .dark-band{
      background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
      border-top:1px solid rgba(255,255,255,.08);
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .live-layout{
      display:grid;
      grid-template-columns:.82fr 1.18fr;
      gap:28px;
      align-items:stretch;
      margin-top:34px;
    }
    .live-poster{
      min-height:420px;
      border-radius:var(--radius-xl);
      padding:28px;
      position:relative;
      overflow:hidden;
      background:
        linear-gradient(150deg,rgba(255,181,69,.18),rgba(255,107,87,.1) 44%,rgba(110,231,216,.12)),
        radial-gradient(circle at 30% 25%,rgba(255,255,255,.14),transparent 26%),
        #211d2b;
      border:1px solid var(--line);
      box-shadow:var(--shadow-sm);
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }
    .live-poster::after{
      content:"";
      position:absolute;
      right:-80px;
      bottom:-80px;
      width:260px;
      height:260px;
      border-radius:50%;
      border:38px solid rgba(255,255,255,.06);
    }
    .live-date{
      position:relative;
      z-index:1;
      display:inline-flex;
      width:max-content;
      flex-direction:column;
      padding:14px 16px;
      border-radius:20px;
      background:rgba(0,0,0,.22);
      border:1px solid rgba(255,255,255,.13);
    }
    .live-date b{
      font-size:2.2rem;
      line-height:1;
      color:var(--primary);
    }
    .live-date span{color:#e7ddeb;font-weight:800}
    .live-poster h3{
      position:relative;
      z-index:1;
      font-size:2.15rem;
      line-height:1.12;
      letter-spacing:-.04em;
      font-weight:950;
      margin:0 0 12px;
    }
    .live-poster p{
      position:relative;
      z-index:1;
      color:#dfd6e7;
      margin:0;
    }
    .agenda-list{
      display:grid;
      gap:14px;
    }
    .agenda-card{
      display:grid;
      grid-template-columns:120px 1fr auto;
      gap:16px;
      align-items:center;
      padding:18px;
      border-radius:22px;
      background:rgba(255,255,255,.06);
      border:1px solid var(--line);
      transition:var(--ease);
    }
    .agenda-card:hover{
      transform:translateY(-4px);
      background:rgba(255,255,255,.085);
      border-color:rgba(255,181,69,.3);
    }
    .agenda-time{
      color:var(--primary);
      font-weight:950;
      font-size:1rem;
    }
    .agenda-card h3{
      font-size:1.1rem;
      margin:0 0 4px;
      font-weight:950;
    }
    .agenda-card p{
      margin:0;
      color:var(--muted);
      font-size:.95rem;
      line-height:1.55;
    }

    .highlight-wrap{
      display:grid;
      grid-template-columns:1.08fr .92fr;
      gap:28px;
      margin-top:36px;
    }
    .highlight-list{
      display:grid;
      gap:14px;
    }
    .highlight-item{
      display:grid;
      grid-template-columns:auto 1fr;
      gap:16px;
      padding:20px;
      border-radius:var(--radius-lg);
      background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.045));
      border:1px solid var(--line);
      transition:var(--ease);
    }
    .highlight-item:hover{
      transform:translateX(5px);
      border-color:rgba(110,231,216,.32);
    }
    .icon-box{
      width:48px;
      height:48px;
      border-radius:17px;
      display:grid;
      place-items:center;
      font-weight:950;
      color:#17131f;
      background:linear-gradient(135deg,var(--accent),#d9fff8);
    }
    .highlight-item h3{
      margin:0 0 4px;
      font-size:1.1rem;
      font-weight:950;
    }
    .highlight-item p{
      margin:0;
      color:var(--muted);
      font-size:.95rem;
      line-height:1.6;
    }
    .solution-box{
      border-radius:var(--radius-xl);
      background:
        linear-gradient(180deg,rgba(255,181,69,.14),rgba(255,255,255,.05)),
        var(--bg-card);
      border:1px solid rgba(255,181,69,.22);
      padding:28px;
      box-shadow:var(--shadow-sm);
    }
    .solution-box h3{
      font-size:1.65rem;
      font-weight:950;
      letter-spacing:-.03em;
      margin:0 0 12px;
    }
    .solution-box p{color:#e2d8df;margin:0 0 20px}
    .mini-checks{
      display:grid;
      gap:10px;
      padding:0;
      margin:0;
      list-style:none;
    }
    .mini-checks li{
      display:flex;
      gap:10px;
      align-items:flex-start;
      padding:11px 0;
      border-bottom:1px solid rgba(255,255,255,.09);
      color:#efe8f0;
    }
    .mini-checks li:last-child{border-bottom:0}

    .vertical-flow{
      overflow:hidden;
    }
    .vertical-row{
      display:grid;
      grid-template-columns:repeat(4, minmax(190px,1fr));
      gap:16px;
      margin-top:34px;
    }
    .story-card{
      min-height:320px;
      position:relative;
      overflow:hidden;
      border-radius:28px;
      padding:18px;
      border:1px solid rgba(255,255,255,.12);
      background:linear-gradient(150deg,#2b2230,#17131f);
      box-shadow:var(--shadow-sm);
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      transition:var(--ease);
    }
    .story-card::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        radial-gradient(circle at 70% 20%,rgba(255,181,69,.22),transparent 28%),
        linear-gradient(180deg,transparent 20%,rgba(0,0,0,.34));
      opacity:.95;
    }
    .story-card:nth-child(2)::before{background:radial-gradient(circle at 30% 18%,rgba(110,231,216,.22),transparent 28%),linear-gradient(180deg,transparent 20%,rgba(0,0,0,.34))}
    .story-card:nth-child(3)::before{background:radial-gradient(circle at 70% 22%,rgba(255,107,87,.25),transparent 30%),linear-gradient(180deg,transparent 20%,rgba(0,0,0,.34))}
    .story-card:nth-child(4)::before{background:radial-gradient(circle at 35% 20%,rgba(122,223,146,.22),transparent 30%),linear-gradient(180deg,transparent 20%,rgba(0,0,0,.34))}
    .story-card:hover{
      transform:translateY(-7px) rotate(-.4deg);
      border-color:rgba(255,181,69,.35);
    }
    .story-card > *{position:relative;z-index:1}
    .story-label{
      align-self:flex-start;
      padding:6px 10px;
      border-radius:999px;
      background:rgba(0,0,0,.24);
      border:1px solid rgba(255,255,255,.14);
      color:#fff;
      font-weight:850;
      font-size:.82rem;
    }
    .story-card h3{
      font-size:1.35rem;
      line-height:1.18;
      font-weight:950;
      letter-spacing:-.03em;
      margin:0 0 8px;
    }
    .story-card p{
      color:#ded5e2;
      font-size:.94rem;
      line-height:1.55;
      margin:0 0 14px;
    }
    .story-card a{
      display:inline-flex;
      color:#17131f;
      background:#fff5dc;
      border-radius:999px;
      padding:8px 12px;
      font-weight:950;
      width:max-content;
    }
    .story-card a:hover{background:var(--primary);color:#17131f}

    .hot-list{
      margin-top:34px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:16px;
    }
    .hot-item{
      display:grid;
      grid-template-columns:58px 1fr auto;
      align-items:center;
      gap:16px;
      padding:18px;
      border-radius:22px;
      background:rgba(255,255,255,.055);
      border:1px solid var(--line);
      transition:var(--ease);
    }
    .hot-item:hover{
      transform:translateY(-4px);
      background:rgba(255,255,255,.08);
      border-color:rgba(255,181,69,.28);
    }
    .hot-no{
      width:58px;
      height:58px;
      border-radius:20px;
      display:grid;
      place-items:center;
      font-size:1.35rem;
      font-weight:950;
      color:#20150b;
      background:linear-gradient(135deg,var(--primary),#fff1bd);
    }
    .hot-item h3{
      margin:0 0 4px;
      font-weight:950;
      font-size:1.08rem;
    }
    .hot-item p{
      margin:0;
      color:var(--muted);
      font-size:.94rem;
      line-height:1.55;
    }
    .hot-link{
      color:var(--accent);
      font-weight:950;
      white-space:nowrap;
    }
    .benefit-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:16px;
      margin-top:34px;
    }
    .benefit-card{
      padding:22px;
      border-radius:24px;
      background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.04));
      border:1px solid var(--line);
      transition:var(--ease);
    }
    .benefit-card:hover{
      transform:translateY(-5px);
      border-color:rgba(110,231,216,.3);
    }
    .benefit-card b{
      display:grid;
      place-items:center;
      width:42px;
      height:42px;
      border-radius:15px;
      background:rgba(110,231,216,.13);
      color:var(--accent);
      margin-bottom:16px;
      font-size:1.15rem;
    }
    .benefit-card h3{
      margin:0 0 7px;
      font-size:1.08rem;
      font-weight:950;
    }
    .benefit-card p{
      margin:0;
      color:var(--muted);
      font-size:.95rem;
      line-height:1.58;
    }

    .news-layout{
      display:grid;
      grid-template-columns:1fr 360px;
      gap:24px;
      margin-top:34px;
      align-items:start;
    }
    .news-panel,.recommend-panel{
      border-radius:var(--radius-xl);
      background:rgba(255,255,255,.055);
      border:1px solid var(--line);
      overflow:hidden;
    }
    .news-head{
      padding:20px 22px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      border-bottom:1px solid var(--line);
    }
    .news-head h3{margin:0;font-size:1.15rem;font-weight:950}
    .news-head span{color:var(--weak);font-size:.92rem}
    .news-list{
      list-style:none;
      margin:0;
      padding:0;
    }
    .news-list li{
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .news-list li:last-child{border-bottom:0}
    .news-list a{
      display:grid;
      grid-template-columns:1fr auto;
      gap:14px;
      padding:18px 22px;
      color:var(--text);
    }
    .news-list a:hover{
      background:rgba(255,255,255,.055);
      color:var(--primary);
    }
    .news-title{
      font-weight:900;
      line-height:1.45;
    }
    .news-meta{
      color:var(--weak);
      white-space:nowrap;
      font-size:.9rem;
    }
    .recommend-panel{
      padding:22px;
      background:
        linear-gradient(180deg,rgba(255,181,69,.13),rgba(255,255,255,.055)),
        rgba(255,255,255,.04);
    }
    .recommend-panel h3{
      margin:0 0 10px;
      font-size:1.35rem;
      font-weight:950;
      letter-spacing:-.03em;
    }
    .recommend-panel p{
      color:#e3d9e5;
      margin:0 0 18px;
    }
    .risk-list{
      list-style:none;
      padding:0;
      margin:0 0 20px;
      display:grid;
      gap:10px;
    }
    .risk-list li{
      display:flex;
      gap:10px;
      color:#f0e8ee;
      align-items:flex-start;
    }

    .subscribe-box{
      display:grid;
      grid-template-columns:.85fr 1.15fr;
      gap:28px;
      align-items:center;
      padding:34px;
      border-radius:34px;
      background:
        linear-gradient(135deg,rgba(255,181,69,.2),rgba(255,107,87,.08) 48%,rgba(110,231,216,.15)),
        rgba(255,255,255,.055);
      border:1px solid rgba(255,255,255,.14);
      box-shadow:var(--shadow-sm);
    }
    .subscribe-box h2{
      margin:12px 0 10px;
      font-size:clamp(1.8rem,3vw,3rem);
      line-height:1.14;
      font-weight:950;
      letter-spacing:-.04em;
    }
    .subscribe-box p{margin:0;color:#e5dce8}
    .subscribe-form{
      display:grid;
      grid-template-columns:1fr auto;
      gap:12px;
      padding:10px;
      border-radius:999px;
      background:rgba(18,16,24,.55);
      border:1px solid rgba(255,255,255,.13);
    }
    .subscribe-form input{
      min-height:54px;
      border:0;
      outline:0;
      padding:0 18px;
      color:var(--text);
      background:transparent;
    }
    .subscribe-form input::placeholder{color:#9f93a9}
    .form-note{
      margin-top:12px;
      color:#cfc5d5;
      font-size:.92rem;
    }
    .form-message{
      margin-top:12px;
      display:none;
      color:var(--accent);
      font-weight:900;
    }

    .faq-wrap{
      max-width:920px;
      margin:34px auto 0;
    }
    .accordion{
      display:grid;
      gap:12px;
    }
    .accordion-item{
      color:var(--text);
      background:rgba(255,255,255,.055);
      border:1px solid var(--line) !important;
      border-radius:20px !important;
      overflow:hidden;
    }
    .accordion-button{
      color:var(--text);
      background:transparent;
      box-shadow:none !important;
      font-weight:950;
      padding:20px 22px;
    }
    .accordion-button:not(.collapsed){
      color:var(--primary);
      background:rgba(255,181,69,.06);
    }
    .accordion-button::after{
      filter:invert(1);
      opacity:.8;
    }
    .accordion-body{
      color:var(--muted);
      padding:0 22px 22px;
      line-height:1.75;
    }
    .final-cta{
      margin-top:38px;
      text-align:center;
      padding:30px;
      border-radius:30px;
      background:rgba(255,255,255,.045);
      border:1px solid var(--line);
    }
    .final-cta h3{
      margin:0 0 10px;
      font-weight:950;
      font-size:1.6rem;
      letter-spacing:-.03em;
    }
    .final-cta p{margin:0 auto 20px;color:var(--muted);max-width:680px}

    .site-footer{
      padding:54px 0 30px;
      border-top:1px solid rgba(255,255,255,.09);
      background:#0e0c12;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:28px;
      align-items:start;
    }
    .footer-brand{
      display:flex;
      align-items:center;
      gap:12px;
      margin-bottom:14px;
      font-weight:950;
      font-size:1.12rem;
    }
    .footer-brand .brand-mark{width:36px;height:36px;border-radius:13px}
    .footer-text{
      max-width:680px;
      color:var(--muted);
      margin:0;
    }
    .footer-links{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      justify-content:flex-end;
    }
    .footer-links a{
      padding:8px 12px;
      border-radius:999px;
      color:var(--muted);
      background:rgba(255,255,255,.045);
      border:1px solid rgba(255,255,255,.08);
      font-weight:800;
      font-size:.92rem;
    }
    .footer-links a:hover{color:var(--primary);border-color:rgba(255,181,69,.28)}
    .copyright{
      margin-top:30px;
      padding-top:18px;
      border-top:1px solid rgba(255,255,255,.08);
      color:var(--weak);
      font-size:.92rem;
      display:flex;
      justify-content:space-between;
      gap:14px;
      flex-wrap:wrap;
    }

    @media (max-width:1024px){
      .hero-grid,.live-layout,.highlight-wrap,.news-layout,.subscribe-box,.footer-grid{
        grid-template-columns:1fr;
      }
      .hero{min-height:auto}
      .hero-panel{max-width:680px}
      .vertical-row{grid-template-columns:repeat(2,1fr)}
      .benefit-grid{grid-template-columns:repeat(2,1fr)}
      .hot-list{grid-template-columns:1fr}
      .footer-links{justify-content:flex-start}
      .brand-center{position:static;transform:none;margin:0 auto}
      .nav-left,.nav-right{min-width:auto}
      .navbar-custom{padding:14px 0}
    }
    @media (max-width:768px){
      :root{--nav-h:68px}
      .container-page{padding:0 18px}
      .section-pad{padding:70px 0}
      .section-pad-sm{padding:56px 0}
      .navbar-collapse{
        margin-top:14px;
        padding:14px;
        border-radius:22px;
        background:rgba(255,255,255,.07);
        border:1px solid var(--line);
      }
      .nav-zone{display:block}
      .nav-left,.nav-right{
        display:grid;
        gap:10px;
        width:100%;
      }
      .brand-center{
        margin:0;
        font-size:.95rem;
      }
      .brand-text{max-width:210px;overflow:hidden;text-overflow:ellipsis}
      .header-cta{width:100%;margin-top:8px}
      .hero-content{padding:72px 0 54px}
      .hero-actions{display:grid;grid-template-columns:1fr}
      .btn-brand,.btn-ghost,.btn-darkline{width:100%}
      .hero-metrics{grid-template-columns:1fr}
      .metric{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}
      .metric:last-child{border-bottom:0}
      .agenda-card{
        grid-template-columns:1fr;
        align-items:start;
      }
      .agenda-card .btn-darkline{width:max-content}
      .hot-item{grid-template-columns:50px 1fr}
      .hot-link{grid-column:2}
      .subscribe-form{
        grid-template-columns:1fr;
        border-radius:24px;
      }
      .subscribe-form .btn-brand{width:100%}
      .news-list a{grid-template-columns:1fr}
      .news-meta{white-space:normal}
    }
    @media (max-width:520px){
      .hero h1{font-size:2.45rem}
      .hero-intro{font-size:1rem}
      .vertical-row,.benefit-grid{grid-template-columns:1fr}
      .live-poster{min-height:340px;padding:22px}
      .live-poster h3{font-size:1.75rem}
      .highlight-item{grid-template-columns:1fr}
      .subscribe-box{padding:22px;border-radius:26px}
      .section-title{font-size:1.75rem}
      .copyright{display:block}
      .copyright span{display:block;margin-top:8px}
    }

/* roulang: framework shim */
/* 覆盖 Bootstrap 等对 a/btn 的全局默认，避免导航出现下划线/蓝链 */
.site-header a,.site-header a:hover,.navbar a,.navbar a:hover,.nav-links a,.nav-links a:hover,header nav a,header nav a:hover{text-decoration:none}
.site-header .btn,.navbar .btn,.nav-cta{text-decoration:none}
