/* Shared bureau / long-form article styles (about, sources, privacy, sitemap) */
.bureau-wrap{
  display:grid;grid-template-columns:minmax(0,1fr);
  max-width:820px;
}
.bureau-article{
  background:var(--paper);
  padding:clamp(1.5rem,4vw,3rem);
  border:1px solid var(--ink);box-shadow:6px 6px 0 0 var(--ink);
}
.bureau-article h2{
  font-family:var(--display);font-size:1.8rem;
  font-weight:600;letter-spacing:-.01em;
  margin:2rem 0 .9rem;color:var(--ink);
  border-bottom:3px double var(--rule);padding-bottom:.4rem;
}
.bureau-article h2:first-child{margin-top:0}
.bureau-article h3{font-family:var(--display);font-size:1.25rem;font-weight:600;margin:1.4rem 0 .5rem}
.bureau-article p,.bureau-article li{
  font-size:1.03rem;line-height:1.65;color:var(--ink-soft);margin:.7rem 0;
}
.bureau-article ul,.bureau-article ol{padding-left:1.5rem;margin:.8rem 0}
.bureau-article a{border-bottom:1px solid var(--rust);color:var(--ink);transition:color .15s}
.bureau-article a:hover{color:var(--rust)}
.bureau-article strong{color:var(--ink);font-weight:600}

/* Sitemap / data-sources lists */
.source-grid{
  display:grid;gap:1rem;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  margin:1.5rem 0;
}
.source-card{
  padding:1.2rem 1.4rem;background:var(--paper);
  border:1px solid var(--ink);
}
.source-card h3{font-family:var(--display);font-size:1.1rem;margin:0 0 .2rem;font-weight:600}
.source-card p{margin:.25rem 0;font-size:.88rem}
.source-card__hz{
  font-family:var(--mono);font-size:.7rem;color:var(--rust);text-transform:uppercase;letter-spacing:.14em;
}
.source-card__link{
  display:inline-block;margin-top:.5rem;
  font-family:var(--mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;
  border-bottom:1px solid var(--ink);padding-bottom:.1rem;
}

.sitemap-group{
  margin:1.5rem 0 2rem;padding-top:1rem;border-top:3px double var(--rule);
}
.sitemap-group h2{font-family:var(--display);font-size:1.6rem;margin:0 0 .8rem;font-weight:600}
.sitemap-group ul{list-style:none;padding:0;margin:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.4rem 1.5rem;
}
.sitemap-group li{padding:.6rem 0;border-bottom:1px dashed var(--rule)}
.sitemap-group li a{color:var(--ink);font-family:var(--display);font-size:1rem;font-weight:500}
.sitemap-group li a:hover{color:var(--rust)}
.sitemap-group li em{color:var(--slate);font-family:var(--body);font-size:.85rem;font-style:normal;display:block;margin-top:.15rem}

/* Contact form */
.contact-form{
  background:var(--paper);padding:1.6rem 1.8rem;
  border:1px solid var(--ink);box-shadow:6px 6px 0 0 var(--ink);
  display:grid;gap:1rem;max-width:620px;
}
.contact-form label{display:flex;flex-direction:column;gap:.3rem}
.contact-form input,.contact-form textarea,.contact-form select{
  font-family:var(--body);font-size:1rem;padding:.7rem .9rem;
  border:1px solid var(--ink);border-radius:2px;background:var(--paper);
  color:var(--ink);
}
.contact-form textarea{min-height:140px;resize:vertical}
.contact-form button{
  justify-self:start;padding:.8rem 1.4rem;
  background:var(--ink);color:var(--paper);border:0;border-radius:2px;
  font-family:var(--mono);font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;
  cursor:pointer;transition:background .15s;
}
.contact-form button:hover{background:var(--rust)}
.contact-note{color:var(--slate);font-size:.88rem;margin-top:.6rem}
