@font-face {
  font-family: "Material Icons";
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/MaterialIcons-Regular.eot); /* For IE6-8 */
  src: local("Material Icons"),
       local("MaterialIcons-Regular"),
       url(../fonts/MaterialIcons-Regular.woff2) format("woff2"),
       url(../fonts/MaterialIcons-Regular.woff) format("woff"),
       url(../fonts/MaterialIcons-Regular.ttf) format("truetype");
}

.material-icons {
  font-family: "Material Icons";
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: "liga";
}

.columns {
  display: flex;
  margin-left: -.75rem;
  margin-right: -.75rem;
  margin-top: -.75rem;
}

.columns.single {
	margin-bottom:.75rem;
	justify-content:space-around;
}

.column {
  display: block;
  flex-basis: 0;
  flex-grow: 1;
  flex-shrink: 1;
  padding: .75rem;
}

.columns.single .column {
	flex:0 0 50%;
}

h1 {
  font-size: 3rem;
}

h2 {
  font-size: 2.4rem;
}

h3 {
  font-size: 1.8rem;
}

h4 {
  font-size: 1.2rem;
}

h5 {
  font-size: 1rem;
}

h6 {
  font-size: .75rem;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.4;
}

.thin-size {
  font-weight: 300;
}

h4 span {
  font-size: 60%;
  color: #444;
}

.teal {
  background-color: #00B0E6 !important;
}

.teal-text {
  color: #00B0E6 !important;
}

.object-fit {
  width: 100%;
  object-fit: cover;
}

a {
  cursor: pointer;
}
i.small {
  font-size: 3rem;
}
.side-nav li:hover, .side-nav li:active, .side-nav li:focus, .side-nav li a.teal-text.current {
  background: rgb(0, 176, 230) !important;
}

.side-nav li:hover a.teal-text, .side-nav li:active a.teal-text, .side-nav li:focus a.teal-text, .side-nav li a.teal-text.current {
  color: #fff !important;
}

.side-nav li:hover i.teal-text {
  color: #fff !important;
}

.side-nav li.schliessen:hover, .side-nav li.schliessen:active, .side-nav li.schliessen:focus {
  background: transparent !important;
}

.side-nav li>a {
  font-size: 18px;
}

.side-nav li>a:first-child {
  margin: 1.5rem 0;
}

#sidenav-overlay {
  background-color: rgba(0, 0, 0, .3);
}
.side-nav li.lang {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.lang .link-divider {color: #00b0e6;}
@media only screen and (min-width: 993px) {
  .container {
    width: 80%;
  }
}

@media only screen and (min-width: 601px) {
  nav, .nav-wrapper .container {
    height: 100px !important;
    position: static !important;
  }
}

.nav-wrapper .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media only screen and (min-width: 993px) {
  nav a.button-collapse {
    display: block !important;
    margin-left: auto;
  }
}
@media only screen and (min-width: 320px) {
  nav a.button-collapse {
    margin-left: auto;
  }
}
nav .brand-logo {
  position: static;
}

@media only screen and (max-width: 602px) {
  a.brand-logo.left img {
    width: 90%;
  }
}

header img {
  display: block;
}

.hero, .hero-bottom {
  background: url("../img/190415_ps_home-oben.jpg") no-repeat left top #021420;
  background-size: cover;
  max-height: 492px;
  height: 492px;
}

.hero .container {
  display: flex;
  align-items: center;
  max-height: 492px;
  height: 492px;
}

.hero-bottom {
  background: url("../img/151020_ps_home-unten.jpg") no-repeat left top;
  background-size: cover;
}
.hero-bottom-text, .claim {
  padding: 3rem 0;
}
.hero-bottom {
  border-bottom: 10px solid #00b0e6;
}
.column.skills {
  display: flex;
}

.col-wrapper {
  padding: 30px;
  border: 1px solid #ddd;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: box-shadow .3s ease-in-out;
}

.competence .col-wrapper {
  flex: 1 0 24%;
}
.competence .col-wrapper img {
  height: 100%;
}
@supports (display: grid) {
  img.responsive-img,
  video.responsive-video {
    max-width:100%;
    height:auto
  }
  .competence .col-wrapper img {
    height: auto;
  }
}
.xing img {
  max-width: 60px;
  height: auto;
  vertical-align: middle;
}

.card.horizontal {
  border: 1px solid transparent;
}
.xing-cards .card.horizontal { /*21-10-19 / us*/
	min-height: 230px;
}
.col-wrapper:hover, .card.horizontal:hover {
  box-shadow: 0 2px 18px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 18px -2px rgba(0, 0, 0, 0.2);
  border: 1px solid transparent;
}

.card.card.horizontal .card-image {
  display: inline-flex;
  align-items: center;
  margin-left: 2rem;
}

.card.horizontal .card-image img {
  max-width: 108px;
  height: auto;
}

.profile {
  padding-left: 60px;
}

.profile span {
  display: block;
}

/* Referenzen */

.reference .columns {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: repeat(2, 1fr);
  -ms-grid-rows: minmax(0, 680px);
  grid-template-rows: minmax(0, 680px);
}
.reference .columns .column.ref-text {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
}

.reference .columns .column.ps-slider {
  -ms-grid-column: 2;
  -ms-grid-row: 1;
}
@media (max-width: 767px) {
  .reference .columns {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -ms-grid-rows: minmax(0, 680px) auto;
    grid-template-rows: minmax(0, 680px) auto;
  }
  .reference .columns .column.ref-text {
    -ms-grid-column:1;
    grid-column:1/2;
    -ms-grid-row:2;
    grid-row: 2/3;
  }
  .reference .columns .column.ps-slider {
    -ms-grid-column:1;
    grid-column:1/2;
    -ms-grid-row:1;
    grid-row: 1/2;
  }
}
.reference .col-wrapper {
  display: block !important;
  height: 100%;
}
.slider-wrapper {
  background: #00B0E6;
  position: relative;
  height: 100%;
}
.ref-text {
  font-size: 110%;
}

.team, .leadership {
  display: flex;
}

.team .center, .leadership .center {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.team .center h2, .team .center p, .leadership .center h2, .leadership .center p {
  width: 80%;
}

.tm-block-divider.tm-block-default:before, .tm-block-divider.tm-block-dark:before, .tm-block-divider.tm-block-primary:before {
  content: "";
  background: rgb(0, 176, 230) !important;
  background-image: -webkit-linear-gradient(to right, #00b0e6 0%, #00b0e6 50%, #00b0e6 100%) !important;
  background-image: linear-gradient(to right, #00b0e6 0%, #00b0e6 50%, #00b0e6 100%) !important;
}

.tm-divider {
  width: 300px;
  height: 2px;
  margin: 30px auto;
  background: rgb(0, 176, 230) !important;
  background-image: -webkit-linear-gradient(to right, #00b0e6 0%, #00b0e6 32%, #00b0e6 33%, #00b0e6 66%, #255f70 67%, #255f70 100%) !important;
  background-image: linear-gradient(to right, #00b0e6 0%, #00b0e6 32%, #00b0e6 33%, #00b0e6 66%, #255f70 67%, #255f70 100%) !important;
}

.page-footer {
  margin-top: 8rem;
  padding-top: 4rem;
}
.page-footer .footer-copyright {
  background-color: transparent;
}
.footer-copyright .container {
  margin-top: 2rem;
  padding-bottom: 2rem;
}
.tm-totop-scroller {
  display: flex;
  width: 24px;
  height: 24px;
  margin: 2rem auto;
  text-decoration: none !important;
  transition: all 0.05s linear 0s;
  border: .5px solid;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
}
.tm-totop-scroller:hover {
  background-color: rgba(255,255,255,.5);
  color: rgb(0, 176, 230) !important;
}
.requirements {
  margin-bottom: 4rem;
}
.requirements li {
  border-bottom: 1px solid #ddd;
  padding: .5rem 1rem
}
.requirements li:last-child {
  border-bottom: none;
}
/* iPad Pro 12" 2732x2048 Landscape*/
@media screen and (min-height: 2048px) and (min-width: 2732px){
body {font-size: 22px;}
.hero, .hero-bottom {height: 47vh;max-height: 47vh;}
}
/* iPad Pro 12" 2048x2732 Portrait */
@media screen and (min-width: 2048px){
  body {font-size: 20px;}
  .hero, .hero-bottom {background-size: contain;background-position: right;background-color: #021420;}
  }
/* iPad 1024x768 Landscape */
@media screen and (max-width: 1024px){
.hero, .hero-bottom {background-position: center top;}
.profile {padding:0;}
.card.card.horizontal .card-image {margin-left:1rem;margin-top:2.5rem;align-items:flex-start;}
.card.horizontal .card-image img {max-width:70px;}
.card .card-content .card-title {font-size:18px;line-height:24px;}
}
/* iPad 768x1024 Portrait */
@media screen and (max-width: 1023px){
  .hero {background-position:right top;}
  .hero-bottom {display:none;}
  .hero h1 {text-shadow:2px 2px 2px rgba(0, 0, 0, .5);}
  .competence .columns, .reference .columns, .teaser .columns {flex-wrap:wrap;}
  @supports (display: grid) {.reference .columns {flex-direction: column-reverse;}}
  .competence .column.skills {min-width:50%;width:50%;}
  .teaser .column {min-width:100%;width:100%;}
  .card.horizontal {flex-direction:column;align-items:center;text-align:center;min-height: 320px !important;}
  .card.card.horizontal .card-image {justify-content:center;margin: 2rem auto 0;}
  .card.horizontal .card-image img {max-width:100px;}
  .page-footer {text-align:center;}
  }
/* mobile bis 650px */
@media screen and (max-width:650px){
  .hero, .hero .container {height: auto;background-size: cover;}
  .hero h1 {font-size:2.2rem;margin:3em 0;}
}
@media screen and (max-width:500px) {
  .claim h3 {font-size:18px;text-align:center;}
  .hero-bottom-text {margin-top:0;margin-bottom:0;padding-bottom:0;border-top:10px solid #00B0E6;}
  .competence h3.grey-text {font-size:18px;font-weight:400;}
  .competence .column.skills {min-width:100%;width:100%;}
  .skills .col-wrapper.center {display:flex;flex-direction:row;justify-content:flex-start;border-left:none;border-top:none;border-right:none;border-bottom:1px solid #ddd !important;align-items:flex-start;width:100%;}
  .skills .col-wrapper.center.last {border-color:transparent !important;}
  .skills .col-wrapper.center img {max-width:70px;height:auto;}
  .skills .col-wrapper.center h4 {text-align:left;line-height:1;margin-left:1rem;}
}
@media screen and (max-width: 1023px) {
  .skills h4 {font-size:15px;}
}

/* ePrivacy, Cookie Consent */

/* Cookie Banner */
.cc-compliance {
  min-width: 300px; /* IE */
}
.cc-banner, .cc-message {
  padding-right: 2em;
}
.cc-compliance a.btn-close {
  outline: 1px solid rgba(255,255,255,1);
  display: flex;
  padding: .4em .8em;
  margin-left: 1em;
  color: rgba(255,255,255,1);
}
.cc-compliance a.btn-close::after {
  content: "Schliessen";
  display: inline-block;
  padding-left: .5em;
  font-weight: 400;
}
.de .cc-compliance a.btn-close::after {
  /*content: "Schliessen";*/
  content: "Nein, ablehnen";
}
.en .cc-compliance a.btn-close::after {
  /*content: "Close";*/
  content: "No, I refuse";
}

/* Settings */

.accordion-item {
  background: rgba(0, 176, 230, 1);
  outline: 1px solid rgba(0, 176, 230, 1);
  outline-offset: 5px;
  padding: 1em;
}
.accordion-header {
  font-weight: 700;
}
.accordion-header,
.accordion-content {
  color: rgba(255, 255, 255, 1);
}
.optOut-link {
  display: flex;
  position: relative;
  color: rgba(255, 255, 255, 1);
  line-height: 1;
  transition: .5s;
}

.optOut-link::before {
  content: "";
  width: 60px;
  height: 30px;
  display: block;
  border: 2px solid #fff;
  background: rgba(28, 178, 20, 1);
  border-radius: 30px;
  margin-right: .5em;
}

.optOut-link::after {
  content: "";
  width: 27px;
  height: 27px;
  display: block;
  border: 1px solid #fff;
  border-radius: 50%;
  margin-right: .5em;
  position: absolute;
  left: 2px;
  top: 2px;
  background: #fff;
  background-size: 500% 500%;
}
.optOut-item {
  margin: 1em 0;
}
.optOut-item a {
  display: flex;
  align-items: center;
}
.deactivated {
  display: flex;
  align-items: center;
  position: relative;
  line-height: 1;
  transition: .5s;
}

.deactivated::before {
  content: "";
  width: 60px;
  height: 30px;
  display: block;
  border: 2px solid #fff;
  border-radius: 30px;
  margin-right: .5em;
  background: transparent;
}

.deactivated::after {
  content: "";
  width: 27px;
  height: 27px;
  display: block;
  border: 1px solid #fff;
  border-radius: 50%;
  margin-right: .5em;
  position: absolute;
  left: 32px;
  top: 2px;
  background: #fff;
}

/* NEW yt: 150623 */
.thin-size {
  font-weight: 300;
}

.bold-size {
  font-weight:500;
}

.small-size {
  font-size: 14.5px;
}

.data-protection h3 {
	margin-bottom:0;
}

.data-protection h3 + ul,
.data-protection h3 + p{
	margin-top:5px;
}