:root{
  --navy:#0A1626;
  --navy-2:#0F2138;
  --cream:#F7F3EC;
  --orange:#F97316;
  --mist:#B9C4D6;
  --mist-dim:#7C8BA3;
  --ink:#122036;
  --ink-soft:#54617A;
  --line-light:rgba(18,32,54,.14);
  --line-dark:rgba(185,196,214,.14);
  --disp:'Clash Display',sans-serif;
  --body:'Satoshi',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;overflow-x:hidden;overflow-x:clip;}
body{
  font-family:var(--body);background:var(--cream);color:var(--ink);
  line-height:1.68;-webkit-font-smoothing:antialiased;
}
a{color:inherit;}
.wrap{max-width:860px;margin:0 auto;padding:0 24px;}

/* header */
.legal-nav{background:var(--navy);position:sticky;top:0;z-index:50;}
.legal-nav .wrap{
  max-width:1180px;display:flex;align-items:center;justify-content:space-between;
  height:70px;gap:16px;
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;}
.brand img{width:30px;height:auto;}
.brand-word{font-family:var(--disp);font-weight:700;font-size:19px;letter-spacing:.04em;color:#fff;}
.brand-word b{color:var(--orange);}
.back-link{
  color:var(--mist);font-size:14px;font-weight:500;text-decoration:none;
  display:inline-flex;align-items:center;gap:8px;transition:color .2s;
}
.back-link:hover{color:#fff;}

/* hero */
.legal-hero{background:var(--navy);color:#fff;padding:54px 0 64px;}
.legal-hero .wrap{max-width:860px;}
.legal-hero .eyebrow{
  display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--orange);margin-bottom:14px;
}
.legal-hero h1{
  font-family:var(--disp);font-weight:600;font-size:clamp(30px,4.4vw,44px);
  line-height:1.12;letter-spacing:-.01em;margin-bottom:12px;
}
.legal-hero p{color:var(--mist);font-size:15.5px;max-width:620px;}
.legal-hero .updated{font-size:13.5px;color:var(--mist-dim);margin-top:16px;}

/* body */
.legal-body{padding:56px 0 90px;}
.toc{
  background:#fff;border:1px solid var(--line-light);border-radius:16px;
  padding:26px 28px;margin-bottom:52px;
}
.toc h2{
  font-size:11.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink-soft);margin-bottom:16px;
}
.toc ol{list-style:none;counter-reset:toc;display:grid;grid-template-columns:1fr 1fr;gap:9px 26px;}
.toc li{counter-increment:toc;font-size:14.5px;}
.toc li::before{
  content:counter(toc) ". ";color:var(--orange);font-weight:700;
}
.toc a{color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s;}
.toc a:hover{border-bottom-color:var(--orange);}

section.clause{margin-bottom:44px;scroll-margin-top:90px;}
section.clause > h2{
  font-family:var(--disp);font-weight:600;font-size:22px;color:var(--ink);
  margin-bottom:14px;padding-bottom:12px;border-bottom:2px solid var(--line-light);
  display:flex;gap:12px;align-items:baseline;
}
section.clause > h2 .n{color:var(--orange);font-size:16px;font-weight:700;flex-shrink:0;}
section.clause h3{
  font-family:var(--disp);font-weight:600;font-size:16.5px;color:var(--ink);
  margin:24px 0 8px;
}
section.clause p{margin-bottom:14px;font-size:15.5px;color:var(--ink-soft);}
section.clause p strong,section.clause li strong{color:var(--ink);font-weight:700;}
section.clause ul,section.clause ol{margin:0 0 16px 22px;}
section.clause li{font-size:15.5px;color:var(--ink-soft);margin-bottom:8px;}
section.clause a{color:var(--orange);font-weight:600;}

.callout{
  background:#fff;border-left:3px solid var(--orange);border-radius:0 12px 12px 0;
  padding:20px 24px;margin:20px 0;
}
.callout p{margin-bottom:0;font-size:15px;}

table.legal-table{
  width:100%;border-collapse:collapse;margin:18px 0 22px;font-size:14px;
  background:#fff;border:1px solid var(--line-light);border-radius:12px;overflow:hidden;
}
table.legal-table th{
  text-align:left;background:var(--navy);color:#fff;font-weight:600;
  padding:12px 14px;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;
}
table.legal-table td{
  padding:13px 14px;border-top:1px solid var(--line-light);color:var(--ink-soft);
  vertical-align:top;
}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}

.todo{
  background:rgba(249,115,22,.18);border-bottom:2px dashed var(--orange);
  padding:1px 5px;border-radius:3px;color:var(--ink);font-weight:700;
}

/* footer */
footer{background:var(--navy);color:var(--mist-dim);padding:40px 0;font-size:13.5px;}
footer .wrap{
  max-width:1180px;display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:14px;
}
footer .brand-word{font-size:16px;}
footer a{color:var(--mist);text-decoration:underline;transition:color .2s;}
footer a:hover{color:var(--orange);}
.foot-links{display:flex;gap:20px;flex-wrap:wrap;}

@media (max-width:760px){
  .toc ol{grid-template-columns:1fr;}
  .legal-hero{padding:40px 0 48px;}
  .legal-body{padding:40px 0 70px;}
  section.clause > h2{font-size:19.5px;}
  .back-link span.lbl{display:none;}
}
