

:root{
  --rot: #e20a17;  
  --text: #000000; 
  --hellgrau: #ebebeb; /*Hintergrund*/
  --hell-hellgrau: #f5f5f5; /*Hintergrund*/
  --mittelgrau: #e2e2e2; /*Ansprechpartner*/
  --grau: #878787; /*Translator button*/
  --bs-nav-link-hover-color:#e20a17 !important;  /*rot*/
  --bs-link-color-rgb:#e20a17;  /*rot*/
  --bs-nav-link-font-size: 1.1rem;
}

*{
  transition: all 0.3s ease-out;
}
html {
  scroll-behavior: smooth;
}

/*------------font-Einbindung-----------*/
@font-face {
    font-family: 'Raleway';
    src: url('../fonts/Raleway-Regular.eot');
    src: url('../fonts/Raleway-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Raleway-Regular.woff2') format('woff2'),
        url('../fonts/Raleway-Regular.woff') format('woff'),
        url('../fonts/Raleway-Regular.ttf') format('truetype'),
        url('../fonts/Raleway-Regular.svg#Raleway-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Raleway Bold';
    src: url('../fonts/Raleway-Bold.eot');
    src: url('../fonts/Raleway-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Raleway-Bold.woff2') format('woff2'),
        url('../fonts/Raleway-Bold.woff') format('woff'),
        url('../fonts/Raleway-Bold.ttf') format('truetype'),
        url('../fonts/Raleway-Bold.svg#Raleway-Bold') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'NothingYouCouldDo';
    src: url('../fonts/NothingYouCouldDo.eot');
    src: url('../fonts/NothingYouCouldDo.eot?#iefix') format('embedded-opentype'),
        url('../fonts/NothingYouCouldDo.woff2') format('woff2'),
        url('../fonts/NothingYouCouldDo.woff') format('woff'),
        url('../fonts/NothingYouCouldDo.ttf') format('truetype'),
        url('../fonts/NothingYouCouldDo.svg#NothingYouCouldDo') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

body {
    font-size: clamp(1rem, 0.9vw, 1.1rem);
    line-height: 1.6;
  font-family: 'Raleway', sans-serif;
}
a{
  text-decoration: none;
}
a:hover{
  text-decoration: underline;
  color: var(--rot);
}

.navbar-static-top {
  margin-bottom: 19px;
}

.bg_rot, .bg-danger{
  background-color:var(--rot) !important;
}
.bg_hellgrau{
  background-color: var(--hellgrau);
}
.bg_hell-hellgrau{
  background-color: var(--hell-hellgrau);
}
.bg_mittelgrau{
  background-color: var(--mittelgrau);
}

.split-bg-section{
  position: relative;
  overflow: hidden;
  padding: clamp(2rem, 6vw, 2rem) 0;
  background: linear-gradient(
    to right,
    var(--hellgrau) 0%,
    var(--hellgrau) 50%,
    var(--mittelgrau) 50%,
    var(--mittelgrau) 100%
  );
}


.text-rot{
  color: var(--rot);
}
.text-weiss{
  color: #ffffff;
}
.bg-dark{
  background-color:#000 !important;
}
.font-special{
   font-family: 'NothingYouCouldDo';
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: bold;
}
.padding-6{
  padding-top: 6rem !important;
   padding-bottom: 6rem !important;
}
img{
  width: 100%;
  height: auto;
}
ul li{
  font-size: clamp(1rem, 0.95vw, 1.125rem);
}
.list ul{
  padding-left:0;
  list-style: none;
}
.list ul li{
  position: relative;
    padding-left: 3.5rem; /* Abstand für Icon reservieren */
    margin-bottom: 1rem;
}
.list ul li:before{
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 40px;
    height: 10px;
    background: url('/fileadmin/Media/Bilder/Icons/list_linie.png') no-repeat center;
    background-size: contain;
}
.list ul ul{
  padding-left: 10px;  
 
}
.list ul li li{
  list-style-image:none;
  list-style-type: disc;
  margin-bottom:0;
  padding-left:0;
}
.list ul li li:before{
  background:none;
}
.navbar-brand img {
  max-width: clamp(180px, 30vw, 420px);
  height: auto;
}

/*-------------------------------------------------Google translate---------------------------------*/
/* =========================================================
   GOOGLE TRANSLATE CONSENT BANNER
========================================================= */
/* Google Translate */
.ewert-translate-wrapper {
    position: absolute;
    top: -3rem;
    right: var(--bs-gutter-x, .75rem);
    z-index: 9998;
}
.ewert-translate-wrapper a:hover{
  color:#fff;
}
.ewert-translate-trigger {
    border: 0;
    background: var(--grau);
    color: #fff;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 300;
    padding: 0.7rem 2rem;
    border-radius: 0 0 24px 24px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: .6rem;
    box-shadow: 0 10px 25px rgba(0,0,0,.25);
}

.ewert-translate-trigger:hover {
    transform: translateY(3px);
    background: rgba(105,110,113,.95);
}

.ewert-translate-trigger i {
    font-size: .85rem;
    transition: transform .25s ease;
}

.ewert-translate-trigger:hover i {
    transform: translateX(3px);
}
.ewert-translate-box {
    display: none;
    align-items: center;
    gap: .75rem;
    background: #fff;
    padding: .3rem .9rem;
    border-radius: 0 0 18px 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,.12);
}

#google_translate_element {
    display: none;
    margin-top: 0;
    background: #fff;
    padding: .3rem ;    
}

.ewert-translate-wrapper.is-active #google_translate_element {
    display: block;
}

.ewert-translate-wrapper.is-active .ewert-translate-trigger {
    display: none;
}
.ewert-translate-wrapper.is-active .ewert-translate-box {
    display: flex;
}
.ewert-translate-text {
    font-size: .9rem;
    color: #666;
    white-space: nowrap;
}

.goog-te-gadget {
    font-size: 0 !important;
}

.goog-logo-link,
.goog-te-gadget span {
    display: none !important;
}

.goog-te-combo {
    margin: 0 !important;
    font-family: inherit !important;
    font-size: .9rem !important;
    padding: .45rem .75rem !important;
    border: 1px solid #ddd !important;
    border-radius: 10px !important;
}

.goog-te-banner-frame {
    display: none !important;
}

body {
    top: 0 !important;
}

@media (max-width: 768px) {
    .ewert-translate-wrapper {
       right: 1rem;
    }

    .ewert-translate-trigger {
        width: 100%;
        justify-content: center;
        font-size: .8rem;
        padding: .2rem 1.0rem;
    }
}

/* =========================================================
   ENDE GOOOGLE TRANSLATOR
========================================================= */

/*-----------------------headerSlider-------------*/
.business-video-header {
  width: 100%;
  height: clamp(360px, 45vw, 820px);
  overflow: hidden;
  position: relative;
 /* z-index: 1;*/
}

.business-video-header__video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;

  position: absolute;
  inset: 0;

  transform: none;
  will-change: auto;
}
.business-video-header {
  position: relative;
  height: clamp(360px, 55vw, 1000px);
  overflow: hidden;
}

.business-video-header__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.business-video-header__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.35);
  z-index: 1;
  pointer-events: none;
}

.business-video-header__caption {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  padding-bottom: clamp(3rem, 8vw, 8rem);
}



.business-video-header__text h3 {
  font-size: clamp(2rem, 5vw, 3.5rem);
  line-height: 1.1;
  font-family: 'Raleway Bold';
  margin-bottom: 0;
  text-wrap: balance;
}

.business-video-header__text .subheading {
  font-size: clamp(1rem, 3vw, 2.5rem);
  line-height: 1.3;
  font-family: 'Raleway';
}
.business-header{
  margin-top: 158px;
}





.carousel-caption h3 {
  font-size: clamp(1.5rem, 5vw, 3.5rem); 
  line-height: 1.1;
  font-family: 'Raleway Bold';
  margin-bottom:0;
   text-wrap: balance;
}
.carousel-caption .subheading{
 font-size: clamp(1.1rem, 3vw, 2.5rem);
  line-height: 1.3;
   font-family: 'Raleway';
}
/*-------------------Container um den Button --------*/
.bewerben {
  z-index: 400;
}
.button_kontakt.dark {
    background-color: var(--rot);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
}
.button_kontakt, #ueber_uns .historie .button_kontakt {
    border-radius: 31px;
    padding: 5px 10px 0;
    display: inline-block;
    position: absolute;
    z-index: 100;
   
    background-color: var(--rot);
    
    color:#fff;
}
.button_kontakt p{
  margin-bottom: 0.3rem;
}

.button_kontakt.karriere{
  padding: 5px 0;
  position: relative;
  top: 0;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
}
.button_kontakt.karriere p{
  margin-bottom:0;
}
/*.job-section:after{
  content:"";  
  position: absolute;

  width: clamp(90px, 14vw, 130px);
  aspect-ratio: 1 / 1;

  right: clamp(1rem, 7vw, 8rem);
  top: clamp(13rem, -7vw, -2rem);

  background-image: url("/fileadmin/Media/Bilder/Icons/karriere_icon.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  pointer-events: none;
  z-index: 2;
}*/

.beschreibung h2::after {
  content: "";
  position: absolute;
  width: clamp(90px, 14vw, 130px);
  aspect-ratio: 1 / 1;
  right: clamp(15px, 8vw, 7rem);
  top: clamp(-4rem, -7vw, -2rem);
  background-image: url("/fileadmin/Media/Bilder/Icons/karriere_icon.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  z-index: 2;
}



@media (min-width: 767.98px) and (max-width: 991.98px) {
.job-section:after{
   top: clamp(14rem, 7vw, -7rem);
}
}

@media (min-width: 500.98px) and (max-width: 767.98px) {
.job-section:after{
   top: clamp(15rem, 7vw, -7rem);
}
}
@media (min-width: 390.98px) and (max-width: 500.97px) {
.job-section:after{
   top: clamp(20rem, 7vw, -7rem);
}
}
@media (max-width: 390.97px) {
.job-section:after{
   top: clamp(26rem, 7vw, -7rem);
}
}


.button_kontakt a, .button_kontakt a:hover{
  color:#fff;
  font-size: 1.3rem;
} 
.button_kontakt a:hover{
  text-decoration: underline;
}
/*----------------*/
/*--------------E-Mail Buttons fixed---------*/
.ewert-mail-buttons {
    position: fixed;
    top: 51%;
    right: 0;
    transform: translateY(-50%);
    z-index: 1050;

    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    align-items: flex-end;
    pointer-events: none;
}

.ewert-mail-button {
    align-self: flex-end;
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    width: max-content;
    height: 70px;
    padding: 0 2rem 0 1.5rem;

    border-radius: 1.5rem 0 0 1.5rem;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);

    white-space: nowrap;
    overflow: hidden;

    transform: translateX(calc(100% - 88px));
    transition: transform 0.35s ease;
    pointer-events: auto;
}

.ewert-mail-button:hover {
    transform: translateX(0);
}

.ewert-mail-button-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.ewert-mail-button-icon svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.ewert-mail-button-label {
    font-size: 1.5rem;
    line-height: 1;
    white-space: nowrap;
}

@media (max-width: 991.98px) {
    .ewert-mail-button {
        height: 72px;
        padding: 0 1.5rem 0 1rem;
        transform: translateX(calc(100% - 72px));
    }

    .ewert-mail-button-icon {
        width: 38px;
        height: 38px;
        flex: 0 0 38px;
    }

    .ewert-mail-button-label {
        font-size: 1.5rem;
    }
}
/*-----------Ende------------*/
h1, h2, h3{
  font-family: 'Raleway Bold';  
  text-wrap: balance;
}
h1{
  margin-bottom: 1.5rem;
 font-size: clamp(1.7rem, 5vw, 3.5rem);
}
h2{
  font-size: clamp(1.5rem, 4vw, 3rem);
  margin-bottom: 1rem;
}
#legal h2{
  margin-top: 3rem;
}

.h2-0 h2{
  margin-bottom:0;
}
h3{
  font-size: clamp(1.3rem, 3vw, 2rem);
}

/*-----------------Navigation-------------*/
.bg-light{
  background-color:#fff;
}
.nav-link{
  color:#000;
}
.nav-item.active .nav-link{
  color: var(--rot);
  font-family: 'Raleway Bold';
}
.nav-link:focus, .nav-link:hover {
color: var(--rot);
}
.dropdown-item.active, .dropdown-item:active {
  background-color: var(--rot);
}
.navbar .nav-item.dropdown {
    position: relative;
}

.navbar .nav-item.dropdown > .nav-link {
    display: inline-block;
    padding-right: 1.2rem;
}
#navbarResponsive .nav-item:last-child .nav-link {
    padding-right: 0;
}

.navbar .nav-item.dropdown > .dropdown-toggle-split {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    padding-left: 0;
    padding-right: 0;
    border: 0;
}

/*--------------------------MASONRY GALERIE-------------------------------*/
/* Mobile (Default) */
.masonry-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
.container.masonry-grid-2 .masonry-grid {
gap: 3rem;
}

.masonry-tile {
  display: block;
   position: relative;
  min-height: 320px; /* höher als bisher */
   text-decoration: none;
  color: inherit;
  cursor:pointer;
}

/* einzelne Größen auch mobil berücksichtigen */
.masonry-tile--standard {
  min-height: 320px;
}

.masonry-tile--tall {
  min-height: 420px;
}

.masonry-tile--large {
  min-height: 480px;
}

.masonry-tile--wide {
  min-height: 300px;
}

.masonry-tile__media {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.masonry-tile__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.masonry-tile__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.45), rgba(0,0,0,.1));
  
  opacity: 0;
  transition: opacity .3s ease;
}
/* Hover-Effekt */
.masonry-tile:hover .masonry-tile__overlay {
  opacity: 1;
}

.masonry-tile__caption {
  position: absolute;
  left: 1.25rem;
  right: 1.25rem;
  bottom: 1.25rem;
  z-index: 2;
  opacity: .9;
  transform: translateY(0);
  transition:
    opacity .3s ease,
    transform .3s ease;
}

.masonry-tile:hover .masonry-tile__caption {
  opacity: 1;
  transform: translateY(-8px);
}


.masonry-tile__title {
  margin: 0;
  color: #fff;
  font-size: clamp(1.35rem, 1.9vw, 2.3rem);
  line-height: 1.1;
}
.masonry-tile__title:after {
  content:'.';
  color:var(--rot);
  font-weight: bold;
}
@media (min-width: 768px) {
  .masonry-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 180px;
    grid-auto-flow: dense;
  }
.container.masonry-grid-2 .masonry-grid{
  grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 180px;
    grid-auto-flow: dense;
  }
  .masonry-tile {
    min-height: 0;
  }

  .masonry-tile--standard {
    grid-row: span 2;
  }

  .masonry-tile--tall {
    grid-row: span 3;
  }

  .masonry-tile--wide {
    grid-column: span 2;
    grid-row: span 2;
  }

  .masonry-tile--large {
    grid-row: span 4;
  }
}
/*--------------------Accordeon Standorte----------------------*/
.accordion{
  --bs-accordion-border-radius: 0;
}
.accordion-item{  
 border: none;
  border-bottom: 1px solid #000;
}
.accordion-collapse.collapse.show{
   border-bottom: 2px solid #000;
}
.accordion-button {
  font-size: 2rem;
  font-family: 'Raleway Bold';
  padding-top: 4rem;
}

.accordion-button::after {
  content: "";
  width: 32px;
  height: 32px;
  background-image: url('/fileadmin/Media/Bilder/Icons/zu_umschalter.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  flex-shrink: 0;
}
  .accordion-button:not(.collapsed)::after {
     background-image: url('/fileadmin/Media/Bilder/Icons/zu_umschalter.png');
  transform: rotate(180deg);
}
.accordion-button:not(.collapsed) {
  background-color:transparent;
}


.accordion-button:focus { 
  outline: 0;
  box-shadow: none;
}
.accordion-item:last-of-type > .accordion-collapse {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
/*-------------------Ende Accordion-------------*/
/*------------------------Partner---------------------*/
.content-wrap {
    max-width: 660px;
}

.light-side {
    display: flex;
    justify-content: flex-start;
}

.dark-side {
    display: flex;
    justify-content: flex-end;
}

/*------------------------------Anprechpartner - container-contact-card---------------------------------*/
.kontaktdaten h3{
  font-family: 'Raleway';
  font-size: 2.5rem;
}
.contact-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
}

.contact-card {  
  padding: 2.5rem;
  padding-left:0;
   display: flex;
  flex-direction: column;
  height: 100%;
}
.contact-card p{
  margin-bottom:0;
}

.contact-card-symbol {
  margin-bottom: 1rem;
}
.contact-card-symbol-image {
  display: block;
  width: 100%;
  max-width: 180px;
  height: auto;
}
.contact-card-symbol img {
  max-width: 160px;
   width: 100%;
    height: 100%;
  height: auto;
  display: block;
}
.ewert-mail-button-icon svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}
.contact-card-position {
  font-size: clamp(1.6rem, 1.8vw, 2.4rem);  
  line-height: 1.1;
  font-family: 'Raleway Bold';
   min-height: calc(2 * 1.1em);    /* 2zeilige Funktion---*/
}

.contact-card-name {
  margin-top: 0;
  font-size: clamp(1.2rem, 1.9vw, 1.9rem);
}

.contact-card-actions {
  display: flex;
  gap: 0.75rem;
  margin-top: auto;
}

.contact-card-icon {
  width: 40px;
  height: 40px;
  background: #e30613;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  position: relative;
}

.contact-card-icon::before {
  content: "";
  width: 25px;
  height: 25px;
  background: #fff;
  display: block;
}

.contact-card-phone::before {
  mask: url("/fileadmin/Media/Bilder/Icons/phone.svg") center / contain no-repeat;
  -webkit-mask: url("/fileadmin/Media/Bilder/Icons/phone.svg") center / contain no-repeat;
}

.contact-card-mail::before {
  mask: url("/fileadmin/Media/Bilder/Icons/Brief_transparent.svg") center / contain no-repeat;
  -webkit-mask: url("/fileadmin/Media/Bilder/Icons/Brief_transparent.svg") center / contain no-repeat;
}

@media (max-width: 991px) {
  .contact-cards-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  .contact-cards-grid {
    grid-template-columns: 1fr;
  }
}
/*------------------------------------Ende Ansprechpartner-------------------*/
h4 a{
  display: flex;
}
h4 a::after {
  content: "";
  width: 26px;
  height: 26px;
  background-image: url('/fileadmin/Media/Bilder/Icons/button_pfeil.png');
  background-repeat: no-repeat;
  background-position: top;
  background-size: contain;
  flex-shrink: 0;
  display: inline-flex;
  padding-right: 2.5rem;
}

.image #c527, .image #c531, .image #c553, .image #c567, .image #c599, .image #c601, .image #c803, .image #c856, .image #c901, .image #c917, .image #c918, .image #c935, .image #c952, .image #c969 {
  position: absolute;
  bottom: -150px;
  z-index: 200;
}
.image #c531 {
  bottom: -222px;
}
.image #c553 {
  bottom: -250px;
}
.image #c601 {
  bottom: -207px;
}
.image #c803 {
 bottom:-216px;
}
.image #c856{
  bottom:-120px;
}
.image #c917{
bottom:-80px;
}
.image #c901 {
  bottom: -100px;
}
.image #c901{
  bottom: -209px; 
}
.image #c918, .image #c917,.image #c952, .image #c935, .image #c969{
  bottom:0;
}
/*-------------------Zentrieren der Bilder im letzten Absatz (mit position abolsute)----------*/
.col-lg-6.image{
  display: flex;
  justify-content: center;
}

/*--------------------------HISTORIE------------------------------------------*/
.historie{
  background-image:
    linear-gradient(
      to bottom,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,0.85) 12%,
      rgba(255,255,255,0) 30%
    ),
    url('/fileadmin/Media/Bilder/Historie/Ewert_Asphalt_hintergrund.jpg');

  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}
.ewert-history {
  padding: clamp(2rem, 5vw, 5rem) 0;
  padding-bottom: 0;
}
.ewert-history__road {
  position: relative;
  width: min(100%, 700px);
  margin-inline: auto;
  z-index:1;
}
.ewert-history__group-sign{
  position: absolute;
  z-index:5;
   top: -4%;
  left: 33%;
}
.ewert-history__group-sign img{
  position: absolute;
  width: clamp(180px, 32vw, 520px);
  height: auto; 
}

.ewert-history__road-svg img {
  display: block;
  width: clamp(270px, 40vw, 600px);
  height: auto;
}

.ewert-history-item {
  position: absolute;
  top: var(--history-top);
  left: var(--history-left);
  transform: translate(-50%, -50%);
  z-index: 6;
}

@media (max-width: 1200px) {
.ewert-history-item.history-year-2026{
   top: var(--history-top);
  left: 88% !important;
}
.ewert-history-item.history-year-2020{
   top: var(--history-top);
  left: 42% !important;
}
  .ewert-history-item.history-year-2018{
   top: var(--history-top);
  left: 71% !important;
}
  .ewert-history-item.history-year-2016{
   top: var(--history-top);
  left: 46% !important;
}
  .ewert-history-item.history-year-2001{
   top: var(--history-top);
  left: 81% !important;
}
  .ewert-history-item.history-year-1997{
   top: var(--history-top);
  left: 43% !important;
}
.ewert-history-item.history-year-1991{
   top: var(--history-top);
  left: 54% !important;
}
  .ewert-history-item.history-year-1990{
   top: var(--history-top);
  left: 48% !important;
}
  .ewert-history-item.history-year-1985{
   top: var(--history-top);
  left: 53% !important;
}
  .ewert-history-item.history-year-1981{
   top: var(--history-top);
  left: 14% !important;
}
  .ewert-history-item.history-year-1975{
   top: var(--history-top);
  left: 55% !important;
}
}

@media (max-width: 991px) {
.ewert-history-item.history-year-1981{
   top: var(--history-top);
  left: 20% !important;
}
}
@media (max-width: 767px) {
.ewert-history-item.history-year-2026{
   top: var(--history-top);
  left: 78% !important;
}
   .ewert-history-item.history-year-2018 {
    top: var(--history-top);
    left: 67% !important;
  }
  .ewert-history-item.history-year-2001 {
    top: var(--history-top);
    left: 76% !important;
  }

}
.ewert-history-item__button {
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
}

.ewert-history-item__button img {
  display: block;
  width: clamp(100px, 14vw, 240px);
  height: auto;
  transition: transform .25s ease;
}

.ewert-history-item__button:hover img,
.ewert-history-item__button:focus-visible img {
  transform: scale(1.08);
}
.ewert-history-item__button figure{
  padding: 10px;
  overflow: visible;
}
.ewert-history-modal .modal-title,
.ewert-history-item .modal-title {
  color: #e30613;
  font-weight: 700;
}
.modal-backdrop {
  z-index: 9997;
}

.ewert-history-modal {
  z-index: 9999;
}
@media (max-width: 768px) {
  .ewert-history__road {
    width: min(100%, 520px);
  }
  
}
/*-------------------------Ansprechpartner------------*/



/*--------------Tabelle-------*/


.table-striped tbody tr:nth-of-type(odd):hover {
   
  background-color: #EFF4E1;
}
.table-striped tbody tr:nth-of-type(even):hover {
   
  background-color: #EFF4E1;
}
.table-striped thead{
    background-color: #05649D;
    color: #fff;
    text-transform: uppercase;
}
.table-striped tbody td:nth-of-type(2){
  font-weight: bold;
} 


footer {
  position: relative;  
  color:#fff;
}
footer a{
  color:#fff;
  text-decoration: none;
}
footer a:hover{
  text-decoration: underline;
  c
}
footer img{
  width: 50px;
  margin-right: 1rem;
}
footer .social{
  margin-top:-25px;
  margin-bottom:25px;
  position: relative;
  z-index:12;
}
footer .col-md-9{
  padding-top: 75px;
}
footer .bg_rot p{
  margin-bottom:0;
}
footer .bg_rot a:hover{
  color:#000;
}
footer p{
  font-size: 1rem;
}

.scroll-to-top {
  position: fixed;
  bottom: 10px;
    right: 10px;
}
a.scroll-to-top:hover{
  color:#000;
}
/*--------------Sortiment mit masonry-------------------------*/




/* Barrierefreiheit / Bewegungsreduktion respektieren */
@media (prefers-reduced-motion: reduce){
  .masonry-item img, .masonry-item.tile{ transition: none; }
}

/*-----media queries fuer masonry---------*/
@media (min-width: 992px) {
	.masonry-item.tile { min-height: 185px; }
}
@media (min-width: 1200px)  {
	.masonry-item.tile { min-height: 225px; }	
}
@media (min-width: 1400px)  {
	.masonry-item.tile { min-height: 261px; }	
}




/*------------------------------CSS fuer my-Extension Bild mit Hover Effekt--------------------*/
/*----Bilder mit Hover-Effekt------------------------------*/
/*----------------------TEAM-------------------------------*/
.team-style2 {
  margin-bottom: 10px;
}
.team-style2 .ce-gallery figure.image{
  box-shadow: none;
  width: 100%;
}
.team-style2 .team-member-img img {
  transition: all 0.3s ease 0s; }
.team-style2 .team-member-img:hover img {
  }
.team-style2 .team-description {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: transparent;
  opacity: 0;
  transition: all 200ms ease-in-out;
  padding: 15px 5px;
  z-index: 9;
  
}
.team-style2 .ce-image .ce-gallery{
  box-shadow:5px 5px 5px #ccc;
}
.team-style2 .ce-gallery figure{
  position: relative;
}

.team-style2 .social-links .info:before, .info:before{
  display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
   font-family: "Font Awesome 5 Free"; 
   font-weight: 900; 
    font-size: 1.2rem;
}

.team-style2 .social-links .info:before, .info:before{
  content: "\f0c1";
}

.team-style2 .social-links a, .social-links a{
  color: #333;
}

.team-style2 .social-links,  .social-links {
  transform: translateY(15px);
  transition: transform 300ms ease-in-out, opacity 150ms ease-in;
  opacity: 0;
  color: var(--textfarbe);
  -webkit-font-smoothing: antialiased; }
  .team-style2 .social-links a:hover {
    opacity: 0.65; }
.team-style2 .team-description-wrapper {
  position: relative;
  display: table;
  width: 100%;
  height: 100%; }
.team-style2 .team-description-content {
  display: table-cell;
  vertical-align: middle;
  text-align:center;
}
.team-style2 .team-member-img {
  position: relative;
  display: block;
  overflow: hidden;   
  margin: 0 auto; 
}
.team-style2 .bg-cover {
  background-color: rgba(255,255,255,0.7);
  opacity: 1;
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  transform: scale(2);
  transition: all 200ms ease-in-out;
  display: none;
  z-index: 1;
  border: 7px solid rgba(0,0,0,0.1);
  font-size: 19px;
  border-radius: 3px;
}
.team-style2 .team-member-img > img {
  transition: all 0.2s ease 0s; }
.team-style2:hover .bg-cover {
  background-color: rgba(255,255,255,0.7);
  display: block; }
.team-style2:hover .social-links {
  transition-delay: 100ms, 100ms;
  opacity: 1;
  transform: translateY(0); }
.team-style2:hover .team-member-img > img {
  filter: blur(4px) grayscale(4%); }
.team-style2:hover .team-description {
  opacity: 1; }

.team-style2 .mt-3.text-center{
    padding-bottom:31px;
}
.team-style2 .text-left{
  text-align: center !important;
  max-width: 300px;
  margin: 0 auto 50px;
}
.team-style2 figcaption.image-caption{
  margin-top: 15px;
  text-align: center;
}

.team-style2 .name p{
  margin-bottom:0;
}

/*-----------media queries-----*/
@media all and (min-width: 992px) {
/*.navbar-brand img{
  width: 500px;
}*/
  .navbar .nav-item{
    margin-right: 1rem;
  }
.navbar .nav-item.dropdown:hover > .dropdown-menu {
    display: block;
  }

  .navbar .nav-item.dropdown:hover > .nav-link {
    color: #e30613;
  }
}
@media all and (min-width: 992px) and (max-width: 1199px) {
.navbar-brand img {
width: 315px;
}
   .navbar .nav-item {
    margin-right: 0.5rem;
  }

}
@media all and (max-width: 991.99px) {
  /*----------------------------- Mobile Navigation mit + und - -------------------------------------*/
 .navbar-nav{
  background-color: var(--hellgrau);
  box-shadow: 0 10px 30px rgba(0,0,0,0.06);
  padding-left: 1rem;
  margin-top: 1rem;
   
 }

  .navbar-nav .nav-item.dropdown {
    display: grid;
    grid-template-columns: 1fr 2rem;
    align-items: start;
    column-gap: 1rem;
  }

  .navbar-nav .nav-item.dropdown > .nav-link:not(.dropdown-toggle-split) {
    grid-column: 1;
    grid-row: 1;
    padding-right: 0;
  }

  .navbar-nav .dropdown-toggle-split {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    align-self: start;

    position: relative !important;
    top: 0.15rem;
    right: auto;

    width: 2rem;
    height: 2rem;
    padding: 0 !important;
    border: 0;
    background: transparent;
  }

  .navbar-nav .dropdown-menu {
    grid-column: 1 / -1;
    grid-row: 2;
    border-radius: 0.5rem;
    border: 1px solid #dcdcdc;

    box-shadow:
      0 10px 30px rgba(0,0,0,0.08),
      0 2px 8px rgba(0,0,0,0.04);

    padding: 1rem 1.25rem;
    margin-top: 0.5rem;
    backdrop-filter: blur(6px);
  }


  .navbar-nav .dropdown-toggle-split::before,
  .navbar-nav .dropdown-toggle-split::after {
    content: "";
    display: block !important;
    position: absolute;
    left: 50%;
    top: 50%;
    width: 1.15rem;
    height: 2px;
    background: #000;
    border: 0 !important;
    margin: 0 !important;
    transform: translate(-50%, -50%);
  }

  .navbar-nav .dropdown-toggle-split::after {
  transform: translate(-50%, -50%) rotate(90deg);
  opacity: 1;

  transition:
    transform 0.3s ease,
    opacity 0.2s ease;
}

  .navbar-nav .nav-item.dropdown.is-open .dropdown-toggle-split::after {
    opacity: 0;
  }

 .navbar-nav .nav-item.dropdown.is-open .dropdown-toggle-split::after {
  transform: translate(-50%, -50%) rotate(180deg);
  opacity: 0;
}
.navbar-nav .dropdown-toggle-split::before {
  transition:
    background-color 0.3s ease,
    transform 0.3s ease;
}
.navbar-nav .nav-item.dropdown.is-open .dropdown-toggle-split::before {
  background: var(--rot);
}

  /*---------------------Ende-------------*/
  .image #c465, .image #c531, .image #c527, .image #c553, .image #c567, .image #c599, .image #c601, .image #c803, .image #c856, .image #c901, .image #c917, .image #c918, .image #c935, .image #c952 {
  position: relative;
  bottom: 0;
    z-index: 10;
  }
  .job-angebot::after {
    top: 13rem;
}
  .image #c567 img{
    height: 300px;
  }
.split-bg-section {
 
  background: linear-gradient( to bottom, var(--hellgrau) 0%, var(--hellgrau) 50%, var(--mittelgrau) 50%, var(--mittelgrau) 100% );
}
  
}
@media all and (min-width: 768px) and (max-width: 991px) {
.masonry-tile__title {
  font-size: 1.1rem;
}
 }


@media(max-width: 767.98px) {
footer .col-md-9 {
  padding-top: 0;
}


}
@media all and (min-width: 567px) and (max-width: 767px) {
  
  
}
@media all and (max-width: 567px) {

  .button_kontakt a, .button_kontakt a:hover { 
  font-size: 0.9rem;
}

  .ewert-mail-buttons {
    gap: 1.3rem;
    top: 46%;
  }  
  .ewert-mail-button {
    height: 45px; 
    padding: 0 1.0rem 0 1rem;
    transform: translateX(calc(100% - 45px));
  }
  .ewert-mail-button-icon {
    width: 25px;
    height: 25px;
    flex: 0 0 25px;
  }
    .ewert-mail-button-label {
    font-size: 1.1rem;
  }
  .scroll-to-top {
  position: fixed;
  bottom: 66px;
  right: 10px;
}
}
  @media all and (max-width: 450px;)
{

  
}
 @media all and (max-width: 360px;)
{
 
  }
  .scroll-to-top {
  position: fixed;
  bottom: 85px;
  right: 10px;
}
}



