/* Cadence policy pages — long-form legal typography on the --night theme.
   Tones and stacks come from tokens.css; hairlines follow the site's dossier language. */

/* ---------- topbar back link ---------- */
.tb-back{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--aqua);
  border:1px solid #35c4ae66;border-radius:999px;padding:8px 16px;transition:background .2s ease}
.tb-back:hover{background:#35c4ae1a}

/* ---------- article column ---------- */
.policy-main{max-width:760px;margin:0 auto;padding:56px 28px 120px}

.policy-kick{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--aqua)}
.policy-main h1{font-family:var(--serif);font-weight:600;font-size:clamp(30px,4.4vw,42px);
  letter-spacing:-.02em;line-height:1.12;margin:14px 0 12px;color:#f2efe6}
.policy-meta{font-family:var(--mono);font-size:12px;color:var(--sage2);margin:0}
.policy-lede{font-size:15px;color:#b9c8c3;margin:18px 0 0;line-height:1.6}

/* ---------- table of contents ---------- */
.toc{margin:36px 0 0;padding:22px 24px;border:1px solid rgba(230,226,216,.14);border-radius:16px;
  background:rgba(245,243,236,.03)}
.toc-label{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--sage2);margin-bottom:12px}
.toc ol{margin:0;padding-left:22px;font-family:var(--mono);font-size:12px;line-height:2.1;color:var(--sage2)}
.toc a{color:#aebfb9}
.toc a:hover{color:var(--aqua)}

/* ---------- article body ---------- */
.policy-article{margin-top:8px;font-size:14.5px;line-height:1.7;color:#aebfb9}
.policy-article p{margin:16px 0}
.policy-article strong{color:#d8e6e2;font-weight:600}
.policy-article a{color:var(--aqua)}
.policy-article a:hover{text-decoration:underline}
.policy-article ul,.policy-article ol{margin:16px 0;padding-left:24px}
.policy-article li{margin:8px 0}
.policy-article code{font-family:var(--mono);font-size:12.5px;color:var(--sage2)}

/* section headings: serif display with a mono section number */
.policy-article h2{font-family:var(--serif);font-weight:600;font-size:26px;letter-spacing:-.02em;
  color:#f2efe6;margin:48px 0 14px;scroll-margin-top:84px}
.policy-article h2 .sn{font-family:var(--mono);font-weight:500;font-size:14px;color:var(--aqua);
  letter-spacing:.04em;margin-right:10px;vertical-align:4px}
.policy-article h3{font-family:var(--serif);font-weight:600;font-size:19px;letter-spacing:-.01em;
  color:#e8f0ee;margin:30px 0 10px;scroll-margin-top:84px}

/* hairline rules */
.policy-article hr{border:0;border-top:1px solid rgba(230,226,216,.12);margin:44px 0}

/* blockquotes: teal left border, slightly muted */
.policy-article blockquote{margin:22px 0;padding:4px 0 4px 20px;border-left:2px solid var(--teal);
  color:#93a8a3}
.policy-article blockquote p{margin:10px 0}

/* tables: site .tbl language — mono hairline rows, small mono header labels */
.policy-article .tbl{font-size:12px;margin:22px 0;display:block;overflow-x:auto}
.policy-article .tbl th{color:var(--sage2);border-bottom:1px solid rgba(230,226,216,.22)}
.policy-article .tbl td{border-bottom:1px solid rgba(230,226,216,.1);color:#b9c8c3;vertical-align:top;
  line-height:1.6;min-width:120px}
.policy-article .tbl td:first-child{min-width:0}

/* ascii flow diagram (caregiver addendum) */
.policy-article pre.flow{font-family:var(--mono);font-size:11px;line-height:1.35;color:var(--sage2);
  background:rgba(245,243,236,.03);border:1px solid rgba(230,226,216,.12);border-radius:14px;
  padding:18px 20px;overflow-x:auto;margin:22px 0}

@media (max-width:640px){
  .policy-main{padding:40px 20px 96px}
  .policy-article h2{font-size:23px}
}
