@charset "UTF-8";
/*88b844;*/
input[type="checkbox"].error {
  background-color: #D98416; }

.form_info {
  font-size: 0.85em;
  font-style: italic;
  margin-top: .5em; }

.error input {
  border-color: #D98416;
  background-color: #FFF4E6; }
.error label {
  color: #D98416; }

.missing:after, .invalid:after {
  display: block;
  content: "Bitte ergänzen/korrigieren!";
  font-weight: 600;
  color: #D98416; }

.err_startdatum:after, .err_startdatum_okv:after {
  display: block;
  font-weight: 600;
  color: #D98416; }

.err_startdatum:after {
  content: "Ungültiges Datum. Maximal 30 Tage in der Zukunft."; }

.err_startdatum_okv:after {
  content: "Ungültiges Datum. Maximal 30 Tage in der Zukunft oder 30 Tage nach Ende des Kurses. Nicht vor Ende des Kurses."; }

.invalid:after {
  content: "Die Eingabe scheint ungültig zu sein."; }

.err_duplicate1:before {
  display: block;
  content: "Alle Teilnehmer eines Kurses oder einer Prüfung müssen unterschiedliche E-Mail-Adressen haben.";
  font-weight: 600;
  color: #D98416;
  text-align: center;
  margin-bottom: 1rem; }

.err_duplicate2:before {
  display: block;
  content: "Gleiche E-Mail wie ein anderer Teilnehmer aber verschiedene Namen. Bitte prüfen.";
  font-weight: 600;
  color: #D98416;
  text-align: center;
  margin-bottom: 1rem; }

#errors, #warnings {
  border: 1px solid #D98416;
  border-radius: 2px;
  margin: 1em 0;
  padding: .75em 1.5em;
  background-color: #FFF4E6; }
  #errors p, #errors p:before, #errors h2, #warnings p, #warnings p:before, #warnings h2 {
    color: #D98416; }
  #errors p, #warnings p {
    padding-left: 2.5em;
    position: relative; }
  #errors p:before, #warnings p:before {
    display: block;
    font-size: 1.25em;
    font-family: FA;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    content: "\f071"; }

.errbuttons {
  text-align: center; }
  .errbuttons span {
    display: inline-block;
    background-color: #D98416;
    color: #fff;
    cursor: pointer;
    padding: .5em 2em;
    font-size: 1.15em;
    font-weight: 600;
    text-align: center;
    position: relative;
    border-radius: 2px;
    margin: 0 2em; }
  .errbuttons span:hover {
    background-color: #E68200; }

@media (max-width: 779px) {
  #steptabs {
    background-color: #f0f0f0;
    padding: 0 1rem;
    margin: 0 0 2rem 0; }
    #steptabs > div {
      color: #666;
      display: inline-block;
      font-size: 0.95em;
      padding: .5em 0; }
    #steptabs > div:after {
      display: inline-block;
      content: "\f101";
      font-family: FA;
      padding: 0 .5rem;
      margin: 0;
      font-size: .66em;
      vertical-align: middle; }
    #steptabs > div:last-of-type:after {
      display: none; }
    #steptabs .tabavail {
      cursor: pointer;
      color: #01aeef; }
    #steptabs .tabcur {
      color: #75b843;
      font-weight: 600; } }
@media (min-width: 780px) {
  #steptabs {
    margin: 2rem auto; }
    #steptabs > div {
      display: inline-block;
      background-color: #e0e0e0;
      color: #666;
      margin: 0 1em 0 0;
      padding: .5em 1em;
      font-weight: 600; }
    #steptabs .tabavail {
      cursor: pointer;
      background-color: #01aeef;
      color: #fff; }
    #steptabs .tabavail:hover {
      background-color: #75b843; }
    #steptabs .tabcur {
      background-color: #75b843;
      color: #fff; } }
.submit {
  text-align: left; }
  .submit .fwd em {
    font-style: normal;
    display: block;
    font-size: .65em;
    font-weight: 300; }
  .submit .fwd {
    display: inline-block;
    background-color: #D98416;
    color: #fff;
    cursor: pointer;
    padding: .5em 1em;
    font-size: 1.15em;
    font-weight: 600;
    text-align: center;
    position: relative;
    border-radius: 2px; }
  .submit .fwd:hover {
    background-color: #E68200; }
  .submit .fwd {
    padding-right: 3em; }
  .submit .fwd:after {
    font-family: FA;
    font-size: 1.5em;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-weight: normal;
    content: "\f051";
    right: .5em; }
  .submit .inactive, .submit .inactive:hover {
    background-color: #ccc;
    cursor: default; }

@media (max-width: 929px) {
  .submit {
    text-align: center;
    margin: 1.75rem auto; } }
.kurs {
  display: grid;
  grid-template-columns: 1fr 8rem;
  gap: 1em 2em;
  justify-items: stretch;
  align-items: center;
  padding: 1em;
  margin: .5em 0;
  border: 1px solid #404040; }
  .kurs h3 {
    margin: 0;
    padding: 0;
    text-align: left; }
    .kurs h3 .icon {
      vertical-align: baseline;
      padding-right: .5em;
      cursor: pointer; }
    .kurs h3 .icon:before {
      color: #D98416;
      font-size: .9em; }
    .kurs h3 .icon:hover:before {
      color: #E68200; }
  .kurs h3.price {
    justify-self: end; }

.teilnehmer {
  grid-column: span 2;
  justify-self: stretch;
  padding: 1.5em 0;
  border-bottom: 1px solid #ccc; }

.tninfo {
  display: grid; }
  .tninfo label {
    font-size: .75em;
    font-weight: 600;
    display: block; }
  .tninfo input {
    width: 20em;
    max-width: 100%;
    font-size: 1rem; }

.deltn {
  font-family: FA;
  font-size: 1.15em;
  color: #D98416;
  cursor: pointer;
  padding: .25em .33em; }

.deltn:hover {
  color: #E68200; }

@media (max-width: 929px) {
  .tninfo {
    grid-template-columns: 2em 1fr;
    gap: 1.25em; }
    .tninfo .deltn {
      grid-row: 1/10;
      align-self: start;
      margin-top: 1em; } }
@media (min-width: 930px) {
  .tninfo {
    grid-template-columns: 2em 1fr 1fr 1fr;
    gap: 2em;
    justify-items: start;
    align-items: center; }

  .deltn {
    align-self: end; } }
.addtn {
  background-color: #0182b3;
  color: #fff;
  cursor: pointer;
  padding: .25em .33em;
  justify-self: start;
  font-weight: 600; }

.addtn:hover {
  background-color: #75b843; }

.addtn:before {
  font-family: FA;
  margin-right: .25em;
  content: ""; }

.tnoptions {
  display: grid;
  grid-template-columns: 1fr 8rem;
  gap: 0;
  justify-items: stretch;
  align-items: stretch;
  margin-top: 1em;
  font-size: .95em; }
  .tnoptions span {
    display: inline-block;
    padding: .5em 1em; }
  .tnoptions span:nth-of-type(4n-3), .tnoptions span:nth-of-type(4n-2) {
    background-color: #e4e4e4; }
  .tnoptions input[type="checkbox"] {
    margin: 0 .33em 0 0; }

.price {
  text-align: right; }

#total_netto {
  display: grid;
  grid-template-columns: 1fr 8rem;
  gap: 1em 2em;
  justify-items: stretch;
  align-items: center;
  font-weight: 600;
  font-size: 1.1em;
  background-color: #e4e4e4;
  padding: 1em;
  margin-bottom: 1.5em; }
  #total_netto em {
    display: block;
    font-weight: 400;
    font-size: .75em; }

#step1 > div {
  margin-bottom: 1.5em;
  border: 1px solid #ccc;
  padding: 1.5em;
  border-radius: 2px; }
  #step1 > div h3 {
    text-align: left; }
  #step1 > div label {
    font-size: .75em;
    font-weight: 600;
    display: block; }
  #step1 > div input {
    width: 20em;
    font-size: 1rem; }
  #step1 > div > div {
    margin: .5em 1em .5em 0; }
  #step1 > div #rechnung_vname, #step1 > div #rechnung_nname, #step1 > div #rechnung_zip, #step1 > div #rechnung_ort {
    display: inline-block;
    vertical-align: top; }
  #step1 > div #rechnung_zip_in {
    width: 6em; }
  #step1 > div .disable label {
    color: #ccc; }
  #step1 > div .disable input {
    background-color: #f0f0f0;
    border: 1px solid #ccc; }

.summary {
  margin: 1.5em auto;
  border: 1px solid #ccc;
  padding: 1.5em;
  border-radius: 2px; }
  .summary h3 {
    text-align: left; }

.kurs2 {
  margin-bottom: 1.5em;
  border: 1px solid #ccc;
  padding: 1.5em;
  border-radius: 2px;
  display: grid;
  justify-items: stretch;
  align-items: stretch;
  gap: 1em; }
  .kurs2 h3 {
    text-align: left;
    margin: 0; }
  .kurs2 .tn {
    display: grid;
    grid-template-columns: 1fr 7em;
    gap: .25em 2em;
    align-items: center;
    justify-items: start;
    background-color: #e4e4e4;
    padding: 1em 1.5em;
    line-height: 1.25em; }
    .kurs2 .tn h4 {
      text-align: left;
      grid-column: span 2;
      justify-self: stretch;
      margin: 0;
      padding: 0; }
      .kurs2 .tn h4 small {
        display: block;
        font-size: .75em; }
    .kurs2 .tn .price, .kurs2 .tn .startdate2 {
      justify-self: end;
      text-align: right; }
    .kurs2 .tn span {
      font-size: .9em;
      line-height: 1.1em; }
  .kurs2 .tn2 {
    background-color: #e4e4e4;
    padding: 1em 1.5em;
    line-height: 1.25em; }
    .kurs2 .tn2 h4 {
      text-align: left;
      margin: 0 0 1em 0;
      padding: 0; }

.step2total {
  margin-bottom: 1.5em;
  display: grid;
  grid-template-columns: 1fr 8em;
  justify-items: stretch;
  align-items: stretch;
  gap: 1em 1.5em;
  font-weight: 600;
  border: 1px solid #ccc;
  padding: 1.5em;
  border-radius: 2px;
  background-color: #e4e4e4; }
  .step2total .preis {
    text-align: right;
    justify-self: end; }

#payments, #widerruf {
  margin-bottom: 1.5em;
  border: 1px solid #75b843;
  padding: 1.5em;
  border-radius: 2px;
  background-color: #C5E6AC;
  font-weight: 600; }
  #payments h3, #widerruf h3 {
    margin: 0 0 1rem 0; }
  #payments input, #widerruf input {
    accent-color: #0182b3; }

#widerruf {
  font-weight: normal; }
  #widerruf input {
    margin-top: 0.5em; }

#widerwrap {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.25em;
  justify-items: start;
  align-items: start; }

@media (max-width: 929px) {
  .kurs2 {
    grid-template-columns: 100%; } }
@media (min-width: 930px) {
  .kurs2 {
    grid-template-columns: 1fr 1fr; }
    .kurs2 h3 {
      grid-column: span 2;
      text-align: left; } }

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