.hn-review-step {
	display: none;
}

.hn-review-step.is-active {
	display: block;
}

.hn-review-form-wrap {
	max-width: 720px;
	margin: 0 auto;
	padding: 20px;
}

.hn-review-form-wrap h2,
.hn-review-form-wrap h3,
.hn-review-form-wrap h4 {
	margin-bottom: 15px;
}

.hn-review-form-wrap input[type="text"],
.hn-review-form-wrap input[type="email"],
.hn-review-form-wrap select,
.hn-review-form-wrap textarea {
	width: 100%;
	padding: 12px;
	border: 1px solid #ddd;
	border-radius: 8px;
	box-sizing: border-box;
	margin-bottom: 20px;
	font-size: 16px;
}

.hn-review-form-wrap textarea {
	resize: vertical;
	min-height: 160px;
}

.hn-review-form-wrap label {
	display: block;
	padding: 14px;
	border: 1px solid #ddd;
	border-radius: 10px;
	margin-bottom: 12px;
	cursor: pointer;
}

.hn-review-next,
.hn-review-submit {
	margin-top: 30px;
}

.hn-review-next button,
.hn-review-submit button {
	width: 100%;
	padding: 16px;
	border: none;
	border-radius: 12px;
	background: #111;
	color: #fff;
	font-size: 16px;
	cursor: pointer;
}

.hn-review-genre-input {
	display: none;
	padding: 20px;
	border: 1px solid #eee;
	border-radius: 14px;
	margin-bottom: 25px;
	background: #fff;
}

.hn-review-stars {
	display: flex;
	gap: 8px;
	margin-bottom: 20px;
}

.hn-review-stars button {
	border: none;
	background: none;
	font-size: 32px;
	color: #ccc;
	cursor: pointer;
	padding: 0;
	line-height: 1;
}

.hn-review-stars button.is-active {
	color: #f5b301;
}

@media screen and (max-width: 767px) {

	.hn-review-form-wrap {
		padding: 15px;
	}

	.hn-review-stars button {
		font-size: 36px;
	}

	.hn-review-next button,
	.hn-review-submit button {
		font-size: 17px;
		padding: 18px;
	}

}