:root{--fr-accent:#C51B21;--fr-ring:rgba(197,27,33,.15)}
.fr-form-wrap{max-width:720px;margin:0 auto}
.fr-form{position:relative;display:flex;flex-direction:column;gap:18px}
.fr-form .fr-row{display:flex;gap:18px;flex-wrap:wrap}
.fr-form .fr-row .fr-field{flex:1 1 220px}
.fr-form .fr-field{display:flex;flex-direction:column;gap:7px;text-align:left}
.fr-form label{font-size:.92rem;font-weight:600;color:#1f2937;margin:0}
.fr-form .fr-req{color:var(--fr-accent)}
.fr-form .fr-optional{color:#9ca3af;font-weight:400;font-size:.85em}
.fr-form input,.fr-form textarea{width:100%;padding:13px 15px;border:1px solid #d1d5db;border-radius:8px;font:inherit;font-size:1rem;line-height:1.4;color:#111827;background:#fff;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}
.fr-form input:focus,.fr-form textarea:focus{outline:none;border-color:var(--fr-accent);box-shadow:0 0 0 3px var(--fr-ring)}
.fr-form textarea{resize:vertical;min-height:130px}
.fr-form .fr-submit{align-self:flex-start;background:var(--fr-accent);color:#fff;border:0;border-radius:8px;padding:15px 36px;font:inherit;font-weight:700;font-size:1rem;cursor:pointer;transition:filter .15s,transform .15s,opacity .15s}
.fr-form .fr-submit:hover{filter:brightness(1.07);transform:translateY(-1px)}
.fr-form .fr-submit:disabled{opacity:.6;cursor:default;transform:none;filter:none}
.fr-hp{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.form-relay-message{margin:2px 0 0;font-weight:600;font-size:.96rem}
.form-relay-message.is-ok{padding:13px 16px;border-radius:8px;background:#e6f4ea;color:#1e7e34}
.form-relay-message.is-err{padding:13px 16px;border-radius:8px;background:#fdecea;color:#b02a37}
@media(max-width:520px){.fr-form .fr-submit{width:100%;text-align:center}}