.legal-page{padding-block:56px 20px;}
.legal-hero{max-width:820px;margin:0 auto 44px;text-align:center;}
.legal-hero h1{font-size:clamp(2rem,6vw,3rem);}
.legal-hero p{color:var(--muted);margin-top:16px;}
.legal-hero .stamp{
  display:inline-block;margin-top:18px;font-size:.74rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--dim);border:1px solid var(--line-soft);
  border-radius:999px;padding:7px 16px;
}
.prose{max-width:820px;margin:0 auto;}
.prose h2{
  font-size:clamp(1.25rem,3.4vw,1.6rem);margin:44px 0 14px;
  padding-top:26px;border-top:1px solid var(--line-soft);
}
.prose h2:first-of-type{border-top:0;padding-top:0;margin-top:0;}
.prose h3{font-size:1.08rem;margin:26px 0 10px;color:var(--gold-2);}
.prose p{color:var(--muted);margin-bottom:15px;font-size:1.03rem;line-height:1.85;}
.prose ul{margin:0 0 18px;display:grid;gap:10px;}
.prose li{color:var(--muted);padding-left:20px;position:relative;line-height:1.8;}
.prose li::before{
  content:"";position:absolute;left:2px;top:11px;width:6px;height:6px;
  border-radius:50%;background:var(--gold-3);
}
.prose strong{color:var(--text);font-weight:500;}
.prose a{color:var(--gold-2);text-decoration:underline;text-underline-offset:3px;}
.callout{
  border:1px solid rgba(226,193,100,.3);border-radius:16px;
  background:rgba(226,193,100,.05);padding:22px 24px;margin:26px 0;
}
.callout p{color:var(--text);margin:0;font-size:.95rem;}
.info-table{
  width:100%;border-collapse:collapse;margin:18px 0 24px;font-size:.92rem;
}
.info-table th,.info-table td{
  text-align:left;padding:14px 12px;border-bottom:1px solid var(--line-soft);color:var(--muted);line-height:1.7;
}
.info-table th{color:var(--text);font-weight:500;width:38%;}
.legal-nav{
  display:flex;flex-wrap:wrap;gap:10px;justify-content:center;
  max-width:820px;margin:56px auto 0;padding-top:34px;border-top:1px solid var(--line-soft);
}
.legal-nav a{
  border:1px solid var(--line-soft);border-radius:999px;padding:10px 18px;
  font-size:.86rem;color:var(--muted);transition:border-color .25s ease,color .25s ease;
}
.legal-nav a:hover{border-color:var(--gold-2);color:var(--gold-2);}
.legal-nav a[aria-current="page"]{border-color:var(--gold-2);color:var(--gold-2);background:rgba(226,193,100,.07);}

.posts{display:grid;gap:22px;max-width:1000px;margin:0 auto;}
.post-card{
  display:block;border:1px solid var(--line-soft);border-radius:22px;
  background:linear-gradient(170deg,var(--panel-2),var(--bg-2));
  padding:30px 26px;transition:border-color .3s ease,transform .3s ease;
}
.post-card:hover{border-color:rgba(226,193,100,.45);transform:translateY(-4px);}
.post-meta{
  display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);
  margin-bottom:14px;
}
.post-tag{color:var(--gold-2);border:1px solid rgba(226,193,100,.3);border-radius:999px;padding:4px 12px;}
.post-card h2{font-size:clamp(1.25rem,3.4vw,1.65rem);margin-bottom:10px;}
.post-card p{color:var(--muted);font-size:.96rem;}
.post-more{display:inline-block;margin-top:16px;color:var(--gold-2);font-size:.9rem;}
.post-more::after{content:" \2192";}

.toc{
  border:1px solid var(--line-soft);border-radius:16px;
  background:rgba(255,255,255,.02);padding:22px 24px;margin-bottom:38px;
}
.toc h2{font-size:.78rem !important;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);
  margin:0 0 14px !important;padding:0 !important;border:0 !important;font-family:var(--sans);}
.toc ol{margin:0;padding-left:20px;display:grid;gap:9px;color:var(--muted);}
.toc a{color:var(--muted);}
.toc a:hover{color:var(--gold-2);}
.article-cta{
  border:1px solid rgba(226,193,100,.3);border-radius:20px;
  background:radial-gradient(600px 200px at 50% 0%,rgba(226,193,100,.12),transparent 70%),var(--panel);
  padding:34px 26px;text-align:center;margin:46px 0 0;
}
.article-cta h2{border:0 !important;padding:0 !important;margin:0 0 12px !important;}
.article-cta p{margin-bottom:22px;}
.related{max-width:820px;margin:54px auto 0;padding-top:32px;border-top:1px solid var(--line-soft);}
.related h3{font-family:var(--sans);font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-2);margin-bottom:18px;}
.related ul{display:grid;gap:12px;}
.related a{color:var(--muted);font-size:.95rem;}
.related a:hover{color:var(--gold-2);}
