/* CSS Niina Wagner */

/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/montserrat-v25-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/montserrat-v25-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/montserrat-v25-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/montserrat-v25-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

html {
  overflow-y: scroll;
  height: 100%; /* sticky footer */
  font-size: 16px;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  height: 100%; /* sticky footer */
  font-family: 'Montserrat', Arial, sans-serif;
  font-weight: normal;
  font-size: 0.9rem;
  line-height: 1.5;
  color: #595C69;
}

/* Anpassen Boxmodel */
* {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

*:before,
*:after{
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

/* Headlines */

h1 {
  text-align: center;
  font-weight: normal;
  font-size: 2.375em;
  line-height: 1.26315789;
  margin-top: 0.63157895em;
  margin-bottom: 1.2631579em;
  color: #D00534;
}

h2 {
  font-size: 1.75em;
  line-height: 1.71428571;
  margin-top: 0.85714286em;
  margin-bottom: 0.85714286em;
}
h3 {
  font-size: 1.2em;
  line-height: 1.5;
  margin-top: 0;
  margin-bottom: 0;
}

h4,
h5,
h6 {
  font-size: 1em;
  line-height: 1.5;
  margin-top: 1.5em;
  margin-bottom: 0;
}

/* sonstige Abstände und Elemente */
p, ul, ol, pre, table, blockquote {
  margin: 0;
  padding: 0;
}
ul ul, ol ol, ul ol, ol ul {
  margin-top: 0;
  margin-bottom: 0;
}

ul {
  list-style: square;
}

ol {
  list-style: decimal;
}

li {
  margin-left: 2em;
}

hr {
  border: 1px solid #595C69;
  margin: -1px 0;
}

/* Links */
a,
a:visited {
  color: #D00534;
  text-decoration: underline;
}

a:hover,
a:focus,
a:active {
  color: #710c13;
  outline: 0;
}

a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

/** Layout **/
#wrapper {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto 0 auto;
}

#header {
  height: 100px;
  max-width: 1400px;
  margin-bottom: 3em;
  background-color: #fff;
}

/* Headerinhalt */
#header .inside {
  margin: 3em auto 0 auto;
  text-align: center;
}

#logo {
  line-height: 0;
}
#logo img {
  width: 307px; 
  height: 54px; 
}

#container {
  max-width: 1400px;
  /* margin-bottom: 3em; */
}

/* Textseiten in 2 Spalten */
.box-wrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.box {
  width: 48%;
  min-width: 200px;
}

.box1-3 {
  width: 32%;
  min-width: 200px;
}

.box2-3 {
  width: 64%;
  min-width: 200px;
}

#footer {
  width: 100%;
  /* max-width: 1400px; */
  height: 100px;
  margin-top: 5em;
}

#footer .inside {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding: 0.8em 0;
  border-top: 1px solid #a9acb5ff;
}

#footer .footer-copyright {
  padding-left: 1em;
}

#main p {
  margin-bottom: 1em;
}

#main ul {
  margin-bottom: 1em;
}

.start #main .inside,
.impressum #main .inside,
.kontakt #main .inside  {
  display: flex;
  justify-content: center;
  text-align: center;
  /* align-items: center; */
}

/* .start #main figcaption.caption {
  text-align: center;
} */


/* Navigation */

#nav-main ul {
  display: flex;
  justify-content: center;
  padding-top: 0.5em;
}

#nav-main ul.level_1 {
  line-height: 2em;
}

#nav-main li,
#nav-sub li {
  list-style: none;
  display: inline-block;
  margin: 0;
  padding: 0;
}

#nav-main a,
#nav-main strong,
#nav-sub a,
#nav-sub strong {
  display: block;
  text-decoration: none;
  font-size: 1em;
  color: #292c37;
  font-weight: normal;
  margin: 0 1em;
  line-height: 1.5;
}

#nav-main a.last,
#nav-main .active.last {
  margin-right: 0;
}

#nav-main a.first,
#nav-main .active.first {
  margin-left: 0;
}

#nav-sub a.first,
#nav-sub .active.first {
  margin-left: 0;
}

#nav-main a:hover,
#nav-main a:focus,
#nav-sub a:hover,
#nav-sub a:focus {
  color: #D00534;
}

#nav-main strong.active,
#nav-main .trail,
#nav-sub strong.active,
#nav-sub .trail {
  font-weight: normal;
  color: #D00534;
}

/* Subnavigation Galerien */
#nav-main ul.level_2 {
  position: absolute;
  left: auto;
  margin-top: 1em;
  padding-top: 0.5em;
  margin-left: 1.7em;
  border-top: 1px solid #a9acb5ff;
}

/* ChangeLanguage */
.mod_changelanguage {
  right:2em;
  top:1em;
  position:absolute;
}
.mod_changelanguage ul li {
  display:inline;
  font-size: 0.8rem;
  /* padding-right:1em; */
}
.mod_changelanguage ul li strong {
  font-weight: normal;
}
.mod_changelanguage ul li.lang-de {
  padding-right:0;
}
.mod_changelanguage ul li a {
  border-bottom:1px dotted #595C69;
  text-decoration:none;
}

#main p {
  margin-bottom: 1em;
}

/** Galerie **/

#main .ce_gallery {
}

#main .ce_gallery ul {
  margin-left: -1em;
  margin-right: -1em;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}

#main .ce_gallery ul li {
  margin-left: 0;
  margin-bottom: 2em;
  width: calc(100% / 3);
}

#main .ce_gallery ul li figure {
  margin-left: 1em;
  margin-right: 1em;
}

#main figure figcaption.caption {
  margin-top: 0.5em;
  font-size: 0.8rem;
  line-height: 1.6;
  font-style: normal;
}

figure img {
  border-radius: 5px;
}

.start #main figure figcaption {
  display: none;
}

#main .ce_gallery nav.pagination ul {
  margin-left: 0;
  margin-right: 0;
  display: block;
}

#main .ce_gallery nav.pagination ul li {
  display: none;
}

#main .ce_gallery nav.pagination ul li.next,
#main .ce_gallery nav.pagination ul li.previous {
  display: block;
}

#main .ce_gallery nav.pagination ul li a {
  border-bottom:1px dotted #595C69;
  text-decoration:none;
}


/* ------------------------------------------------ */
/* Media Queries */

@media screen and (max-width: 1399px) {
  
  #header .inside, 
  #main .inside, 
  #footer .inside {
    margin-left: 1em;
    margin-right: 1em;
  }
}

@media screen and (max-width: 900px) {
  
  .box {
    width: 100%;
  }
  
  .box1-3 {
    width: 100%;
    min-width: 200px;
    margin-bottom: 3em;
  }
  
  .box2-3 {
    width: 100%;
    min-width: 200px;
  }
  
  #main .ce_gallery ul li {
    margin-left: 0;
    margin-bottom: 2em;
    width: calc(100% / 2);
  }
  
  /* ChangeLanguage */
  .mod_changelanguage {
    right:1em;
    top:0;
  }
  .mod_changelanguage ul li {
    display:inline;
    margin-left: 0;
    padding-right:0.5em;
  }
}

@media screen and (max-width: 600px) {
  
  #header {
    margin-bottom: 2em;
  }
  
 #header .inside {
   margin: 1em auto 0 auto;
 }
 
  #logo img {
    width: 250px; 
    height: auto; 
  }
  
  #nav-sub a,
  #nav-sub strong {
    margin: 0 0.5em;
  }
  
  /* Headlines */
  
  h1 {
    font-size: 2em;
    margin-bottom: 1em;
  }
  
  h2 {
    font-size: 1.5em;
  }
  h3 {
    font-size: 1.1em;
  }
  
}

@media screen and (max-width: 450px) {
  
  #logo img {
    width: 220px; 
    height: auto; 
  }
  
  #nav-main a,
  #nav-main strong,
  #nav-sub a,
  #nav-sub strong {
    font-size: 0.9em;
    margin: 0 1em;
  }
  
  #nav-sub a.last,
  #nav-sub .active.last {
    margin-left: 0;
  }
  
  .mod_changelanguage ul li {
  font-size: 0.75rem;
  }
  
  #main .ce_gallery ul li {
    margin-left: 0;
    margin-bottom: 2em;
    width: 100%;
  }
  
  #main figure figcaption.caption {
    text-align: center;
    margin-top: 0.3em;
    line-height: 1.3;
  }
  
  #footer .inside {
    display: block;
    text-align: center;
  }
  
  #footer .footer-copyright {
    font-size: 0.9em;
    padding: 0.5em 0 0 0;
  }
}

@media screen and (max-width: 400px) {
  
  #logo img {
    width: 200px; 
    height: auto; 
    margin-top: 1.5em;
  }
  
  .mod_changelanguage ul {
  margin-top: -0.5em;
  }
  
  #nav-main a,
  #nav-main strong,
  #nav-sub a,
  #nav-sub strong {
    font-size: 0.9em;
    margin: 0 0.5em;
  }
  
  #footer .footer-copyright {
    padding: 0.3em 0 0 0;
  }
}