/* Shared styles for the legal pages (/terms, /privacy). Brand tokens are copied
   from index.htm :root; change both together. Static, no JS dependency. */
:root{
  --paper:#FFFFFF;
  --cream:#F3F5F6;
  --ink:#2B2119;
  --ink-body:#3A2E26;
  --ink-soft:#6E6055;
  --coral:#45607C;
  --coral-deep:#374E66;
  --line:#E3E1DD;
  --forge:#2A221D;
  --on-forge:#F3EEE7;
  --muted-dark:#CFC6BB;
  --radius-lg:8px; --radius:6px; --radius-sm:4px;
}
*,*::before,*::after{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-body);font-family:"Lato",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:18px;line-height:1.7;}
a{color:var(--coral-deep);text-underline-offset:3px;}
a:hover{color:var(--ink);}
:focus-visible{outline:3px solid var(--coral);outline-offset:2px;border-radius:2px;}

.skip{position:absolute;left:16px;top:-60px;background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--radius);z-index:10;text-decoration:none;}
.skip:focus{top:12px;color:#fff;}

.wrap{max-width:760px;margin:0 auto;padding:0 16px;}
@media (min-width:700px){.wrap{padding:0 24px;}}

/* Header: wordmark + back link only */
.legal-head{border-bottom:1px solid var(--line);background:var(--paper);}
.legal-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;}
.legal-head img{height:24px;width:auto;display:block;}
.legal-head a.back{font-size:15px;font-weight:700;text-decoration:none;padding:12px 0;}
.legal-head a.back:hover{text-decoration:underline;}

/* Title block */
.legal-hero{padding:48px 0 8px;}
.eyebrow{font-family:"Space Mono",monospace;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-deep);margin:0 0 12px;}
h1{font-family:"Jost",system-ui,sans-serif;font-weight:600;font-size:clamp(34px,6vw,48px);line-height:1.1;color:var(--ink);margin:0 0 16px;letter-spacing:-.01em;}
.pills{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px;padding:0;list-style:none;}
.pill{display:inline-block;font-family:"Space Mono",monospace;font-size:12.5px;letter-spacing:.04em;color:var(--coral-deep);background:var(--cream);border:1px solid var(--line);border-radius:999px;padding:4px 12px;}

/* Plain-language summary */
.summary{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px 22px 18px;margin:28px 0 8px;}
.summary h2{font-family:"Jost",system-ui,sans-serif;font-size:20px;font-weight:600;color:var(--ink);margin:0 0 10px;padding:0;border:0;}
.summary ul{margin:0;padding-left:1.2em;}
.summary li{margin:0 0 8px;}
.summary p{margin:0;font-size:16px;color:var(--ink-soft);}
.summary p + p{margin-top:.7rem;}

/* Table of contents */
.toc{margin:28px 0 0;padding:18px 22px;border:1px solid var(--line);border-radius:var(--radius-lg);}
.toc h2{font-family:"Space Mono",monospace;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin:0 0 8px;padding:0;border:0;}
.toc ol{margin:0;padding:0;list-style:none;columns:2;column-gap:24px;}
.toc li{break-inside:avoid;}
.toc a{display:inline-block;padding:5px 0;font-size:16px;text-decoration:none;}
.toc a:hover{text-decoration:underline;}
@media (max-width:560px){.toc ol{columns:1;}}

/* Document body */
main{padding-bottom:40px;}
section{scroll-margin-top:16px;}
h2{font-family:"Jost",system-ui,sans-serif;font-weight:600;font-size:clamp(22px,3.4vw,26px);line-height:1.25;color:var(--ink);margin:48px 0 14px;padding-top:24px;border-top:1px solid var(--line);}
h2 .ico{margin-right:.35em;}
h3{font-family:"Jost",system-ui,sans-serif;font-weight:600;font-size:19px;color:var(--ink);margin:26px 0 8px;}
p{margin:0 0 14px;}
ul,ol{margin:0 0 16px;padding-left:1.25em;}
li{margin:0 0 8px;}
li::marker{color:var(--coral);}
strong{color:var(--ink);}
.clause{font-family:"Space Mono",monospace;font-size:.82em;color:var(--coral-deep);margin-right:.4em;white-space:nowrap;}
.note{border-left:3px solid var(--coral);background:var(--cream);padding:14px 18px;border-radius:0 var(--radius) var(--radius) 0;margin:18px 0;}
.note p:last-child{margin-bottom:0;}

/* Tables (scroll inside their own box on narrow screens) */
.table-wrap{overflow-x:auto;margin:16px 0 20px;border:1px solid var(--line);border-radius:var(--radius-lg);}
table{border-collapse:collapse;width:100%;min-width:560px;font-size:15.5px;line-height:1.5;}
th,td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--line);}
th{font-family:"Space Mono",monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);background:var(--cream);font-weight:700;}
tr:last-child td{border-bottom:0;}
td code{font-size:.9em;}
code{font-family:"Space Mono",ui-monospace,monospace;font-size:.88em;background:var(--cream);padding:1px 5px;border-radius:var(--radius-sm);word-break:break-word;}

/* Contact card */
.contact{margin:40px 0 0;padding:22px;border:1px solid var(--line);border-radius:var(--radius-lg);}
.contact h2{margin-top:0;padding-top:0;border-top:0;}
.contact dl{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;}
.contact dt{font-family:"Space Mono",monospace;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);padding-top:4px;}
.contact dd{margin:0;}
@media (max-width:520px){.contact dl{grid-template-columns:1fr;gap:0;}.contact dd{margin-bottom:10px;}}

/* Footer */
.legal-foot{background:var(--forge);color:var(--muted-dark);font-size:14px;line-height:1.6;padding:28px 0 34px;}
.legal-foot p{margin:0 0 8px;}
.legal-foot a{color:var(--on-forge);display:inline-block;padding:4px 0;}
.legal-foot nav{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:8px;}

@media print{
  .skip,.legal-head a.back,.toc,.legal-foot nav{display:none;}
  body{font-size:11.5pt;color:#000;}
  h1,h2,h3,strong{color:#000;}
  h2{break-after:avoid;margin-top:24px;}
  .summary,.note,.table-wrap{break-inside:avoid;}
  a{color:#000;}
  .legal-foot{background:none;color:#000;}
  table{min-width:0;}
}
