.drp-booking-main-container {
  text-align: left;
  position: relative;
  padding-inline: 1rem;
  padding-block: 3rem;
  min-height: 200px;
}
@media (min-width: 768px) {
  .drp-booking-main-container {
    padding: 3rem !important;
  }
}
.drp-booking-main-container:not(.drp-sm) {
  /* for view size larger sm show complete image */
}
.drp-booking-main-container:not(.drp-sm) .drp-course-list-item {
  height: auto;
}
.drp-booking-main-container:not(.drp-sm) .drp-course-list-item-image-container {
  width: 100%;
  padding-top: 65.5%;
  height: auto;
}
.drp-booking-main-container a, .drp-booking-main-container label:has(> input:where([type=radio], [type=checkbox])), .drp-booking-main-container select, .drp-booking-main-container button {
  cursor: pointer;
}
.drp-booking-main-container button {
  padding: 0.5em 1em;
}
.drp-booking-main-container *,
.drp-booking-main-container *::before,
.drp-booking-main-container *::after {
  box-sizing: border-box;
}
.drp-booking-main-container button:disabled {
  cursor: default;
}
.drp-booking-main-container a:has(img) {
  text-decoration-line: none !important;
  border-bottom: none !important;
}
.drp-booking-main-container img, .drp-booking-main-container video, .drp-booking-main-container svg {
  max-width: 100% !important;
  vertical-align: middle !important;
  margin: 0;
  height: auto;
  font-style: italic;
  shape-margin: 1em;
}

.drp-min-w-fit-content {
  min-width: fit-content !important;
}

.drp-spinner-container {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
}

.drp-sk-circle {
  width: 80px;
  height: 80px;
  position: fixed;
  left: calc(50% - 40px);
  top: calc(50% - 40px);
}

.drp-sk-circle .drp-sk-child {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.drp-sk-circle .drp-sk-child:before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #f69a38;
  border: 1px solid #343a40;
  border-radius: 100%;
  -webkit-animation: drp-sk-circleBounceDelay 1.2s infinite ease-in-out both;
  animation: drp-sk-circleBounceDelay 1.2s infinite ease-in-out both;
}

.drp-sk-circle .drp-sk-circle2 {
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg);
}

.drp-sk-circle .drp-sk-circle3 {
  -webkit-transform: rotate(60deg);
  -ms-transform: rotate(60deg);
  transform: rotate(60deg);
}

.drp-sk-circle .drp-sk-circle4 {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.drp-sk-circle .drp-sk-circle5 {
  -webkit-transform: rotate(120deg);
  -ms-transform: rotate(120deg);
  transform: rotate(120deg);
}

.drp-sk-circle .drp-sk-circle6 {
  -webkit-transform: rotate(150deg);
  -ms-transform: rotate(150deg);
  transform: rotate(150deg);
}

.drp-sk-circle .drp-sk-circle7 {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.drp-sk-circle .drp-sk-circle8 {
  -webkit-transform: rotate(210deg);
  -ms-transform: rotate(210deg);
  transform: rotate(210deg);
}

.drp-sk-circle .drp-sk-circle9 {
  -webkit-transform: rotate(240deg);
  -ms-transform: rotate(240deg);
  transform: rotate(240deg);
}

.drp-sk-circle .drp-sk-circle10 {
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.drp-sk-circle .drp-sk-circle11 {
  -webkit-transform: rotate(300deg);
  -ms-transform: rotate(300deg);
  transform: rotate(300deg);
}

.drp-sk-circle .drp-sk-circle12 {
  -webkit-transform: rotate(330deg);
  -ms-transform: rotate(330deg);
  transform: rotate(330deg);
}

.drp-sk-circle .drp-sk-circle2:before {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}

.drp-sk-circle .drp-sk-circle3:before {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}

.drp-sk-circle .drp-sk-circle4:before {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}

.drp-sk-circle .drp-sk-circle5:before {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}

.drp-sk-circle .drp-sk-circle6:before {
  -webkit-animation-delay: -0.7s;
  animation-delay: -0.7s;
}

.drp-sk-circle .drp-sk-circle7:before {
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s;
}

.drp-sk-circle .drp-sk-circle8:before {
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
}

.drp-sk-circle .drp-sk-circle9:before {
  -webkit-animation-delay: -0.4s;
  animation-delay: -0.4s;
}

.drp-sk-circle .drp-sk-circle10:before {
  -webkit-animation-delay: -0.3s;
  animation-delay: -0.3s;
}

.drp-sk-circle .drp-sk-circle11:before {
  -webkit-animation-delay: -0.2s;
  animation-delay: -0.2s;
}

.drp-sk-circle .drp-sk-circle12:before {
  -webkit-animation-delay: -0.1s;
  animation-delay: -0.1s;
}

@-webkit-keyframes drp-sk-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes drp-sk-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.drp-search-field-container {
  position: relative;
}
.drp-search-field-container input {
  padding-left: 2.9em !important;
  margin: 0 !important;
  height: 2.9em !important;
  font-size: 1em !important;
  color: #666666;
}
.drp-search-field-container .drp-fa-search {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0.81em !important;
  color: #666666;
}

.drp-list-no-padding-left {
  padding-left: 1.2em;
  margin-left: 0;
}

.drp-tooltip {
  position: relative;
  display: inline-block;
}
.drp-tooltip .drp-tooltip-text {
  visibility: hidden;
  width: 140px;
  max-width: none;
  font-size: small;
  text-transform: none;
  background-color: #555;
  color: #fff;
  text-align: left;
  border-radius: 0.3rem;
  padding: 0.3rem 0.6rem;
  position: absolute;
  z-index: 1;
  bottom: 125%;
  left: 50%;
  margin-left: -120px;
  opacity: 0;
  transition: opacity 0.3s;
}
.drp-tooltip .drp-tooltip-text::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: 45px;
  border-width: 5px;
  border-style: solid;
  border-color: #555 transparent transparent transparent;
}
.drp-tooltip:hover .drp-tooltip-text {
  visibility: visible;
  opacity: 1;
}

.drp-calendar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: calc(var(--min-width-each-calendar-day) * 7);
}

.drp-calendar-weekday, .drp-calendar-day {
  min-width: var(--min-width-each-calendar-day);
  min-height: var(--min-width-each-calendar-day);
  display: flex;
  align-items: center;
  justify-content: center;
}
@supports (aspect-ratio: 1) {
  .drp-calendar-weekday, .drp-calendar-day {
    height: auto;
    aspect-ratio: 1;
  }
}

.drp-calendar-weekday {
  font-weight: bold;
  opacity: 0.6;
}

.drp-calendar-day {
  border: 0.5px solid #e5e5e6;
  user-select: none;
  color: black;
}
.drp-calendar-day:not(:last-child) {
  border-right-width: 0;
}
.drp-calendar-week:not(:last-child) .drp-calendar-day {
  border-bottom-width: 0;
}
.drp-calendar-day.drp-calendar-day-outside {
  background-color: #f9f9f9;
}
.drp-calendar-day.drp-calendar-day-no-dates {
  background-color: white;
  color: #c8c8c8;
}
.drp-calendar-day.drp-calendar-day-dates {
  background-color: #86b83b;
  cursor: pointer;
}
.drp-calendar-day.drp-calendar-day-dates:hover {
  background-color: #6E9731;
}
.drp-calendar-day.drp-calendar-day-dates-not-relevant {
  background-color: #c7c7c7;
  cursor: pointer;
}
.drp-calendar-day.drp-calendar-day-dates-not-relevant:hover {
  background-color: #afaeae;
}

.drp-calendar-selected-day {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3) inset;
  background-color: #FF9F1C !important;
  color: white;
}

.drp-date-not-relevant {
  color: dimgray;
}

#drp-course-desired-date-text {
  width: 300px;
}

.drp-course-dates-list {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  row-gap: max(30px, 1.5em);
  min-width: min(var(--min-width-each-calendar-day) * 7, 100%);
  max-width: fit-content;
}

.drp-course-dates-list-wrap {
  display: flex;
  flex-direction: column;
  row-gap: max(30px, 1.5em);
}

.drp-course-date-item {
  border: 1px solid #c1c1c1;
  box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.1), 0 3px 3px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(45px);
}

.drp-course-date-item-separator {
  min-height: 1px;
  width: 100%;
  display: block;
  margin-left: auto;
  margin-right: auto;
  border-bottom: 1px solid #c1c1c1;
}

.drp-course-date-item-booking-box, .drp-course-date-item-dates-wrapper, .drp-course-date-assigned-users {
  padding: 0.7rem 1rem;
}

.drp-course-date-item-booking-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.5em;
  box-shadow: 0 0.1em 0.6em -0.5em black;
}

.drp-course-date-item-booking-status {
  display: inline-block;
  background-color: #86b83b;
  border-radius: 10px;
  width: 12px;
  height: 12px;
  background-image: radial-gradient(circle at 50% 66%, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.22) 100%);
  border: 1px solid rgba(0, 0, 0, 0.2);
}

.drp-date-not-relevant .drp-course-date-item-booking-status {
  background-color: #c7c7c7;
}

.drp-course-date-item-dates-wrapper {
  display: flex;
  flex-direction: column;
  align-items: baseline;
  flex-wrap: wrap;
  row-gap: 0.7em;
  background-color: rgba(150, 150, 150, 0.05);
}

.drp-course-date-item-dates {
  display: flex;
  flex-direction: column;
  row-gap: 0.7em;
}

.drp-course-date-item-date-date, .drp-course-date-item-date-time {
  display: flex;
  align-items: baseline;
  column-gap: 0.3em;
}

.drp-course-date-assigned-users {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  column-gap: 0.3em;
  row-gap: 0.3em;
  border-bottom: 1px dashed #c1c1c1;
  background-color: rgba(150, 150, 150, 0.05);
}

.drp-course-date-item-date {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.2em;
  row-gap: 0.2em;
}

.drp-warning {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem;
  background-color: #FF9F1C;
  color: white;
  border-radius: 5px;
}
.drp-warning img {
  height: 14px !important;
  width: 14px !important;
}

.drp-course-not-bookable-because-no-visible-tariffs-message {
  color: #dc3545;
}

.drp-calendar-legend {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.drp-calendar-legend-item, .drp-calendar-legend-item-color, .drp-calendar-legend-item-text {
  display: inline-block !important;
}

.drp-calendar-legend-item-color {
  display: inline-block;
  width: 11px;
  height: 11px;
}

.drp-calendar-legend-item-text {
  font-size: 13px;
}

.drp-calendar-legend-item-dates .drp-calendar-legend-item-color {
  background-color: #86b83b;
}

.drp-calendar-legend-item-dates-not-relevant .drp-calendar-legend-item-color {
  background-color: #c7c7c7;
}

#drp-course-booking-person-pos-card-number {
  display: inline-block !important;
}

#drp-course-booking-person-pos-card-number {
  display: inline-block !important;
}

.drp-course-booking-participant-pos-card-number label,
.drp-course-booking-person-pos-card-number-wrapper label {
  display: block !important;
}
.drp-course-booking-participant-pos-card-number input,
.drp-course-booking-person-pos-card-number-wrapper input {
  /* ensure tooltip remains in same line */
  width: calc(100% - 25px) !important;
  max-width: 300px !important;
  display: inline-block !important;
}

.drp-user-code ul, .drp-user-code ol {
  margin-top: 0;
  margin-bottom: 0;
}

.drp-course-list-item {
  /* list-item should have fixed height for extra small view */
  height: 120px;
}

.drp-course-list-item-image-container {
  position: relative;
  /* for view size below sm show smaller image */
  width: 50%;
  padding-top: 0;
  height: 100%;
}

.drp-course-list-item-image {
  /* Make image centered so clients can use images with other ratios */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.drp-fas {
  opacity: 0.7;
}

/* styling of the arrows in the submit buttons of the form */
button .drp-fas {
  position: inherit !important;
  transform: none !important;
  width: auto !important;
}

.drp-cursor-pointer {
  cursor: pointer;
}

.drp-card {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  transition: 0.3s;
}
.drp-card:hover {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.drp-course-list-group {
  margin-bottom: 3rem;
}

.drp-course-list-item-label {
  background-color: #f9f9f9;
  padding: 0.7rem 1rem;
  position: relative;
}

.drp-booking-overview-participant > div {
  margin-left: 15px;
}

.drp-course-booking-agreements label {
  display: inline;
}

.drp-course-dates {
  --min-width-each-calendar-day: min(40px, calc(96vw / 7));
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  row-gap: max(30px, 1em);
}

.drp-course-month-selector {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 1em;
}

.drp-course-month-selector-next, .drp-course-month-selector-prev {
  font-size: 1.2rem;
}
.drp-course-month-selector-next:hover, .drp-course-month-selector-next:visited, .drp-course-month-selector-next:link, .drp-course-month-selector-next:active, .drp-course-month-selector-prev:hover, .drp-course-month-selector-prev:visited, .drp-course-month-selector-prev:link, .drp-course-month-selector-prev:active {
  text-decoration: none;
  border: none;
}

.drp-separator {
  border-bottom: 2px solid rgba(0, 0, 0, 0.2);
  padding-bottom: 5px;
  margin-left: 0;
}

.drp-gift-card input:not([type=radio]) {
  width: 100% !important;
  max-width: 300px !important;
  display: block !important;
}

.drp-fa-gift-card-icon-animation {
  animation: drp-fa-icon-bounce-animation 3500ms infinite;
}

@keyframes drp-fa-icon-bounce-animation {
  0% {
    transform: scale(1, 1) translateY(0);
  }
  4% {
    transform: scale(1.1, 0.9) translateY(0);
  }
  12% {
    transform: scale(0.9, 1.1) translateY(-0.5em);
  }
  20% {
    transform: scale(1.05, 0.95) translateY(0);
  }
  24% {
    transform: scale(1, 1) translateY(-0.125em);
  }
  26% {
    transform: scale(1, 1) translateY(0);
  }
  100% {
    transform: scale(1, 1) translateY(0);
  }
}
.drp-gift-card-ad {
  max-width: fit-content;
}

.drp-course-booking-person label,
.drp-course-booking-participants label {
  width: 100% !important;
  max-width: 300px !important;
}
.drp-course-booking-person input:not([type=radio], [type=checkbox], [name^=participant-age], [name*=pos-card-number]),
.drp-course-booking-participants input:not([type=radio], [type=checkbox], [name^=participant-age], [name*=pos-card-number]) {
  width: 100% !important;
  display: block !important;
  max-width: 300px !important;
}
.drp-course-booking-person select,
.drp-course-booking-participants select {
  width: 100% !important;
  display: block !important;
  max-width: 300px !important;
}

.drp-course-booking-fees-content {
  max-width: 550px;
}

.drp-course-booking-additional-info input {
  width: 250px;
}

.drp-course-month-selector-text {
  text-align: center;
  min-width: min(15ch, 70%);
  display: inline-block;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.drp-course-booking-participants-age label {
  width: fit-content !important;
}
.drp-course-booking-participants-age input {
  max-width: 70px !important;
  display: inline-block !important;
}

.grecaptcha-badge {
  visibility: hidden;
}

.drp-closable-card {
  display: flex !important;
  align-items: center !important;
  position: relative !important;
  justify-content: flex-start !important;
  background-color: hsla(0, 0%, 100%, 0.9);
  border-radius: 0.3rem;
  box-shadow: rgba(0, 0, 0, 0.06) 0px 0px 15px, rgba(0, 0, 0, 0.05) 0px 0px 3px;
  padding: 0.75em 1em;
}
.drp-closable-card .drp-close-card-button {
  position: absolute !important;
  right: 0.25em !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  top: 0.25em !important;
  width: fit-content !important;
  aspect-ratio: 1/1 !important;
  background: none;
  border: none;
  color: #949494;
  border-radius: inherit !important;
}
.drp-closable-card .drp-close-card-button:hover, .drp-closable-card .drp-close-card-button:focus {
  background: #c7c7c7;
  color: #040404;
}
.drp-closable-card img {
  width: 75px !important;
  min-width: 65px !important;
  max-width: 75px !important;
}
.drp-closable-card .drp-card-title {
  width: calc(100% - 2em) !important;
}

.drp-clickable {
  cursor: pointer;
}

.drp-gift-card-individual-price {
  min-width: 5ch !important;
  max-width: 9ch !important;
}

.drp-shadow-hover {
  transition: box-shadow 0.5s;
}
.drp-shadow-hover:hover {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.drp-footer {
  --drp-hover-transition-duration: 250ms;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: max(16px, 1rem) !important;
  gap: 2em;
  flex-wrap: wrap;
  filter: saturate(0);
  transition: filter var(--drp-hover-transition-duration) ease-in-out;
  background-color: hsla(0, 0%, 100%, 0.9);
  border-radius: 0.3rem;
  box-shadow: rgba(0, 0, 0, 0.06) 0px 0px 15px, rgba(0, 0, 0, 0.05) 0px 0px 3px;
  overflow: hidden;
  margin: 5rem 0 2rem 0;
  hyphens: none !important;
  word-break: normal !important;
}
.drp-footer * {
  overflow-wrap: normal !important;
  hyphens: none !important;
}
.drp-footer:hover, .drp-footer:focus {
  filter: saturate(1);
}
.drp-footer:hover .drp-secure-booking-title, .drp-footer:hover .drp-created-by-dr-plano-text, .drp-footer:focus .drp-secure-booking-title, .drp-footer:focus .drp-created-by-dr-plano-text {
  opacity: 1 !important;
}
.drp-footer div {
  width: fit-content;
}
.drp-footer strong {
  font-weight: bold !important;
}
.drp-footer img {
  position: static !important;
  height: max(2em, 30px) !important;
}
.drp-footer img[src$="recaptcha.svg"] {
  scale: 1.35 !important;
}
.drp-footer a {
  text-decoration: none !important;
  border: none !important;
}
.drp-footer .drp-secure-booking {
  display: flex;
  column-gap: 3.7em;
  row-gap: 0.8em;
  align-items: center;
  flex-grow: 1;
  flex-wrap: wrap;
}
.drp-footer .drp-secure-booking .drp-secure-booking-title {
  width: min-content !important;
  text-transform: uppercase;
  font-weight: bold;
  line-height: 1em;
  opacity: 0.6;
  transition: opacity var(--drp-hover-transition-duration) ease-in-out;
  position: relative;
  color: hsl(227, 72%, 25%);
}
.drp-footer .drp-secure-booking .drp-secure-booking-title::before {
  position: absolute;
  font-family: "drp-Font Awesome 6.5.1 Pro Solid";
  font-weight: 900;
  content: "\f101";
  font-size: 4em;
  color: black;
  opacity: 0.07;
  top: 50%;
  right: -0.6em;
  transform: translateY(-50%);
}
.drp-footer .drp-secure-booking .drp-secure-booking-items {
  display: grid;
  place-items: center;
  grid-auto-flow: column;
  column-gap: clamp(1em, 10px + 3vw, 2.5em) !important;
}
.drp-footer .drp-secure-booking .drp-secure-booking-items > a {
  display: grid !important;
}
.drp-footer .drp-created-by-dr-plano {
  display: flex;
  gap: 1em;
  align-items: center;
  justify-content: end;
  flex-grow: 1;
  word-spacing: 0.1em;
  line-height: 1.1em;
}
.drp-footer .drp-created-by-dr-plano .drp-created-by-dr-plano-text {
  opacity: 0.6;
  transition: opacity var(--drp-hover-transition-duration) ease;
}
.drp-footer .drp-created-by-dr-plano a {
  color: #353534 !important;
  white-space: nowrap !important;
  font-weight: normal !important;
  text-decoration: none !important;
  transition: color var(--drp-hover-transition-duration) ease;
}
.drp-footer .drp-created-by-dr-plano a:hover, .drp-footer .drp-created-by-dr-plano a:focus {
  color: #f48713;
}

.drp-alert {
  border-radius: 0.3rem !important;
  border: 1px solid rgba(0, 0, 0, 0.2) !important;
  width: clamp(45ch, 60ch, 80vw) !important;
  background-color: #fff !important;
  padding: 2rem !important;
}
.drp-alert::backdrop {
  background: hsla(0, 0%, 0%, 0.5) !important;
}
.drp-alert:not([open]) {
  display: none !important;
}
.drp-alert .drp-alert-close-button {
  display: block;
  margin-left: auto;
  padding: 0.5em 1em;
  background-color: #f69a38;
  color: white;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out;
  border-radius: 0.3rem;
  border: none;
  margin-top: 2em;
}
.drp-alert .drp-alert-close-button:hover, .drp-alert .drp-alert-close-button:focus {
  background-color: #f48713;
}

/*# sourceMappingURL=styles.css.map */
