:root {
  --red: rgb(205, 0, 0, 100%);
}

/******************************************************/
/* HEADER */
/******************************************************/

nav {
  width: 85%;
  float: left;
}

nav ul {
  list-style: none;
  padding: 0;
  overflow: hidden;
  text-align: center;
}

nav ul li {
  display: inline;
  float: left;
  position: relative;
  /*color: white;*/
}

nav ul li a {
  display: block;
  color: white;
  text-decoration: none;
  font-size: 30px;
  font-family: "SuisseIntl SemiBold";
  padding-top: 10px;
  padding-left: 0;
  padding-right: 30px;
  text-shadow: 0px 1px 2px black;
}

nav ul li a::after {
  float: left;
  background: none repeat scroll 0 0 transparent;
  bottom: 0;
  content: "";
  display: block;
  height: 3px;
  position: absolute;
  left: 0;
  background: var(--red);
  transition: width 0.3s ease 0s, left 0.3s ease 0s;
  width: 0;
}

nav ul li a:hover {
  color: var(--red);
  transition: color 0.3s;
}

nav ul li:not(:has(ul)):hover a::after {
  width: 20%;
  left: 0;
}

nav ul li ul {
  display: none;
  padding: 0;
}

nav ul li:hover ul {
  display: block;
}

nav ul li ul li {
  float: none;
  display: block;
  padding: 0;
  text-align: left;
}

nav ul li ul li a {
  font-size: 20px;
  padding-right: 0;
}


.page {
  position: relative;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}

.header-logo {
  height: 35%;
  width: 15%;
  float: left;
}

nav {
  width: 85%;
  float: left;
}

header {
  background-image: url(../images/header/CWP2095.jpg);
  height: 500px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 2%;
  border-bottom: 40px solid transparent;
  border-image: url(../images/toolbox/abteilung_strich_webseite.png) 100 100 round;
}

img#header-logo {
  height: 100%;
}

li#header-button {
  float: right;
}

button.header-button {
  color: white;
  background-color: transparent;
  text-decoration: none;
  border: 3px solid white;
  padding: 5px;
  font-size: 30px;
  font-family: "SuisseIntl SemiBold";
  text-shadow: 0px 1px 2px black;
}

button.header-button:hover {
  color: var(--red);
  transition: color 0.4s, border-color 0.4s;
  border-color: var(--red);
}

body {
  margin: 0;
}


/******************************************************/
/* FOOTER */
/******************************************************/

footer {
  padding: 4%;
  background-color: var(--red);
  border-image: url(../images/toolbox/abteilung_strich_webseite_rev.png) 100 100 round;
  border-top: 55px solid transparent;
  height: 350px;
}

.footer-col {
  float: left;
}

.footer-col#col1 {
  width: 25%;
}

.footer-col#col2 {
  width: 20%;
}

.footer-col#col3 {
  width: 20%;
}

.footer-col#col4 {
width: 35%;
float: right;
}