:root {
  --ink:#f7f7f2;
  --muted:#aaa;
  --paper:#121212;
  --line:#3d3d39;
  --green:#a9e65d;
}
* { box-sizing:border-box; }
html { min-height:100%; background:var(--paper); }
body {
  min-height:100vh;
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a { color:var(--green); text-underline-offset:3px; }
a:hover { color:#b8f270; }
button:focus-visible,a:focus-visible { outline:3px solid #f3cc55; outline-offset:3px; }
.legal-page { width:min(calc(100% - 36px),760px); margin:0 auto; padding:32px 0 64px; }
.legal-header { margin-bottom:34px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.home-link { display:inline-block; margin-bottom:28px; color:var(--muted); font-size:.84rem; font-weight:700; text-decoration:none; }
.home-link:hover { color:var(--ink); }
.legal-logo {
  width:210px;
  height:52px;
  margin-bottom:24px;
  background:url("icanname-logo.png") center/210px 210px no-repeat;
}
.eyebrow {
  margin:0 0 7px;
  color:var(--green);
  font-size:.73rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
h1 { margin:0 0 8px; font-size:clamp(2rem,8vw,3rem); line-height:1.05; }
.effective { margin:0; color:var(--muted); font-size:.84rem; }
.intro { margin-bottom:30px; color:#d1d1cb; font-size:1.03rem; }
section { margin:0 0 30px; }
h2 { margin:0 0 9px; font-size:1.2rem; line-height:1.3; }
p { margin:0 0 12px; }
ul { margin:0; padding-left:22px; }
li { margin-bottom:9px; padding-left:3px; }
.data-table { margin:16px 0; border-top:1px solid var(--line); }
.data-row { padding:13px 0; border-bottom:1px solid var(--line); }
.data-row strong { display:block; margin-bottom:3px; }
.data-row span { color:var(--muted); font-size:.9rem; }
.clear-button {
  min-height:44px;
  margin-top:6px;
  border:1px solid var(--ink);
  border-radius:7px;
  padding:10px 14px;
  background:transparent;
  color:var(--ink);
  font:700 .85rem Arial,Helvetica,sans-serif;
  cursor:pointer;
}
.clear-button:hover { background:#292927; }
.clear-status { min-height:24px; margin:8px 0 0; color:var(--green); font-size:.82rem; font-weight:700; }
.legal-footer {
  margin-top:46px;
  padding-top:20px;
  border-top:1px solid var(--line);
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  color:var(--muted);
  font-size:.78rem;
}
@media (max-width:500px) {
  .legal-page { padding-top:22px; }
}
