/*experts overviews competencies*/
.tooltip-inner {
  max-width: 220px;
}
/*news*/
#news-modal .highlight-frame {
  display: inline-block;
  padding: 10px;
  border: 1px solid #fff;
}
/*awards*/
div.tiles.awards .text {
  font-size: 1.6rem;
  line-height: 1.55;
}
div.tiles.awards img.award {
  float: left;
  width: 75px;
  margin: 0px 15px 0 0;
}
div.tiles.awards .text h1 {
  margin: 0 0 20px;
}
div.tiles.awards .item {
  height: 390px;
}
div.tiles.awards .item .text {
  height: 390px;
  position: relative;
}
#awards-modal.modal {
  background-color: rgb(0, 0, 0, 0.1)
}
div.tiles.awards p {
  hyphens: none;
}
.caption {
  font-size: 1.1rem;
}
/*expansion*/
@media screen and (min-width: 980px) {
  .location-pin {
    position: absolute;
    left: 320px;
    top: 340px;
    width: 60px;
    z-index: -1000;
  }
}
@media screen and (max-width: 979px) {
  .location-pin {
    position: absolute;
    left: 80px;
    top: 440px;
    width: 60px;
    z-index: -1000;
  }
}
@media screen and (max-width: 622px) {
  .location-pin {
    position: absolute;
    left: 250px;
    top: 180px;
    width: 60px;
    z-index: -1000;
  }
}
/*xmas 2021*/
.xmas21-container {
  height: 480px;
  width: 350px;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  position: absolute;
  top: 30%;
  left: 50%;
  z-index: 1;
  transform: scaleX(0.6) scaleY(0.6);
}
.cloud {
  fill: rgb(139, 186, 229);
}
svg {
  position: absolute;
  top: 2;
  left: 0;
}
.plane {
  position: relative;
  -webkit-animation: float 3s infinite;
  animation: float 3s infinite;
}
@-webkit-keyframes float {
  50% {
    -webkit-transform: translateY(25px);
    transform: translateY(25px);
  }
}
@keyframes float {
  50% {
    -webkit-transform: translateY(25px);
    transform: translateY(25px);
  }
}
.hand {
  -webkit-transform: rotate(10deg);
  -ms-transform: rotate(10deg);
  transform: rotate(10deg);
  -webkit-animation: wave 1.5s infinite;
  animation: wave 1.5s infinite;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}
.blade {
  -webkit-animation: spin 1s infinite linear;
  animation: spin 1s infinite linear;
  -webkit-transform-origin: 50% 54%;
  -ms-transform-origin: 50% 54%;
  transform-origin: 50% 54%;
}
@-webkit-keyframes spin {
  100% {
    -webkit-transform: rotateX(360deg);
    transform: rotateX(360deg);
  }
}
@keyframes spin {
  100% {
    -webkit-transform: rotateX(360deg);
    transform: rotateX(360deg);
  }
}
@-webkit-keyframes wave {
  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
}
@keyframes wave {
  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
}
/*team email btn*/
div.tiles.partner .item .text a.email {
  position: absolute;
  right: 40px;
  top: 10px;
}
@media (max-width: 992px) div.tiles.partner .item .text a.email {
  right: 40px;
}
div.tiles .item a {
  font-weight: normal;
  letter-spacing: 0;
}
a.partner-email {
  position: absolute;
  right: 40px;
  top: 10px;
}
/*menu*/
a.partner-email {
  position: absolute;
  right: 2px;
  top: 7px;
}
navmenu-close svg {
  /* height: 25px;
    width: 25px;*/
  top: 5px;
}
/*xmas*/
#xmas-modal {
  display: none;
}
@media screen and (max-width: 940px) {
  .modal.xmas .xmas-content h1 {
    margin-top: 30px;
  }
  #overview-xmas .img-responsive {
    margin-top: -40px;
  }
}
@media screen and (min-width: 940px) {
  #overview-xmas .img-responsive {
    display: block;
    max-width: 110%;
    height: auto;
    margin-top: -75px;
    margin-left: 20px;
  }
  .modal.xmas .xmas-content h1 {
    margin-left: 100px;
  }
}
#xmas-modal .modal-header h1 {
  display: none;
}
/*--*/
.start-cursor {
  cursor: pointer;
}
@media screen and (min-width: 992px) {
  .lang-navigation {
    top: 87px;
  }
  button.navbar-toggle.navmenu-close {
    top: 92px !important;
  }
  .modal .modal-header .navmenu-close {
    top: 89px;
    left: 10px;
  }
  .modal .modal-header h1 {
    top: 88px;
    left: 60px;
  }
  .modal .modal-header .logo {
    right: 6px;
  }
  body #content-container .content-container-inner {
    padding-left: 95px;
  }
  .navmenu-close {
    top: 91px !important;
  }
  button.navbar-toggle.navmenu-close {
    top: 92px !important;
  }
  .navmenu-close svg {
    height: 24px !important;
    width: 16px;
  }
}
#mouse-movement-icon {
  bottom: 58px;
}
@media screen and (min-width: 765px) {
  .modal .modal-header .logo {
    right: -4px;
  }
}
@media (min-width: 1200px) {
  .content-container-right, .content-right {
    max-width: 470px;
  }
}
@media screen and (min-width: 765px) {
  .modal .modal-header .logo {
    right: 6px;
  }
}
@media screen and (max-width: 990px) {
  .modal .modal-header .navmenu-close {
    left: 10px;
  }
  .modal .modal-header h1 {
    position: absolute;
    top: 100px;
    left: 10px;
  }
  header.scrolled {
    height: 150px;
  }
  body #content-container {
    max-width: 100%;
  }
}
@media screen and (max-width: 480px) {
  header.scrolled {
    height: 130px;
  }
  .modal .modal-header .logo {
    right: -4px;
  }
}
/*newsletter stoerer*/
.newsletter-btn {
  z-index: 1000;
  position: absolute;
  top: 650px !important;
  right: 8px;
  width: 211px;
  height: 77px;
}
.newsletter-btn img {
  width: 211px;
  height: 77px;
}
@media screen and (max-width: 1090px) {
  .newsletter-btn {
    top: -300px;
    right: 0px;
  }
}
@media (max-width: 1090px) {
  .newsletter-btn {
    visibility: hidden;
  }
}
@media (min-width: 1090px) {
  .ios-newsletter-btn {
    visibility: hidden;
  }
}
/*news items mobile*/
@media screen and (max-width: 980px) {
  div.tiles.thirds .item {
    height: 350px;
  }
}
/*Berufsbezeichungen Profile*/
h6.job-desc {
  line-height: 1.65 !important
}
/*UP-UPC*/
.highlight {
  color: #e570c7 !important;
}
#content-container p a {
  color: #4e90d2;
  font-weight: 700;
}
.pswp img {
  background-color: white;
}
#content-container ul.links, #content-container ul.sub-navi {
  margin: 20px 0;
}
@media (min-width: 980px) {
  #up-upc .panel-body {
    padding: 10px 0 100px 0;
  }
  #up-upc img.up-upc {
    float: left;
    width: 45%;
    padding: 5px 20px 10px 0;
  }
}
@media (max-width: 979px) {
  #up-upc {
    float: none;
  }
  #up-upc .panel-body {
    padding: 10px 0 0px 0
  }
  #up-upc img.up-upc {
    float: none;
    width: 100%;
    padding: 0 20px 20px 0;
  }
}
/*xmas logo */
@media screen and (min-width: 992px) {
  .logo-xmas img {
    width: 100%;
    height: 100%;
    top: 0;
  }
  .logo-xmas {
    position: absolute;
    top: 20px;
    right: -110px;
    z-index: 100;
  }
  div.logo-xmas.visible-lg a.logo-white.pull-right img {
    display: none;
  }
}
@media (max-width: 980px) {
  .logo-xmas img {
    visibility: hidden !important;
  }
}
/*Karriere*/
h6 {
  line-height: inherit;
  margin-bottom: 20px;
}
h2 {
  font-family: 'work_sanslight', Arial, Helvetica, sans-serif;
  margin-bottom: 20px;
}
#accordion h4 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}
#new-karriere #accordion h6 {
  margin: -5px 0 0 0;
}
h4 {
  margin-top: 20px;
  margin-bottom: 20px
}
@media (min-width: 980px) {
  #new-karriere .panel-body {
    padding: 10px 0 30px 0;
  }
  #new-karriere img.new-karriere {
    float: left;
    width: 45%;
    padding: 5px 20px 25px 0;
  }
}
@media (max-width: 979px) {
  #new-karriere {
    float: none;
  }
  #new-karriere .panel-body {
    padding: 10px 0 20px 0;
  }
  #new-karriere img.new-karriere {
    float: none;
    width: 100%;
    padding: 0 20px 25px 0;
  }
}
#new-karriere img.new-karriere-circle {
  float: left;
  width: 25%;
  margin: -10px 20px 80px 0;
  border-radius: 50%;
  /*filter: grayscale(100%);
    -webkit-filter: grayscale(100%);*/
}
#content-container #new-karriere ul.sub-navi li:before {
  margin-left: 0;
  margin-right: 10px;
}
#content-container ul.links li:before, #content-container ul.sub-navi li:before {
  margin-top: 2px;
}
blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  border-left: 1px solid #eeb1de;
  color: #e570c7;
}
a.einblicke-email svg {
  position: absolute;
  top: 0;
  left: -36px;
  width: 26px;
  color: #0d2240 !important;
}
a.einblicke-email {
  position: relative;
  margin-left: 38px;
  color: #0d2240 !important;
  font-weight: 300 !important;
}
#jobs .highlight-frame, #main-container-career .highlight-frame {
  color: white;
  display: inline-block;
  margin-top: 20px;
  padding: 10px;
  border: 1px solid white;
}
#jobs .highlight-frame-pink, .kontaktbox-karriere .highlight-frame-pink, #new-karriere .highlight-frame-pink, .highlight-frame-pink {
  color: #e570c7 !important;
  display: inline-block;
  margin-top: 20px;
  padding: 10px;
  border: 1px solid #e570c7;
  font-family: 'montserratregular', Arial, Helvetica, sans-serif;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  font-size: 1.2rem;
}
.highlight-frame-pink {
  color: #e570c7 !important;
}
#main-container-career #career-home-jobs #jobs {
  background-color: #e570c7;
  padding: 0 20px;
  margin: 0 0 40px 0;
}
ul.jobs-overview li:before {
  display: block;
  float: left;
  margin-left: -28px;
  background-repeat: no-repeat;
  background-image: url(../img/icons/list-arrow-white.svg);
  background-size: 90%;
  background-position: center 2px;
  margin-top: 1px;
}
ul.jobs-overview li a {
  color: white;
}
ul.jobs-overview li a:hover {
  color: #002144;
}
#jobs ul.jobs-overview li, #main-container-career ul.jobs-overview li {
  width: auto;
  padding: 7px 0;
}
.kontaktbox-karriere {
  background-color: #F1F1F1;
  padding: 30px;
}
.kontaktbox-karriere img.new-karriere-circle {
  float: left;
  width: 25%;
  margin: -10px 20px 25px 0;
  border-radius: 50%;
  /*filter: grayscale(100%);
    -webkit-filter: grayscale(100%);*/
}
.career-home p {
  font-size: 1.7rem;
  line-height: 1.65;
}
.career-home p.bodytext {
  font-size: 2.7rem;
  line-height: 1.2;
}
a.footer-email {
  position: relative;
  margin-left: 0;
  color: white !important;
  font-weight: 300 !important;
}
a.footer-email svg {
  position: absolute;
  top: 2px;
  left: 0;
  width: 26px !important;
  color: white !important;
}
/*.career-home .navbar-toggle .icon-bar {
  display: block;
  width: 40px;
  height: 2px;
  border-radius: 2px;
  margin-bottom: 8px;
}
@media only screen and (min-width: 980px) {
  .career-home button.navbar-toggle.navmenu-close svg {
    width: 25px;
    height: 25px;
    top: -5px;
  }
}*/
/*.career-home div.tiles .item h1 {
  color: #fff;
  font-size: 2.7rem;
  letter-spacing: 0;
}*/
.career-detail div.tiles .item h1 {
  color: #fff;
  font-size: 2.7rem;
  letter-spacing: 0;
}
.career-home div.tiles.news .item .text {
  position: absolute;
  z-index: 100;
  height: 100%;
  width: 100%;
  align-items: stretch;
  flex-direction: column;
  vertical-align: top;
  display: flex;
  justify-content: center;
}
/*#jobs {
     background-color: white;
}   
*/
#jobs h1 {
  display: none;
}
#jobs .img-responsive {
  margin-bottom: 50px;
}
#jobs .job-details {
  margin: 0;
  padding: 0;
}
/*#jobs .job-details p {
    padding:0px 100px;
}*/
/*#jobs .job-details h2 {
    padding:20px 140px;
}*/
#jobs .job-details ul {
  list-style-position: outside;
  margin-top: 0;
  margin-bottom: 30px;
  padding: 0 0 0 16px;
  list-style-type: circle;
}
#jobs .job-details li {
  list-style-type: circle;
  left: 100px;
  position: inherit;
}
h1 {
  text-transform: none !important;
}
.carousel-small .carousel-indicators {
  bottom: -20px !important;
}
.modal-content h1 {
  margin-bottom: 0;
  letter-spacing: 0;
  font-size: 2.7rem;
}
#modal-einblicke h1, #modal-benefits h1 {
  color: #fff;
  font-size: 2.8rem !important;
  letter-spacing: 0 !important;
}
div.tiles.news .item h1 {
  color: #fff;
  font-size: 2.2rem !important;
  letter-spacing: 0 !important;
}
/*karriere mobile*/
@media only screen and (max-width: 980px) {
  #main-container-career #career-home-carousel .carousel-inner .item img {
    height: 100%;
    width: auto;
    max-width: none;
  }
  #main-container-career #career-home-carousel .carousel-caption {
    left: 100px;
  }
  #main-container-career #career-home-info, #main-container-career #career-home-footer {
    background-position: 0;
  }
  .kontaktbox-karriere img.new-karriere-circle, #main-container-career #career-home-footer .img-responsive {
    float: unset;
    width: 40%;
    display: initial;
  }
  .kontaktbox-karriere, #main-container-career #career-home-footer {
    padding: 10px;
    text-align: center;
  }
  h {
    hyphens: auto;
  }
  div.tiles.thirds .item {
    height: 250px;
  }
}
@media only screen and (max-width: 780px) {
  #main-container-career #career-home-carousel .carousel-caption {
    left: 20px;
  }
}
/*pulsating circle menu*/
.pulsating-circle {
  display: none;
  position: absolute;
  left: 26px;
  top: -15px;
  transform: translateX(-50%) translateY(-50%);
  width: 100px;
  height: 100px;
  &:before {
    content: '';
    position: relative;
    display: block;
    width: 300%;
    height: 300%;
    box-sizing: border-box;
    margin-left: -100%;
    margin-top: -100%;
    border-radius: 200px;
    background-color: white;
    animation: pulse-ring 1.5s cubic-bezier(0.5, 1, 0.1, 1.1) infinite;
  }
  &:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, .5);
    border-radius: 100px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0);
    animation: pulse-dot 1.5s cubic-bezier(0.300, 0.03, 0.515, 0.955) -1.5s infinite;
  }
}
@keyframes pulse-ring {
  0% {
    transform: scale(.33);
  }
  80%, 100% {
    opacity: 0;
  }
}
@keyframes pulse-dot {
  0% {
    transform: scale(.8);
  }
  50% {
    transform: scale(1);
  }
  100% {
    transform: scale(.8);
  }
}
/*Menu Label*/


.label-menu {
  position: absolute;
  left: 60px;
  top: -51px;
}
.label-menu h3 {
  color: white!important;
  font-size: 3.4rem;
  font-weight: 100;
  letter-spacing: -.1rem;
}
.navbar-toggle span.menu-label {
 font-weight:400;
}
@media (max-width: 990px) {
.label-menu {
    visibility: hidden;
  }
}

/*awards*/
/* ===== 1) Außencontainer bündig wie Header ===== */
:root{
  --awards-max: 1170px;   /* wie im Inspector */
  --awards-gutter: 24px;  /* Seitenabstand wie beim Header */
}

/* bündig ausrichten (greift auch ohne :has) */
#awards{
  max-width: var(--awards-max) !important;
  margin-inline: auto !important;
  padding-inline: var(--awards-gutter) !important;
  box-sizing: border-box;
}

/* interne Wrapper neutralisieren */
#awards.tiles.awards.thirds,
#awards .text{
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box;
}

/* ===== 2) Grid: exakt 3 Spalten auf Desktop ===== */
/* Summe: 3×355 + 2×24 + 2×24 (Padding) = 1161px */
@media (min-width: 1161px){
  #awards.tiles.awards.thirds{
    display: grid !important;
    grid-template-columns: repeat(3, 355px) !important; /* fix 3 Spalten */
    column-gap: 24px !important;
    row-gap: 24px !important;
    justify-content: center !important; /* mittig im bündigen Container */
  }
  #awards.tiles.awards.thirds > .item{
    width: 355px !important;  /* Grid-Track-Breite */
  }
}

/* Tablet (optional): 2 Spalten, wenn <1161px Platz */
@media (max-width: 1160px) and (min-width: 601px){
  #awards.tiles.awards.thirds{
    display: grid !important;
    grid-template-columns: repeat(2, 355px) !important;
    column-gap: 24px !important;
    row-gap: 24px !important;
    justify-content: center !important;
  }
  #awards.tiles.awards.thirds > .item{
    width: 355px !important;
  }
}

/* Handy: 1 Spalte, volle Breite innerhalb des bündigen Containers */
@media (max-width: 600px){
  #awards.tiles.awards.thirds{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  #awards.tiles.awards.thirds > .item{
    width: 100% !important;
  }
}

/* ===== 3) Karten: 355×400, eckig, Bild-Umfluss, Silbentrennung ===== */
#awards.tiles.awards.thirds > .item{
  height: 400px !important;
  padding: 20px !important;
  background: #fff;
  border-radius: 0 !important;
  box-sizing: border-box;
  position: relative;
  display: block; /* wichtig für Float */
  margin: 0;
}
#awards.tiles.awards.thirds > .item::after{
  content:""; display:block; clear:both; /* Clearfix */
}
#awards.tiles.awards.thirds > .item img.award{
  float: left;
  max-width: 40%;
  height: auto;
  display: block;
  margin: 0 12px 8px 0;
}
#awards.tiles.awards.thirds > .item .headline,
#awards.tiles.awards.thirds > .item p{
  margin: 0 0 8px 0;
  hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto;
  overflow-wrap: anywhere; word-break: normal;
}
#awards.tiles.awards.thirds > .item a[target="_blank"]{
  display: inline-block; clear: both; margin-top:
}

/*JUVE Award*/

.dachzeile-juve {
  font-size: 13px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: #ffffff;
  display: block;
  font-weight: 600; /* etwas stronger */
  line-height: 1.2em;
  margin-bottom:-20px;   /* weniger Abstand zur folgenden H1 */
}

@media (max-width: 991px) {
  .dachzeile-juve {
    margin-bottom: 20px;
  }
}
h1 {
  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  overflow-wrap: break-word; /* falls nötig */
}



::selection {
  background: #eb76cf; 
  color: #ffffff;     
}

::-moz-selection {
  background: #eb76cf;
  color: #ffffff;
}

/* Award-Störer NUR ab Tablet/Desktop aufwärts sichtbar */
@media (max-width: 690px) {
  .award-btn {
    display: none !important;
  }
}
.ios-newsletter-btn {
  display: none !important;;
}


/* Mobile-only headline alignment for slider overlays */
@media (max-width: 767px) {
    .modal-header-container span.headline,
    .carousel-caption span.headline,
    .content-container-left span.headline {
        position: absolute !important;
        left: 0 !important;        /* bündig mit Bildkante */
        margin-left: 0 !important; /* vorhandene Left-Margins neutralisieren */
        padding-left: 5 px !important;
        text-align: left !important;
        width: auto !important;
        padding-top: 20px;
    }

}

/* Mobile: Nav (Pfeile + Übersichts-Link) bündig im Content, zentriert, Icon+Text aligned */
@media (max-width: 992px) {

  /* Container innerhalb der "blauen" Content-Breite */
  #content-container #nav-next.nav-previous-next{
    position: static !important;        /* mitscrollen */
    left: auto !important;
    right: auto !important;
    bottom: auto !important;

    height: auto !important;
    min-height: 44px !important;
    overflow: visible !important;

    /* in die Column reinziehen (Bootstrap-Gutter) */
    width: calc(100% - 30px) !important;
    margin: 16px 15px 0 !important;
    padding: 0 0 12px !important;
    box-sizing: border-box;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    position: relative !important;      /* für zentriertes a.up */
  }

  /* Pfeile links/rechts */
  #content-container #nav-next.nav-previous-next a.prev,
  #content-container #nav-next.nav-previous-next a.next{
    flex: 0 0 auto !important;
    line-height: 1 !important;
  }

  /* Mittlerer Link: exakt mittig, Breite zwischen den Pfeilen */
  #content-container #nav-next.nav-previous-next a.up{
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;

    width: calc(100% - 96px) !important;  /* Platz für Pfeile; bei Bedarf 88–120px */
    max-width: 100% !important;

    display: flex !important;
    justify-content: center !important;
    align-items: baseline !important;     /* Icon+Text auf gleicher Linie */
    gap: 8px !important;

    white-space: nowrap !important;       /* keine 2 Zeilen */
    line-height: 1 !important;

    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Icon im Link: auf Text-Baseline ausrichten (falls es ein <i> oder <svg> ist) */
  #content-container #nav-next.nav-previous-next a.up svg,
  #content-container #nav-next.nav-previous-next a.up i{
    display: inline-block !important;
    vertical-align: baseline !important;
    transform: translateY(0.5px);         /* micro-fix: wenn’s optisch noch „hängt“ */
  }
}
