.kj-contact-form { max-width: 640px; }
.kj-contact-form p { margin: 0 0 16px; }
.kj-contact-form label { display: block; font-weight: 600; font-size: 14px; margin-bottom: 6px; color: #101218; }
.kj-contact-form label span { color: #4175fc; }
.kj-contact-form input[type="text"],
.kj-contact-form input[type="tel"],
.kj-contact-form textarea {
	width: 100%; box-sizing: border-box; padding: 12px 14px;
	border: 1px solid #dde2ec; border-radius: 12px; background: #fff;
	font: inherit; color: #101218;
	box-shadow: 0 1px 2px rgba(16, 18, 36, .04);
	transition: border-color .2s ease, box-shadow .2s ease;
}
.kj-contact-form input:focus,
.kj-contact-form textarea:focus {
	outline: none; border-color: rgba(65, 117, 252, .7);
	box-shadow: 0 0 0 4px rgba(65, 117, 252, .12);
}
.kj-contact-form textarea { resize: vertical; min-height: 150px; }
.kj-contact-form button {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 13px 30px; border: 0; border-radius: 999px;
	background: linear-gradient(135deg, #4175fc, #084af3); color: #fff;
	font: inherit; font-weight: 600; letter-spacing: .03em; text-transform: none; cursor: pointer;
	box-shadow: 0 10px 24px -8px rgba(65, 117, 252, .55);
	transition: transform .25s cubic-bezier(.2, .8, .2, 1), box-shadow .25s ease;
}
.kj-contact-form button:hover { transform: translateY(-2px); box-shadow: 0 16px 30px -10px rgba(65, 117, 252, .65); background: linear-gradient(135deg, #4175fc, #084af3); color: #fff; }
.kj-hp { position: absolute !important; left: -9999px !important; height: 1px; overflow: hidden; }
.kj-form-notice { padding: 14px 16px; border-radius: 12px; margin-bottom: 18px; font-weight: 600; }
.kj-form-ok { background: #e9f7ee; color: #1d5b2a; border: 1px solid #c6ebd2; }
.kj-form-err { background: #fdeeee; color: #8a1f1f; border: 1px solid #f5cdcd; }
