/* ===== SIMON legal pages — shared styles, matched to the landing page ===== */
:root{
  --black:#000000;
  --bg:#06060a;
  --panel:#0a0a0f;
  --panel-edge:#15151f;
  --blue:#2b6bff;
  --ring-blue:#1d8fff;
  --violet:#7c3aed;
  --orange:#ff6a1a;
  --ring-orange:#ff7a22;
  --text:#e8e6f0;
  --muted:#8b8a99;
  --faint:#5a5968;
  --font:'Poppins', system-ui, sans-serif;
  --maxw:760px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--black);
  color:var(--text);
  font-family:var(--font);
  font-weight:400;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(120% 80% at 50% 0%, rgba(43,107,255,0.05), transparent 55%),
             radial-gradient(100% 70% at 50% 100%, rgba(255,106,26,0.035), transparent 60%);
}
.wrap{position:relative;z-index:1;max-width:var(--maxw);margin:0 auto;padding:0 24px}

/* header */
header{padding:56px 24px 8px;text-align:center}
header a.brand{display:inline-block}
header img{width:108px;height:auto;opacity:.92}
.kicker{
  font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--faint);margin-top:22px;
}
h1{
  font-weight:600;font-size:clamp(1.7rem,5vw,2.3rem);
  letter-spacing:-.01em;line-height:1.2;margin:8px 0 6px;
}
.updated{color:var(--muted);font-size:.92rem;margin-bottom:6px}

/* hairline */
.rule{
  width:100%;max-width:var(--maxw);margin:28px auto 0;height:1px;
  background:linear-gradient(90deg,transparent,var(--panel-edge),transparent);
  position:relative;
}
.rule::after{
  content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;
  border-radius:50%;transform:translate(-50%,-50%);
  background:var(--violet);box-shadow:0 0 12px var(--violet);
}

/* body content */
main{padding:40px 24px 24px}
.intro{
  font-size:1.06rem;color:var(--text);
  background:linear-gradient(160deg,#0b0b12,#070709);
  border:1px solid var(--panel-edge);border-radius:14px;
  padding:20px 22px;margin-bottom:36px;
}
.intro strong{color:var(--text)}
h2{
  font-weight:600;font-size:clamp(1.15rem,3.4vw,1.4rem);
  letter-spacing:-.01em;margin:34px 0 12px;color:var(--text);
}
h2 .num{color:var(--ring-blue);font-weight:600;margin-right:.5em}
h3{font-weight:600;font-size:1.02rem;margin:20px 0 8px;color:var(--text)}
p{margin-bottom:14px;color:var(--text)}
p.muted, li.muted{color:var(--muted)}
ul,ol{margin:0 0 16px 1.3em}
li{margin-bottom:9px}
a{color:var(--ring-blue);text-decoration:none;border-bottom:1px solid rgba(29,143,255,.35)}
a:hover{border-bottom-color:var(--ring-blue)}
strong{font-weight:600}

.callout{
  border-left:3px solid var(--violet);
  background:rgba(124,58,237,.06);
  padding:14px 18px;border-radius:0 10px 10px 0;margin:18px 0;
  color:var(--text);font-size:.98rem;
}
.contact-card{
  background:var(--panel);border:1px solid var(--panel-edge);
  border-radius:14px;padding:22px;margin:24px 0;
}
.contact-card h2{margin-top:0}

/* footer */
footer{padding:40px 24px 64px;text-align:center}
.footer-links{margin-bottom:18px;font-size:.92rem}
.footer-links a{margin:0 12px;color:var(--muted);border-bottom:none}
.footer-links a:hover{color:var(--text)}
.footer-loc{font-size:.82rem;color:var(--faint);letter-spacing:.04em;line-height:1.7}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
