.wc-loading-overlay-full {
  display: none;
  height: 100vh;
  width: 100vw;
  left: 0;
  top: 0;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: 1100;
}
.wc-loading-overlay-full > .d-flex {
  height: 100%;
}

.wc-loading-overlay {
  opacity: 0.5;
  pointer-events: none;
  user-select: none;
  position: relative;
}
.wc-loading-overlay::before {
  content: "";
  position: absolute;
  top: calc(50% - 24px);
  left: calc(50% - 24px);
  width: 48px;
  height: 48px;
  border: 5px solid rgba(0, 0, 0, 0.5);
  border-bottom-color: transparent;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
  z-index: 10;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.wc-order-nav ul {
  list-style-type: none;
  border-bottom: 1px solid #e0e0e0;
}
.wc-order-nav ul li {
  flex-grow: 1;
  text-align: center;
  margin-bottom: -1px;
  padding-bottom: 7px;
  hyphens: auto;
}
@media (max-width: 575.98px) {
  .wc-order-nav ul li {
    display: none;
  }
  .wc-order-nav ul li:last-child {
    flex: 0 0 50%;
  }
}
.wc-order-nav .wc-selected {
  font-weight: 500;
  color: #262626;
  border-bottom: 3px solid #CC0000;
  display: block;
}
@media (max-width: 575.98px) {
  .wc-order-nav .wc-selected + li {
    display: block;
  }
}

.wc-course-box-container {
  background-color: #ffffff;
}
.wc-course-box-container img, .wc-course-box-container .wc-fallback-image {
  width: 100%;
  height: 160px;
  object-fit: cover;
}

.wc-course-box-grid {
  min-height: 200px;
  display: grid;
  grid-template: "heading        language" "presence-info  presence-info" "description    description" 1fr "price          price" "booking-status booking-status"/1fr min-content;
}
.wc-course-box-grid .wc-heading {
  grid-area: heading;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 18px;
}
.wc-course-box-grid .wc-description {
  grid-area: description;
  overflow: hidden;
}
.wc-course-box-grid .wc-icon-flag {
  grid-area: language;
  margin-top: 0;
}
.wc-course-box-grid .wc-icon-flag:before {
  float: right;
}
.wc-course-box-grid .wc-price-container {
  grid-area: price;
}
.wc-course-box-grid .wc-booking-status {
  grid-area: booking-status;
}
.wc-course-box-grid .wc-presence-info {
  grid-area: presence-info;
  --bs-columns: 1;
  --bs-gap: 4px 8px;
}
.wc-course-box-grid .wc-presence-info .material-icons {
  font-size: 20px;
}
.wc-course-box-grid .wc-trainer-link > .material-icons {
  margin-left: 4px;
}

.wc-content-container {
  background-color: #ffffff;
}

@media (min-width: 576px) {
  .wc-content-container {
    background-color: #f5f5f5;
  }

  #wc-order-content {
    background-color: #ffffff;
    height: min-content;
  }
}
#wc-order-form section.grid, #wc-order-form-payment section.grid {
  --bs-columns: 1;
  --bs-gap: 12px;
  margin-top: 12px;
  margin-bottom: 12px;
}
@media (min-width: 576px) {
  #wc-order-form section.grid, #wc-order-form-payment section.grid {
    margin-top: 40px;
    margin-bottom: 40px;
  }
  #wc-order-form section.grid:first-of-type, #wc-order-form-payment section.grid:first-of-type {
    margin-top: 24px;
  }
  #wc-order-form section.grid:last-of-type, #wc-order-form-payment section.grid:last-of-type {
    margin-bottom: 80px;
  }
  #wc-order-form section.grid .wc-order-first-name,
#wc-order-form section.grid .wc-order-surname, #wc-order-form-payment section.grid .wc-order-first-name,
#wc-order-form-payment section.grid .wc-order-surname {
    grid-row: 2;
  }
}
@media (min-width: 992px) {
  #wc-order-form section.grid, #wc-order-form-payment section.grid {
    column-gap: 24px;
  }
}
#wc-order-form#wc-order-form-payment input.form-check-input:checked + .form-check-label, #wc-order-form-payment#wc-order-form-payment input.form-check-input:checked + .form-check-label {
  font-weight: 500;
}

@media (min-width: 576px) {
  #wc-order-form section.grid {
    --bs-columns: 2;
  }
}
@media (min-width: 576px) {
  #wc-order-form-payment section.grid:only-of-type {
    --bs-columns: 3;
    margin-bottom: 24px;
  }
  #wc-order-form-payment section.grid:only-of-type .errors {
    grid-row: 2;
  }
}
#wc-order-form-confirm section.wc-confirmation-overview {
  column-count: 1;
  word-break: break-word;
  overflow-wrap: anywhere;
}
@media (min-width: 768px) {
  #wc-order-form-confirm section.wc-confirmation-overview {
    column-count: 2;
    column-gap: 24px;
  }
}
#wc-order-form-confirm section.wc-confirmation-overview > div {
  break-inside: avoid-column;
  margin-bottom: 16px;
}
#wc-order-form-confirm section.wc-confirmation-overview > div h3 {
  margin-bottom: 0;
  color: #262626;
}
#wc-order-form-confirm section.wc-confirmation-overview > div h3 + p {
  margin: 0;
}

.wc-order-error-button-container .btn {
  width: 100%;
}
@media (min-width: 576px) {
  .wc-order-error-button-container .btn {
    width: auto;
  }
}
