.kgr-form { max-width: 1010px; margin: 0 auto; font-size: 15px; color: #333; }
.kgr-form * { box-sizing: border-box; }
.kgr-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 30px; }
.kgr-field { margin-bottom: 22px; }
.kgr-field--half { max-width: calc(50% - 15px); }
.kgr-field label { display: block; margin-bottom: 8px; }
.kgr-req { color: #e53935; }
.kgr-form input[type="text"], .kgr-form input[type="email"], .kgr-form input[type="tel"],
.kgr-form input[type="number"], .kgr-form input[type="date"], .kgr-form select, .kgr-form textarea {
  width: 100%; padding: 10px 14px; border: 1px solid #d5d8dc; border-radius: 6px;
  background: #fff; font: inherit; color: inherit; min-height: 40px;
}
.kgr-form input:focus, .kgr-form select:focus, .kgr-form textarea:focus { outline: none; border-color: #1a7efb; box-shadow: 0 0 0 2px rgba(26,126,251,.15); }
.kgr-form select:disabled { background: #f5f6f7; color: #999; }
.kgr-form small { display: block; margin-top: 6px; color: #777; font-size: 13px; }
.kgr-box { border: 1px dashed #d5d8dc; border-radius: 6px; padding: 24px 24px 2px; margin-bottom: 22px; }
.kgr-check label { display: flex; gap: 8px; align-items: flex-start; }
.kgr-check input { margin-top: 4px; }
.kgr-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.cf-turnstile { margin-bottom: 18px; }
.kgr-btn { background: #1a7efb; color: #fff; border: 0; border-radius: 6px; padding: 12px 26px; font: inherit; cursor: pointer; }
.kgr-btn:disabled { opacity: .6; cursor: wait; }
.kgr-msg { margin-top: 16px; }
.kgr-msg:empty { display: none; }
.kgr-msg--ok { padding: 12px 16px; border-radius: 6px; background: #e8f5e9; color: #1b5e20; }
.kgr-msg--error { padding: 12px 16px; border-radius: 6px; background: #fdecea; color: #b71c1c; }
@media (max-width: 640px) {
  .kgr-row { grid-template-columns: 1fr; }
  .kgr-field--half { max-width: none; }
  .kgr-box { padding: 16px 16px 2px; }
}
