/* Contact page. Matches the dark First Motion theme. */
.fm-contact{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:start}
.fm-contact-form{background:#0d1b2e;border:1px solid #304763;border-radius:10px;padding:34px}
.fm-contact-form[hidden],.fm-contact-thanks[hidden],.fm-contact-error[hidden]{display:none}
.fm-field{display:grid;gap:7px;margin:0 0 20px}
.fm-field label{font-size:14px;font-weight:700;color:#f5f7fb;letter-spacing:.01em}
.fm-field .fm-opt{font-weight:400;color:#9fb3c8}
.fm-field input,.fm-field textarea{width:100%;font:inherit;font-size:16px;color:#f5f7fb;background:#14263c;border:1px solid #3a5472;border-radius:8px;padding:13px 14px;box-sizing:border-box}
.fm-field textarea{min-height:140px;resize:vertical;line-height:1.5}
.fm-field input:focus,.fm-field textarea:focus{outline:2px solid #edb560;outline-offset:1px;border-color:#edb560}
.fm-field input::placeholder,.fm-field textarea::placeholder{color:#7f95ac}
.fm-field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fm-hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.fm-contact-form .button{border:0;cursor:pointer;font:inherit;font-weight:800;min-height:48px}
.fm-contact-form .button[disabled]{opacity:.65;cursor:wait}
.fm-contact-thanks,.fm-contact-error{border-radius:10px;padding:26px 28px;outline:none}
.fm-contact-thanks{background:#0d1b2e;border:1px solid #edb560}
.fm-contact-thanks h2{margin-top:0}
.fm-contact-error{background:#2a1a1a;border:1px solid #c9634f;color:#f6dcd6;margin:0 0 22px;padding:18px 20px}
.fm-contact-error p{margin:0}
.fm-contact-error a{color:#f8c883}
.fm-contact-aside{background:transparent;border-left:2px solid #edb560;padding:4px 0 4px 24px}
.fm-contact-aside h2{font-size:1.5rem!important;margin:0 0 12px!important}
.fm-contact-aside p{color:#c5d2df;line-height:1.65;margin:0 0 18px}
.fm-contact-aside a{color:#f8c883}
.fm-privacy-note{font-size:13px;line-height:1.55;color:#9fb3c8;margin:16px 0 0}
#turnstile-slot:empty{display:none}
#turnstile-slot{margin:0 0 20px}
@media(max-width:860px){.fm-contact{grid-template-columns:1fr;gap:32px}.fm-contact-aside{padding-left:18px}}
@media(max-width:560px){.fm-contact-form{padding:22px 18px}.fm-field-row{grid-template-columns:1fr;gap:0}}
