/* ===================================================
   NAM CONTACT FORM — Styles
   =================================================== */
.nam-form-wrap { width:100%; }
.nam-form-title { font-size:1.4rem; margin-bottom:.3rem; }
.nam-form-sub   { color:#8C7D5C; margin-bottom:1.5rem; font-size:.9rem; }

.nam-form { display:flex; flex-direction:column; gap:1.1rem; }
.nam-form-row { display:grid; grid-template-columns:1fr 1fr; gap:1.1rem; }
@media(max-width:600px){ .nam-form-row{ grid-template-columns:1fr; } }

.nam-form-group { display:flex; flex-direction:column; gap:.38rem; }
.nam-form-group label {
  font-family:'Cinzel',serif;
  font-size:.65rem; letter-spacing:.18em; text-transform:uppercase;
  color:#4A4030; font-weight:600;
}
.req { color:#C9A84C; }

/* Input wrapper with icon */
.nam-input-wrap {
  position:relative;
}
.nam-input-wrap > i:first-child {
  position:absolute; left:.95rem; top:50%; transform:translateY(-50%);
  color:#C9A84C; font-size:.88rem; pointer-events:none; z-index:1;
}
.nam-input-wrap textarea ~ i:first-child,
.nam-input-wrap > i.fa-pen-to-square { top:1rem; transform:none; }

.nam-input-wrap input,
.nam-input-wrap select,
.nam-input-wrap textarea {
  width:100%; padding:.85rem .9rem .85rem 2.7rem;
  background:#FFFFFF; border:1.5px solid rgba(201,168,76,.25);
  border-radius:8px; font-family:'Lato',sans-serif; font-size:.92rem;
  color:#1A1710; outline:none; transition:all .3s ease;
  appearance:none; -webkit-appearance:none;
}
.nam-input-wrap textarea { padding-top:.9rem; resize:vertical; min-height:110px; }
.nam-input-wrap input::placeholder,
.nam-input-wrap textarea::placeholder { color:#B8A992; }

.nam-input-wrap input:focus,
.nam-input-wrap select:focus,
.nam-input-wrap textarea:focus {
  border-color:#C9A84C;
  box-shadow:0 0 0 3px rgba(201,168,76,.12);
}
.nam-input-wrap input.error,
.nam-input-wrap select.error,
.nam-input-wrap textarea.error {
  border-color:#e05c5c;
  box-shadow:0 0 0 3px rgba(224,92,92,.10);
}

/* Select chevron */
.nam-select-wrap .nam-chevron {
  position:absolute; right:.9rem; top:50%; transform:translateY(-50%);
  color:#C9A84C; font-size:.7rem; pointer-events:none;
}
.nam-select-wrap select { padding-right:2.4rem; cursor:pointer; }

/* Error message */
.nam-error { font-size:.75rem; color:#e05c5c; min-height:1rem; display:block; }

/* Submit button */
.nam-submit {
  display:inline-flex; align-items:center; justify-content:center; gap:.6rem;
  padding:1rem 2.5rem;
  background:linear-gradient(135deg, #8B6914 0%, #C9A84C 40%, #E8C96B 60%, #C9A84C 80%, #8B6914 100%);
  color:#1A1710; border:none; border-radius:8px; cursor:pointer;
  font-family:'Cinzel',serif; font-size:.75rem; letter-spacing:.22em; text-transform:uppercase;
  font-weight:600; transition:all .3s ease; width:100%; margin-top:.4rem;
  box-shadow:0 4px 18px rgba(201,168,76,.3);
}
.nam-submit:hover { transform:translateY(-2px); box-shadow:0 8px 28px rgba(201,168,76,.42); }
.nam-submit:disabled { opacity:.7; cursor:not-allowed; transform:none; }
.nam-submit .fa-spinner { animation:nam-spin 1s linear infinite; }
@keyframes nam-spin { from{transform:rotate(0)} to{transform:rotate(360deg)} }

/* Notice box */
.nam-form-notice {
  padding:1rem 1.2rem; border-radius:8px; font-size:.9rem; line-height:1.6;
  display:flex; align-items:flex-start; gap:.7rem; margin-top:.5rem;
}
.nam-form-notice.success {
  background:rgba(37,211,102,.1); border:1px solid rgba(37,211,102,.3); color:#155724;
}
.nam-form-notice.error {
  background:rgba(224,92,92,.08); border:1px solid rgba(224,92,92,.25); color:#721c24;
}
.nam-form-notice i { margin-top:.1rem; flex-shrink:0; }
