@charset "UTF-8";

/* 

  Diese CSS-Datei definiert das mobile Styling der Seite

*/

/* -----  Min. 1800  --------------------------------------------------- */

@media all and ( min-width: 1800px ) {
  .hide1500 { display: none; }
  .show1500 { display: block; }

  article#knowhow .col_xl_3:nth-child(3n) .square { border-right: 1px solid #ffffff; }
  article#knowhow .col_xl_3:nth-child(-n + 4) .square { border-bottom: 1px solid #ffffff; }
  article#knowhow .col_xl_3:nth-child(4n) .square { border-right: 0; }
  article#knowhow h3 { font-size: 2.3vw; }

}

/* -----  Min. 2000  --------------------------------------------------- */

@media all and ( min-width: 2000px ) {
  .hide2000 { display: none; }
  .show2000 { display: block; }
}

/* -----  Max. 1400  --------------------------------------------------- */

@media all and (max-width: 1400px) {
  .hide1400 { display: none; }
  .show1400 { display: block; }

  #referenzen section#slider { margin: 0 40px; }

}

/* -----  Max. 1200  --------------------------------------------------- */

@media all and (max-width: 1200px) {
  .hide1200 { display: none; }
  .show1200 { display: block; }

  #referenzen img.logo { max-height: 55px; }

}

/* -----  Max. 1024  --------------------------------------------------- */

@media all and (max-width: 1024px) {
  .hide1024 { display: none; }
  .show1024 { display: block; }

  #welcome { background: #ffffff url('../images/bg_heart_mobile.jpg') right top no-repeat !important; background-size: 65% auto !important; }
  #referenzen section#slider { margin: 0; }

  #knowhow h5 { font-size: 1.2rem; }
  #knowhow .butoggle > i.icon-arrow-right { font-size: 1.2rem; }

  #beratung .col_l_4 { margin-top: 6vw; }
  #contact .col_l_6:first-child { margin-bottom: 6vw; }
  
  iframe.map { width: 100%; height: 40vw; }

  #calltoaction .mittig { margin: 5px 0; }

  #referenzen img.logo { max-height: 65px; }

  #karriere.pad6vw { padding: 10vw 6vw; }
  #karriere .padtop8vw { padding-top: 0; }

  #content .padtop8vw { padding-top: 6vw; }

  .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column { flex-basis: 100%!important; }
  .wp-block-columns { align-items: normal!important; box-sizing: border-box; display: flex; flex-wrap: wrap!important; }

  #law.padtop6vw { padding-top: 8vw; }

}

@media all and (orientation: landscape) and (max-width: 1024px) {
}
  
@media all and (orientation: portrait) and (max-width: 1024px) {
}
  
/* -----  Max. 768  ---------------------------------------------------- */
  
@media all and ( max-width: 768px ) {
  .hide768 { display: none; }
  .show768 { display: block; }

  h1 { font-size: 5.5vw; }
  h2 { font-size: 4.3vw; }
  h3 { font-size: 2.3vw; }
  h4 { font-size: 1.85rem; }
  h5 { font-size: 1.4rem; }
  h6 { font-size: 1.15rem; }

  .content h1 { font-size: 2.2rem; }
  .content h2 { font-size: 2.0rem; }
  .content h3 { font-size: 1.6rem; }
  .content h4 { font-size: 1.4rem; }
  .content h5 { font-size: 1.3rem; }
  .content h6 { font-size: 1.1rem; }

  hr { margin: 4vw 0; width: 90px; }

  iframe.map { width: 100%; height: 50vw; }

  header#page .logo img { margin: 20px 0 0 6vw; }

  #start section h1 { font-size: 8vw; }
  #start .logo img { top: 20px; left: 20px; }

  #welcome { background-size: 90% auto !important; }

  #knowhow { display: none !important; }

  #beratung .pad2vw { padding: 4vw; }

  #referenzen section#slider { margin: 0 6vw; }
  #referenzen img.logo { max-height: 45px; }

  #content .pad6_0vw, #contact .pad6_0vw, #karriere .pad6_0vw { padding: 10vw 0 12vw }
  #content .padtop8vw { padding-top: 1.75rem; }
  #content .featuredimg { margin-bottom: 10px; }

  #contact .col_l_5 { margin-bottom: 1.75rem; }

}
  
@media all and (orientation: landscape) and (max-width: 768px) {
}
  
@media all and (orientation: portrait) and (max-width: 768px) {
}

/* -----  Max. 600  ---------------------------------------------------- */
  
@media all and (max-width: 600px) {
  .hide600 { display: none; }
  .show600 { display: block; }
	
  .wp-block-image .alignright { float: none; margin: 0.5em 0 0.75em 0; width: 100%; }
}

/* -----  Max. 550  ---------------------------------------------------- */
  
@media all and (max-width: 550px) {
  .hide550 { display: none; }
  .show550 { display: block; }

  .hide { opacity: 1; margin-left: 0; margin-right: 0; }

  hr { margin: 20px 0; width: 60px; }

  iframe.map { width: 100%; height: 300px; }

  section { padding: 40px 20px; }

  #referenzen section { margin: 0 6vw; }

  h1 { font-size: 2.3rem; }
  h2 { font-size: 1.85rem; }
  h3 { font-size: 1.7rem; }
  h4 { font-size: 1.6rem; }
  h5 { font-size: 1.3rem; }
  h6 { font-size: 1.15rem; }

  .content h1 { font-size: 1.8rem; }
  .content h2 { font-size: 1.7rem; }
  .content h3 { font-size: 1.5rem; }
  .content h4 { font-size: 1.35rem; }
  .content h5 { font-size: 1.25rem; }
  .content h6 { font-size: 1.1rem; }

  .text { font-size: .9rem; line-height: 1.45em; }

  header#page .logo img,
  #start .logo img { min-width: 120px; }
  #start section h1 { font-size: 11vw; }

  #welcome { background-size: 100% auto !important; }

  #contact .col_l_6:first-child { margin-bottom: 0; }
  #contact .col_xxs_12 { margin-top: 30px; }

  #beratung .pad2vw { padding: 20px; }

  #referenzen section#slider { margin: 0 20px; }
  #referenzen img.logo { max-height: 60px; }

  #karriere .bottom { position: relative; padding-bottom: calc(50px + 1vw) !important; }

  footer section.padtop2vw { padding-top: 20px; }
  footer section.padbot2vw { padding-bottom: 20px; }

}

@media all and (orientation: landscape) and (max-width: 550px) {
}

@media all and (orientation: portrait) and (max-width: 550px) {
}

/* -----  Max. 400  ---------------------------------------------------- */
  
@media all and (max-width: 450px) {
  .hide450 { display: none; }
  .show450 { display: block; }
}
