@font-face {
  font-family: "Open Sans";
  src: url("../fonts/OpenSans-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "Open Sans";
  src: url("../fonts/OpenSans-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: "Open Sans";
  src: url("../fonts/OpenSans-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}

:root{
  --color-orange: #e45434;
  --color-green:  #249773;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    line-height: 1.4;
}

body {
    font-family: "Open Sans", Arial, sans-serif;
    display: block;
    margin: 0;
}

.full-page-wrapper {
    background: url("images/hintergrund-open.webp") center center / cover no-repeat fixed;
    min-height: 100vh;
    padding: 50px 0;
}

.startseite { margin-top: 150px; }

p { 
    margin-bottom: 15px;
    hyphens: auto;
}

ul { margin-left: 15px; }

a {
    color: var(--color-orange);
    font-weight: 600;
}

a:hover, 
a:focus-visible {
    background-color: var(--color-orange);
    color: #fff;
    text-decoration: none;  
}

.container {
    position: relative;
    display: block;
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
}

.content {
    position: relative;
    background-color: rgba(255, 255, 255, 0.9);
    min-height: 100px;
    padding: 50px 125px 25px 125px;
}

/* Header */

header {
    margin-bottom: 50px;
}

header .logo {
    width: 400px;
    height: auto;
}

/* Überschriften */

h1 {
    color: #000;
    font-size: 40px;
    margin-bottom: 30px;
}

h2 {
    color: var(--color-orange);
    font-size: 32px;
    margin-top: 50px;
    margin-bottom: 25px;
}

h3 {
    color: var(--color-orange);
    font-size: 28px;
    margin-top: 30px;
    margin-bottom: 20px;
}

h1.border {
    padding-bottom: 30px;
    border-bottom: 2px solid var(--color-orange);
}

/* Inhalt & Kontaktbereicht */

.contentInner {
    display: flex;
    flex-direction: row;
    margin-bottom: 50px;
}

.contact { width: 75%; }

.contactTitle { font-weight: 600; }

.contactInner { display: flex; }

.contactInner p { width: 50%; }

.externLink {
    width: 25%;
    align-content: end;
    text-align: end;
    margin-bottom: 15px;  
}

/* Button */

.btn {
    background-color: var(--color-green);
    color: #fff;
    padding: 7px 12px;
    text-decoration: none;
    border-radius: 8px;
    font-weight: 400;
}

.btn img {
    position: relative;
    filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(139deg) brightness(103%) contrast(101%);
    width: 16px;
    height: auto;
    top: 1px;
}

/* Footer */

footer {
    display: flex;
    justify-content: space-between;
}

.menuBottom ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.menuBottom li { margin-left: 15px; }

/* responsive Ansichten */

@media (max-width: 991px) {
    header .logo { width: 300px; }
    .content { padding: 50px 50px 25px; }
    .contentInner { flex-direction: column; }
    .contactInner p { width: 100% }
    .contact, .externLink { width: 100% }
    .externLink { text-align: start; }
}

@media (max-width: 767px) {
    header .logo { width: 250px; }
    h1 { font-size: 30px; }
    h2 { font-size: 25px; }
    h3 { font-size: 22px; }
    .contactInner { flex-direction: column; }
    .content { padding: 50px 30px 25px; }
}

@media (min-width: 768px) {
    .container {
        max-width: 750px;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 970px;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1070px;
    }
}
