/* roulang page: index */
:root{
  --red-900:#5e1313;
  --red:#8c1f1f;
  --red-700:#7a1a1a;
  --gold:#d4af37;
  --gold-light:#e8c87a;
  --gold-deep:#b8860b;
  --bg:#f7f2e7;
  --bg-alt:#efe6d5;
  --white:#fffdf8;
  --ink:#3a3428;
  --ink-soft:#8a8070;
  --line-gold:rgba(212,175,55,.42);
  --line-soft:rgba(140,31,31,.12);
  --r-sm:8px;
  --r:10px;
  --r-lg:16px;
  --sh1:0 2px 12px rgba(94,19,19,.07);
  --sh2:0 12px 32px rgba(94,19,19,.13);
  --sh3:0 24px 52px rgba(94,19,19,.22);
  --ease:cubic-bezier(.22,.61,.36,1);
  --serif:"Noto Serif SC","Source Han Serif SC",SimSun,"Songti SC",serif;
  --sans:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Source Han Sans SC",sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--sans);
  font-size:15px;
  line-height:1.8;
  color:var(--ink);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4{font-family:var(--serif);font-weight:700;letter-spacing:.5px;}
a{color:inherit;text-decoration:none;transition:color .25s var(--ease);}
a:hover{color:var(--gold-deep);}
img{max-width:100%;display:block;}
ul{margin:0;padding:0;list-style:none;}
button{font-family:inherit;}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px;}
.rl-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 22px;}

/* ============ HEADER / NAV ============ */
.site-header{
  position:sticky;top:0;z-index:1040;
  background:linear-gradient(180deg,#822020,#8c1f1f 55%,#7c1b1b);
  border-bottom:1px solid rgba(212,175,55,.42);
  box-shadow:0 6px 22px rgba(60,10,10,.28);
}
.header-inner{display:flex;align-items:center;gap:26px;height:68px;}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0;}
.brand-mark{
  width:38px;height:38px;border-radius:10px;
  background:linear-gradient(150deg,#e8c87a,#d4af37 55%,#b8860b);
  display:grid;place-items:center;
  color:#5e1313;font-family:var(--serif);font-size:19px;font-weight:700;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 4px 12px rgba(0,0,0,.22);
}
.brand-text{display:flex;flex-direction:column;line-height:1.15;}
.brand-text strong{color:#fff;font-family:var(--serif);font-size:18px;letter-spacing:1.5px;}
.brand-text em{font-style:normal;color:var(--gold-light);font-size:11px;letter-spacing:3px;}
.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto;}
.nav-link{
  position:relative;padding:9px 15px;font-size:15px;color:#f2e3c9;border-radius:8px;
  transition:color .25s var(--ease),background .25s var(--ease);
}
.nav-link::after{
  content:"";position:absolute;left:15px;right:15px;bottom:3px;height:2px;
  background:linear-gradient(90deg,var(--gold-deep),var(--gold),var(--gold-light));
  border-radius:2px;transform:scaleX(0);transform-origin:center;
  transition:transform .3s var(--ease);
}
.nav-link:hover{color:var(--gold-light);background:rgba(255,255,255,.07);}
.nav-link.active{color:var(--gold-light);}
.nav-link.active::after{transform:scaleX(1);}
.header-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.nav-toggle{
  display:none;width:42px;height:38px;border-radius:8px;cursor:pointer;
  border:1px solid rgba(212,175,55,.5);background:rgba(255,255,255,.07);
  padding:0;place-items:center;
}
.nav-toggle span{display:block;width:18px;height:2px;background:var(--gold-light);margin:3px auto;border-radius:2px;transition:transform .3s var(--ease);}

/* ============ BUTTONS ============ */
.btn-gold{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 26px;border:0;border-radius:8px;cursor:pointer;
  background:linear-gradient(160deg,#e2c257,#d4af37 45%,#b8860b);
  color:#fffdf3;font-size:15px;font-weight:700;letter-spacing:.8px;
  text-shadow:0 1px 2px rgba(90,55,0,.45);
  box-shadow:0 6px 18px rgba(184,134,11,.38);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),filter .25s var(--ease);
}
.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.07);color:#fffdf3;box-shadow:0 12px 26px rgba(184,134,11,.48);}
.btn-gold:active{transform:translateY(0);}
.btn-sm{padding:9px 20px;font-size:14px;}
.btn-line{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 24px;border-radius:8px;cursor:pointer;
  background:var(--white);border:1px solid var(--gold);
  color:var(--gold-deep);font-size:15px;font-weight:700;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;
}
.btn-line:hover{transform:translateY(-2px);background:#fffaf0;color:var(--red);box-shadow:0 10px 24px rgba(184,134,11,.22);}

/* ============ HERO ============ */
.hero{
  position:relative;overflow:hidden;
  background:linear-gradient(140deg,#8c1f1f,#5e1313 78%);
  color:#fff;padding:92px 0 84px;
}
.hero-bg{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:.36;filter:saturate(.85) contrast(1.05);
}
.hero-veil{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse at 50% 22%,rgba(180,60,60,.32),transparent 62%),
    linear-gradient(180deg,rgba(70,14,14,.72),rgba(48,8,8,.9));
}
.hero-veil::after{
  content:"";position:absolute;inset:0;
  background-image:
    repeating-linear-gradient(45deg,rgba(212,175,55,.05) 0 2px,transparent 2px 16px);
  opacity:.7;
}
.hero-inner{position:relative;z-index:3;max-width:880px;margin:0 auto;text-align:center;}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  padding:7px 18px;border-radius:999px;
  border:1px solid rgba(212,175,55,.55);background:rgba(212,175,55,.12);
  color:var(--gold-light);font-size:13px;letter-spacing:2px;
}
.hero-eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--gold);display:inline-block;}
.hero h1{
  margin:22px 0 0;
  font-size:clamp(27px,4.2vw,42px);
  line-height:1.32;color:#fff;
  text-shadow:0 3px 18px rgba(0,0,0,.4);
}
.hero h1 .hl{
  color:var(--gold-light);
  background:linear-gradient(180deg,transparent 68%,rgba(212,175,55,.28) 68%);
}
.hero-lead{
  margin:20px auto 0;max-width:760px;
  font-size:16px;line-height:1.95;color:#f0e2cd;
}
.hero-actions{
  margin-top:34px;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;
}
.play-wrap{display:inline-flex;align-items:center;gap:14px;}
.play-btn{
  width:58px;height:58px;border-radius:50%;cursor:pointer;border:2px solid var(--gold);
  background:rgba(255,255,255,.1);display:grid;place-items:center;
  transition:transform .3s var(--ease),background .3s var(--ease),box-shadow .3s var(--ease);
  animation:pulseRing 2.8s infinite;
}
.play-btn span{
  display:block;width:0;height:0;margin-left:5px;
  border-left:15px solid var(--gold-light);
  border-top:9px solid transparent;border-bottom:9px solid transparent;
}
.play-btn:hover{transform:scale(1.08);background:rgba(212,175,55,.24);}
.play-label{font-size:14px;color:var(--gold-light);letter-spacing:1px;}
@keyframes pulseRing{
  0%{box-shadow:0 0 0 0 rgba(212,175,55,.5);}
  70%{box-shadow:0 0 0 18px rgba(212,175,55,0);}
  100%{box-shadow:0 0 0 0 rgba(212,175,55,0);}
}
.hero-stats{
  margin-top:46px;display:flex;align-items:center;justify-content:center;
  gap:0;flex-wrap:wrap;
  border-top:1px solid rgba(212,175,55,.3);padding-top:26px;
}
.hero-stat{padding:0 30px;text-align:center;}
.hero-stat + .hero-stat{border-left:1px solid rgba(212,175,55,.24);}
.hero-stat b{
  display:block;font-family:var(--serif);font-size:27px;color:var(--gold);line-height:1.1;
}
.hero-stat small{display:block;margin-top:6px;font-size:12.5px;color:#d9c9a8;letter-spacing:1px;}

/* ============ SECTION BASE ============ */
.sec{padding:74px 0;position:relative;}
.sec-alt{background:var(--bg-alt);}
.sec-dark{
  background:linear-gradient(135deg,#8c1f1f,#5e1313);color:#fff;
}
.sec-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:26px;
  margin-bottom:34px;flex-wrap:wrap;
}
.sec-title{
  position:relative;padding-left:18px;margin:0;
  font-size:clamp(22px,2.5vw,30px);color:var(--red-900);line-height:1.3;
}
.sec-title::before{
  content:"";position:absolute;left:0;top:8px;bottom:8px;width:5px;border-radius:3px;
  background:linear-gradient(180deg,var(--gold-light),var(--gold-deep));
}
.sec-dark .sec-title{color:#fff;}
.sec-sub{margin:14px 0 0;max-width:780px;color:var(--ink-soft);font-size:15px;line-height:1.9;}
.sec-dark .sec-sub{color:#e6d3b6;}
.sec-more{
  display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
  color:var(--gold-deep);font-size:14.5px;font-weight:700;
}
.sec-more::after{content:"›";font-size:18px;line-height:1;transform:translateY(-1px);}
.sec-more:hover{color:var(--red);}
.sec-dark .sec-more{color:var(--gold-light);}

/* ============ CARD GRID ============ */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(248px,1fr));gap:22px;}
.g-card{
  position:relative;background:var(--white);
  border:1px solid var(--line-gold);border-radius:var(--r);
  padding:38px 24px 26px;box-shadow:var(--sh1);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.g-card:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:var(--sh2);}
.seal{
  position:absolute;top:-1px;left:-1px;
  width:46px;height:46px;border-radius:12px 0 14px 0;
  background:linear-gradient(145deg,#a52727,#8c1f1f);
  border-right:1px solid var(--gold);border-bottom:1px solid var(--gold);
  color:var(--gold-light);font-family:var(--serif);font-size:17px;font-weight:700;
  display:grid;place-items:center;letter-spacing:0;
  box-shadow:2px 2px 10px rgba(94,19,19,.18);
}
.g-card h3{margin:0 0 10px;font-size:18px;color:var(--red-900);}
.g-card p{margin:0;font-size:14.5px;line-height:1.85;color:var(--ink-soft);}
.card-tag{
  display:inline-block;margin-top:16px;padding:4px 12px;border-radius:999px;
  background:rgba(212,175,55,.14);border:1px solid rgba(212,175,55,.45);
  color:var(--gold-deep);font-size:12.5px;letter-spacing:.6px;
}

/* ============ STAT BAND ============ */
.stat-band{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
  padding:38px 26px;border-radius:var(--r-lg);
  background:linear-gradient(130deg,#8c1f1f,#5e1313);
  border:1px solid rgba(212,175,55,.42);
  box-shadow:var(--sh3);position:relative;overflow:hidden;
}
.stat-band::before{
  content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(45deg,rgba(212,175,55,.06) 0 2px,transparent 2px 18px);
  pointer-events:none;
}
.stat-item{text-align:center;position:relative;z-index:1;}
.stat-item + .stat-item{border-left:1px solid rgba(212,175,55,.28);}
.stat-num{
  font-family:var(--serif);font-size:clamp(28px,3.4vw,38px);
  color:var(--gold);font-weight:700;line-height:1.1;
}
.stat-num sup{font-size:14px;color:var(--gold-light);margin-left:2px;}
.stat-label{margin-top:8px;font-size:13.5px;color:#e5d3b4;letter-spacing:1px;}

/* ============ STEPS ============ */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.step{
  position:relative;background:var(--white);
  border:1px solid var(--line-gold);border-radius:var(--r);
  padding:34px 22px 24px;box-shadow:var(--sh1);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.step:hover{transform:translateY(-4px);box-shadow:var(--sh2);}
.step-num{
  position:absolute;top:-16px;left:22px;
  width:36px;height:36px;border-radius:50%;
  background:linear-gradient(150deg,#e2c257,#b8860b);
  color:#4a2f04;font-family:var(--serif);font-weight:700;font-size:16px;
  display:grid;place-items:center;
  box-shadow:0 6px 14px rgba(184,134,11,.38);
}
.step h3{margin:6px 0 8px;font-size:17px;color:var(--red-900);}
.step p{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.85;}

/* ============ STREAM + HOT ============ */
.stream-list{display:flex;flex-direction:column;gap:16px;}
.stream-item{
  display:flex;gap:16px;align-items:flex-start;
  background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r);
  padding:16px;box-shadow:var(--sh1);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.stream-item:hover{transform:translateY(-3px);box-shadow:var(--sh2);border-color:var(--gold);}
.stream-item img{
  width:118px;height:86px;object-fit:cover;border-radius:var(--r-sm);
  flex-shrink:0;border:1px solid rgba(212,175,55,.35);
}
.stream-body h3{margin:0 0 6px;font-size:16.5px;color:var(--red-900);line-height:1.45;}
.stream-body p{margin:0;font-size:13.8px;color:var(--ink-soft);line-height:1.75;}
.tag{
  display:inline-block;margin-bottom:7px;padding:2px 10px;border-radius:4px;
  background:rgba(140,31,31,.08);color:var(--red);
  font-size:12px;letter-spacing:.6px;
}
.hot-panel{
  background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r-lg);
  padding:26px 22px;box-shadow:var(--sh1);height:100%;
}
.hot-panel h3{
  margin:0 0 16px;font-size:18px;color:var(--red-900);
  padding-bottom:12px;border-bottom:1px dashed rgba(212,175,55,.55);
}
.hot-item{
  display:flex;gap:12px;align-items:flex-start;
  padding:11px 0;border-bottom:1px dashed rgba(140,31,31,.1);
}
.hot-item:last-of-type{border-bottom:0;}
.hot-rank{
  flex-shrink:0;width:24px;height:24px;border-radius:6px;
  display:grid;place-items:center;font-size:13px;font-weight:700;
  background:rgba(140,31,31,.08);color:var(--red);
}
.hot-item:nth-child(2) .hot-rank,
.hot-item:nth-child(3) .hot-rank,
.hot-item:nth-child(4) .hot-rank{
  background:linear-gradient(150deg,#e2c257,#b8860b);color:#4a2f04;
}
.hot-item p{margin:0;font-size:14px;color:var(--ink);line-height:1.65;}
.channel-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;}
.chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;border-radius:999px;
  border:1px solid var(--line-gold);background:rgba(212,175,55,.08);
  color:var(--red-900);font-size:13.5px;font-weight:700;
  transition:background .25s var(--ease),transform .25s var(--ease),color .25s;
}
.chip:hover{background:var(--gold);color:#4a2f04;transform:translateY(-2px);}

/* ============ TOPIC STRIP ============ */
.topic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(196px,1fr));gap:18px;}
.topic-card{
  position:relative;border-radius:var(--r);overflow:hidden;
  border:1px solid var(--line-gold);background:var(--white);
  box-shadow:var(--sh1);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.topic-card:hover{transform:translateY(-4px);box-shadow:var(--sh2);}
.topic-card img{width:100%;height:112px;object-fit:cover;}
.topic-body{padding:16px 18px 20px;}
.topic-body h3{margin:0 0 7px;font-size:16px;color:var(--red-900);}
.topic-body p{margin:0;font-size:13.5px;color:var(--ink-soft);line-height:1.7;}

/* ============ NEWS LIST ============ */
.news-list{
  background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r-lg);
  padding:8px 26px;box-shadow:var(--sh1);
}
.news-item{
  display:flex;align-items:center;gap:20px;
  padding:20px 0;border-bottom:1px dashed rgba(140,31,31,.14);
}
.news-item:last-child{border-bottom:0;}
.news-date{
  flex-shrink:0;font-family:var(--serif);font-size:17px;color:var(--gold-deep);
  font-weight:700;letter-spacing:.5px;width:74px;
}
.news-main{flex:1;min-width:0;}
.news-main h3{margin:0 0 5px;font-size:16.5px;color:var(--red-900);}
.news-main p{margin:0;font-size:13.8px;color:var(--ink-soft);line-height:1.75;}
.news-state{
  flex-shrink:0;padding:4px 12px;border-radius:999px;font-size:12.5px;
  background:rgba(140,31,31,.08);color:var(--red);border:1px solid rgba(140,31,31,.16);
}
.news-state.is-new{background:rgba(212,175,55,.16);color:var(--gold-deep);border-color:rgba(212,175,55,.5);}

/* ============ SCENE MATRIX ============ */
.scene-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;}
.scene{
  background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r);
  padding:26px 22px;box-shadow:var(--sh1);position:relative;overflow:hidden;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.scene::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(180deg,var(--gold-light),var(--gold-deep));
  opacity:.8;
}
.scene:hover{transform:translateY(-4px);box-shadow:var(--sh2);}
.scene h3{margin:0 0 9px;font-size:17px;color:var(--red-900);padding-left:6px;}
.scene p{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.85;padding-left:6px;}

/* ============ CALENDAR ============ */
.calendar{
  border:1px solid var(--line-gold);border-radius:var(--r-lg);
  background:var(--white);box-shadow:var(--sh1);overflow:hidden;
}
.calendar-row{
  display:flex;align-items:center;gap:18px;padding:18px 26px;
  border-bottom:1px dashed rgba(140,31,31,.14);
  transition:background .25s var(--ease);
}
.calendar-row:last-child{border-bottom:0;}
.calendar-row:hover{background:rgba(212,175,55,.07);}
.cal-date{
  flex-shrink:0;width:62px;text-align:center;border-right:1px solid rgba(212,175,55,.45);
  padding-right:16px;
}
.cal-date b{display:block;font-family:var(--serif);font-size:19px;color:var(--red-900);line-height:1.2;}
.cal-date span{font-size:12px;color:var(--ink-soft);letter-spacing:1px;}
.cal-body{flex:1;min-width:0;}
.cal-body h3{margin:0 0 4px;font-size:16px;color:var(--red-900);}
.cal-body p{margin:0;font-size:13.5px;color:var(--ink-soft);line-height:1.7;}
.cal-state{
  flex-shrink:0;font-size:12.5px;padding:4px 12px;border-radius:999px;
  background:rgba(140,31,31,.08);color:var(--red);border:1px solid rgba(140,31,31,.16);
}
.cal-state.is-done{background:rgba(212,175,55,.16);color:var(--gold-deep);border-color:rgba(212,175,55,.5);}

/* ============ MYTH ============ */
.myth-list{display:grid;gap:18px;}
.myth{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border:1px solid var(--line-gold);border-radius:var(--r);
  background:var(--white);box-shadow:var(--sh1);overflow:hidden;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.myth:hover{transform:translateY(-3px);box-shadow:var(--sh2);}
.myth-wrong{padding:24px 24px 24px 28px;position:relative;}
.myth-wrong::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(180deg,#b45a5a,#8c1f1f);opacity:.65;
}
.myth-right{
  padding:24px 28px 24px 26px;background:rgba(212,175,55,.09);
  border-left:1px dashed rgba(212,175,55,.6);
}
.myth-label{
  display:inline-block;margin-bottom:9px;padding:2px 10px;border-radius:4px;
  font-size:12px;letter-spacing:1px;
}
.myth-wrong .myth-label{background:rgba(140,31,31,.1);color:var(--red);}
.myth-right .myth-label{background:rgba(184,134,11,.18);color:var(--gold-deep);}
.myth p{margin:0;font-size:14.2px;line-height:1.85;color:var(--ink-soft);}
.myth h3{margin:0 0 8px;font-size:15.5px;color:var(--red-900);}

/* ============ VOICES ============ */
.voice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px;}
.voice{
  position:relative;background:var(--white);border:1px solid var(--line-gold);
  border-radius:var(--r);padding:26px 24px 22px;box-shadow:var(--sh1);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.voice:hover{transform:translateY(-4px);box-shadow:var(--sh2);}
.voice::before{
  content:"“";position:absolute;top:8px;right:20px;
  font-family:var(--serif);font-size:52px;line-height:1;color:rgba(212,175,55,.32);
}
.voice p{margin:0 0 16px;font-size:14.2px;line-height:1.9;color:var(--ink);}
.voice-by{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink-soft);}
.voice-by i{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-style:normal;
  background:linear-gradient(150deg,#e2c257,#b8860b);color:#4a2f04;font-weight:700;font-size:13px;
}

/* ============ AUDIT ============ */
.audit-wrap{
  display:grid;grid-template-columns:1.05fr 1fr;gap:34px;align-items:center;
}
.audit-visual{
  position:relative;border-radius:var(--r-lg);overflow:hidden;
  border:2px solid rgba(212,175,55,.6);box-shadow:var(--sh3);
}
.audit-visual img{width:100%;height:340px;object-fit:cover;}
.audit-visual::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(94,19,19,.16),rgba(94,19,19,.52));
}
.audit-list{display:grid;gap:14px;margin-top:22px;}
.audit-item{
  display:flex;gap:14px;align-items:flex-start;
  padding:16px 20px;border-radius:var(--r);
  background:rgba(255,253,248,.09);
  border:1px solid rgba(212,175,55,.36);
  transition:background .25s var(--ease),transform .25s var(--ease);
}
.audit-item:hover{background:rgba(255,253,248,.16);transform:translateX(4px);}
.audit-tick{
  flex-shrink:0;width:22px;height:22px;border-radius:50%;margin-top:3px;
  background:linear-gradient(150deg,#e2c257,#b8860b);position:relative;
}
.audit-tick::after{
  content:"";position:absolute;left:6px;top:8px;width:9px;height:5px;
  border-left:2px solid #4a2f04;border-bottom:2px solid #4a2f04;
  transform:rotate(-45deg);
}
.audit-item h3{margin:0 0 4px;font-size:15.5px;color:#fff;}
.audit-item p{margin:0;font-size:13.5px;color:#e2d2b6;line-height:1.75;}

/* ============ PARTNERS ============ */
.partner-wall{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));
  gap:16px;
}
.partner{
  display:flex;align-items:center;justify-content:center;gap:9px;
  padding:20px 14px;border-radius:var(--r);
  background:var(--white);border:1px solid var(--line-gold);
  color:var(--red-900);font-size:14.5px;font-weight:700;letter-spacing:.5px;
  box-shadow:var(--sh1);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease);
}
.partner:hover{transform:translateY(-3px);background:#fffaf0;box-shadow:var(--sh2);}
.partner i{
  width:8px;height:8px;border-radius:2px;background:var(--gold);
  display:inline-block;transform:rotate(45deg);
}

/* ============ FAQ ============ */
.faq-list{max-width:920px;margin:0 auto;}
.faq-item{
  background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r);
  margin-bottom:14px;box-shadow:var(--sh1);overflow:hidden;
  transition:box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.faq-item[open]{border-color:var(--gold);box-shadow:var(--sh2);}
.faq-item summary{
  list-style:none;cursor:pointer;position:relative;
  padding:19px 58px 19px 24px;
  font-family:var(--serif);font-size:16.5px;font-weight:700;color:var(--red-900);
  transition:color .25s var(--ease);
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary:hover{color:var(--gold-deep);}
.faq-item summary::after{
  content:"";position:absolute;right:24px;top:50%;
  width:9px;height:9px;
  border-right:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);
  transform:translateY(-70%) rotate(45deg);
  transition:transform .3s var(--ease);
}
.faq-item[open] summary::after{transform:translateY(-30%) rotate(-135deg);}
.faq-body{padding:0 24px 22px;font-size:14.5px;line-height:1.9;color:var(--ink-soft);}

/* ============ CTA BAND ============ */
.cta-band{
  position:relative;overflow:hidden;
  background:linear-gradient(130deg,#8c1f1f,#5e1313);
  padding:70px 0;
}
.cta-bg{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22;
}
.cta-mask{
  position:absolute;inset:0;
  background:radial-gradient(ellipse at 30% 40%,rgba(212,175,55,.16),transparent 60%),
             linear-gradient(180deg,rgba(72,14,14,.7),rgba(46,8,8,.9));
}
.cta-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center;}
.cta-copy h2{margin:0 0 14px;font-size:clamp(23px,2.7vw,31px);color:#fff;line-height:1.35;}
.cta-copy p{margin:0;font-size:15px;line-height:1.95;color:#ecdcc0;}
.sub-form{
  background:rgba(255,253,248,.08);
  border:1px solid rgba(212,175,55,.5);border-radius:var(--r-lg);
  padding:28px 26px;backdrop-filter:blur(4px);
}
.sub-form h3{margin:0 0 8px;font-size:17px;color:var(--gold-light);}
.sub-form .form-tip{margin:0 0 16px;font-size:13.5px;color:#dbc9a9;line-height:1.7;}
.sub-row{display:flex;gap:10px;flex-wrap:wrap;}
.sub-row input{
  flex:1;min-width:180px;padding:12px 16px;border-radius:8px;
  border:1px solid rgba(212,175,55,.55);
  background:rgba(255,253,248,.95);color:var(--ink);font-size:14.5px;
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease);
}
.sub-row input::placeholder{color:#a89c88;}
.sub-row input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.28);}
.sub-note{margin:14px 0 0;font-size:12.5px;color:#c9b795;line-height:1.7;}

/* ============ FOOTER ============ */
.site-footer{
  background:linear-gradient(180deg,#6b1717,#5e1313);
  border-top:1px solid var(--gold);color:#e6d6ba;padding:56px 0 0;
}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:40px;}
.footer-brand{display:flex;align-items:center;gap:11px;margin-bottom:16px;}
.footer-brand .brand-mark{width:34px;height:34px;font-size:17px;}
.footer-brand strong{color:#fff;font-family:var(--serif);font-size:17px;letter-spacing:1.2px;}
.footer-col p{margin:0 0 12px;font-size:13.8px;line-height:1.9;color:#cdbca0;}
.footer-col h3{
  margin:0 0 16px;font-size:15px;color:var(--gold-light);
  padding-bottom:10px;border-bottom:1px solid rgba(212,175,55,.28);letter-spacing:1px;
}
.footer-links li{margin-bottom:10px;}
.footer-links a{font-size:13.8px;color:#d8c8ac;transition:color .25s var(--ease),padding-left .25s var(--ease);}
.footer-links a:hover{color:var(--gold-light);padding-left:4px;}
.footer-bottom{
  border-top:1px solid rgba(212,175,55,.2);
  padding:20px 0 26px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-size:12.8px;color:#bfae92;
}
.footer-bottom span{line-height:1.8;}

/* ============ MODAL ============ */
.demo-modal{
  border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--gold);
  background:var(--white);box-shadow:var(--sh3);
}
.demo-modal .modal-header{
  background:linear-gradient(120deg,#8c1f1f,#5e1313);
  color:#fff;border-bottom:1px solid rgba(212,175,55,.5);padding:16px 22px;
}
.demo-modal .modal-title{font-size:17px;color:var(--gold-light);margin:0;}
.modal-close{
  width:32px;height:32px;border-radius:8px;border:1px solid rgba(212,175,55,.6);
  background:rgba(255,255,255,.08);color:var(--gold-light);font-size:18px;line-height:1;
  cursor:pointer;transition:background .25s var(--ease);
}
.modal-close:hover{background:rgba(212,175,55,.28);}
.demo-modal .modal-body{padding:0;}
.demo-modal .modal-body img{width:100%;height:260px;object-fit:cover;}
.demo-modal .modal-body .demo-text{padding:20px 24px 26px;font-size:14.5px;line-height:1.9;color:var(--ink-soft);}
.demo-modal .modal-body .demo-text strong{color:var(--red-900);}

/* ============ RESPONSIVE ============ */
@media (max-width:1024px){
  .header-inner{gap:14px;}
  .nav-link{padding:8px 10px;font-size:14px;}
  .sec{padding:60px 0;}
  .steps{grid-template-columns:repeat(2,1fr);}
  .stat-band{grid-template-columns:repeat(2,1fr);gap:24px;}
  .stat-item:nth-child(3){border-left:0;}
  .audit-wrap{grid-template-columns:1fr;gap:28px;}
  .cta-inner{grid-template-columns:1fr;gap:30px;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:30px;}
}
@media (max-width:860px){
  .nav-toggle{display:grid;}
  .nav-links{
    position:fixed;top:68px;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:linear-gradient(180deg,#7a1a1a,#6b1717);
    padding:10px 22px 22px;
    border-bottom:1px solid rgba(212,175,55,.45);
    box-shadow:0 16px 30px rgba(40,6,6,.4);
    transform:translateY(-10px);opacity:0;pointer-events:none;
    transition:opacity .3s var(--ease),transform .3s var(--ease);
  }
  .nav-links.is-open{opacity:1;transform:none;pointer-events:auto;}
  .nav-link{padding:13px 6px;font-size:15px;border-bottom:1px solid rgba(212,175,55,.16);}
  .nav-link::after{left:6px;right:auto;width:34px;bottom:6px;}
  .hero{padding:70px 0 64px;}
  .hero-stat{padding:0 18px;}
  .myth{grid-template-columns:1fr;}
  .myth-right{border-left:0;border-top:1px dashed rgba(212,175,55,.6);}
}
@media (max-width:520px){
  .rl-wrap{padding:0 16px;}
  .sec{padding:48px 0;}
  .brand-text strong{font-size:16px;letter-spacing:.8px;}
  .brand-text em{font-size:10px;letter-spacing:2px;}
  .brand-mark{width:34px;height:34px;font-size:17px;}
  .header-inner{height:62px;}
  .nav-links{top:62px;}
  .hero h1{font-size:24px;}
  .hero-lead{font-size:15px;}
  .hero-actions{flex-direction:column;gap:14px;}
  .btn-gold,.btn-line{width:100%;}
  .hero-stats{gap:0;}
  .hero-stat{width:50%;padding:12px 8px;}
  .hero-stat + .hero-stat{border-left:0;}
  .hero-stat:nth-child(even){border-left:1px solid rgba(212,175,55,.24);}
  .steps{grid-template-columns:1fr;}
  .stat-band{grid-template-columns:1fr;padding:28px 20px;}
  .stat-item + .stat-item{border-left:0;border-top:1px solid rgba(212,175,55,.24);padding-top:18px;}
  .stream-item{flex-direction:column;}
  .stream-item img{width:100%;height:150px;}
  .news-list{padding:4px 18px;}
  .news-item{flex-wrap:wrap;gap:10px;}
  .news-date{width:auto;}
  .calendar-row{flex-wrap:wrap;padding:16px 18px;gap:10px;}
  .cal-date{width:auto;border-right:0;border-bottom:1px solid rgba(212,175,55,.45);padding:0 0 8px 0;}
  .footer-grid{grid-template-columns:1fr;}
  .footer-bottom{flex-direction:column;}
  .sub-form{padding:22px 18px;}
  .audit-visual img{height:210px;}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none !important;transition:none !important;}
  html{scroll-behavior:auto;}
}

/* roulang page: category1 */
:root{
 --red-900:#5e1313;
 --red:#8c1f1f;
 --red-700:#7a1a1a;
 --gold:#d4af37;
 --gold-light:#e8c87a;
 --gold-deep:#b8860b;
 --bg:#f7f2e7;
 --bg-alt:#efe6d5;
 --white:#fffdf8;
 --ink:#3a3428;
 --ink-soft:#8a8070;
 --line-gold:rgba(212,175,55,.42);
 --line-soft:rgba(140,31,31,.12);
 --r-sm:8px;
 --r:10px;
 --r-lg:16px;
 --sh1:0 2px 12px rgba(94,19,19,.07);
 --sh2:0 12px 32px rgba(94,19,19,.13);
 --sh3:0 24px 52px rgba(94,19,19,.22);
 --ease:cubic-bezier(.22,.61,.36,1);
 --serif:"Noto Serif SC","Source Han Serif SC",SimSun,"Songti SC",serif;
 --sans:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Source Han Sans SC",sans-serif;
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
 margin:0;
 font-family:var(--sans);
 font-size:15px;
 line-height:1.8;
 color:var(--ink);
 background:var(--bg);
 -webkit-font-smoothing:antialiased;
 text-rendering:optimizeLegibility;
}
h1,h2,h3,h4,h5{font-family:var(--serif);color:var(--red-900);margin:0;font-weight:700;}
p{margin:0 0 1em;}
p:last-child{margin-bottom:0;}
ul,ol{margin:0;padding:0;list-style:none;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;transition:color .25s var(--ease);}
a:hover{color:var(--gold-deep);}
button{font-family:inherit;}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px;}
.rl-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 20px;}

/* ============ HEADER / NAV ============ */
.site-header{
 position:sticky;top:0;z-index:1040;
 background:linear-gradient(180deg,#822020,#8c1f1f 55%,#7c1b1b);
 border-bottom:1px solid rgba(212,175,55,.42);
 box-shadow:0 6px 22px rgba(60,10,10,.28);
}
.header-inner{display:flex;align-items:center;gap:26px;height:68px;}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0;}
.brand-mark{
 width:38px;height:38px;border-radius:10px;
 background:linear-gradient(150deg,#e8c87a,#d4af37 55%,#b8860b);
 display:grid;place-items:center;
 color:#5e1313;font-family:var(--serif);font-size:19px;font-weight:700;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 4px 12px rgba(0,0,0,.22);
}
.brand-text{display:flex;flex-direction:column;line-height:1.15;}
.brand-text strong{color:#fff;font-family:var(--serif);font-size:18px;letter-spacing:1.5px;}
.brand-text em{font-style:normal;color:var(--gold-light);font-size:11px;letter-spacing:3px;}
.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto;}
.nav-link{
 position:relative;padding:9px 15px;font-size:15px;color:#f2e3c9;border-radius:8px;
 transition:color .25s var(--ease),background .25s var(--ease);
}
.nav-link::after{
 content:"";position:absolute;left:15px;right:15px;bottom:3px;height:2px;
 background:linear-gradient(90deg,var(--gold-deep),var(--gold),var(--gold-light));
 border-radius:2px;transform:scaleX(0);transform-origin:center;
 transition:transform .3s var(--ease);
}
.nav-link:hover{color:var(--gold-light);background:rgba(255,255,255,.07);}
.nav-link.active{color:var(--gold-light);}
.nav-link.active::after{transform:scaleX(1);}
.header-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.nav-toggle{
 display:none;width:42px;height:38px;border-radius:8px;cursor:pointer;
 border:1px solid rgba(212,175,55,.5);background:rgba(255,255,255,.07);
 padding:0;place-items:center;
}
.nav-toggle span{display:block;width:18px;height:2px;background:var(--gold-light);margin:3px auto;border-radius:2px;transition:transform .3s var(--ease);}

/* ============ BUTTONS ============ */
.btn-gold{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 padding:12px 26px;border:0;border-radius:8px;cursor:pointer;
 background:linear-gradient(160deg,#e2c257,#d4af37 45%,#b8860b);
 color:#fffdf3;font-size:15px;font-weight:700;letter-spacing:.8px;
 text-shadow:0 1px 2px rgba(90,55,0,.45);
 box-shadow:0 6px 18px rgba(184,134,11,.38);
 transition:transform .25s var(--ease),box-shadow .25s var(--ease),filter .25s var(--ease);
}
.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.07);color:#fffdf3;box-shadow:0 12px 26px rgba(184,134,11,.48);}
.btn-gold:active{transform:translateY(0);}
.btn-sm{padding:9px 20px;font-size:14px;}
.btn-line{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 padding:11px 24px;border-radius:8px;cursor:pointer;
 background:var(--white);border:1px solid var(--gold);
 color:var(--gold-deep);font-size:15px;font-weight:700;
 transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease),color .25s var(--ease);
}
.btn-line:hover{transform:translateY(-2px);background:#fffaf0;color:var(--red);box-shadow:0 10px 24px rgba(184,134,11,.22);}
.btn-line-light{
 background:transparent;border:1px solid rgba(232,200,122,.75);
 color:var(--gold-light);font-weight:700;padding:11px 24px;border-radius:8px;
 display:inline-flex;align-items:center;gap:8px;
 transition:transform .25s var(--ease),background .25s var(--ease),color .25s var(--ease);
}
.btn-line-light:hover{background:rgba(212,175,55,.16);color:#fff;transform:translateY(-2px);}

/* ============ CATEGORY HERO ============ */
.cat-hero{position:relative;overflow:hidden;background:linear-gradient(140deg,#8c1f1f,#5e1313 78%);color:#fff;padding:64px 0 74px;}
.cat-hero .hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32;filter:saturate(.85) contrast(1.05);}
.cat-hero .hero-veil{
 position:absolute;inset:0;
 background:
 radial-gradient(ellipse at 18% 12%,rgba(190,70,70,.34),transparent 58%),
 linear-gradient(180deg,rgba(70,14,14,.74),rgba(45,8,8,.93));
}
.cat-hero .hero-veil::after{
 content:"";position:absolute;inset:0;
 background-image:repeating-linear-gradient(45deg,rgba(212,175,55,.055) 0 2px,transparent 2px 16px);
}
.cat-hero-inner{position:relative;z-index:3;}
.crumb{display:flex;align-items:center;gap:10px;font-size:13px;color:#dcc9a8;letter-spacing:1px;}
.crumb a{color:#e8c87a;}
.crumb a:hover{color:#fff;}
.crumb i{font-style:normal;color:rgba(232,200,122,.55);}
.hero-tagline{
 display:inline-flex;align-items:center;gap:10px;margin-top:20px;
 padding:7px 18px;border-radius:999px;
 border:1px solid rgba(212,175,55,.55);background:rgba(212,175,55,.12);
 color:var(--gold-light);font-size:13px;letter-spacing:2px;
}
.hero-tagline b{width:6px;height:6px;border-radius:50%;background:var(--gold);display:inline-block;}
.cat-hero h1{
 margin:20px 0 0;color:#fff;max-width:900px;
 font-size:clamp(25px,3.7vw,40px);line-height:1.34;
 text-shadow:0 3px 18px rgba(0,0,0,.42);
}
.cat-hero h1 .hl{color:var(--gold-light);background:linear-gradient(180deg,transparent 68%,rgba(212,175,55,.28) 68%);}
.cat-hero .lead{margin:18px 0 0;max-width:820px;font-size:15.5px;line-height:1.95;color:#f0e2cd;}

/* 前后对比面板 */
.compare{display:grid;grid-template-columns:1fr 56px 1fr;gap:16px;align-items:stretch;margin-top:36px;}
.compare-card{
 position:relative;border-radius:var(--r-lg);padding:22px 24px 24px;
 background:rgba(20,4,4,.34);border:1px solid rgba(212,175,55,.32);
 box-shadow:0 14px 34px rgba(0,0,0,.28);
}
.compare-card.after{
 background:linear-gradient(160deg,rgba(212,175,55,.18),rgba(212,175,55,.06));
 border-color:var(--gold);
 box-shadow:0 20px 44px rgba(0,0,0,.36);
}
.compare-head{display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.compare-head span{
 font-family:var(--serif);font-size:17px;font-weight:700;letter-spacing:1px;
}
.compare-card.before .compare-head span{color:#e0c6b8;}
.compare-card.after .compare-head span{color:var(--gold-light);}
.compare-head em{
 font-style:normal;font-size:11px;letter-spacing:2px;padding:2px 9px;border-radius:999px;
 border:1px solid rgba(255,255,255,.22);color:#cfc0ad;
}
.compare-card.after .compare-head em{border-color:rgba(212,175,55,.6);color:var(--gold-light);}
.compare-card li{
 position:relative;padding-left:24px;margin-top:10px;
 font-size:14.5px;line-height:1.75;color:#efdfc6;
}
.compare-card.before li{color:#d9c3b4;}
.compare-card li::before{
 position:absolute;left:0;top:0;font-weight:700;font-family:var(--serif);
}
.compare-card.before li::before{content:"×";color:#d98b8b;}
.compare-card.after li::before{content:"✓";color:var(--gold-light);}
.compare-arrow{display:grid;place-items:center;color:var(--gold);font-size:22px;font-family:var(--serif);}
.hero-actions{margin-top:32px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;}

/* ============ 数据条 ============ */
.stat-strip{background:var(--white);border-bottom:1px solid var(--line-soft);box-shadow:var(--sh1);}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);}
.stat-cell{padding:24px 18px;text-align:center;border-right:1px dashed var(--line-gold);}
.stat-cell:last-child{border-right:0;}
.stat-num{font-family:var(--serif);font-size:30px;line-height:1.1;color:var(--gold-deep);font-weight:700;}
.stat-num small{font-size:14px;color:var(--red);margin-left:3px;font-family:var(--sans);}
.stat-label{font-size:13.5px;color:var(--ink-soft);margin-top:6px;letter-spacing:.5px;}

/* ============ SECTION 基础 ============ */
.sec{padding:76px 0;}
.sec-alt{background:var(--bg-alt);}
.sec-dark{background:linear-gradient(150deg,#7a1a1a,#5e1313);color:#f0e2cd;}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:36px;flex-wrap:wrap;}
.sec-title{position:relative;padding-left:16px;font-size:clamp(21px,2.5vw,29px);line-height:1.35;}
.sec-title::before{
 content:"";position:absolute;left:0;top:.16em;bottom:.16em;width:4px;border-radius:2px;
 background:linear-gradient(180deg,var(--gold-light),var(--gold-deep));
}
.sec-title-sub{display:block;font-family:var(--sans);font-size:13px;font-weight:400;letter-spacing:2px;color:var(--ink-soft);margin-top:8px;}
.sec-desc{color:var(--ink-soft);font-size:14.5px;max-width:760px;margin-top:12px;}
.more-link{
 display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
 color:var(--gold-deep);font-weight:700;font-size:14.5px;
 border-bottom:1px solid transparent;padding-bottom:2px;
 transition:color .25s var(--ease),border-color .25s var(--ease);
}
.more-link:hover{color:var(--red);border-color:var(--gold);}
.sec-dark .sec-title{color:#fff;}
.sec-dark .sec-desc{color:#e6d3b8;}
.sec-dark .more-link{color:var(--gold-light);}

/* ============ 卡片矩阵 ============ */
.card-grid{display:grid;gap:22px;grid-template-columns:repeat(4,1fr);}
.g-card{
 position:relative;background:var(--white);border:1px solid var(--line-gold);
 border-radius:var(--r);padding:54px 22px 24px;box-shadow:var(--sh1);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.g-card:hover{transform:translateY(-4px);box-shadow:var(--sh2);border-color:var(--gold);}
.seal{
 position:absolute;top:14px;left:14px;width:32px;height:32px;border-radius:6px;
 display:grid;place-items:center;font-family:var(--serif);font-size:15px;font-weight:700;
 color:var(--gold-light);background:linear-gradient(160deg,#a02525,#7a1a1a);
 border:1px solid var(--gold);box-shadow:0 3px 10px rgba(94,19,19,.28);
}
.g-card h3{font-size:17.5px;margin-bottom:10px;letter-spacing:.5px;}
.g-card p{font-size:14px;line-height:1.8;color:var(--ink-soft);}
.card-meta{
 display:inline-block;margin-top:14px;font-size:12px;letter-spacing:1px;
 color:var(--gold-deep);border:1px solid var(--line-gold);border-radius:999px;
 padding:2px 11px;background:#fffaf0;
}

/* ============ 图文双栏 ============ */
.split{display:grid;grid-template-columns:1.02fr 1fr;gap:46px;align-items:center;}
.split-media{
 position:relative;border-radius:var(--r-lg);overflow:hidden;
 border:2px solid var(--gold);box-shadow:var(--sh2);background:#2b0a0a;
}
.split-media img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform .6s var(--ease);}
.split-media:hover img{transform:scale(1.04);}
.split-media figcaption{
 position:absolute;left:0;right:0;bottom:0;padding:26px 20px 14px;
 font-size:13px;color:#f3e3c8;letter-spacing:.5px;
 background:linear-gradient(180deg,transparent,rgba(45,8,8,.88));
}
.split-body h3{font-size:21px;margin-bottom:12px;}
.split-body > p{color:var(--ink-soft);font-size:14.5px;}
.rule-list{margin-top:20px;}
.rule-list li{
 display:flex;gap:16px;padding:16px 0;border-bottom:1px dashed var(--line-gold);
}
.rule-list li:last-child{border-bottom:0;padding-bottom:0;}
.rule-list .num{
 flex:0 0 auto;width:30px;height:30px;border-radius:50%;
 display:grid;place-items:center;font-family:var(--serif);font-size:14px;font-weight:700;
 color:var(--red-900);background:linear-gradient(160deg,#f3e0a8,#e2c257);
 border:1px solid var(--gold);box-shadow:0 3px 8px rgba(184,134,11,.25);
}
.rule-list h4{font-size:15.5px;margin-bottom:4px;}
.rule-list p{font-size:14px;color:var(--ink-soft);line-height:1.78;}

/* ============ 连击阶梯 ============ */
.ladder{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;align-items:end;}
.step-card{
 background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r);
 padding:18px 16px 20px;text-align:center;box-shadow:var(--sh1);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.step-card:nth-child(2){padding-top:26px;}
.step-card:nth-child(3){padding-top:34px;}
.step-card:nth-child(4){padding-top:42px;}
.step-card:nth-child(5){padding-top:50px;background:#fffaf0;border-color:var(--gold);}
.step-card:hover{transform:translateY(-4px);box-shadow:var(--sh2);border-color:var(--gold);}
.step-rank{font-size:12px;letter-spacing:2px;color:var(--ink-soft);}
.step-val{
 font-family:var(--serif);font-size:27px;font-weight:700;line-height:1.2;
 color:var(--gold-deep);margin:6px 0 2px;
}
.step-name{font-family:var(--serif);font-size:15px;color:var(--red-900);margin-bottom:6px;}
.step-note{font-size:12.5px;color:var(--ink-soft);line-height:1.65;}
.ladder-tip{
 margin-top:26px;padding:18px 22px;border-radius:var(--r);
 background:var(--white);border-left:4px solid var(--gold);
 box-shadow:var(--sh1);font-size:14px;color:var(--ink-soft);
}
.ladder-tip strong{color:var(--red-900);}

/* ============ 时间线 ============ */
.timeline{position:relative;margin-top:8px;}
.timeline::before{
 content:"";position:absolute;left:5px;top:12px;bottom:12px;width:2px;
 background:linear-gradient(180deg,var(--gold),rgba(212,175,55,.12));
}
.tl-item{position:relative;padding:0 0 26px 38px;}
.tl-item:last-child{padding-bottom:0;}
.tl-item::before{
 content:"";position:absolute;left:0;top:7px;width:12px;height:12px;border-radius:50%;
 background:var(--white);border:2px solid var(--gold);box-shadow:0 0 0 4px rgba(212,175,55,.14);
}
.tl-item h3{font-size:16.5px;margin-bottom:5px;}
.tl-item h3 span{
 font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:1px;
 color:var(--gold-deep);border:1px solid var(--line-gold);border-radius:999px;
 padding:1px 9px;margin-right:10px;vertical-align:2px;background:#fffaf0;
}
.tl-item p{font-size:14px;color:var(--ink-soft);line-height:1.8;margin:0;}

/* ============ 术语速查 ============ */
.term-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 24px;}
.term-item{
 background:var(--white);border-left:3px solid var(--gold);border-radius:var(--r-sm);
 padding:16px 20px;box-shadow:var(--sh1);
 transition:transform .28s var(--ease),box-shadow .28s var(--ease);
}
.term-item:hover{transform:translateY(-3px);box-shadow:var(--sh2);}
.term-item dt{font-family:var(--serif);font-weight:700;color:var(--red-900);font-size:16px;}
.term-item dd{margin:6px 0 0;color:var(--ink-soft);font-size:14px;line-height:1.78;}

/* ============ 专题文章 ============ */
.feature-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:24px;}
.post-card{
 display:flex;flex-direction:column;background:var(--white);
 border:1px solid var(--line-gold);border-radius:var(--r);overflow:hidden;
 box-shadow:var(--sh1);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.post-card:hover{transform:translateY(-4px);box-shadow:var(--sh2);border-color:var(--gold);}
.post-card img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.post-card.big img{aspect-ratio:16/10;}
.post-body{padding:18px 20px 22px;}
.post-tag{
 display:inline-block;font-size:11.5px;letter-spacing:1.5px;color:var(--gold-deep);
 border:1px solid var(--line-gold);border-radius:999px;padding:2px 10px;background:#fffaf0;
}
.post-body h3{font-size:17px;margin:10px 0 8px;line-height:1.5;}
.post-body p{font-size:13.8px;color:var(--ink-soft);line-height:1.78;}
.post-list{display:grid;gap:20px;}
.post-list .post-card{flex-direction:row;align-items:stretch;}
.post-list .post-card img{width:38%;aspect-ratio:auto;height:100%;flex:0 0 38%;}
.post-list .post-body{padding:16px 18px;display:flex;flex-direction:column;justify-content:center;}
.post-list .post-body h3{font-size:15.5px;margin:8px 0 6px;}

/* ============ 更新排期 ============ */
.sched{display:grid;gap:14px;}
.sched-item{
 display:flex;align-items:center;gap:20px;background:var(--white);
 border:1px solid var(--line-soft);border-radius:var(--r);padding:16px 22px;
 box-shadow:var(--sh1);transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s var(--ease);
}
.sched-item:hover{transform:translateX(4px);box-shadow:var(--sh2);border-color:var(--line-gold);}
.sched-date{
 flex:0 0 auto;font-family:var(--serif);font-weight:700;color:var(--gold-deep);
 font-size:15px;letter-spacing:.5px;min-width:96px;
}
.sched-body{flex:1 1 auto;}
.sched-body h3{font-size:15.5px;margin-bottom:3px;}
.sched-body p{font-size:13.5px;color:var(--ink-soft);margin:0;}
.sched-kind{
 flex:0 0 auto;font-size:12px;letter-spacing:1px;color:var(--red);
 border:1px solid rgba(140,31,31,.22);border-radius:999px;padding:3px 12px;background:#fdf6ea;
}

/* ============ CTA ============ */
.cta-band{
 position:relative;overflow:hidden;
 background:linear-gradient(140deg,#8c1f1f,#5e1313);
 border:1px solid var(--gold);border-radius:var(--r-lg);
 padding:46px 40px;text-align:center;color:#fff;box-shadow:var(--sh3);
}
.cta-band::after{
 content:"";position:absolute;inset:0;
 background-image:repeating-linear-gradient(45deg,rgba(212,175,55,.06) 0 2px,transparent 2px 18px);
 pointer-events:none;
}
.cta-band > *{position:relative;z-index:2;}
.cta-band h2{color:#fff;font-size:clamp(21px,2.6vw,28px);line-height:1.4;}
.cta-band p{color:#f0e2cd;font-size:15px;max-width:720px;margin:14px auto 0;}
.cta-actions{margin-top:26px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

/* ============ FOOTER ============ */
.site-footer{
 background:linear-gradient(180deg,#7a1a1a,#5e1313);
 color:#e9dcc6;border-top:2px solid var(--gold);padding:52px 0 0;margin-top:0;
}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:40px;padding-bottom:36px;}
.footer-brand{display:flex;align-items:center;gap:11px;margin-bottom:16px;}
.footer-brand strong{color:#fff;font-family:var(--serif);font-size:17px;letter-spacing:1px;}
.footer-col p{font-size:13.5px;line-height:1.85;color:#e3d3ba;margin:0 0 12px;}
.footer-col h3{color:var(--gold-light);font-size:15px;letter-spacing:1px;margin:0 0 14px;}
.footer-links li{margin-bottom:9px;}
.footer-links a{color:#e9dcc6;font-size:14px;}
.footer-links a:hover{color:var(--gold-light);}
.footer-bottom{
 border-top:1px solid rgba(212,175,55,.28);padding:16px 0;
 display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
 font-size:12.5px;color:#d9c8ac;letter-spacing:.5px;
}

/* ============ 响应式 ============ */
@media (max-width:1024px){
 .card-grid{grid-template-columns:repeat(2,1fr);}
 .ladder{grid-template-columns:repeat(3,1fr);align-items:stretch;}
 .step-card:nth-child(n){padding-top:20px;}
 .split{grid-template-columns:1fr;gap:30px;}
 .feature-grid{grid-template-columns:1fr;}
 .footer-grid{grid-template-columns:1fr 1fr;gap:32px;}
 .stat-grid{grid-template-columns:repeat(2,1fr);}
 .stat-cell:nth-child(2){border-right:0;}
 .stat-cell:nth-child(1),.stat-cell:nth-child(2){border-bottom:1px dashed var(--line-gold);}
}
@media (max-width:900px){
 .header-inner{gap:12px;}
 .nav-toggle{display:grid;}
 .nav-links{
  position:absolute;top:68px;left:0;right:0;margin-left:0;
  flex-direction:column;align-items:stretch;gap:0;
  background:linear-gradient(180deg,#8c1f1f,#6b1717);
  border-bottom:1px solid var(--gold);padding:10px 16px 16px;
  box-shadow:0 18px 30px rgba(60,10,10,.35);
  display:none;
 }
 .nav-links.open{display:flex;}
 .nav-link{padding:12px 8px;}
 .nav-link::after{left:8px;right:8px;bottom:6px;}
 .compare{grid-template-columns:1fr;}
 .compare-arrow{transform:rotate(90deg);height:26px;}
 .hero-actions{gap:12px;}
}
@media (max-width:768px){
 .sec{padding:54px 0;}
 .cat-hero{padding:44px 0 56px;}
 .card-grid{grid-template-columns:1fr;}
 .ladder{grid-template-columns:1fr 1fr;}
 .term-grid{grid-template-columns:1fr;}
 .post-list .post-card{flex-direction:column;}
 .post-list .post-card img{width:100%;flex:0 0 auto;aspect-ratio:16/9;height:auto;}
 .sched-item{flex-wrap:wrap;gap:10px;}
 .sched-date{min-width:auto;}
 .sched-kind{margin-left:auto;}
 .cta-band{padding:34px 22px;}
 .footer-grid{grid-template-columns:1fr;gap:26px;}
 .footer-bottom{flex-direction:column;gap:6px;}
 .sec-head{margin-bottom:26px;}
}
@media (max-width:520px){
 .rl-wrap{padding:0 16px;}
 .brand-text strong{font-size:16px;letter-spacing:1px;}
 .brand-text em{letter-spacing:2px;}
 .stat-grid{grid-template-columns:1fr;}
 .stat-cell{border-right:0;border-bottom:1px dashed var(--line-gold);padding:18px 14px;}
 .stat-cell:last-child{border-bottom:0;}
 .ladder{grid-template-columns:1fr;}
 .compare-card{padding:18px 18px 20px;}
 .hero-actions .btn-gold,.hero-actions .btn-line-light{width:100%;}
 .cta-actions .btn-gold,.cta-actions .btn-line-light{width:100%;}
}

/* roulang page: category2 */
:root{
 --red-900:#5e1313;
 --red:#8c1f1f;
 --red-700:#7a1a1a;
 --gold:#d4af37;
 --gold-light:#e8c87a;
 --gold-deep:#b8860b;
 --bg:#f7f2e7;
 --bg-alt:#efe6d5;
 --white:#fffdf8;
 --ink:#3a3428;
 --ink-soft:#8a8070;
 --line-gold:rgba(212,175,55,.42);
 --line-soft:rgba(140,31,31,.12);
 --r-sm:8px;
 --r:10px;
 --r-lg:16px;
 --sh1:0 2px 12px rgba(94,19,19,.07);
 --sh2:0 12px 32px rgba(94,19,19,.13);
 --sh3:0 24px 52px rgba(94,19,19,.22);
 --ease:cubic-bezier(.22,.61,.36,1);
 --serif:"Noto Serif SC","Source Han Serif SC",SimSun,"Songti SC",serif;
 --sans:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Source Han Sans SC",sans-serif;
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
 margin:0;
 font-family:var(--sans);
 font-size:15px;
 line-height:1.8;
 color:var(--ink);
 background:var(--bg);
 -webkit-font-smoothing:antialiased;
 text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none;transition:color .25s var(--ease);}
a:hover{color:var(--gold-deep);}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px;}
img{max-width:100%;display:block;border:0;}
button{font-family:inherit;}
h1,h2,h3,h4{margin:0;font-family:var(--serif);font-weight:700;line-height:1.35;}
p{margin:0;}
ul,ol{margin:0;padding:0;list-style:none;}
.rl-wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 20px;}

/* ============ HEADER / NAV ============ */
.site-header{
 position:sticky;top:0;z-index:1040;
 background:linear-gradient(180deg,#822020,#8c1f1f 55%,#7c1b1b);
 border-bottom:1px solid rgba(212,175,55,.42);
 box-shadow:0 6px 22px rgba(60,10,10,.28);
}
.header-inner{display:flex;align-items:center;gap:26px;height:68px;position:relative;}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0;}
.brand-mark{
 width:38px;height:38px;border-radius:10px;
 background:linear-gradient(150deg,#e8c87a,#d4af37 55%,#b8860b);
 display:grid;place-items:center;
 color:#5e1313;font-family:var(--serif);font-size:19px;font-weight:700;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 4px 12px rgba(0,0,0,.22);
}
.brand-text{display:flex;flex-direction:column;line-height:1.15;}
.brand-text strong{color:#fff;font-family:var(--serif);font-size:18px;letter-spacing:1.5px;}
.brand-text em{font-style:normal;color:var(--gold-light);font-size:11px;letter-spacing:3px;}
.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto;}
.nav-link{
 position:relative;padding:9px 15px;font-size:15px;color:#f2e3c9;border-radius:8px;
 transition:color .25s var(--ease),background .25s var(--ease);
}
.nav-link::after{
 content:"";position:absolute;left:15px;right:15px;bottom:3px;height:2px;
 background:linear-gradient(90deg,var(--gold-deep),var(--gold),var(--gold-light));
 border-radius:2px;transform:scaleX(0);transform-origin:center;
 transition:transform .3s var(--ease);
}
.nav-link:hover{color:var(--gold-light);background:rgba(255,255,255,.07);}
.nav-link.active{color:var(--gold-light);}
.nav-link.active::after{transform:scaleX(1);}
.header-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.nav-toggle{
 display:none;width:42px;height:38px;border-radius:8px;cursor:pointer;
 border:1px solid rgba(212,175,55,.5);background:rgba(255,255,255,.07);
 padding:0;place-items:center;
}
.nav-toggle span{display:block;width:18px;height:2px;background:var(--gold-light);margin:3px auto;border-radius:2px;transition:transform .3s var(--ease);}

/* ============ BUTTONS ============ */
.btn-gold{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 padding:12px 26px;border:0;border-radius:8px;cursor:pointer;
 background:linear-gradient(160deg,#e2c257,#d4af37 45%,#b8860b);
 color:#fffdf3;font-size:15px;font-weight:700;letter-spacing:.8px;
 text-shadow:0 1px 2px rgba(90,55,0,.45);
 box-shadow:0 6px 18px rgba(184,134,11,.38);
 transition:transform .25s var(--ease),box-shadow .25s var(--ease),filter .25s var(--ease);
}
.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.07);color:#fffdf3;box-shadow:0 12px 26px rgba(184,134,11,.48);}
.btn-gold:active{transform:translateY(0);}
.btn-sm{padding:9px 20px;font-size:14px;}
.btn-line{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 padding:11px 24px;border-radius:8px;cursor:pointer;
 background:var(--white);border:1px solid var(--gold);
 color:var(--gold-deep);font-size:15px;font-weight:700;
 transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;
}
.btn-line:hover{transform:translateY(-2px);background:#fffaf0;color:var(--red);box-shadow:0 10px 24px rgba(184,134,11,.22);}
.btn-line-light{
 background:transparent;border:1px solid rgba(212,175,55,.75);color:var(--gold-light);
}
.btn-line-light:hover{background:rgba(212,175,55,.14);color:#fffdf3;transform:translateY(-2px);}

/* ============ HERO（本页专属版式） ============ */
.hero-skill{
 position:relative;overflow:hidden;
 background:linear-gradient(140deg,#8c1f1f,#5e1313 78%);
 color:#fff;padding:74px 0 70px;
}
.hero-bg{
 position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
 opacity:.32;filter:saturate(.85) contrast(1.05);
}
.hero-veil{
 position:absolute;inset:0;
 background:
 radial-gradient(ellipse at 22% 18%,rgba(180,60,60,.32),transparent 60%),
 linear-gradient(180deg,rgba(70,14,14,.74),rgba(48,8,8,.92));
}
.hero-veil::after{
 content:"";position:absolute;inset:0;
 background-image:repeating-linear-gradient(45deg,rgba(212,175,55,.05) 0 2px,transparent 2px 16px);
 opacity:.7;
}
.hero-grid{
 position:relative;z-index:3;
 display:grid;grid-template-columns:1.12fr .88fr;gap:52px;align-items:center;
}
.hero-eyebrow{
 display:inline-flex;align-items:center;gap:10px;
 padding:7px 18px;border-radius:999px;
 border:1px solid rgba(212,175,55,.55);background:rgba(212,175,55,.12);
 color:var(--gold-light);font-size:13px;letter-spacing:2px;
}
.hero-eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--gold);display:inline-block;}
.hero-copy h1{
 margin:22px 0 0;
 font-size:clamp(27px,3.6vw,40px);
 line-height:1.34;color:#fff;
 text-shadow:0 3px 18px rgba(0,0,0,.4);
}
.hero-copy h1 b{
 color:var(--gold-light);font-weight:700;
 background:linear-gradient(180deg,transparent 68%,rgba(212,175,55,.28) 68%);
}
.hero-lead{
 margin:20px 0 0;max-width:620px;
 font-size:16px;line-height:1.95;color:#f0e2cd;
}
.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;}
.hero-tags span{
 padding:6px 15px;border-radius:999px;font-size:13px;
 border:1px solid rgba(212,175,55,.5);background:rgba(212,175,55,.12);
 color:var(--gold-light);letter-spacing:1px;
}
.hero-actions{margin-top:32px;display:flex;flex-wrap:wrap;gap:14px;}
/* 练习牌桌面板 */
.table-panel{
 background:rgba(255,253,248,.08);
 border:1px solid var(--line-gold);
 border-radius:var(--r-lg);
 padding:26px 24px;
 box-shadow:var(--sh2);
 backdrop-filter:blur(4px);
}
.table-panel .panel-tag{
 display:inline-block;font-size:12px;letter-spacing:2px;
 color:var(--gold-light);border:1px solid rgba(212,175,55,.5);
 border-radius:999px;padding:3px 12px;
}
.table-panel h2{
 font-size:20px;color:#fff;margin:14px 0 6px;
}
.table-panel .panel-note{color:#e6d5b8;font-size:14px;line-height:1.85;}
.seat-row{display:flex;align-items:center;gap:10px;margin:20px 0 12px;}
.seat{
 width:38px;height:38px;border-radius:50%;
 display:grid;place-items:center;
 font-family:var(--serif);font-size:15px;
 border:1px solid rgba(212,175,55,.55);
 background:rgba(255,255,255,.06);
 color:#e6d5b8;
}
.seat.filled{
 background:linear-gradient(150deg,#e8c87a,#d4af37 60%,#b8860b);
 border-color:#f0d78e;color:#5e1313;font-weight:700;
 box-shadow:0 6px 16px rgba(184,134,11,.35);
}
.seat.empty{border-style:dashed;color:rgba(232,200,122,.65);}
.seat-bar{
 height:8px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden;
 margin-bottom:8px;
}
.seat-bar i{
 display:block;height:100%;width:75%;border-radius:999px;
 background:linear-gradient(90deg,var(--gold-deep),var(--gold),var(--gold-light));
}
.seat-count{font-size:13px;color:var(--gold-light);letter-spacing:1px;margin-bottom:20px;}
.panel-actions{display:flex;gap:12px;flex-wrap:wrap;}
.panel-actions .btn-gold,.panel-actions .btn-line{flex:1 1 130px;padding:10px 16px;font-size:14px;}

/* ============ SECTION ============ */
.sec{padding:78px 0;}
.sec-alt{background:var(--bg-alt);}
.sec-dark{
 background:linear-gradient(140deg,#5e1313,#8c1f1f 88%);
 color:#f2e6d0;
}
.sec-head{
 display:flex;align-items:flex-end;justify-content:space-between;
 gap:24px;margin-bottom:42px;flex-wrap:wrap;
}
.sec-title{
 position:relative;padding-left:17px;
 font-size:clamp(22px,2.5vw,30px);color:var(--red);
}
.sec-title::before{
 content:"";position:absolute;left:0;top:7px;bottom:7px;width:4px;border-radius:2px;
 background:linear-gradient(180deg,var(--gold),var(--gold-deep));
}
.sec-sub{color:var(--ink-soft);font-size:14.5px;margin-top:10px;padding-left:17px;max-width:720px;}
.sec-dark .sec-title{color:#fff;}
.sec-dark .sec-sub{color:#ddc9ab;}
.sec-more{
 color:var(--gold-deep);font-weight:700;font-size:14px;white-space:nowrap;
 display:inline-flex;align-items:center;gap:6px;
 transition:gap .25s var(--ease),color .25s var(--ease);
}
.sec-more:hover{gap:11px;color:var(--red);}
.sec-dark .sec-more{color:var(--gold-light);}
.sec-dark .sec-more:hover{color:#fffdf3;}

/* ============ 数据条 ============ */
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.stat{
 background:var(--white);
 border:1px solid var(--line-gold);
 border-radius:var(--r);
 padding:24px 18px;text-align:center;
 box-shadow:var(--sh1);
 transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
.stat:hover{transform:translateY(-3px);box-shadow:var(--sh2);}
.stat b{
 display:block;font-family:var(--serif);
 font-size:27px;color:var(--gold-deep);line-height:1.2;
}
.stat span{display:block;margin-top:8px;font-size:13.5px;color:var(--ink-soft);}

/* ============ 三阶卡片 ============ */
.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.s-card{
 position:relative;
 background:var(--white);
 border:1px solid var(--line-gold);
 border-radius:var(--r);
 padding:36px 26px 28px;
 box-shadow:var(--sh1);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.s-card:hover{transform:translateY(-4px);box-shadow:var(--sh2);border-color:rgba(212,175,55,.92);}
.stamp{
 position:absolute;top:-14px;left:22px;
 width:36px;height:36px;border-radius:8px;
 display:grid;place-items:center;
 background:linear-gradient(150deg,#a12626,#8c1f1f);
 border:2px solid var(--gold);
 color:var(--gold-light);
 font-family:var(--serif);font-size:16px;font-weight:700;
 box-shadow:0 6px 14px rgba(94,19,19,.25);
}
.s-card h3{font-size:19px;color:var(--red);margin-bottom:6px;}
.s-card .card-kicker{
 font-size:12.5px;letter-spacing:2px;color:var(--gold-deep);
 text-transform:uppercase;margin-bottom:14px;
}
.s-card p{color:#514a3c;font-size:14.5px;line-height:1.9;}
.s-card .mini-list{margin-top:16px;padding-top:16px;border-top:1px dashed var(--line-soft);}
.s-card .mini-list li{
 position:relative;padding-left:16px;font-size:14px;color:var(--ink-soft);margin-bottom:8px;
}
.s-card .mini-list li::before{
 content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:2px;
 background:var(--gold);transform:rotate(45deg);
}

/* ============ 图文分栏 ============ */
.split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center;}
.img-frame{
 border-radius:var(--r-lg);overflow:hidden;
 border:2px solid var(--gold);
 box-shadow:var(--sh2);
 background:var(--red-900);
}
.img-frame img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease);}
.img-frame:hover img{transform:scale(1.03);}
.split-body h2{font-size:clamp(21px,2.3vw,27px);color:var(--red);margin-bottom:14px;}
.split-body > p{color:#514a3c;font-size:15px;line-height:1.95;margin-bottom:20px;}
.timing-list li{
 display:flex;gap:14px;padding:15px 0;border-bottom:1px dashed var(--line-soft);
}
.timing-list li:last-child{border-bottom:0;}
.timing-list .idx{
 flex:0 0 32px;height:32px;border-radius:8px;
 display:grid;place-items:center;
 font-family:var(--serif);font-size:14px;font-weight:700;
 background:rgba(212,175,55,.16);color:var(--gold-deep);
 border:1px solid var(--line-gold);
}
.timing-list strong{display:block;color:var(--red);font-family:var(--serif);font-size:16px;margin-bottom:2px;}
.timing-list span{font-size:14px;color:var(--ink-soft);line-height:1.85;}

/* ============ 表格 ============ */
.table-scroll{overflow-x:auto;border-radius:var(--r);box-shadow:var(--sh1);}
.rule-table{
 width:100%;min-width:620px;border-collapse:separate;border-spacing:0;
 background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r);overflow:hidden;
}
.rule-table th{
 background:linear-gradient(180deg,#8c1f1f,#7a1a1a);
 color:var(--gold-light);font-family:var(--serif);
 font-size:15px;font-weight:700;text-align:left;
 padding:16px 20px;letter-spacing:1px;
}
.rule-table td{
 padding:16px 20px;font-size:14.5px;color:#514a3c;
 border-top:1px solid var(--line-soft);
}
.rule-table tbody tr{transition:background .25s var(--ease);}
.rule-table tbody tr:hover{background:#fdf8ec;}
.rule-table td:first-child{font-family:var(--serif);color:var(--red);font-weight:700;}
.rule-table .num{color:var(--gold-deep);font-weight:700;font-family:var(--serif);}

/* ============ 误区对比 ============ */
.fix-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.fix-card{
 background:var(--white);border:1px solid var(--line-gold);
 border-radius:var(--r);padding:24px 24px 22px;box-shadow:var(--sh1);
 transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
.fix-card:hover{transform:translateY(-3px);box-shadow:var(--sh2);}
.fix-row{display:flex;gap:12px;align-items:flex-start;}
.fix-row + .fix-row{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line-soft);}
.fix-label{
 flex:0 0 46px;height:26px;border-radius:6px;
 display:grid;place-items:center;
 font-size:12.5px;font-weight:700;
}
.fix-label.bad{background:rgba(140,31,31,.1);color:var(--red);border:1px solid rgba(140,31,31,.28);}
.fix-label.good{background:rgba(212,175,55,.16);color:var(--gold-deep);border:1px solid var(--line-gold);}
.fix-row p{font-size:14.5px;line-height:1.85;color:#514a3c;}
.fix-row p strong{color:var(--red);font-family:var(--serif);}

/* ============ 场景卡片 ============ */
.scene-card{
 background:var(--white);border:1px solid var(--line-gold);
 border-radius:var(--r);overflow:hidden;height:100%;
 box-shadow:var(--sh1);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.scene-card:hover{transform:translateY(-4px);box-shadow:var(--sh2);border-color:rgba(212,175,55,.95);}
.scene-thumb{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--red-900);}
.scene-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease);}
.scene-card:hover .scene-thumb img{transform:scale(1.05);}
.scene-thumb::after{
 content:"";position:absolute;inset:0;
 background:linear-gradient(180deg,rgba(94,19,19,0) 45%,rgba(94,19,19,.62));
}
.scene-badge{
 position:absolute;top:12px;left:12px;z-index:2;
 padding:4px 12px;border-radius:6px;
 background:linear-gradient(150deg,#a12626,#8c1f1f);
 border:1px solid var(--gold);
 color:var(--gold-light);font-size:12px;letter-spacing:1px;
}
.scene-body{padding:22px 22px 24px;}
.scene-body h3{font-size:18px;color:var(--red);margin-bottom:10px;}
.scene-body p{font-size:14.5px;color:var(--ink-soft);line-height:1.88;}
.scene-meta{
 margin-top:16px;padding-top:14px;border-top:1px dashed var(--line-soft);
 display:flex;justify-content:space-between;font-size:13px;color:var(--gold-deep);
}

/* ============ 进阶路线 ============ */
.road{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.road-item{
 position:relative;background:rgba(255,253,248,.07);
 border:1px solid rgba(212,175,55,.4);
 border-radius:var(--r);padding:26px 22px;
 transition:transform .25s var(--ease),background .25s var(--ease),border-color .25s var(--ease);
}
.road-item:hover{transform:translateY(-4px);background:rgba(255,253,248,.12);border-color:var(--gold);}
.road-item .step{
 font-family:var(--serif);font-size:13px;letter-spacing:2px;
 color:var(--gold-light);margin-bottom:10px;display:block;
}
.road-item h3{font-size:17px;color:#fff;margin-bottom:10px;}
.road-item p{font-size:14px;color:#ddc9ab;line-height:1.85;}

/* ============ FAQ ============ */
.faq-list{max-width:900px;}
.faq-item{
 background:var(--white);border:1px solid var(--line-gold);
 border-radius:var(--r);margin-bottom:14px;overflow:hidden;
 box-shadow:var(--sh1);
 transition:box-shadow .25s var(--ease),border-color .25s var(--ease);
}
.faq-item[open]{box-shadow:var(--sh2);border-color:rgba(212,175,55,.9);}
.faq-item summary{
 list-style:none;cursor:pointer;
 padding:18px 54px 18px 22px;position:relative;
 font-family:var(--serif);font-size:16.5px;color:var(--red);font-weight:700;
 transition:background .25s var(--ease);
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary:hover{background:#fdf8ec;}
.faq-item summary::after{
 content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);
 font-family:var(--sans);font-size:20px;font-weight:400;color:var(--gold-deep);
 line-height:1;
}
.faq-item[open] summary::after{content:"−";}
.faq-body{padding:0 24px 20px;font-size:14.5px;color:#514a3c;line-height:1.95;}

/* ============ CTA ============ */
.cta-band{
 background:linear-gradient(135deg,#8c1f1f,#5e1313);
 border:1px solid var(--line-gold);
 border-radius:var(--r-lg);
 padding:52px 46px;
 color:#fff;
 display:flex;align-items:center;justify-content:space-between;
 gap:34px;flex-wrap:wrap;
 box-shadow:var(--sh3);
}
.cta-band h2{font-size:clamp(22px,2.6vw,30px);color:#fff;line-height:1.4;}
.cta-band h2 b{color:var(--gold-light);}
.cta-band p{margin-top:12px;color:#e6d5b8;font-size:15px;line-height:1.9;max-width:620px;}
.cta-actions{display:flex;gap:14px;flex-wrap:wrap;}

/* ============ FOOTER ============ */
.site-footer{
 background:linear-gradient(180deg,#5e1313,#41100f);
 color:#e8dcc6;border-top:1px solid var(--gold);
 padding:58px 0 0;margin-top:0;
}
.footer-grid{
 display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:42px;
 padding-bottom:40px;
}
.footer-brand{display:flex;align-items:center;gap:11px;margin-bottom:16px;}
.footer-brand .brand-mark{width:34px;height:34px;font-size:17px;}
.footer-brand strong{color:#fff;font-family:var(--serif);font-size:17px;letter-spacing:1px;}
.footer-col p{color:#cdbda6;font-size:14px;line-height:1.9;margin-bottom:12px;}
.footer-col h3{
 font-family:var(--serif);color:var(--gold-light);font-size:16px;
 margin-bottom:18px;padding-left:12px;border-left:3px solid var(--gold);
}
.footer-links li{margin-bottom:11px;}
.footer-links a{color:#d9c9b0;font-size:14px;transition:color .25s var(--ease),padding-left .25s var(--ease);}
.footer-links a:hover{color:var(--gold-light);padding-left:4px;}
.footer-bottom{
 border-top:1px solid rgba(212,175,55,.28);
 padding:18px 0 22px;
 display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
 color:#bfae94;font-size:13px;
}

/* ============ 响应式 ============ */
@media (max-width:1024px){
 .hero-grid{grid-template-columns:1fr;gap:38px;}
 .skill-grid{grid-template-columns:repeat(2,1fr);}
 .stat-row{grid-template-columns:repeat(2,1fr);}
 .split{grid-template-columns:1fr;gap:30px;}
 .road{grid-template-columns:repeat(2,1fr);}
 .footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:768px){
 .header-inner{height:64px;gap:14px;}
 .nav-toggle{display:grid;}
 .nav-links{
  position:absolute;top:100%;left:0;right:0;
  display:none;flex-direction:column;align-items:stretch;
  margin-left:0;gap:4px;padding:14px 18px 18px;
  background:linear-gradient(180deg,#7a1a1a,#6a1616);
  border-bottom:1px solid var(--line-gold);
  box-shadow:0 16px 30px rgba(40,8,8,.4);
 }
 .nav-links.open{display:flex;}
 .nav-link{padding:11px 14px;font-size:15px;}
 .nav-link::after{left:14px;right:auto;width:34px;bottom:5px;}
 .header-right .btn-sm{padding:8px 15px;font-size:13px;}
 .hero-skill{padding:52px 0 54px;}
 .sec{padding:56px 0;}
 .sec-head{margin-bottom:30px;}
 .skill-grid,.fix-grid{grid-template-columns:1fr;}
 .stat-row{grid-template-columns:repeat(2,1fr);gap:14px;}
 .road{grid-template-columns:1fr;}
 .cta-band{padding:38px 26px;}
 .footer-grid{grid-template-columns:1fr;gap:32px;}
 .footer-bottom{flex-direction:column;align-items:flex-start;gap:6px;}
}
@media (max-width:520px){
 .brand-text strong{font-size:15.5px;letter-spacing:.5px;}
 .brand-text em{font-size:10px;letter-spacing:2px;}
 .brand-mark{width:34px;height:34px;font-size:17px;}
 .header-right .btn-sm{display:none;}
 .hero-copy h1{font-size:25px;}
 .hero-lead{font-size:14.5px;}
 .hero-actions .btn-gold,.hero-actions .btn-line{flex:1 1 100%;}
 .stat b{font-size:23px;}
 .table-panel{padding:22px 18px;}
 .cta-actions .btn-gold,.cta-actions .btn-line{flex:1 1 100%;}
}

/* roulang page: category3 */
:root{
 --red-900:#5e1313;
 --red:#8c1f1f;
 --red-700:#7a1a1a;
 --gold:#d4af37;
 --gold-light:#e8c87a;
 --gold-deep:#b8860b;
 --bg:#f7f2e7;
 --bg-alt:#efe6d5;
 --white:#fffdf8;
 --ink:#3a3428;
 --ink-soft:#8a8070;
 --line-gold:rgba(212,175,55,.42);
 --line-soft:rgba(140,31,31,.12);
 --r-sm:8px;
 --r:10px;
 --r-lg:16px;
 --sh1:0 2px 12px rgba(94,19,19,.07);
 --sh2:0 12px 32px rgba(94,19,19,.13);
 --sh3:0 24px 52px rgba(94,19,19,.22);
 --ease:cubic-bezier(.22,.61,.36,1);
 --serif:"Noto Serif SC","Source Han Serif SC",SimSun,"Songti SC",serif;
 --sans:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Source Han Sans SC",sans-serif;
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:92px;}
body{
 margin:0;
 font-family:var(--sans);
 font-size:15px;
 line-height:1.8;
 color:var(--ink);
 background:var(--bg);
 -webkit-font-smoothing:antialiased;
 text-rendering:optimizeLegibility;
}
h1,h2,h3,h4,h5{font-family:var(--serif);font-weight:700;line-height:1.42;margin:0;}
p{margin:0 0 1em;}
a{color:inherit;text-decoration:none;transition:color .25s var(--ease);}
a:hover{color:var(--gold-deep);}
img{max-width:100%;display:block;}
button{font-family:inherit;}
ul{list-style:none;margin:0;padding:0;}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.rl-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 22px;}

/* ============ HEADER / NAV ============ */
.site-header{
 position:sticky;top:0;z-index:1040;
 background:linear-gradient(180deg,#822020,#8c1f1f 55%,#7c1b1b);
 border-bottom:1px solid rgba(212,175,55,.42);
 box-shadow:0 6px 22px rgba(60,10,10,.28);
}
.header-inner{display:flex;align-items:center;gap:26px;height:68px;}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0;}
.brand-mark{
 width:38px;height:38px;border-radius:10px;
 background:linear-gradient(150deg,#e8c87a,#d4af37 55%,#b8860b);
 display:grid;place-items:center;
 color:#5e1313;font-family:var(--serif);font-size:19px;font-weight:700;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 4px 12px rgba(0,0,0,.22);
}
.brand-text{display:flex;flex-direction:column;line-height:1.15;}
.brand-text strong{color:#fff;font-family:var(--serif);font-size:18px;letter-spacing:1.5px;}
.brand-text em{font-style:normal;color:var(--gold-light);font-size:11px;letter-spacing:3px;}
.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto;}
.nav-link{
 position:relative;padding:9px 15px;font-size:15px;color:#f2e3c9;border-radius:8px;
 transition:color .25s var(--ease),background .25s var(--ease);
}
.nav-link::after{
 content:"";position:absolute;left:15px;right:15px;bottom:3px;height:2px;
 background:linear-gradient(90deg,var(--gold-deep),var(--gold),var(--gold-light));
 border-radius:2px;transform:scaleX(0);transform-origin:center;
 transition:transform .3s var(--ease);
}
.nav-link:hover{color:var(--gold-light);background:rgba(255,255,255,.07);}
.nav-link.active{color:var(--gold-light);}
.nav-link.active::after{transform:scaleX(1);}
.header-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.nav-toggle{
 display:none;width:42px;height:38px;border-radius:8px;cursor:pointer;
 border:1px solid rgba(212,175,55,.5);background:rgba(255,255,255,.07);
 padding:0;place-items:center;
}
.nav-toggle span{display:block;width:18px;height:2px;background:var(--gold-light);margin:3px auto;border-radius:2px;transition:transform .3s var(--ease),opacity .3s var(--ease);}
.nav-toggle.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg);}
.nav-toggle.is-active span:nth-child(2){opacity:0;}
.nav-toggle.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg);}

/* ============ BUTTONS ============ */
.btn-gold{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 padding:12px 26px;border:0;border-radius:8px;cursor:pointer;
 background:linear-gradient(160deg,#e2c257,#d4af37 45%,#b8860b);
 color:#fffdf3;font-size:15px;font-weight:700;letter-spacing:.8px;
 text-shadow:0 1px 2px rgba(90,55,0,.45);
 box-shadow:0 6px 18px rgba(184,134,11,.38);
 transition:transform .25s var(--ease),box-shadow .25s var(--ease),filter .25s var(--ease);
}
.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.07);color:#fffdf3;box-shadow:0 12px 26px rgba(184,134,11,.48);}
.btn-gold:active{transform:translateY(0);}
.btn-sm{padding:9px 20px;font-size:14px;}
.btn-line{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 padding:11px 24px;border-radius:8px;cursor:pointer;
 background:var(--white);border:1px solid var(--gold);
 color:var(--gold-deep);font-size:15px;font-weight:700;
 transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,color .25s;
}
.btn-line:hover{transform:translateY(-2px);background:#fffaf0;color:var(--red);box-shadow:0 10px 24px rgba(184,134,11,.22);}
.btn-ghost{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 padding:11px 24px;border-radius:8px;cursor:pointer;
 background:rgba(255,255,255,.06);border:1px solid rgba(212,175,55,.7);
 color:var(--gold-light);font-size:15px;font-weight:700;
 transition:transform .25s var(--ease),background .25s var(--ease),color .25s;
}
.btn-ghost:hover{transform:translateY(-2px);background:rgba(212,175,55,.2);color:#fffdf3;}

/* ============ HERO ============ */
.hero-rl{
 position:relative;overflow:hidden;
 background:linear-gradient(140deg,#8c1f1f,#5e1313 78%);
 color:#fff;padding:66px 0 74px;
}
.hero-bg{
 position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
 opacity:.24;filter:saturate(.8) contrast(1.05);
}
.hero-veil{
 position:absolute;inset:0;
 background:
 radial-gradient(ellipse at 82% 18%,rgba(212,175,55,.16),transparent 58%),
 linear-gradient(180deg,rgba(70,14,14,.7),rgba(44,8,8,.92));
}
.hero-veil::after{
 content:"";position:absolute;inset:0;
 background-image:repeating-linear-gradient(45deg,rgba(212,175,55,.05) 0 2px,transparent 2px 16px);
 opacity:.7;
}
.hero-grid{
 position:relative;z-index:3;
 display:grid;grid-template-columns:1.06fr .94fr;gap:48px;align-items:center;
}
.hero-eyebrow{
 display:inline-flex;align-items:center;gap:10px;
 padding:7px 18px;border-radius:999px;
 border:1px solid rgba(212,175,55,.55);background:rgba(212,175,55,.12);
 color:var(--gold-light);font-size:13px;letter-spacing:2px;
}
.hero-eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--gold);display:inline-block;}
.hero-copy h1{
 margin:20px 0 0;
 font-size:clamp(26px,3.5vw,40px);
 line-height:1.34;color:#fff;
 text-shadow:0 3px 18px rgba(0,0,0,.4);
}
.hero-lead{
 margin:18px 0 0;max-width:620px;
 font-size:15.5px;line-height:1.95;color:#f0e2cd;
}
.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.gold-tag{
 display:inline-flex;align-items:center;gap:7px;
 padding:6px 15px;border-radius:999px;font-size:13px;
 color:var(--gold-light);border:1px solid rgba(212,175,55,.55);
 background:rgba(212,175,55,.1);
}
.gold-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;}
.hero-figure{
 position:relative;border-radius:var(--r-lg);overflow:hidden;
 border:2px solid var(--gold);
 box-shadow:0 26px 54px rgba(0,0,0,.42);
}
.hero-figure > img{width:100%;height:100%;min-height:300px;object-fit:cover;}
.series-bar{
 position:absolute;left:12px;right:12px;bottom:12px;
 display:flex;flex-wrap:wrap;gap:8px;
 padding:10px 12px;border-radius:12px;
 background:rgba(52,9,9,.82);
 border:1px solid rgba(212,175,55,.45);
 backdrop-filter:blur(6px);
}
.series-bar a{
 font-size:13px;color:#f0e2cd;padding:5px 13px;border-radius:999px;
 border:1px solid rgba(212,175,55,.36);
 transition:background .25s var(--ease),color .25s var(--ease),border-color .25s;
}
.series-bar a:hover{background:rgba(212,175,55,.22);color:#fffdf3;border-color:var(--gold);}

/* ============ SECTIONS ============ */
.section{padding:74px 0;}
.section--alt{background:var(--bg-alt);}
.section-head{
 display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
 margin-bottom:36px;flex-wrap:wrap;
}
.section-title{
 position:relative;padding-left:16px;
 font-size:clamp(21px,2.4vw,29px);color:var(--red);
}
.section-title::before{
 content:"";position:absolute;left:0;top:4px;bottom:4px;width:5px;border-radius:3px;
 background:linear-gradient(180deg,var(--gold-light),var(--gold-deep));
}
.section-sub{color:var(--ink-soft);font-size:14px;margin:10px 0 0;padding-left:16px;max-width:720px;}
.section-more{
 color:var(--gold-deep);font-weight:700;font-size:14px;white-space:nowrap;
 display:inline-flex;align-items:center;gap:6px;
 transition:color .25s var(--ease),transform .25s var(--ease);
}
.section-more::after{content:"›";font-size:18px;line-height:1;}
.section-more:hover{color:var(--red);transform:translateX(3px);}

/* ============ CARDS ============ */
.card-rl{
 position:relative;height:100%;
 background:var(--white);
 border:1px solid var(--line-gold);
 border-radius:var(--r);
 overflow:hidden;
 box-shadow:var(--sh1);
 display:flex;flex-direction:column;
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.card-rl:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:var(--sh2);}
.seal{
 position:absolute;top:12px;left:12px;z-index:3;
 width:38px;height:38px;border-radius:6px;
 display:grid;place-items:center;
 background:linear-gradient(160deg,#a32626,#5e1313);
 border:1px solid var(--gold);
 color:var(--gold-light);
 font-family:var(--serif);font-size:16px;font-weight:700;
 box-shadow:0 5px 12px rgba(0,0,0,.26);
}
.card-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--bg-alt);}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease);}
.card-rl:hover .card-media img{transform:scale(1.06);}
.card-body{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1;}
.card-title{font-size:18px;color:var(--red);margin:0;}
.card-text{font-size:14px;line-height:1.86;color:var(--ink-soft);margin:0;flex:1;}
.card-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px;}
.tag{
 display:inline-block;font-size:12px;padding:3px 11px;border-radius:999px;
 border:1px solid var(--line-gold);color:var(--gold-deep);background:#fdf8ec;
}

/* ============ 四环节小卡 ============ */
.ring-card{
 height:100%;background:var(--white);border:1px solid var(--line-gold);
 border-radius:var(--r);padding:24px 22px;box-shadow:var(--sh1);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.ring-card:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:var(--sh2);}
.ring-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.ring-num{
 width:36px;height:36px;border-radius:8px;display:grid;place-items:center;
 background:linear-gradient(160deg,#a32626,#5e1313);
 border:1px solid var(--gold);color:var(--gold-light);
 font-family:var(--serif);font-size:15px;font-weight:700;flex-shrink:0;
}
.ring-card h3{font-size:17px;color:var(--red);}
.ring-card p{font-size:14px;line-height:1.86;color:var(--ink-soft);margin:0;}

/* ============ 数据条 ============ */
.stats-strip{
 display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px;
}
.stat{
 background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r);
 padding:20px 16px;text-align:center;box-shadow:var(--sh1);
 transition:border-color .3s var(--ease),box-shadow .3s var(--ease);
}
.stat:hover{border-color:var(--gold);box-shadow:var(--sh2);}
.stat b{display:block;font-family:var(--serif);font-size:28px;color:var(--gold-deep);line-height:1.2;}
.stat span{display:block;margin-top:6px;font-size:13px;color:var(--ink-soft);}

/* ============ 流程 ============ */
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.flow-item{
 position:relative;
 background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r-lg);
 padding:28px 24px 24px;box-shadow:var(--sh1);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.flow-item:hover{transform:translateY(-4px);box-shadow:var(--sh2);}
.flow-num{
 width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
 background:linear-gradient(160deg,#e2c257,#d4af37 45%,#b8860b);
 color:#4a2c00;font-family:var(--serif);font-size:17px;font-weight:700;
 box-shadow:0 6px 16px rgba(184,134,11,.32);margin-bottom:14px;
}
.flow-item h3{font-size:17px;color:var(--red);margin-bottom:8px;}
.flow-item p{font-size:14px;line-height:1.86;color:var(--ink-soft);margin:0;}

/* ============ 错判纠正 ============ */
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.check-panel{
 background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r-lg);
 padding:28px 28px 22px;box-shadow:var(--sh1);
 transition:border-color .3s var(--ease),box-shadow .3s var(--ease);
}
.check-panel:hover{border-color:var(--gold);box-shadow:var(--sh2);}
.check-panel h3{
 font-size:18px;color:var(--red);margin-bottom:18px;padding-bottom:12px;
 border-bottom:1px dashed var(--line-soft);
}
.check-list li{
 position:relative;padding-left:28px;margin-bottom:16px;
 font-size:14.5px;line-height:1.85;color:var(--ink);
}
.check-list li:last-child{margin-bottom:0;}
.check-list li::before{
 content:"";position:absolute;left:2px;top:8px;width:9px;height:9px;
 transform:rotate(45deg);border:1px solid var(--gold-deep);background:#fdf8ec;
}
.check-list--bad li::before{border-color:var(--red);background:rgba(140,31,31,.1);}
.check-list li strong{color:var(--red);font-family:var(--serif);}

/* ============ 深色专题 ============ */
.feature-dark{
 position:relative;overflow:hidden;padding:78px 0;
 background:linear-gradient(120deg,#5e1313,#8c1f1f 70%,#6d1717);
 color:#f4e8d4;
}
.feature-dark .fd-bg{
 position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
 opacity:.2;filter:saturate(.75);
}
.feature-dark .fd-veil{
 position:absolute;inset:0;
 background:linear-gradient(180deg,rgba(50,9,9,.78),rgba(38,6,6,.92));
}
.feature-dark .rl-wrap{position:relative;z-index:3;}
.fd-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:center;}
.fd-copy h2{
 position:relative;padding-left:16px;font-size:clamp(21px,2.4vw,29px);color:#fff;
}
.fd-copy h2::before{
 content:"";position:absolute;left:0;top:4px;bottom:4px;width:5px;border-radius:3px;
 background:linear-gradient(180deg,var(--gold-light),var(--gold-deep));
}
.fd-copy p{color:rgba(244,232,212,.86);font-size:15px;line-height:1.95;margin:16px 0 0;max-width:640px;}
.fd-points{display:grid;gap:14px;margin-top:26px;}
.fd-point{
 display:flex;gap:14px;padding:16px 18px;border-radius:var(--r);
 background:rgba(255,253,248,.07);
 border:1px solid rgba(212,175,55,.34);
 transition:background .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease);
}
.fd-point:hover{background:rgba(212,175,55,.14);border-color:var(--gold);transform:translateY(-3px);}
.fd-point span{
 flex-shrink:0;width:26px;height:26px;border-radius:50%;
 display:grid;place-items:center;font-size:12px;font-weight:700;
 color:#4a2c00;background:linear-gradient(160deg,#e8c87a,#d4af37);
}
.fd-point b{display:block;color:var(--gold-light);font-family:var(--serif);font-size:15.5px;margin-bottom:2px;}
.fd-point p{margin:0;font-size:13.6px;line-height:1.8;color:rgba(244,232,212,.8);}
.fd-figure{
 border-radius:var(--r-lg);overflow:hidden;border:2px solid var(--gold);
 box-shadow:0 26px 54px rgba(0,0,0,.4);
}
.fd-figure img{width:100%;height:100%;object-fit:cover;}

/* ============ 记录卡 ============ */
.record-layout{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;}
.record-card{
 background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r-lg);
 overflow:hidden;box-shadow:var(--sh1);
}
.record-head{
 display:flex;align-items:center;justify-content:space-between;gap:12px;
 padding:16px 22px;background:linear-gradient(160deg,#8c1f1f,#5e1313);
 color:var(--gold-light);font-family:var(--serif);font-size:15px;letter-spacing:1px;
}
.record-head b{color:#fff;font-size:15px;}
.record-row{
 display:flex;align-items:flex-start;gap:16px;
 padding:14px 22px;border-bottom:1px dashed var(--line-soft);font-size:14px;
}
.record-row:last-child{border-bottom:0;}
.record-row dt{
 flex-shrink:0;width:96px;color:var(--gold-deep);font-weight:700;margin:0;
}
.record-row dd{margin:0;color:var(--ink);}
.record-side h3{font-size:19px;color:var(--red);margin-bottom:14px;}
.record-side p{font-size:14.5px;line-height:1.9;color:var(--ink-soft);}
.side-list{margin-top:18px;display:grid;gap:12px;}
.side-list li{
 display:flex;gap:12px;align-items:flex-start;
 padding:13px 16px;background:var(--white);border:1px solid var(--line-gold);
 border-radius:var(--r-sm);font-size:14px;line-height:1.8;
}
.side-list li i{
 flex-shrink:0;width:8px;height:8px;margin-top:9px;transform:rotate(45deg);
 background:var(--gold);border-radius:1px;
}

/* ============ 频道入口 ============ */
.channel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.channel{
 display:flex;gap:16px;align-items:flex-start;
 background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r);
 padding:22px 22px;box-shadow:var(--sh1);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.channel:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:var(--sh2);}
.channel-ico{
 flex-shrink:0;width:44px;height:44px;border-radius:10px;
 display:grid;place-items:center;
 background:linear-gradient(160deg,#fdf3dc,#f2e3bf);
 border:1px solid var(--line-gold);
}
.channel-ico svg{width:22px;height:22px;stroke:var(--gold-deep);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.channel h3{font-size:16.5px;color:var(--red);margin-bottom:6px;}
.channel p{font-size:13.6px;line-height:1.8;color:var(--ink-soft);margin:0;}

/* ============ FAQ ============ */
.faq-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:40px;align-items:start;}
.faq-intro p{font-size:14.5px;line-height:1.9;color:var(--ink-soft);margin-top:14px;}
.faq-intro .btn-line{margin-top:8px;}
.faq-list{display:grid;gap:14px;}
.faq-item{
 background:var(--white);border:1px solid var(--line-gold);border-radius:var(--r);
 padding:16px 22px;box-shadow:var(--sh1);
 transition:border-color .3s var(--ease),box-shadow .3s var(--ease);
}
.faq-item[open]{border-color:var(--gold);box-shadow:var(--sh2);}
.faq-item summary{
 cursor:pointer;list-style:none;
 display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
 font-family:var(--serif);font-size:16px;color:var(--red);line-height:1.6;
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{
 content:"+";color:var(--gold-deep);font-size:20px;line-height:1;flex-shrink:0;
 font-family:var(--sans);transition:transform .3s var(--ease);
}
.faq-item[open] summary::after{content:"−";}
.faq-item p{margin:12px 0 0;font-size:14.2px;line-height:1.9;color:var(--ink-soft);}

/* ============ CTA ============ */
.cta-band{
 display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;
 padding:42px 46px;border-radius:var(--r-lg);
 background:linear-gradient(130deg,#8c1f1f,#5e1313 72%);
 border:1px solid rgba(212,175,55,.6);
 box-shadow:var(--sh2);
 position:relative;overflow:hidden;
}
.cta-band::after{
 content:"";position:absolute;right:-40px;top:-60px;width:220px;height:220px;border-radius:50%;
 background:radial-gradient(circle,rgba(212,175,55,.28),transparent 68%);
 pointer-events:none;
}
.cta-band h2{color:#fff;font-size:clamp(20px,2.3vw,28px);margin-bottom:10px;}
.cta-band p{color:rgba(244,232,212,.88);font-size:14.6px;line-height:1.9;margin:0;max-width:640px;}
.cta-actions{display:flex;gap:14px;flex-wrap:wrap;position:relative;z-index:2;}

/* ============ FOOTER ============ */
.site-footer{
 background:linear-gradient(180deg,#7a1a1a,#5e1313);
 border-top:1px solid var(--gold);
 color:#f0e2cd;padding:56px 0 0;margin-top:0;
}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;padding-bottom:38px;}
.footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.footer-brand strong{color:#fff;font-family:var(--serif);font-size:18px;letter-spacing:1px;}
.footer-col p{font-size:13.5px;line-height:1.9;color:rgba(240,226,205,.78);margin:0 0 12px;}
.footer-col h3{
 position:relative;padding-left:12px;
 font-size:16px;color:var(--gold-light);margin:4px 0 16px;
}
.footer-col h3::before{
 content:"";position:absolute;left:0;top:5px;bottom:5px;width:3px;border-radius:2px;
 background:var(--gold);
}
.footer-links li{margin-bottom:10px;}
.footer-links a{font-size:14px;color:rgba(240,226,205,.86);transition:color .25s var(--ease),padding-left .25s var(--ease);}
.footer-links a:hover{color:var(--gold-light);padding-left:4px;}
.footer-bottom{
 display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
 padding:18px 0 22px;border-top:1px solid rgba(212,175,55,.28);
 font-size:12.5px;color:rgba(232,200,122,.82);
}

/* ============ 响应式 ============ */
@media (max-width:1024px){
 .hero-grid{grid-template-columns:1fr;gap:36px;}
 .hero-figure > img{min-height:260px;}
 .fd-grid{grid-template-columns:1fr;gap:32px;}
 .record-layout{grid-template-columns:1fr;gap:28px;}
 .faq-layout{grid-template-columns:1fr;gap:26px;}
 .stats-strip{grid-template-columns:repeat(2,1fr);}
 .flow{grid-template-columns:repeat(2,1fr);}
 .channel-grid{grid-template-columns:repeat(2,1fr);}
 .footer-grid{grid-template-columns:1fr 1fr;gap:30px;}
}
@media (max-width:900px){
 .nav-toggle{display:grid;}
 .nav-links{
  position:absolute;left:0;right:0;top:100%;
  display:none;flex-direction:column;align-items:stretch;gap:4px;
  padding:14px 18px 20px;
  background:linear-gradient(180deg,#7f1d1d,#6a1616);
  border-bottom:1px solid rgba(212,175,55,.45);
  box-shadow:0 18px 34px rgba(40,6,6,.42);
  margin-left:0;
 }
 .nav-links.is-open{display:flex;}
 .nav-link{padding:11px 14px;font-size:15px;border-radius:8px;}
 .nav-link::after{left:14px;right:auto;width:26px;bottom:5px;}
 .header-inner{position:relative;height:64px;gap:14px;}
 .header-right{margin-left:auto;}
}
@media (max-width:768px){
 .section{padding:54px 0;}
 .section-head{margin-bottom:26px;}
 .check-grid{grid-template-columns:1fr;}
 .channel-grid{grid-template-columns:1fr;}
 .cta-band{padding:32px 26px;}
 .hero-rl{padding:48px 0 56px;}
 .feature-dark{padding:56px 0;}
 .footer-grid{grid-template-columns:1fr;gap:26px;padding-bottom:26px;}
 .footer-bottom{flex-direction:column;gap:8px;}
 .record-row dt{width:80px;}
}
@media (max-width:520px){
 body{font-size:14.6px;}
 .rl-wrap{padding:0 16px;}
 .brand-text strong{font-size:16px;letter-spacing:1px;}
 .brand-text em{font-size:10px;letter-spacing:2px;}
 .hero-copy h1{font-size:24px;}
 .hero-lead{font-size:14.6px;}
 .hero-actions{width:100%;}
 .hero-actions .btn-gold,.hero-actions .btn-ghost{flex:1;justify-content:center;}
 .stats-strip{grid-template-columns:1fr 1fr;gap:12px;}
 .stat b{font-size:23px;}
 .flow{grid-template-columns:1fr;}
 .card-body{padding:16px 16px 20px;}
 .cta-actions{width:100%;}
 .cta-actions .btn-gold,.cta-actions .btn-line{flex:1;justify-content:center;}
 .series-bar{padding:8px;gap:6px;left:8px;right:8px;bottom:8px;}
 .series-bar a{font-size:12px;padding:4px 10px;}
 .record-row{flex-direction:column;gap:4px;}
 .record-row dt{width:auto;}
}

/* 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}
