* {
  box-sizing: border-box;
}

body {
    background-color: black;
    background-image: url(img/background3.png); 
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0;
    min-height: 100vh;
}

.grid-container {
  display: grid;
  grid-template-areas:
  'header'
  'main';
  gap: 10px;
  align-items: center;
  text-align: center;
  min-height: 100vh;
  grid-template-rows: auto 1fr;
}

.header {
  grid-area: header;

  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;

  gap: 20px;
  padding: 15px;

  background-image: repeating-linear-gradient(red, yellow 10%, green 20%);
  opacity: 90%;
  font-family: "audiowide", sans-serif;
  font-size: clamp(1.2rem, 4vw, 3.125rem);
  text-align: center;
}

.header a{
  text-decoration: none;
  padding: 0;
  color: #a200ff;
}

.header p{
margin: 0;
}

.header p:hover{
color: rgb(9, 10, 9);
font-weight: bolder;
text-shadow: 0 0 3px #00ff2a, 0 0 5px #078a18;
}


.main {
grid-area: main;

display: flex;
flex-direction: column;
align-items: center;

width: 100%;
padding: 20px;
color: rgb(0, 0, 0)    ;
}


#dir-kont {
  color: #000000;
}

.privacy-notice {
  width: min(100%, 30rem);
  margin: 1rem auto;
  padding: 0.5rem;
  background-color: white;
  border: 1px solid black;
}


legend {
  color: rgb(0, 0, 0);
  font-size: clamp(2.5rem, 10vw, 6.25rem);
  font-family:"audiowide", sans-serif;
  text-shadow: -2px -2px 0 #a200ff, 2px -2px 0 #a200ff,  -2px 2px 0 #a200ff, 2px 2px 0 #a200ff;
  text-align: center;
  width: 100%;
  margin: 20px 0;
}

.kontakt-area {
  background: radial-gradient(circle, #fc5c7d 0%, #6a82fb 100%);
  border: solid 1px black;
}


form {
  width: min(90%, 800px);
  margin: 0 auto;
  padding-bottom: 2em;
}

fieldset {
  border: none;
  padding: 2rem clamp(0.75rem, 4vw, 2rem);
  border-bottom: 3px solid #ffffff;
}
fieldset:last-of-type {
  border-bottom: none;
}

label {
  display: block;
  margin: 0.5rem 0;
}

input,
textarea,
select {
  width: min(100%, 30rem);
  min-height: 2em;
  margin-top: 10px;
  font: inherit;
}

textarea {
  resize: vertical;
}

input, textarea {
  background-color: #ffffff;
  border: 1px solid #000000;
  color: #000000;
}

.inline {
  width: unset;
  margin: 0 0.5em 0 0;
  vertical-align: middle;
}

button[type="submit"] {
  display: block;
  width: min(100%, 20rem);
  min-height: 2.5rem;
  margin: 1rem auto;
  font-size: 1.1rem;
  background-color: #3b3b4f;
  border: 1px solid white;
  color: white;
}

input[type="file"] {
  width: min(100%, 30rem);
  padding: 0.25rem;
}

@media (max-width: 600px) {
  .header {
    gap: 10px;
    padding: 10px;
  }

  .main {
    padding: 10px;
  }

  h1 {
    margin: 10px 0;
  }
}