/* Local introduction for 寻常·录: quiet field notes about ordinary lives. */
.xunchang-reading { max-width:820px; margin:0 auto; color:var(--ink); }
.xunchang-nowrap { white-space:nowrap; }
.xunchang-kicker { margin:0 0 18px; color:var(--accent); font-size:13px; line-height:1.7; }
.xunchang-intro { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr); gap:52px; align-items:end; padding:4px 0 48px; border-bottom:1px solid var(--ink); }
.xunchang-intro h1 { margin:0 0 17px; font:600 clamp(44px,5.2vw,66px)/1.22 var(--serif); }
.xunchang-lead { max-width:15em; margin:0; font:500 clamp(24px,3vw,33px)/1.7 var(--serif); word-break:keep-all; overflow-wrap:anywhere; }
.xunchang-intro-copy { display:grid; gap:15px; align-content:end; }
.xunchang-description { margin:0; color:var(--muted); font:400 17px/1.9 var(--serif); }
.xunchang-intro-link { width:max-content; min-height:44px; display:inline-flex; align-items:center; color:var(--accent); font-size:13px; }

.xunchang-note { padding:48px 0 44px; border-bottom:1px solid var(--line); }
.xunchang-note h2 { max-width:16em; margin:0 0 26px; font:600 clamp(29px,3.4vw,39px)/1.6 var(--serif); word-break:keep-all; overflow-wrap:anywhere; }
.xunchang-note > p:not(.xunchang-kicker) { max-width:39em; margin:0 0 20px; color:var(--ink-soft); font:400 18px/2 var(--serif); }
.xunchang-note > p:last-child { margin-bottom:0; }

.xunchang-field { display:grid; grid-template-columns:170px minmax(0,1fr); gap:34px; padding:38px 0 42px; border-bottom:1px solid var(--ink); }
.xunchang-field-title h2 { margin:0; font:600 23px/1.55 var(--serif); }
.xunchang-field dl { display:grid; grid-template-columns:88px minmax(0,1fr); margin:0; border-top:1px solid var(--line); }
.xunchang-field dt,.xunchang-field dd { margin:0; padding:17px 0; border-bottom:1px solid var(--line); }
.xunchang-field dt { color:var(--accent); font-size:12px; }
.xunchang-field dd { color:var(--muted); font:400 16px/1.8 var(--serif); }

.xunchang-method { padding:43px 0 46px; }
.xunchang-method-head { display:flex; align-items:baseline; justify-content:space-between; gap:24px; margin-bottom:16px; }
.xunchang-method-head h2 { margin:0; font:600 25px/1.55 var(--serif); }
.xunchang-method-head p { margin:0; color:var(--muted); font-size:13px; }
.xunchang-method ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.xunchang-method li { display:grid; grid-template-columns:58px 180px minmax(0,1fr); gap:22px; padding:23px 0; border-bottom:1px solid var(--line); }
.xunchang-number { padding-top:4px; color:var(--accent); font-size:12px; font-variant-numeric:tabular-nums; }
.xunchang-method h3 { margin:0; font:600 20px/1.55 var(--serif); }
.xunchang-method li p { margin:0; color:var(--muted); font:400 15px/1.9 var(--serif); }

.xunchang-examples,
.xunchang-submit,
.xunchang-consent,
.xunchang-fee { padding:43px 0 46px; border-top:1px solid var(--line); }
.xunchang-examples .xunchang-method-head { margin-bottom:16px; }
.xunchang-example { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:24px; padding:20px 0; border-top:1px solid var(--line); }
.xunchang-example p { margin:0; color:var(--ink-soft); font:400 16px/1.9 var(--serif); }
.xunchang-example strong { color:var(--accent); font-weight:600; }
.xunchang-submit h2,
.xunchang-consent h2,
.xunchang-fee h2 { max-width:18em; margin:0 0 22px; font:600 clamp(27px,3vw,35px)/1.55 var(--serif); }
.xunchang-submit > p:not(.xunchang-kicker),
.xunchang-consent > p:not(.xunchang-kicker),
.xunchang-fee > p:not(.xunchang-kicker) { max-width:39em; margin:0 0 18px; color:var(--ink-soft); font:400 17px/1.95 var(--serif); }
.xunchang-submit > p:last-child,
.xunchang-consent > p:last-child,
.xunchang-fee > p:last-child { margin-bottom:0; }
.xunchang-contact { padding-top:8px; }
.xunchang-contact a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.xunchang-first a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }

.xunchang-first { margin:2px 0 18px; padding:34px 0 8px; border-top:1px solid var(--ink); }
.xunchang-first h2 { max-width:18em; margin:0 0 18px; font:600 clamp(27px,3vw,35px)/1.55 var(--serif); }
.xunchang-first p:not(.xunchang-kicker) { max-width:39em; margin:0; color:var(--muted); font:400 17px/1.95 var(--serif); }
.xunchang-end { width:24px; height:2px; margin:46px auto 16px; background:var(--accent); }
.xunchang-page .learn-footer a { display:inline-flex; align-items:center; min-height:44px; }

@media (max-width:820px) {
  .xunchang-reading { margin-inline:4px; }
  .xunchang-kicker { margin-bottom:14px; font-size:12px; }
  .xunchang-intro { grid-template-columns:1fr; gap:21px; padding:0 0 32px; }
  .xunchang-intro h1 { margin-bottom:12px; font-size:42px; }
  .xunchang-lead { font-size:22px; }
  .xunchang-description { font-size:16px; }
  .xunchang-intro-copy { gap:12px; }
  .xunchang-note { padding:36px 0 34px; }
  .xunchang-note h2 { margin-bottom:21px; font-size:28px; }
  .xunchang-note > p:not(.xunchang-kicker) { margin-bottom:18px; font-size:17px; line-height:1.95; }
  .xunchang-field { grid-template-columns:1fr; gap:18px; padding:31px 0 34px; }
  .xunchang-field-title h2 { font-size:22px; }
  .xunchang-method { padding:34px 0 38px; }
  .xunchang-method-head { align-items:flex-start; flex-direction:column; gap:4px; }
  .xunchang-method-head h2 { font-size:23px; }
  .xunchang-method li { grid-template-columns:42px minmax(0,1fr); gap:12px; padding:20px 0; }
  .xunchang-method h3 { font-size:20px; }
  .xunchang-method li p { grid-column:2; font-size:15px; }
  .xunchang-examples,
  .xunchang-submit,
  .xunchang-consent,
  .xunchang-fee { padding:34px 0 38px; }
  .xunchang-example { grid-template-columns:1fr; gap:5px; padding:17px 0; }
  .xunchang-example p { font-size:16px; line-height:1.85; }
  .xunchang-submit h2,
  .xunchang-consent h2,
  .xunchang-fee h2 { font-size:27px; }
  .xunchang-submit > p:not(.xunchang-kicker),
  .xunchang-consent > p:not(.xunchang-kicker),
  .xunchang-fee > p:not(.xunchang-kicker) { font-size:16px; line-height:1.9; }
  .xunchang-first { padding-top:30px; }
  .xunchang-first p:not(.xunchang-kicker) { font-size:16px; }
}
@media (max-width:360px) { .xunchang-reading { margin-inline:0; } }
