@font-face{
    font-family: dps;
    src: url('DINOffcPro.ttf');
}
@font-face{
    font-family: dps;
    src: url('DINOffcPro-Bold.ttf');
    font-weight: bold;
}
@font-face{
    font-family: dps;
    src: url('DINOffcPro-BoldItalic.ttf');
    font-weight: bold;
    font-style: italic;
}
@font-face{
    font-family: dps;
    src: url('DINOffcPro-Italic.ttf');
    font-style: italic;
}
@font-face{
    font-family: dps;
    src: url('DINOffcPro-Medium.ttf');
    font-style: bolder;
}
@font-face{
    font-family: dps;
    src: url('DINOffcPro-MediumItalic.ttf');
    font-style: bolder;
     font-style: italic;
}

body {
  background: #000001;
  color: white;
  font-family: dps;
}
#game {
  width:100%;
  display: flex;
  justify-content: center;
 
}
.limited {
  width:100%;
  display: flex;
  justify-content: center;
}
.innerLimited {
    max-width: 960px;
    position: relative;
    width: 100%;
}

#scrollableText {
}

.hiddenInitially {
    visibility: hidden;
}

iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  border: none;
    overflow: hidden;

}

#fullscreenWrapper {
    position: absolute;
    width: 100%;
    top: 0px;
    left: 0px;
    height: 100%;
}

#canvasWrapper {
	/*max-width: 960px;
	max-height: 540px;*/
	position: relative;
    width: 100%;
    aspect-ratio:4/3;
    overflow: hidden;
   /* padding-top: 56.25%; /* 16:9 Aspect Ratio */
}

#giftRegistration {
max-width: 768px;
background-image: url("background_tile.png");
/*background-image: url("form_sign.png");
width: 1003px;
height: 775px;
*/
}
#giftRegistration p {
    text-align: center;
}
#giftRegistration input {
  padding: 12px 20px;
  margin: 8px 0;
  display: inline-block;
  border-radius: 0px;
  font-size: 1em;
}

#webgame, #loadingScreen {
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    margin-top: 11%;
    width: 78%;
    height: 78%;
    position: absolute;
}

#underlay {
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5%;
    width: 90%;
    height: 90%;
    background-color: black;
    border: none;
    position: absolute;
}


#overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    pointer-events:none;
}

#backgroundAccent {
    border: none;
    background-color: #12ffcf;
    position: absolute;
    left:0;
    right:0;
    margin-left: auto;
    margin-right: auto;
}
p a:link {
    color: #BF40BF;
    text-decoration: none;
}
p a:visited {
    color: #BF40BF;
    text-decoration: underline;
}



#attribution {
    font-size: 0.85em;
    font-style:italic;
}

#giftRegistration input[type=submit] {
    border: none;
    background-color: #2aab91;
  color: white;
  padding: 16px 32px;
  text-decoration: none;
  margin: 4px 2px;
  cursor: pointer;
  width: 100%;

  border-radius: 4px;
}
button {
    border: none;
    background-color: white;
  color: black;
  padding: 16px 32px;
  text-decoration: none;
  margin: 60px 2px;
  cursor: pointer;
  width: 25%;

  border-radius: 4px;
}
.inputRow    {
    width: 100%;
}
.inputWrapper {
    float:left;
    padding: 8px;
}
.inputWrapper input {
    width: 100%;
}
#emailInputWrapper {
    width: 100%;
}
#firstNameInputWrapper, #lastNameInputWrapper {
    width: 50%;
}
#streetInputWrapper {
    width: 75%;
}
#houseNrInputWrapper {
    width: 25%;
}
#plzInputWrapper {
    width: 35%;
}
#cityInputWrapper {
    width: 65%;
}
.inputWrapper.check div,.inputWrapper.check input {
    float: left;
}
#giftRegistration #agb, #giftRegistration #newsletter {
    width: 30px;
    height: 30px;
    margin-right: 20px;
}
.disclaimer {
    width: 92%;
}
.disclaimer a {
    color: white;
}
#homeLink {
    color: white;
}

@media only screen and (max-width: 700px) {
    .disclaimer {
        width: 85%;
    }
}
@media only screen and (max-width: 500px) {
    .disclaimer {
        width: 70%;
    }
    #firstNameInputWrapper, #lastNameInputWrapper  {
        width: 50%;
    }
    #houseNrInputWrapper , #plzInputWrapper  {
        width: 40%;
    }
    #houseNrInputWrapper {
        width: 45%;
    }
    #streetInputWrapper, #cityInputWrapper  {
        width: 60%;
    }
    #streetInputWrapper {
        width: 55%;
    }
}
@media only screen and (max-width: 300px) {
    .disclaimer {
        width: 100%;
    }
    #firstNameInputWrapper, #lastNameInputWrapper , #streetInputWrapper, #houseNrInputWrapper , #plzInputWrapper, #cityInputWrapper  {
        width: 100%;
    }
}

#header {

}

#fullscreenButton {
    position: absolute;
    bottom: 3%;
    right: 3%;
    min-width: 80px;
    min-height: 80px;
    height: 20%;
    width: 20%;
}
#loadingScreen {
    object-fit: contain;
}


h1, h2, h3 {
  text-align: center;
  font-style: bold;
}
p {
  text-align: justify;
}
* {
  box-sizing: border-box;
}

.row::after {
  content: '';
  clear: both;
  display: table;
}

[class*='col-'] {
  float: left;
  padding: 15px;
}

.col-1 {
  width: 8.33%;
}
.col-2 {
  width: 16.66%;
}
.col-3 {
  width: 25%;
}
.col-4 {
  width: 33.33%;
}
.col-5 {
  width: 41.66%;
}
.col-6 {
  width: 50%;
}
.col-7 {
  width: 58.33%;
}
.col-8 {
  width: 66.66%;
}
.col-9 {
  width: 75%;
}
.col-10 {
  width: 83.33%;
}
.col-11 {
  width: 91.66%;
}
.col-12 {
  width: 100%;
}

#dpsLogo {
    float: left;
}

#dpsLogoWrapper {
    background: white;
    display: inline-block;
    padding: 1rem;
    border-radius:5px;
}


.socialLogo {
    /*float: right;*/
    filter: invert(100%);
    width: 2rem;
    height: 2rem;
    margin-left: 15px;
}



#footer {
    background: #ff0fe6;
	color: white;
    margin-top: 1rem;
   /* position: fixed; */
   left: 0;
   bottom: 0;
   width: 100%;
}
@media only screen and (max-height: 600px) {
   h1 {
    margin: 0px;
   }
}
@media only screen and (max-height: 600px) and (max-width: 600px) {
    #footer {
        position: static;
   }
}

@media only screen and (max-height: 300px) {
    #footer {
        position: static;
   }
}


.footerLinkWrapper {
    float: left;
    display: inline-block;
   /* width: 16.66%;*/
    padding: 20px;
}
#footer a {
/*width: 100%;
    */
    margin: 5px;
    text-decoration: none;
    font-weight: bold;
}

/* unvisited link */
#footer a:link {
  color: white;
}

/* visited link */
#footer a:visited {
  color: white;
}

.socialWrapper {
      float: right;
      /*width: 50%;*/
    padding: 15px;
}


@media only screen and (max-width: 768px) {
  /* For mobile phones: */
  [class*="col-"], .footerLinkWrapper, .socialWrapper {
    width: 100%;
  }
  .socialWrapper {
  width: 100%;
  float: left;
  /*
        display: flex;
  flex-direction: row-reverse;

  justify-content : flex-start;
*/
  }
  #footer a {}

}
@media only screen and (max-width: 500px) {
    h1 {
        font-size: 1.5em;
    }
    h2 {
        font-size: 1.2em;
    }
}

@media only screen and (max-height: 840px) {
    body:has(#formRow) > #footer {
        position: static;
    }
}

#logoutButton {
    float: right;
    width: 100%;
    margin-top: 20px;
}
#csvDownload {
    text-decoration: none;
    padding: 16px;
    border-radius: 4px;
    background: white;
    color: black;
}
table {
    margin-bottom: 150px;
}

td, th {
    border: 1px solid #ddd;
    padding: 8px;
}
#warning {
    color: #d70512;
}
.levelCount {
    text-align: right;
}