:root{
  --navy:#1a1a2e;--navy-light:#222240;--navy-dark:#12121f;
  --blue:#4361ee;--blue-light:#5a7bff;--cyan:#4cc9f0;
  --white:#fff;--gray-100:#f0f0f5;--gray-200:#d0d0dd;--gray-300:#a0a0b8;--gray-400:#70708a;
  --gradient-blue:linear-gradient(135deg,#4361ee 0%,#4cc9f0 100%);
  --gradient-dark:linear-gradient(180deg,#1a1a2e 0%,#16162b 50%,#12121f 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--gradient-dark);color:var(--white);line-height:1.7;
  min-height:100vh;-webkit-font-smoothing:antialiased;
}
a{color:var(--cyan);text-decoration:none;transition:color .2s}
a:hover{color:var(--blue-light);text-decoration:underline}
.nav{
  position:sticky;top:0;z-index:100;background:rgba(18,18,31,.85);
  backdrop-filter:blur(12px);border-bottom:1px solid rgba(67,97,238,.15);
  padding:1rem 0;
}
.nav-inner{
  max-width:900px;margin:0 auto;padding:0 1.5rem;
  display:flex;justify-content:space-between;align-items:center;
}
.logo{font-weight:800;font-size:1.25rem;letter-spacing:.02em}
.logo span{background:var(--gradient-blue);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.nav-back{font-size:.9rem;color:var(--gray-300)}
.nav-back:hover{color:var(--white)}
main{max-width:820px;margin:0 auto;padding:3rem 1.5rem 5rem}
.page-header{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid rgba(67,97,238,.15)}
.page-header h1{
  font-size:clamp(2rem,4vw,2.75rem);font-weight:800;letter-spacing:-.02em;line-height:1.2;
  margin-bottom:.75rem;
}
.page-header h1 span{background:var(--gradient-blue);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.effective-date{color:var(--gray-300);font-size:.95rem}
article h2{
  font-size:1.5rem;font-weight:700;margin-top:2.5rem;margin-bottom:1rem;
  color:var(--white);letter-spacing:-.01em;
}
article h2::before{content:"§ ";color:var(--cyan);font-weight:400;opacity:.7}
article h3{
  font-size:1.125rem;font-weight:600;margin-top:1.75rem;margin-bottom:.75rem;
  color:var(--gray-100);
}
article p,article li{color:var(--gray-100);font-size:1rem;margin-bottom:.85rem}
article ul,article ol{margin-left:1.5rem;margin-bottom:1rem}
article li{margin-bottom:.5rem}
article strong{color:var(--white);font-weight:600}
article code{
  background:rgba(67,97,238,.12);padding:.1rem .4rem;border-radius:4px;
  font-family:'SF Mono',Monaco,'Cascadia Code',monospace;font-size:.9em;
  color:var(--cyan);
}
.callout{
  background:var(--gradient-card,rgba(67,97,238,.08));border:1px solid rgba(76,201,240,.25);
  border-radius:12px;padding:1.25rem 1.5rem;margin:1.5rem 0;
}
.callout strong{color:var(--cyan)}
.contact-block{
  background:rgba(67,97,238,.06);border:1px solid rgba(67,97,238,.2);
  border-radius:12px;padding:1.5rem;margin-top:1.5rem;
}
.contact-block p{margin-bottom:.35rem}
.footer{
  border-top:1px solid rgba(67,97,238,.15);padding:2rem 1.5rem;
  text-align:center;color:var(--gray-400);font-size:.85rem;
}
.footer nav{margin-bottom:.75rem}
.footer nav a{margin:0 .75rem;color:var(--gray-300)}
.toc{
  background:rgba(18,18,31,.6);border:1px solid rgba(67,97,238,.15);
  border-radius:12px;padding:1.25rem 1.5rem;margin:1rem 0 2rem;
}
.toc strong{display:block;margin-bottom:.5rem;color:var(--cyan);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}
.toc ol{margin:0;padding-left:1.25rem;columns:2;gap:1rem}
.toc li{margin-bottom:.3rem;font-size:.92rem}
@media (max-width:640px){.toc ol{columns:1}}
