:root{
  --navy:#1B2A4A;
  --navy-dark:#10192E;
  --gold:#B08D3E;
  --text:#2E2E2E;
  --muted:#6B6B6B;
  --bg:#FFFFFF;
  --panel:#F4F1EA;
  --warn-bg:#FBF1DD;
  --warn-border:#D8B361;
  --rule:#D9D2BE;
  --table-head:#1B2A4A;
  --row-alt:#F7F5EF;
  --maxw:820px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:"Inter","Segoe UI",-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.topbar{
  border-bottom:3px solid var(--gold);
  padding:18px 24px;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:8px;
}
.topbar .brand{
  font-weight:700;
  font-size:1.15rem;
  color:var(--navy);
  text-decoration:none;
}
.topbar .brand span{
  display:block;
  font-weight:400;
  font-style:italic;
  font-size:0.72rem;
  color:var(--gold);
}
.topbar nav a{
  color:var(--muted);
  text-decoration:none;
  margin-left:18px;
  font-size:0.92rem;
}
.topbar nav a:hover, .topbar nav a.active{ color:var(--navy); font-weight:600; }

main{
  max-width:var(--maxw);
  margin:0 auto;
  padding:36px 24px 80px;
}
.doc-kicker{
  color:var(--muted);
  font-size:0.9rem;
  margin-bottom:6px;
}
h1.doc-title{
  color:var(--navy);
  font-size:2rem;
  margin:0 0 6px;
}
.doc-sub{
  color:var(--muted);
  font-size:0.98rem;
  margin-bottom:28px;
}
.callout{
  background:var(--panel);
  border:1px solid var(--rule);
  border-radius:4px;
  padding:16px 20px;
  font-size:0.92rem;
  font-style:italic;
  color:#4a4534;
  margin:20px 0 28px;
}
.callout-warn{
  background:var(--warn-bg);
  border-color:var(--warn-border);
}
.callout strong{ font-style:normal; }
h2{
  color:var(--navy);
  font-size:1.28rem;
  margin:36px 0 12px;
  padding-bottom:8px;
  border-bottom:2px solid var(--gold);
}
h2 strong{ font-weight:700; }
h3{
  color:var(--navy-dark);
  font-size:1.05rem;
  margin:22px 0 8px;
}
p{ margin:0 0 14px; text-align:justify; }
p.strong-line{ font-weight:600; }
p.center-note{ text-align:center; font-style:italic; color:var(--muted); margin-top:32px; }
ul{ margin:0 0 16px; padding-left:22px; }
ul li{ margin-bottom:8px; }
ul li blockquote{ margin:0; padding:0; border:0; font-style:normal; }
strong{ color:var(--navy-dark); }
.tbl-wrap{
  overflow-x:auto;
  margin:0 0 22px;
  border:1px solid var(--rule);
  border-radius:4px;
}
table.data-table{
  border-collapse:collapse;
  width:100%;
  font-size:0.88rem;
}
table.data-table th{
  background:var(--table-head);
  color:#fff;
  text-align:left;
  padding:10px 12px;
  font-weight:600;
}
table.data-table td{
  padding:9px 12px;
  border-top:1px solid var(--rule);
  vertical-align:top;
}
table.data-table tr:nth-child(even) td{ background:var(--row-alt); }
hr.rule{ border:none; border-top:2px solid var(--gold); margin:24px 0; }
footer.site-footer{
  border-top:1px solid var(--rule);
  padding:22px 24px 40px;
  text-align:center;
  color:var(--muted);
  font-size:0.85rem;
}
footer.site-footer a{ color:var(--navy); text-decoration:none; }
footer.site-footer a:hover{ text-decoration:underline; }
.crosslinks{
  display:flex;
  gap:18px;
  justify-content:center;
  margin-bottom:10px;
  flex-wrap:wrap;
}
.crosslinks a{ margin:0 9px; }
@media (max-width:600px){
  main{ padding:24px 16px 60px; }
  h1.doc-title{ font-size:1.55rem; }
  table.data-table{ font-size:0.78rem; }
}
