/* Stockholm extension, https://github.com/datenstrom/yellow-extensions/tree/master/source/stockholm */

/* Colors and fonts */

:root {
  --font: "Open Sans", Helvetica, sans-serif;
  --color-white: #f3f3f3;
  --color-black: #000000;
  --color-main: #981212;
  --color-biber: #960;
  --color-wiwoe: #f7e400;
  --color-gusp: #009960;
  --color-caex: #353990;
  --color-raro: #ce0026;
  --color-team: #ff9900;
  --color-gray: #cdcaca;
  font-family: var(--font);
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  background-color: var(--color-main);
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(gertrud-opensans-light.woff) format("woff");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(gertrud-opensans-regular.woff) format("woff");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(gertrud-opensans-bold.woff) format("woff");
}

.content img {
  max-width: 100%;
  height: auto;
}

header {
  padding: 0;
  position: sticky;
  top: 0;
  width: 100vw;
  height: 150px;
  color: var(--color-white);
  background-color: var(--color-main);
}

header .header-icon {
  position: relative;
  top: 0;
}

img.main_img {
  max-height: 50vh;
  width: auto;
}
nav ul {
  list-style: none;
  display: flex;
  justify-content: space-between;
}

header a {
  color: var(--color-white);
  text-decoration: none;
}

header a:hover {
  text-decoration: underline;
}

nav li a {
  padding: 10px;
  font-size: 1.2em;
}

main {
  min-height: calc(100vh - 500px);
  background-color: var(--color-white);
  color: var(--color-black);
}

footer {
  background-color: var(--color-black);
  color: var(--color-white);
  padding: 20px;
  height: 350px;
  display: grid;
  grid-template: "footer-left footer-right" / 3fr 1fr;
}

footer ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  height: calc(350px - 72px);
  justify-content: left;
  align-items: flex-start;
  align-content: stretch;
}

footer a {
  color: var(--color-white);
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
}

img.icon {
  width: 200px;
  height: 200px;
}

.card {
  height: 200px;
  background-color: var(--color-accent, var(--color-gray));
  color: var(--color-accent-fg, var(--color-black));
  display: flex;
  justify-content: space-between;
}

.card img {
  object-fit: cover;
}

.biber {
  --color-accent: var(--color-biber);
  --color-accent-fg: var(--color-white);
}
.wiwoe {
  --color-accent: var(--color-wiwoe);
  --color-accent-fg: var(--color-black);
}

.gusp {
  --color-accent: var(--color-gusp);
  --color-accent-fg: var(--color-white);
}

.caex {
  --color-accent: var(--color-caex);
  --color-accent-fg: var(--color-white);
}

.raro {
  --color-accent: var(--color-raro);
  --color-accent-fg: var(--color-white);
}

.team {
  --color-accent: var(--color-team);
  --color-accent-fg: var(--color-black);
}

.header-img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.stufe .intro {
  padding: 20px;
  background-color: var(--color-accent);
  color: var(--color-accent-fg);
}

main .content {
  padding: 20px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 20px;
}

.content > *.full {
  grid-column: 1 / span 6;
}

.content > *.half {
  grid-column: span 3;
}

.content > *.third {
  grid-column: span 2;
}

.content > *.notice1 {
  grid-column: 1 / span 6;
}

.notice1 {
  background-color: #cb444a;
  color: var(--color-white);
  padding: 20px;
}

a.wrapp-div {
  display: block;
  text-decoration: none;
}

.card-body {
  padding: 20px;
}

.card-person {
  height: 400px;
}

.stufen-content {
  padding: 20px;
}

@media screen and (max-width: 1000px) {
  .content > *.full {
    grid-column: 1 / span 6;
  }

  .content > *.half {
    grid-column: 1 / span 6;
  }

  .content > *.third {
    grid-column: span 3;
  }

  .content > *.notice1 {
    grid-column: 1 / span 6;
  }
}

#stufen {
  scroll-padding-top: 150px;
}

dt {
  float: left;
  clear: left;
  width: 100px;
  text-align: right;
  font-weight: bold;
}
dt::after {
  content: ":";
}
dd {
  margin: 0 0 0 110px;
  padding: 0 0 0.5em 0;
}
