:root{color-scheme:dark}*{box-sizing:border-box}html{background:var(--sv-bg);color:var(--sv-bone);scroll-behavior:smooth}body{margin:0;background:var(--sv-bg);font-family:var(--sv-font-body);line-height:var(--sv-leading);overflow-x:hidden}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:var(--fs-space-1)}.grain,.coordinate-grid{position:fixed;inset:0;pointer-events:none;z-index:-2}.grain{background:url('/assets/site-v2/paper-charcoal.webp') center/500px;opacity:.12}.coordinate-grid{inset:var(--fs-space-5);z-index:-1;border:1px solid var(--sv-line);background:url('/assets/site-v2/paper-bone.webp') center/420px;opacity:.12;mix-blend-mode:soft-light}.case-masthead,.case-footer{width:var(--sv-shell);margin:0 auto}.case-masthead{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--fs-space-4);align-items:center;padding:var(--fs-space-5) 0;border-bottom:1px solid var(--sv-line);font:var(--fs-text-xs) var(--sv-font-mono);letter-spacing:.09em}.case-mark{color:var(--sv-bone);text-decoration:none;font:500 var(--fs-text-md) var(--sv-font-display);letter-spacing:.12em}.case-mark span{margin-left:var(--fs-space-1);font-family:var(--sv-font-cjk-display);color:var(--sv-noted)}.case-masthead>p{margin:0;color:var(--sv-compass);text-align:center}.case-masthead nav{display:flex;justify-content:flex-end;gap:var(--fs-space-4)}.case-file{width:var(--sv-shell);margin:0 auto;padding:clamp(var(--fs-space-8),11vw,9rem) 0 clamp(var(--fs-space-8),9vw,7rem)}.case-intake{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,6fr);gap:var(--fs-space-6);padding-bottom:clamp(var(--fs-space-8),9vw,7rem)}.docket{margin:0;padding-right:var(--fs-space-4);border-right:1px solid var(--sv-line);font:var(--fs-text-2xs)/1.7 var(--sv-font-mono);letter-spacing:.1em;color:var(--sv-compass)}.docket p{margin:0 0 var(--fs-space-4)}.case-kicker,.case-index,.case-tag{font:var(--fs-text-xs) var(--sv-font-mono);letter-spacing:.1em}.case-kicker{margin:0 0 var(--fs-space-5);color:var(--sv-noted)}.case-title{max-width:760px;margin:0;font:500 clamp(3.7rem,9vw,8.25rem)/.84 var(--sv-font-display);letter-spacing:-.055em}.case-title .brush{display:block;margin-top:var(--fs-space-4);font:clamp(2rem,4.5vw,4.4rem)/1 var(--sv-font-cjk-display);letter-spacing:.04em;color:var(--sv-noted)}.case-deck{max-width:620px;margin:var(--fs-space-6) 0 0;font:var(--fs-text-xl)/1.38 var(--sv-font-display)}.case-boundary{grid-column:2;max-width:500px;margin:var(--fs-space-5) 0 0;padding-left:var(--fs-space-3);border-left:2px solid var(--sv-clear);font:var(--fs-text-xs)/1.6 var(--sv-font-mono);letter-spacing:.04em;color:var(--sv-compass)}.policy-ledger{display:grid;grid-template-columns:minmax(180px,2fr) minmax(0,5fr);gap:clamp(var(--fs-space-5),7vw,6rem);padding:clamp(var(--fs-space-6),7vw,5rem) 0;border-top:1px solid var(--sv-line)}.policy-ledger.offset{margin-left:8%}.policy-ledger.reverse{grid-template-columns:minmax(0,5fr) minmax(180px,2fr);margin-right:8%}.policy-ledger.reverse .policy-label{grid-column:2;grid-row:1}.policy-ledger.reverse .policy-copy{grid-column:1;grid-row:1;justify-self:end}.policy-label{align-self:start}.case-index{margin:0 0 var(--fs-space-2);color:var(--sv-compass)}.case-tag{margin:0 0 var(--fs-space-4);color:var(--sv-noted)}.policy-label h2{margin:0;font:500 var(--fs-text-2xl)/1.05 var(--sv-font-display);letter-spacing:-.035em}.policy-copy{max-width:650px;font:var(--fs-text-md)/1.7 var(--sv-font-body)}.policy-copy p{margin:0 0 var(--fs-space-5)}.policy-copy p:last-child{margin-bottom:0}.policy-copy ul{margin:0;padding-left:var(--fs-space-5)}.policy-copy li{margin:0 0 var(--fs-space-3);padding-left:var(--fs-space-2)}.policy-copy strong{font-weight:500;color:var(--sv-bone)}.policy-copy .muted{color:var(--sv-compass)}.policy-note{max-width:720px;margin:0 0 clamp(var(--fs-space-8),9vw,7rem) auto;padding:var(--fs-space-4) 0 var(--fs-space-4) var(--fs-space-5);border-left:2px solid var(--sv-watch);font:var(--fs-text-sm)/1.65 var(--sv-font-body);color:var(--sv-bone)}.policy-note p{margin:0}.case-footer{padding:var(--fs-space-5) 0;border-top:1px solid var(--sv-line);font:var(--fs-text-xs)/1.55 var(--sv-font-mono);letter-spacing:.07em;color:var(--sv-compass)}.footer-links{margin:0}.footer-links a{color:var(--sv-bone)}.footer-creed{margin:var(--fs-space-3) 0 0}.lang-zh{font-family:var(--sv-font-cjk-body)}.lang-zh .case-title,.lang-zh .policy-label h2{font-family:var(--sv-font-cjk-display);letter-spacing:.02em}.lang-zh .case-deck,.lang-zh .policy-copy,.lang-zh .policy-note{font-family:var(--sv-font-cjk-body)}@media (max-width:699px){.coordinate-grid{inset:var(--fs-space-3)}.case-masthead,.case-footer,.case-file{width:86vw}.case-masthead{grid-template-columns:1fr auto}.case-masthead>p{display:none}.case-masthead nav{gap:var(--fs-space-3)}.case-intake{display:block;padding-top:clamp(var(--fs-space-8),16vw,7rem)}.docket{display:flex;gap:var(--fs-space-3);padding:0 0 var(--fs-space-4);border-right:0;border-bottom:1px solid var(--sv-line)}.docket p{margin:0}.case-title{font-size:clamp(3.1rem,15vw,5rem)}.case-title .brush{font-size:clamp(1.8rem,9vw,3rem)}.policy-ledger,.policy-ledger.offset,.policy-ledger.reverse{display:block;margin-left:0;margin-right:0;padding:var(--fs-space-6) 0}.policy-label{margin-bottom:var(--fs-space-5)}.policy-ledger.reverse .policy-label,.policy-ledger.reverse .policy-copy{grid-column:auto;grid-row:auto;justify-self:auto}.policy-note{padding-left:var(--fs-space-4)}.case-footer{padding-bottom:var(--fs-space-6)}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* ── SECTION SPINE — site review 2026-07-29, C1 + C2 ─────────────────────────────
   Same fix as the other content pages: .policy-ledger.reverse flipped the label column
   and .offset pushed alternating clauses 8% sideways. One rail + content column, brass
   register tick on each break, tightened vertical rhythm. */
.case-intake, .policy-ledger { width:min(100%, var(--sv-spine)); margin-inline:auto; }
.case-file { padding:clamp(var(--fs-space-8),8vw,6.5rem) 0 clamp(var(--fs-space-8),7vw,5.5rem); }
.case-intake { grid-template-columns:var(--sv-rail) minmax(0,1fr); gap:var(--sv-rail-gap); }
.policy-ledger, .policy-ledger.offset, .policy-ledger.reverse {
  position:relative; grid-template-columns:var(--sv-rail) minmax(0,1fr);
  column-gap:var(--sv-rail-gap); row-gap:0; margin-left:auto; margin-right:auto;
  padding:var(--sv-section-y) 0;
}
.policy-ledger::before { content:""; position:absolute; left:0; top:-1px; width:var(--sv-rail); height:1px; background:var(--sv-divider); }
.policy-ledger .policy-label, .policy-ledger.reverse .policy-label { grid-column:1; grid-row:1; align-self:start; }
.policy-ledger .policy-copy, .policy-ledger.reverse .policy-copy { grid-column:2; grid-row:1; justify-self:stretch; max-width:var(--sv-measure); }
@media (max-width:699px) {
  .case-intake { display:block; }
  .policy-ledger, .policy-ledger.offset, .policy-ledger.reverse { display:block; padding:clamp(var(--fs-space-6),9vw,3.5rem) 0; }
  .policy-ledger::before { width:4rem; }
}
/* Same fold as proof: number + tag stay in the rail, the clause heading leads the copy. */
.policy-ledger .policy-label, .policy-ledger.reverse .policy-label { display:contents; }
.policy-ledger .case-index { grid-column:1; grid-row:1; align-self:start; margin:0; padding-top:.4rem; }
.policy-ledger .case-tag { grid-column:1; grid-row:2; align-self:start; margin:0; padding-top:.15rem; }
.policy-ledger h2 { grid-column:2; grid-row:1; margin:0 0 var(--fs-space-4); }
.policy-ledger .policy-copy, .policy-ledger.reverse .policy-copy { grid-column:2; grid-row:2; }
@media (max-width:699px) { .policy-ledger .policy-label, .policy-ledger.reverse .policy-label { display:block; margin-bottom:var(--fs-space-4); } }
