:root{
  --depot:#1E2226;
  --floor:#191C1F;
  --panel:#272C31;
  --voltline:#55C463;
  --steel:#828B95;
  --cream:#F6F3E9;
  --textwhite:#F0F2F4;
  --ink:#0F1213;
  --deepring:#14181A;
}

*,*::before,*::after{box-sizing:border-box}

html{margin:0;padding:0}

.legal-page{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  background-color:var(--depot);
  color:var(--textwhite);
  font-size:16px;
  line-height:1.75;
  overflow-x:hidden;
}

.legal-page h1,
.legal-page h2,
.legal-page h3,
.legal-page h4{line-height:1.25}

.legal-page .legal-wrap{max-width:980px;margin:0 auto;padding:0 24px}

/* solid masthead with strong h1 contrast */
.legal-page .legalhead{
  background-color:var(--floor);
  border-bottom:6px solid var(--voltline);
}
.legal-page .legalhead .legalhead-inner{
  max-width:1180px;
  margin:0 auto;
  padding:30px 24px 26px 24px;
}
.legal-page .legalhead .earmark{
  color:var(--voltline);
  font-weight:800;
  font-size:13px;
  letter-spacing:3px;
  text-transform:uppercase;
  display:block;
  margin-bottom:6px;
}
.legal-page .legalhead h1{
  color:var(--cream);
  font-size:40px;
  font-weight:900;
  margin:0 0 10px 0;
}
.legal-page .legalhead p{color:var(--cream);margin:0 0 14px 0;font-size:17px}
.legal-page .backhome{
  display:inline-block;
  background-color:var(--voltline);
  color:var(--ink);
  font-weight:800;
  padding:10px 18px;
  border-radius:5px;
  text-decoration:none;
  font-size:14px;
}
.legal-page .backhome span{color:var(--ink)}

/* breadcrumb back strip */
.legal-page .legalcrumbs{background-color:var(--depot)}
.legal-page .legalcrumbs .legal-wrap{
  padding-top:22px;
  padding-bottom:2px;
  color:var(--steel);
  font-size:14px;
}
.legal-page .legalcrumbs a{color:var(--voltline);font-weight:700;text-decoration:none}
.legal-page .legalcrumbs a:hover{text-decoration:underline}

/* table of contents panel */
.legal-page .tocpanel{
  background-color:var(--panel);
  border-left:6px solid var(--voltline);
  border-radius:6px;
  padding:22px 26px;
  margin:26px 0 8px 0;
}
.legal-page .tocpanel h2{color:var(--cream);font-size:20px;font-weight:900;margin:0 0 12px 0}
.legal-page .tocpanel ol{
  margin:0;
  padding-left:22px;
  display:grid;
  gap:8px;
}
.legal-page .tocpanel a{color:var(--steel);text-decoration:none;font-size:15px;font-weight:600}
.legal-page .tocpanel a:hover{color:var(--voltline)}

/* legal content - scope isolation: transparent background important */
.legal-page .legal-content{
  background-color:var(--depot);
  color:var(--textwhite);
}
/* scope-isolation rule - only affects headings/paragraph set inside content sections */
.legal-page .legal-content section{
  background-color:var(--depot);
}

/* content sections */
.legal-page .legal-content .docgrid{padding:14px 0}
.legal-page .legal-content .docsec{
  padding-top:34px;
  padding-bottom:10px;
  background-color:var(--depot);
  border-bottom:1px solid var(--panel);
}
.legal-page .legal-content .docsec .h2num{
  display:block;
  color:var(--voltline);
  font-weight:900;
  font-size:13px;
  letter-spacing:2px;
  text-transform:uppercase;
  margin-bottom:8px;
}
.legal-page .legal-content h2{
  color:var(--cream);
  font-size:27px;
  font-weight:900;
  margin:0 0 12px 0;
}
.legal-page .legal-content h3{
  color:var(--cream);
  font-size:19px;
  font-weight:800;
  margin:20px 0 8px 0;
}
.legal-page .legal-content p{margin:0 0 14px 0;color:var(--textwhite)}
.legal-page .legal-content b{color:var(--cream)}
.legal-page .legal-content i{color:var(--cream)}
.legal-page .legal-content a{color:var(--voltline);font-weight:700;text-decoration:none}
.legal-page .legal-content a:hover{text-decoration:underline}
.legal-page .legal-content ul{color:var(--textwhite);margin:0 0 16px 0}
.legal-page .legal-content li{margin-bottom:6px}
.legal-page .legal-content hr{border:0;border-bottom:1px solid var(--panel);margin:30px 0}

.legal-page .legal-content .datemsg{
  background-color:var(--deepring);
  border:1px solid var(--panel);
  border-radius:6px;
  color:var(--textwhite);
  padding:14px 20px;
  margin:0 0 6px 0;
}
.legal-page .legal-content .compbox{
  background-color:var(--floor);
  border-left:6px solid var(--voltline);
  padding:20px 24px;
  border-radius:6px;
  margin:0 0 16px 0;
}
.legal-page .legal-content .compbox p{margin-bottom:6px;color:var(--textwhite)}
.legal-page .legal-content .compbox b{color:var(--cream)}

/* footer back home */
.legal-page .legalfoot{background-color:var(--floor);margin-top:30px;border-top:4px solid var(--panel)}
.legal-page .legalfoot .legal-wrap{padding:34px 24px 34px 24px;text-align:center}
.legal-page .legalfoot .footcompany{color:var(--cream);font-weight:900;font-size:22px;letter-spacing:1px}
.legal-page .legalfoot .footaddress{color:var(--steel);font-size:15px;margin-top:6px}
.legal-page .legalfoot .footcontact{color:var(--steel);font-size:14px;margin-top:10px}
.legal-page .legalfoot .footcontact a{color:var(--voltline);font-weight:700;text-decoration:none}
.legal-page .legalfoot .footback{
  display:inline-block;
  margin-top:18px;
  background-color:var(--voltline);
  color:var(--ink);
  font-weight:800;
  padding:11px 20px;
  border-radius:5px;
  text-decoration:none;
  font-size:14px;
}
.legal-page .legalfoot .legalcopy{
  color:var(--voltline);
  font-size:13px;
  font-weight:700;
  letter-spacing:1px;
  margin-top:16px;
  display:block;
}

/* graceful table styling if any page needs it */
.legal-page table{width:100%;border-collapse:collapse;margin:0 0 16px 0}
.legal-page th,.legal-page td{border:1px solid var(--panel);padding:10px 12px;text-align:left;color:var(--textwhite);font-size:15px}
.legal-page th{background-color:var(--floor);color:var(--cream)}

/* reduce motion: the only motion rules we define are transitions, none applied globally */
