/* GGI custom form styles */
.ggi-form { display:flex; flex-direction:column; gap:1rem; max-width:480px; }
.ggi-form input,
.ggi-form textarea,
.ggi-form select {
  font-family:'Inter',sans-serif; font-size:0.85rem; padding:12px 14px;
  border:1px solid #d1d6dc; border-radius:6px; outline:none; width:100%; box-sizing:border-box;
  background:#fff; color:#333;
}
.ggi-form input:focus,
.ggi-form textarea:focus,
.ggi-form select:focus { border-color:#00deaf; box-shadow:0 0 0 3px rgba(0,222,175,0.15); }
.ggi-form textarea { min-height:120px; resize:vertical; }
.ggi-form button[type="submit"] {
  background:#00deaf; color:#fff; font-family:'Inter',sans-serif; font-size:0.8rem;
  font-weight:600; letter-spacing:1px; text-transform:uppercase; padding:14px 32px;
  border:none; border-radius:6px; cursor:pointer; align-self:flex-start;
  transition: background 0.2s;
}
.ggi-form button[type="submit"]:hover { background:#00c59e; }
.ggi-form button[type="submit"]:disabled { background:#ccc; cursor:not-allowed; }
.form-message { padding:12px 16px; border-radius:6px; font-size:0.85rem; display:none; }
.form-message.success { background:#e8f8f0; color:#0a7c42; display:block; }
.form-message.error { background:#fde8e8; color:#c0392b; display:block; }
.hp-field { position:absolute; left:-9999px; }
