/* ---- site nav ---- */
.site-nav {
  display: flex;
  justify-content: center;
  gap: 1.25rem;
  margin-top: 1.25rem;
  font-size: 0.88rem;
  font-weight: 600;
}
.site-nav a {
  color: var(--muted);
  text-decoration: none;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  border: 1px solid transparent;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}
.site-nav a:hover, .site-nav a:focus-visible {
  color: var(--gold);
  border-color: rgba(230, 179, 54, 0.45);
}

/* ---- contact band (homepage) ---- */
.contact-band {
  width: 100%;
  max-width: 50rem;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 1rem;
  text-align: center;
}
.contact-title {
  font-family: 'Fraunces', Georgia, serif;
  font-optical-sizing: auto;
  font-weight: 480;
  font-size: clamp(1.6rem, 4vw, 2.1rem);
  letter-spacing: -0.01em;
}
.contact-lede {
  margin-top: 0.75rem;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.55;
  max-width: 32rem;
  margin-left: auto;
  margin-right: auto;
}
.contact-email { margin-top: 1rem; font-size: 1.05rem; font-weight: 600; }
.contact-email a { color: var(--gold); text-decoration: none; }
.contact-email a:hover, .contact-email a:focus-visible { color: var(--paper); text-decoration: underline; }
.contact-link {
  display: inline-flex;
  align-items: center;
  margin-top: 1.15rem;
  padding: 0.55rem 1.15rem;
  border: 1px solid rgba(230, 179, 54, 0.5);
  border-radius: 999px;
  color: var(--gold);
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.contact-link:hover, .contact-link:focus-visible {
  background: var(--gold);
  border-color: var(--gold);
  color: #14110a;
}

/* ---- contact form ---- */
.contact-form {
  max-width: 28rem;
  margin: 1.75rem auto 0;
  text-align: left;
}
.contact-form label {
  display: block;
  margin-bottom: 1rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--muted);
}
.contact-form input,
.contact-form textarea {
  display: block;
  width: 100%;
  margin-top: 0.35rem;
  padding: 0.65rem 0.85rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  color: var(--paper);
  font: inherit;
  font-size: 1rem;
}
.contact-form input:focus-visible,
.contact-form textarea:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}
.contact-form textarea { min-height: 8rem; resize: vertical; }
.contact-form button {
  display: inline-flex;
  align-items: center;
  padding: 0.65rem 1.4rem;
  border: 1px solid rgba(230, 179, 54, 0.5);
  border-radius: 999px;
  background: transparent;
  color: var(--gold);
  font: inherit;
  font-size: 0.95rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.contact-form button:hover, .contact-form button:focus-visible {
  background: var(--gold);
  border-color: var(--gold);
  color: #14110a;
}

/* ---- legal pages ---- */
.legal-page { flex: 1 1 auto; width: 100%; max-width: 42rem; margin: 0 auto; padding: 1.75rem 1.5rem 2.5rem; }
.legal-page h1 {
  font-family: 'Fraunces', Georgia, serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: clamp(2rem, 5vw, 2.6rem);
  letter-spacing: -0.012em;
  text-align: center;
  margin-bottom: 0.5rem;
}
.legal-page .updated { text-align: center; color: var(--muted); font-size: 0.85rem; margin-bottom: 2rem; }
.legal-page h2 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.25rem;
  font-weight: 500;
  margin: 1.75rem 0 0.65rem;
  color: var(--paper);
}
.legal-page p, .legal-page li { color: var(--muted); font-size: 0.98rem; line-height: 1.65; margin-bottom: 0.85rem; }
.legal-page ul { margin: 0 0 0.85rem 1.25rem; }
.legal-page a { color: var(--gold); }
.legal-page a:hover, .legal-page a:focus-visible { color: var(--paper); }

/* ---- footer links ---- */
.foot-links { margin-top: 0.65rem; }
.foot-links a { color: var(--muted); text-decoration: none; }
.foot-links a:hover, .foot-links a:focus-visible { color: var(--gold); }

/* ---- product accent colours ---- */
.accent-marketdata { --accent: #f59e0b; }
.accent-rfp { --accent: #34b87d; }
.accent-blinkof { --accent: #2f8f7a; }
.accent-tradepost { --accent: #9ec5fe; }
.accent-bol { --accent: #2dd4bf; }
.accent-saleshose { --accent: #8079f8; }
.accent-olykoek { --accent: #e08552; }
.accent-yieldmeister { --accent: #5cc79b; }
.accent-replyflow { --accent: #e0784f; }

.prose-center { text-align: center; }
.prose-small { font-size: 0.85rem; margin-top: 1.5rem; }

.pill-secondary {
  border-color: rgba(243, 239, 230, 0.28);
  color: var(--paper);
}
.pill-secondary:hover, .pill-secondary:focus-visible {
  background: rgba(243, 239, 230, 0.12);
  border-color: rgba(243, 239, 230, 0.45);
  color: var(--paper);
}
