:root{
  --navy-950:#070e1a;
  --navy-900:#0b1626;
  --navy-800:#101e30;
  --gold-400:#e8a44e;
  --gold-500:#d99138;
  --cream-100:#f7f2e9;
  --grey-300:#c7cdd6;
  --grey-500:#8b95a3;
  --line:rgba(255,255,255,0.12);
}
*{box-sizing:border-box;margin:0;padding:0;}
body{
  font-family:'Manrope',sans-serif;
  background:var(--navy-950);
  color:var(--cream-100);
  -webkit-font-smoothing:antialiased;
}
.legal-topbar{
  border-bottom:1px solid var(--line);
  padding:22px 40px;
}
.back-link{
  display:inline-flex;align-items:center;gap:8px;
  font-size:14px;color:var(--gold-400);
  text-decoration:none;
}
.back-link svg{width:16px;height:16px;}
.legal-wrap{
  max-width:820px;
  margin:0 auto;
  padding:56px 40px 100px;
}
.legal-wrap h1{
  font-family:'Oswald',sans-serif;
  text-transform:uppercase;
  font-size:clamp(24px,3.4vw,34px);
  font-weight:600;
  color:var(--cream-100);
  line-height:1.25;
  margin-bottom:8px;
}
.legal-sub{
  color:var(--grey-500);
  font-size:14px;
  margin-bottom:40px;
}
.legal-wrap h2{
  font-family:'Oswald',sans-serif;
  text-transform:uppercase;
  font-size:18px;
  font-weight:600;
  color:var(--gold-400);
  letter-spacing:0.02em;
  margin:40px 0 14px;
}
.legal-wrap p{
  font-size:15px;
  line-height:1.75;
  color:var(--grey-300);
  margin-bottom:14px;
}
.legal-wrap ul{
  margin:0 0 14px 20px;
  color:var(--grey-300);
}
.legal-wrap li{
  font-size:15px;
  line-height:1.75;
  margin-bottom:8px;
}
.legal-wrap strong{color:var(--cream-100);font-weight:700;}
.legal-wrap a{color:var(--gold-400);text-decoration:underline;text-underline-offset:2px;}
.legal-table{
  width:100%;
  border-collapse:collapse;
  margin:14px 0 24px;
  font-size:14px;
}
.legal-table th,.legal-table td{
  border:1px solid var(--line);
  padding:12px 14px;
  text-align:left;
  vertical-align:top;
  line-height:1.6;
  color:var(--grey-300);
}
.legal-table th{
  color:var(--cream-100);
  font-family:'Oswald',sans-serif;
  font-weight:500;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:0.03em;
  background:var(--navy-800);
}
.legal-footer{
  border-top:1px solid var(--line);
  padding:30px 40px;
  text-align:center;
}
.legal-footer p{font-size:12.5px;color:var(--grey-500);}
@media (max-width:600px){
  .legal-topbar{padding:18px 20px;}
  .legal-wrap{padding:36px 20px 70px;}
}
