html {
    font-family: 'Raleway', sans-serif!important;
}

body {
    font-size: 14px!important;
    line-height: 1.4em!important;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Spartan', sans-serif!important;
    color: black!important;
}

h1 {
    font-weight: bolder!important;
    color: #356a8a!important;
    font-size: 2.3rem;
    line-height: 1.3em;
}

h2 {
    font-style: normal !important;
    font-weight: 500!important;
}

h3 {
    text-decoration: none!important;
    /* font-size: 1.4rem!important; */
}


p {
    text-align: justify;
    color: black!important;
}

b, strong {
    font-weight: 700;
}

a:hover{
    text-decoration: none!important;
}
address, #anschrift > p {
    margin-bottom: 20px;
    font-style: normal;
    line-height: 1.42857143;
    color: black;
    text-align: left;
    margin-left: 60px;
}

address .tel{
    margin-top: 21px;
}

#anschrift {
    margin-top: 39px;
  }
  a.anfahrtsplan {
    position: relative;
    top: -24px;
    font-size: smaller;
}

.mitte{
    text-align: center;
}

/*        Kontakt        */

p.abgesendet {
    text-align: center;
    margin-top: 41px;   
}

/*       Formular         */
form {
    position: relative;
    width: 80%;
    margin: 0 auto;
    margin-bottom: 50px;
    text-align: left;
    color: black;
}

form p {
    margin-top: 25px;
    font-size: smaller;
}
a.underline:hover {
    text-decoration: underline !important;
  }

.option {
    font-size: smaller;
    color: #ced4da;
  }

label {
    display: inline-block;
    margin-bottom: 0.5rem;
    margin-right: 10px;
  }
  
  button {
    border-radius: 12px;
    min-width: max-content;
  }
  
  button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color;
  }
  
  input,
  button,
  select,
  optgroup,
  textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
  }
  
  button,
  input {
    overflow: visible;
  }
  
  button,
  select {
    text-transform: none;
  }

  button,
  [type="button"],
  [type="reset"],
  [type="submit"] {
    -webkit-appearance: button;
  }
  
  button:not(:disabled),
  [type="button"]:not(:disabled),
  [type="reset"]:not(:disabled),
  [type="submit"]:not(:disabled) {
    cursor: pointer;
  }
  
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    padding: 0;
    border-style: none;
  }
  
  input[type="radio"],
  input[type="checkbox"] {
    box-sizing: border-box;
    padding: 0;
  }
  
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"] {
    -webkit-appearance: listbox;
  }
  

  
  .form-control {
    box-sizing: border-box;
    width: 100%;
    height: 26px;
    margin-bottom: 23px;
    padding: 0.375rem 0.75rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
  }
  
  div.form-group:nth-child(4) > div:nth-child(2) {
    margin-left: 0;
    margin-right: 0;
   }

#datum {
    max-width: 116px;
}
#notiz {
    height: auto;
}

.img-circle {
    border-radius: 50%;
}

.shadow {
    box-shadow: 3px 5px 10px #f1f1f1;
}

#bilderbox {
    padding-right: 2rem;
    padding-left: 2rem;
    margin-top: 60px;
}

#bilderbox img {
    border-radius: 50%;
    /* box-shadow: 11px 16px 8px 0px #f1e4ba; */
    width: 100%;
    max-width: 300px;
}



.imageContainer.col-xs-12.col-sm-4 {
    padding: 20px 16px;
    position: relative;
}

.headline {
    position: absolute;
    margin: -54px 0 0 45%;
    left: 16%;
    height: 6%;
    background-color: #ffffff;
    padding: 10px 0 0 0;
    width: 100px;
    border-radius: 0 10px 10px;
    box-shadow: 1px 2px 5px 3px rgba(202, 202, 202, 0.4);
}

#allwrap {
    margin: 10px;
}

#site {
    width: 99%!important;
    max-width: 1200px;
    height: 100%;
    text-align: center;
    padding: 0 0 0 0;
    margin: 0 auto 15px;
}

.caption {
    margin-top: 29px;
    text-align: justify;
}


/*        MENU          */

#logo {
    margin: 0px!important;
    padding-bottom: 12px;
    float: none!important;
    border-bottom: 2px solid;
    display: block!important;
}

.koepfe {
    margin-bottom: -14px;
}

#logo p{
    font-size: 52px;
    display: inline-block;
    margin: 0;
    font-family: 'Baskervville', serif;
}

.frick {
    color: #536a8a !important;
    margin-left: 8px !important;
    margin-top: 17px!important;
  }
  .sindeflingen {
    display: block !important;
    text-align: center;
    font-size: 20px !important;
    padding-top: 0px;
    padding-left: 268px;
  }

#titel, #team {
    margin: 50px 0;
}

.titel  {
    text-align: left;
    margin-bottom: 20px;
    border-bottom: 1px solid;
}

#logo img {
    width: 100%;
    max-width: max-content;
}

.titel div {
    display: block;
}

#menu-industrie > ul > li {
    display: inline;
    margin: 0 20px;
    position: relative;
}

#menu-industrie ul {
    margin: 0;
    padding: 0;
}

#menu-industrie ul li ul {
    position: absolute;
    display: none;
    background-color: #fff;
    margin: 0;
    padding: 0;
    border-left: 7px solid #27afce;
    width: 250px;
    margin-top: 14px;
    padding-top: 0px;
    border-top: 5px white solid;
}

#home-underlinks{
    top: 0;
    left: -24px;
}

#menu-industrie ul li:hover ul {
    display: block;
}

#menu-industrie ul li ul li {
    display: block;
    text-align: left;
    padding: 5px 17px;
    border-bottom: 1px #1d2d5f solid;
}

#menu-industrie ul li ul li:hover{
    background-color: #F1F1F1;
}


.toggle {
    text-align: right;
    margin: 0 0em;
    position: relative;
    bottom: 1px;
    padding-left: 16px;
    display: none!important;
    height: 22px;
}

.toggle img {
    height: 39px;
    margin: 0px 5px 7px;
}
a.sprache {
    float: left;
    bottom: -15px;
    position: relative;
}

a.sprache img {
    height: 12px;
    margin: 0;
}

/*      MENU auf Kleingeräten     */  

#menusmall {
    width: 80%;
    margin: 0 auto;
    border: 1px solid;
    border-right: 6px #27afce solid;
    padding: 15px;
    margin-top: -3px;
    display: none;
}

#menusmall a {
    display: block;
    padding: 5px 0;
}

#menusmall a:hover{
    background-color: #F1F1F1;
}

#menusmall a.menutrennung {
    border-bottom: 1px solid;
    padding-bottom: 5px;
    margin-bottom: 5px;
}

/*      IMPRESSUM Datenschutz      */

#impressum {
    margin: 0 auto 48px;
    width: 86%;
}

#impressum h3 {
   text-align: left;
}

#impressum .text:nth-child(2) {
    border-left: 1px dotted #ced4da;
}

#impressum .text {
    padding-left: 13%;
}

.referenzenimpressum {
    max-width: 130px;
    max-height: 27px;
    margin: 20px 20px 20px 18px!important;
    display: block;
  }

#datenschutzerklaerung{
    width: 90%;
    margin: 41px auto 0;
}

#datenschutzerklaerung p, #datenschutzerklaerung h3, #datenschutzerklaerung ol, #datenschutzerklaerung ul {
    text-align: left;
    list-style: none;
  }

#datenschutzerklaerung ul li{
    text-decoration: none;
}

.haftung{
    font-style: italic;
}

/*    Referenzen   */

.referenzen {
    max-width: 130px;
    max-height: 27px;
    margin: 20px;
  }

.referenzengroß {
    max-height: 47px;
}

  p.referenzen {
    display: inline-block;
    font-size: 18px;
    bottom: 23px;
    position: relative;
    max-width: max-content;
  }

/*   Media Syle   */
@media screen and (max-width: 767px) {
    div .toggle {
        display: block!important;
    }
    div #menu-special {
        display: none;
    }
    div #menu-industrie {
        display: none;
    }
    address, #anschrift > p {
        text-align: center;
        margin-left: 0;
    }

    #impressum .text {
        padding-left: 0;
    }
    #impressum .text:nth-child(2) {
        border-left: 0;
    }
    #impressum p, #impressum h3{
        text-align: center;
    }
    #datenschutzerklaerung{
        font-size: smaller;
    }

    .referenzenimpressum{
        display: inline;
    }
}    
@media screen and (max-width: 393px) {
    .sindeflingen{
        padding-left: 10px;
    }
}


/*         Footer          */


.footer {
    background-color: #EFEFEC;
    padding: 10px;
}
.footertext {
    text-align: center;
    margin: 0 auto;
    padding-bottom: 10px;
    font-size: 95%;
}

.footertext p {
    text-align: center;
    margin: 0 auto 15px;
}
.footer h3 {
    text-align: center;
    font-size: 2.5rem;
}

.social {
    padding: 0;
    margin: 4px 0 0 0;
}

.social li {
    display: inline-block;
    margin: 0 10px;
}

.social li a::after {
    content:" ";
}

.social img {
    width: 20px;
    background-color: #1d2d5f;
    border-radius: 3px;
    opacity: 0.7;
}
.legal a,.help a { 
    display: block;
    margin-bottom: 13px;
}

.footer > a {
    text-decoration: none;
}

.footer a::after {
    content:" »";
}

a {
    text-decoration: none;
    color: black!important;
}



/*        Content        */

img.team{
    max-width: 100%!important;
}

#titelbild img {
    max-height: 300px;
    width: 100%;
}

#index.industrial img {
    max-width: max-content;
}

div #titelbild {
    margin-top: 12px;
}

#content div {
    padding: 20px;
}

#content p {
    min-height: 200px;
  }

  #content img {
    width: 100% !important;
    max-width: 352px;
    border: 0!important;
  }

  

  #titel h1{
      color: #27afce!important;
  }

  /*      Gallery     */

.buttoncase{
    padding: 15px 0;
}
@media screen and (max-width: 767px){
    .buttoncase{
        display: none;
    }
}
.button{
    background: white!important;
    border: 1px solid;
    margin: 0 4px;
    padding: 4px 14px!important;
    font-size: 12px;
    cursor: pointer;
    box-shadow: 2px 1px 8px -3px gray;
}
.button:hover{
    background: white!important;
    background-image: linear-gradient(white 74%, #27afce)!important;
}
.button:active{
    box-shadow: 2px 1px 8px -3px gray inset;
    background-image: none!important;
}

/* Create four equal columns that sits next to each other */
.row-gal {
    display: -ms-flexbox; /* IE10 */
    display: flex;
    -ms-flex-wrap: wrap; /* IE10 */
    flex-wrap: wrap;
    padding: 0 4px;
  }
  
.gal {
    -ms-flex: 33%; /* IE10 */
    flex: 33%;
    max-width: 33%;
    padding: 0 4px;
    box-sizing: border-box;
    margin: 0 auto;
  }
.gal-panorama {
    -ms-flex: 100%; /* IE10 */
    flex: 100%;
    max-width: 100%;
    padding: 0 4px;
    box-sizing: border-box;
    margin: 20px 0;
  }
  
  .gal img, .gal-panorama img {
    margin-top: 8px;
    vertical-align: middle;
    width: 100%;
    border: 1px solid lightgray;
    webkit-transition: opacity 0.8s ease-out;
-moz-transition: opacity 0.8s ease-out;
transition: opacity 0.8s ease-out;
  }
  .plus{
      display: none;
  }
  
  /* Responsive layout - makes a two gal-layout instead of four columns */
  @media screen and (max-width: 800px) {
    .gal {
      -ms-flex: 50%;
      flex: 50%;
      max-width: 50%;
    }
    .del {
        display: none;
    }
    .plus {
        display: block;
    }
  }
  
  /* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
  @media screen and (max-width: 350px) {
    .gal {
      -ms-flex: 100%;
      flex: 100%;
      max-width: 100%;
    }
  }



