/* roulang page: index */
:root{
      --bg:#14110f;
      --bg-2:#1b1714;
      --panel:#211b17;
      --text:#241e1a;
      --muted:#74695f;
      --light:#fff7e9;
      --paper:#fff9f0;
      --paper-2:#f7f1e8;
      --amber:#f0a83a;
      --amber-2:#ffbd59;
      --red:#7a2634;
      --red-2:#9b2f3f;
      --border:#e7d7c3;
      --dark-border:rgba(255,247,233,.16);
      --shadow:0 24px 70px rgba(80,43,16,.16);
      --shadow-dark:0 28px 80px rgba(0,0,0,.32);
      --radius-xl:32px;
      --radius-lg:24px;
      --radius-md:18px;
      --radius-sm:12px;
      --container:1200px;
      --ease:all .25s ease;
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{
      font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
      background:var(--paper-2);
      color:var(--text);
      line-height:1.78;
      min-width:320px;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,textarea{font:inherit}
    button{border:0;cursor:pointer}
    input,textarea{outline:none}
    :focus-visible{outline:3px solid rgba(240,168,58,.55);outline-offset:3px}
    .container{width:min(var(--container),calc(100% - 40px));margin:0 auto}
    .site-header{
      position:fixed;
      top:0;
      left:0;
      width:100%;
      z-index:50;
      background:rgba(20,17,15,.78);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(255,247,233,.12);
      transition:var(--ease);
    }
    .site-header.scrolled{background:rgba(20,17,15,.96);box-shadow:0 14px 46px rgba(0,0,0,.25)}
    .nav-wrap{
      height:78px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:26px;
    }
    .brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      color:var(--light);
      font-weight:800;
      letter-spacing:.02em;
      white-space:nowrap;
    }
    .brand-mark{
      width:42px;
      height:42px;
      border-radius:50%;
      background:
        radial-gradient(circle at 65% 35%,var(--amber-2) 0 9px,transparent 10px),
        linear-gradient(135deg,var(--red),var(--amber));
      position:relative;
      box-shadow:0 0 0 6px rgba(240,168,58,.08),0 12px 30px rgba(240,168,58,.25);
      overflow:hidden;
    }
    .brand-mark:before,.brand-mark:after{
      content:"";
      position:absolute;
      left:7px;
      right:7px;
      height:4px;
      background:rgba(20,17,15,.45);
      border-radius:999px;
    }
    .brand-mark:before{top:12px}
    .brand-mark:after{bottom:12px}
    .brand-text{font-size:20px}
    .nav-menu{
      display:flex;
      align-items:center;
      justify-content:flex-end;
      gap:4px;
      list-style:none;
      margin-left:auto;
    }
    .nav-menu a{
      display:inline-flex;
      align-items:center;
      padding:10px 14px;
      color:rgba(255,247,233,.78);
      font-size:15px;
      font-weight:600;
      border-radius:999px;
      position:relative;
      transition:var(--ease);
    }
    .nav-menu a:hover,.nav-menu a.active{
      color:var(--amber-2);
      background:rgba(255,255,255,.06);
    }
    .nav-menu a.active:after{
      content:"";
      position:absolute;
      left:50%;
      bottom:3px;
      width:18px;
      height:3px;
      border-radius:999px;
      background:var(--amber);
      transform:translateX(-50%);
    }
    .nav-cta{margin-left:12px}
    .mobile-toggle{
      display:none;
      width:44px;
      height:44px;
      border-radius:14px;
      background:rgba(255,247,233,.08);
      color:var(--light);
      align-items:center;
      justify-content:center;
      border:1px solid rgba(255,247,233,.14);
    }
    .mobile-toggle span{
      width:20px;
      height:2px;
      background:currentColor;
      position:relative;
      display:block;
      border-radius:3px;
    }
    .mobile-toggle span:before,.mobile-toggle span:after{
      content:"";
      position:absolute;
      left:0;
      width:20px;
      height:2px;
      background:currentColor;
      border-radius:3px;
      transition:var(--ease);
    }
    .mobile-toggle span:before{top:-7px}
    .mobile-toggle span:after{top:7px}
    .mobile-toggle.open span{background:transparent}
    .mobile-toggle.open span:before{top:0;transform:rotate(45deg)}
    .mobile-toggle.open span:after{top:0;transform:rotate(-45deg)}
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:46px;
      padding:12px 20px;
      border-radius:999px;
      font-weight:800;
      font-size:15px;
      transition:var(--ease);
      border:1px solid transparent;
      white-space:nowrap;
    }
    .btn-primary{
      background:linear-gradient(135deg,var(--amber-2),var(--amber));
      color:#21160d;
      box-shadow:0 14px 30px rgba(240,168,58,.28);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(240,168,58,.36)}
    .btn-secondary{
      background:rgba(255,247,233,.08);
      color:var(--light);
      border-color:rgba(255,247,233,.22);
    }
    .btn-secondary:hover{transform:translateY(-2px);border-color:rgba(240,168,58,.7);color:var(--amber-2)}
    .btn-dark{
      background:var(--bg);
      color:var(--light);
      border-color:rgba(20,17,15,.08);
    }
    .btn-dark:hover{transform:translateY(-2px);background:#2a221d;color:var(--amber-2)}
    .btn-outline{
      color:var(--text);
      background:rgba(255,255,255,.5);
      border-color:var(--border);
    }
    .btn-outline:hover{transform:translateY(-2px);border-color:var(--amber);color:#7c4d10}
    .hero{
      position:relative;
      min-height:760px;
      padding:150px 0 86px;
      color:var(--light);
      overflow:hidden;
      background:
        linear-gradient(90deg,rgba(20,17,15,.96) 0%,rgba(20,17,15,.86) 45%,rgba(20,17,15,.58) 100%),
        url('/assets/images/backpic/back-1.jpg') center/cover no-repeat;
    }
    .hero:before{
      content:"";
      position:absolute;
      inset:0;
      background:
        radial-gradient(circle at 76% 28%,rgba(255,189,89,.28),transparent 28%),
        linear-gradient(110deg,transparent 0 46%,rgba(240,168,58,.12) 48%,transparent 72%);
      pointer-events:none;
    }
    .hero:after{
      content:"";
      position:absolute;
      inset:0;
      opacity:.14;
      background-image:radial-gradient(rgba(255,247,233,.45) 1px,transparent 1px);
      background-size:4px 4px;
      mix-blend-mode:screen;
      pointer-events:none;
    }
    .hero-grid{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:minmax(0,1.05fr) minmax(390px,.82fr);
      gap:58px;
      align-items:center;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:9px;
      padding:8px 13px;
      border:1px solid rgba(255,247,233,.18);
      background:rgba(255,247,233,.08);
      border-radius:999px;
      color:var(--amber-2);
      font-weight:800;
      font-size:14px;
      line-height:1.3;
      box-shadow:inset 0 0 0 1px rgba(240,168,58,.06);
    }
    .eyebrow:before{
      content:"";
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--amber);
      box-shadow:0 0 0 6px rgba(240,168,58,.13);
    }
    h1{
      margin-top:22px;
      max-width:760px;
      font-size:clamp(34px,5vw,58px);
      line-height:1.14;
      letter-spacing:-.04em;
      font-weight:900;
    }
    .hero-lead{
      margin-top:24px;
      max-width:680px;
      color:rgba(255,247,233,.82);
      font-size:18px;
      line-height:1.9;
    }
    .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
    .hero-tags{
      margin-top:34px;
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .tag{
      display:inline-flex;
      align-items:center;
      gap:7px;
      padding:8px 12px;
      border-radius:999px;
      background:rgba(255,247,233,.09);
      border:1px solid rgba(255,247,233,.14);
      color:rgba(255,247,233,.78);
      font-size:14px;
      font-weight:700;
    }
    .tag.light{
      background:#fff4df;
      border-color:#ead6b6;
      color:#7a4f16;
    }
    .tag.red{
      background:rgba(122,38,52,.12);
      border-color:rgba(122,38,52,.2);
      color:#8d2b3a;
    }
    .tag .dot{
      width:6px;
      height:6px;
      border-radius:50%;
      background:var(--amber);
    }
    .hero-stage{
      position:relative;
      min-height:540px;
    }
    .poster-stack{
      position:absolute;
      inset:0 54px 96px 34px;
    }
    .poster-main,.poster-side{
      position:absolute;
      overflow:hidden;
      border-radius:30px;
      border:1px solid rgba(255,247,233,.18);
      box-shadow:var(--shadow-dark);
      background:var(--panel);
    }
    .poster-main{
      right:0;
      top:16px;
      width:70%;
      aspect-ratio:4/5.45;
      transform:rotate(2deg);
    }
    .poster-side{
      left:0;
      bottom:0;
      width:48%;
      aspect-ratio:4/5.4;
      transform:rotate(-5deg);
      opacity:.96;
    }
    .poster-main img,.poster-side img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
    .poster-main:hover img,.poster-side:hover img{transform:scale(1.04)}
    .poster-main:after,.poster-side:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg,transparent 42%,rgba(20,17,15,.78));
    }
    .show-card{
      position:absolute;
      left:12px;
      right:0;
      bottom:10px;
      z-index:2;
      padding:20px;
      border-radius:24px;
      background:rgba(20,17,15,.78);
      backdrop-filter:blur(18px);
      border:1px solid rgba(255,247,233,.18);
      box-shadow:0 24px 60px rgba(0,0,0,.28);
    }
    .show-card-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      margin-bottom:14px;
    }
    .show-card h2{
      font-size:20px;
      line-height:1.35;
      color:var(--light);
    }
    .mini-badge{
      display:inline-flex;
      align-items:center;
      padding:6px 10px;
      border-radius:999px;
      background:rgba(240,168,58,.15);
      color:var(--amber-2);
      font-size:13px;
      font-weight:800;
      border:1px solid rgba(240,168,58,.25);
      white-space:nowrap;
    }
    .show-list{list-style:none;display:grid;gap:10px}
    .show-list li{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:10px 12px;
      border-radius:14px;
      background:rgba(255,247,233,.08);
      color:rgba(255,247,233,.86);
      font-size:14px;
    }
    .show-list strong{color:var(--amber-2);font-weight:800}
    .ticker{
      position:relative;
      z-index:2;
      margin-top:-36px;
    }
    .ticker-inner{
      display:flex;
      align-items:center;
      gap:18px;
      padding:17px 20px;
      overflow:hidden;
      border-radius:24px;
      background:rgba(255,249,240,.96);
      border:1px solid var(--border);
      box-shadow:var(--shadow);
    }
    .ticker-label{
      flex:0 0 auto;
      display:inline-flex;
      align-items:center;
      gap:8px;
      color:#7c4d10;
      font-weight:900;
    }
    .ticker-items{
      display:flex;
      align-items:center;
      gap:12px;
      flex-wrap:wrap;
    }
    .ticker-items a{
      padding:8px 12px;
      border-radius:999px;
      background:#f6ead9;
      color:#5d4d40;
      font-size:14px;
      font-weight:700;
      transition:var(--ease);
    }
    .ticker-items a:hover{background:var(--amber);color:#21160d;transform:translateY(-1px)}
    main{background:linear-gradient(180deg,var(--paper-2),#fffaf2 38%,var(--paper-2))}
    .section{padding:92px 0}
    .section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:28px;
      margin-bottom:34px;
    }
    .section-kicker{
      color:#9b6220;
      font-weight:900;
      font-size:14px;
      letter-spacing:.08em;
      margin-bottom:8px;
    }
    .section-title{
      font-size:clamp(26px,3vw,38px);
      line-height:1.22;
      letter-spacing:-.03em;
      font-weight:900;
      color:var(--text);
    }
    .section-desc{
      max-width:560px;
      color:var(--muted);
      font-size:16px;
      line-height:1.85;
    }
    .entry-grid{
      display:grid;
      grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
      gap:24px;
      align-items:stretch;
    }
    .entry-feature{
      position:relative;
      overflow:hidden;
      min-height:470px;
      border-radius:var(--radius-xl);
      background:linear-gradient(160deg,rgba(20,17,15,.92),rgba(122,38,52,.78)),url('/assets/images/backpic/back-2.webp') center/cover no-repeat;
      color:var(--light);
      padding:34px;
      box-shadow:var(--shadow);
      border:1px solid rgba(255,247,233,.13);
    }
    .entry-feature:before{
      content:"";
      position:absolute;
      inset:auto -80px -90px auto;
      width:250px;
      height:250px;
      border-radius:50%;
      background:rgba(240,168,58,.23);
      filter:blur(3px);
    }
    .entry-feature h3{font-size:30px;line-height:1.25;margin:20px 0 14px;position:relative}
    .entry-feature p{position:relative;color:rgba(255,247,233,.82);font-size:17px;max-width:480px}
    .entry-feature .btn{position:absolute;left:34px;bottom:34px}
    .ticket-strip{
      position:absolute;
      right:28px;
      top:28px;
      display:grid;
      gap:8px;
    }
    .ticket-dot{
      width:12px;
      height:12px;
      border-radius:50%;
      background:rgba(255,247,233,.45);
      box-shadow:0 30px 0 rgba(255,247,233,.32),0 60px 0 rgba(255,247,233,.22),0 90px 0 rgba(255,247,233,.18);
    }
    .entry-cards{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:18px;
    }
    .entry-card{
      position:relative;
      overflow:hidden;
      min-height:226px;
      padding:24px;
      border-radius:var(--radius-lg);
      background:rgba(255,249,240,.92);
      border:1px solid var(--border);
      box-shadow:0 18px 45px rgba(80,43,16,.08);
      transition:var(--ease);
    }
    .entry-card:hover{transform:translateY(-4px);border-color:rgba(240,168,58,.75);box-shadow:var(--shadow)}
    .entry-icon{
      width:46px;
      height:46px;
      border-radius:16px;
      display:grid;
      place-items:center;
      background:#fff0d2;
      color:#8a5516;
      font-size:22px;
      margin-bottom:18px;
      border:1px solid #efd7aa;
    }
    .entry-card h3{font-size:22px;line-height:1.3;margin-bottom:10px}
    .entry-card p{color:var(--muted);font-size:15px;line-height:1.75}
    .text-link{
      display:inline-flex;
      align-items:center;
      gap:7px;
      margin-top:16px;
      color:#8a5516;
      font-weight:900;
      transition:var(--ease);
    }
    .text-link:hover{color:var(--red-2);text-decoration:underline;text-underline-offset:4px}
    .text-link:hover span{transform:translateX(3px)}
    .text-link span{transition:var(--ease)}
    .latest-section{
      background:
        radial-gradient(circle at 12% 12%,rgba(240,168,58,.13),transparent 28%),
        linear-gradient(180deg,#fff9f0,#f7f1e8);
    }
    .latest-layout{
      display:grid;
      grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
      gap:24px;
      align-items:start;
    }
    .feature-news,.news-item,.empty-state{
      border:1px solid var(--border);
      background:rgba(255,249,240,.96);
      border-radius:var(--radius-lg);
      overflow:hidden;
      box-shadow:0 18px 50px rgba(80,43,16,.08);
      transition:var(--ease);
    }
    .feature-news:hover,.news-item:hover{transform:translateY(-3px);border-color:rgba(240,168,58,.8);box-shadow:var(--shadow)}
    .feature-news-img{
      position:relative;
      aspect-ratio:16/10;
      overflow:hidden;
      background:#201a16;
    }
    .feature-news-img img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
    .feature-news:hover img{transform:scale(1.04)}
    .feature-news-img:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg,transparent 46%,rgba(20,17,15,.65));
    }
    .news-body{padding:24px}
    .meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px}
    .category{
      display:inline-flex;
      align-items:center;
      padding:5px 10px;
      border-radius:999px;
      background:#fff0d2;
      color:#845012;
      border:1px solid #efd7aa;
      font-size:13px;
      font-weight:900;
    }
    .date{font-size:13px;color:var(--muted);font-weight:700}
    .feature-news h3,.news-item h3{
      color:var(--text);
      line-height:1.35;
      transition:var(--ease);
    }
    .feature-news h3{font-size:25px}
    .news-item h3{font-size:19px}
    .feature-news:hover h3,.news-item:hover h3{color:#9b6220}
    .summary{
      margin-top:10px;
      color:var(--muted);
      font-size:15px;
      line-height:1.75;
      display:-webkit-box;
      -webkit-line-clamp:3;
      -webkit-box-orient:vertical;
      overflow:hidden;
    }
    .news-list{display:grid;gap:14px}
    .news-item{display:grid;grid-template-columns:126px minmax(0,1fr);gap:16px;padding:14px}
    .news-thumb{
      min-height:126px;
      border-radius:18px;
      overflow:hidden;
      background:linear-gradient(135deg,#211b17,#7a2634);
    }
    .news-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
    .news-item:hover img{transform:scale(1.05)}
    .news-item .summary{-webkit-line-clamp:2;font-size:14px}
    .empty-state{
      grid-column:1/-1;
      padding:36px;
      text-align:center;
      color:var(--muted);
    }
    .empty-icon{
      width:64px;
      height:64px;
      border-radius:22px;
      display:grid;
      place-items:center;
      margin:0 auto 14px;
      background:#fff0d2;
      color:#8a5516;
      font-size:28px;
      border:1px solid #efd7aa;
    }
    .process{
      color:var(--light);
      background:
        linear-gradient(180deg,rgba(20,17,15,.94),rgba(27,23,20,.97)),
        url('/assets/images/backpic/back-3.jpg') center/cover fixed no-repeat;
      position:relative;
      overflow:hidden;
    }
    .process .section-title,.process .section-kicker{color:var(--light)}
    .process .section-desc{color:rgba(255,247,233,.72)}
    .timeline{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:16px;
      position:relative;
    }
    .timeline:before{
      content:"";
      position:absolute;
      left:10%;
      right:10%;
      top:34px;
      height:1px;
      background:linear-gradient(90deg,transparent,var(--amber),transparent);
      opacity:.5;
    }
    .step{
      position:relative;
      z-index:1;
      padding:24px;
      border-radius:24px;
      background:rgba(255,247,233,.07);
      border:1px solid rgba(255,247,233,.13);
      transition:var(--ease);
    }
    .step:hover{transform:translateY(-4px);border-color:rgba(240,168,58,.55);background:rgba(255,247,233,.1)}
    .step-num{
      width:48px;
      height:48px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:linear-gradient(135deg,var(--amber-2),var(--amber));
      color:#21160d;
      font-weight:900;
      margin-bottom:18px;
      box-shadow:0 12px 28px rgba(240,168,58,.25);
    }
    .step h3{font-size:21px;line-height:1.35;margin-bottom:9px}
    .step p{font-size:15px;color:rgba(255,247,233,.73)}
    .poster-wall{
      display:grid;
      grid-template-columns:1.05fr .95fr;
      gap:24px;
      align-items:center;
    }
    .wall-text{
      padding:34px;
      border-radius:var(--radius-xl);
      background:#fff9f0;
      border:1px solid var(--border);
      box-shadow:var(--shadow);
    }
    .wall-text h2{font-size:clamp(26px,3vw,36px);line-height:1.25;margin:12px 0}
    .wall-text p{color:var(--muted);font-size:16px}
    .wall-points{list-style:none;margin-top:24px;display:grid;gap:12px}
    .wall-points li{
      display:flex;
      align-items:flex-start;
      gap:10px;
      color:#5b5047;
      font-weight:700;
    }
    .wall-points li:before{
      content:"";
      flex:0 0 auto;
      width:10px;
      height:10px;
      border-radius:50%;
      margin-top:10px;
      background:var(--amber);
      box-shadow:0 0 0 5px rgba(240,168,58,.16);
    }
    .poster-grid{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:16px;
    }
    .poster-card{
      position:relative;
      overflow:hidden;
      border-radius:26px;
      min-height:330px;
      border:1px solid var(--border);
      background:#201a16;
      box-shadow:var(--shadow);
      transition:var(--ease);
    }
    .poster-card:nth-child(2){transform:translateY(34px)}
    .poster-card:hover{border-color:var(--amber);transform:translateY(-4px)}
    .poster-card:nth-child(2):hover{transform:translateY(28px)}
    .poster-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .45s ease}
    .poster-card:hover img{transform:scale(1.05)}
    .poster-card:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg,rgba(20,17,15,.05) 28%,rgba(20,17,15,.86));
    }
    .poster-info{
      position:absolute;
      z-index:1;
      left:18px;
      right:18px;
      bottom:18px;
      color:var(--light);
    }
    .poster-info h3{font-size:21px;line-height:1.3;margin:9px 0 5px}
    .poster-info p{font-size:14px;color:rgba(255,247,233,.76);line-height:1.65}
    .proof-grid{
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:18px;
    }
    .proof-card{
      padding:26px;
      border-radius:26px;
      background:linear-gradient(180deg,#fff9f0,#f6ead9);
      border:1px solid var(--border);
      box-shadow:0 18px 45px rgba(80,43,16,.08);
    }
    .proof-card strong{
      display:block;
      font-size:34px;
      line-height:1;
      color:#8a5516;
      margin-bottom:12px;
    }
    .proof-card h3{font-size:20px;margin-bottom:8px}
    .proof-card p{color:var(--muted);font-size:15px}
    .faq-wrap{
      display:grid;
      grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
      gap:32px;
      align-items:start;
    }
    .faq-aside{
      position:sticky;
      top:110px;
      padding:30px;
      border-radius:var(--radius-xl);
      color:var(--light);
      background:linear-gradient(145deg,var(--bg),#2a1d18);
      box-shadow:var(--shadow);
      border:1px solid rgba(255,247,233,.12);
    }
    .faq-aside h2{font-size:30px;line-height:1.25;margin:12px 0}
    .faq-aside p{color:rgba(255,247,233,.73)}
    .faq-list{display:grid;gap:12px}
    .faq-item{
      border:1px solid var(--border);
      border-radius:22px;
      background:#fff9f0;
      overflow:hidden;
      box-shadow:0 14px 36px rgba(80,43,16,.06);
    }
    .faq-question{
      width:100%;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding:20px 22px;
      background:transparent;
      color:var(--text);
      text-align:left;
      font-weight:900;
      font-size:17px;
      transition:var(--ease);
    }
    .faq-question:hover{color:#8a5516;background:#fff4e5}
    .faq-sign{
      flex:0 0 auto;
      width:28px;
      height:28px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:#fff0d2;
      color:#8a5516;
      transition:var(--ease);
    }
    .faq-item.open .faq-sign{transform:rotate(45deg);background:var(--amber);color:#21160d}
    .faq-answer{
      max-height:0;
      overflow:hidden;
      transition:max-height .28s ease;
    }
    .faq-answer p{
      padding:0 22px 20px;
      color:var(--muted);
      font-size:15px;
      line-height:1.85;
    }
    .cta-section{padding:0 0 96px}
    .cta-panel{
      position:relative;
      overflow:hidden;
      display:grid;
      grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);
      gap:34px;
      align-items:center;
      padding:42px;
      border-radius:36px;
      color:var(--light);
      background:
        radial-gradient(circle at 82% 22%,rgba(240,168,58,.26),transparent 28%),
        linear-gradient(135deg,#14110f,#2b1917 62%,#7a2634);
      box-shadow:var(--shadow-dark);
      border:1px solid rgba(255,247,233,.14);
    }
    .cta-panel:before,.cta-panel:after{
      content:"";
      position:absolute;
      top:20px;
      bottom:20px;
      width:12px;
      background:radial-gradient(circle,rgba(255,247,233,.36) 0 4px,transparent 5px) center/12px 28px repeat-y;
      opacity:.7;
    }
    .cta-panel:before{left:18px}
    .cta-panel:after{right:18px}
    .cta-content{position:relative;z-index:1;padding-left:10px}
    .cta-content h2{font-size:clamp(28px,3.6vw,44px);line-height:1.18;margin:14px 0}
    .cta-content p{color:rgba(255,247,233,.78);font-size:17px;max-width:650px}
    .contact-form{
      position:relative;
      z-index:1;
      display:grid;
      gap:12px;
      padding:22px;
      border-radius:26px;
      background:rgba(255,247,233,.08);
      border:1px solid rgba(255,247,233,.16);
      backdrop-filter:blur(14px);
    }
    .field{display:grid;gap:6px}
    .field label{font-size:13px;color:rgba(255,247,233,.72);font-weight:800}
    .field input,.field textarea{
      width:100%;
      border:1px solid rgba(255,247,233,.16);
      border-radius:16px;
      padding:12px 14px;
      color:var(--light);
      background:rgba(20,17,15,.52);
      transition:var(--ease);
    }
    .field textarea{min-height:92px;resize:vertical}
    .field input::placeholder,.field textarea::placeholder{color:rgba(255,247,233,.43)}
    .field input:focus,.field textarea:focus{border-color:var(--amber);box-shadow:0 0 0 4px rgba(240,168,58,.13)}
    .form-note{font-size:13px;color:rgba(255,247,233,.62)}
    .site-footer{
      background:var(--bg);
      color:rgba(255,247,233,.72);
      padding:62px 0 26px;
      border-top:1px solid rgba(255,247,233,.12);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(150px,.5fr));
      gap:30px;
      padding-bottom:34px;
    }
    .footer-brand p{margin-top:16px;max-width:420px;color:rgba(255,247,233,.65)}
    .footer-col h3{
      color:var(--light);
      font-size:16px;
      margin-bottom:14px;
    }
    .footer-links{list-style:none;display:grid;gap:10px}
    .footer-links a{
      color:rgba(255,247,233,.65);
      transition:var(--ease);
      font-size:14px;
    }
    .footer-links a:hover{color:var(--amber-2);text-decoration:underline;text-underline-offset:4px}
    .footer-bottom{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      flex-wrap:wrap;
      padding-top:22px;
      border-top:1px solid rgba(255,247,233,.1);
      font-size:13px;
      color:rgba(255,247,233,.52);
    }
    @media (max-width:1024px){
      .hero{padding-top:128px;min-height:auto}
      .hero-grid,.entry-grid,.latest-layout,.poster-wall,.faq-wrap,.cta-panel{grid-template-columns:1fr}
      .hero-stage{min-height:520px;max-width:620px;margin:0 auto;width:100%}
      .timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
      .timeline:before{display:none}
      .footer-grid{grid-template-columns:1fr 1fr}
      .faq-aside{position:relative;top:auto}
    }
    @media (max-width:768px){
      .container{width:min(100% - 28px,var(--container))}
      .nav-wrap{height:68px}
      .mobile-toggle{display:flex}
      .nav-menu{
        position:absolute;
        top:68px;
        left:14px;
        right:14px;
        display:none;
        flex-direction:column;
        align-items:stretch;
        padding:14px;
        border-radius:22px;
        background:rgba(20,17,15,.98);
        border:1px solid rgba(255,247,233,.14);
        box-shadow:var(--shadow-dark);
      }
      .nav-menu.open{display:flex}
      .nav-menu a{justify-content:center;padding:12px}
      .nav-cta{display:none}
      .hero{padding:112px 0 68px}
      .hero-lead{font-size:16px}
      .hero-actions .btn{width:100%}
      .hero-stage{min-height:460px}
      .poster-stack{inset:0 18px 92px 18px}
      .poster-side{display:none}
      .poster-main{width:78%;left:50%;right:auto;transform:translateX(-50%) rotate(1deg)}
      .show-card{left:0;right:0}
      .ticker{margin-top:-24px}
      .ticker-inner{align-items:flex-start;flex-direction:column}
      .section{padding:64px 0}
      .section-head{align-items:flex-start;flex-direction:column;margin-bottom:26px}
      .entry-cards,.poster-grid,.proof-grid,.timeline{grid-template-columns:1fr}
      .entry-feature{min-height:390px;padding:26px}
      .entry-feature .btn{left:26px;bottom:26px}
      .poster-card:nth-child(2){transform:none}
      .poster-card:nth-child(2):hover{transform:translateY(-4px)}
      .news-item{grid-template-columns:104px minmax(0,1fr)}
      .news-thumb{min-height:108px}
      .cta-panel{padding:30px 24px}
      .footer-grid{grid-template-columns:1fr}
    }
    @media (max-width:520px){
      .brand-text{font-size:18px}
      .brand-mark{width:38px;height:38px}
      h1{font-size:33px}
      .hero-stage{min-height:420px}
      .poster-main{width:88%}
      .show-card{padding:16px}
      .show-list li{align-items:flex-start;flex-direction:column;gap:4px}
      .entry-feature h3{font-size:25px}
      .entry-cards{gap:14px}
      .entry-card{min-height:auto;padding:20px}
      .latest-layout{gap:16px}
      .news-item{grid-template-columns:1fr}
      .news-thumb{aspect-ratio:16/9;min-height:auto}
      .feature-news h3{font-size:22px}
      .wall-text{padding:24px}
      .poster-card{min-height:280px}
      .proof-card strong{font-size:28px}
      .faq-question{padding:18px;font-size:16px}
      .faq-answer p{padding:0 18px 18px}
      .cta-panel:before,.cta-panel:after{display:none}
      .contact-form{padding:16px}
      .footer-bottom{align-items:flex-start;flex-direction:column}
    }

/* roulang page: article */
:root{
      --bg:#14110f;
      --bg-2:#1b1714;
      --panel:#211b17;
      --text:#241e1a;
      --muted:#74695f;
      --light:#fff7e9;
      --paper:#fff9f0;
      --paper-2:#f7f1e8;
      --amber:#f0a83a;
      --amber-2:#ffbd59;
      --red:#7a2634;
      --red-2:#9b2f3f;
      --border:#e7d7c3;
      --dark-border:rgba(255,247,233,.16);
      --shadow:0 24px 70px rgba(80,43,16,.16);
      --shadow-dark:0 28px 80px rgba(0,0,0,.32);
      --radius-xl:32px;
      --radius-lg:24px;
      --radius-md:18px;
      --radius-sm:12px;
      --container:1200px;
      --ease:all .25s 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;
      background:var(--paper-2);
      color:var(--text);
      line-height:1.78;
      min-width:320px;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    ul,ol{padding-left:0}
    button,input,textarea{font:inherit}
    button{border:0;cursor:pointer}
    input,textarea{outline:none}
    ::selection{background:rgba(240,168,58,.32);color:#1d130c}
    .container{width:min(var(--container),calc(100% - 40px));margin:0 auto}
    .site-header{
      position:fixed;
      top:0;
      left:0;
      width:100%;
      z-index:50;
      background:rgba(20,17,15,.78);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(255,247,233,.12);
      transition:var(--ease);
    }
    .site-header.scrolled{background:rgba(20,17,15,.96);box-shadow:0 14px 46px rgba(0,0,0,.25)}
    .nav-wrap{
      height:78px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:26px;
    }
    .brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      color:var(--light);
      font-weight:800;
      letter-spacing:.02em;
      white-space:nowrap;
    }
    .brand-mark{
      width:42px;
      height:42px;
      border-radius:50%;
      background:
        radial-gradient(circle at 65% 35%,var(--amber-2) 0 9px,transparent 10px),
        linear-gradient(135deg,var(--red),var(--amber));
      position:relative;
      box-shadow:0 0 0 6px rgba(240,168,58,.08),0 12px 30px rgba(240,168,58,.25);
      overflow:hidden;
      flex:0 0 auto;
    }
    .brand-mark:before,.brand-mark:after{
      content:"";
      position:absolute;
      left:7px;
      right:7px;
      height:4px;
      background:rgba(20,17,15,.45);
      border-radius:999px;
    }
    .brand-mark:before{top:12px}
    .brand-mark:after{bottom:12px}
    .brand-text{font-size:20px}
    .nav-menu{
      display:flex;
      align-items:center;
      justify-content:flex-end;
      gap:4px;
      list-style:none;
      margin:0 0 0 auto;
    }
    .nav-menu a{
      display:inline-flex;
      align-items:center;
      padding:10px 14px;
      color:rgba(255,247,233,.78);
      font-size:15px;
      font-weight:600;
      border-radius:999px;
      position:relative;
      transition:var(--ease);
    }
    .nav-menu a:hover,.nav-menu a.active{
      color:var(--amber-2);
      background:rgba(255,255,255,.06);
    }
    .nav-menu a.active:after{
      content:"";
      position:absolute;
      left:50%;
      bottom:3px;
      width:18px;
      height:3px;
      border-radius:999px;
      background:var(--amber);
      transform:translateX(-50%);
    }
    .nav-cta{margin-left:12px}
    .mobile-toggle{
      display:none;
      width:44px;
      height:44px;
      border-radius:14px;
      background:rgba(255,247,233,.08);
      color:var(--light);
      align-items:center;
      justify-content:center;
      border:1px solid rgba(255,247,233,.14);
    }
    .mobile-toggle span{
      width:20px;
      height:2px;
      background:currentColor;
      position:relative;
      display:block;
      border-radius:3px;
    }
    .mobile-toggle span:before,.mobile-toggle span:after{
      content:"";
      position:absolute;
      left:0;
      width:20px;
      height:2px;
      background:currentColor;
      border-radius:3px;
      transition:var(--ease);
    }
    .mobile-toggle span:before{top:-7px}
    .mobile-toggle span:after{top:7px}
    .mobile-toggle.open span{background:transparent}
    .mobile-toggle.open span:before{top:0;transform:rotate(45deg)}
    .mobile-toggle.open span:after{top:0;transform:rotate(-45deg)}
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:46px;
      padding:12px 20px;
      border-radius:999px;
      font-weight:800;
      font-size:15px;
      transition:var(--ease);
      border:1px solid transparent;
      white-space:nowrap;
    }
    .btn-primary{
      background:linear-gradient(135deg,var(--amber-2),var(--amber));
      color:#21160d;
      box-shadow:0 14px 30px rgba(240,168,58,.28);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(240,168,58,.36);color:#21160d}
    .btn-secondary{
      background:rgba(255,247,233,.08);
      color:var(--light);
      border-color:rgba(255,247,233,.22);
    }
    .btn-secondary:hover{transform:translateY(-2px);border-color:rgba(240,168,58,.7);color:var(--amber-2)}
    .btn-dark{
      background:var(--bg);
      color:var(--light);
      border-color:rgba(20,17,15,.08);
    }
    .btn-dark:hover{transform:translateY(-2px);background:#2a221d;color:var(--amber-2)}
    .btn-outline{
      color:var(--text);
      background:rgba(255,255,255,.5);
      border-color:var(--border);
    }
    .btn-outline:hover{transform:translateY(-2px);border-color:var(--amber);color:#7c4d10}
    a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{
      outline:3px solid rgba(255,189,89,.65);
      outline-offset:3px;
    }
    .article-hero{
      position:relative;
      padding:136px 0 78px;
      color:var(--light);
      overflow:hidden;
      background:
        linear-gradient(90deg,rgba(20,17,15,.96) 0%,rgba(20,17,15,.9) 48%,rgba(20,17,15,.68) 100%),
        url('/assets/images/backpic/back-2.webp') center/cover no-repeat;
    }
    .article-hero:before{
      content:"";
      position:absolute;
      inset:0;
      background:
        radial-gradient(circle at 76% 25%,rgba(255,189,89,.26),transparent 30%),
        linear-gradient(105deg,transparent 0 50%,rgba(240,168,58,.12) 52%,transparent 78%);
      pointer-events:none;
    }
    .article-hero:after{
      content:"";
      position:absolute;
      inset:0;
      opacity:.12;
      background-image:radial-gradient(rgba(255,247,233,.5) 1px,transparent 1px);
      background-size:4px 4px;
      mix-blend-mode:screen;
      pointer-events:none;
    }
    .article-hero-inner{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:minmax(0,1fr) 360px;
      gap:42px;
      align-items:end;
    }
    .breadcrumb{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      align-items:center;
      margin:0 0 22px;
      color:rgba(255,247,233,.66);
      font-size:14px;
    }
    .breadcrumb a{transition:var(--ease)}
    .breadcrumb a:hover{color:var(--amber-2);text-decoration:underline;text-underline-offset:4px}
    .breadcrumb .sep{opacity:.42}
    .article-kicker{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border-radius:999px;
      color:#2b1808;
      background:linear-gradient(135deg,var(--amber-2),var(--amber));
      font-size:14px;
      font-weight:800;
      box-shadow:0 10px 26px rgba(240,168,58,.2);
      margin-bottom:18px;
    }
    .article-kicker:before{
      content:"";
      width:8px;
      height:8px;
      border-radius:50%;
      background:#2b1808;
      box-shadow:12px 0 0 rgba(43,24,8,.46);
    }
    .article-title{
      margin:0;
      max-width:860px;
      font-size:clamp(32px,4.6vw,56px);
      line-height:1.16;
      font-weight:800;
      letter-spacing:-.02em;
    }
    .article-summary{
      max-width:760px;
      margin:22px 0 0;
      color:rgba(255,247,233,.78);
      font-size:17px;
      line-height:1.9;
    }
    .article-meta{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:24px;
    }
    .meta-pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border-radius:999px;
      border:1px solid rgba(255,247,233,.16);
      background:rgba(255,247,233,.07);
      color:rgba(255,247,233,.82);
      font-size:14px;
      font-weight:700;
    }
    .hero-cover-card{
      border:1px solid rgba(255,247,233,.18);
      background:rgba(33,27,23,.72);
      border-radius:var(--radius-xl);
      padding:14px;
      box-shadow:var(--shadow-dark);
      transform:rotate(1.5deg);
    }
    .hero-cover-card img{
      width:100%;
      aspect-ratio:4/5;
      object-fit:cover;
      border-radius:24px;
      filter:saturate(1.05) contrast(1.02);
    }
    .cover-caption{
      margin:14px 4px 4px;
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:12px;
      color:rgba(255,247,233,.78);
      font-size:14px;
      font-weight:700;
    }
    .cover-caption strong{color:var(--amber-2)}
    main{position:relative}
    .article-shell{
      padding:76px 0 88px;
    }
    .content-grid{
      display:grid;
      grid-template-columns:minmax(0,820px) minmax(260px,1fr);
      gap:42px;
      align-items:start;
    }
    .article-card{
      background:var(--paper);
      border:1px solid var(--border);
      border-radius:var(--radius-xl);
      box-shadow:var(--shadow);
      padding:40px;
      overflow:hidden;
    }
    .article-cover{
      margin:-16px -16px 34px;
      border-radius:26px;
      overflow:hidden;
      position:relative;
      background:var(--bg);
    }
    .article-cover img{
      width:100%;
      aspect-ratio:16/9;
      object-fit:cover;
      transition:transform .35s ease;
    }
    .article-cover:hover img{transform:scale(1.035)}
    .article-cover:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg,transparent 42%,rgba(20,17,15,.38));
      pointer-events:none;
    }
    .article-content{
      color:var(--text);
      font-size:17px;
      line-height:1.9;
      word-break:break-word;
    }
    .article-content h2{
      margin:42px 0 16px;
      font-size:30px;
      line-height:1.32;
      font-weight:800;
      color:#211914;
      position:relative;
      padding-left:16px;
    }
    .article-content h2:before{
      content:"";
      position:absolute;
      left:0;
      top:.24em;
      width:5px;
      height:1.08em;
      border-radius:999px;
      background:linear-gradient(180deg,var(--amber-2),var(--red-2));
    }
    .article-content h3{
      margin:32px 0 12px;
      font-size:23px;
      line-height:1.42;
      font-weight:800;
      color:#2d221d;
    }
    .article-content p{margin:0 0 20px}
    .article-content a{
      color:#98600e;
      font-weight:700;
      text-decoration:underline;
      text-decoration-thickness:1px;
      text-underline-offset:4px;
      transition:var(--ease);
    }
    .article-content a:hover{color:var(--red-2)}
    .article-content ul,.article-content ol{
      padding-left:1.25em;
      margin:0 0 22px;
    }
    .article-content li{margin:8px 0}
    .article-content blockquote{
      margin:30px 0;
      padding:22px 24px;
      border-left:5px solid var(--red-2);
      border-radius:18px;
      background:var(--paper-2);
      color:#473831;
      box-shadow:inset 0 0 0 1px rgba(231,215,195,.75);
    }
    .article-content img{
      width:auto;
      max-width:100%;
      height:auto;
      border-radius:22px;
      margin:30px auto 10px;
      box-shadow:0 18px 46px rgba(80,43,16,.14);
    }
    .article-content figure{margin:34px 0;text-align:center}
    .article-content figcaption{
      margin-top:10px;
      color:var(--muted);
      font-size:14px;
      line-height:1.6;
      text-align:center;
    }
    .article-content hr{
      border:0;
      height:1px;
      margin:34px 0;
      background:linear-gradient(90deg,transparent,var(--border),transparent);
    }
    .article-content table{
      width:100%;
      border-collapse:separate;
      border-spacing:0;
      min-width:620px;
      margin:24px 0;
      overflow:hidden;
      border:1px solid var(--border);
      border-radius:18px;
      background:#fffdf8;
    }
    .article-content th,.article-content td{
      padding:14px 16px;
      border-bottom:1px solid var(--border);
      border-right:1px solid var(--border);
      vertical-align:top;
    }
    .article-content th{
      background:#f2e4d2;
      color:#31231b;
      font-weight:800;
    }
    .article-content tr:last-child td{border-bottom:0}
    .article-content th:last-child,.article-content td:last-child{border-right:0}
    .article-content .table-wrap{
      width:100%;
      overflow-x:auto;
      -webkit-overflow-scrolling:touch;
    }
    .not-found-box{
      text-align:center;
      padding:42px 22px;
      border:1px dashed rgba(122,38,52,.34);
      background:linear-gradient(180deg,#fffdf8,var(--paper-2));
      border-radius:26px;
    }
    .not-found-box h2{
      margin:0 0 12px;
      padding:0;
      font-size:30px;
    }
    .not-found-box h2:before{display:none}
    .not-found-box p{color:var(--muted);margin-bottom:24px}
    .article-actions{
      display:flex;
      flex-wrap:wrap;
      gap:14px;
      padding-top:30px;
      margin-top:36px;
      border-top:1px solid var(--border);
    }
    .side-stack{
      position:sticky;
      top:100px;
      display:grid;
      gap:18px;
    }
    .side-card{
      background:var(--paper);
      border:1px solid var(--border);
      border-radius:var(--radius-lg);
      padding:24px;
      box-shadow:0 18px 48px rgba(80,43,16,.1);
    }
    .side-card.dark{
      background:
        linear-gradient(150deg,rgba(122,38,52,.34),transparent 55%),
        var(--bg-2);
      border-color:rgba(255,247,233,.14);
      color:var(--light);
      box-shadow:var(--shadow-dark);
      overflow:hidden;
      position:relative;
    }
    .side-card.dark:after{
      content:"";
      position:absolute;
      right:-38px;
      top:-44px;
      width:140px;
      height:140px;
      border-radius:50%;
      background:rgba(240,168,58,.14);
    }
    .side-card h2,.side-card h3{
      margin:0 0 14px;
      font-size:21px;
      line-height:1.35;
      font-weight:800;
    }
    .side-card p{
      margin:0 0 16px;
      color:var(--muted);
      font-size:15px;
    }
    .side-card.dark p{color:rgba(255,247,233,.72)}
    .tag-list{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin:0;
      list-style:none;
    }
    .tag-list a,.tag{
      display:inline-flex;
      align-items:center;
      padding:7px 11px;
      border-radius:999px;
      background:#f1e4d4;
      border:1px solid var(--border);
      color:#674218;
      font-size:13px;
      font-weight:800;
      transition:var(--ease);
    }
    .tag-list a:hover{border-color:var(--amber);background:#fff2dc;transform:translateY(-1px)}
    .mini-list{
      display:grid;
      gap:12px;
      margin:0;
      list-style:none;
    }
    .mini-item a{
      display:block;
      padding:14px;
      border-radius:18px;
      border:1px solid var(--border);
      background:rgba(255,255,255,.45);
      transition:var(--ease);
    }
    .mini-item a:hover{
      border-color:rgba(240,168,58,.75);
      background:#fffdf8;
      transform:translateY(-2px);
      box-shadow:0 12px 28px rgba(80,43,16,.1);
    }
    .mini-item strong{
      display:block;
      color:#2b211c;
      font-size:15px;
      line-height:1.55;
      transition:var(--ease);
    }
    .mini-item a:hover strong{color:#9a6110}
    .mini-meta{
      display:flex;
      gap:8px;
      flex-wrap:wrap;
      margin-top:8px;
      color:var(--muted);
      font-size:12px;
      font-weight:700;
    }
    .guide-strip{
      padding:0 0 78px;
    }
    .guide-panel{
      display:grid;
      grid-template-columns:1fr 1.1fr;
      gap:30px;
      align-items:center;
      border-radius:var(--radius-xl);
      padding:34px;
      background:
        linear-gradient(135deg,rgba(255,249,240,.96),rgba(247,241,232,.94)),
        url('/assets/images/backpic/back-3.jpg') center/cover no-repeat;
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .section-label{
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-bottom:12px;
      color:#7f5010;
      font-weight:800;
      font-size:14px;
    }
    .section-label:before{
      content:"";
      width:22px;
      height:8px;
      border-radius:999px;
      background:linear-gradient(90deg,var(--red-2),var(--amber));
    }
    .guide-panel h2,.faq-section h2,.contact-card h2{
      margin:0;
      font-size:clamp(25px,3vw,36px);
      line-height:1.25;
      font-weight:800;
      color:#241a14;
    }
    .guide-panel p{
      margin:14px 0 0;
      color:var(--muted);
      font-size:16px;
    }
    .guide-steps{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:14px;
    }
    .guide-step{
      padding:18px;
      border-radius:22px;
      background:rgba(255,255,255,.68);
      border:1px solid var(--border);
      transition:var(--ease);
    }
    .guide-step:hover{transform:translateY(-3px);border-color:var(--amber);box-shadow:0 14px 30px rgba(80,43,16,.1)}
    .guide-step span{
      display:inline-flex;
      width:34px;
      height:34px;
      align-items:center;
      justify-content:center;
      border-radius:50%;
      background:var(--bg);
      color:var(--amber-2);
      font-weight:900;
      margin-bottom:12px;
    }
    .guide-step h3{margin:0 0 8px;font-size:18px;font-weight:800}
    .guide-step p{margin:0;font-size:14px;line-height:1.65}
    .faq-section{
      padding:0 0 78px;
    }
    .faq-head{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:24px;
      margin-bottom:24px;
    }
    .faq-head p{
      max-width:620px;
      margin:0;
      color:var(--muted);
    }
    .faq-list{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:16px;
    }
    .faq-item{
      background:var(--paper);
      border:1px solid var(--border);
      border-radius:var(--radius-lg);
      overflow:hidden;
      box-shadow:0 14px 36px rgba(80,43,16,.08);
    }
    .faq-question{
      width:100%;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
      padding:20px 22px;
      background:transparent;
      color:var(--text);
      font-weight:800;
      text-align:left;
    }
    .faq-question i{
      width:28px;
      height:28px;
      border-radius:50%;
      background:#f1e4d4;
      position:relative;
      flex:0 0 auto;
      transition:var(--ease);
    }
    .faq-question i:before,.faq-question i:after{
      content:"";
      position:absolute;
      left:8px;
      right:8px;
      top:13px;
      height:2px;
      background:#8a5610;
      border-radius:3px;
    }
    .faq-question i:after{transform:rotate(90deg)}
    .faq-item.open .faq-question i{background:var(--amber)}
    .faq-item.open .faq-question i:after{transform:rotate(0)}
    .faq-answer{
      display:none;
      padding:0 22px 20px;
      color:var(--muted);
      font-size:15px;
      line-height:1.8;
    }
    .faq-item.open .faq-answer{display:block}
    .contact-section{
      padding:0 0 92px;
    }
    .contact-card{
      position:relative;
      overflow:hidden;
      display:grid;
      grid-template-columns:1.05fr .95fr;
      gap:34px;
      align-items:center;
      padding:42px;
      border-radius:var(--radius-xl);
      color:var(--light);
      background:
        linear-gradient(120deg,rgba(20,17,15,.98),rgba(27,23,20,.9)),
        url('/assets/images/backpic/back-1.jpg') center/cover no-repeat;
      box-shadow:var(--shadow-dark);
      border:1px solid rgba(255,247,233,.14);
    }
    .contact-card:before{
      content:"";
      position:absolute;
      inset:auto -80px -90px auto;
      width:280px;
      height:280px;
      border-radius:50%;
      background:rgba(240,168,58,.16);
      filter:blur(2px);
    }
    .contact-card > *{position:relative;z-index:1}
    .contact-card h2{color:var(--light)}
    .contact-card p{
      margin:14px 0 24px;
      color:rgba(255,247,233,.74);
      max-width:620px;
    }
    .contact-actions{
      display:flex;
      gap:14px;
      flex-wrap:wrap;
    }
    .contact-form{
      display:grid;
      gap:12px;
      padding:20px;
      border-radius:24px;
      border:1px solid rgba(255,247,233,.14);
      background:rgba(255,247,233,.08);
      backdrop-filter:blur(12px);
    }
    .field{
      width:100%;
      min-height:48px;
      border-radius:16px;
      border:1px solid rgba(255,247,233,.16);
      background:rgba(20,17,15,.32);
      color:var(--light);
      padding:12px 14px;
      transition:var(--ease);
    }
    .field::placeholder{color:rgba(255,247,233,.48)}
    .field:focus{border-color:var(--amber);box-shadow:0 0 0 4px rgba(240,168,58,.14)}
    textarea.field{min-height:96px;resize:vertical}
    .site-footer{
      background:var(--bg);
      color:rgba(255,247,233,.72);
      padding:66px 0 28px;
      border-top:1px solid rgba(255,247,233,.12);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.4fr .8fr .8fr .8fr;
      gap:32px;
      padding-bottom:36px;
    }
    .footer-brand p{
      margin:18px 0 0;
      max-width:390px;
      color:rgba(255,247,233,.64);
      font-size:15px;
    }
    .footer-col h3{
      margin:0 0 14px;
      color:var(--light);
      font-size:17px;
      font-weight:800;
    }
    .footer-links{
      margin:0;
      list-style:none;
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:rgba(255,247,233,.64);
      transition:var(--ease);
      font-size:15px;
    }
    .footer-links a:hover{color:var(--amber-2);padding-left:4px}
    .footer-bottom{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
      padding-top:24px;
      border-top:1px solid rgba(255,247,233,.12);
      color:rgba(255,247,233,.52);
      font-size:14px;
    }
    @media (max-width:1024px){
      .nav-wrap{gap:16px}
      .nav-menu a{padding:10px 10px}
      .article-hero-inner{grid-template-columns:1fr;align-items:start}
      .hero-cover-card{max-width:360px;transform:none}
      .content-grid{grid-template-columns:1fr}
      .side-stack{position:static;grid-template-columns:repeat(2,1fr)}
      .guide-panel,.contact-card{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1.2fr 1fr 1fr}
    }
    @media (max-width:768px){
      .container{width:min(100% - 28px,var(--container))}
      .nav-wrap{height:70px}
      .mobile-toggle{display:flex}
      nav{margin-left:auto}
      .nav-menu{
        position:absolute;
        top:70px;
        left:14px;
        right:14px;
        display:none;
        flex-direction:column;
        align-items:stretch;
        gap:6px;
        padding:14px;
        border-radius:22px;
        background:rgba(20,17,15,.98);
        border:1px solid rgba(255,247,233,.14);
        box-shadow:var(--shadow-dark);
      }
      .nav-menu.open{display:flex}
      .nav-menu a{justify-content:center;padding:13px 16px}
      .nav-cta{display:none}
      .article-hero{padding:112px 0 54px}
      .article-title{font-size:34px}
      .article-summary{font-size:16px}
      .hero-cover-card{display:none}
      .article-shell{padding:52px 0 64px}
      .article-card{padding:24px;border-radius:24px}
      .article-cover{margin:-6px -6px 26px;border-radius:22px}
      .article-content{font-size:16px}
      .article-content h2{font-size:25px}
      .article-content h3{font-size:20px}
      .side-stack{grid-template-columns:1fr}
      .guide-strip,.faq-section{padding-bottom:58px}
      .guide-panel{padding:24px;border-radius:24px}
      .guide-steps{grid-template-columns:1fr}
      .faq-head{display:block}
      .faq-head p{margin-top:12px}
      .faq-list{grid-template-columns:1fr}
      .contact-card{padding:26px;border-radius:24px}
      .contact-actions .btn{width:100%}
      .footer-grid{grid-template-columns:1fr 1fr}
      .footer-bottom{flex-direction:column;align-items:flex-start}
    }
    @media (max-width:520px){
      .brand-text{font-size:18px}
      .brand-mark{width:38px;height:38px}
      .article-title{font-size:30px;line-height:1.2}
      .article-meta{gap:8px}
      .meta-pill{font-size:13px;padding:7px 10px}
      .article-card{padding:18px}
      .article-actions .btn{width:100%}
      .side-card{padding:20px}
      .faq-question{padding:18px}
      .contact-form{padding:16px}
      .footer-grid{grid-template-columns:1fr}
    }

/* 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}
