/* Synastria — shared site styling for the legal pages.
   Mirrors the design tokens, fonts and base rules of index.html;
   Bootstrap 5 handles the responsive grid, this file owns the look.
   Loaded AFTER bootstrap.min.css so these rules win. */

:root{
  --bg:#ECE3CE; --text:#201e1d;
  --accent:#c67139; --accent-700:#9c5527; --accent-800:#7e441f; --accent-100:#f4dfc9;
  --accent2:#7a8a5e; --accent2-100:#e4e8d8; --accent2-600:#63734a; --accent2-800:#3f4a2e;
  --neutral-200:#e6dcc8; --neutral-800:#4a453f;

  /* aliases kept so the inline styles inside the legal documents pick up the palette */
  --ink:var(--text);
  --ink2:rgba(32,30,29,.78);
  --gold:var(--accent-700);
  --surface:#f5efe1;
  --line:#ddd1b5;
  --on-gold:#ECE3CE;
}

/* ── Base (same as index.html) ── */
body{
  background:var(--bg);color:var(--text);
  font-family:'Inter',system-ui,sans-serif;font-size:17px;line-height:1.65;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
h1,h2,h3,.font-heading{font-family:'Marcellus',Georgia,serif;font-weight:400}
img,svg{max-width:100%}
a{color:var(--accent-700);text-decoration:none}
a:hover{color:var(--accent);text-decoration:underline}
.narrow{max-width:800px;margin-left:auto;margin-right:auto}
.muted{color:rgba(32,30,29,.78)}
.kicker,.eyebrow{font-size:13px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;color:var(--accent-700)}

/* ── Buttons (same as index.html) ── */
.btn-brand{background:var(--accent);border:none;color:#ECE3CE;border-radius:999px;padding:.7rem 1.5rem}
.btn-brand:hover{background:var(--accent-700);color:#ECE3CE}
.btn-brand-outline{background:transparent;border:1.5px solid var(--accent-700);color:var(--accent-700);border-radius:999px;padding:.7rem 1.5rem}
.btn-brand-outline:hover{background:var(--accent-100);color:var(--accent-800);border-color:var(--accent-800)}
.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:none}
.btn-brand:hover,.btn-brand-outline:hover{text-decoration:none}

/* ── Navbar ── */
.syn-nav{padding:20px 0}
.syn-nav .navbar-brand{color:var(--text);font-size:1.5rem}
.syn-nav .navbar-brand:hover{color:var(--text);text-decoration:none}
.syn-nav .nav-link{color:rgba(32,30,29,.68);font-size:14px;font-weight:500;padding:.25rem 0}
.syn-nav .nav-link:hover,.syn-nav .nav-link:focus{color:var(--accent-700);text-decoration:none}

/* ── Emblem ── */
.emblem-svg{margin:0 auto}
.e-gold-s{stroke:var(--accent-700);fill:none}
.e-gold-f{fill:var(--accent-700)}
.e-carmine-s{stroke:var(--accent);fill:none}
.e-carmine-f{fill:var(--accent)}
.e-ink2-s{stroke:var(--ink2);fill:none}
.e-bg-f{fill:var(--bg)}
.e-goldtint-f{fill:var(--accent-700);opacity:.16}

/* ── Footer (same as index.html) ── */
footer{padding-top:24px;padding-bottom:48px;font-size:13.5px;color:rgba(32,30,29,.68)}
.footer-links a{color:rgba(32,30,29,.68)}
.footer-links a:hover{color:var(--accent-700);text-decoration:none}

/* ── Legal document ── */
.doc-hero{text-align:center;padding:44px 0 4px}
.doc-hero h1{font-size:clamp(34px,5vw,50px);line-height:1.08;letter-spacing:-.028em;color:var(--text)}
.doc-hero .updated{color:rgba(32,30,29,.68);font-size:14px;margin-top:12px}

.doc{background:var(--surface);border:none;border-radius:36px;padding:40px clamp(22px,4vw,48px);margin:28px auto 8px}
.doc .lead{color:rgba(32,30,29,.78);font-size:17.5px;line-height:1.7}
.doc h2{font-size:24px;line-height:1.2;color:var(--accent-700);margin:34px 0 10px;padding-top:20px;border-top:1px solid var(--line)}
.doc h2:first-of-type{border-top:0;padding-top:0;margin-top:26px}
.doc h3{font-size:19px;color:var(--text);margin:20px 0 6px}
.doc p{color:rgba(32,30,29,.78);margin:10px 0}
.doc ul{color:rgba(32,30,29,.78);margin:10px 0 10px 22px}
.doc li{margin:6px 0}
.doc strong{color:var(--text);font-weight:600}

.doc-box{background:var(--accent-100);border:none;border-radius:20px;padding:18px 22px;margin:18px 0}
.doc-box p,.doc-box ul{color:rgba(32,30,29,.78)}
.doc-box>:last-child{margin-bottom:0}

.toc{background:var(--neutral-200);border:none;border-radius:20px;padding:18px 22px;margin:6px 0 8px}
.toc strong{color:var(--text)}
.toc ol{margin:8px 0 0 20px;color:rgba(32,30,29,.78);font-size:15px}

.callout{border-left:3px solid var(--accent);background:var(--accent-100);padding:14px 18px;border-radius:0 16px 16px 0;margin:18px 0;color:rgba(32,30,29,.78);font-size:15.5px}
