:root {
  --ink: #231F20;
  --yellow: #FDB913;
  --wash: #f7f6f4;
  --line: #ddd9d4;
  --muted: #605b58;
  --tint: #fff4cf;
  --focus: #875d00;
  accent-color: var(--ink);
}
header.brandbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 80px;
  padding: 10px clamp(18px, 5vw, 82px);
  background: white;
  border-bottom: 3px solid var(--yellow);
  color: var(--ink);
}
.brandlock { display:flex; align-items:center; gap:20px; }
.brandlogo { display:block; width:124px; height:auto; }
.brandarea { border-left:1px solid var(--line); padding-left:20px; font-size:14px; font-weight:650; letter-spacing:0; }
.brandunit { font-size:13px; font-weight:650; color:var(--muted); }
body { color:var(--ink); }
nav a, main a:not(.primary):not(.btn) { color:var(--ink); text-decoration-thickness:1px; text-underline-offset:3px; }
button:hover:not(:disabled), a.primary:hover { filter:brightness(.96); }
a.primary { display:inline-block; width:auto; text-decoration:none; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible { outline:3px solid var(--focus); outline-offset:2px; }
.tabs button.active { background:var(--yellow); color:var(--ink); }
details[open]>summary { margin-bottom:12px; }
.badge { color:var(--ink); }
.printbrand { display:none; }
@media(max-width:480px) {
  header.brandbar { min-height:67px; flex-wrap:wrap; gap:8px; }
  .brandlock { gap:10px; }
  .brandlogo { width:98px; }
  .brandarea { padding-left:10px; font-size:12px; }
  .brandunit { font-size:11px; }
}
@media print {
  .printbrand { display:block; margin-bottom:14px; }
}
