/* Стили для заглушек формы заказа */
.order-form-box { position: relative; }

/* Общие стили для оверлеев */
.order-form-success-overlay, .order-form-error-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.97); display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: opacity 0.4s ease, visibility 0.4s ease; z-index: 20; }

.order-form-success-overlay.active, .order-form-error-overlay.active { opacity: 1; visibility: visible; }

/* Стили для блока успешной отправки */
.order-success-content { max-width: 90%; width: 500px; text-align: center; padding: 40px 30px; background-color: #fff; border-radius: 10px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); transform: translateY(20px); transition: transform 0.5s ease; animation: slideUp 0.5s forwards; }

.order-success-icon { margin-bottom: 20px; display: inline-block; }

.success-icon { height: 100px; display: block; margin: 0 auto; }

.order-success-title { font-size: 26px; font-weight: 600; margin-bottom: 15px; color: #333; }

.order-success-message { font-size: 16px; line-height: 1.6; color: #666; margin-bottom: 25px; }

.order-success-button { background-color: var(--accent-color); color: #fff; padding: 12px 30px; border-radius: 5px; border: none; font-size: 16px; font-weight: 500; cursor: pointer; transition: all 0.3s ease; display: inline-block; text-decoration: none; }

.order-success-button:hover { background-color: var(--accent-color-hover); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(var(--accent-color-rgb), 0.3); color: #fff; text-decoration: none; }

/* Стили для блока с ошибками */
.order-error-content { max-width: 90%; width: 550px; padding: 40px 30px; background-color: #fff; border-radius: 10px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); animation: slideUp 0.5s forwards; }

.order-error-icon { margin-bottom: 15px; text-align: center; }

.order-error-icon i { font-size: 50px; color: #e74c3c; }

.order-error-title { font-size: 22px; font-weight: 600; margin-bottom: 15px; color: #e74c3c; text-align: center; }

.order-error-message { margin-bottom: 20px; }

.order-error-message p { font-size: 16px; line-height: 1.5; color: #666; margin-bottom: 10px; }

.error-fields-list { padding-left: 15px; margin-bottom: 5px; }

.error-step-title { font-weight: 600; color: #333; margin-top: 10px; }

.error-fields-sublist { padding-left: 20px; margin-bottom: 10px; }

.error-fields-sublist li { color: #e74c3c; margin-bottom: 3px; font-size: 14px; }

.order-error-button { background-color: #e74c3c; color: #fff; padding: 12px 30px; border-radius: 5px; border: none; font-size: 16px; font-weight: 500; cursor: pointer; transition: all 0.3s ease; display: block; margin: 0 auto; }

.order-error-button:hover { background-color: #c0392b; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(231, 76, 60, 0.3); }

/* Скрываем стандартное сообщение об ошибках CF7 */
.wpcf7-response-output { display: none !important; }

/* Анимации */
@keyframes slideUp {
	0% {
		opacity: 0;
		transform: translateY(20px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Адаптивные стили */
@media (max-width: 768px) {
	.order-success-content, .order-error-content { padding: 30px 20px; }
	.order-success-title, .order-error-title { font-size: 20px; }
	.order-success-message, .order-error-message p { font-size: 14px; }
	.success-icon { height: 80px; }
}