header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
/**
*** SIMPLE GRID
*** (C) ZACH COLE 2016
**/

@import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic);

/* UNIVERSAL */

html,
body {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  left: 0;
  top: 0;
  font-size: 100%;
}

/* ROOT FONT STYLES */

* {
  font-family: 'Lato', Helvetica, sans-serif;
  color: #333447;
  line-height: 1.5;
}

/* TYPOGRAPHY */

h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.375rem;
}

h4 {
  font-size: 1.125rem;
}

h5 {
  font-size: 1rem;
}

h6 {
  font-size: 0.875rem;
}

p {
  font-size: 1.125rem;
  font-weight: 200;
  line-height: 1.8;
}

.font-light {
  font-weight: 300;
}

.font-regular {
  font-weight: 400;
}

.font-heavy {
  font-weight: 700;
}

/* POSITIONING */

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.justify {
  text-align: justify;
}

/* ==== GRID SYSTEM ==== */

.container {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.row {
  position: relative;
  width: 100%;
}

.row [class^="col"] {
  float: left;
  margin: 0.5rem 2%;
  min-height: 0.125rem;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
  width: 96%;
}

.col-1-sm {
  width: 4.33%;
}

.col-2-sm {
  width: 12.66%;
}

.col-3-sm {
  width: 21%;
}

.col-4-sm {
  width: 29.33%;
}

.col-5-sm {
  width: 37.66%;
}

.col-6-sm {
  width: 46%;
}

.col-7-sm {
  width: 54.33%;
}

.col-8-sm {
  width: 62.66%;
}

.col-9-sm {
  width: 71%;
}

.col-10-sm {
  width: 79.33%;
}

.col-11-sm {
  width: 87.66%;
}

.col-12-sm {
  width: 96%;
}

.row::after {
	content: "";
	display: table;
	clear: both;
}

.hidden-sm {
  display: none;
}

@media only screen and (min-width: 33.75em) {  /* 540px */
  .container {
    width: 80%;
  }
}

@media only screen and (min-width: 45em) {  /* 720px */
  .col-1 {
    width: 4.33%;
  }

  .col-2 {
    width: 12.66%;
  }

  .col-3 {
    width: 21%;
  }

  .col-4 {
    width: 29.33%;
  }

  .col-5 {
    width: 37.66%;
  }

  .col-6 {
    width: 46%;
  }

  .col-7 {
    width: 54.33%;
  }

  .col-8 {
    width: 62.66%;
  }

  .col-9 {
    width: 71%;
  }

  .col-10 {
    width: 79.33%;
  }

  .col-11 {
    width: 87.66%;
  }

  .col-12 {
    width: 96%;
  }

  .hidden-sm {
    display: block;
  }
}

@media only screen and (min-width: 95em) { /* 1200px */
  .container {
    width: 100%;
    max-width: 95rem;

  }
}

:root { 
  --alto: #d9d9d9;
  --black-haze: #f7f7f7;
  --electric-violet: #c400ff;
  --ghost: #c3cad9;
  --hawkes-blue: #d5e9ff;
  --lapis-lazuli: #3870b3;
  --nile-blue: #183b56;
  --shakespeare: #3f9ed8;
  --shuttle-gray: #5a6584;
  --tradewind: #5dafab;
  --white: #ffffff;
  --white-lilac: #f6f7fb;
 
  --font-size-l: 16px;
  --font-size-m: 14px;
  --font-size-xl: 18px;
  --font-size-xxl: 20px;
  --font-size-xxxl: 24px;
  --font-size-xxxxl: 48px;
  --font-size-xxxxxl: 50px;
 
  --font-family-montserrat: "Montserrat", Helvetica;
  --font-family-open_sans: "Open Sans", Helvetica;
}
.font-m {
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-m);
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0;
}

.montserrat-medium-shuttle-gray-18px {
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xl);
  font-style: normal;
  font-weight: 500;
}

.montserrat-semi-bold-shuttle-gray-20px {
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxl);
  font-style: normal;
  font-weight: 600;
}

.montserrat-medium-shuttle-gray-20px {
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxl);
}

.montserrat-medium-nile-blue-16px {
  color: var(--nile-blue);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-l);
  font-style: normal;
  font-weight: 500;
}

.subtitel-txt {
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxl);
  font-style: normal;
  font-weight: 500;
}

.montserrat-medium-shuttle-gray-48px {
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxxxl);
  font-style: normal;
  font-weight: 500;
}

.montserrat-medium-white-18px {
  color: var(--white);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xl);
  font-style: normal;
  font-weight: 500;
}

.opensans-bold-white-16px {
  color: var(--white);
  font-family: var(--font-family-open_sans);
  font-size: var(--font-size-l);
  font-style: normal;
  font-weight: 700;
}

.montserrat-bold-nile-blue-16px {
  color: var(--nile-blue);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-l);
  font-style: normal;
  font-weight: 700;
}

.montserrat-bold-shakespeare-16px {
  color: var(--shakespeare);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-l);
  font-style: normal;
  font-weight: 700;
}

.montserrat-bold-shuttle-gray-48px {
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxxxl);
  font-style: normal;
  font-weight: 700;
}

.montserrat-medium-lapis-lazuli-18px {
  color: var(--lapis-lazuli);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xl);
  font-style: normal;
  font-weight: 500;
}


@import url("https://cdnjs.cloudflare.com/ajax/libs/meyer-reset/2.0/reset.min.css");
@import url("https://fonts.googleapis.com/css?family=Montserrat:500,700,600|Open+Sans:400,700");


a
{
  text-decoration: none;
}

.invisible
{
  display: none;
}

#mainnav
{
  padding-top: 15px;
}

.mainnav-wrapper
{
  background-color: var(--white);
  padding-top: 10px;
  padding-bottom: 10px;
  width: 100vw;
  position: fixed;
  z-index: 99;
}



.mod_navigation li
{
  float: left;
  padding-right: 38px;
}

.mod_navigation .submenu
{
  position: relative;
  white-space: nowrap;
}

.mod_navigation .submenu:hover .level_2
{
  display: block;
}

.mod_navigation .submenu .level_2
{
  position: absolute;
  left: 0px;
  top: 25px;
  display: none;
  background-color: var(--white);
  padding: 5px;
  padding-left: 0px;
  width: 330px;
}

.klassen-aktiv .mod_navigation .submenu .level_2
{ 
  display: block;
}

.submenu 
{
  font-weight: 600 !important;
}

.submenu strong 
{
  font-family: var(--font-family-montserrat);
  font-weight: 600;
}

.sibling .submenu
{
  font-weight: 500 !important;
}

.mod_navigation .active .level_2
{
  display: block;
}

.klassen-aktiv strong
{
  font-size: var(--font-size-l);
  font-style: normal;
}

.mod_navigation .submenu li
{
  float: left;
  margin-right: 0px;
  padding-top: 3px;
  padding-right: 15px;
}

.mod_navigation li a
{
  color: var(--nile-blue);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-l);
  font-style: normal;
  font-weight: 500;

}

.nav-logo
{
  height: 80px;
}

.nav-logo-wrapper
{
  height: 80px;
  background-image: url(../../files/img/pso-logo-light-blue.svg);
  background-repeat: no-repeat;
}

.pink .nav-logo-wrapper
{
  background-image: url(../../files/img/pso-logo-pink.svg);
}

.green .nav-logo-wrapper
{
  background-image: url(../../files/img/pso-logo-green.svg);
}

.violett .nav-logo-wrapper
{
  background-image: url(../../files/img/pso-logo-violett.svg);
}

.textbild-full-width
{
  background-repeat: no-repeat;
  background-position: right top;
  background-color: gainsboro;
  background-size: cover;

  min-height: 600px;
}

.footer-blue {
  background-color: var(--lapis-lazuli);
  padding-top: 120px;
  padding-bottom: 40px;
}

.full-width-flex {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 15px;
  min-height: 45px;
  width: 100%;
}

.copyright {
  color: var(--white);
  font-weight: 500;
  height: 26px;
  line-height: 24px;
  text-align: center;
  margin: auto;
  margin-top: 10px;
}

.top-border {
  background-color: var(--white-lilac);
  height: 1px;
  width: 100%;
}

.social-icon {
  height: 24px;
  width: 24px;
  margin-right: 25px;
}

.footer-logo, .footer-logo-iso {
  background-image: url(../../files/img/pso-logo-white.svg);
  background-position: 50% 50%;
  background-size: cover;
  height: 55px;
  margin-top: 6.63px;
  width: 88px;
}

.footer-txt p, .footer-txt a
{
  letter-spacing: 0;
  font-weight: 500;
  color: var(--white);
  line-height: 28px;
}

.footer-txt a:hover
{
  color: var(--nile-blue);
  transition: color 0.3s ease-in-out; 
}

.footer-border
{
  margin-top: 60px;
}

.pso-header, .pso-klasse-header
{
  min-height: 100vh;
}

.subtitel-padding
{
  padding-bottom: 75px;
}

.pso-klasse-wrapper
{
  background-size: cover;
  background-position: top right;
}

.header-subtitel
{
  letter-spacing: 0;
  line-height: 20px;
}

.header-h1 {
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxxxxl);
  font-weight: 700;
  letter-spacing: 0.18px;
  line-height: 65px;
  margin-bottom: -2px;
  margin-top: 18px;
  min-height: 63px;
}

.titel-h2, .titel-h2 p
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxxxxl);
  font-weight: 500;
  letter-spacing: 0.18px;
  line-height: 65px;
  margin-bottom: -2px;
  margin-top: 18px;
  min-height: 63px;
}

.kontaktformular h2
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxxxxl);
  font-weight: 500;
  letter-spacing: 0.18px;
  line-height: 65px;
  margin-bottom: -2px;
  margin-top: 18px;
  min-height: 63px;
}

.zentriert .titel-h2
{
  margin-bottom: 20px;
}

.header-txt
{
  line-height: 32px;
  margin-top: 33px;
  padding-bottom: 60px;
  
}

.default-txt, .default-txt p, .content-text, .content-text p
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-open_sans);
  font-size: var(--font-size-xl);
  letter-spacing: 0;
  font-weight: 400;
}

.default-txt-16, .default-txt-16 p
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-open_sans);
  font-size: var(--font-size-l);
  letter-spacing: 0;
  font-weight: 400;
}

.box-text
{
  padding-top: 25px;
  
}

.klasse-buttons-on-level
{
  min-height: 700px;
}

.box-button
{
  padding-top: 20px;
}

.box-row
{
  padding-top: 60px;
}

.klasse-txt
{
  padding-top: 50px;
}

.klassen
{
  padding-bottom: 120px;
}

.klasse-image-wrapper
{
  height: 300px;
  width: 100%;
  background-size: cover;
  background-position: top right;
  border-radius: 15px;
  background-repeat: no-repeat;
}

.box-element-wrapper
{
  width: 80%;
}

.icon-text-audio
{
  padding-top: 80px;
  padding-bottom: 80px;
 
}

.icon-text-audio .audio-wrapper
{
  position: relative;
}

.sub-txt, .sub-txt p
{
  line-height: 32px;
  margin-top: 33px;
  font-weight: 600;
  line-height: 28px;
}

.pso-button, button
{
  border-radius: 8px;
  height: 42px;
  width: 180px;
  background-color: var(--lapis-lazuli);
  color: var(--white);
  font-family: var(--font-family-open_sans);
  font-size: var(--font-size-l);
  font-style: normal;
  font-weight: 700;
  display: block;
  padding-top: 16px;
  text-align: center;
  cursor: pointer;
}

button 
{
  border-radius: 8px;
  height: 58px;
  position: relative;
  width: 180px;
  padding-top: initial;
  box-shadow: none;
  border: none;
}


.pso-button:hover
{
  background-color: var(--shakespeare);
  transition: background-color 0.3s ease-in-out; 
}

.header-text-wrapper
{
  margin-top: 28vh;
}

.textbild-wrapper
{
  padding-top: 180px;
  padding-bottom: 180px;
}

.titel-full-wrapper
{
  padding-top: 125px;
  padding-bottom: 45px;
}

.header-image-border {
  width: 570px;
  height: 541px;
  background-image: url(../../files/img/header-image-border.png);
  background-size: cover;
}

.header-image-wrapper
{
  margin-top: 22vh;
  position: relative;
}

.header-image-bg-blue {
  position: absolute;
  left: 32px;
  top: 3px;
  width: 550px;
  height: 532px;
  background-image: url(../../files/img/header-image-bg-blue.png);
  background-size: cover;
}


.header-person {
  position: absolute;
  height: 658px;
  top: -124px;
  left: -38px;
}

.icon-wrapper
{
  width: 100px;
}

.icon-text-audio-wrapper, .klassen-person-wrapper
{
  background-color: #F7F7F7;
}

.person-image-wrapper
{
  height: 450px;
  width: 435px;
  background-size: cover;
}

.klassen-person-text-wrapper
{
  padding-top: 40px;
}

.klassen-person
{
  padding-top: 100px;
  padding-bottom: 100px;
}

.team-image-wrapper
{
  width: 100%;
  height: 380px;
  background-size: cover;
  background-position: center;
  border-radius: 15px;
}

.team-txt-name
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxl);
  font-style: normal;
  font-weight: 600;
}

.team-funktion
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xl);
  font-style: normal;
  font-weight: 500;
}

.team-name-wrapper
{
  padding-top: 35px;
  padding-left: 30px;
}

.grey-background
{
  background-color: var(--black-haze);
}

.box-button
{
  padding-top: 40px;
  padding-bottom: 80px;
}

.qAnda-home
{
  padding-bottom: 45px;
}

.button-zentriert
{
  padding-top: 15px;
}

.accordion-border
{
  border: 1px solid;
  border-color: var(--alto);
  border-radius: 12px;

  padding-left: 15px;
  padding-top: 20px;
 
}

.ui-accordion-header
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxl);
  font-style: normal;
  font-weight: 600;
  cursor: pointer;
}

.ui-accordion-icons
{
  background-image: url('/files/img/icon-cross.png');
  background-repeat: no-repeat;
  background-size: 20px;
  background-position: right center;
  margin-right: 20px;
}

.ui-accordion-header-active
{
  background-image: url('/files/img/icon-line.png');
}

.ui-accordion-content
{
  padding-top: 15px;
}

.ui-accordion-content p
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-open_sans);
  font-size: var(--font-size-l);
  letter-spacing: 0;
  font-weight: 400;
}

.rsts-skin-default .rsts-prev
{
  right: inherit;
  left: 25px; 
  bottom: calc(50% - 30px);

  height: 60px;
  width: 30px;

  background-image: url('/files/img/icon-left-white.svg');
  background-size: cover;

  border: none;
  border-radius: initial;
  box-shadow: none;
}

.rsts-skin-default .rsts-next
{
  right: 25px;
  bottom: calc(50% - 30px);

  height: 60px;
  width: 30px;

  background-image: url('/files/img/icon-right-white.svg');
  background-size: cover;

  border: none;
  border-radius: initial;
  box-shadow: none;
}

.mod_mmenu
{
  display: none;
}

.mm-menu--opened
{
  display: initial;
}

input {
  background-color: var(--white);
  border: 1px solid;
  border-color: var(--ghost);
  color: var(--shuttle-gray);
  border-radius: 8px;
  height: 56px;
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xl);
  font-style: normal;
  font-weight: 500;

  padding-left: 15px;
    
}


textarea {
  background-color: var(--white);
  border: 1px solid;
  border-color: var(--ghost);
  border-radius: 8px;
  height: 140px;
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xl);
  font-style: normal;
  font-weight: 500;

  padding-left: 15px;
  padding-top: 15px;

  width: calc(100% - 30px);
  margin-bottom: 10px;
}

.formbody .widget-text
{
  width: calc(50% - 30px);
  margin-bottom: 15px;
  margin-right: 30px;
  float: left;
}

.formbody input
{
  width: 100%;
}

.anfrage-form-wrapper
{
  margin-bottom: 15px;
}

.anfrage-formular
{
  margin-bottom: 160px;
}

.form-confirmation
{
  margin-bottom: 220px;
  color: var(--shuttle-gray);
  font-family: var(--font-family-open_sans);
  font-size: var(--font-size-l);
  letter-spacing: 0;
  font-weight: 400;
}

.login-nav-button a
{
  border: 2px solid;
  border-radius: 5px;
  border-color: var(--shakespeare);
  color: var(--shakespeare) !important;
  font-weight: 700 !important;

  text-align: center;

  display: block;
  width: 90px;
  padding-top: 5px;
  height: 28px;

  margin-top: -5px;
}

.login-nav-button a:hover
{
  text-decoration: none;
}

.submenu 
{
  background-image: url('/files/img/arrow-down.svg');
  background-repeat: no-repeat;
  background-size: 15px;
  background-position-y: 4px;
  background-position-x: 65px;

  display: block;
  height: 40px;
}

.no-content-header
{
  padding-bottom: 150px;
}

.absatz
{
  padding-bottom: 80px;
}

.testimonial-text p
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxxxl);
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.20px;
  line-height: 60px;
  margin-top: -6px;
  min-height: 240px;
}

.testimonial-wrapper
{
  padding-top: 180px;
  padding-bottom: 180px;
} 

.testimonial-name p
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxl);
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 20px;
  min-height: 26px;
  white-space: nowrap;

  padding-top: 25px;
}


.testimonial-icon
{
  height: 600px;
  width: 600px;
  top: -115px;
  left: -130px;
  position: absolute;
  background-image: url('/files/img/testimonial-pink.svg');
}

.testimonial-wrapper .rsts-nav-next, .testimonial-wrapper .rsts-nav-prev
{
  display: none !important;
}


.testimonial-wrapper .rsts-nav-item a
{
  height: 13px !important;
  width: 13px !important;
  border: none !important;
  box-shadow: none !important;
 
}

.rsts-skin-default-content .rsts-nav-bullets .rsts-nav-item a
{
  background-color: darkgrey;
}

.testimonial-wrapper .active
{
  background-color: var(--lapis-lazuli) !important;
  box-shadow: none !important;
}

a
{
  color: var(--lapis-lazuli);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xl);
  font-style: normal;
  font-weight: 500;
}

a:hover
{
  text-decoration: underline;
  transition: all 0.3s ease-in-out; 
}
.zentriert .content-text
{
  max-width: 80%;
}

.content-text a
{
  font-size: medium;
}


.pink .login-nav-button a
{
  color: #C25797 !important;
  border-color: #C25797 !important;
}

.green .login-nav-button a
{
  color: #5DAFAB !important;
  border-color: #5DAFAB !important;
}

.violett .login-nav-button a
{
  color: #8B77D1 !important;
  border-color: #8B77D1 !important;
}

.pink .pso-button
{
  background-color: #C25797;
}

.green .pso-button

{
  background-color: #5DAFAB;
}

.violett .pso-button
{
  background-color: #8B77D1;
}

.header-playnav
{
  position: absolute;
  top: 451px;
  left: 420px;
}

.header-slider-prev, .header-slider-next
{
  background-color: initial;
  border-radius: initial;
}

.header-slider-prev
{
  background-image: url(/files/img/icon-left-blue.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position-y: -17px;
  width: 40px;
  height: 44px;

  position: absolute;
  top: 72px;
  left: -50px;
}

.header-slider-next
{
  background-image: url(/files/img/icon-right-blue.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position-y: -17px;
  width: 40px;
  height: 44px;

  position: absolute;
  top: 72px;
  left: 115px;

}

.pink .testimonial-icon
{
  background-image: url(/files/img/testimonial-pink.svg);
}

.green .testimonial-icon
{
  background-image: url(/files/img/testimonial-green.svg);
}

.violett .testimonial-icon
{
  background-image: url(/files/img/testimonial-violett.svg);
}

.pink .testimonial-wrapper .active
{
  background-color: #C25797 !important;
}

.green .testimonial-wrapper .active
{
  background-color: #5DAFAB !important;
}

.violett .testimonial-wrapper .active
{
  background-color: #8B77D1 !important;
}

.pink .footer-blue
{
  background-color: #C25797;
}

.green .footer-blue
{
  background-color: #5DAFAB;
}

.green .mobileNavButton .fa-bars
{
  color: #5DAFAB;
}

.green #mobileNavLinks .login-nav-button
{
  color: #5DAFAB !important;
  border-color: #5DAFAB;
}

.violett .footer-blue
{
  background-color: #8B77D1;
}

.violett .mobileNavButton .fa-bars
{
  color: #8B77D1;
}

.violett #mobileNavLinks .login-nav-button
{
  color: #8B77D1 !important;
  border-color: #8B77D1;
}

.pink .widget-submit button
{
  background-color: #C25797;
}


.pink .mobileNavButton .fa-bars
{
  color: #C25797;
}

.pink #mobileNavLinks .login-nav-button
{
  color: #C25797 !important;
  border-color: #C25797;
}

.green .widget-submit button
{
  background-color: #5DAFAB;
}


.violett .widget-submit button
{
  background-color: #8B77D1;
}

.login-nav-button
{
  padding-right: 0px !important;
}

.playbutton, .playbutton-off
{
  background-image: url(/files/img/icons/play-button-blue.svg);
  background-position: 50% 50%;
  background-size: cover;
  height: 108px;
  width: 110px;
  position: absolute;
  top: 0px;
  left: 0px;
  border-radius: initial !important;
  background-color: initial !important;
}

.playbutton-off
{
  background-image: url(/files/img/icons/play-button-blue-off.svg);
}

.pink .playbutton
{
  background-image: url(/files/img/icons/play-button-pink.svg);
}

.violett .playbutton
{
  background-image: url(/files/img/icons/play-button-violett.svg);
}

.green .playbutton
{
  background-image: url(/files/img/icons/play-button-green.svg);
}

.playbutton-tostop
{
  background-image: url(/files/img/icons/stop-button-blue.svg);
}

.pink .playbutton-tostop
{
  background-image: url(/files/img/icons/stop-button-pink.svg);
}

.violett .playbutton-tostop
{
  background-image: url(/files/img/icons/stop-button-violett.svg);
}

.green .playbutton-tostop
{
  background-image: url(/files/img/icons/stop-button-green.svg);
}



.icon-text-audio .playbutton
{
  height: 54px;
  width: 55px;
  left: 85px;
  top: 60px;
}

.klassen-person .playbutton
{
  left: 380px;
  top: 330px;
}

.mobileNavButton
{
  display: none;
}

@media only screen and (max-width: 1060px) { /* 1060px */

  .pso-header .col-6
  {
    width: 100%;
  }

  .header-text-wrapper
  {
    margin-top: 65px;
    margin-bottom: 65px;

  }

  .pso-klasse-header .col-6
  {
    width: 100%;
  }

  .pso-klasse-header .header-text-wrapper
  {
    padding-right: 25px;
    padding-top: 65px;
  }

  .pso-header, .pso-klasse-header
  {
    min-height: initial;
  }

  .pso-klasse-wrapper
  {
    background-image: none !important;
  }


  .header-image-wrapper
  {
    width: 555px;
    margin-left: calc(50% - 277px);
  }

  .textbild-full-width
  {
    background-position-x: -30vw;
    min-height: initial;
    background-color: white;
  }

  .textbild .col-6
  {
    width: 60%;
  }

  .textbild-wrapper
  {
    padding-top: 50px;
    padding-bottom: 10px;
  }

  .formbody .widget-text
  {
    width: calc(100% - 30px);
    margin-bottom: 15px;
    margin-right: 30px;
    float: left;
  }

  .titel-h2, .titel-h2 p
  {
    font-size: 48px;
  }

  .box-klassen-element-wrapper
  {

  }

  .box-team .col-3
  {
    width: 25%;
  }

  

}

@media only screen and (max-width: 1560px) 
{
  .mainnav-wrapper
  {
    padding-left: 10px;
    width: calc(100vw - 40px);
  }
}


@media only screen and (max-width: 75em) { /* 1200px */
  
  .mobileNavButton
  {
    display: block;
  }
  
  .mobileNavButton
  {
    right: 25px !important;
  }

  .mainnav-wrapper
  {
    padding-left: 10px;
    width: calc(100vw - 40px);
  }
  
  
  .container
  {
    width: 85%;
  }

  #mainnav
  {
    display: none;
  }

  .header-image-border {
    width: 526px;
    height: 500px;
  }

  .header-image-bg-blue {
    position: absolute;
    left: 32px;
    top: 3px;
    width: 520px;
    height: 502px;
  }
    
  .header-person {
    position: absolute;
    height: 628px;
    top: -124px;
    left: -38px;
  }

  .pso-klasse-wrapper
  {
    background-position-x: 50%;
  }


  .header-slider-prev, .header-slider-next
  {
    width: 30px;
    height: 34px;
    background-position-y: -13px;
  }

  .header-slider-next
  {
    top: 55px;
    left: 96px;
  }

  .header-slider-prev
  {
    top: 55px;
    left: -50px;
  }
  
  .playbutton
  {
    height: 88px;
    width: 90px;
  }

  .header-playnav
  {
    top: 415px;
  }

  .header-text-wrapper
  {
    margin-left: 50px;
    padding-right: 35px;
  }

  .textbild-full-width
  {
    background-position-x: 0vw;
    min-height: initial;
    background-color: white;
  }

  .textbild-wrapper
  {
    padding-top: 50px;
    padding-bottom: 80px;
  }

  .titel-full-wrapper
  {
    padding-top: 85px;
  }

  .klassen
  {
    padding-bottom: 0px;
  }

  .titel-full .col-6
  {
    width: 100%;
  }

  .titel-h2, .titel-h2 p
  {
    font-size: 48px;
  }

  .box-team .col-3
  {
    width: 25%;
  }

  
}

@media only screen and (max-width: 920px) {  /* 920px */
  
  #wrapper
  {
    overflow-x: hidden;
  }

  .mobileNavButton
  {
    right: 5px !important;
  }

  .mainnav-wrapper
  {
    position: absolute;
  }

  .default-txt, .header-h1, .titel-h2, .header-subtitel, .box-text, .icon-wrapper
  {
    padding-left: 10px;
  }

  .footer-blue
  {
    padding-left: 10px;
    padding-right: 15px;
  }

  .pso-button, button
  {
    margin-left: 10px;
  }

  .button-zentriert .pso-button, .formbody button
  {
    margin-left: 0px;
  }

  .pso-klasse-header .col-6
  {
    width: 100%;
  }

  .pso-klasse-header .header-text-wrapper
  {
    padding-right: 25px;
    padding-top: 0px;
  }

  .container
  {
    width: 100%;
  }

  .textbild .col-6
  {
    width: 100%;
  }

  .header-text-wrapper
  {
    margin-left: 0px;
    margin-top: 150px;
  }

  .textbild-wrapper 
  {
    padding-bottom: 0px;
    padding-right: 60px;
  }

  .icon-text-audio .col-4
  {
    width: 100%;
  }

  .icon-text-audio .box-row
  {
    padding-top: 0px;
  }

  .box-element-wrapper
  {
    width: 95%;
  }

  .klassen .col-4
  {
    width: 100%;
  }

  .team .titel-h2, .team .titel-h2 p
  {
    font-size: 28px;
  }

  .titel-h2, .titel-h2 p
  {
    font-size: 45px;
    line-height: 55px;
    min-height: initial;
    padding-bottom: 20px;
  }

  .klasse-buttons-on-level
  {
    min-height: initial;
  }

  .box-team .col-3
  {
    width: 45%;
  }

  .qAnda-home .col-2
  {
    width: 0px;
  }

  .qAnda-home .col-8 
  {
    width: 85%;
  }

  .titel-full-wrapper
  {
    padding-bottom: 0px;
  }

  .qAnda-home .box-button
  {
    padding-bottom: 0px;
  }

  .ui-accordion-header
  {
    font-size: 16px;
    padding-right: 45px;
  }

  .anfrage .col-2
  {
    width: 0px;
  }

  .anfrage .col-8
  {
    width: 98%;
  }

  #footer .col-2
  {
    width: 100%;
  }

  .footer-blue
  {
    padding-top: 50px;
  }

  .anfrage-formular
  {
    margin-top: -80px;
    margin-bottom: 60px;
  }

  #werte .textbild-full-width
  {
    background-image: none !important;
    background-color: var(--black-haze);
  }

  .content-text
  {
    max-width: initial !important;
  }
  
  .testimonial-text p
  {
    font-size: 24px;
    line-height: 24px;
    min-height: initial;
    margin-top: 0px;
  }

  .testimonial-icon {
    height: 220px;
    width: 220px;
    top: -59px;
    left: -46px;
  }

  .testimonial-wrapper 
  {
    padding-top: 80px;
    padding-bottom: 30px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .testimonial-name p
  {
    font-size: 16px;
  }

  .no-content-header
  {
    padding-bottom: 80px;
  }

  .person-image-wrapper
  {
    height: 342px;
    width: 329px;
  }

  .klassen-person .playbutton 
  {
    left: 243px;
    top: 286px;
  }

  .klassen-person
  {
    padding-bottom: 0px;
  }

  .pso-header, .pso-klasse-header
  {
    min-height: initial;
  }

  .pso-klasse-wrapper
  {
    background-image: none !important;
  }

  .header-txt
  {
    padding-right: 45px;
  }

  .team-image-wrapper
  {
    min-height: 400px;
  }

}

@media only screen and (max-width: 33.75em) {  /* 540px */

  #wrapper
  {
    overflow-x: hidden;
  }
  
 
  
  .header-txt
  {
    padding-right: 0px;
  }

  .footer-blue {
    padding-top: 40px;
  }

  .footer-border {
    margin-top: 15px;
  }

  .col-6
  {
    width: 100%;
  }

  .nav-logo-wrapper
  {
    height: 70px;
  }

  .header-image-border {
    width: 406px;
    height: 385px;
  }

  .header-image-bg-blue {
    left: 100px;
    top: 16px;
    width: 335px;
    height: 326px;
  }
    
  .header-person {
    position: absolute;
    height: 411px;
    top: -86px;
    left: -27px;
  }

  .header-slider-prev, .header-slider-next
  {
    width: 30px;
    height: 34px;
    background-position-y: -13px;
  }

  .header-slider-next
  {
    top: 55px;
    left: 96px;
  }

  .header-slider-prev
  {
    top: 55px;
    left: -50px;
  }
  
  .playbutton
  {
    height: 88px;
    width: 90px;
  }

  .header-playnav
  {
    top: 317px;
    left: 307px;
  }

  .team .titel-h2, .team .titel-h2 p
  {
    font-size: 28px;
  }

  .titel-h2, .titel-h2 p
  {
    font-size: 32px;
    line-height: 40px;
    min-height: initial;
    padding-bottom: 20px;
  }

  .header-image-wrapper
  {
    margin-top: 22vh;
  }

  .mainnav-wrapper
  {
    height: 80px;
  }

  .textbild-wrapper 
  {
    padding-bottom: 0px;
    padding-right: 0px;
  }

  p
  {
    margin-right: 25px;
  }

  .team-buttons-on-level
  {
    padding-right: 65px;
  }

  .box-team .col-3, .box-team-row .col-3
  {
    width: 100%;
    padding-left: 25px;
    padding-right: 25px;
  }

  .team-image-wrapper
  {
    min-height: 450px;
  }

  .qAnda-home .col-8 
  {
    width: 85%;
  }

  .ui-accordion-header
  {
    font-size: 16px;
    padding-right: 45px;
  }

  .titel-full-wrapper {
    padding-top: 55px;
  }

  .anfrage-formular
  {
    margin-top: -80px;
    margin-bottom: 60px;
  }

  #werte .textbild-full-width
  {
    background-image: none !important;
    background-color: var(--black-haze);
  }

  .content-text
  {
    max-width: initial !important;
  }
  
  .testimonial-text p
  {
    font-size: 24px;
    line-height: 24px;
    min-height: initial;
    margin-top: 0px;
  }

  .testimonial-icon {
    height: 220px;
    width: 220px;
    top: -59px;
    left: -46px;
  }

  .testimonial-wrapper 
  {
    padding-top: 80px;
    padding-bottom: 30px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .testimonial-name p
  {
    font-size: 16px;
  }

  .no-content-header
  {
    padding-bottom: 80px;
  }

  .person-image-wrapper
  {
    height: 342px;
    width: 329px;
  }

  .klassen-person .playbutton 
  {
    left: 243px;
    top: 286px;
  }

  .pso-header, .pso-klasse-header
  {
    min-height: initial;
  }

  .pso-klasse-wrapper
  {
    background-image: none !important;
  }

}



@media only screen and (min-width: 33.75em){
  .container
  {
    width: 100%;
  }
}




/* MObile Nav */
.mobileNav
{
  position: absolute;
  right: 0px;
  top: 0px;
  z-index: 98;

}


.mobileNavOpen
{
  overflow-y: hidden;
}

.mobileNavOpen #container
{
  display: none;
}

.mobileNavOpen #footer
{
  display: none;
}

.mobileNavOpen .mainnav-wrapper
{
  background-color: initial;
}

.mobileNavClose
{
  overflow-y: initial;
}

.mobileNavClose #container
{
  display: initial;
}

.mobileNavClose #footer
{
  display: initial;
}

.mobileNavClose .mainnav-wrapper
{
  background-color: white;
}







.mobileNavButton
{
  font-size: 42px;
  position: fixed;
  right: 5px;
  top: 10px;
  z-index: 999;
  
  height: 80px;
  width: 100px;
  text-align: center;
  padding-top: 10px;

}

.mobileNavLinksWrapper
{
  width: 80%;
  margin: auto;
  padding-top: 20vh;

  text-align: center;
}

.mobileNavButton .fa-bars
{
  color: var(--lapis-lazuli);
}


.mobileNav #mobileNavLinks {
  
  display: none;

  min-height: 80vh;
  width: 100vw;

  padding-bottom: 45px;

  background-color: white

}


#mobileNavLinks .mobileNavLinkElement, #mobileNavLinks .mobileNavLinksTitle
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: 29px;
  font-weight: 600;
}




#mobileNavLinks .login-nav-button
{
  border: 2px solid;
  border-radius: 5px;
  border-color: var(--shakespeare);
  color: var(--shakespeare) !important;
  font-weight: 700 !important;

  text-align: center;

  display: block;
  width: 90px;
  padding-top: 5px;
  height: 28px;

  margin: auto;
  margin-top: 40px;
}


.widget-captcha
{
  padding-bottom: 15px;
  padding-right: 30px;
}



/** ISO Apassungen **/
.footer-logo-iso
{
  background-image: url(../../files/img/iso-logo-white.svg);
  width: 100px;
  height: 60px;
}

.iso .footer-blue
{
  background-color: #1b1b59;
}

.iso .pso-button, .iso .anfrage button
{
  background-color: #1b1b59;
}

.iso .anfrage-formular button
{
  background-color: #1b1b59;
}

.iso .submenu
{
  background-position-x: 100px;
}

.iso .klassen .titel-h2
{
  font-size: 25px;
}

.iso .sub-txt
{
  margin-top: -20px;
}

.iso .klasse-txt {
  padding-top: 25px;
  line-height: 30px !important;
}

.iso .klasse-buttons-on-level
{
  min-height: 640px;
}


.iso .login-nav-button a
{
  border-color: #1b1b59;
  color: #1b1b59 !important;
}

.iso .nav-logo-wrapper
{
  height: 90px;
  background-image: url(../../files/img/iso-logo-blue.svg);
}

.iso .mod_navigation .submenu .level_2
{
  padding-left: 5px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 0px;
  width: 300px;
}

.iso .trail .level_2
{
  display: none !important;
}

.iso .mobileNavButton .fa-bars 
{
  color: #1b1b59;
}

.iso .mod_navigation .submenu:hover .level_2
{
  display: block !important;
}

.iso .titel-h2
{
  line-height: 45px;
}

.iso .klassen .box-text
{
  min-height: 180px;  
}

.iso .header-image-bg-blue 
{
  background-image: url(../../files/img/header-image-bg-iso.png);
}

.iso .header-image-border
{
  background-image: url(../../files/img/header-image-border-iso.png);
}

.iso #mainnav 
{
  float: right;
}

.content-text h2
{
  color: var(--shuttle-gray);
  font-family: var(--font-family-montserrat);
  font-size: var(--font-size-xxxxxl);
  font-weight: 500;
  letter-spacing: 0.18px;
  line-height: 65px;
  margin-bottom: 30px;
  margin-top: 140px;
  min-height: 63px;
}

.content-text li
{
  color: var(--shuttle-gray);
  font-size: 20px;
  list-style-type: square;
  margin-left: 18px;
}

.iso .pso-klasse-header .pso-button
{
  width: 225px;
}
