:root{
  --bg:#1a1918;
  --panel:#242220;
  --ink:#ebe6dc;
  --muted:#a49d91;
  --faint:#8a8479;
  --sage:#9fad86;
  --sage-soft:rgba(159,173,134,.10);
  --maxw:720px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:"Raleway",system-ui,-apple-system,sans-serif;
  font-size:14px;font-weight:400;line-height:1.75;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
a{color:var(--sage);text-underline-offset:2px}
a:hover{color:var(--ink)}

/* ---------- legal top bar: back + logo ---------- */
.legal-top{padding:24px 0}
.legal-top .wrap{display:flex;justify-content:space-between;align-items:center}
.back{color:var(--muted);text-decoration:none;font-size:14px;font-weight:500}
.back:hover{color:var(--ink)}
.brand-mini img{width:26px;height:26px;display:block;opacity:.85}

.legal-hero{padding:40px 0 6px}
.eyebrow{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sage);margin:0 0 14px;font-weight:600}
h1.title{font-family:"Raleway",sans-serif;font-weight:600;font-size:clamp(1.8rem,5.5vw,2.3rem);line-height:1.18;margin:0 0 14px;letter-spacing:-.01em}
h3{font-family:"Raleway",sans-serif;font-weight:600;font-size:1rem;margin:28px 0 8px;color:var(--ink)}
p{margin:0 0 15px;color:#dcd7cd}
.muted{color:var(--muted)}
ul{margin:0 0 15px;padding-left:20px;color:#dcd7cd}
li{margin:0 0 8px}
li::marker{color:var(--sage)}
strong{color:var(--ink);font-weight:600}
.meta{font-size:.85rem;color:var(--faint);margin-top:6px}

.card{background:var(--panel);border-radius:16px;padding:22px 24px 8px;margin:22px 0}
.card.accent{background:var(--sage-soft)}
.card h3:first-child{margin-top:0}
.toc{list-style:none;padding:0;margin:0}
.toc a{display:block;padding:8px 0;color:var(--muted);text-decoration:none;font-size:1rem}
.toc a:hover{color:var(--ink)}

.contact-btn{display:inline-block;margin:8px 0 22px;padding:15px 34px;background:var(--sage);color:#fff;text-decoration:none;font-weight:600;border-radius:100px;font-size:1rem;transition:transform .2s,opacity .2s}
.contact-btn:hover{opacity:.92;color:#fff;transform:translateY(-1px)}

.legal-foot{padding:48px 24px 60px;color:var(--faint);font-size:14px;margin-top:24px}
.legal-foot .wrap{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.legal-foot a{color:var(--muted);text-decoration:none}
.legal-foot a:hover{color:var(--ink)}

@media(max-width:480px){.legal-hero{padding:28px 0 4px}}
