/* ========== LEGAL PAGES SHARED STYLES ========== */
/* Matches RebookRevenue.html design tokens */

:root{
  --black:#0A0A0A;
  --ink:#1A1714;
  --paper:#F5F0E4;
  --beige:#EAE3D2;
  --beige-2:#D8CDB5;
  --cream:#FFFCF5;
  --white:#FFFFFF;
  --muted:#8A8378;
  --muted-light:#B5ADA0;
  --tan:#B08968;
  --tan-dark:#8D6A4F;
  --line:rgba(234,227,210,0.15);
  --line-dark:rgba(10,10,10,0.12);
  --red:#D94A2B;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  background:var(--paper);color:var(--ink);line-height:1.65;
  -webkit-font-smoothing:antialiased;font-weight:400;
  font-size:15px;
}
.serif{font-family:'Fraunces',serif;font-weight:400;letter-spacing:-0.02em;line-height:1.08}
.mono{font-family:'JetBrains Mono',monospace;letter-spacing:0.16em;text-transform:uppercase;font-size:11px;font-weight:500}

/* Nav (minimal, dark — matches main site) */
.legal-nav{
  background:var(--black);
  border-bottom:1px solid rgba(234,227,210,0.1);
  position:sticky;top:0;z-index:50;
}
.legal-nav-inner{
  display:flex;justify-content:space-between;align-items:center;
  padding:20px 32px;max-width:1240px;margin:0 auto;gap:20px;
}
.legal-nav .logo{font-family:'Fraunces',serif;font-size:22px;font-weight:500;letter-spacing:-0.02em;color:var(--cream);text-decoration:none}
.legal-nav .logo span{color:var(--tan);font-style:italic}
.legal-nav .back{
  color:var(--cream);text-decoration:none;font-family:'JetBrains Mono',monospace;
  font-size:11px;letter-spacing:0.16em;text-transform:uppercase;font-weight:500;
  transition:color .2s;
}
.legal-nav .back:hover{color:var(--tan)}

/* Hero / title block */
.legal-hero{
  padding:80px 32px 48px;max-width:860px;margin:0 auto;
  border-bottom:1px solid var(--line-dark);
}
.legal-hero .kicker{color:var(--tan);margin-bottom:20px;display:block}
.legal-hero h1{
  font-family:'Fraunces',serif;font-weight:400;
  font-size:clamp(40px, 6vw, 64px);
  line-height:1.04;letter-spacing:-0.025em;
  color:var(--ink);margin-bottom:20px;
}
.legal-hero h1 em{font-style:italic;color:var(--tan-dark)}
.legal-hero .meta{
  font-family:'JetBrains Mono',monospace;font-size:11px;
  letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);
  margin-top:20px;
}
.legal-hero .intro{
  font-size:17px;color:var(--ink);opacity:0.78;margin-top:24px;
  max-width:680px;line-height:1.7;
}

/* Body content */
.legal-body{
  max-width:780px;margin:0 auto;padding:56px 32px 120px;
}
.legal-body section{
  padding-bottom:44px;margin-bottom:44px;
  border-bottom:1px solid var(--line-dark);
}
.legal-body section:last-child{border-bottom:none}

.legal-body h2{
  font-family:'Fraunces',serif;font-weight:500;
  font-size:28px;line-height:1.15;letter-spacing:-0.02em;
  color:var(--ink);margin-bottom:18px;
  display:flex;align-items:baseline;gap:16px;
}
.legal-body h2 .n{
  font-family:'JetBrains Mono',monospace;
  font-size:12px;color:var(--tan);letter-spacing:0.14em;
  font-weight:500;text-transform:uppercase;
  flex-shrink:0;padding-top:4px;
}
.legal-body h3{
  font-family:'Inter',sans-serif;font-weight:600;
  font-size:15px;color:var(--ink);margin:26px 0 10px;
  letter-spacing:-0.005em;
}
.legal-body p{color:var(--ink);opacity:0.82;margin-bottom:14px;line-height:1.72}
.legal-body p:last-child{margin-bottom:0}
.legal-body a{color:var(--tan-dark);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.legal-body a:hover{color:var(--tan)}
.legal-body ul,.legal-body ol{margin:14px 0 14px 22px;color:var(--ink);opacity:0.82}
.legal-body li{margin-bottom:8px;line-height:1.7}
.legal-body strong{color:var(--ink);opacity:1;font-weight:600}
.legal-body em{font-style:italic}

/* Callout box for key info */
.legal-callout{
  background:var(--beige);
  padding:22px 26px;margin:22px 0;
  border-left:3px solid var(--tan);
}
.legal-callout p{opacity:0.9;margin-bottom:8px}
.legal-callout p:last-child{margin-bottom:0}

/* Contact block */
.legal-contact{
  background:var(--ink);color:var(--cream);
  padding:40px;margin-top:48px;
}
.legal-contact h3{
  font-family:'Fraunces',serif;font-weight:400;font-size:26px;
  color:var(--cream);letter-spacing:-0.02em;margin-bottom:12px;
}
.legal-contact p{color:var(--cream);opacity:0.85;margin-bottom:6px}
.legal-contact a{color:var(--tan);text-decoration:underline}

/* TOC */
.legal-toc{
  background:var(--cream);border:1px solid var(--line-dark);
  padding:26px 30px;margin-bottom:48px;
}
.legal-toc-title{
  font-family:'JetBrains Mono',monospace;font-size:11px;
  letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);
  margin-bottom:14px;
}
.legal-toc ol{
  list-style:none;margin:0;padding:0;
  column-count:2;column-gap:40px;
}
.legal-toc li{margin-bottom:8px;font-size:14px;break-inside:avoid;opacity:1}
.legal-toc li::before{
  content:counter(toc-item, decimal-leading-zero) " · ";
  counter-increment:toc-item;color:var(--tan);
  font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.08em;
}
.legal-toc ol{counter-reset:toc-item}
.legal-toc a{color:var(--ink);text-decoration:none;opacity:0.8}
.legal-toc a:hover{color:var(--tan-dark);opacity:1}

@media (max-width:640px){
  .legal-toc ol{column-count:1}
  .legal-hero{padding:56px 24px 36px}
  .legal-body{padding:40px 24px 80px}
  .legal-body h2{flex-direction:column;gap:6px}
}

/* Footer */
.legal-foot{
  background:var(--black);color:var(--cream);
  padding:40px 32px;text-align:center;
  font-size:12px;letter-spacing:0.06em;
}
.legal-foot em{color:var(--tan);font-style:italic}
.legal-foot a{color:var(--cream);text-decoration:none;opacity:0.7;margin:0 10px;transition:opacity .2s}
.legal-foot a:hover{opacity:1;color:var(--tan)}
.legal-foot .copyright{margin-bottom:10px;opacity:0.7}
