/*
 * 条款类页面的正文排版（隐私政策 / 使用条款）
 *
 * 设计稿里没有这两页——法务页通常不出稿。所以外观沿用站上现成的语言：
 * 面包屑 + 标题横幅走全站那套组件，这里只管正文区的阅读排版：
 *   正文 16/28 #333、段间 20，标题 h2 28/34 Bold 黑、h3 20/28
 *   列表缩进 24、项间 8，链接主题色带下划线
 *   正文宽度收到 860，一行 70~80 字符左右，长条款读着不累
 *
 * 正文用的是 Elementor 自带的文本编辑器组件（容器挂 .astra-legal），
 * 业主/律师直接在后台改文字即可，不用动代码。
 */

.astra-legal {
  --lg-primary: #e60012;
  --lg-strong: #141414;
  --lg-text: #333333;
  --lg-muted: #808080;
  --lg-line: #dedfe0;
  --lg-bg-subtle: #f9f9f9;

  font-family: inherit;
  color: var(--lg-text);
}

/* 更新日期那一行 */
.astra-legal .astra-legal__meta,
.astra-legal .astra-legal__meta p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: var(--lg-muted);
}

/* ------------------------------------------------------------ 正文
 * 阅读栏宽度收到 860（约 70~80 字符一行）。
 * 选择器要写到 4 个类：Elementor 自己有一条
 *   .e-con.e-con > .e-con-inner > .elementor-widget { max-width: 100% }
 * 是 3 个类，两个类的写法压不过它，正文会被拉满整行。
 */
.astra-legal .elementor-element.elementor-widget.astra-legal__body,
.astra-legal .elementor-element.elementor-widget.astra-legal__note {
  width: 100%;
  max-width: var(--lg-width, 860px);
}

.astra-legal .astra-legal__body p {
  margin: 0 0 var(--lg-gap, 20px);
  font-size: var(--lg-size, 16px);
  line-height: var(--lg-line-height, 28px);
  color: var(--lg-text);
  overflow-wrap: break-word;
}

.astra-legal .astra-legal__body p:last-child {
  margin-bottom: 0;
}

.astra-legal .astra-legal__body h2 {
  margin: var(--lg-h2-top, 48px) 0 16px;
  font-size: var(--lg-h2-size, 28px);
  line-height: 34px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--lg-strong);
}

.astra-legal .astra-legal__body h2:first-child {
  margin-top: 0;
}

.astra-legal .astra-legal__body h3 {
  margin: 28px 0 12px;
  font-size: var(--lg-h3-size, 20px);
  line-height: 28px;
  font-weight: 700;
  color: var(--lg-strong);
}

/* 主题的 reset 把 ul/li 的 list-style 清成了 none（全站的列表都是导航、卡片，
   本来就不需要圆点）。条款页是站上第一处真正的正文列表，这里单独还原回来，
   圆点用主题红，跟标题下那条红线、底部联系块的红边保持一套。 */
.astra-legal .astra-legal__body ul,
.astra-legal .astra-legal__body ol {
  margin: 0 0 var(--lg-gap, 20px);
  padding-left: 24px;
}

.astra-legal .astra-legal__body ul {
  list-style: disc outside;
}

.astra-legal .astra-legal__body ol {
  list-style: decimal outside;
}

.astra-legal .astra-legal__body li {
  list-style: inherit;
}

.astra-legal .astra-legal__body li::marker {
  color: var(--lg-primary);
}

.astra-legal .astra-legal__body li {
  margin: 0 0 8px;
  font-size: var(--lg-size, 16px);
  line-height: var(--lg-line-height, 28px);
  color: var(--lg-text);
}

.astra-legal .astra-legal__body li:last-child {
  margin-bottom: 0;
}

.astra-legal .astra-legal__body strong {
  color: var(--lg-strong);
}

/* 正文和末尾联系块里的链接是一套：主题红 + 下划线。
   底部那个 mailto 不带上的话会继承全局 kit 的灰色无下划线，看着不像能点。 */
.astra-legal .astra-legal__body a,
.astra-legal .astra-legal__note a {
  color: var(--lg-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.astra-legal .astra-legal__body a:hover,
.astra-legal .astra-legal__note a:hover {
  text-decoration-thickness: 2px;
}

/* 表格：条款里偶尔会有对照表（比如 cookie 清单） */
.astra-legal .astra-legal__body table {
  width: 100%;
  margin: 0 0 var(--lg-gap, 20px);
  border-collapse: collapse;
  font-size: 15px;
  line-height: 24px;
}

.astra-legal .astra-legal__body th,
.astra-legal .astra-legal__body td {
  padding: 12px 16px;
  border: 1px solid var(--lg-line);
  text-align: left;
  vertical-align: top;
}

.astra-legal .astra-legal__body th {
  background: var(--lg-bg-subtle);
  font-weight: 700;
  color: var(--lg-strong);
}

/* 末尾的联系方式块 */
.astra-legal .astra-legal__note {
  margin: 40px 0 0;
  padding: 24px;
  background: var(--lg-bg-subtle);
  border-left: 4px solid var(--lg-primary);
}

.astra-legal .astra-legal__note p {
  margin: 0 0 8px;
  font-size: 15px;
  line-height: 26px;
}

.astra-legal .astra-legal__note p:last-child {
  margin-bottom: 0;
}

/* ======================================================= 窄屏 */
@media (max-width: 768px) {
  .astra-legal .astra-legal__body h2 {
    margin-top: 36px;
    font-size: clamp(13px, 4.2vw, 22px);
    line-height: clamp(17.73px, 5.73vw, 30px);
  }

  .astra-legal .astra-legal__body h3 {
    font-size: clamp(12px, 3.8vw, 18px);
    line-height: clamp(17.33px, 5.49vw, 26px);
  }

  .astra-legal .astra-legal__body p,
  .astra-legal .astra-legal__body li {
    font-size: clamp(12px, 3.6vw, 15px);
    line-height: clamp(20.8px, 6.24vw, 26px);
  }

  .astra-legal .astra-legal__body table {
    display: block;
    overflow-x: auto;
  }
}
