/*
 * Globals
 */

/* Links */
a {
  color: #bd6734;
}


a:focus,
a:hover {
  color: #bd6734;
}

/* Custom default button */
.btn-secondary,
.btn-secondary:hover,
.btn-secondary:focus {
  color: #333;
  text-shadow: none; /* Prevent inheritance from `body` */
  background-color: #fff;
  border: .05rem solid #fff;
}

h1 {
  font-size: 2.3rem;
  color: #bd6734;
  text-shadow: 1px 1px 2px #5a5a5a;
}

h2 {
  text-shadow: 1px 1px 2px #5a5a5a;
  color: #444444;
}

.lead strong {
  font-weight: bold;
}
/*
 * Base structure
 */

main {
  padding-top: 50px !important;
  padding-bottom: 150px  !important;
}

html {
  height: 140%;
}

html,
body {
  height: 100%;
  font-family: 'open sans';
}

body {
  display: -ms-flexbox;
  display: flex;
  text-shadow: 0 .05rem .1rem rgba(0, 0, 0, .5);
  box-shadow: inset 0 0 5rem rgba(0, 0, 0, .5);
}

.lead {
  font-size: 1.06rem;
  font-weight: 300;
  line-height: 1.7rem;
}

.sponsors {
  padding: 0 0 20px 24px;
}

.sponsor {
  border-bottom: 1px solid #efefef;
  font-size: 0.8rem;
  padding: 5px 0 5px 15px;
}

.sponsor strong {
  font-size: 0.9rem;
}


.price {
  margin-bottom: 30px;
}

.price-image {
  width: 100%;

}

.modal-backdrop {
  z-index: -1;
}

.modal-dialog {
  bottom: 6%;
  left: 50%;
  transform: translateX(-50%) !important;
  width: 90vw;
  position: fixed;
  max-width: 800px;
}

.modal-body {
  max-height: 500px;
  text-align: left;
}

.modal-body p {
  text-shadow: none;
  font-size: 0.9rem;
}


.teilnahmeschluss {
  font-size: 0.8rem;
  right: 15px;
  bottom: -20px;
  position: absolute;
}

.btn-primary {
  margin-bottom: 20px;
}

form.needs-validation .error {
  color: red;
}
form.needs-validation .error  label {
  border-color: red !important;
}
form.needs-validation .error  input {
  border-color: red !important;
}
/*
 * Header
 */

@media (min-width: 48em) {
  .masthead-brand {
    float: left;
  }
  .nav-masthead {
    float: right;
  }
}


/*
* Anmeldeformular
*/
.register-form {
  background: white;
  border-radius: 20px;
  padding: 35px 20px;
  text-shadow: none;
  text-align: left;
  color: #2b2a2a;
  box-shadow: 4px 5px 10px 3px #00000047;
}

.form-control {
  border: 1px solid #c1c1c1;
}

.custom-control-input:checked~.custom-control-label::before {
  color: #fff;
  border-color: #bd6734;
  background-color: #bd6734;
}

.custom-control-input:focus~.custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgb(255 0 47 / 25%);
}

.register-form input::placeholder {
  color: rgb(153, 153, 153);
}

body {

}

.appcontainer {
  position: absolute;
  background-color: rgba(255, 255, 255, 0.7);
  background: url('img/photo-1608540785670-ca95ba7ae20f.jpg') no-repeat center center fixed;
  backdrop-filter: brightness(0.5);
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  top: 0;
  right 0;
  left: 0;
  bottom 0;
  width: 100%
}


.form-control:focus {
  border-color: #bd6734 !important;
  box-shadow: 0 0 0 0.2rem rgb(232 42 121 / 50%);
}

.custom-select:focus{
  border-color: #bd6734 !important;
  box-shadow: 0 0 0 0.2rem rgb(232 42 121 / 50%);
}

.custom-select option:scope,
.custom-select option:focus,
.custom-select option:active,
.custom-select option:checked,
.custom-select option:hover {
  background-color:  rgb(232 42 121 / 50%) !important;
  
}

.container-first {
  padding-bottom: 30px;
}

.container-second {
}

.custom-checkbox label {
  font-size: 0.85rem;
  padding-bottom: 5px;
}

.custom-control-label::before {
  top: .2rem !important;
}


.custom-control-label::after {
  top: .2rem !important;
}

/*
 * Cover
 */
.cover {
  padding: 0 1.5rem;
}
.cover .btn-lg {
  padding: .75rem 1.25rem;
  font-weight: 700;
}

.page-holder {
  min-height: 100vh;
}

.bg-cover {
  background-size: cover !important;
}

.custom-control-input:focus:not(:checked)~.custom-control-label::before {
  border-color: #bd6734ad;
}

.btn-primary,
.btn-primary.active {
  color: #fff;
  background-color: #bd6734;
  border-color: #bd6734;
}

.btn-primary:hover {
  color: #fff;
  background-color: #d3753e !important;
  border-color: #d3753e !important;
}

.btn-primary.focus, .btn-primary:focus {
  color: #fff;
  background-color: #bd6734 !important;
  border-color: #bd6734 !important;
  box-shadow: 0 0 0 0.2rem rgb(232 42 121 / 50%);
}

footer {
  box-shadow: 1px 1px 10px 0px #505050;
  z-index: 50;
  text-shadow: none;
  position: fixed;
  height: 75px;
  bottom: 0;
  width: 100%;
  background: white;
}

footer nav {
  padding-top: 10px;
  font-size: 0.9rem;
  font-weight: bold;
}
footer nav a{
  color: #bd6734;
}
footer nav a:hover {
  color: #bd6734;
}

footer .verantstalter-text {
  font-size: 0.8rem;
}

footer nav a:hover {
  color: #bd6734;
}


@media screen and (min-width: 1401px) {
  .cover-container {
    max-width: 70vw;
  }
}

@media screen and (min-width: 1200px)  and (max-width: 1400px){
  .cover-container {
    max-width: 85vw;
  }
}

@media screen and (min-width: 769px) and (max-width: 1199px) {
  .cover-container {
    max-width: 88vw;
  }
}

@media screen and (max-width: 768px) {
  h1 {
    font-size: 1.6rem;
  }

  .btn-primary {
    font-size: 0.9rem !important;
  }

  .register-form {
    box-shadow: none !important;
  }
  main {
    padding: 0px 10px !important;
  }
  .h4, h4 {
    font-size: 1.3rem;
    text-align: center;
  }

  .cover-container {
    max-width: 100vw;
    padding-bottom: 50px  !important
  }

  form {
    padding-bottom: 20px;
  }

  .teilnahmeschluss {
    text-align: center;
  }

  footer {
    position: relative !important;
    height: auto !important;
  }
}