@charset "UTF-8";
/* variables */
/* general layout */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: rgba(234, 226, 210, 0.3);
}

body {
  margin: 4rem 8rem;
  border-radius: 1rem;
}

section {
  clear: both;
  background: white;
}

div.container {
  position: relative;
  max-width: 960px;
  margin: auto;
}

img {
  max-width: 100%;
  border-radius: 0.5rem;
}

picture {
  color: black;
}

.shadow {
  box-shadow: 2px 2px 20px rgba(85, 85, 85, 0.2);
}

/* colors */
h1,
h2,
h3,
h4,
p,
li,
input,
textarea,
button,
a {
  color: #555;
}

.red {
  color: #E18A7f;
}

.bg-red {
  background-color: #e18a7f;
}

.light-green {
  color: #AEAEA3;
}

.bg-light-green {
  background-color: #aeaea3;
}

.green {
  color: #606A58;
}

.bg-green {
  background-color: #606a58;
}

.ocre {
  color: #EAE2D2;
}

.bg-ocre {
  background-color: #eae2d2;
}

/* typography */
html {
  font-size: 14px;
}

@font-face {
  font-family: "Corbert";
  src: url("../styles/Corbert-Regular.woff2") format("woff2"), url("../styles/Corbert-Regular.woff") format("woff");
  font-display: auto;
}
body,
input,
button,
textarea,
select {
  font-size: 1rem;
  font-family: Corbert, sans-serif;
}

h1 {
  font-size: 3rem;
}

h2 {
  font-size: 2rem;
  margin-bottom: 1rem;
}

h3 {
  font-size: 1.5rem;
}

p {
  margin-bottom: 1rem;
  text-align: justify;
}

a {
  text-decoration: none;
}

li {
  list-style-type: none;
}

/* specific layout */
header {
  border-radius: 1rem 1rem 0 0;
}

header .container {
  display: flex;
  justify-content: center;
  padding: 4rem 0;
}
header .container h1 {
  visibility: hidden;
  position: absolute;
  height: 0;
  overflow: hidden;
  color: #000;
}
header .container #logo {
  max-width: 500px;
}
header .container #logo img {
  border-radius: 0;
}

nav {
  margin: 0rem 0;
  position: sticky;
  top: 0;
  z-index: 100;
}

nav::after {
  content: "";
  position: absolute;
  height: 2rem;
  width: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.05) 25%, rgba(0, 0, 0, 0) 100%);
}

nav .container {
  display: block;
  padding: 2rem 0rem;
}
nav .container ul {
  display: flex;
  justify-content: center;
  -moz-column-gap: 2em;
       column-gap: 2em;
}
nav .container li {
  list-style: none;
}
nav .container a {
  display: block;
  padding: 0.5rem 2.5rem;
  border-radius: 1rem;
  font-weight: bolder;
  background: rgba(255, 255, 255, 0.7);
  color: #606A58;
}

main #hey-du .container {
  display: grid;
  grid-template-columns: 350px auto;
  grid-column-gap: 2rem;
  padding: 4rem 0;
}
main #hey-du .container h2 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3rem;
  border-right: 1px solid #555;
}
main #hey-du .container p {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0;
  padding: 0 2rem;
}
main #doula-service,
main #babyfotografie,
main #preisliste,
main #ueber-mich,
main #kontakt {
  scroll-margin-top: 92px;
}
main #what-if-i-fall .container {
  display: grid;
  grid-template-columns: 500px auto;
  grid-column-gap: 2rem;
  padding: 4rem 0;
}
main #what-if-i-fall .container div.quote {
  display: grid;
  place-content: center;
  text-align: center;
}
main #what-if-i-fall .container div.quote h3 {
  font-size: 2rem;
  margin-bottom: 1rem;
}
main #what-if-i-fall .container div.quote p {
  text-align: center;
}
main #doula-service .container {
  display: block;
  padding: 4rem 0;
}
main #doula-service .container img {
  width: 450px;
  float: right;
  margin: 0 0 2rem 3rem;
}
main #mind-body-birth .container {
  display: grid;
  grid-template-columns: 30% 30% 30%;
  grid-column-gap: 5%;
  padding: 4rem 0;
}
main #mind-body-birth .container h3 {
  margin: 1rem 0;
}
main #babyfotografie .container {
  padding: 4rem 0;
}
main #babyfotografie .container .slick-list {
  border-radius: 0.5rem;
}

#preisliste .container {
  padding: 4rem 0;
}
#preisliste .container h3 {
  margin: 2rem 0 1rem 0;
}
#preisliste .container .preise-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 2rem;
}
#preisliste .container .preise-container h4 {
  padding: 1rem;
  margin-bottom: 1rem;
  border-radius: 0.5rem;
  background-color: rgba(96, 106, 88, 0.9);
  color: white;
  text-align: center;
}
#preisliste .container .preise-container ul {
  margin: 0;
  padding: 0;
}
#preisliste .container .preise-container li {
  margin: 0 0 0.3rem 1rem;
  position: relative;
}
#preisliste .container .preise-container li:not(.betrag)::before {
  content: "•";
  position: absolute;
  left: -0.8rem;
}
#preisliste .container .preise-container li.betrag {
  display: block;
  text-align: center;
  list-style: none;
  font-weight: bold;
  font-size: 1rem;
  margin: 2rem 0 3rem 0;
}
#preisliste .container .preise-container li.betrag span {
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  background-color: rgba(174, 174, 163, 0.3);
}

#ueber-mich .container {
  padding: 4rem 0 6rem 0;
}
#ueber-mich .container .ueber-mich-container {
  display: grid;
  grid-template-columns: 600px auto;
  grid-column-gap: 2rem;
}

#kontakt .container {
  padding: 4rem 0;
}
#kontakt .container h2,
#kontakt .container h3,
#kontakt .container h4,
#kontakt .container p,
#kontakt .container a,
#kontakt .container li,
#kontakt .container label,
#kontakt .container input,
#kontakt .container textarea {
  color: #eee;
}
#kontakt .container ul {
  display: flex;
}
#kontakt .container ul li {
  margin: 0 1rem 0 0;
}
#kontakt .container ul li a {
  display: block;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  color: #555;
  background: rgba(238, 238, 238, 0.75);
  font-weight: bold;
}
#kontakt .container ul li a svg {
  display: block;
  float: left;
  margin: 0.2rem 0.5rem 0 0;
  fill: currentColor;
}
#kontakt .container form {
  margin: 4rem 0 0 0;
}
#kontakt .container input,
#kontakt .container textarea {
  display: block;
  width: 100%;
  background-color: #606A58;
  border: 1px solid #AEAEA3;
  border-radius: 0.5rem;
  padding: 1rem;
  margin: 2rem 0;
}
#kontakt .container textarea:focus,
#kontakt .container input:focus {
  outline: none;
}
#kontakt .container label {
  display: block;
  position: absolute;
  translate: 0.5rem -1rem;
  padding: 0 0.5rem;
  background: #606A58;
  border-radius: 0.5rem;
}
#kontakt .container span.required {
  color: #eee;
}
#kontakt .container button {
  padding: 1rem;
  border-radius: 0.5rem;
  border: none;
  background: rgba(238, 238, 238, 0.75);
  font-weight: bold;
  cursor: pointer;
}

#danke .container {
  max-width: 450px;
  padding: 4rem 0;
}
#danke .container h3 {
  padding: 2rem;
  margin: 0 0 1rem 0;
  text-align: center;
  border: 1px solid #606A58;
  border-radius: 0.5rem;
  background: rgba(96, 106, 88, 0.4);
}
#danke .container p {
  text-align: center;
}

#oops .container {
  max-width: 450px;
  padding: 4rem 0;
}
#oops .container h3 {
  padding: 2rem;
  margin: 0 0 1rem 0;
  text-align: center;
  border: 1px solid #E18A7f;
  border-radius: 0.5rem;
  background: rgba(225, 138, 127, 0.4);
}
#oops .container p {
  text-align: center;
}

section#kontakt {
  border-radius: 0 0 1rem 1rem;
}

footer {
  border-radius: 0 0 1rem 1rem;
}

footer .container {
  padding: 2rem 0;
}
footer .container * {
  font-size: 0.8rem;
  color: #eee;
}

#scroll-top {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  display: block;
  width: 2rem;
  height: 2rem;
  font-size: 1rem;
  text-align: center;
  border-radius: 0.5rem;
  color: white;
  background-color: rgba(0, 0, 0, 0.6);
}

/* mobile */
@media screen and (max-width: calc(960px + 16rem)) {
  html {
    background: none;
    font-size: 16px;
  }
  body {
    margin: 0 !important;
  }
  div,
  ul,
  h1,
  h2,
  h3 {
    display: block !important;
  }
  header,
  footer {
    border-radius: 0;
  }
  #doula-service,
  #babyfotografie,
  #preisliste,
  #ueber-mich,
  #kontakt {
    scroll-margin-top: 0 !important;
  }
  .container {
    margin: 0 auto !important;
    padding: 4rem 2rem !important;
  }
  img {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
  }
  #logo {
    margin: auto;
  }
  header h1 {
    display: none !important;
  }
  nav {
    position: relative;
  }
  nav .container {
    padding: 2rem !important;
  }
  nav .container li a {
    display: block;
    text-align: center;
    padding: 0.5rem 0;
    font-size: 1.2rem;
    background: none !important;
  }
  #what-if-i-fall .container h2 {
    margin: 1rem 0;
  }
  #hey-du .container h2 {
    text-align: center;
    margin: 0 0 1rem 0;
    border: none !important;
  }
  #doula-service .container img {
    margin: 0 0 2rem 0 !important;
  }
  #mind-body-birth .container {
    padding-bottom: 1rem !important;
  }
  #mind-body-birth .container p {
    margin: 0 0 4rem 0;
  }
  #babyfotografie-galerie {
    margin: 3rem 0 2rem 0;
  }
  #preisliste .container h3 {
    height: auto !important;
  }
  #ueber-mich .container img {
    margin: 0 0 2rem 0 !important;
  }
  #kontakt .container ul li {
    margin: 0 0 1rem 0;
  }
  #kontakt .container input,
  #kontakt .container textarea {
    width: 100% !important;
    margin: 2rem 0 !important;
  }
}/*# sourceMappingURL=style.css.map */