
*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Montserrat", sans-serif;
  color: #31525b;
}

body{
  background-color: #9dbca680;
}

.kontakt {
  padding: 4em 1em;
  background-color: #9dbca680;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.kontakt h1{
  margin-bottom: 1em;
  font-size: 2.5rem;
}
.kontakt p{
  font-size: 1.5rem;
  max-width: 75rem;
}

.kontakt .mein-kontakt {
  display: flex;
  gap: 2em;
  flex-wrap: wrap;
  justify-content: center;
  justify-items: center;
}
.custom-select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0.75em 2.5em 0.75em 0.75em;
  cursor: pointer;
}
.select-wrapper {
  position: relative;
  width: 100%;
}

.select-wrapper::after {
  content: "▾";
  font-size: 1rem;
  color: #50424b;
  position: absolute;
  top: 40%;
  right: 0.75em;
  transform: translateY(-50%);
  line-height: 1;
  pointer-events: none;
}

.formular {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 2em auto;
  padding: 1em;
  gap: 1rem;
  border-radius: 20px;
  width: 90%;
  max-width: 100rem;
  background-color: white;
  color: #50424b;
}

/* Grid für Eingabefelder */
.row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  width: 100%;
}

/* Eingabezeilen */
.email,
.telefon,
.vorname,
.nachname {
  width: 100%;
}

/* Thema nimmt ganze Zeile */
.thema {
  grid-column: 1 / -1;
  width: 100%;
}

label[for="Kundenkontakt"]{
  margin-top: 2em;
}

/* Formularelemente */
input[type="email"],
input[type="text"],
input[type="tel"],
textarea,
select {
  font-size: 1rem;
  width: 100%;
  box-sizing: border-box;
  height: 54px;
  margin: 0 0 1em 0;
  padding: 6px 10px;
  background-color: #9dbca65c;
  border: 1px solid #D1D1D1;
  border-radius: 4px;
  appearance: none;
  color: #50424b;
}

textarea {
  min-height: 125px;
  padding-top: 1em;
  padding-bottom: 6px;
}

/* Fokus-Stil */
input:focus,
textarea:focus,
select:focus {
  border: 1px solid #9dbca65c;
  outline: 0;
}
input:-webkit-autofill {
  background-color: #9dbca65c !important;
  -webkit-box-shadow: 0 0 0 1000px #9dbca65c inset !important;
  color: #50424b !important;
}


/* Labels */
label {
  display: block;
  font-weight: 600;
  font-size: 1.5em;
  margin-bottom: 0.5em;
}

/* Checkbox-Zeile */
.example-send-yourself-copy {
  display: flex;
  align-items: center;
  gap: 0.5em;
  margin: 1em 0;
  font-size: 1em;
}

.example-send-yourself-copy input[type="checkbox"] {
  width: 1rem;
  height: 1rem;
}
.example-send-yourself-copy input[type="checkbox"]:checked {
 accent-color: #31525b;
}


/* Senden-Button */
.button-primary {
  padding: 0.75em 2em;
  font-size: 1rem;
  font-weight: bold;
  color: white;
  background-color: #e3c080;
  border: none;
  border-radius: 20px;
  cursor: pointer;
  align-self: center;
  width: 100%;
  margin-left: 0;
  transition: background-color 0.2s ease;
}

.button-primary:hover {
  transform: scale(105%);
}
.button-primary:active {
  transform: scale(100%);
}

@media (max-width: 768px) {
  h1{
    font-size: 1.986rem;
  }
  .kontakt p{
    font-size: 1rem;
    padding: 0 1em;
  }
  .row {
    grid-template-columns: 1fr;
  }

  .button-primary {
    align-self: center;
    width: 100%;
    margin-left: 0;
  }

  input,
  select,
  textarea {
    font-size: 1rem;
  }
  .example-send-yourself-copy {
    font-size: 0.7em;
  }
  .example-send-yourself-copy input[type="checkbox"] {
  width: 0.5rem;
  height: 0.5rem; 
  }
  .button-primary {
    font-size: 1rem;
  }
}