html, body {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  min-height: 100vh;
  width: 100%;
}

* {
    -webkit-tap-highlight-color: transparent; /* Entfernt den blauen Tap-Effekt auf mobilen Geräten */
}

body {
  font-family: "Montserrat", sans-serif;
  color: white;
  background-color: rgb(20, 20, 20);
}

html::-webkit-scrollbar {
  width: 12px;
}

html::-webkit-scrollbar-track {
  background: linear-gradient(180deg, #3a3a3a, #3a3a3a); /* Gradient für die Scrollspur */
  border-radius: 10px; /* Abgerundete Ecken */
}

html::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #2C2C2C, #181818); /* Farbverlauf für die Scrollbar */
  border-radius: 10px; /* Abgerundete Ecken der Scrollbar */
  border: 2px solid #202020; /* Rand für bessere Trennung */
  transition: 0.3s ease; /* Sanfter Übergang */
}

html::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #2C2C2C, #181818); /* Hover-Farbverlauf */
}

nav{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 66px;
    margin-top: 20px;
}

nav a{
    text-decoration: none;
    color: white;
    font-size: 20px;
    font-weight: 600;
    transition: 0.3s;
}

nav a:hover{
    transform: scale(1.1);
}

  .Uberschrift{
    width: 100%;
    display: flex;
    text-align: center;
    align-items: center;
    margin: 40px auto;
    color: #e84c43;
    margin-top: 90px;
    font-size: 2em;
  }

  .Uberschrift h1{
    width: 100%;
    text-align: center;
  }

.Uberschrift span{
	color: white;
}

  .Content-Kontakt {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    padding: 20px;
}

.TextBox,
.Telefon-Kontakt {
    width: 48%; /* Beide Boxen nehmen jeweils 48% der Breite ein */
    max-width: 600px; /* Maximale Breite auf großen Bildschirmen */
    min-width: 300px; /* Mindestbreite, um zu verhindern, dass sie zu klein werden */
    box-sizing: border-box; /* Sorgt dafür, dass Padding/Border die Breite nicht überschreiten */
    text-align: center; /* Zentriert den Text */
}

.kontakt-holder{
  display: flex;
  position: relative;
  width: 100%;
  justify-content: center;
  align-items: center;
  display: flex;
  flex-direction: column;
  margin-bottom: 50px;
}

.Telefon-Kontakt {
  width: 40%; 
  text-align: left;
  padding-left: 50px;
}

.Telefon-Kontakt h2{
    margin: 0;
    color: #e84c43;
}

.Telefon-Kontakt .E-Mail-Design{
    margin-top: 70px;
}

.TextBox {
  width: 40%;
  box-sizing: border.box;
}

.TextBox form{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; 
  gap: 20px;
}

.inputBox.Nachricht span {
  position: absolute;
  left: 10px;
  top: 10px;
  transform: none;
  pointer-events: none;
  font-size: 1em;
  color: rgba(255, 255, 255);
  text-transform: uppercase;
  transition: 0.5s;
  background: rgb(20, 20, 20);
  padding: 0 5px;
}

/* Animation für den textarea */
.inputBox.Nachricht textarea:focus ~ span,
.inputBox.Nachricht textarea:valid ~ span {
  color: black;
  transform: translateX(4px) translateY(-16px);
  font-size: 0.7em;
  padding: 0 10px;
  background: rgb(20, 20, 20);
  border-right: 1px solid #e84c43;
  border-left: 1px solid #e84c43;
  letter-spacing: 0.2em;
  background: #e84c43;
}

/* Styling und Fokuszustand für den textarea */
.inputBox.Nachricht textarea:focus,
.inputBox.Nachricht textarea:valid {
  border: 1px solid #e84c43;
}

.inputBox{
    position: relative;
    width: 300px;
}

.inputBox textarea {
  position: relative;
  width: 100%;
  padding: 10px;
  border: 1px solid rgb(63, 63, 63);
  background: rgb(20, 20, 20);
  border-radius: 5px;
  outline: none;
  color: white;
  font-size: 1.5em;
  overflow-y: auto;
  height: 100px;
  resize: none;
}

textarea::-webkit-scrollbar {
  width: 12px; /* Breite der Scrollbar */
}

textarea::-webkit-scrollbar-track {
  background: #333; /* Hintergrund der Scrollbar-Spur */
}

textarea::-webkit-scrollbar-thumb {
  background-color: #e84c43; /* Farbe der Scrollbar */
  border-radius: 6px; /* Abgerundete Ecken der Scrollbar */
  border: 2px solid #333; /* Rand um die Scrollbar, damit sie sich vom Hintergrund abhebt */
}

textarea::-webkit-scrollbar-thumb:hover {
  background-color: #e84c43; /* Hover-Farbe für Scrollbar */
}

.inputBox input{
    width: 100%;
    padding: 10px;
    border: 1px solid rgb(63, 63, 63);
    background: rgb(20, 20, 20);
    border-radius: 5px;
    outline: none;
    color: white;
    font-size: 1.5em;
    transition: 0.5s;
}

.inputBox span{
    position: absolute;
    left: 0;
    top: 50%;
    padding: 10px;
    transform: translateY(-50%);
    pointer-events: none;
    font-size: 1em;
    color: rgba(255, 255, 255);
    text-transform: uppercase;
    transition: 0.5s;
}

.inputBox input:valid ~ span,
.inputBox input:focus ~ span{
    color: black;
    transform: translateX(14px) translateY(-32px);
    font-size: 0.7em;
    padding: 0 10px;
    background: rgb(20, 20, 20);
    border-right: 1px solid #e84c43;
    border-left: 1px solid #e84c43;
    letter-spacing: 0.2em;
    background: #e84c43;
}

.inputBox input:valid,
.inputBox input:focus{
    border: 1px solid #e84c43;
}

.Btn-Senden {
  width: 150px; /* Breite des Buttons */
  padding: 7px 0px; /* Innenabstand für besseren Look */
  font-size: 1em; /* Größere Schrift für bessere Sichtbarkeit */
  background-color: #e84c43; /* Auffällige Hintergrundfarbe */
  color: white; /* Weiße Schriftfarbe */
  border: none;
  border-radius: 5px; /* Abgerundete Ecken */
  cursor: pointer; /* Cursor als Zeiger */
  transition: background-color 0.3s ease; /* Sanfter Hover-Effekt */
  text-align: center; /* Zentriert den Button innerhalb der TextBox */
  margin-right: 0;
  transition: 0.3s;
}

.Btn-Senden:hover {
  background-color: #e84c43;
  transform: scale(1.1);
}
 
  
  .contactform-input::placeholder,
  .NachrichtCode::placeholder {
    color: white;
  }
  
  .NachrichtCode{
    height: 100px;
  }
  

  .dsgvo-checkbox-container {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 20px;
    position: relative;
    max-width: 500px;

}

.dsgvo-checkbox {
    appearance: none;
    background-color: #e84c43;
    border: 2px solid #e84c43;
    width: 20px;
    height: 20px;
    border-radius: 5px;
    position: relative;
    cursor: pointer;
    transition: 0.3s;
}

.dsgvo-checkbox:checked {
    background-color: #e84c43;
}

.dsgvo-checkbox:checked::before {
    content: "✔";
    font-size: 14px;
    color: white;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.dsgvo-checkbox:hover {
    border-color: #e84c43;
}

.dsgvo-label {
    color: white;
    margin-left: 10px;
    font-size: 1em;
    width: 100%;
    text-align: start;
}




  @media (max-width: 450px) {
    body{
    	max-width: 450px;
    }
    
    nav {
        flex-direction: column;
    }
  
    nav a {
        font-size: 16px;
        margin: 10px 0;
    }
  	.Content-Kontakt {
      min-width: 0;
	}
    .Telefon-Kontakt {
      padding-left: 0;
}
}




@media (max-width: 768px) {
  .TextBox {
    flex-direction: column;
    align-items: center;
  }

  .Content-Kontakt {
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 30px;
  }

  .Telefon-Kontakt{
    align-items: center;
    justify-content: center;
    text-align: center;
    padding-left: 0px;
  }

}  


