body {
  margin: 1px auto;
  min-height: 100vh;
  font-family: Verdana, sans-serif;
}

div {
  margin-left: 10%;
  max-width: 80%;
  display: grid;
  grid: "head head" "nav nav" "main main" "foot foot" / 1fr;
}

header,
nav,
main,
footer {
  margin-left: 10px;
  margin-right: 10px;
  border-color: rgb(255,255,255);
  border-left: 1px solid;
  border-right: 1px solid;
}

nav,
main {
  border-radius: 0 0 0 0;
  background: rgb(255,255,255);
}

header {
  border-radius: 1.5em 1.5em 0 0;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  margin-top: 10px;
  height: auto;
  min-height: 5em;
  background-image: linear-gradient(42deg, transparent, blue);
  background-origin: padding-box;
  grid-area: head;
}

nav {
  padding: 0.5em;
  font-size: 1.25em;
  text-align: right;
  grid-area: nav;
}

main {
  background-size: cover;
  background-repeat: no-repeat, no-repeat;
  background-clip: border-box;
  grid-area: main;
}

footer {
  margin-bottom: 10px;
  border-radius: 0 0 1.5em 1.5em;
  border-bottom: 1px solid;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  grid-area: foot;
}

h1 { font-size: auto; color: rgb(255,255,255); text-align: center; }

nav a { text-align: left; text-decoration: none;}
nav a:link { color: rgb(0,0,0); }
nav a:visited { color: rgb(125,101,60); }
nav a:active { color: rgb(0,0,0); }
nav a:hover{ color: rgb(0,0,255); text-decoration: underline; }

#main_home {
  background-size: 100% 100%;
  background-repeat: no-repeat, no-repeat;
  background-clip: border-box;
  height: auto;
  min-height: 500px;
  background-image: url("1.jpg");
}

#main_impressum,
#main_ds {
  background-size: 100% auto;
  background-repeat: round;
  background-clip: border-box;
  background-attachment: fixed;
  height: auto;
  min-height: 500px;
  padding-left: 5%;
  padding-right: 5%;
  background-image: url("2.jpg");
}

#main_contact {
  background-size: 100% 100%;
  background-repeat: round;
  background-clip: border-box;
  height: auto;
  min-height: 500px;
  background-image: url("3.jpg");
}


#main_home #p_main1, #main_home #p_main2 { color: rgb(255,236,139); padding-left: 5%; }

#main_home #p_main1 { font-size: 2em; text-shadow: 10px 10px 20px black; }
#main_home #p_main2 { font-size: 1.25em; }
#main_home ul { padding-left: 7%; }
#main_home li { color: rgb(248,248,255); font-size: 2em; text-shadow: 10px 10px 20px black; }

#main_impressum h1, #main_ds h1 { font-size: 2em; color: rgb(0,0,0); text-align: left; padding-right: 30% }
#main_impressum h2, #main_ds h2 { font-size: 1.25em; color: rgb(0,0,0); text-align: left; padding-right: 30% }
#main_impressum p, #main_ds p { font-size: 1em; color: rgb(0,0,0); text-align: left; padding-right: 30%}
#main_impressum a, #main_ds a { font-size: 1em; color: rgb(0,0,0); text-align: left; padding-right: 30% }

#main_impressum a:link { color: rgb(255,0,0); }
#main_impressum a:visited { color: rgb(125,101,60); }
#main_impressum a:active { color: rgb(255,0,0); }
#main_impressum a:hover { color: rgb(0,0,255); text-decoration: underline;}

#main_ds a:link { color: rgb(255,0,0); }
#main_ds a:visited { color: rgb(125,101,60); }
#main_ds a:active { color: rgb(255,0,0); }
#main_ds a:hover { color: rgb(0,0,255); text-decoration: underline;}

#main_contact h1 { font-size: 2em; color: rgb(255,255,255); text-shadow: 10px 10px 20px rgb(255,255,0); text-align: center; padding-top: 1%;}
#main_contact h2 { font-size: 1.25em; color: rgb(255,255,255); text-align: left; text-decoration: underline; padding-left: 25% }
#main_contact p { font-size: 1em; color: rgb(255,255,255); text-align: left; padding-left: 25%}
#main_contact a { font-size: 1em; color: rgb(255,255,255); }

#main_contact a:link { color: rgb(255,255,255); }
#main_contact a:visited { color: rgb(255,245,238); }
#main_contact a:active { color: rgb(255,255,255); }
#main_contact a:hover { color: rgb(255,255,0); text-decoration: underline; }

#p_main3 { color: rgb(0,0,0); font-size: 1.5em; text-align: center; }
#mytable { padding-left: 20%; padding-right: 20%; padding-bottom: 1%; }
#mytable_td1 { padding-right: : 5px;vertical-align: middle; text-align: right; color: rgb(0,0,255); }
#mytable_td2 { padding-left: 10px; vertical-align: middle; text-align: left; color: rgb(0,0,255); }
#mytable_td1 a, #mytable_td2 a { font-size: 1.5em; color: rgb(0,0,255); text-decoration: none; }
#mytable_td1 a:link, #mytable_td2 a:link { color: rgb(0,0,255); }
#mytable_td1 a:visited, #mytable_td2 a:visited { color: rgb(255,255,222); }
#mytable_td1 a:active, #mytable_td2 a:active { color: rgb(0,0,0); }
#mytable_td1 a:hover, #mytable_td2 a:hover { color: rgb(255,0,0); text-decoration: underline; }

#fusszeile1 { font-size: 1em; text-align: center; }
#fusszeile2 { font-size: 1.25em; text-align: right; }
#fusszeile1 a { text-align: left; text-decoration: none;}
#fusszeile1 a:link { color: rgb(0,0,0); }
#fusszeile1 a:visited { color: rgb(125,101,60); }
#fusszeile1 a:active { color: rgb(0,0,0); }
#fusszeile1 a:hover{ color: rgb(0,0,255); text-decoration: underline; }
