:root{
  --bg:#0d0d0f; --bg-alt:#141318; --surface:#1a1820; --surface-2:#211e28;
  --text:#f2efe9; --text-dim:#a39e95; --accent:#c9a227; --accent-soft:#e3c878;
  --line:rgba(255,255,255,0.10);
  --display:'Fraunces', serif; --serif:'Cormorant Garamond', serif; --sans:'Jost', sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--text);font-family:var(--sans);
  font-weight:300;line-height:1.75;-webkit-font-smoothing:antialiased;
}

/* ---------- header ---------- */
.legal-head{
  position:sticky;top:0;z-index:50;
  background:rgba(13,13,15,.88);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.legal-head .inner{
  max-width:1180px;margin:0 auto;padding:18px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.brand{
  font-family:var(--display);font-size:1.25rem;font-weight:600;
  color:var(--text);text-decoration:none;letter-spacing:.01em;
}
.brand .suffix{color:var(--accent);margin-left:.32em;font-weight:400}
.back{
  font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--text-dim);text-decoration:none;transition:color .25s;white-space:nowrap;
}
.back:hover{color:var(--accent)}

/* ---------- shell ---------- */
.wrap{max-width:820px;margin:0 auto;padding:72px 28px 96px}
.eyebrow{
  font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;
  color:var(--accent);margin-bottom:18px;
}
h1{
  font-family:var(--display);font-size:clamp(2.1rem,5vw,3.1rem);
  font-weight:400;line-height:1.12;letter-spacing:-.01em;margin-bottom:14px;
}
.updated{
  color:var(--text-dim);font-size:.86rem;letter-spacing:.04em;
  padding-bottom:34px;margin-bottom:44px;border-bottom:1px solid var(--line);
}

/* ---------- prose ---------- */
.prose h2{
  font-family:var(--display);font-size:1.42rem;font-weight:500;
  color:var(--text);margin:56px 0 18px;line-height:1.3;
  padding-top:26px;border-top:1px solid var(--line);
}
.prose h2:first-of-type{border-top:0;padding-top:0;margin-top:0}
.prose h3{
  font-family:var(--serif);font-size:1.16rem;font-weight:600;
  color:var(--accent-soft);margin:34px 0 12px;letter-spacing:.01em;
}
.prose p{margin:0 0 18px;color:var(--text-dim)}
.prose strong{color:var(--text);font-weight:500}
.prose ul{margin:0 0 20px;padding-left:0;list-style:none}
.prose ul li{
  position:relative;padding-left:22px;margin-bottom:9px;color:var(--text-dim);
}
.prose ul li::before{
  content:"";position:absolute;left:0;top:.72em;
  width:6px;height:1px;background:var(--accent);
}
.prose ol{margin:0 0 20px;padding-left:20px;color:var(--text-dim)}
.prose ol li{margin-bottom:9px}
.prose a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(201,162,39,.32);transition:border-color .25s}
.prose a:hover{border-color:var(--accent)}
.prose hr{border:0;border-top:1px solid var(--line);margin:40px 0}

/* company identity block */
.identity{
  background:var(--surface);border:1px solid var(--line);border-left:2px solid var(--accent);
  border-radius:3px;padding:26px 28px;margin:0 0 30px;
}
.identity dl{display:grid;grid-template-columns:auto 1fr;gap:9px 26px;margin:0}
.identity dt{
  font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--text-dim);white-space:nowrap;padding-top:.28em;
}
.identity dd{color:var(--text);font-size:.95rem}
.identity dd a{color:var(--accent);text-decoration:none}
.identity dd a:hover{text-decoration:underline}

/* ---------- footer ---------- */
.legal-foot{border-top:1px solid var(--line);background:var(--bg-alt)}
.legal-foot .inner{max-width:820px;margin:0 auto;padding:44px 28px}
.legal-foot .links{display:flex;flex-wrap:wrap;gap:8px 26px;margin-bottom:24px}
.legal-foot .links a{
  font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--text-dim);text-decoration:none;transition:color .25s;
}
.legal-foot .links a:hover,.legal-foot .links a[aria-current]{color:var(--accent)}
.legal-foot small{display:block;color:var(--text-dim);font-size:.76rem;letter-spacing:.03em}

@media(max-width:640px){
  .wrap{padding:52px 20px 72px}
  .legal-head .inner{padding:15px 20px}
  .identity{padding:20px}
  .identity dl{grid-template-columns:1fr;gap:2px 0}
  .identity dd{margin-bottom:11px}
  .legal-foot .inner{padding:34px 20px}
}
