.ebc-checkout {
  --ebc-checkout-max-width: 1120px;
  --ebc-checkout-gap: 3rem;
  --ebc-checkout-details-width: 520px;
  --ebc-checkout-summary-width: 420px;
  --ebc-checkout-payment-margin-top: 2rem;

  display: block;
  width: 100%;
  max-width: var(--ebc-checkout-max-width);
  margin-inline: auto;
}

.ebc-checkout__columns {
  display: grid;
  grid-template-columns:
    minmax(0, var(--ebc-checkout-details-width))
    minmax(320px, var(--ebc-checkout-summary-width));
  gap: var(--ebc-checkout-gap);
  align-items: start;
  justify-content: space-between;
}

.ebc-checkout__details,
.ebc-checkout__summary,
.ebc-checkout__payment {
  min-width: 0;
}

.ebc-checkout__details .col2-set {
  display: block;
  width: 100%;
}

.ebc-checkout__details .col2-set::before,
.ebc-checkout__details .col2-set::after {
  content: none;
}

.ebc-checkout__details .col2-set .col-1,
.ebc-checkout__details .col2-set .col-2 {
  float: none;
  width: 100%;
}

.ebc-checkout__details .col2-set .col-2,
.ebc-checkout__details .woocommerce-additional-fields {
  display: none;
}

.ebc-checkout__summary {
  position: sticky;
  top: 1.5rem;
  width: 100%;
}

.ebc-checkout__coupons {
  margin-bottom: 1.5rem;
}

.ebc-checkout__coupons .woocommerce-form-coupon-toggle {
  display: none;
}

.ebc-checkout__coupons .woocommerce-form-coupon-toggle .woocommerce-info,
.ebc-checkout__coupons .woocommerce-form-coupon-toggle .woocommerce-message,
.ebc-checkout__coupons .woocommerce-form-coupon-toggle .woocommerce-error {
  margin: 0;
}

.ebc-checkout .ebc-checkout__coupons form.checkout_coupon.woocommerce-form-coupon {
  display: block !important;
}

.ebc-checkout__coupons .checkout_coupon,
.ebc-checkout__coupons .woocommerce-form-coupon {
  margin: 0 0 1.25rem;
  width: 100%;
  box-sizing: border-box;
}

.ebc-checkout__coupons .checkout_coupon .form-row,
.ebc-checkout__coupons .woocommerce-form-coupon .form-row {
  float: none;
  width: 100%;
  margin: 0 0 0.75rem;
}

.ebc-checkout__coupons .checkout_coupon .form-row-last,
.ebc-checkout__coupons .woocommerce-form-coupon .form-row-last {
  margin-bottom: 0;
}

.ebc-checkout__summary #order_review_heading {
  margin-top: 0;
}

.ebc-checkout__summary .woocommerce-checkout-review-order-table {
  width: 100%;
}

.ebc-checkout__summary .woocommerce-checkout-review-order-table .tax-rate th,
.ebc-checkout__summary .woocommerce-checkout-review-order-table .tax-rate td,
.ebc-checkout__summary .woocommerce-checkout-review-order-table .order-total th,
.ebc-checkout__summary .woocommerce-checkout-review-order-table .order-total td {
  vertical-align: top;
}

.ebc-checkout__payment {
  width: 100%;
  margin-top: var(--ebc-checkout-payment-margin-top);
  clear: both;
}

.ebc-checkout__payment-title {
  margin-top: 0;
}

.ebc-checkout__payment #payment,
.ebc-checkout__payment .woocommerce-checkout-payment {
  margin: 0;
  width: 100%;
  box-sizing: border-box;
}

.ebc-checkout__payment #payment ul.payment_methods,
.ebc-checkout__payment .woocommerce-checkout-payment ul.payment_methods {
  box-sizing: border-box;
}

.ebc-checkout__payment #payment div.form-row,
.ebc-checkout__payment .woocommerce-checkout-payment div.form-row {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.ebc-checkout__payment #place_order {
  float: none;
  margin-left: auto;
}

.woocommerce-page .ebc-checkout .ebc-checkout__coupons form.checkout_coupon button.button,
.woocommerce-page .ebc-checkout .ebc-checkout__coupons form.checkout_coupon button[name="apply_coupon"],
.ebc-checkout .ebc-checkout__coupons form.checkout_coupon button.button,
.ebc-checkout .ebc-checkout__coupons form.checkout_coupon button[name="apply_coupon"],
.ebc-checkout .woocommerce-checkout-payment .button,
.ebc-checkout .woocommerce-checkout-payment button,
.ebc-checkout .woocommerce-checkout-payment input[type="submit"],
.ebc-checkout #place_order,
.ebc-checkout button#place_order,
.ebc-checkout .button#place_order,
.ebc-checkout .et_pb_button#place_order {
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
}

@media (max-width: 900px) {
  .ebc-checkout {
    max-width: 100%;
  }

  .ebc-checkout__columns {
    display: block;
  }

  .ebc-checkout__summary {
    position: static;
    margin-top: 1.5rem;
  }
  .ebc-checkout__payment #payment div.form-row,
  .ebc-checkout__payment .woocommerce-checkout-payment div.form-row {
    display: block;
  }

  .ebc-checkout__payment #place_order {
    width: 100%;
    margin-left: 0;
  }
}
