too */
#ufmContact .fluentform .ff-el-group,
#ufmContact .ff-el-group { margin-bottom: 20px; }
#ufmContact .fluentform label,
#ufmContact label {
display: inline-block;
font-size: 11.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
color: var(--ink); opacity: .75;
margin-bottom: 8px;
}
#ufmContact input[type="text"],
#ufmContact input[type="email"],
#ufmContact input[type="tel"],
#ufmContact input[type="number"],
#ufmContact textarea,
#ufmContact select,
#ufmContact .ff-el-form-control {
width: 100%;
background: #FFFFFF;
border: 1px solid rgba(17,17,17,.14);
border-radius: 3px;
padding: 13px 16px;
font-size: 14.5px;
font-family: inherit;
color: var(--ink);
transition: border-color .25s ease, box-shadow .25s ease;
}
#ufmContact textarea { min-height: 120px; resize: vertical; }
#ufmContact select {
appearance: none; -webkit-appearance: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%239C7C46' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 16px center;
padding-right: 40px;
cursor: pointer;
}
#ufmContact input:focus,
#ufmContact textarea:focus,
#ufmContact select:focus {
outline: none;
border-color: var(--gold);
box-shadow: 0 0 0 3px rgba(200,169,107,.16);
}
#ufmContact ::placeholder { color: rgba(17,17,17,.35); }
#ufmContact button[type="submit"],
#ufmContact .ff-btn-submit {
display: inline-flex; align-items: center; justify-content: center;
width: 100%;
padding: 16px 30px;
margin-top: 6px;
font-size: 13.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
color: var(--ink);
background: linear-gradient(135deg, var(--gold), var(--gold-deep));
border: none; border-radius: 2px; cursor: pointer;
transition: transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease;
}
#ufmContact button[type="submit"]:hover,
#ufmContact .ff-btn-submit:hover {
transform: translateY(-2px);
box-shadow: 0 14px 28px -10px rgba(200,169,107,.55);
}
/* toast */
.ufm-toast {
position: fixed; left: 50%; bottom: 32px; transform: translateX(-50%) translateY(20px);
background: var(--ink); color: var(--cream);
padding: 12px 22px; border-radius: 3px;
font-size: 13px; letter-spacing: .02em;
border: 1px solid rgba(200,169,107,.4);
opacity: 0; pointer-events: none;
transition: opacity .3s ease, transform .3s ease;
z-index: 999;
}
.ufm-toast.is-shown { opacity: 1; transform: translateX(-50%) translateY(0); }
/* ---------------- responsive ---------------- */
@media (max-width: 900px) {
#ufmContact .ufm-contact__grid { grid-template-columns: 1fr; }
.ufm-info { min-height: auto; padding: 48px 28px; }
.ufm-form-panel { padding: 44px 26px; }
.ufm-form-row { grid-template-columns: 1fr; gap: 0; }
}
@media (prefers-reduced-motion: reduce) {
#ufmContact [data-reveal] { opacity: 1; transform: none; transition: none; }
}