/* Contact form only. Cards, typography, buttons and navigation come from site.css. */
.contact-form{display:grid;gap:19px;margin-top:26px}
.contact-form-field{display:grid;gap:7px}
.contact-form-field label{font-size:14px;font-weight:500;color:#e4ebec}
.contact-required,.contact-optional{margin-left:7px;font-size:11px;font-weight:400}
.contact-required{color:var(--teal-light)}
.contact-optional{color:#a9b9bc}
.contact-form-field input,.contact-form-field select,.contact-form-field textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid #ffffff35;border-radius:7px;background:#171e20;color:var(--text);font:inherit;font-size:16px;line-height:1.6}
.contact-form-field textarea{min-height:155px;resize:vertical}
.contact-form-field input::placeholder,.contact-form-field textarea::placeholder{color:#9caaad}
.contact-form-field input:focus,.contact-form-field select:focus,.contact-form-field textarea:focus{border-color:var(--teal-light);outline:2px solid #73d8d555;outline-offset:2px}
.contact-form-note{color:#b5c3c5;font-size:13px;line-height:1.8}
.contact-form .button{width:fit-content;min-width:230px}
.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-secondary .contact-details{display:grid;grid-template-columns:1fr;gap:29px}
.contact-secondary .contact-icon{font-size:12px;font-weight:600;min-width:25px}
@media(max-width:600px){.contact-form{gap:17px}.contact-form .button{width:100%}}
