:root{
  --navy-900:#0A1F38;
  --navy-800:#0F2A4A;
  --gold-600:#A97E1B;
  --gold-500:#C9A227;
  --gold-300:#E4CE8C;
  --paper:#FAF7EF;
  --paper-dim:#F1EAD8;
  --ink:#1E2530;
  --ink-soft:#4C5566;
  --ink-faint:#7A8394;
  --white:#FFFFFF;
}
*{box-sizing:border-box;}
body{
  margin:0;
  font-family:'Public Sans', sans-serif;
  background:var(--paper);
  color:var(--ink);
  font-size:18px;
  line-height:1.65;
}
h1,h2,h3{
  font-family:'Fraunces', serif;
  color:var(--navy-900);
  line-height:1.2;
  font-weight:600;
}
a{color:inherit;}
.container{max-width:780px;margin:0 auto;padding:0 24px;}

.topbar{
  position:sticky; top:0; z-index:20;
  background:rgba(250,247,239,0.92);
  backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(10,31,56,0.08);
}
.topbar .bar{
  max-width:1080px;margin:0 auto;padding:14px 24px;
  display:flex;align-items:center;justify-content:space-between;
}
.brand-logo{display:block;height:36px;width:auto;}
@media (max-width:520px){ .brand-logo{height:30px;} }
.brand-logo-footer{display:block;height:60px;width:auto;margin:0 auto 12px;}
.btn-gold{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 20px;border-radius:999px;
  background:linear-gradient(180deg, var(--gold-500), var(--gold-600));
  color:var(--navy-900);font-weight:700;font-size:14px;
  text-decoration:none;
}

.legal-hero{
  background:var(--navy-900);
  color:var(--paper);
  padding:56px 0 40px;
}
.legal-hero .eyebrow{
  font-size:13px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--gold-300);display:block;margin-bottom:12px;
}
.legal-hero h1{color:var(--white);font-size:clamp(28px,4vw,38px);}
.legal-hero p{color:rgba(250,247,239,0.75);margin-top:12px;font-size:16px;}

article{padding:48px 0 72px;}
article h2{font-size:22px;margin:36px 0 12px;}
article h2:first-child{margin-top:0;}
article p{color:var(--ink-soft);margin-bottom:14px;}
article ul, article ol{color:var(--ink-soft);padding-left:22px;margin-bottom:14px;}
article li{margin-bottom:8px;}
article strong{color:var(--navy-900);}
.updated-note{
  font-size:14px;color:var(--ink-faint);
  border-top:1px solid rgba(10,31,56,0.1);
  padding-top:18px;margin-top:36px;
}
.placeholder{
  background:var(--paper-dim);
  border-left:4px solid var(--gold-500);
  padding:4px 10px;
  border-radius:4px;
  font-style:italic;
}

footer{
  background:var(--navy-900);
  color:rgba(250,247,239,0.6);
  padding:32px 0;
  font-size:14px;
  text-align:center;
}
footer a{color:rgba(250,247,239,0.8);margin:0 10px;}
footer a:hover{color:var(--gold-300);}
