/* Contact shares the approved public landing's light identity and fonts. */
:root { --tc-bg: #faf9f3; --tc-ink: #18372b; --tc-muted: #5b6d62; --tc-accent: #187e50; }
body { background: var(--paper); color: var(--ink); }
.tc-h { color: var(--ink); font-family: Sora, sans-serif; }
.tc-text-muted { color: var(--muted); }
#tc-contact-form { padding: 0; background: transparent; box-shadow: none; border: 0; border-radius: 0; }
#tc-contact-form input, #tc-contact-form select, #tc-contact-form textarea {
  background: #fff; border: 1px solid var(--line); color: var(--ink); font-size: 16px;
}
#tc-contact-form input:focus, #tc-contact-form select:focus, #tc-contact-form textarea:focus { outline: 2px solid var(--green); outline-offset: 2px; }
#tc-contact-form input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--green); }
#tc-contact-submit { background: var(--green); color: #fff; border-radius: 10px; min-height: 44px; }
footer.tc-cta-band { background: var(--paper); border-top: 1px solid var(--line); color: var(--ink); }
footer.tc-cta-band p, footer.tc-cta-band a { color: var(--muted) !important; }
footer.tc-cta-band > div > div { color: var(--muted) !important; }
footer.tc-cta-band a:hover { color: var(--green) !important; }
footer.tc-cta-band .flex.gap-6 { flex-wrap: wrap; gap: 12px 20px; }
@media (max-width: 560px) {
  .header .nav { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; }
  .header .nav-end { display: contents; }
  .header #locale { grid-column: 3; grid-row: 1; }
  .header [data-access-link] { display: inline-flex; grid-column: 1 / -1; justify-content: center; }
}
