:root{
    --main:#e50914;
    --accent:#f5c518;
    --bg:#0b0b0f;
    --text:#f5f5f7;
    --card:#15151c;
    --line:#26262f;
    --muted:#9a9aa6;
  }
  *{box-sizing:border-box;}
  body{
    background:var(--bg);
    color:var(--text);
    font-family:"Inter","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
    line-height:1.7;
    overflow-x:hidden;
  }
  h1,h2,h3,.serif{font-family:"Noto Serif SC","Songti SC","SimSun",serif;}
  a{text-decoration:none;color:inherit;}
  a:hover{color:var(--accent);}
  ::selection{background:var(--main);color:#fff;}

  /* ===== Header ===== */
  .site-header{
    position:sticky;top:0;z-index:1000;
    background:rgba(11,11,15,.86);
    backdrop-filter:blur(14px);
    border-bottom:1px solid var(--line);
  }
  .brand-wrap{display:flex;align-items:center;gap:14px;padding:14px 0;}
  .brand-logo{
    font-family:"Noto Serif SC",serif;
    font-weight:900;font-size:1.5rem;letter-spacing:.5px;
    color:var(--text);display:flex;align-items:center;gap:9px;
  }
  .brand-logo i{color:var(--main);font-size:1.25rem;}
  .brand-tag{
    font-size:.72rem;color:var(--muted);border-left:1px solid var(--line);
    padding-left:14px;letter-spacing:2px;line-height:1.2;display:none;
  }
  @media(min-width:992px){.brand-tag{display:block;}}
  .main-nav{display:flex;gap:2px;align-items:center;}
  .main-nav a{
    padding:8px 15px;font-size:.93rem;color:var(--muted);border-radius:999px;
    position:relative;transition:.22s;white-space:nowrap;
  }
  .main-nav a::after{
    content:"";position:absolute;left:15px;right:15px;bottom:2px;height:2px;
    background:var(--accent);transform:scaleX(0);transform-origin:left;transition:.24s;
  }
  .main-nav a:hover{color:var(--text);}
  .main-nav a:hover::after{transform:scaleX(1);}
  .nav-cta{
    background:var(--main);color:#fff !important;border-radius:999px;
    padding:9px 20px !important;font-weight:600;font-size:.9rem;
    box-shadow:0 4px 16px rgba(229,9,20,.35);transition:.22s;
  }
  .nav-cta:hover{background:#ff1a26;color:#fff !important;transform:translateY(-1px);}
  .nav-cta::after{display:none !important;}
  .navbar-toggler{border:1px solid var(--line);color:var(--text);padding:6px 11px;border-radius:10px;}
  .navbar-toggler:focus{box-shadow:none;}

  /* ===== Hero ===== */
  .hero{position:relative;padding:78px 0 60px;overflow:hidden;}
  .hero::before{
    content:"";position:absolute;width:520px;height:520px;border-radius:50%;
    background:radial-gradient(circle,rgba(229,9,20,.22),transparent 68%);
    top:-180px;right:-120px;filter:blur(30px);z-index:0;
  }
  .hero::after{
    content:"";position:absolute;width:360px;height:360px;border-radius:50%;
    background:radial-gradient(circle,rgba(245,197,24,.14),transparent 66%);
    bottom:-160px;left:-90px;filter:blur(30px);z-index:0;
  }
  .hero-inner{position:relative;z-index:2;}
  .eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-size:.78rem;letter-spacing:3px;text-transform:uppercase;
    color:var(--accent);border:1px solid rgba(245,197,24,.35);
    padding:6px 16px;border-radius:999px;margin-bottom:22px;
  }
  .hero h1{
    font-size:clamp(2.4rem,5.4vw,4rem);
    font-weight:900;line-height:1.14;margin-bottom:22px;letter-spacing:-.5px;
  }
  .grad-text{
    background:linear-gradient(100deg,#fff 8%,var(--accent) 46%,var(--main) 92%);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .hero-lead{color:var(--muted);font-size:1.03rem;max-width:520px;margin-bottom:30px;}
  .btn-main{
    background:var(--main);color:#fff;border:none;border-radius:999px;
    padding:13px 32px;font-weight:700;font-size:.98rem;
    box-shadow:0 8px 26px rgba(229,9,20,.34);transition:.24s;
  }
  .btn-main:hover{background:#ff1a26;color:#fff;transform:translateY(-2px);box-shadow:0 12px 32px rgba(229,9,20,.46);}
  .btn-ghost{
    background:transparent;color:var(--text);border:1px solid var(--line);
    border-radius:999px;padding:13px 30px;font-weight:600;font-size:.98rem;transition:.24s;
  }
  .btn-ghost:hover{border-color:var(--accent);color:var(--accent);}
  .signals{display:flex;flex-wrap:wrap;gap:26px;margin-top:44px;}
  .signal-item{display:flex;gap:10px;align-items:flex-start;}
  .signal-num{color:var(--main);font-weight:800;font-size:.86rem;letter-spacing:1px;padding-top:3px;}
  .signal-txt{font-size:.86rem;color:var(--muted);line-height:1.45;}
  .signal-txt b{display:block;color:var(--text);font-size:.96rem;margin-bottom:1px;}
  .hero-media-wrap{position:relative;}
  .hero-media{
    width:100%;border-radius:22px;border:1px solid var(--line);
    aspect-ratio:4/5;object-fit:cover;display:block;
    box-shadow:0 26px 60px rgba(0,0,0,.6);
  }
  .float-chip{
    position:absolute;background:rgba(21,21,28,.94);
    border:1px solid var(--line);border-radius:16px;padding:11px 17px;
    font-size:.82rem;box-shadow:0 14px 30px rgba(0,0,0,.5);backdrop-filter:blur(8px);
    animation:floaty 5s ease-in-out infinite;
  }
  .float-chip i{color:var(--accent);margin-right:7px;}
  .chip-a{top:26px;left:-18px;}
  .chip-b{bottom:40px;right:-14px;animation-delay:1.4s;}
  @keyframes floaty{0%,100%{transform:translateY(0);}50%{transform:translateY(-11px);}}
  @media(max-width:991px){.chip-a{left:6px;}.chip-b{right:6px;}}

  /* ===== Section共通 ===== */
  section{padding:64px 0;position:relative;}
  .sec-head{margin-bottom:40px;}
  .sec-num{
    font-size:.8rem;font-weight:800;letter-spacing:4px;color:var(--main);
    display:block;margin-bottom:10px;
  }
  .sec-title{
    font-size:clamp(1.6rem,3.1vw,2.35rem);font-weight:900;line-height:1.24;letter-spacing:-.3px;
  }
  .sec-desc{color:var(--muted);font-size:.96rem;margin-top:12px;max-width:640px;}
  .hr-line{height:1px;background:var(--line);margin:0;border:0;}

  /* ===== Feature 3 cards ===== */
  .feat-card{
    background:var(--card);border:1px solid var(--line);border-radius:18px;
    padding:30px 26px;height:100%;transition:.28s;
  }
  .feat-card:hover{transform:translateY(-5px) scale(1.012);border-color:rgba(245,197,24,.55);box-shadow:0 18px 40px rgba(0,0,0,.5);}
  .feat-ico{
    width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;
    background:rgba(229,9,20,.13);color:var(--main);font-size:1.25rem;margin-bottom:18px;
  }
  .feat-card h3{font-size:1.15rem;font-weight:800;margin-bottom:10px;}
  .feat-card p{color:var(--muted);font-size:.9rem;margin:0;}

  /* ===== FAQ accordion ===== */
  .faq-acc .accordion-item{
    background:var(--card);border:1px solid var(--line);border-radius:16px !important;
    margin-bottom:14px;overflow:hidden;
  }
  .faq-acc .accordion-button{
    background:var(--card);color:var(--text);font-weight:700;font-size:1rem;
    padding:20px 24px;box-shadow:none;border-radius:16px !important;
  }
  .faq-acc .accordion-button:not(.collapsed){background:var(--card);color:var(--accent);}
  .faq-acc .accordion-button::after{filter:invert(1) sepia(1) saturate(4) hue-rotate(2deg);}
  .faq-acc .accordion-button:focus{box-shadow:none;border-color:transparent;}
  .faq-acc .accordion-body{color:var(--muted);font-size:.92rem;padding:0 24px 22px;line-height:1.8;}

  /* ===== Poster grid ===== */
  .poster-grid{
    display:grid;gap:20px;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  @media(min-width:576px){.poster-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
  @media(min-width:992px){.poster-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
  @media(min-width:1400px){.poster-grid{grid-template-columns:repeat(6,minmax(0,1fr));}}
  .poster-card{
    background:var(--card);border:1px solid var(--line);border-radius:16px;
    overflow:hidden;cursor:pointer;transition:.28s;position:relative;
    display:block;width:100%;
  }
  .poster-card:hover{transform:scale(1.035);border-color:var(--accent);box-shadow:0 20px 44px rgba(0,0,0,.62);z-index:3;}
  .poster-thumb{position:relative;width:100%;aspect-ratio:2/3;overflow:hidden;background:#1c1c24;}
  .poster-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:.4s;background:#1c1c24;}
  .poster-card:hover .poster-thumb img{transform:scale(1.06);}
  .badge-q{
    position:absolute;top:9px;right:9px;background:rgba(11,11,15,.82);
    color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.6px;
    padding:3px 9px;border-radius:999px;border:1px solid rgba(245,197,24,.45);
    backdrop-filter:blur(4px);
  }
  .badge-q.hd{color:#7ee0a8;border-color:rgba(126,224,168,.45);}
  .poster-meta{padding:12px 13px 14px;}
  .poster-name{
    font-size:.9rem;font-weight:700;color:var(--text);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:5px;
  }
  .poster-sub{display:flex;justify-content:space-between;align-items:center;font-size:.74rem;color:var(--muted);}
  .poster-score{color:var(--accent);font-weight:800;}
  .poster-score i{font-size:.66rem;margin-right:3px;}

  /* ===== News list ===== */
  .news-item{
    display:flex;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);
    transition:.22s;
  }
  .news-item:last-child{border-bottom:0;}
  .news-item:hover{padding-left:8px;}
  .news-date{
    flex:0 0 66px;font-size:.76rem;color:var(--main);font-weight:800;letter-spacing:.6px;padding-top:3px;
  }
  .news-body h4{font-size:1.02rem;font-weight:700;margin-bottom:6px;transition:.2s;}
  .news-item:hover .news-body h4{color:var(--accent);}
  .news-body p{color:var(--muted);font-size:.88rem;margin:0;}

  /* ===== Category blocks ===== */
  .cat-card{
    background:var(--card);border:1px solid var(--line);border-radius:18px;
    padding:28px 24px;height:100%;transition:.28s;position:relative;overflow:hidden;
  }
  .cat-card::before{
    content:"";position:absolute;top:0;left:0;width:100%;height:3px;
    background:linear-gradient(90deg,var(--main),var(--accent));opacity:0;transition:.3s;
  }
  .cat-card:hover{transform:translateY(-5px);border-color:rgba(229,9,20,.5);box-shadow:0 18px 40px rgba(0,0,0,.5);}
  .cat-card:hover::before{opacity:1;}
  .cat-ico{font-size:1.6rem;color:var(--accent);margin-bottom:14px;display:block;}
  .cat-card h3{font-size:1.12rem;font-weight:800;margin-bottom:8px;}
  .cat-card p{color:var(--muted);font-size:.87rem;margin-bottom:14px;}
  .cat-tags span{
    display:inline-block;font-size:.73rem;color:var(--muted);
    border:1px solid var(--line);border-radius:999px;padding:3px 11px;margin:0 6px 6px 0;
  }

  /* ===== Steps ===== */
  .step-row{
    display:flex;gap:22px;align-items:flex-start;padding:24px 26px;
    background:var(--card);border:1px solid var(--line);border-radius:16px;
    transition:.26s;height:100%;
  }
  .step-row:hover{border-color:rgba(245,197,24,.5);transform:translateY(-4px);}
  .step-n{
    flex:0 0 46px;height:46px;border-radius:50%;
    background:linear-gradient(135deg,var(--main),#ff5b35);
    display:flex;align-items:center;justify-content:center;
    font-weight:900;font-size:1.05rem;color:#fff;
    box-shadow:0 8px 20px rgba(229,9,20,.35);
  }
  .step-row h4{font-size:1.03rem;font-weight:800;margin-bottom:6px;}
  .step-row p{color:var(--muted);font-size:.87rem;margin:0;}

  /* ===== Compare table ===== */
  .cmp-wrap{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card);}
  .cmp-table{width:100%;border-collapse:collapse;}
  .cmp-table th,.cmp-table td{padding:16px 20px;font-size:.9rem;border-bottom:1px solid var(--line);text-align:left;}
  .cmp-table thead th{
    background:#101017;font-weight:800;font-size:.85rem;letter-spacing:.5px;color:var(--muted);
  }
  .cmp-table thead th:nth-child(2){color:var(--main);}
  .cmp-table tbody tr:last-child td{border-bottom:0;}
  .cmp-table tbody tr:hover{background:rgba(245,197,24,.035);}
  .cmp-table .yes{color:#7ee0a8;font-weight:700;}
  .cmp-table .no{color:#6c6c78;}

  /* ===== Guide prose ===== */
  .guide-box{
    background:var(--card);border:1px solid var(--line);border-radius:18px;padding:36px 34px;
  }
  .guide-box h3{font-size:1.28rem;font-weight:800;margin-bottom:16px;}
  .guide-box p{color:var(--muted);font-size:.93rem;margin-bottom:14px;}
  .guide-box ol{color:var(--muted);font-size:.92rem;padding-left:20px;margin-bottom:16px;}
  .guide-box ol li{margin-bottom:9px;}
  .guide-box ol li b{color:var(--text);}
  .rec-tags a{
    display:inline-block;font-size:.85rem;color:var(--text);
    border:1px solid var(--line);border-radius:999px;padding:8px 18px;margin:0 9px 9px 0;
    transition:.24s;background:var(--card);
  }
  .rec-tags a:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px);}

  /* ===== Recent 3 tips ===== */
  .tip-card{
    background:var(--card);border:1px solid var(--line);border-radius:16px;
    padding:26px 24px;height:100%;transition:.26s;
  }
  .tip-card:hover{border-color:rgba(245,197,24,.5);transform:translateY(-4px);}
  .tip-card .tip-k{
    font-size:.74rem;letter-spacing:2px;color:var(--accent);font-weight:800;margin-bottom:11px;display:block;
  }
  .tip-card h4{font-size:1.05rem;font-weight:800;margin-bottom:9px;}
  .tip-card p{color:var(--muted);font-size:.87rem;margin:0;}

  /* ===== Modal ===== */
  .film-modal{
    position:fixed;inset:0;z-index:2000;display:none;
    align-items:center;justify-content:center;padding:20px;
  }
  .film-modal.open{display:flex;}
  .film-backdrop{
    position:absolute;inset:0;
    background:rgba(6,6,10,.82);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  }
  .film-dialog{
    position:relative;z-index:2;width:100%;max-width:900px;
    background:linear-gradient(160deg,#15151d,#0d0d13);
    border:1px solid var(--line);border-radius:22px;overflow:hidden;
    display:flex;flex-wrap:wrap;box-shadow:0 30px 80px rgba(0,0,0,.75);
    max-height:90vh;overflow-y:auto;animation:popIn .28s ease;
  }
  @keyframes popIn{from{opacity:0;transform:scale(.94) translateY(14px);}to{opacity:1;transform:scale(1) translateY(0);}}
  .film-poster{
    flex:0 0 300px;max-width:300px;position:relative;
  }
  .film-poster img{width:100%;height:100%;object-fit:cover;display:block;min-height:100%;background:#1c1c24;}
  .film-info{flex:1 1 380px;padding:32px 30px;}
  .film-info h3{font-size:1.6rem;font-weight:900;margin-bottom:10px;letter-spacing:-.3px;}
  .film-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;}
  .film-badges span{
    font-size:.75rem;border:1px solid var(--line);border-radius:999px;
    padding:3px 12px;color:var(--muted);
  }
  .film-badges .fb-score{color:var(--accent);border-color:rgba(245,197,24,.5);font-weight:800;}
  .film-field{font-size:.87rem;margin-bottom:9px;color:var(--muted);}
  .film-field b{color:var(--text);margin-right:8px;}
  .film-plot{
    font-size:.89rem;color:var(--muted);line-height:1.85;margin-top:16px;
    padding-top:16px;border-top:1px solid var(--line);
  }
  .film-close{
    position:absolute;top:14px;right:14px;z-index:5;
    width:38px;height:38px;border-radius:50%;border:1px solid var(--line);
    background:rgba(11,11,15,.8);color:var(--text);font-size:1.1rem;
    display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.22s;
  }
  .film-close:hover{background:var(--main);border-color:var(--main);color:#fff;transform:rotate(90deg);}
  @media(max-width:767px){
    .film-poster{flex:1 1 100%;max-width:100%;max-height:300px;}
    .film-poster img{max-height:300px;}
    .film-info{padding:24px 22px;}
    .film-info h3{font-size:1.3rem;}
  }

  /* ===== Reveal ===== */
  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
  .reveal.on{opacity:1;transform:translateY(0);}

  /* ===== Footer ===== */
  .site-footer{background:#08080b;border-top:1px solid var(--line);padding:56px 0 26px;}
  .footer-brand{font-family:"Noto Serif SC",serif;font-weight:900;font-size:1.24rem;margin-bottom:14px;}
  .footer-brand i{color:var(--main);margin-right:7px;}
  .footer-p{color:var(--muted);font-size:.86rem;line-height:1.8;max-width:320px;}
  .footer-h{font-size:.85rem;font-weight:800;letter-spacing:1px;color:var(--text);margin-bottom:16px;}
  .footer-links a{display:block;color:var(--muted);font-size:.87rem;margin-bottom:10px;transition:.2s;}
  .footer-links a:hover{color:var(--accent);padding-left:4px;}
  .friend-links{
    border-top:1px solid var(--line);margin-top:44px;padding-top:24px;
    font-size:.85rem;color:var(--muted);line-height:2;
  }
  .friend-links b{color:var(--text);margin-right:12px;}
  .friend-links a{color:var(--muted);margin-right:16px;transition:.2s;}
  .friend-links a:hover{color:var(--accent);}
  .copyright{
    border-top:1px solid var(--line);margin-top:22px;padding-top:20px;
    font-size:.8rem;color:#6c6c78;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;
  }
  @media(max-width:991px){.hero{padding:44px 0 36px;} section{padding:46px 0;}}

/* --- 子页面追加 --- */
/* 本页专属少量样式，配色沿用站点变量 */
    .news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.news-grid { grid-template-columns: repeat(2, 1fr); }
.news-grid { grid-template-columns: 1fr; }
.news-card {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      transition: transform .25s ease, border-color .25s ease;
      height: 100%;
    }
.news-card:hover { transform: translateY(-4px); border-color: var(--main); }
.news-thumb { position: relative; aspect-ratio: 16/9; overflow: hidden; background: #1d1d26; }
.news-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.news-tag {
      position: absolute; top: 12px; left: 12px;
      background: var(--main); color: #fff;
      font-size: .7rem; font-weight: 700; letter-spacing: .06em;
      padding: 4px 10px; border-radius: 999px;
    }
.news-body { padding: 18px 18px 20px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.news-body h3 { font-size: 1.02rem; font-weight: 700; color: var(--text); margin: 0; line-height: 1.45; }
.news-meta { font-size: .74rem; color: var(--muted); display: flex; gap: 14px; align-items: center; }
.news-meta i { color: var(--accent); margin-right: 4px; }
.cal-row {
      display: flex; align-items: center; gap: 16px;
      background: var(--card); border: 1px solid var(--line);
      border-radius: 14px; padding: 14px 18px; margin-bottom: 12px;
    }
.cal-day {
      flex: 0 0 62px; text-align: center;
      border-right: 1px solid var(--line); padding-right: 16px;
    }
.cal-day strong { display: block; font-size: 1.3rem; color: var(--accent); line-height: 1.1; }
.cal-day span { font-size: .72rem; color: var(--muted); }
.cal-main { flex: 1; min-width: 0; }
.cal-main h4 { font-size: .95rem; margin: 0 0 4px; color: var(--text); font-weight: 700; }
.cal-main p { font-size: .8rem; color: var(--muted); margin: 0; }
.cal-badge {
      flex: 0 0 auto; font-size: .7rem; font-weight: 700;
      padding: 4px 10px; border-radius: 999px;
      background: rgba(229,9,20,.14); color: #ff6b74; border: 1px solid rgba(229,9,20,.35);
    }
.cal-row { flex-wrap: wrap; }
.cal-badge { margin-left: 78px; }
.tip-item {
      display: flex; gap: 16px; padding: 20px;
      background: var(--card); border: 1px solid var(--line);
      border-radius: 16px; height: 100%;
    }
.tip-ico {
      flex: 0 0 44px; height: 44px; border-radius: 12px;
      display: flex; align-items: center; justify-content: center;
      background: rgba(245,197,24,.12); color: var(--accent); font-size: 1.1rem;
    }
.tip-item h4 { font-size: .95rem; font-weight: 700; margin: 0 0 6px; color: var(--text); }
.tip-item p { font-size: .84rem; color: var(--muted); margin: 0; line-height: 1.75; }
.qa-item {
      background: var(--card); border: 1px solid var(--line);
      border-radius: 14px; padding: 20px 22px; margin-bottom: 14px;
    }
.qa-item h4 { font-size: .95rem; font-weight: 700; color: var(--text); margin: 0 0 8px; }
.qa-item h4 i { color: var(--main); margin-right: 8px; }
.qa-item p { font-size: .86rem; color: var(--muted); margin: 0; line-height: 1.8; }
.sec-block { padding: 64px 0; }
.news-hero { padding-top: 130px; }

/* --- 子页面追加 --- */
.about-hero {padding:64px 0 40px;}
.about-hero h1 {font-size:clamp(1.8rem,4vw,3rem);font-weight:800;line-height:1.2;margin:14px 0 18px;}
.about-hero p {color:var(--muted);max-width:760px;font-size:1.02rem;line-height:1.85;}
.about-block {padding:26px 0 8px;}
.about-card {
    background:var(--card);
    border:1px solid var(--line);
    border-radius:16px;
    padding:26px 24px;
    height:100%;
    transition:.25s ease;
  }
.about-card:hover {border-color:rgba(229,9,20,.45);transform:translateY(-3px);}
.about-card h3 {font-size:1.12rem;font-weight:700;margin-bottom:12px;color:var(--text);}
.about-card p {color:var(--muted);font-size:.94rem;line-height:1.8;margin:0;}
.about-card .ico {
    width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;
    background:rgba(229,9,20,.14);color:var(--main);font-size:1.05rem;margin-bottom:16px;
  }
.about-card .ico.gold {background:rgba(245,197,24,.14);color:var(--accent);}
.about-text p {color:var(--muted);line-height:1.9;font-size:.98rem;margin-bottom:16px;}
.about-text strong {color:var(--text);font-weight:600;}
.about-list {list-style:none;padding:0;margin:0;}
.about-list li {
    display:flex;gap:12px;padding:13px 0;border-bottom:1px dashed var(--line);
    color:var(--muted);font-size:.95rem;line-height:1.75;
  }
.about-list li:last-child {border-bottom:none;}
.about-list li i {color:var(--main);margin-top:4px;font-size:.85rem;}
.about-quote {
    border-left:3px solid var(--main);
    background:linear-gradient(90deg,rgba(229,9,20,.08),transparent);
    padding:20px 22px;border-radius:0 12px 12px 0;
    color:var(--text);font-size:.98rem;line-height:1.85;
  }
.num-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.num-box {
    background:var(--card);border:1px solid var(--line);border-radius:14px;
    padding:20px 16px;text-align:center;
  }
.num-box .n {font-size:1.6rem;font-weight:800;color:var(--accent);line-height:1.1;}
.num-box .t {color:var(--muted);font-size:.82rem;margin-top:8px;}
.about-cta {
    background:linear-gradient(135deg,rgba(229,9,20,.16),rgba(245,197,24,.08));
    border:1px solid var(--line);border-radius:18px;padding:34px 28px;
  }
.about-cta h2 {font-size:1.4rem;font-weight:800;margin-bottom:12px;}
.about-cta p {color:var(--muted);font-size:.95rem;line-height:1.8;margin-bottom:22px;}
.num-grid {grid-template-columns:repeat(2,1fr);}
.about-hero {padding:40px 0 24px;}

/* --- 子页面追加 --- */
.doc-hero {padding:64px 0 34px;background:
    radial-gradient(900px 380px at 12% -10%, rgba(229,9,20,.22), transparent 62%),
    radial-gradient(700px 320px at 88% 0%, rgba(245,197,24,.12), transparent 60%);
    border-bottom:1px solid var(--line);}
.doc-hero h1 {font-size:clamp(1.7rem,3.4vw,2.7rem);font-weight:800;line-height:1.25;margin:14px 0 14px;}
.doc-meta {display:flex;flex-wrap:wrap;gap:10px 22px;color:var(--muted);font-size:.86rem;margin-top:6px;}
.doc-meta span i {color:var(--main);margin-right:6px;}
.doc-body {padding:52px 0 72px;}
.doc-card {background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 26px 22px;margin-bottom:22px;}
.doc-card h2 {font-size:1.18rem;font-weight:700;margin-bottom:14px;display:flex;align-items:flex-start;gap:10px;line-height:1.45;}
.doc-card h2 .num {flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:rgba(229,9,20,.16);color:var(--main);font-size:.9rem;font-weight:800;border:1px solid rgba(229,9,20,.35);}
.doc-card p {color:#d6d6dd;font-size:.95rem;line-height:1.85;margin-bottom:12px;}
.doc-card p:last-child {margin-bottom:0;}
.doc-card ul {list-style:none;padding:0;margin:0 0 6px;}
.doc-card ul li {position:relative;padding-left:20px;color:#d6d6dd;font-size:.94rem;line-height:1.8;margin-bottom:9px;}
.doc-card ul li::before {content:"";position:absolute;left:2px;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--accent);}
.doc-card strong {color:var(--text);font-weight:600;}
.tip-box {border-left:3px solid var(--accent);background:rgba(245,197,24,.07);border-radius:0 12px 12px 0;padding:14px 18px;color:#e6e0c8;font-size:.92rem;line-height:1.8;margin-top:14px;}
.doc-side {position:sticky;top:24px;}
.side-box {background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:20px;}
.side-box h3 {font-size:1rem;font-weight:700;margin-bottom:14px;color:var(--text);}
.side-box h3 i {color:var(--accent);margin-right:8px;}
.side-box a {display:block;color:var(--muted);font-size:.9rem;padding:9px 0;border-bottom:1px dashed var(--line);text-decoration:none;transition:.2s;}
.side-box a:last-child {border-bottom:0;}
.side-box a:hover {color:var(--main);padding-left:5px;}
.side-box p {color:var(--muted);font-size:.88rem;line-height:1.8;margin:0;}
.contact-chip {display:inline-flex;align-items:center;gap:8px;background:rgba(229,9,20,.12);border:1px solid rgba(229,9,20,.4);color:var(--text);border-radius:999px;padding:8px 16px;font-size:.88rem;margin-top:6px;}
.contact-chip i {color:var(--main);}
.doc-side {position:static;margin-top:10px;}

/* --- 子页面追加 --- */
.map-page {padding:64px 0 72px;}
.map-head {max-width:760px;margin-bottom:44px;}
.map-head h1 {font-size:clamp(1.9rem,4vw,3rem);font-weight:900;line-height:1.2;letter-spacing:-.02em;margin:14px 0 18px;}
.map-head p {color:var(--muted);font-size:1.02rem;line-height:1.85;margin:0;}
.map-section {margin-bottom:46px;}
.map-section-head {display:flex;align-items:baseline;gap:14px;margin-bottom:22px;flex-wrap:wrap;}
.map-section-head h2 {font-size:1.35rem;font-weight:800;margin:0;color:var(--text);}
.map-section-head .map-note {color:var(--muted);font-size:.88rem;}
.map-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;}
.map-card {display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 20px 18px;text-decoration:none;color:var(--text);transition:.22s ease;position:relative;overflow:hidden;}
.map-card::after {content:"\f061";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;right:18px;top:20px;font-size:.8rem;color:var(--muted);transition:.22s ease;}
.map-card:hover {border-color:var(--main);transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.45);}
.map-card:hover::after {color:var(--main);transform:translateX(3px);}
.map-card .mc-icon {width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(229,9,20,.14);color:var(--main);font-size:1rem;margin-bottom:14px;}
.map-card .mc-title {font-size:1.02rem;font-weight:700;margin-bottom:6px;display:block;}
.map-card .mc-desc {font-size:.86rem;color:var(--muted);line-height:1.7;display:block;padding-right:14px;}
.map-card.is-here {border-color:var(--accent);background:linear-gradient(160deg,rgba(245,197,24,.09),var(--card));}
.map-card.is-here .mc-icon {background:rgba(245,197,24,.16);color:var(--accent);}
.map-card.is-here::after {content:"\f00c";color:var(--accent);}
.map-card.is-here:hover {transform:none;box-shadow:none;border-color:var(--accent);}
.anchor-list {display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
.anchor-list a {display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);font-size:.88rem;text-decoration:none;transition:.2s ease;}
.anchor-list a i {font-size:.72rem;color:var(--main);}
.anchor-list a:hover {border-color:var(--main);color:#fff;}
.map-tip {margin-top:44px;padding:24px 26px;border:1px dashed var(--line);border-radius:14px;background:rgba(21,21,28,.6);}
.map-tip h3 {font-size:1.05rem;font-weight:800;margin:0 0 10px;color:var(--text);}
.map-tip p {margin:0;color:var(--muted);font-size:.9rem;line-height:1.85;}
.map-tip a {color:var(--accent);text-decoration:none;}
.map-tip a:hover {text-decoration:underline;}
.map-page {padding:44px 0 56px;}
.map-grid {grid-template-columns:1fr;}
.map-tip {padding:20px;}

/* --- Bootstrap 组件配色适配(程序自动补,避免白底黑字) --- */
.accordion-header { background:transparent !important; }
