main {
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  flex-direction: column;
  row-gap: 30px;
}

.woocommerce-checkout-page {
  margin: 68px 0;
}

#billing_email,
#billing_first_name {
  max-width: 328px;
  padding: 20px 25px;
  font-size: 18px;
  border: 2px solid #ddd;
  border-radius: var(--course-radius-md);
  font-family: inherit;
  transition: all 0.3s ease;
  background: white;
}

#billing_email:focus,
#billing_first_name:focus {
  outline: none;
  border-color: var(--course-color-primary);
  box-shadow: 0 0 0 3px rgba(51, 51, 51, 0.1);
}

#payment {
  background: rgba(255, 255, 255, 0);
}

#place_order {
  display: block;
  border-radius: var(--course-radius-lg);
  max-width: 600px;
  padding: 20px 60px;
  font-size: 26px;
  margin: 0 auto;
  background-color: #4e77a5;
  transition-duration: 0.3s;
}

#place_order:hover {
  opacity: 0.9;
}

#place_order:focus {
  background-color: #2d5584;
}

.course-input::placeholder {
  color: #999;
}

.course-error-message {
  color: #e74c3c;
  font-size: 14px;
  margin-top: 8px;
  text-align: left;
}

/* Адаптив формы */
@media (max-width: 768px) {
  .course-input {
    padding: 18px 20px;
    font-size: 16px;
  }
}

@media (max-width: 480px) {
  .course-input {
    padding: 16px 18px;
    font-size: 15px;
  }

  .course-email-form {
    max-width: 100%;
  }
}
/* Стили для валидации формы */
.course-input.course-input--error {
  border-color: #e74c3c;
  background-color: rgba(231, 76, 60, 0.05);
}

.course-input.course-input--success {
  border-color: #2ecc71;
}

.course-error-message {
  color: #e74c3c;
  font-size: 14px;
  margin-top: 8px;
  text-align: left;
  padding-left: 5px;
  display: none;
  animation: fadeIn 0.3s ease;
}

.course-success-message {
  color: #2ecc71;
  font-size: 14px;
  margin-top: 8px;
  text-align: left;
  padding-left: 5px;
  display: none;
  animation: fadeIn 0.3s ease;
}