/* 四川汇西律师事务所 · 蒲浪律师 —— 全站样式 */
:root{
  --paper:#faf8f4; --paper-2:#f4f0e9;
  --ink:#1b1a17; --ink-soft:#4a4741; --ink-faint:#8a8580;
  --rule:#e2ddd3; --rule-soft:#eeebe4;
  --accent:#8a2f2a;
  --serif:"Source Han Serif SC","Noto Serif SC","Songti SC","STSong","SimSun",serif;
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --wide:60rem; --text:40rem;
}
@media (prefers-color-scheme: dark){
  :root{
    --paper:#161513; --paper-2:#1d1b18;
    --ink:#eae5dc; --ink-soft:#b5afa4; --ink-faint:#7e7972;
    --rule:#312d27; --rule-soft:#252220;
    --accent:#d99089;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);
  font-size:16.5px;line-height:1.8;text-wrap:pretty;-webkit-font-smoothing:antialiased}
.shell{max-width:var(--wide);margin:0 auto;padding:0 1.5rem}
a{color:var(--accent);text-decoration:underline;text-underline-offset:.18em;
  text-decoration-thickness:1px;text-decoration-color:color-mix(in oklab,var(--accent) 32%,transparent)}
a:hover{text-decoration-color:var(--accent)}
a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:1rem;top:1rem;z-index:9;background:var(--paper);padding:.5rem .8rem;border:1px solid var(--rule)}

.note-bar{font-size:12.5px;line-height:1.6;color:var(--ink-faint);border-bottom:1px solid var(--rule);
  padding:.5rem 1.5rem;text-align:center;letter-spacing:.02em;background:var(--paper-2)}

/* 头部 */
.site-head{border-bottom:1px solid var(--rule)}
.head-main{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
  gap:.5rem 1.5rem;padding-top:1.35rem;padding-bottom:.6rem}
.brand{font-family:var(--serif);font-size:1.16rem;font-weight:600;letter-spacing:.02em;
  color:var(--ink);text-decoration:none;display:block;line-height:1.5}
.brand-sep{color:var(--ink-faint);font-weight:400;letter-spacing:0}
.head-team{padding-bottom:1.1rem}
.head-team p{margin:0;font-size:12.5px;line-height:1.8;color:var(--ink-soft);
  letter-spacing:.035em;text-wrap:pretty}
.head-contact{font-size:13px;color:var(--ink-faint);line-height:1.7;text-align:right;margin:0}
.head-contact .tel{font-family:var(--mono);color:var(--ink-soft);font-size:14px;letter-spacing:.02em}
@media (max-width:640px){.head-contact{text-align:left;padding-top:.4rem}
  .brand{font-size:1.04rem}
  .brand-sep{display:none}
  .brand-sub{display:block;font-size:.92em;font-weight:400;color:var(--ink-soft)}
  .head-team p{font-size:12px;letter-spacing:.02em}}

.channels{background:var(--paper-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.channels ul{list-style:none;margin:0 auto;padding:.6rem 1.5rem;display:flex;flex-wrap:wrap;
  gap:.1rem 1rem;max-width:var(--wide);font-size:13px;line-height:1.9}
.channels a{color:var(--ink-soft);text-decoration:none;padding:.1rem 0;display:inline-block}
.channels a:hover{color:var(--accent);text-decoration:underline}
.channels a[aria-current="page"]{color:var(--accent);font-weight:600}

/* 律师名片卡：照片 + 信息 + 微信二维码 */
.vcard{display:grid;grid-template-columns:9.5rem minmax(0,1fr) 8rem;gap:1.4rem;
  align-items:start;margin:0 0 2.2rem;padding:1.2rem;border:1px solid var(--rule);
  background:var(--paper-2);border-radius:3px}
.vcard-photo{margin:0}
.vcard-photo img{display:block;width:100%;height:auto;border-radius:2px;border:1px solid var(--rule)}
.vcard-body{padding-top:.1rem}
.vcard-role{margin:0 0 .4rem;font-size:12px;letter-spacing:.06em;color:var(--ink-faint);line-height:1.7}
.vcard-name{margin:0 0 .55rem;font-family:var(--serif);font-size:1.55rem;font-weight:600;
  line-height:1.3;letter-spacing:.06em;color:var(--ink)}
.vcard-meta{margin:0 0 .75rem;font-size:13.5px;color:var(--ink-soft);line-height:1.7}
.vcard-tel{margin:0;font-size:13.5px;color:var(--ink-soft)}
.vcard-tel .tel{font-family:var(--mono);font-size:15px;color:var(--ink);letter-spacing:.02em}
.vcard-link{margin:.55rem 0 0;font-size:13px;line-height:1.7}
.vcard-link a{color:var(--accent);text-decoration:none;
  border-bottom:1px solid color-mix(in oklab,var(--accent) 38%,transparent);padding-bottom:.06em}
.vcard-link a:hover{border-bottom-color:var(--accent)}
.vcard-qr{margin:0;text-align:center}
.vcard-qr img{display:block;width:100%;height:auto;border:1px solid var(--rule);
  border-radius:2px;background:#fff;padding:.25rem}
.vcard-qr figcaption{margin-top:.4rem;font-size:11px;letter-spacing:.06em;color:var(--ink-faint)}
.vcard-solo{display:block;padding:.95rem 1.2rem}
@media (max-width:720px){
  .vcard{grid-template-columns:6.2rem minmax(0,1fr);gap:1rem;padding:1rem}
  .vcard-qr{grid-column:1 / -1;display:flex;align-items:center;gap:.9rem;text-align:left}
  .vcard-qr img{width:5.6rem;flex:none}
  .vcard-qr figcaption{margin:0;font-size:12px}
  .vcard-name{font-size:1.3rem}
  .vcard-role{font-size:11.5px}
  .channels ul{font-size:12px;gap:.05rem .7rem;padding:.5rem 1rem;line-height:1.85}
}

/* 首屏 */
.hero{padding:3.2rem 0 1.5rem}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ink-faint);margin:0 0 1rem}
h1{font-family:var(--serif);font-weight:600;font-size:clamp(1.75rem,4.2vw,2.35rem);
  line-height:1.34;letter-spacing:.01em;margin:0 0 .85rem}
.lede{font-size:1.04rem;color:var(--ink-soft);margin:0;max-width:var(--text)}
.lede strong{color:var(--ink);font-weight:600}
.hero-motto{margin:1.3rem 0 0;max-width:var(--text);padding:.7rem 0 .7rem 1.1rem;
  border-left:3px solid var(--accent);font-size:1.05rem;font-weight:600;
  color:var(--ink);letter-spacing:.02em}
.hero-note{margin:.85rem 0 0;max-width:var(--text);font-size:13px;color:var(--ink-faint)}
.hero-facts{display:flex;flex-wrap:wrap;gap:.45rem 0;margin:1.6rem 0 0;padding-top:1.2rem;
  border-top:1px solid var(--rule);font-size:13.5px;color:var(--ink-faint)}
.hero-facts b{font-weight:500;color:var(--ink-soft)}
.hero-facts span{position:relative;padding-right:1.7rem}
.hero-facts span:last-child{padding-right:0}
.hero-facts span:not(:last-child)::after{content:"";position:absolute;right:.7rem;top:.4em;bottom:.4em;
  border-right:1px solid var(--rule)}
@media (max-width:600px){
  .hero-facts{flex-direction:column;gap:.1rem}
  .hero-facts span{padding-right:0}
  .hero-facts span:not(:last-child)::after{display:none}
}

/* 频道块 */
.chan-block{padding:2.5rem 0 2.2rem;border-top:1px solid var(--rule)}
.chan-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.35rem}
.chan-head h2{font-family:var(--serif);font-size:1.32rem;font-weight:600;letter-spacing:.02em;margin:0}
.chan-head h2 a{color:var(--ink);text-decoration:none}
.chan-head h2 a:hover{color:var(--accent)}
.chan-head .more{font-size:13px;white-space:nowrap;color:var(--ink-faint);text-decoration:none}
.chan-head .more:hover{color:var(--accent);text-decoration:underline}
.chan-desc{font-size:14px;color:var(--ink-faint);margin:0 0 1.3rem;max-width:var(--text)}

/* 律师简介频道：那句概括后面直接跟电话 / 微信 */
.chan-contact{margin:.8rem 0 0;font-size:13.5px;color:var(--ink-soft);letter-spacing:.02em}
.chan-block .chan-contact{margin:-.7rem 0 1.35rem}
.chan-contact .tel{font-family:var(--mono);font-size:16px;color:var(--ink);letter-spacing:.05em}

.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 2.2rem}
@media (max-width:680px){.cards{grid-template-columns:1fr}}
.card{border-top:1px solid var(--rule-soft);padding-top:.8rem}
.card time{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-faint)}
.card h3{font-family:var(--serif);font-size:1.02rem;font-weight:600;line-height:1.55;
  margin:.3rem 0 .35rem;letter-spacing:.01em}
.card h3 a{color:var(--ink);text-decoration:none}
.card h3 a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:.16em}
.card p{font-size:14px;line-height:1.72;color:var(--ink-soft);margin:0}

/* 频道页 / 文章页 */
.page-head{padding:2.6rem 0 1.8rem}
.crumb{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;color:var(--ink-faint);margin:0 0 1.2rem}
.crumb a{color:var(--ink-faint);text-decoration:none}
.crumb a:hover{color:var(--accent);text-decoration:underline}
.crumb span{margin:0 .45rem;opacity:.55}

.list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.list li{padding:1.15rem 0;border-bottom:1px solid var(--rule-soft)}
.list .row{display:flex;align-items:baseline;justify-content:space-between;gap:1.2rem}
.list h2{font-family:var(--serif);font-size:1.05rem;font-weight:600;line-height:1.6;margin:0;letter-spacing:.01em}
.list h2 a{color:var(--ink);text-decoration:none}
.list h2 a:hover{color:var(--accent);text-decoration:underline}
.list time{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-faint);white-space:nowrap}
.list p{font-size:14px;line-height:1.72;color:var(--ink-soft);margin:.3rem 0 0;max-width:44rem}
.tag{font-size:11.5px;color:var(--ink-faint);border:1px solid var(--rule);
  padding:.05rem .35rem;border-radius:2px;margin-left:.5rem;vertical-align:.1em;white-space:nowrap}

.prose{max-width:52rem;padding-bottom:1rem}
.prose > p,.prose > ul,.prose > ol,.prose > dl,.prose > h2,.prose > h3,
.prose > blockquote,.prose > figure{margin-right:auto;max-width:var(--text)}
.prose img{max-width:100%;height:auto}
.prose p{margin:0 0 1.15rem}
.prose h2{font-family:var(--serif);font-size:1.24rem;font-weight:600;line-height:1.5;
  margin:2.6rem 0 .8rem;letter-spacing:.01em;padding-left:.75rem;
  border-left:2px solid color-mix(in oklab,var(--accent) 55%,transparent)}
.prose h3{font-family:var(--sans);font-size:1rem;font-weight:600;line-height:1.6;margin:1.8rem 0 .6rem}
.prose strong{font-weight:600;color:var(--ink)}
.prose ul,.prose ol{margin:0 0 1.15rem;padding-left:1.3rem}
.prose li{margin:.3rem 0}
.prose dl{margin:0 0 1.4rem;border-top:1px solid var(--rule-soft)}
.prose dl div{display:grid;grid-template-columns:7rem 1fr;gap:1rem;padding:.55rem 0;
  border-bottom:1px solid var(--rule-soft);font-size:15px}
.prose dt{color:var(--ink-faint);font-size:14px}
.prose dd{margin:0}
@media (max-width:520px){
  .prose dl div{grid-template-columns:1fr;gap:.05rem}
}

/* ---- 服务方案三档对比表（基础 / 标准 / 升级） ---- */
.prose .tier-wrap{margin:1.1rem 0 1.6rem;overflow-x:auto}
.prose table.tier{width:100%;border-collapse:collapse;font-size:14.5px;min-width:33rem;table-layout:fixed}
.prose table.tier th,.prose table.tier td{padding:.6rem .65rem;box-sizing:border-box;
  border-bottom:1px solid var(--rule-soft);text-align:left;vertical-align:top}
.prose table.tier thead th{font-family:var(--mono);font-size:11px;letter-spacing:.1em;
  font-weight:500;color:var(--ink-faint);border-bottom:1px solid var(--rule);white-space:nowrap}
.prose table.tier thead th:first-child{width:44%}
.prose table.tier thead th:nth-child(2),
.prose table.tier thead th:nth-child(3),
.prose table.tier thead th:nth-child(4){width:18.6%}
.prose table.tier thead th:nth-child(n+2),
.prose table.tier td:nth-child(n+2){border-left:1px solid var(--rule-soft);padding-left:.9rem}
.prose table.tier tbody th{font-weight:600;font-size:14.5px}
.prose table.tier tbody tr:last-child th,.prose table.tier tbody tr:last-child td{border-bottom:none}
.prose table.tier td{white-space:nowrap;font-variant-numeric:tabular-nums}
.prose table.tier .tn{display:block;font-weight:400;font-size:12.5px;line-height:1.7;
  color:var(--ink-soft);margin-top:.25rem;white-space:normal}
.prose .tier-note{font-size:12.5px;line-height:1.75;color:var(--ink-soft);margin:-.5rem 0 1.6rem}

/* ---- 三档年度费用 + 适用对象 ---- */
.prose .tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;margin:1.1rem 0 1.7rem}
.prose .tiers > div{border:1px solid var(--rule);padding:.95rem 1rem}
.prose .tiers .t-name{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;
  color:var(--ink-faint);text-transform:uppercase;margin:0}
.prose .tiers .t-price{font-family:var(--serif);font-size:1.42rem;font-weight:600;
  margin:.3rem 0 .45rem;color:var(--ink)}
.prose .tiers .t-for{font-size:12.5px;line-height:1.75;color:var(--ink-soft);margin:0}

@media (max-width:640px){
  .prose table.tier{min-width:0}
  .prose table.tier thead{display:none}
  .prose table.tier tbody tr{display:block;padding:.7rem 0;border-bottom:1px solid var(--rule-soft)}
  .prose table.tier tbody tr:last-child{border-bottom:none}
  .prose table.tier th,.prose table.tier td{display:block;padding:0;border:none}
  .prose table.tier td:nth-child(n+2),
  .prose table.tier thead th:nth-child(n+2){border-left:none;padding-left:0}
  .prose table.tier tbody th{margin-bottom:.4rem}
  .prose table.tier td{display:grid;grid-template-columns:3.2rem 1fr;gap:.6rem;
    font-size:13.5px;padding:.12rem 0}
  .prose table.tier td::before{content:attr(data-t);color:var(--ink-faint);font-size:12px}
  .prose .tiers{grid-template-columns:1fr}
}

.pager{display:flex;justify-content:space-between;gap:1.5rem;padding:1.6rem 0;
  border-top:1px solid var(--rule);font-size:14px;flex-wrap:wrap}
.pager a{text-decoration:none;color:var(--ink-soft)}
.pager a:hover{color:var(--accent);text-decoration:underline}
.pager .dir{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;
  color:var(--ink-faint);text-transform:uppercase;margin-bottom:.2rem}

.crossnav{padding:2.2rem 0 1rem;border-top:1px solid var(--rule)}
.crossnav p{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .7rem}
.crossnav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;font-size:13.5px}
.crossnav a{color:var(--ink-soft);text-decoration:none}
.crossnav a:hover{color:var(--accent);text-decoration:underline}

/* 页脚：联系方式直接展示，不需要跳转 */
.site-foot{border-top:1px solid var(--rule);margin-top:1rem;background:var(--paper-2)}
.foot-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem 2.5rem;padding:2.2rem 0 1.6rem}
@media (max-width:720px){.foot-main{grid-template-columns:1fr;gap:1.2rem}}
.foot-main h2{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink-faint);margin:0 0 .45rem}
.foot-main p{margin:0;font-size:14px;line-height:1.75;color:var(--ink-soft)}
.foot-main .tel{font-family:var(--mono);font-size:15px;letter-spacing:.02em;color:var(--ink)}
.foot-main a{color:var(--ink);text-decoration:none}
.foot-main a:hover{color:var(--accent);text-decoration:underline}
.foot-legal{border-top:1px solid var(--rule);padding:1.3rem 0 2.6rem;font-size:12.5px;line-height:1.8;color:var(--ink-faint)}
.foot-legal p{margin:0 0 .5rem}
.foot-legal .disc{border-left:2px solid var(--rule);padding-left:.85rem;margin-bottom:1rem}
.foot-legal .site-counter{font-variant-numeric:tabular-nums}
.foot-legal .site-counter span{color:var(--ink);font-weight:600}

@media print{
  .note-bar,.channels,.head-contact,.crossnav,.pager{display:none}
  body{background:#fff;color:#000;font-size:11pt}
  a{color:#000;text-decoration:none}
  .site-foot{background:#fff}
}

/* 文章末尾的关键词行 */
.article-kw{margin:2rem 0 0;padding-top:.9rem;border-top:1px solid var(--rule);
  font-size:12.5px;color:var(--ink-faint);letter-spacing:.02em}

/* 文章内人物照 */
.prose figure.portrait{margin:0 0 1.7rem;max-width:17rem}
.prose figure.portrait img{display:block;width:100%;height:auto;border:1px solid var(--rule);border-radius:2px}
.prose figure.portrait figcaption{margin-top:.55rem;font-size:12.5px;line-height:1.7;color:var(--ink-faint)}

/* ---- 案例/实务文章：结论块、审查清单、法条与免责 ---- */
.prose blockquote{margin:1.4rem 0;padding-left:1rem;border-left:2px solid var(--rule-soft);color:var(--ink-soft)}
.prose .verdict{margin:0 0 1.7rem;padding:.95rem 1.1rem;border-left:2px solid var(--accent);
  background:var(--paper-2);font-size:15.5px;line-height:1.85}
.prose .verdict p{margin:0}
.prose .verdict strong{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;
  color:var(--ink-faint);font-weight:500;margin-bottom:.35rem}
.prose ul.checklist{list-style:none;padding-left:0}
.prose ul.checklist li{position:relative;padding-left:1.6rem;margin:.5rem 0;line-height:1.8}
.prose ul.checklist li::before{content:"";position:absolute;left:0;top:.5rem;width:.72rem;height:.72rem;
  border:1px solid color-mix(in oklab,var(--accent) 45%,var(--rule));border-radius:2px}
.prose ul.statutes li{margin:.55rem 0;line-height:1.8;font-size:15px;color:var(--ink-soft)}
.prose ul.statutes li strong{color:var(--ink)}
.prose .article-meta{font-size:12.5px;line-height:1.75;color:var(--ink-faint);margin:1.8rem 0 0}
.prose blockquote.disclaimer{margin:.55rem 0 0;padding:.8rem 0 0;border-left:0;
  border-top:1px solid var(--rule);font-size:12.5px;line-height:1.75;color:var(--ink-faint)}

/* 文末关注二维码 */
.prose .follow-box{display:flex;align-items:center;gap:1.1rem;margin:1.9rem 0 0;
  padding:1rem 1.1rem;border:1px solid var(--rule);background:var(--paper-2);border-radius:3px}
.prose .follow-box img{display:block;width:6.6rem;height:auto;border:1px solid var(--rule);
  border-radius:2px;background:#fff;padding:.2rem;flex:0 0 auto}
.prose .follow-box p{margin:0}
.prose .follow-title{font-size:14px;font-weight:600;color:var(--ink);line-height:1.6;margin-bottom:.3rem}
.prose .follow-note{font-size:12.5px;line-height:1.75;color:var(--ink-faint)}
@media (max-width:520px){
  .prose figure.portrait{max-width:12rem}
  .prose .follow-box{gap:.85rem;padding:.85rem}
  .prose .follow-box img{width:5.4rem}
}

/* ---- 《企业风控手册》导入的 80 篇 ---- */
/* 目录页：编号 + 标题的紧凑索引 */
.prose ul.toc-list{list-style:none;padding-left:.95rem;margin:0 0 1.5rem;
  border-left:1px solid var(--rule-soft)}
.prose ul.toc-list li{margin:0;font-size:15px;line-height:1.95}
.prose ul.toc-list strong{font-family:var(--mono);font-size:12px;font-weight:500;
  color:var(--ink-faint);letter-spacing:.05em;margin-right:.2rem}

/* Markdown 表格（双主线框架表） */
.prose .table-wrap{margin:1.1rem 0 1.6rem;overflow-x:auto;border-top:1px solid var(--rule)}
.prose .table-wrap table{width:100%;border-collapse:collapse;font-size:14.5px;min-width:26rem}
.prose .table-wrap th,.prose .table-wrap td{padding:.62rem .7rem;text-align:left;
  vertical-align:top;line-height:1.7;border-bottom:1px solid var(--rule-soft)}
.prose .table-wrap thead th{font-family:var(--mono);font-size:11px;font-weight:500;
  letter-spacing:.08em;color:var(--ink-faint);white-space:nowrap}
.prose .table-wrap tbody tr:last-child td{border-bottom:none}
.prose .table-wrap tbody td:first-child{color:var(--ink);font-weight:600}

/* 文章头部：真实判例 / 虚构案例标识 */
.hero-facts .case-tag{font-family:var(--mono);font-size:11px;letter-spacing:.05em;
  padding:.1rem .5rem;border:1px solid var(--rule);border-radius:2px;color:var(--ink-soft)}
.hero-facts .case-tag.real{color:var(--accent);
  border-color:color-mix(in oklab,var(--accent) 42%,var(--rule))}
.hero-facts .case-tag.fict{color:var(--ink-faint);border-style:dashed}
.hero-facts .case-tag b{font-weight:500;color:inherit}

/* 频道列表：编号 */
.list h2 .num{display:inline-block;min-width:2.2rem;font-family:var(--mono);font-size:11px;
  font-weight:500;letter-spacing:.06em;color:var(--ink-faint);vertical-align:.09em}

/* ---- 李阳案例 12 篇：编号行 / 注释行 / 段内小标题 ---- */
.prose .article-meta:first-child{margin:0 0 1.5rem;padding-bottom:.75rem;
  border-bottom:1px solid var(--rule-soft);letter-spacing:.02em}
.prose p.note{font-size:12.5px;line-height:1.8;color:var(--ink-faint);margin:-.35rem 0 1.15rem}
.prose p.sub{margin:1.9rem 0 .55rem}
.prose p.sub strong{font-family:var(--sans);font-size:15px;font-weight:600;
  color:var(--ink);letter-spacing:.01em}
.prose p.sub + p{margin-top:0}
