

.container__kontakt {
  font-family: Montserrat, sans-serif;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  width: 100vw;
  margin-top: 2rem;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
}

.kontaktformular__h3 {
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: auto;
}
.kontaktformular__h4 {
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 1.5rem;
}
.container__kontakt-intro {
  display: inline-block;
  grid-row: 1;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.6rem;
  padding-right: 1.6rem;
}
.container__kontakt-formular {
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
.kontaktformular__telefonsymbol {
  padding-left: 1rem;
}
.kontaktformular__mailsymbol {
  padding-left: 1rem;
}
.kontaktformular {
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  max-width: 90%vw;
}
.fieldset {
  max-width: 90%vw;
}

.kontaktformular__h3 {
  font-size: 1rem;
  font-weight: bold;
  padding-right: 1rem;
  display:block;
}
.kontaktformular__h4 {
  font-size: 1rem;
  padding-right: 1rem;
  display:block;
}
a:link { 
  text-decoration: none; 
  color: #4e5e56;
}
a:hover {
  font-weight: bold;
}

.kontaktformular__telefonsymbol {
  color: #4e5e56;
  font-style: normal;
}

.kontaktformular__mailsymbol {
  color: #4e5e56;
  font-style: normal;
}

#kontaktformular input[type="text"], #kontaktformular input[type="email"], #kontaktformular input[type="tel"], #kontaktformular input[type="url"], #kontaktformular textarea, #kontaktformular button[type="submit"] { font:400 12px/16px "Montserrat", Helvetica, Arial, sans-serif; }
    
    #kontaktformular {
        background:#F9F9F9;
        padding:25px;
        margin-top: 2rem;
        padding-top: 2rem;
    }

  
 
    fieldset {
        border: medium none !important;
        margin: 0 0 10px;
        min-width: 100%;
        padding: 0;
    }
    
    #kontaktformular input[type="text"], #kontaktformular input[type="email"], #kontaktformular input[type="tel"], #kontaktformular input[type="url"], #kontaktformular textarea {
        width:100%;
        border:1px solid #CCC;
        border-radius: 0.25rem;
        background:#FFF;
        margin:0 0 5px;
        padding:10px;
    }
    
    #kontaktformular input[type="text"]:hover, #kontaktformular input[type="email"]:hover, #contact input[type="tel"]:hover, #kontaktformular input[type="url"]:hover, #kontaktformular             textarea:hover {
        -webkit-transition:border-color 0.3s ease-in-out;
        -moz-transition:border-color 0.3s ease-in-out;
        transition:border-color 0.3s ease-in-out;
        border:1px solid #AAA;
    }
    
    #kontaktformular textarea {
        height:100px;
        max-width:100%;
      resize:none;
    }
    
    #kontaktformular button[type="submit"] {
        cursor:pointer;
        width:100%;
        border:none;
        background:#723D46;
        color:#FFF;
        margin:0 0 5px;
        padding:10px;
        font-size:15px;
        border-radius: 0.25rem;
    }
    
    #kontaktformular button[type="submit"]:hover {
        background:#4b1e26;
        -webkit-transition:background 0.3s ease-in-out;
        -moz-transition:background 0.3s ease-in-out;
        transition:background-color 0.3s ease-in-out;
    }
    
    #kontaktformular button[type="submit"]:active { box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.5); }
    
    #kontaktformular input:focus, #contact textarea:focus {
        outline:0;
        border:1px solid #999;
    }
    ::-webkit-input-placeholder {
     color:#888;
    }
    :-moz-placeholder {
     color:#888;
    }
    ::-moz-placeholder {
     color:#888;
    }
    :-ms-input-placeholder {
     color:#888;
    }
    
    .checkbox {
      display: table-cell;
    }
  .checkbox__text {
    margin-left: 1.6rem;
    margin-bottom: 1.5rem;
    padding-left: 1rem;
    padding-bottom: 1rem;
    display: table-cell;
  }
 
  
  @media (min-width: 48em) {
    body {
      display: block;
      font-family: Montserrat, sans-serif;
      background-color: #f1f4f2;
      padding: 0;
      margin: 0;
      color: #444a4b;
      min-height: 100%;
    }

    

    main {
      min-height: 80vh;
    }
    
    .container__kontakt {
      font-family: Montserrat, sans-serif;
      display: grid;
      grid-template-columns: 50% 50%;
      padding: 3rem 6rem 3rem 11rem;
      width: 100%;
      height: 100%;
      margin-top: 2rem;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 2rem;
    }

    .kontaktformular__h3 {
      margin-top: 2rem;
      padding-top: 0;
      padding-bottom: 1.5rem;
    }

    .container__message sent {
      height: 90%;
    }

    
    .button__zur-startseite {
        display: inline-block;
        font-family: inherit;
        font-weight: bolder;
        font-size: 24px;
        background-color: #ded7d4;
        color: #444a4b;
        border-radius: 1rem;
        text-transform: uppercase;
        text-decoration: none;
        padding: 10px 50px;
        margin-top: 40px;
        margin-bottom: 40px;
    }
    
    .button__zur-startseite:hover {
        background-color: #7b7ba6;
    }
  }

  /* Mobil */
* {
  box-sizing: border-box;
}

body {
  font-family: Montserrat, sans-serif;
  background-color: #f1f4f2;
  padding: 0;
  color: #444a4b;
  min-height: 100%;
  width: 100%;
}
/* montserrat-100 - 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: 100;
  src: url('../fonts/Montserrat-Medium.otf') format('otf'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
@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: 100;
  src: url('../fonts/Montserrat-Bold.otf') format('otf'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* rock-salt-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: 'Rock Salt';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/RockSalt-webfont.woff') format('woff'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* media queries
@media screen and (max-width:30em) 
@media (min-width: 48em) */

.header {
  background: 
  linear-gradient(to top,
  rgba(0, 0, 0, 0),
  rgba(0, 0, 0, 0.3) );
  background-color: #f1f4f2;
  box-shadow: 1px 1px 4px 0 rgba(0,0,0,.1);
  width: 100%;
  padding: 1rem 0 1rem 0;
  margin-top: 0;
}

.logo {
  display: inline;
  float: left;
  font-size: 1.3rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 1.2rem;
}
a.logo {
  grid-row: 1;
  font-family: 'Rock Salt', cursive;
  color: #444a4b;
  font-size: 1.5rem;
  font-weight: bold;
  display: block;
  float: left;
  padding-left: 3rem;
  padding-top: 0;
  text-decoration: none;
}
.header ul {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
}
.nav__link-item-1, .nav__link-item-2 {
  display: block;
  padding: 20px 20px;
  border-right: 1px solid #723D46;
  color: #444a4b;
  text-decoration: none;
} 
.nav__link-item-3 {
  display: block;
  padding: 20px 20px;
  color: #444a4b;
  text-decoration: none;
}
.header li a:hover,
.header .menu-btn:hover {
  background-color: #f4f4f4;
}


/* menu */

.header .menu {
  clear: both;
  max-height: 0;
  transition: max-height .2s ease-out;
}

/* menu icon */

.header .menu-icon {
  cursor: pointer;
  display: inline-block;
  padding-left: 1rem;
  padding-right: 0rem;
  position: relative;
  user-select: none;
}

.header .menu-icon .navicon {
  background: #444a4b;
  display: block;
  height: 2px;
  position: relative;
  transition: background .2s ease-out;
  width: 18px;
}

.header .menu-icon .navicon:before,
.header .menu-icon .navicon:after {
  background: #444a4b;
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  transition: all .2s ease-out;
  width: 100%;
}

.header .menu-icon .navicon:before {
  top: 5px;
}

.header .menu-icon .navicon:after {
  top: -5px;
}

/* menu btn */

.header .menu-btn {
  display: none;
}

.header .menu-btn:checked ~ .menu {
  max-height: 240px;
}

.header .menu-btn:checked ~ .menu-icon .navicon {
  background: transparent;
}

.header .menu-btn:checked ~ .menu-icon .navicon:before {
  transform: rotate(-45deg);
}

.header .menu-btn:checked ~ .menu-icon .navicon:after {
  transform: rotate(45deg);
}

.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
  top: 0;
}

.nav__footer {
  display: block;
  text-align: center;
  margin-top: 3rem;
  margin-left: auto;
  margin-right: auto;
  list-style: none;
  padding-left: 0;
}

.footer__nav-link {
  display: inline-block;
  justify-self: center;
  color: #444a4b;
  font-size: 1.5rem;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  text-decoration: none;
}

@media (min-width: 48em) {

  body {
    font-family: Montserrat, sans-serif;
    background-color: #f1f4f2;
    padding: 0;
    color: #444a4b;
    min-height: 100%;
    width: 100%;
  }

  .header {
    display: grid;
    grid-template-columns: 0.5fr 0.5fr;
  }
  .header .menu-icon {
    display: none;
  }
  .header .menu {
    clear: none;
    float: right;
    max-height: none;
  }
  .header li {
    float: left;
  }
  a.logo {
    grid-column: 1;
    padding-top: 1rem;
  }

  ul.menu {
    grid-column: 2;
    grid-row: 1;
    margin-right: 3rem;
    justify-self: end;
    padding-right: 3rem;
    color: #444a4b;
    font-size: 1.3rem;
  }

  .nav__item-1 {
    padding: 0;
    border-right: 1px solid #723D46;
    color: #444a4b;
    text-decoration: none;
    grid-row: 1;
  }
  
  .nav__item-2 {
    padding: 0;
    border-right: 1px solid #723D46;
    color: #444a4b;
    text-decoration: none;
    grid-row: 1;
  }
  .nav__item-3 {
    padding: 0;
    border-right: none;
    color: #444a4b;
    text-decoration: none;
    grid-row: 1;
  }
  .nav__link-item-3 {
    border-right: none;
  }

  footer {
      background: 
      linear-gradient(to bottom,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.3) );
      background-color: #f1f4f2;
      box-shadow: 1px 1px 4px 0 rgba(0,0,0,.1);
      display: grid;
      grid-template-columns: 1fr;
      grid-template-rows: auto;
      width: 100%;
     
      padding: 0;
      margin-top: 0;
    }
    
     .nav__footer {
      display: grid;
      grid-template-columns: 1fr;
      grid-template-rows: auto;
      text-align: center;
      margin-top: 0;
      margin-bottom: 0;
      margin-left: auto;
      margin-right: auto;
      list-style: none;
      padding-left: 0;
    }
    
    .footer__nav-link {
      color: #444a4b;
      font-size: 1.5rem;
      margin-top: 0;
      margin-left: auto;
      margin-right: auto;
      padding: 1rem 1rem 1rem 1rem;
      text-decoration: none;
    }
    .footer__nav__item-1 {
      padding: 0;
      border-right: 1px solid #723D46;
      color: #444a4b;
      text-decoration: none;
      grid-row: 1;
    }
    
    .footer__nav__item-2 {
      padding: 0;
      border-right: 1px solid #723D46;
      color: #444a4b;
      text-decoration: none;
      grid-row: 1;
    }
    .footer__nav__item-3 {
      padding: 0;
      color: #444a4b;
      text-decoration: none;
      grid-row: 1;
    }
    .footer__nav__item-1 a:hover,
    .footer__nav__item-2 a:hover,
    .footer__nav__item-3 a:hover {
      background: rgb(200,198,198);
      background: radial-gradient(circle, rgba(200,198,198,0.12088585434173671) 25%, rgba(244,244,244,1) 100%);
    }
}
    
  
 
   