/* Generated by less 2.5.1 */
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
body {
  background-color: #c1c1c1;
  font-family: Verdana, Helvetica, Arial, sans-serif;
  color: #333333;
  font-size: 1em;
  line-height: 1.5em;
}
h1 {
  color: #fff;
  font-size: 2.8em;
  font-style: italic;
}
h1 span:first-of-type {
  font-size: 3.5rem;
  color: #de1616;
}
h1 span:nth-of-type(2) {
  font-size: 1.5rem;
  color: #fff;
}
h1 span:last-of-type {
  font-size: 3.5rem;
  color: #de1616;
}
h2 {
  font-size: 1.6em;
  font-family: Arial;
  margin-bottom: 1rem;
  letter-spacing: 0.1em;
}
h3 {
  font-size: 1.2em;
  font-family: Arial;
  margin-bottom: 1rem;
  margin-top: 1rem;
}
h4 {
  color: #fff;
  font-size: 0.9em;
  font-family: Arial;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-top: 1rem;
}
h5 {
  font-size: 1.0em;
  font-family: Arial;
  margin-top: 1rem;
}
.p-extra {
  margin-bottom: 2em;
}
.p-extra-1 {
  margin-bottom: 1em;
}
.p-extra-2 {
  margin-bottom: 3em;
}
table {
  width: 100%;
}
table tr {
  line-height: 2em;
}
table td:first-child {
  width: 50%;
}
form legend,
form p {
  padding-left: 1rem;
}
form textarea {
  width: 80%;
}
form button[type] {
  font-size: inherit;
  padding: 0.5rem;
}
form input[type] {
  padding: 0.3em;
}
a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  color: #fff;
  background-color: #000;
}
/***************************************************************************************/
/*    Navigation                                                                       */
/***************************************************************************************/
#nav-wrapper {
  width: 100%;
  background-color: rgba(131, 131, 131, 0.8);
}
#nav-inner-wrapper {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
input#responsive-nav,
label.responsive-nav-label {
  display: none;
}
#metanav {
  height: 2.0rem;
  background-color: #000;
  position: absolute;
  top: 0;
  right: 10rem;
}
#metanav ul {
  display: table;
  list-style-type: none;
  line-height: 1.7rem;
  width: 100%;
}
#metanav ul li {
  padding: 0 0.2rem;
  color: #fff;
  font-size: 0.9em;
  font-family: Arial;
  text-transform: uppercase;
  white-space: nowrap;
  display: table-cell;
}
#metanav ul li.aktiv {
  border-bottom: 2px solid #fff;
  font-size: 0.9em;
  padding: 0.1rem 1.3rem;
}
#metanav ul li a {
  padding: 0.1rem 1.3rem;
  color: inherit;
  font-size: 0.9em;
  text-decoration: none;
  text-align: center;
  display: block;
}
#metanav ul li a:hover {
  border-bottom: 2px solid #fff;
}
#hauptnav {
  height: 3rem;
  width: 100%;
}
#hauptnav ul {
  display: table;
  line-height: 3rem;
  list-style-type: none;
}
#hauptnav ul li {
  padding-right: 0.1rem;
  color: #000;
  font-size: 1.2em;
  font-family: Arial;
  text-transform: uppercase;
  display: table-cell;
}
#hauptnav ul li a {
  padding: 0 2.5rem;
  color: inherit;
  text-decoration: none;
  display: block;
}
#hauptnav ul li a:hover {
  color: #fff;
}
#hauptnav ul li span {
  padding: 0 2.5rem;
  color: #fff;
  background-color: #000;
  text-decoration: none;
  display: block;
}
#hauptnav ul li .span {
  color: #fff;
  background-color: #000;
  text-decoration: none;
  display: block;
}
#hauptnav ul li ul {
  list-style-type: none;
  line-height: 3rem;
  display: none;
}
#hauptnav ul li:hover ul {
  display: block;
}
#hauptnav ul li:hover ul li {
  display: block;
  color: #000;
  font-family: Arial;
  font-size: 1.0em;
  background-color: rgba(131, 131, 131, 0.8);
  white-space: nowrap;
  border-bottom: 1px solid #fff;
}
#hauptnav ul li:hover ul li a {
  display: block;
  padding-right: 1.0rem;
}
#hauptnav ul li:hover ul li a:hover {
  background-color: #000;
}
/***************************************************************************************/
/*    Header                                                                           */
/***************************************************************************************/
header {
  width: 100%;
  height: 10rem;
  background-color: #333333;
  padding-top: 5rem;
  position: relative;
}
.header-wrapper {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 3em;
}
#logo {
  position: absolute;
  left: 63rem;
  top: 2.6rem;
}
#logo-mi {
  position: absolute;
  left: 57rem;
  top: 2.4rem;
}
#name a {
  text-decoration: none;
  color: inherit;
}
#name a:hover {
  background-color: inherit;
}
#bildbox {
  width: 100%;
  height: 30rem;
  background: url(../images/banner1.jpg) no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
  background-position: left;
  overflow: hidden;
}
#bildbox-1 {
  width: 100%;
  height: 30rem;
  background: url(../images/banner_fuso1.jpg) no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
}
#box {
  width: 100%;
  height: 9rem;
}
/***************************************************************************************/
/*    Main                                                                             */
/***************************************************************************************/
main {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 1rem;
  margin-bottom: 3rem;
}
main .main-wrapper {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
main .main-inner-wrapper {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  padding: 2em 2em 3em;
  display: table;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
main .main-inner-wrapper span {
  color: #747070;
}
main .main-inner-wrapper ul {
  padding-left: 1.5em;
}
main .main-inner-wrapper a:hover {
  text-decoration: underline;
  color: #333;
  background-color: inherit;
}
main .wrapper-article {
  width: 100%;
  display: table;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
main article {
  width: 50%;
  display: table-cell;
  padding-top: 2em;
  padding-bottom: 3em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
main article table .spalte-1 {
  width: 40%;
}
main .wrapper-content {
  width: 100%;
  background-color: #f0efef;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
main .inner-wrapper-content {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid #f0efef;
  display: table;
}
main .inner-wrapper-content a {
  text-decoration: none;
  color: #de1616;
}
main .inner-wrapper-content a:hover {
  color: #747070;
  background-color: inherit;
}
main .content {
  width: 30%;
  display: table-cell;
  padding: 3em 2em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
main .form {
  width: 60%;
  padding: 3em 4em 5em 2em;
  display: table-cell;
}
main .form input[type=text] {
  width: 95%;
  padding: 8px;
}
main .form input[type=email] {
  width: 95%;
  padding: 8px;
}
main .form input[type=tel],
main .form textarea {
  width: 95%;
  padding: 8px;
}
main .maps {
  padding: 3em 0 5em 3em;
  display: table-cell;
}
main .rot {
  color: #de1616;
}
main .font {
  font-size: 1.2em;
}
main .block-1-main {
  width: 60%;
  display: table-cell;
  padding: 3em 2em 5em;
}
main .block-2-main {
  width: 40%;
  display: table-cell;
  padding: 3em 2em 5em;
}
main .einzug {
  padding-left: 1.0em;
}
main span {
  color: #747070;
}
/***************************************************************************************/
/*    Footer                                                                           */
/***************************************************************************************/
footer {
  width: 100%;
  height: 28rem;
  background-color: #333;
}
footer #footer-first {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  height: 20rem;
  color: #c1c1c1;
  font-size: 0.9em;
  display: table;
}
footer #footer-middle {
  height: 5rem;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
footer #footer-last {
  height: 3rem;
  background-color: #171515;
  color: #888585;
  text-align: center;
  padding-top: 0.6rem;
  font-size: 0.8em;
}
footer #footer-last p:before {
  content: "\24D2";
}
footer .block-1 {
  width: 23%;
  display: table-cell;
  padding-top: 2em;
  padding-left: 1em;
}
footer .block-1 a {
  text-decoration: none;
  color: inherit;
}
footer .block-1 a:hover {
  background-color: inherit!important;
  text-decoration: underline!important;
}
footer .block-2 {
  width: 18%;
  display: table-cell;
  padding-left: 2em;
  padding-top: 2em;
}
footer .block-2 ul {
  list-style-type: none;
  line-height: 2rem;
}
footer .block-2 ul li {
  color: inherit;
  font-size: 0.9em;
}
footer .block-2 ul li a {
  text-decoration: none;
  color: inherit;
}
footer .block-2 ul li a:hover {
  color: #fff;
  background-color: inherit;
  text-decoration: underline;
}
footer .block-3 {
  width: 15%;
  display: table-cell;
  padding-left: 2em;
  padding-top: 2em;
}
footer .block-3 ul {
  list-style-type: none;
  line-height: 2rem;
}
footer .block-3 ul li {
  color: inherit;
  font-size: 0.9em;
}
footer .block-3 ul li a {
  text-decoration: none;
  color: inherit;
}
footer .block-3 ul li a:hover {
  background-color: inherit;
  text-decoration: underline;
}
footer .linkbox {
  color: #c1c1c1;
  text-align: left;
  font-size: 0.8em;
}
footer .linkbox a {
  background-color: #171515;
  text-decoration: none;
  color: inherit;
  white-space: nowrap;
  padding: 0.5em 2em;
}
footer .linkbox a:hover {
  color: #fff;
}
.cc_container .cc_btn {
  background-color: #e4e4e4 !important;
  /* Farbe des Buttons */
  color: #000 !important;
  /* Textfarbe des Buttons */
}
.cc_container {
  background: #171515 !important;
  /* Hintergrundfarbe des gesamten Bereichs */
  color: #c1c1c1 !important;
  /* Schriftfarbe des gesamten Bereichs */
}
.cc_container a {
  color: #2c6c93 !important;
  /* Textlink-Farbe "Mehr Infos" */
}
@media (max-width: 1500px) {
  header .header-wrapper {
    width: 90%;
  }
  header #logo {
    position: absolute;
    left: 56rem;
  }
  header #logo-mi {
    position: absolute;
    left: 50rem;
  }
  #nav-inner-wrapper {
    width: 90%;
  }
  main .main-inner-wrapper {
    width: 90%;
    padding-left: 2em;
    padding-right: 2em;
  }
  main .inner-wrapper-content {
    width: 90%;
  }
  main footer #footer-first {
    width: 90%;
  }
  main footer #footer-middle {
    width: 100%;
  }
}
@media (max-width: 1400px) {
  header .header-wrapper {
    width: 100%;
  }
  header #logo {
    position: absolute;
    left: 50rem;
  }
  header #logo-mi {
    position: absolute;
    left: 44rem;
  }
  #metanav {
    right: 2rem;
  }
  #nav-inner-wrapper {
    width: 100%;
  }
  main .main-inner-wrapper {
    width: 100%;
  }
  main article {
    padding-left: 0;
  }
  main .inner-wrapper-content {
    display: block;
    width: 100%;
    height: auto;
  }
  main .content {
    display: block;
    width: 100%;
    padding-bottom: 5rem;
  }
  main .content img {
    float: left;
    margin-right: 1rem;
  }
  main .content h3 {
    margin-top: 0;
  }
  main .maps {
    padding-left: 0;
  }
  footer #footer-first {
    width: 100%;
  }
  footer #footer-middle {
    width: 100%;
  }
}
@media (max-width: 1000px) {
  main .content {
    padding-bottom: 2rem;
  }
  main .content img {
    float: none;
  }
  main .content h3 {
    margin-top: 1rem;
  }
}
@media (max-width: 930px) {
  header .header-wrapper {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  header #logo {
    position: absolute;
    left: 7rem;
    top: 0;
  }
  header #logo img {
    width: 60%;
  }
  header #logo-mi {
    position: absolute;
    left: 3rem;
    top: 0;
  }
  header #logo-mi img {
    width: 60%;
  }
  #bildbox {
    width: auto;
    height: 20rem;
    background: url(../images/banner_kl.jpg) no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
  }
  #bildbox-1 {
    width: auto;
    height: 20rem;
    background: url(../images/banner_fuso1_klein.jpg) no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
  }
  #hauptnav ul li a {
    padding: 0 1.5rem;
  }
  #hauptnav ul li span {
    padding: 0 1.5rem;
  }
  #hauptnav ul li:hover ul li a {
    padding-right: 0.5rem;
  }
  main .main-inner-wrapper {
    display: block;
    padding-top: 0rem;
  }
  main .wrapper-article {
    display: block;
  }
  main article {
    width: 100%;
    display: block;
    padding-bottom: 0;
  }
  main .form {
    width: 100%;
    padding: 3em 2em 3em 2em;
    display: block;
  }
  main .maps {
    padding: 2em 0 5em 3em;
    display: block;
    border-top: 1px solid #fff;
  }
  footer {
    height: 18rem;
  }
  footer #footer-first {
    height: 10rem;
    display: table;
  }
  footer .block-1 {
    width: auto;
  }
  footer .block-2 {
    width: auto;
  }
  footer .block-3 {
    width: auto;
    display: none;
  }
}
@media (max-width: 690px) {
  #metanav {
    width: 100%;
    right: 0;
  }
  header {
    height: 10rem;
    padding-top: 5rem;
    position: relative;
  }
  #logo {
    display: none;
  }
  #logo-mi {
    display: none;
  }
  h1 {
    font-size: 2.3em;
  }
  label.responsive-nav-label {
    position: relative;
    display: block;
    padding: 20px;
    background: #222;
    cursor: pointer;
    color: #fff;
  }
  label.responsive-nav-label span {
    margin-right: 10px;
  }
  #hauptnav {
    position: absolute;
    top: -9999px;
  }
  #hauptnav ul {
    height: auto !important;
    width: 100%;
    right: 0 !important;
    left: 0 !important;
  }
  #hauptnav ul li {
    display: block;
  }
  #hauptnav ul li a {
    background: #fff;
    font-size: 0.9em;
  }
  #hauptnav ul li a:hover {
    background-color: #fff;
    color: #000;
    text-decoration: underline;
  }
  #hauptnav ul li ul {
    position: relative !important;
    width: auto;
    height: auto !important;
    left: 0 !important;
    top: 0 !important;
    display: block;
    padding-left: 1em;
    background-color: #fff;
    font-size: 0.9em;
  }
  #hauptnav ul li ul li {
    font-size: 1.0em !important;
    background-color: #fff;
    color: #000;
    border-top: none;
    line-height: 2rem;
  }
  #hauptnav ul li ul li:hover {
    background-color: #fff !important;
  }
  #hauptnav ul li ul li a {
    background-color: #fff;
    font-size: 0.9em;
    color: #000;
  }
  #hauptnav ul li ul li a:hover {
    background-color: #fff !important;
    color: #000;
    text-decoration: underline;
  }
  input#responsive-nav[type=checkbox]:checked ~ #hauptnav {
    position: relative;
    top: 0;
  }
  #bildbox {
    height: 22rem;
  }
  .content {
    padding: 0;
  }
  iframe {
    width: 90%;
  }
  footer {
    height: 60rem;
  }
  footer #footer-first {
    height: 47rem;
    display: block;
  }
  footer #footer-middle {
    height: 9rem;
  }
  footer .block-1 {
    display: block;
    text-align: center;
  }
  footer .block-2 {
    display: block;
    text-align: center;
  }
  footer .block-3 {
    display: inline;
    text-align: center;
  }
  footer .linkbox {
    text-align: center;
  }
  footer .linkbox a {
    padding: 0.5em 1em;
  }
}
@media (max-width: 645px) {
  h1 {
    font-size: 1.5em;
  }
  h1 span:first-of-type {
    font-size: 2.5rem;
  }
  h1 span:nth-of-type(2) {
    font-size: 1.0rem;
  }
  h1 span:last-of-type {
    font-size: 2.5rem;
  }
  h2 {
    font-size: 1.4em;
    letter-spacing: normal;
  }
}
@media (max-width: 460px) {
  #metanav {
    display: none;
  }
  header {
    height: 6rem;
    padding-top: 2rem;
  }
  main .content img {
    width: 100%;
  }
  footer {
    height: auto;
  }
  footer #footer-middle {
    height: 9rem;
  }
  footer .block-2 {
    display: block;
  }
}
@media (max-width: 430px) {
  h1 {
    font-size: 1.2em;
  }
  h1 span:first-of-type {
    font-size: 2.0rem;
    color: #de1616;
  }
  h1 span:nth-of-type(2) {
    font-size: 0.8rem;
    color: #fff;
  }
  h1 span:last-of-type {
    font-size: 2.0rem;
    color: #de1616;
  }
}
@media (max-width: 390px) {
  main {
    font-size: 0.8em;
  }
  footer #footer-last {
    font-size: 0.7em;
  }
}
@media (max-width: 355px) {
  h1 {
    font-size: 1.0em;
  }
  h1 span:first-of-type {
    font-size: 1.7rem;
    color: #de1616;
  }
  h1 span:nth-of-type(2) {
    font-size: 0.6rem;
    color: #fff;
  }
  h1 span:last-of-type {
    font-size: 1.7rem;
    color: #de1616;
  }
}
