@media (max-width: 1700px) {
  #inhaltsbereich > .frame-floatimages > .rahmen {
    max-width: 900px;
  }
}

@media (max-width: 1600px) {
  ul.hnavi,
  #oben.fixed ul.hnavi {
    width: auto;
    float: left;
    margin-left: 3%;
    position: relative;
    z-index: 2;
  }

  #oben .logo {
    z-index: 1;
  }

  #oben.fixed ul.hnavi {
    margin-left: 2%;
  }

  /*   #inhaltsbereich > .frame-grauerbalken > .rahmen {
        max-width: 800px;
    } */

  .hundertprozent .tx_cn-columns .row .col-15 {
    display: none;
  }

  .hundertprozent .tx_cn-columns .row .col-50 {
    width: 60% !important;
    margin-left: 3%;
  }

  .hundertprozent .tx_cn-columns .row .col-33 + .col-50 {
    margin-left: 0;
  }
}

@media (max-width: 1450px) {
  #inhaltsbereich > .frame > .rahmen {
    width: 90%;
  }

  ul.hnavi,
  #oben.fixed ul.hnavi {
    margin-left: 3.5%;
  }
}

@media (max-width: 1280px) {
  .frame-teaserbild .ce-bodytext a,
  .frame-zwischenheader .ce-bodytext {
    font-size: 22px;
    height: 53px;
    padding: 50px 30px 7px 85px;
    top: -13px;
    left: 30px;
  }

  .frame-zwischenheader .ce-bodytext h2 {
    font-size: 22px !important;
  }

  .frame-zwischenheader .ce-bodytext {
    height: 33px;
    padding-top: 70px;
  }

  .frame-teaserbild .ce-bodytext a::after,
  .frame-zwischenheader .ce-bodytext::after {
    height: 110px;
  }

  .hundertprozent .tx_cn-columns .row .col-33,
  .hundertprozent .tx_cn-columns .row .col-50 {
    width: 48% !important;
  }

  #oben ul.hnavi {
    margin: 58px 0 23px 2%;
  }

  #oben .logo {
    width: 280px;
    right: 2.5%;
  }

  #header {
    margin: 115px 0 0 0;
  }

  .jobs #inhaltsbereich {
    width: 850px;
    margin: 220px auto 250px;
  }

  .frame-vs {
    top: 25vw;
    left: 20%;
  }
}

@media (max-width: 1180px) {
  ul.hnavi li {
    margin: 0 5px;
  }

  #inhaltsbereich > .frame > .rahmen {
    width: 90%;
  }

  #inhaltsbereich > .frame-zwischenheader > .rahmen,
  #inhaltsbereich > .hundertprozent > .rahmen,
  #inhaltsbereich > .frame-pycs > .rahmen {
    width: 100%;
  }

  .tx_cn-columns .row .col-25 {
    width: 50% !important;
    margin-bottom: 2em;
  }

  .team + .team {
    margin-top: -15px;
  }

  #footer p {
    line-height: 1.6em;
  }

  #footer .rahmen {
    width: 90%;
    margin: 0 auto;
    max-width: 700px;
  }

  /* .page #inhaltsbereich {
        margin-bottom: 230px;
    } */
}

@media (max-width: 1320px) {
  ul.hnavi li {
    margin: 0 0 0 0;
  }

  .slidein {
    top: 120px;
    z-index: 100;
  }

  #header {
    margin: 78px 0 0 0;
  }

  #oben .logo {
    width: 200px;
  }

  .mob_button {
    display: block;
    margin: 14px 0 14px 3%;
  }

  #oben ul.hnavi {
    max-height: calc(100vh - 79px);
    overflow: auto;
    display: none;
    float: left;
    clear: both;
    width: 94% !important;
    margin: 0 3% !important;
    border-bottom: 1px solid #eee;
    transition: none;
  }

  ul.hnavi li {
    float: left;
    clear: both;
    width: 100%;
    display: block;
    border-top: 1px solid #eee;
  }

  ul.hnavi li a {
    padding: 15px 0;
  }
}

@media (max-width: 1090px) {
  .frame-buttonbox > .rahmen > a > .frame .ce-gallery {
    position: static;
    overflow: visible;
    margin: -20px -2.5% 15px;
    float: left;
    clear: both;
    width: 105%;
    text-align: center;
  }

  .frame-buttonbox > .rahmen > a > .frame .ce-gallery .ce-row {
    display: inline-block;
    float: none;
  }

  .frame-buttonbox > .rahmen > a > .frame .ce-textpic {
    overflow: visible;
  }

  .frame-buttonbox > .rahmen > a > .frame {
    max-width: 100%;
  }

  .frame-buttonbox > .rahmen > a > .frame .ce-gallery img {
    width: 100% !important;
    height: auto !important;
  }

  .frame-buttonbox > .rahmen > a > .frame h2 {
    font-size: 22px;
  }

  .frame-buttonbox > .rahmen > a > .frame {
    overflow: hidden;
    box-shadow: inset 0 40px 0 0 #fff;
  }

  .frame-buttonbox > .rahmen > a > .frame .ce-bodytext {
    float: left;
    clear: both;
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 1020px) {
  .jobs #inhaltsbereich {
    width: 700px;
  }

  .tx_cn-columns[data-cols="2"] .row .col-50 {
    width: 100% !important;
    margin: 0 0 60px 0;
  }

  .tx_cn-columns[data-cols="2"] .row > div:nth-child(even) > .frame-teaserbild,
  .tx_cn-columns[data-cols="2"] .row > div:nth-child(odd) > .frame-teaserbild {
    margin: 0 !important;
  }

  .col-50 .frame-teaserbild img {
    width: 100% !important;
  }

  .tx_cn-columns[data-cols="2"] .row > div > .frame-teaserbild {
    width: 100%;
  }

  .frame-pycs .image-caption {
    opacity: 1;
    padding: 10px 20px 10px 40px;
  }

  .team .ce-bodytext {
    opacity: 1;
  }
}

@media (max-width: 980px) {
  #inhaltsbereich > .frame-floatimages > .rahmen {
    max-width: 680px;
  }
}

@media (max-width: 920px) {
  .frame-vs {
    left: 25%;
  }
}

@media (max-width: 900px) {
  #oben.fixed .logo {
    width: 200px;
  }

  .frame-hellgrau h1 strong {
    font-size: inherit;
  }

  h1,
  h2,
  h3,
  h4 {
    font-size: 50px !important;
  }

  h3,
  h4 {
    font-size: 20px;
  }

  h1 + h2,
  h2 + h3 {
    font-size: 32px !important;
  }

  #inhaltsbereich .frame-jobs.frame-type-menu_subpages ul li a {
    padding: 30px 10px;
    width: calc(100% - 20px);
  }

  .frame-hellgrau .ce-gallery,
  .frame-hellgrau .ce-bodytext {
    width: 100%;
    float: left;
    clear: botH;
    margin: 0 0 0 0 !important;
  }

  .frame-hellgrau .ce-gallery {
    margin: 0 0 40px 0 !important;
  }
}

@media (max-width: 860px) {
  /* .frame-zahlenfakten > .rahmen > .frame-type-textmedia {
        display: block;
    } */

  .frame-zahlenfakten h3 {
    font-size: 30px !important;
  }

  .hundertprozent .tx_cn-columns .row .col-33 {
    width: 100% !important;
    margin: 0 0 2em 0;
    float: left;
  }

  .hundertprozent .tx_cn-columns .row .ce-gallery {
    float: right;
    display: inline-block;
    width: 45%;
    max-width: 300px;
    margin: 0 0 20px 20px !important;
  }

  .hundertprozent .tx_cn-columns .row .ce-gallery img {
    width: 100% !important;
    height: auto !important;
  }

  .hundertprozent .tx_cn-columns .row .col-50 {
    width: 100% !important;
    margin: 0 0 2em 0;
  }

  .hundertprozent .tx_cn-columns[data-cols="3"] .row > div > div {
    width: 100%;
    margin: 0;
  }

  #inhaltsbereich > .hundertprozent > .rahmen {
    width: 90% !important;
    margin: 0 auto;
    float: none;
  }

  .jobs #inhaltsbereich {
    width: 84%;
    padding-left: 3%;
    padding-right: 3%;
    overflow: hidden;
  }

  .jobs h3 {
    padding: 5px 10px 5px 3.5%;
    margin: 0 0 20px -3.5%;
  }

  .jobs #inhaltsbereich > .frame:last-child {
    padding: 20px 3.5%;
    margin: 0 -3.5%;
  }

  .jobs #inhaltsbereich > .frame:first-child {
    margin: -40px 0 20px 0;
  }
}

@media (max-width: 820px) {
  .frame-vs {
    display: none;
  }
}

@media (max-width: 800px) {
  .slidein .ce-intext.ce-right .ce-gallery {
    width: 30px;
  }

  .frame-stoerer .ce-bodytext > * {
    max-width: unset;
  }

  .frame-stoerer blockquote {
    margin-top: 0;
    border-radius: 0;
    padding: 20px;
    width: calc(100% - 40px);
    height: auto;
  }

  .frame-stoerer blockquote > * {
    width: 100%;
  }
}

@media (max-width: 770px) {
  h1,
  h2,
  h3,
  h4,
  .leistungen h1,
  .leistungen h2 {
    font-size: 40px !important;
  }

  h3,
  h4 {
    font-size: 20px;
  }

  h1 + h2,
  h2 + h3 {
    font-size: 24px !important;
  }

  #inhaltsbereich {
    margin-top: 20px;
  }

  #inhaltsbereich > .frame > .rahmen {
    margin: 20px auto;
  }

  .hundertprozent + .hundertprozent {
    margin-top: 0;
  }

  .powermail_fieldset {
    width: 100%;
    margin: 0 !important;
    float: left !important;
  }

  .powermail_fieldwrap_type_submit {
    margin-right: 20px;
  }

  .frame-anfrage .powermail_fieldset {
    margin-bottom: 30px !important;
  }

  .frame-anfrage .powermail_fieldwrap_hinweis {
    bottom: 300px;
    position: absolute;
  }

  #inhaltsbereich .powermail-errors-list {
    position: static;
  }

  #inhaltsbereich .powermail_fieldwrap_type_text {
    display: none;
  }

  #footer .rahmen {
    max-width: 500px;
  }

  /* .page #inhaltsbereich {
        margin-bottom: 280px;
    } */

  .frame-vs {
    padding: 10px 13px;
    left: 5%;
  }
}

@media (max-width: 700px) {
  .frame-teaserbild .ce-bodytext a {
    font-size: 16px;
    height: 30px;
    padding: 20px 10px 7px 35px;
    top: -6px;
    left: 20px;
  }

  .frame-teaserbild .ce-bodytext a::after {
    height: 57px;
  }
}

@media (max-width: 660px) {
  #inhaltsbereich > .frame > .rahmen {
    width: 84%;
  }

  #inhaltsbereich > .frame-zwischenheader > .rahmen,
  #inhaltsbereich > .frame-pycs > .rahmen {
    width: 100%;
  }
}

@media (max-width: 650px) {
  .frame-default.frame-type-textmedia .ce-textpic.ce-intext .ce-gallery {
    margin: 0 0 30px 0;
  }

  .frame-default.frame-type-textmedia .ce-textpic.ce-intext .ce-gallery,
  .frame-default.frame-type-textmedia .ce-textpic.ce-intext .ce-bodytext {
    width: 100%;
    float: left;
    clear: both;
  }
}

@media (max-width: 650px) {
  .frame-vs {
    width: 170px !important;
    top: 28vw;
  }

  .frame-vs p {
    margin-bottom: 10px;
  }
}
@media (max-width: 600px) {
  .tx_cn-columns .row .col-25 {
    width: 100% !important;
    margin-bottom: 2em;
  }

  #inhaltsbereich .frame-jobs.frame-type-menu_subpages ul li {
    width: 100%;
    clear: both;
    margin: 20px 0 0 0 !important;
  }

  #inhaltsbereich .frame-jobs.frame-type-menu_subpages ul li:first-child {
    margin: 0 0 0 0 !important;
  }

  #inhaltsbereich .frame-jobs.frame-type-menu_subpages ul li.act a {
    padding: 30px 10px;
  }

  #inhaltsbereich .frame-jobs.frame-type-menu_subpages ul li a {
    padding: 10px 10px;
  }
}

@media (max-width: 550px) {
  h1,
  h2,
  h3,
  h4,
  .leistungen h1,
  .leistungen h2 {
    font-size: 34px !important;
  }

  h3,
  h4 {
    font-size: 20px;
  }

  h1 + h2,
  h2 + h3 {
    font-size: 24px !important;
  }

  .hundertprozent .tx_cn-columns .row .ce-gallery {
    width: 100%;
    max-width: 100%;
    text-align: center;
  }

  .hundertprozent .tx_cn-columns .row .ce-gallery .ce-row {
    max-width: 300px;
    display: inline-block;
  }

  .frame-zahlenfakten > .rahmen > .frame-type-textmedia {
    width: 100%;
    margin: 0 !important;
  }

  .frame-anfrage .powermail_fieldwrap_hinweis {
    bottom: 515px;
    position: absolute;
  }

  #footer .ce-bodytext ul li {
    display: block;
    border-right: 0;
  }

  #footer .frame-type-menu_subpages ul {
    margin: 0 0 20px 0;
    float: left;
    clear: both;
    width: 100%;
  }

  #footer .frame-type-menu_subpages ul li {
    display: block;
    float: left;
    clear: both;
    padding: 10px 2%;
    margin: 0 0 5px;
    width: 96%;
    color: #fff;
    background: rgba(0, 0, 0, 0.1);
    border-left: 0;
  }

  #footer .frame-type-menu_subpages ul li a {
    color: #fff;
  }

  .slidein .ce-gallery .image img {
    width: auto;
    height: 50px !important;
  }

  /* .page #inhaltsbereich {
        margin-bottom: 500px;
    } */
}

@media (max-width: 500px) {
  #header .ce-row:nth-child(2) {
    width: 85px;
    top: auto;
    bottom: 50px;
  }

  .frame-zwischenheader .ce-bodytext {
    left: 0;
    padding-right: 0;
    padding-left: 75px;
    font-size: 18px;
    font-size: 22px;
    max-width: 50%;
  }

  .frame-zwischenheader .ce-bodytext {
    left: 25px;
  }

  .frame-zwischenheader .ce-bodytext::after {
    width: 66px;
    right: -66px;
  }

  .jobs {
    font-size: 16px;
  }

  .jobs h1,
  .jobs h2 {
    font-size: 20px !important;
  }

  .jobs h1 strong {
    font-size: 40px !important;
  }

  .jobs h1 + h2 {
    margin: -10px 0 50px !important;
  }

  .jobs h3 {
    font-size: 18px !important;
  }
}

@media (max-width: 470px) {
  body {
    font-size: 16px;
  }

  h1,
  h2,
  h3,
  h4,
  .leistungen h1,
  .leistungen h2 {
    font-size: 28px !important;
    margin: 0 0 1.2em 0;
  }

  h3,
  h4 {
    font-size: 20px;
  }

  h1 + h2,
  h2 + h3 {
    font-size: 20px !important;
  }

  .frame-anfrage .powermail_fieldwrap_hinweis {
    bottom: 475px;
    position: absolute;
    width: 80%;
  }

  .slidein .ce-gallery .image img {
    width: auto;
    height: 48px !important;
  }
}

@media (max-width: 420px) {
  #inhaltsbereich > .frame > .rahmen {
    width: 80%;
  }

  #inhaltsbereich > .frame-zwischenheader > .rahmen,
  #inhaltsbereich > .frame-pycs > .rahmen {
    width: 100%;
  }

  /* .slidein {
        left: -282px;
    } */

  .slidein .ce-bodytext {
    width: 230px;
  }

  .slidein .ce-gallery .image img {
    width: auto;
    height: 42px !important;
  }
}

@media (max-width: 400px) {
  .slidein {
    top: 100px;
  }

  #header {
    margin: 95px 0 0 0;
  }

  .frame-zwischenheader .ce-bodytext {
    top: -8px;
    height: 47px;
    padding: 20px 30px 3px 65px;
    font-size: 16px;
    max-width: 40%;
  }

  .frame-zwischenheader .ce-bodytext h2 {
    font-size: 16px !important;
  }

  .frame-zwischenheader .ce-bodytext {
    height: 30px;
    padding: 40px 30px 0 65px;
  }

  .frame-zwischenheader .ce-bodytext::after {
    height: 70px;
    width: 42px;
    right: -42px;
  }
}

@media (max-width: 380px) {
  h1,
  h2,
  h3,
  h4,
  .leistungen h1,
  .leistungen h2 {
    font-size: 22px !important;
    margin: 0 0 1.4em 0;
    line-height: 1.2em;
  }

  h3,
  h4 {
    font-size: 20px;
  }

  h1 + h2,
  h2 + h3 {
    font-size: 20px !important;
  }

  .slidein .ce-gallery .image img {
    width: auto;
    height: 40px !important;
  }
}
