/* ============================================================
   legal.css — Terms of Service and Privacy Notice.
   Sits on top of edtrainit-core.css, which supplies the shared
   masthead, mobile panel and footer. Nothing here touches any
   existing selector; every class below is new to these pages.
   ============================================================ */

.lg-main{background:#FFFFFF}

/* ---------- Header ---------- */
.lg-head{
  padding:clamp(96px,11vw,150px) 0 clamp(30px,4vw,46px);
  border-bottom:1px solid var(--line, #E3E3E3);
}
.lg-eyebrow{
  margin:0 0 14px;
  font-family:'JetBrains Mono','SFMono-Regular',Menlo,monospace;
  font-size:11.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  color:var(--green-ink,#0B3F46);
}
.lg-title{
  margin:0;font-family:var(--font-h,'Plus Jakarta Sans',sans-serif);
  font-weight:800;letter-spacing:-.035em;line-height:1.05;
  font-size:clamp(32px,5vw,54px);color:var(--navy,#0B1F3A);
}
.lg-sub{
  margin:18px 0 0;max-width:64ch;
  font-size:clamp(16px,1.6vw,18px);line-height:1.65;color:rgba(0,0,0,.66);
}
.lg-meta{
  display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0;list-style:none;
}
.lg-meta li{
  padding:7px 13px;border-radius:999px;border:1px solid var(--line,#E3E3E3);
  background:#FFFFFF;
  font-family:'JetBrains Mono','SFMono-Regular',Menlo,monospace;
  font-size:11.5px;letter-spacing:.04em;color:rgba(0,0,0,.6);
}
.lg-meta li b{color:var(--green-ink,#0B3F46);font-weight:700}

/* ---------- Body: contents rail + document ---------- */
.lg-body{padding:clamp(34px,4.5vw,58px) 0 clamp(60px,7vw,96px)}
.lg-grid{display:grid;grid-template-columns:234px minmax(0,1fr);gap:clamp(28px,4vw,62px)}

.lg-toc{position:sticky;top:calc(var(--nav-h,72px) + 22px);align-self:start;min-width:0}
.lg-toc-h{
  margin:0 0 12px;font-family:'JetBrains Mono','SFMono-Regular',Menlo,monospace;
  font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(0,0,0,.48);
}
.lg-toc ol{list-style:none;margin:0;padding:0;counter-reset:lgtoc}
.lg-toc li{counter-increment:lgtoc;break-inside:avoid}
.lg-toc a{
  overflow-wrap:anywhere;
  display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:baseline;
  padding:7px 0;text-decoration:none;
  font-size:14px;line-height:1.4;color:rgba(0,0,0,.66);
  border-bottom:1px solid transparent;
}
.lg-toc a::before{
  content:counter(lgtoc);
  font-family:'JetBrains Mono','SFMono-Regular',Menlo,monospace;
  font-size:11px;color:rgba(0,0,0,.38);
}
.lg-toc a:hover{color:var(--green-ink,#0B3F46)}
.lg-toc a:hover::before{color:var(--green-ink,#0B3F46)}

.lg-doc{max-width:76ch;min-width:0}
.lg-sec{padding:0 0 34px}
.lg-sec + .lg-sec{padding-top:34px;border-top:1px solid var(--line,#E3E3E3)}
.lg-sec h2{
  display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:baseline;
  margin:0 0 14px;
  font-family:var(--font-h,'Plus Jakarta Sans',sans-serif);
  font-weight:800;letter-spacing:-.02em;line-height:1.25;
  font-size:clamp(20px,2.2vw,25px);color:var(--navy,#0B1F3A);
  scroll-margin-top:calc(var(--nav-h,72px) + 20px);
}
.lg-n{
  font-family:'JetBrains Mono','SFMono-Regular',Menlo,monospace;
  font-size:13px;font-weight:700;color:var(--green-ink,#0B3F46);
}
.lg-sec h3{
  margin:24px 0 9px;font-family:var(--font-h,'Plus Jakarta Sans',sans-serif);
  font-weight:700;font-size:16.5px;letter-spacing:-.01em;color:var(--navy,#0B1F3A);
}
.lg-doc p{margin:0 0 14px;font-size:16px;line-height:1.72;color:rgba(0,0,0,.76)}
.lg-doc p:last-child{margin-bottom:0}
.lg-doc a{color:var(--green-ink,#0B3F46);font-weight:600;
  text-decoration:underline;text-underline-offset:2px}
.lg-doc strong{font-weight:700;color:var(--navy,#0B1F3A)}

.lg-list{margin:0 0 14px;padding:0;list-style:none}
.lg-list li{
  position:relative;padding:0 0 0 22px;margin:0 0 9px;
  font-size:16px;line-height:1.68;color:rgba(0,0,0,.76);
}
.lg-list li::before{
  content:"";position:absolute;left:3px;top:.68em;
  width:6px;height:6px;border-radius:50%;background:var(--green-ink,#0B3F46);opacity:.5;
}

/* A plain two-column definition table for the data-processing detail */
.lg-table{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:15px}
.lg-table th,.lg-table td{
  text-align:left;vertical-align:top;padding:11px 14px 11px 0;
  border-bottom:1px solid var(--line,#E3E3E3);line-height:1.6;
}
.lg-table th{
  width:34%;font-weight:700;color:var(--navy,#0B1F3A);
  font-size:14px;
}
.lg-table td{color:rgba(0,0,0,.74)}
.lg-table tr:last-child th,.lg-table tr:last-child td{border-bottom:0}

/* Pull-out for the one or two things people must not miss */
.lg-note{
  margin:0 0 16px;padding:16px 18px;border-radius:14px;
  border:1px solid var(--line,#E3E3E3);border-left:3px solid var(--green-ink,#0B3F46);
  background:#FFFFFF;
}
.lg-note p{margin:0;font-size:15px;line-height:1.65;color:rgba(0,0,0,.74)}
.lg-note p + p{margin-top:10px}

/* Contact block that closes each document */
.lg-contact{
  margin-top:30px;padding:22px 24px;border-radius:16px;
  border:1px solid var(--line,#E3E3E3);background:#FFFFFF;
}
.lg-contact h2{margin-top:0}
.lg-contact dl{margin:0;display:grid;gap:11px}
.lg-contact div{display:grid;grid-template-columns:150px 1fr;gap:12px}
.lg-contact dt{
  font-family:'JetBrains Mono','SFMono-Regular',Menlo,monospace;
  font-size:11px;letter-spacing:.07em;text-transform:uppercase;
  color:rgba(0,0,0,.5);padding-top:2px;
}
.lg-contact dd{margin:0;font-size:15px;line-height:1.6;color:rgba(0,0,0,.78)}

/* Cross-link between the two documents */
.lg-pair{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:34px;
}
.lg-pair a{
  display:block;padding:18px 20px;border-radius:16px;text-decoration:none;
  border:1px solid var(--line,#E3E3E3);background:#FFFFFF;
  transition:border-color .22s ease,transform .22s ease;
}
.lg-pair a:hover{border-color:var(--green-ink,#0B3F46);transform:translateY(-1px)}
.lg-pair b{display:block;font-size:16px;font-weight:700;color:var(--navy,#0B1F3A)}
.lg-pair span{display:block;margin-top:4px;font-size:13.5px;line-height:1.5;color:rgba(0,0,0,.6)}

@media(max-width:900px){
  .lg-grid{grid-template-columns:minmax(0,1fr);gap:26px}
  .lg-toc{position:static;padding-bottom:20px;border-bottom:1px solid var(--line,#E3E3E3)}
  .lg-toc ol{columns:2;column-gap:26px}
}
@media(max-width:560px){
  .lg-toc ol{columns:1}
  .lg-sec h2{grid-template-columns:28px 1fr;gap:8px}
  .lg-contact div{grid-template-columns:1fr;gap:3px}
  .lg-pair{grid-template-columns:1fr}
  .lg-table th{width:40%}
}

/* ---------- Numbered clauses (2.1, 2.2 …) ---------- */
.lg-cl{
  display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:baseline;
  margin:0 0 14px;
}
.lg-cl b{
  font-family:'JetBrains Mono','SFMono-Regular',Menlo,monospace;
  font-size:12.5px;font-weight:700;color:var(--green-ink,#0B3F46);
}
.lg-cl span{font-size:16px;line-height:1.72;color:rgba(0,0,0,.76)}

/* ---------- Switch between the three documents ---------- */
.lg-switch{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.lg-switch a{
  padding:9px 16px;border-radius:999px;text-decoration:none;
  border:1px solid var(--line,#E3E3E3);background:#FFFFFF;
  font-size:14px;font-weight:600;color:rgba(0,0,0,.66);
  transition:border-color .2s ease,color .2s ease,background .2s ease;
}
.lg-switch a:hover{border-color:var(--green-ink,#0B3F46);color:var(--green-ink,#0B3F46)}
.lg-switch a.is-here{
  background:var(--green-ink,#0B3F46);border-color:var(--green-ink,#0B3F46);color:#FFFFFF;
}

/* ---------- Full-width data tables inside a document ---------- */
.lg-tablewrap{overflow-x:auto;margin:0 0 18px;-webkit-overflow-scrolling:touch}
.lg-table-grid{min-width:520px;border-collapse:collapse;width:100%}
.lg-table-grid th,.lg-table-grid td{
  padding:11px 14px;border:1px solid var(--line,#E3E3E3);
  font-size:14.5px;line-height:1.6;vertical-align:top;text-align:left;
}
.lg-table-grid thead th{
  width:auto;background:#FFFFFF;font-size:12.5px;font-weight:700;
  letter-spacing:.03em;text-transform:uppercase;color:var(--green-ink,#0B3F46);
}
.lg-table-grid tbody td{color:rgba(0,0,0,.76)}
.lg-table-grid tbody td:first-child{font-weight:600;color:var(--navy,#0B1F3A)}

/* ---------- Anything still to be filled in before publishing ---------- */
.lg-todo{
  background:#FFF3CD;color:#6B4E00;padding:1px 7px;border-radius:5px;
  font-family:'JetBrains Mono','SFMono-Regular',Menlo,monospace;
  font-size:.88em;font-weight:700;overflow-wrap:anywhere;
}

/* The document lead paragraph, above the switcher */
.lg-head .lg-doc-lead,.lg-head > .core-wrap > p:not(.lg-eyebrow){
  margin:18px 0 0;max-width:68ch;
  font-size:clamp(15.5px,1.5vw,17.5px);line-height:1.68;color:rgba(0,0,0,.66);
}
