:root { --text: #1f2a33; --muted: #5b6b77; --accent: #2f6f8f; --bg: #fafbfc; }
* { box-sizing: border-box; }
body {
  margin: 0; background: var(--bg); color: var(--text);
  font: 17px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
main { max-width: 42rem; margin: 0 auto; padding: 3rem 1.5rem; }
h1 { font-size: 2rem; line-height: 1.2; margin: 0 0 .25rem; }
header { display: flex; align-items: center; gap: 1.5rem; margin-bottom: 2.5rem; }
header img {
  width: 9rem; height: 9rem; flex: none; border-radius: 50%;
  object-fit: cover; object-position: 40% 45%;
}
.role { color: var(--muted); margin: 0; }
@media (max-width: 30rem) { header { flex-direction: column; text-align: center; } }
h2 { font-size: 1.1rem; margin: 2rem 0 .5rem; }
.notice { border-left: 3px solid var(--accent); padding: .25rem 0 .25rem 1rem; }
address { font-style: normal; }
footer { color: var(--muted); font-size: .9rem; margin-top: 3rem; }
footer a { color: inherit; }
