/* Shared approved identity. Gold is a surface; bronze is the readable text accent. */
:root {
  --gold: #e1ad28;
  --gold-hover: #d29d1c;
  --gold-soft: #fff4d5;
  --ink: #28251f;
  --accent: #76550a;
  --blue: var(--accent);
  --muted: #666158;
  --line: #e4e0d6;
  color: var(--ink);
}
.brand-logo { display:block; width:80px; height:80px; object-fit:contain; flex-shrink:0; }
.site-header { min-height:112px; }
.brand small, .topbar .brand-english { font-size:12px; letter-spacing:.1em; }
.topbar { height:104px; }
.topbar .wordmark { gap:12px; }
.site-header nav a:hover, .text-link:hover, .site-footer>a:last-child:hover { color:var(--accent); }
.button.primary { background:var(--gold); color:var(--ink); }
.button.primary:hover, .button.primary:not(:disabled):hover { background:var(--gold-hover); }
.hero h1 em { color:var(--ink); text-decoration:underline; text-decoration-color:var(--gold); text-decoration-thickness:.12em; text-underline-offset:.1em; }
.location-label span, .opening-badge { color:var(--accent); background:var(--gold-soft); border-color:#e8cd82; }
.hero-image { background:#f7f6f2; }
.service { background:#f7f6f2; border-top-color:var(--gold); }
.service-number { color:var(--accent); }
.service-tag { color:#514c42; border-top-color:var(--line); }
.hybrid { background:var(--ink); }
.hybrid .eyebrow, .hybrid-options span { color:var(--gold); }
.hybrid-intro, .hybrid-options p, .hybrid-note { color:#dedbd3; }
.hybrid-options article+article, .hybrid-note { border-top-color:#575247; }
.outlined:hover { background:var(--gold-soft); }
.test-label { color:var(--accent); background:var(--gold-soft); }
.step-number { color:var(--accent); background:var(--gold-soft); }
.disclosure { border-left-color:var(--gold); background:#fffaeb; }
.disclosure p { color:var(--muted); }
.storage-setup a, .download-area, .status-panel a { color:var(--accent); }
button:focus-visible, a:focus-visible, label:focus-within, input:focus-visible,
textarea:focus-visible, select:focus-visible, summary:focus-visible {
  outline:3px solid var(--accent); outline-offset:4px;
}
@media(max-width:700px) {
  .brand-logo { width:64px; height:64px; }
  .site-header { min-height:0; }
  .topbar .wordmark { flex-basis:100%; }
  .topbar .brand-name { font-size:18px; }
  .topbar .brand-english { font-size:12px; }
  .topbar #network-label { max-width:none; }
}
