/* Form controls use an inset focus treatment; menus live outside animated layouts. */
.contact-form{display:grid;gap:22px;align-content:start;border-color:#dce1d5;border-radius:14px;box-shadow:0 6px 24px #20282304}
.contact-form .form-row{align-items:start;gap:22px 20px;min-width:0}
.contact-form .field{gap:8px;margin:0;min-width:0}
.contact-form .field label{font-size:15px;line-height:1.5;color:#30392e;font-weight:500}
.contact-form .field input,.contact-form .field select,.contact-form .field textarea,.select-trigger{
  width:100%;min-width:0;min-height:50px;padding:12px 14px;border:1px solid #d7ddcf;border-radius:8px;background:#fafbf7;color:var(--ink);font:400 16px/1.5 'DM Sans',sans-serif;
  transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.contact-form .field input::placeholder,.contact-form .field textarea::placeholder{color:#737d6d;opacity:1}
.contact-form .field textarea{height:160px;min-height:144px;max-height:320px;overflow-y:auto;resize:vertical}
.contact-form .field input:hover,.contact-form .field select:hover,.contact-form .field textarea:hover,.select-trigger:hover{border-color:#aebaa2}
.contact-form .field input:focus,.contact-form .field input:focus-visible,.contact-form .field select:focus,.contact-form .field select:focus-visible,.contact-form .field textarea:focus,.contact-form .field textarea:focus-visible,.select-trigger:focus,.select-trigger:focus-visible{
  outline:0;outline-offset:0;border-color:#b95636;background:#fff;box-shadow:0 0 0 3px #ed593815;
}
.contact-form>.button{justify-self:start;min-height:48px}
.contact-form .form-footnote,.contact-form .notice{margin:0}
.select-control{position:relative;min-width:0}
.select-control select[hidden]{display:none}
.select-trigger{display:flex;align-items:center;justify-content:space-between;text-align:left;gap:12px;cursor:pointer}
.select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.select-chevron{display:flex;flex:none;align-items:center;justify-content:center;width:20px;color:#66745d;transition:rotate .18s ease}
.select-trigger[aria-expanded=true] .select-chevron{rotate:180deg}
.select-trigger:disabled{cursor:not-allowed;opacity:.6}
.form-dropdown{position:fixed;z-index:1000;box-sizing:border-box;isolation:isolate;overflow-y:auto;overscroll-behavior:contain;max-height:304px;padding:6px;border:1px solid #d8dfd0;border-radius:11px;background:#fff;box-shadow:0 12px 36px #2028231c,0 2px 6px #20282308;scrollbar-width:thin;scrollbar-color:#bec8b4 transparent}
.form-dropdown[hidden]{display:none}
.form-dropdown::-webkit-scrollbar{width:8px}.form-dropdown::-webkit-scrollbar-thumb{background:#bec8b4;border:2px solid white;border-radius:10px}
.select-option{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;min-height:44px;padding:10px 12px;border-radius:6px;color:#35412f;font:400 15px/1.5 'DM Sans',sans-serif;cursor:pointer}
.select-option+.select-option{margin-top:2px}
.select-option .option-check{display:flex;flex-shrink:0;visibility:hidden;color:#506c3f}
.select-option[aria-selected=true]{color:#2d4524;font-weight:500;background:#f0f4e9}
.select-option[aria-selected=true] .option-check{visibility:visible}
.select-option.is-active{background:#e9efdf;box-shadow:inset 0 0 0 1px #d6e0cb}
.select-option[aria-disabled=true]{opacity:.5;cursor:not-allowed}
@media(max-width:1000px){.contact-form .form-row{grid-template-columns:1fr}}
@media(max-width:760px){.contact-form{padding:24px 20px;gap:22px}.contact-form .field label{font-size:15px}.form-dropdown{max-height:280px}.select-option{min-height:46px;padding:11px 12px}.contact-form .form-footnote{font-size:14px;line-height:1.7}}
@media(prefers-reduced-motion:reduce){.select-trigger,.select-chevron{transition:none}}
