.legal-page { max-width: 1120px; margin: 0 auto; padding: 95px 32px 80px; }
.legal-intro { max-width: 850px; margin-bottom: 90px; padding: 52px; border-radius: 22px; background: linear-gradient(90deg, rgba(5,5,10,.64), rgba(5,5,10,.9)), url('assets/velunara-ambient.png') center/cover no-repeat; box-shadow: 0 34px 90px rgba(0,0,0,.28); }
.legal-intro h1 { margin: 12px 0 22px; font: 500 clamp(42px, 6vw, 72px)/1.02 Georgia, serif; letter-spacing: -.035em; }
.legal-intro > p:not(.eyebrow) { color: #b7b1c2; font-size: 18px; line-height: 1.7; }
.legal-revision { font-size: 13px !important; color: #817b8d !important; }
.legal-page section { padding: 62px 0; border-top: 1px solid rgba(143, 124, 164, .13); }
.legal-page section h2 { max-width: 720px; margin: 10px 0 20px; font-size: clamp(28px, 4vw, 40px); line-height: 1.12; letter-spacing: -.025em; }
.legal-page section > p:not(.eyebrow) { max-width: 820px; color: #ada7b8; font-size: 16px; line-height: 1.75; }
.legal-table { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 900px; margin: 30px 0; }
.legal-table div { display: grid; grid-template-columns: 145px 1fr; gap: 18px; padding: 16px 0; border-bottom: 1px solid rgba(143, 124, 164, .12); }
.legal-table div:nth-child(odd) { margin-right: 34px; }
.legal-table dt { color: #c66cff; font-weight: 650; }
.legal-table dd { margin: 0; color: #c0bac9; }
.component-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 60px; margin-top: 28px; }
.component-list article { padding: 24px 0; border-top: 1px solid rgba(143, 124, 164, .12); }
.component-list h3 { margin: 0 0 10px; font-size: 18px; }
.component-list p { color: #a8a2b2; line-height: 1.65; }
.component-list a { color: #cf78ff; text-decoration: underline; text-underline-offset: 4px; }
.fine-print { color: #858090 !important; font-size: 13px !important; }
.review-note { max-width: 900px; margin: 38px 0 10px; padding: 22px 24px; border-left: 3px solid #a83fff; background: linear-gradient(90deg, rgba(105, 31, 153, .14), transparent); }
.review-note b { color: #d67eff; }
.review-note p { margin: 7px 0 0; color: #aaa4b6; line-height: 1.65; }
.legal-page a:not(.brand):not(.button) { color: #d17aff; }
@media (max-width: 760px) {
  .legal-page { padding: 70px 20px 55px; }
  .legal-intro { padding: 34px 24px; }
  .legal-intro { margin-bottom: 60px; }
  .legal-table, .component-list { grid-template-columns: 1fr; }
  .legal-table div:nth-child(odd) { margin-right: 0; }
  .legal-table div { grid-template-columns: 115px 1fr; }
}
