:root {
  --bg: #0e0e0f;
  --text: #e6e4df;
  --muted: #8f8c86;
  --line: #26262a;
  --accent: #e0a64a; /* flashlight amber */
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 14px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
header, main, footer { max-width: 640px; margin: 0 auto; padding: 0 16px; }
header {
  display: flex; align-items: center; justify-content: space-between;
  height: 56px; border-bottom: 1px solid var(--line);
}
.home { color: var(--text); text-decoration: none; font-weight: 600; }
.lang { display: flex; gap: 4px; }
.lang button {
  height: 28px; padding: 0 10px; border: 1px solid var(--line); border-radius: 6px;
  background: none; color: var(--muted); font: inherit; font-size: 12px; cursor: pointer;
  position: relative;
}
.lang button::after { content: ""; position: absolute; inset: -8px -2px; } /* 44px hit area */
.lang button[aria-pressed="true"] { color: var(--text); border-color: var(--muted); }
main { padding-top: 24px; padding-bottom: 32px; }
h1 { font-size: 20px; font-weight: 600; line-height: 1.25; margin: 0 0 4px; }
h2 { font-size: 15px; font-weight: 600; margin: 28px 0 6px; }
p { margin: 0 0 10px; }
.meta { color: var(--muted); font-size: 12px; }
.contact { font-size: 15px; margin: 16px 0 4px; }
a { color: var(--accent); text-underline-offset: 2px; overflow-wrap: anywhere; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
dl { margin: 0; }
dt { font-weight: 600; margin-top: 14px; }
dd { margin: 2px 0 0; color: var(--muted); }
footer { border-top: 1px solid var(--line); padding-top: 16px; padding-bottom: 24px; color: var(--muted); font-size: 12px; }
[hidden] { display: none !important; }
