/* academy-legal-live (1 Nov 2026): Academy legal pages + /academy course tile. No inline CSS/JS (strict CSP). Brand tokens from rd.css. */
.doc.doc-single{display:block;max-width:900px}
.legal-doc{max-width:860px;min-width:0}
.legal-doc .doc-ref{margin:10px 0 0}
.legal-doc .notice{margin:16px 0 24px;padding:14px 18px;border:1px solid rgba(127,214,255,.45);border-left:4px solid #7fd6ff;border-radius:12px;background:rgba(127,214,255,.06)}
.legal-doc .notice p{margin:0}
.legal-doc .legal-src,.legal-doc td,.legal-doc th{overflow-wrap:anywhere}
.legal-doc .doc-pdf{margin:28px 0 0}
.legal-doc .doc-pdf .btn{min-height:48px}
.acad-course{margin-top:8px}
.course-tile{max-width:820px;border:1px solid rgba(41,182,255,.32);border-radius:18px;padding:24px 26px;background:linear-gradient(160deg,rgba(10,40,67,.7),rgba(5,11,20,.92))}
.course-tile .code{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#7fd6ff}
.course-tile h2{margin:8px 0 6px;font-size:24px;color:#fff}
.course-tile h3{margin:0 0 8px;font-size:17px;color:#fff}
.course-tile p,.course-tile li{color:#cfe0ec;font-size:16px;line-height:1.6}
.course-tile .ct-lead{margin:0 0 10px}
.course-tile .ct-price{margin:12px 0 6px;font-size:22px;font-weight:600;color:#fff}
.course-tile .ct-facts{margin:8px 0 0;padding-left:20px;display:grid;gap:6px}
.course-tile .ct-buy{margin:20px 0 0;padding:14px 16px;border-left:3px solid #3ee6a0;border-radius:8px;background:rgba(62,230,160,.06)}
.course-tile .ct-buy p{margin:0}
.course-tile .ctas{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px}
.course-tile .ctas .btn{min-height:48px;white-space:normal;text-align:center}
.course-tile .ct-legal{margin-top:20px}
.course-tile .ct-legal ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.course-tile .ct-legal a{display:inline-flex;align-items:center;min-height:44px;color:#7fd6ff;text-decoration:underline;text-underline-offset:3px}
@media (max-width:760px){
  .course-tile{padding:18px 16px}
  .course-tile .code{font-size:15px;letter-spacing:.1em}
  .course-tile .ctas .btn{width:100%}
  .legal-doc table{font-size:15px}
  .prose.legal-doc .ct-updated,.prose.legal-doc .ct-updated small,.prose.legal-doc .legal-src small{font-size:15px}
  .doc .toc a{font-size:15px;min-height:44px}
  .doc .toc .mono{font-size:15px}
}
/* D2 (Web QC, 1 Nov 2026): in-page anchor targets land below the fixed header (62-68 px). Legal's #supplier-information and
   #business-buyers are empty <a id> just after their <h2>, so they get the header + heading height so the heading shows too. */
.legal-doc [id]{scroll-margin-top:88px}
.legal-doc #supplier-information{scroll-margin-top:140px}
.legal-doc #business-buyers{scroll-margin-top:145px}
@media (max-width:1000px){.legal-doc #business-buyers{scroll-margin-top:175px}}
@media (max-width:760px){.legal-doc #supplier-information{scroll-margin-top:172px}.legal-doc #business-buyers{scroll-margin-top:208px}}
