/*

	01 -- font
/* roboto-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('files/heeg/font/roboto-v51-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('files/heeg/font/roboto-v51-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('files/heeg/font/roboto-v51-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 800;
  src: url('files/heeg/font/roboto-v51-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* [start] 01 -- font  */

/* unlock-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Unlock';
  font-style: normal;
  font-weight: 400;
  src: url('/files/fonts/unlock/unlock-v28-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('/files/fonts/unlock/unlock-v28-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/files/fonts/unlock/unlock-v28-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/files/fonts/unlock/unlock-v28-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/files/fonts/unlock/unlock-v28-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/files/fonts/unlock/unlock-v28-latin-regular.svg#Unlock') format('svg'); /* Legacy iOS */
}

h1, .h1,
h2, .h2,
.headline{
    font-family: Roboto, Sans-Serif, 'Unlock';
}
body.nav-is-desktop .btn-toggle-submenu {
  top:9px;
}

/* buttons */

.btn a {
  background: var(--main-color);
  color: white !important; 
  padding: .57em 1.74em;
  border-radius: 8px;
  min-width: 100px;
  display: inline-block;
  text-align: center;
  font-size: 1.1em; 
  width: fit-content;
  margin-top: 1em;
}
.btn.content-hyperlink a {
  background: var(--main-color);
  color: white !important;
  padding: .57em 1.74em;
  border-radius: 8px;
  min-width: 100px;
  display: inline-block;
  text-align: center;
  font-size: 1.1em;
  width: fit-content;
  margin-top: 1em;
}
/* Der Haupt-Button-Link */
.btn.content-hyperlink a {
  background: var(--main-color);
  color: white !important;
  padding: .57em 1.74em;
  border-radius: 8px;
  min-width: 100px;
  display: inline-block;
  text-align: center;
  font-size: 1.1em;
  width: fit-content;
  margin-top: 1em;
  
  /* Wichtig für den Effekt: Positionierung und Abschneiden der Überstände */
  position: relative;
  overflow: hidden;
  z-index: 1;
}

/* Die hellere Schicht, die von links reinfährt */
.btn.content-hyperlink a::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.15); /* Erzeugt einen helleren Schleier über der Hauptfarbe */
  
  /* Startposition: Komplett nach links außerhalb des Buttons verschoben */
  transform: scaleX(0);
  transform-origin: left;
  
  /* Die flüssige Verzögerung/Animation (0.35 Sekunden Dauer) */
  transition: transform 0.35s ease-in-out;
  z-index: -1;
}

/* Der Hover-Zustand: Aktiviert den Effekt von links nach rechts */
.btn.content-hyperlink a:hover::before {
  transform: scaleX(1);
}
.btn.content-hyperlink a:hover {
  color: white !important;
  text-decoration: none; /* Verhindert eine ungewollte Unterstreichung */
}

/* footer */

#footer .content-text {
  color:#fff;
}


/* Standard-Linkfarbe überschreiben */
main a, .mod_article a, body a {
    color: #000000 !important;
    text-decoration: none !important;
}

/* Hover-Linkfarbe überschreiben */
main a:hover, main a:focus, 
.mod_article a:hover, .mod_article a:focus, 
body a:hover, body a:focus {
    color: #3D7B4A !important;
    text-decoration: underline !important;
}

/* 2. slider volle breite mit strichnavigation*/

.mod_rocksolid_slider.startslidefw,
.startslidefw .rsts-main {
    position: relative !important;
    height: 720px !important;
    min-height: 720px !important;
    width: 100% !important;
}

.startslidefw .rsts-view,
.startslidefw .rsts-slides,
.startslidefw .rsts-slide,
.startslidefw .rsts-slide > div {
    height: 100% !important;
    min-height: 100% !important;
    width: 100% !important;
}

.startslidefw .rsts-slide img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

.startslidefw .rsts-nav-bullets {
    position: absolute !important;
    bottom: 20px !important;         
    left: 50% !important;            
    transform: translateX(-50%) !important; 
    z-index: 2 !important;         
    
    display: block !important;       
    text-align: center !important;   
    
    width: auto !important;
    height: auto !important;
    min-height: 0 !important; 
    margin: 0 !important;
    padding: 0 !important;
}
@media (min-width: 1024px) {
.startslidefw .rsts-nav-bullets li {
    display: inline-block !important; 
    margin: 0 4px !important;         /* Abstand zwischen den Strichen */
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    vertical-align: middle !important;
}

@media (max-width: 650px) {
    .deine-bild-klasse img {
        width: 100%;          
        height: 250px;        
        object-fit: cover;    
        object-position: center;
    }
}
/* 6. Aus den Punkten kleine Striche*/
.startslidefw .rsts-nav-bullets a {
    display: block !important;
    position: relative !important;    /* Setzt eventuelle JS-Verschiebung zurück */
    top: auto !important;
    left: auto !important;
    width: 35px !important;           /* Länge des Strichs */
    height: 7px !important;           /* Dicke des Strichs */
    border-radius: 0 !important;      /* Macht aus dem Kreis ein Rechteck */
    background: #ffffff !important;   /* Farbe für inaktive Striche */
    opacity: 1 !important;
    text-indent: -9999px !important;  /* Versteckt eventuellen Text */
    transition: background 0.3s ease;
}

/* 7. Farbe für den aktiven Strich */
.startslidefw .rsts-nav-bullets .rsts-active a,
.startslidefw .rsts-nav-bullets a:hover {
    background: #545454 !important;   /* Farbe für aktiven Strich */
}
}

@media (max-width: 768px) {
    .mod_rocksolid_slider.startslidefw,
    .startslidefw .rsts-main {
        height: 280px !important;     /* Mobile Wunschhöhe */
        min-height: 280px !important;
    }
}