/* Global CSS */

@font-face {
  font-family: "Merriweather-Regular";
  src: url('/theme/fonts/Merriweather-Regular.ttf');
}

@font-face {
  font-family: "Merriweather-LightItalic";
  src: url('/theme/fonts/Merriweather-LightItalic.ttf');
}
.spacer-v-5 { height: 5px; }
.spacer-v-10 { height: 10px; }
.spacer-v-15 { height: 15px; }
.spacer-v-25 { height: 25px; }
.spacer-v-50 { height: 50px; }
body {
  background-color: #ffffff /* rgb(235, 235, 235) */;
  font-family: "Merriweather-Regular";
  overflow-x: hidden;
}

header#header {
  background-image: url('index.php?rex_media_type=onepager_header_background&rex_media_file=header_blue.jpg');
  background-color: rgb(50, 115, 153);
  background-repeat: no-repeat;
  height: 548px;
}

header#header div#overlay {
  /*
  background-color: rgba(48, 115, 153, 0.9);
  */
  width: 50vw;
  height: 75%;
  padding-top: 75px;
  text-align: center;
}

header#header div#overlay img {
  margin-bottom: 75px;
  max-width: 90%;
}

header#header div#overlay p {
  font-family: "Merriweather-LightItalic";
  font-size: 18px;
  color: #ffffff;
  margin: 0;
  line-height: 30px;
}

header#header div#overlay a {
  color: #ffffff;
}

h1 {
  color: rgb(47, 115, 152);
  text-transform: uppercase;
  font-family: "Merriweather-Regular";
}

h2 {
  color: rgb(47, 115, 152);
  font-size: 25px;
  font-family: "Merriweather-Regular";
}

p, li {
  color: #505050;
}

#map {
  height: 482px;
}

/******************************************************************************/
/* TOP-TEXT */
div#top-text p {
  font-family: "Merriweather-LightItalic";
  font-size: 20px;
  line-height: 32px;
  padding: 0 18% 0 18%;
  margin-bottom: 30px;
}

/******************************************************************************/
/* TÄTIGKEITSFELDER */
div#taetigkeitsfelder {
  margin-top: 42px;
}

div#taetigkeitsfelder ul {
  padding-left: 0px;
}

div#taetigkeitsfelder li {
  list-style-type: none;
  line-height: 28px;
}

div#taetigkeitsfelder h2 {
  margin-top: 0;
  margin-bottom: 5px;
  text-transform: uppercase;
}

div#taetigkeitsfelder h3 {
  font-family: "Merriweather-LightItalic";
  color: rgb(47, 115, 152);
  margin-top: 0;
  font-size: 20px;
}

div#taetigkeitsfelder p {
  /*font-family: "Merriweather-LightItalic";*/
}

/******************************************************************************/
/* SERVICES */
div#services h2 {
  margin-bottom: 25px;
  text-transform: uppercase;
}

div#services p {
  font-family: "Merriweather-Regular";
  line-height: 28px;;
  color: #505050;
}

div#services .services-panel {
  padding-top: 15px;
  padding-bottom: 15px;
}

div#services .services-panel:hover p,
div#services .services-panel:hover h2,
div#services .services-panel:hover
{
  background-color: #307399;
  color: #ffffff;
}

/******************************************************************************/
/* PORTRAITS */
div#portraits {
  background: linear-gradient(180deg, transparent 270px, rgb(47, 115, 152) 0px);
  /* linear-gradient(180deg, transparent 50%, rgb(47, 115, 152) 50%); */
  color: #ffffff;
}

div#portraits .portraits-inner-container {
  padding-left: 0;
  padding-right: 0;
}

div#portraits img {
  border: 2px solid #ffffff;
  padding: 8px;
  max-height: 350px;
}

div#portraits h2 {
  color: #ffffff;
  text-transform: uppercase;
}

div#portraits p {
  font-family: "Merriweather-LightItalic";
  line-height: 28px;
  margin-top: 25px;
  color: #ffffff;
}

div#portraits a {
  color: #ffffff;
  text-decoration: underline;
}

div#portraits .row {
  position: relative;
}

div#portraits .portrait-title {
  position: absolute;
  bottom: 0;
  right: 0;
  padding-left: 40px;
}

div#portraits .portrait-title h2 {
  font-size: 24px;
}

div#portraits li {
  color: #ffffff;
}

/******************************************************************************/
/* DISCLAIMER */
footer#disclaimer h3 {
  font-family: "Merriweather-Regular";
  font-size: 18px;
  color: #565656;
  text-transform: uppercase;
  text-align: center;
}

footer#disclaimer p {
  font-family: "Merriweather-LightItalic";
  color: #565656;
  text-align: center;
}

.disclaimer-header {
  text-align: center;
  position: relative;
}

.disclaimer-header::before {
  content: ' ';
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: rgb(50, 115, 153);
  top: 50%;
  transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  z-index: 1;
}

.disclaimer-header h3 {
  display: inline-block;
  padding: 0 25px;
  position: relative;
  margin: 0;
  background-color: #ffffff;
  z-index: 2;
}

.footer-privacy a {
  color: #505050;
}

/******************************************************************************/
/* MOBILE STYLES */

@media (max-width: 1200px) {
  div#portraits .portrait-title {
    right: auto;
  }
}

@media (min-width: 1200px) {

}

@media (max-width: 980px) {

}

@media (min-width: 980px) {

}

@media (max-width: 768px) {
  header#header div#overlay {
    width: 100vw;
  }
  div#top-text h1 {
    font-size: 28px;
  }
  div#top-text p {
    font-size: 18px;
    padding-left: 0;
    padding-right: 0;
  }
  div#portraits {
    background-color: rgb(47, 115, 152);
    padding-top: 25px;
  }
  div#portraits .portrait-title {
    bottom: 12px;
  }
}

@media (min-width: 768px) {

}

@media (max-width: 480px) {
  div#portraits img {
    max-width: 100%;
  }
}

ol > * + * {
  margin-top: 15px;
}

.footer-privacy a {
  color: rgb(47, 115, 152);
}