html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
html {
  font-family: "Be Vietnam Pro", sans-serif;
  -webkit-font-smoothing: antialiased;
  font-size: 18px;
  font-weight: 400;
  color: #0a3834;
  line-height: 30px;
  scroll-behavior: smooth;
}
@media only screen and (max-width: 992px) {
  html {
    line-height: 25px;
  }
}
::-webkit-scrollbar {
  width: 10px;
  background-color: #fff;
}
::-webkit-scrollbar-track {
  box-shadow: #fff;
  background-color: #fff;
}
::-webkit-scrollbar-thumb {
  background: #557a77;
}
.container {
  width: 100%;
  padding: 0 0.75rem;
  margin: 0 auto;
}
@media screen and (min-width: 1500px) {
  .container {
    max-width: 1500px;
  }
}
.hidden {
  display: none !important;
}
* {
  box-sizing: border-box;
}
textarea, input, select, .select2-container--default .select2-selection--single {
  width: calc(100% - 76px);
  box-sizing: content-box;
  appearance: none;
  border: 1px solid #8EADAB;
  height: 60px;
  padding: 6px 19px 6px 57px;
  border-radius: 12px;
  font-size: 20px;
  background-size: 30px 25px;
  background-repeat: no-repeat;
  background-position: 14px center;
  background-color: #fff;
}
textarea:focus, input:focus, select:focus, .select2-container--default .select2-selection--single:focus {
  outline: 1px solid #13AEC3;
}
select, .select2-container--default .select2-selection--single {
  font-weight: 600;
}
select.selected, .select2-container--default .selected.select2-selection--single {
  font-weight: 400;
}
textarea {
  resize: none;
  height: auto;
  min-height: 120px;
  padding: 15px 19px;
  font-family: "Be Vietnam Pro", sans-serif;
}
strong {
  font-weight: bold;
}
.help-block-error {
  font-size: 14px;
  color: #436E6A;
  margin-top: 10px;
}
.checkbox input[type="checkbox"] {
  display: none;
}
.checkbox label {
  position: relative;
  font-size: 20px;
  line-height: 38px;
}
@media only screen and (max-width: 992px) {
  .checkbox label {
    font-size: 18px;
    line-height: 25px;
  }
}
.checkbox label::before {
  width: 33px;
  height: 33px;
  border-radius: 8px;
  border: 1px solid #8EADAB;
  background-color: #fff;
  display: block;
  content: "";
  float: left;
  margin-right: 5px;
  z-index: 5;
  position: relative;
  cursor: pointer;
}
@media only screen and (max-width: 992px) {
  .checkbox label::before {
    width: 15px;
    height: 15px;
    border-radius: 0;
  }
}
.checkbox label:has(input[type="checkbox"]:checked)::before {
  box-shadow: inset 0px 0px 0px 5px #fff;
  background-color: #8EADAB !important;
}
.text-small {
  font-size: 14px;
  line-height: 24px;
}
.text-success {
  color: #007F5F;
}
.list-combinations {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.list-combinations li {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
}
.text-center, .text--center {
  text-align: center;
}
.well {
  display: block;
  width: 100%;
  font-size: 14px;
  background-color: rgba(67, 110, 106, 0.1);
  border: 0;
}
.label-default {
  background-color: #ecf0f0;
  color: #13AEC3;
}
.fileupload-progress {
  margin-top: 20px;
}
.collapse p {
  margin-bottom: 16px;
}
.text-to-copy .text-muted {
  font-size: 14px;
  text-align: center;
  width: 100%;
  transition: none;
  color: #13AEC3;
}
a {
  color: #00607a;
}
a:active, a:focus, a:hover {
  color: #7C8988;
}
h1 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #436e6a;
  font-weight: 600;
}
h2 {
  font-size: 1.4rem;
  margin-bottom: 15px;
  font-weight: 500;
}
h3 {
  font-size: 1.3rem;
}
@media only screen and (min-width: 993px) {
  h2 {
    font-size: 1.6rem;
  }
}
#header {
  width: 100%;
  position: fixed;
  display: block;
  background-color: #46505A;
  height: 147px;
  z-index: 100;
  top: 0;
  left: 0;
}
#header .container {
  height: 100%;
  display: flex;
  align-items: center;
  position: relative;
}
#header .header-logo-mobile {
  display: none;
}
@media only screen and (max-height: 887px), screen and (max-width: 1200px) {
  #header {
    height: 107px;
  }
}
@media only screen and (max-width: 768px) {
  #header {
    height: 80px;
  }
}
#header .header-logo-desktop {
  height: 65px;
  width: auto;
}
@media only screen and (max-width: 1200px), screen and (max-height: 600px) {
  #header .header-logo-desktop {
    display: none;
  }
  #header .header-logo-mobile {
    display: block;
  }
}
#main {
  padding-top: 147px;
}
@media only screen and (max-height: 887px), screen and (max-width: 1200px) {
  #main {
    padding-top: 107px;
  }
}
@media only screen and (max-width: 768px) {
  #main {
    padding-top: 80px;
  }
}
#footer {
  width: 100%;
  display: block;
  background-color: #46505A;
  color: #fff;
  height: 100%;
  margin-top: 10px;
  padding: 40px 0.75rem 60px 0.75rem;
}
@media only screen and (max-width: 768px) {
  #footer {
    font-size: 15px;
    line-height: 20px;
  }
}
#footer .container {
  padding: 26px 0 50px 0;
}
#footer .container .inside {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
}
@media only screen and (max-width: 992px) {
  #footer .container .inside {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-direction: column;
  }
}
@media only screen and (max-width: 992px) {
  #footer .container .inside > div {
    grid-column: span 12;
  }
}
#footer .container .inside > ul {
  justify-content: flex-end;
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 992px) {
  #footer .container .inside > ul {
    grid-column: span 12;
    justify-content: center;
    flex-direction: column;
  }
}
#footer a {
  color: #fff;
  text-decoration: none;
}
#footer a:hover {
  color: #BED847;
}
#footer ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
#footer ul li {
  margin: 0 10px;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-Black.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-BlackItalic.ttf") format("truetype");
  font-weight: 900;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-ExtraBoldItalic.ttf") format("truetype");
  font-weight: 800;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-BoldItalic.ttf") format("truetype");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-ExtraLightItalic.ttf") format("truetype");
  font-weight: 200;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-Italic.ttf") format("truetype");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-ExtraLight.ttf") format("truetype");
  font-weight: 200;
  font-style: normal;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-SemiBoldItalic.ttf") format("truetype");
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-Thin.ttf") format("truetype");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-ExtraBold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-ThinItalic.ttf") format("truetype");
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: "Be Vietnam Pro";
  font-display: swap;
  src: url("../fonts/BeVietnamPro-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
input#attendantform-title, input#contractpayment-iban, input#contractpayment-bic {
  background-image: url("../img/icons/registration-title.svg");
}
select#attendantform-gender, .select2-container--default #attendantform-gender.select2-selection--single, input#paymentdebitor-fullname, input#attendantform-forename, input#attendantform-lastname, input#attendantform-birthdate, input#attendantform-job, input#attendantform-title {
  background-image: url("../img/icons/registration-name.svg");
}
input#attendantform-company {
  background-image: url("../img/icons/building-2.svg");
}
input#attendantform-street, input#attendantform-street_num, input#attendantform-city, input#attendantform-postcode, select#attendantform-country, .select2-container--default #attendantform-country.select2-selection--single, input#paymentdebitor-street, input#paymentdebitor-street_num, input#paymentdebitor-city, input#paymentdebitor-postcode, input#paymentdebitor-country {
  background-image: url("../img/icons/registration-location.svg");
}
select, .select2-container--default .select2-selection--single {
  background-image: url("../img/icons/chevron-down.svg");
}
input#contactform-email, input#attendantform-email {
  background-image: url("../img/icons/registration-email.svg");
}
input#attendantform-phone {
  background-image: url("../img/icons/registration-phone.svg");
}
.alert-icon {
  background-image: url("../img/icons/alert-circle-outline.svg");
}
.btn, button {
  border: 2px solid #8EADAB;
  color: #0A3834;
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 50px;
  padding: 15px 60px 15px 70px;
  transition: 0.2s ease-in-out;
  position: relative;
  background-color: transparent;
  cursor: pointer;
  min-height: 52px;
  display: inline-flex;
}
.btn .fal, button .fal {
  display: none;
}
.btn:hover, .btn:active, .btn:focus, button:hover, button:active, button:focus {
  color: #fff;
  background-color: #007F5F;
  border: 2px solid #007F5F;
  padding: 15px 60px 15px 75px;
}
.btn-success, button-success {
  background-color: #007F5F;
  border-color: #007F5F;
  color: white;
}
.btn::before, button::before {
  position: absolute;
  left: 19px;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  transition: 0.2s ease-in-out;
  content: "";
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("../img/icons/arrow.svg");
}
.btn:hover::before, .btn:focus::before, .btn:active::before, button:hover::before, button:focus::before, button:active::before {
  transition: 0.2s ease-in-out;
  left: 26px;
  background-image: url("../img/icons/arrow-white.svg");
  filter: brightness(200%);
}
.btn.btn-back::before, button.btn-back::before {
  background-image: url("../img/icons/arrow-left.svg");
}
.btn.btn-back:hover::before, .btn.btn-back:active::before, .btn.btn-back:focus::before, button.btn-back:hover::before, button.btn-back:active::before, button.btn-back:focus::before {
  background-image: url("../img/icons/arrow-white-left.svg");
}
.btn.btn.btn-abbort, button.btn.btn-abbort {
  border-color: #FF5722;
  background-color: #F44336;
  color: #ffffff;
}
.btn.btn.btn-abbort::before, button.btn.btn-abbort::before {
  color: #d8b2a6;
  background-image: url("../img/icons/cancel.svg");
}
.btn.btn-minus:before, button.btn-minus:before {
  background-image: url("../img/icons/minus.svg");
}
.btn.btn-plus:before, button.btn-plus:before {
  background-image: url("../img/icons/plus.svg");
}
.btn.btn-default, button.btn-default {
  padding: 15px 60px 15px 60px;
}
.btn.btn-default::before, button.btn-default::before {
  content: none;
}
.btn.btn-default::after, button.btn-default::after {
  content: none;
}
.btn.fileinput-button i, button.fileinput-button i {
  display: none;
}
.hidden-xs {
  display: none;
}
@media only screen and (min-width: 481px) {
  .hidden-xs {
    display: inline-flex;
  }
}
.visible-xs-inline {
  display: inline-flex;
}
@media only screen and (min-width: 481px) {
  .visible-xs-inline {
    display: none;
  }
}
.hidden {
  display: none;
}
.space--top {
  margin-top: 32px;
}
.space--top-half {
  margin-top: 16px;
}
.space--top-none {
  margin-top: 0 !important;
}
.space--bottom {
  margin-bottom: 32px;
}
.panel-title {
  font-size: 26px;
  line-height: 36px;
  font-weight: 500;
  color: #0A3834;
  margin: 20px 0 32px;
  display: block;
}
@media only screen and (min-width: 1200px) {
  .panel-title {
    font-size: 45px;
    line-height: 57px;
    margin: 0.83em 0 0.5em 0;
  }
}
.panel-head .panel-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
@media only screen and (min-width: 481px) {
  .panel-head .panel-title {
    flex-direction: row;
  }
}
.panel-subtitle {
  font-size: 24px;
  line-height: 38.4px;
}
@media only screen and (min-width: 1200px) {
  .panel-subtitle {
    font-size: 32px;
    line-height: 51.2px;
  }
}
.panel-box {
  display: flex;
  width: 100%;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  position: relative;
  background-color: rgba(67, 110, 106, 0.1);
  padding: 27px 10px;
  padding-left: 55px;
  font-weight: 600;
  color: #436E6A;
  font-size: 18px;
}
@media only screen and (min-width: 992px) {
  .panel-box {
    font-size: 24px;
  }
}
.panel-box.first:after {
  content: "";
  width: 100%;
  position: absolute;
  top: -12px;
  left: 0;
  height: 5px;
  background-color: rgba(67, 110, 106, 0.3);
}
.panel-box::before {
  content: "";
  display: inline-block;
  color: #436E6A;
  width: 25px;
  height: 12.458px;
  background-image: url("../img/icons/arrow-fieldset.svg");
  background-size: cover;
  margin-right: 30px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 10px;
}
.panel-box legend {
  display: contents;
}
.panel-info {
  height: 100%;
  font-weight: 400;
  align-items: flex-start;
  flex-direction: column;
  position: relative;
  color: #436E6A;
  display: flex;
  gap: 34px;
  background-color: rgba(67, 110, 106, 0.1);
  font-size: 18px;
  line-height: 25px;
  padding: 27px 10px;
}
@media only screen and (min-width: 992px) {
  .panel-info {
    font-size: 24px;
    line-height: 35px;
    padding: 27px 55px;
  }
}
.panel-info a {
  color: #436E6A;
}
.panel-info.text {
  background-color: transparent;
  font-size: 18px;
  line-height: 30px;
}
.panel-info.white {
  background-color: white;
  border: 1px solid #ecf0f0;
  border-radius: 5px;
}
.panel-block {
  display: flex;
  flex-direction: column;
  gap: 34px;
  padding: 27px 10px;
}
@media only screen and (min-width: 992px) {
  .panel-block {
    padding: 27px 55px;
  }
}
.panel-actions {
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
  margin: 20px 0px;
  gap: 15px;
  padding: 30px 0;
}
@media only screen and (min-width: 992px) {
  .panel-actions {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 40px 60px;
    gap: 20px;
  }
}
.panel-actions a {
  display: inline-block;
}
.panel-table {
  border: 1px solid #ecf0f0;
  border-collapse: collapse;
  width: 100%;
  color: #436E6A;
}
.panel-table td, .panel-table th {
  border: 1px solid #ecf0f0;
}
.panel-table th, .panel-table td {
  padding: 15px;
  text-align: center;
}
@media only screen and (max-width: 480px) {
  .panel-table th, .panel-table td {
    font-size: 14px;
  }
}
.panel-table-review tr th {
  width: 50%;
}
.panel-acc {
  display: block;
  border: 0;
}
.panel-acc .panel-heading {
  background-color: rgba(67, 110, 106, 0.1);
  position: relative;
}
.panel-acc .panel-heading:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 2px solid #13AEC3;
  border-radius: 50%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 16px;
}
.panel-acc .panel-heading .panel-title {
  margin: 0;
  padding: 0;
}
.panel-acc .panel-heading .panel-title a {
  display: block;
  font-size: 18px;
  line-height: 30px;
  text-decoration: none;
}
.panel-acc .panel-collapse {
  margin-bottom: 16px;
  padding: 30px 10px;
  border: 0;
  font-size: 18px;
  line-height: 30px;
}
.panel-acc .panel-collapse .btn {
  width: fit-content;
}
.panel-acc .panel-collapse *:not(.btn, .btn *) {
  color: #46505A;
}
.panel-acc .panel-collapse .collapse {
  padding: 20px 0;
}
.panel-acc.panel-success .panel-heading:before {
  background-image: url("../img/icons/checkmark.svg");
}
.form-column {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.form-grid {
  position: relative;
  display: grid;
  grid-gap: 40px;
  padding: 56px 0;
  grid-template-columns: repeat(1, 1fr);
}
@media only screen and (min-width: 576px) {
  .form-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 992px) {
  .form-grid {
    padding: 72px 60px;
  }
}
.form-grid::before {
  content: "";
  width: 100%;
  position: absolute;
  top: 12px;
  left: 0;
  height: 1px;
  background-color: rgba(67, 110, 106, 0.3);
}
.form-grid::after {
  content: "";
  width: 100%;
  position: absolute;
  bottom: 12px;
  left: 0;
  height: 1px;
  background-color: rgba(67, 110, 106, 0.3);
}
.form-grid.simple {
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 12px;
}
.form-grid.no-top:before {
  display: none;
}
.form-grid.no-bottom:after {
  display: none;
}
.form-grid.no-border:before, .form-grid.no-border:after {
  display: none;
}
.form-grid.space-bottom-none {
  padding-bottom: 0;
}
.form-grid.space-top-none {
  padding-top: 0;
}
.form-group {
  position: relative;
}
.simple .form-group {
  display: flex;
  flex-direction: row;
  gap: 20px;
  padding: 30px 0;
}
@media only screen and (min-width: 992px) {
  .simple .form-group {
    padding: 40px 0;
  }
}
.form-group label {
  display: block;
  margin-bottom: 5px;
}
.simple .form-group label {
  font-weight: bold;
  min-width: 120px;
}
.form-group .help-block-error {
  color: rgba(255, 23, 23, 0.8);
}
.progressbar {
  position: relative;
  padding: 32px 0 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.progressbar__bar {
  display: block;
  width: 100%;
  height: 20px;
  max-width: 100%;
  background-color: #ecf0f0;
  overflow: hidden;
  position: relative;
  border-radius: 20px;
}
.progressbar__bar__loading {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background-color: #13AEC3;
  border-radius: 20px;
}
.progressbar__text {
  display: block;
  font-size: 14px;
  font-weight: 400;
  color: #436E6A;
  line-height: 18px;
}
.section-progress {
  background-color: #46505A;
}
.section-progress .container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 320px;
  height: 100%;
  color: #fff;
}
.section-progress .step-number {
  font-size: 65px;
  line-height: 70px;
  color: #13AEC3;
  font-weight: 600;
  margin: auto 0.75rem 0;
  display: flex;
}
.section-progress .step-number .step-number-secondary {
  font-size: 1.6rem;
  color: #C2C2C2;
  padding-top: 9px;
}
.section-progress .step-description {
  margin-bottom: 1em;
  margin: 0 0.75rem 18px;
}
.section-progress .step-title {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 44px;
  margin: 0 0 50px 0.75rem;
  color: #FFF;
}
.alert {
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: center;
  background-color: rgba(67, 110, 106, 0.1);
  padding: 40px 0.75rem;
  width: 100%;
  max-width: calc(1500px - (0.75rem) * 2);
  margin: 32px auto 0;
  color: #13AEC3;
}
.alert .alert-icon {
  display: block;
  width: 28px;
  min-width: 28px;
  height: 28px;
}
.widget-box {
  padding: 15px;
  border: 1px solid #ecf0f0;
}
.viewer__control {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  padding: 15px 10px;
  justify-content: center;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: white;
}
.ui-datepicker {
  display: none;
  background-color: white;
  width: 100%;
  max-width: calc(100% - 1.3rem);
  text-align: center;
  padding: 16px 5px;
  margin-top: 8px;
  border: 2px solid #13AEC3 !important;
  border-radius: 12px !important;
}
@media only screen and (min-width: 481px) {
  .ui-datepicker {
    max-width: 320px;
  }
}
.ui-datepicker .ui-datepicker-header {
  margin: 0 auto 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 5px;
  background: transparent;
  border: 0;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-title {
  width: 100%;
  flex: 1;
  font-size: 14px;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-title .ui-datepicker-month, .ui-datepicker .ui-datepicker-header .ui-datepicker-title .ui-datepicker-year {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: none;
  background: none;
  border: 0;
  outline: 0;
  border-radius: 0;
  pointer-events: none;
  margin: 0 auto;
  color: #436E6A;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev, .ui-datepicker .ui-datepicker-header .ui-datepicker-prev:hover {
  transform: rotate(-45deg);
  border-top: 2px solid #436E6A;
  border-left: 2px solid #436E6A;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev.ui-state-disabled, .ui-datepicker .ui-datepicker-header .ui-datepicker-prev:hover.ui-state-disabled {
  opacity: 0;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-next, .ui-datepicker .ui-datepicker-header .ui-datepicker-next:hover {
  order: 3;
  transform: rotate(45deg);
  border-top: 2px solid #436E6A;
  border-right: 2px solid #436E6A;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev, .ui-datepicker .ui-datepicker-header .ui-datepicker-next {
  display: block;
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 15px;
  border-radius: 0;
  opacity: 1;
  position: static;
  cursor: pointer;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev:hover, .ui-datepicker .ui-datepicker-header .ui-datepicker-next:hover {
  background-color: transparent;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-header .ui-datepicker-next span {
  display: none;
}
.ui-datepicker .ui-state-hover:hover {
  background: transparent;
  border: 0;
}
.ui-datepicker a {
  margin: 0;
  display: block;
  color: #46505A;
}
.ui-datepicker a:hover {
  text-decoration: none;
  background-color: transparent;
}
.ui-datepicker .ui-datepicker-calendar {
  margin-bottom: 0;
}
.ui-datepicker .ui-datepicker-unselectable {
  opacity: 0.4;
}
.ui-datepicker .ui-datepicker-today {
  position: relative;
}
.ui-datepicker .ui-datepicker-today:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #436E6A;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  z-index: -1;
}
.ui-datepicker .ui-datepicker-current-day a {
  background-color: #436E6A;
  color: white;
  border: 0;
}
.ui-datepicker .ui-state-default {
  background: transparent;
  border: 0;
  text-align: center;
  height: auto;
  padding: 0;
}
.ui-datepicker .ui-state-default:hover {
  background-color: #ecf0f0;
  color: #436E6A;
}
.ui-datepicker .ui-state-default.ui-state-active {
  background-color: #436E6A;
  color: white;
}
.ui-datepicker span {
  color: #46505A;
}
.ui-datepicker table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
.ui-datepicker table thead tr th {
  height: 34px;
  width: calc(100% / 7);
  font-weight: 400;
}
.ui-datepicker table tbody tr td {
  height: 34px;
  line-height: 34px;
}
.iframe-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
}
.iframe-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}
.iframe-container {
  position: relative;
  margin: 3vh auto;
  width: 90%;
  max-width: 1600px;
  height: 90%;
  background: #FFF;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  margin-top: 55px;
}
.iframe-container iframe {
  width: 100%;
  height: 100%;
}
.iframe-close {
  position: absolute;
  top: -10px;
  right: 25px;
  color: #bbbbbb;
  font-size: 4rem;
  cursor: pointer;
  z-index: 10;
}
.iframe-close:hover {
  color: #ff5555;
}
.select2-selection__arrow {
  display: none;
}
.select2-container--default .select2-selection--single {
  display: flex;
  align-items: center;
}
.select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0;
}
.select2-search__field:active, .select2-search__field:focus {
  outline: none;
}
.select2-search--dropdown .select2-search__field {
  padding: 4px 20px;
  height: 45px;
}
.select2-search--dropdown {
  padding: 10px;
}
.select2-results {
  padding-left: 15px;
}
.form-grid.modules, .form-grid.combinations {
  color: #436E6A;
  padding-bottom: 50px;
}
.form-grid.modules::before, .form-grid.combinations::before {
  display: none;
}
.form-grid.modules .title, .form-grid.combinations .title {
  font-size: 0.8rem;
  position: absolute;
  top: 25px;
}
.form-grid.modules .list-combinations li, .form-grid.combinations .list-combinations li {
  align-items: start;
}
.course-confirm-combinations-title-wrapper {
  display: flex;
  align-items: center;
}
.course-confirm-combinations-title {
  font-weight: 600;
}
#panel-course .panel-block {
  gap: 0;
}
.course-confirm-combinations-title-wrapper {
  flex-grow: 1;
}
#section-content {
  margin-top: 70px;
}
.mt-1 {
  margin-top: 10px;
}
.mt-2 {
  margin-top: 20px;
}
.mt-3 {
  margin-top: 30px;
}
.mb-1 {
  margin-bottom: 10px;
}
.mb-2 {
  margin-bottom: 20px;
}
.mb-3 {
  margin-bottom: 30px;
}
.mb-4 {
  margin-bottom: 40px;
}
.fileupload-buttonbar {
  width: 285px;
}
ul.files {
  padding-left: 20px;
  margin-top: 20px;
  margin-bottom: 20px;
}
ul.files li {
  font-style: italic;
  /*text-decoration: ;*/
}
i {
  font-style: italic;
}
.fileupload-progress {
  /* margin-top: 20px; */
  position: relative;
  /* width: 100%; */
  margin-bottom: -35px;
  margin-left: -14px;
  margin-right: -14px;
}
.uploaded-files-wrapper {
  padding-bottom: 10px;
  max-width: 980px;
  margin: 0 auto 20px auto;
}
.uploaded-files-wrapper .uploaded-files {
  border: 1px dashed #aeaeae;
  padding: 15px;
  border-radius: 7px;
  margin-top: 20px;
}
.panel-table {
  border: none;
}
.panel-table tr {
  display: flex;
  width: 100%;
}
.panel-table td, .panel-table th {
  border: none;
  border-bottom: 1px solid #ecf0f0;
}
.panel-table th {
  width: 15%;
  max-width: 175px;
  text-align: right;
}
.panel-table td {
  width: 100%;
  flex-grow: 1;
  text-align: left;
  padding-left: 30px;
}
#pricing-table tr {
  display: table-row;
}
#pricing-table th, #pricing-table td {
  width: auto;
  max-width: unset;
  text-align: center;
}
.panel-box {
  display: block;
}
#course-meta th {
  text-align: left;
}
.panel-title {
  margin: 0;
}
.section-progress .container {
  min-height: 220px;
}
.form-group.field-attendantform-option_company {
  display: flex;
  align-items: center;
  padding-top: 25px;
}
html {
  height: 100%;
}
body:has(#main.center-content) {
  height: 100%;
}
#main.center-content {
  padding: 0;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
#main.center-content #section-content {
  margin: 0;
}
.text-linethrough {
  text-decoration: line-through;
}
.review .panel-heading .panel-title {
  border-bottom: 1px solid #ecf0f0;
  margin-bottom: 10px;
  color: #46505a;
}
.review .edit-link {
  color: #8eadab;
  font-weight: 600;
}
ul#course-confirm-combinations li {
  padding: 10px 0;
}
ul#course-confirm-combinations li:hover {
  background-color: #ecf0f029;
}
ul#course-confirm-combinations {
  gap: 0;
}
ul.process-schedule {
  margin-bottom: 15px;
  border-bottom: 1px solid rgba(67, 110, 106, 0.3);
}
ul.process-schedule li {
  display: flex;
  align-items: center;
  margin-bottom: 45px;
}
ul.process-schedule .process-number {
  margin-right: 25px;
  min-width: 60px;
  max-width: 60px;
  font-size: 1.5rem;
  text-align: center;
  background-color: #436e6a;
  color: #FFF;
  border-radius: 15px;
  padding: 10px 0px;
}
ul.process-schedule .process-number.active {
  background-color: #ff5722;
}
ul.process-schedule .process-item h3 {
  font-size: 1.1rem;
  font-weight: 400;
  margin-bottom: 10px;
}
ul.process-schedule .process-item p {
  font-size: 0.9rem;
}
@media only screen and (min-width: 992px) {
  h1 {
    font-size: 2.4rem;
  }
  ul.process-schedule {
    padding: 0 0px 0 20px;
  }
  ul.process-schedule .process-number {
    font-size: 1.5rem;
    margin-right: 40px;
  }
  ul.process-schedule .process-item h3 {
    font-weight: 400;
    font-size: 1.2rem;
  }
}
input#attendantform-email[disabled] {
  background-color: #007f5f0d;
}
