/* Shared styling for the legal pages (privacy, terms, security, disclosures).
   A deliberately small subset of index.html's system — same tokens, same
   typefaces — so these read as part of the site without carrying the whole
   landing-page stylesheet. */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --navy:      #0D1B2A;
  --navy-10:   rgba(13,27,42,.10);
  --gold:      #C9A84C;
  --parch:     #F5F0E8;
  --white:     #FFFFFF;
  --terra:     #C44D2D;
  --text:      rgba(13,27,42,.82);
  --text-mid:  rgba(13,27,42,.55);
  --text-dim:  rgba(13,27,42,.38);
  --border:    rgba(13,27,42,.09);
}

html{scroll-behavior:smooth}
body{
  font-family:'DM Sans',sans-serif;
  background:var(--white);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  font-size:16px;
  line-height:1.7;
}

/* ── HEADER ── */
.lg-top{
  border-bottom:1px solid var(--border);
  background:var(--parch);
  padding:0 28px;
}
.lg-top-in{
  max-width:760px;margin:0 auto;height:72px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.lg-logo{
  font-family:'Outfit',sans-serif;font-weight:800;font-size:23px;
  color:var(--navy);text-decoration:none;letter-spacing:-.02em;
}
.lg-logo em{font-style:normal;color:var(--gold)}
.lg-back{
  font-size:14.5px;font-weight:600;color:var(--text-mid);text-decoration:none;
}
.lg-back:hover{color:var(--navy)}

/* ── BODY ── */
.lg-main{max-width:760px;margin:0 auto;padding:56px 28px 90px}
.lg-h1{
  font-family:'Outfit',sans-serif;font-weight:800;font-size:40px;line-height:1.15;
  color:var(--navy);letter-spacing:-.025em;margin-bottom:12px;
}
.lg-updated{font-size:14px;color:var(--text-dim);margin-bottom:14px}

/* The plain-language summary that opens each document. */
.lg-tldr{
  background:var(--parch);border-left:3px solid var(--gold);
  border-radius:0 12px 12px 0;padding:20px 24px;margin-bottom:40px;
}
.lg-tldr strong{
  display:block;font-family:'Outfit',sans-serif;font-weight:700;
  font-size:14px;text-transform:uppercase;letter-spacing:.08em;
  color:var(--navy);margin-bottom:8px;
}
.lg-tldr p{font-size:15.5px;color:var(--text)}
.lg-tldr p + p{margin-top:10px}

.lg-main h2{
  font-family:'Outfit',sans-serif;font-weight:700;font-size:22px;
  color:var(--navy);letter-spacing:-.01em;
  margin:40px 0 12px;padding-top:4px;
}
.lg-main h3{
  font-family:'Outfit',sans-serif;font-weight:700;font-size:17px;
  color:var(--navy);margin:26px 0 8px;
}
.lg-main p{margin-bottom:14px}
.lg-main ul{margin:0 0 16px 0;padding-left:0;list-style:none}
.lg-main li{position:relative;padding-left:20px;margin-bottom:9px}
.lg-main li::before{
  content:'';position:absolute;left:2px;top:11px;
  width:5px;height:5px;border-radius:50%;background:var(--gold);
}
.lg-main a{color:var(--navy);text-decoration:underline;text-underline-offset:2px}
.lg-main a:hover{color:var(--gold)}
.lg-main strong{color:var(--navy);font-weight:700}

/* Subprocessor / retention tables */
.lg-table-wrap{overflow-x:auto;margin-bottom:20px}
.lg-table{border-collapse:collapse;width:100%;min-width:520px;font-size:14.5px}
.lg-table th,.lg-table td{
  text-align:left;padding:11px 14px;border-bottom:1px solid var(--border);
  vertical-align:top;
}
.lg-table th{
  font-family:'Outfit',sans-serif;font-weight:700;font-size:13px;
  text-transform:uppercase;letter-spacing:.06em;color:var(--navy);
  background:var(--parch);
}

/* Anything that materially limits the user's expectations. */
.lg-flag{
  border:1px solid rgba(196,77,45,.28);background:rgba(196,77,45,.06);
  border-radius:12px;padding:18px 22px;margin:24px 0;
}
.lg-flag strong{color:var(--terra)}

.lg-foot{
  border-top:1px solid var(--border);margin-top:56px;padding-top:24px;
  font-size:13.5px;color:var(--text-dim);
}
.lg-foot a{color:var(--text-mid)}
.lg-foot-links{margin-top:10px;display:flex;flex-wrap:wrap;gap:18px}

@media (max-width:600px){
  .lg-main{padding:38px 20px 64px}
  .lg-h1{font-size:31px}
  .lg-top{padding:0 20px}
  .lg-main h2{font-size:20px}
}
