/* Aluclamec · formulário de contato e orçamento (campos em areia, foco incandescente) */
.fm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
.fm__c{display:grid;gap:7px;min-width:0}
.fm__c--w{grid-column:1/-1}
.fm label,.fm__lb{font-weight:700;font-size:14.5px;color:#f1ebe3}
.fm label small,.fm__lb small{font-weight:400;font-family:var(--fm);font-size:11.5px;color:#a9a196;margin-left:6px}
.fm input:not([type=file]):not([type=checkbox]),.fm select,.fm textarea{width:100%;min-height:52px;padding:13px 15px;border:0;border-radius:9px;background:#0b0a09;box-shadow:inset 0 0 0 1px rgba(255,190,120,.22);font:500 16px/1.4 var(--ft);color:#fff;outline:0;transition:box-shadow .2s}
.fm textarea{min-height:140px;resize:vertical}
.fm select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M1 3l4 4 4-4' fill='none' stroke='%23ffb444' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px;padding-right:42px}
.fm select option{color:#111;background:#fff}
.fm input:focus,.fm select:focus,.fm textarea:focus{box-shadow:inset 0 0 0 1.5px var(--m2),0 0 0 4px rgba(255,125,26,.16)}
.fm input::placeholder,.fm textarea::placeholder{color:#7d766d}
.fm input:user-invalid,.fm textarea:user-invalid{box-shadow:inset 0 0 0 1.5px #ff5a3c}
.fm__arq{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;padding:14px 16px;border-radius:9px;background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1.5px rgba(255,190,120,.3);cursor:pointer;transition:background .25s,box-shadow .25s}
.fm__arq:hover,.fm__arq:focus-within{background:rgba(255,140,30,.07);box-shadow:inset 0 0 0 1.5px var(--m3)}
.fm__arq.tem{box-shadow:inset 0 0 0 1.5px var(--m2)}
.fm__arq input{position:absolute;inset:0;opacity:0;cursor:pointer}
.fm__arq svg{width:44px;height:44px;padding:10px;border-radius:9px;background:#ff6a1c;color:#1a0c04}
.fm__arq>span{min-width:0}
.fm__arq b{display:block;font-weight:600;font-size:15px;line-height:1.35;color:#fff;overflow-wrap:anywhere}
.fm__arq small{display:block;font-size:12.5px;color:#a9a196;margin-top:2px}
.fm__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.fm__fim{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;justify-content:space-between;margin-top:6px}
.fm__fim p{font-size:13.5px;color:#a9a196;max-width:46ch}
.fm button.ld{opacity:.7;pointer-events:none}
.fm__st{grid-column:1/-1;display:none;gap:12px;padding:16px 18px;border-radius:10px;font-size:15px;line-height:1.5}
.fm__st.ok,.fm__st.er{display:grid}
.fm__st.ok{background:rgba(37,211,102,.1);box-shadow:inset 0 0 0 1px rgba(37,211,102,.45);color:#d9f7e4}
.fm__st.er{background:rgba(255,140,30,.08);box-shadow:inset 0 0 0 1px rgba(255,170,80,.5);color:#ffe2c4}
.fm__st .btn{justify-self:start;min-height:46px}
@media (max-width:899px){
  .fm{grid-template-columns:minmax(0,1fr)}
  .fm__fim{flex-direction:column;align-items:center;text-align:center}
  .fm__fim .btn{width:min(380px,100%)}
  .fm__st .btn{justify-self:center}
}
