/*
 Theme Name:   Bootscore Child
 Description:  Bootscore Child Theme
 Author:       Bootscore
 Author URI:   https://bootscore.me
 Template:     bootscore
 Version:      6.0.0
 Requires at least: 5.0
 Tested up to: 6.6
 Requires PHP: 7.4
 License: MIT License
 License URI: https://github.com/bootscore/bootscore-child/blob/main/LICENSE
 Text Domain:  bootscore
*/

/* 
All style editing is done via /assets/scss/_bootscore_custom.scss
*/
:root {
  --str-darkblue:#04152D;
  --str-stdblue:#144985;
  --str-signalblue:#2273B8;
  --str-purewhite:#fff;
  --str-bluegrey17:#D7E0EB;
  --str-lightgrey5:#f3f6f9;

  /* standardfarben mit alpha  */
  --str-stdblue10:rgba(20, 73, 133, .1);
  --str-stdblue20:rgba(20, 73, 133, .2);
  --str-stdblue30:rgba(20, 73, 133, .3);
  --str-stdblue40:rgba(20, 73, 133, .4);
  --str-stdblue50:rgba(20, 73, 133, .5);
  --str-stdblue60:rgba(20, 73, 133, .6);
  --str-stdblue70:rgba(20, 73, 133, .7);
  --str-stdblue80:rgba(20, 73, 133, .8);
  --str-stdblue90:rgba(20, 73, 133, .9);

   --str-signalblue50:rgba(34, 115, 184, .5);

  --str-darkblue50:rgba(4, 21, 45, .5);
  --str-darkblue60:rgba(4, 21, 45, .6);
  --str-darkblue70:rgba(4, 21, 45, .7);
  --str-darkblue80:rgba(4, 21, 45, .8);
  --str-darkblue90:rgba(4, 21, 45, .9);



  --header-height:90px;



  /* Hero Höhe fix */
  --home-hero-height:33vw;
  --hero2-height:33vw;
  --narrrow-hero-height:33vw;

  --bs-body-font-family: 'roboto', sans-serif;
  --bs-link-color-rgb:#04152D;

  --bs-btn-bg: #04152D;
  --gf-local-bg-color: #04152D!important;

}
.navbar {
  --bs-navbar-active-color:var(--str-purewhite);
}

.btn-primary {
      --bs-btn-color: var(--str-lightgrey5);
    --bs-btn-bg: var(--str-signalblue);
    --bs-btn-border-color: var(--str-signalblue);
    --bs-btn-hover-color: var(--str-lightgrey5);
    --bs-btn-hover-bg: var(--str-darkblue);
    --bs-btn-hover-border-color: var(--str-darkblue);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: var(--str-lightgrey5);
    --bs-btn-active-bg: var(--str-darkblue);
    --bs-btn-active-border-color: #0a53be;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--str-lightgrey5);
    --bs-btn-disabled-bg: var(--str-signalblue);
    --bs-btn-disabled-border-color: var(--str-signalblue)
}



.btn-st-signal-blue {
      --bs-btn-color: var(--str-darkblue);
    --bs-btn-bg: transparent;
    --bs-btn-border-color: var(--str-darkblue);
    --bs-btn-hover-color: var(--str-lightgrey5);
    --bs-btn-hover-bg: var(--str-darkblue);
    --bs-btn-hover-border-color: var(--str-darkblue);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: var(--str-lightgrey5);
    --bs-btn-active-bg: var(--str-darkblue);
    --bs-btn-active-border-color: #0a53be;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--str-lightgrey5);
    --bs-btn-disabled-bg: var(--str-signalblue);
    --bs-btn-disabled-border-color: var(--str-signalblue)
}

body {

   /*text-align: justify;
  text-justify: inter-word;

  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;

  overflow-wrap: break-word;
  word-break: normal;*/

  background-color: var(--str-lightgrey5);
}





body a {
  text-decoration: none;
  font-weight: 600;
}

/* Single Karriere Seiten */
body.single-karriere{
  background-color: var(--str-purewhite);
}

body.single-industry{
  background-color: var(--str-purewhite);
}



h1, h2, h3, h4, h5, h6 {
  color:var(--str-darkblue);
  font-family: 'montserrat', sans-serif;
}

h1, h2 {
  
  font-weight: 800;
  text-transform: uppercase;
}

h3, h4 {
  
  font-weight: 700;
  text-transform: uppercase;
}

body.single-sales,
body.single-industry {
  background-color: #fff;
}


.form-select,select {
  font-size: .7rem;
}



@media (max-width: 600px){
  h1, h2, h3, h4, h5, h6 {
 font-size: 1.2rem!important;
}

}

header {
	height:var(--header-height);
}


.cls-custom-header {
	background-color: var(--str-darkblue);
}

.container {
  max-width: 1500px; /* dein Wunschwert */
}

.navbar-expand-xl {
	
	background: ;
}


.navbar-expand-xl a {
	font-family: 'raleway';
	font-weight: 500;
	font-size: 13px;
	color:#fff;
}

@media (min-width: 992px) {
  .navbar-expand-xl a.nav-link {
    line-height: 66px;
  }
}



header .btn-outline-secondary {
  --bs-btn-color: var(--str-lightgrey5);
    --bs-btn-border-color: var(--str-lightgrey5);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--str-lightgrey5);
    --bs-btn-hover-border-color: var(--str-lightgrey5);
    --bs-btn-focus-shadow-rgb: 108, 117, 125;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--str-lightgrey5);
    --bs-btn-active-border-color: var(--str-lightgrey5);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--str-lightgrey5);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--str-lightgrey5);
    --bs-gradient: none
}


header .offcanvas-body {
  background:var(--str-darkblue);
  
  
}



header .offcanvas-header {
  background:var(--str-stdblue);
  color:var(--str-purewhite);
}


#offcanvas-navbar .offcanvas-footer-logo{
  display: none;
}

#offcanvas-navbar .offcanvas-social{
  display: none;
   
 }

#offcanvas-navbar.show .offcanvas-footer-logo{
  border-top: 1px solid var(--str-stdblue50);
  display: block;
}
/* =====================================================
   FIX: Mega-Menü Toggle bleibt weiß, auch wenn Dropdown offen ist
   (Hover verlässt den Link -> Bootstrap/Theme setzt sonst schwarz)
   ===================================================== */

/* Grundfarbe aller Nav-Links (Desktop) */
@media (min-width: 992px) {

  .navbar{
    --bs-navbar-color: #fff;
    --bs-navbar-hover-color: #fff;
    --bs-navbar-active-color: #fff;
    --bs-navbar-disabled-color: rgba(255,255,255,.6);
  }

  /* Navlinks immer weiß */
  .navbar-expand-xl .navbar-nav .nav-link{
    color:#fff;
  }

  /* Hover bleibt weiß */
  .navbar-expand-xl .navbar-nav .nav-link:hover,
  .navbar-expand-xl .navbar-nav .nav-link:active,
  .navbar-expand-xl .navbar-nav .nav-link:visited{
    color:#fff;
    font-weight: 600;
  }

  /* Dropdown offen (Bootstrap setzt aria-expanded="true") -> bleibt weiß */
  .navbar-expand-xl .navbar-nav .nav-link.dropdown-toggle[aria-expanded="true"]{
    color:#fff !important;
    font-weight: 600;
  }

  /* Dropdown offen via Keyboard/Fokus im Menü -> bleibt weiß */
  .navbar-expand-xl .nav-item.dropdown:focus-within > .nav-link{
    color:#fff !important;
    font-weight: 600;
  }
}


.navbar-expand-xl a.nav-link.active {
  color:#fff;
  font-weight: 600;
}

.navbar-expand-xl a.nav-link.dropdown-toggle {
 
}



.header-social {
	margin-left:50px;
}



/* Container für korrektes Positioning */
.logo-wrapper {
  display: inline-block;
}

.logo-scrolled{
  opacity: 1;
  transition: opacity .25s ease;
}

.logo-on-scroll .logo-scrolled{
  opacity: 0;
}

.logo-on-scroll .scrolled .logo-scrolled{
  opacity: 1;
}







/*Mega-Menü*/
/* ============================================
   Mega-Menü – Basis / Positionierung
   ============================================ */

/* Navbar als Bezugspunkt */
#nav-main {
  position: relative;
}

/* Mega-Menü-Items nicht relativ positionieren */
.navbar .nav-item.dropdown.has-mega-menu,
.navbar .nav-item.dropdown.has-mega-menu-a,
.navbar .nav-item.dropdown.has-mega-menu-b {
  position: static;
}

/* Mega-Menü-Container */
.navbar .dropdown-menu.mega-menu {



  position: absolute;
  top: var(--header-height);
  left: 50%;
  transform: translateX(-50%);
  border: none;
  border-radius: 0;
  padding: 1.5rem 2.5rem;
  width: 1300px;            /* Gesamtbreite, rechts bleibt Platz = "Spalte 4" */
  margin: 0 auto;
  z-index: 1000;
  background-image: url('assets/img/header/MegaMenuBG.png');
    background-size: 70%;      /* optional */
  background-repeat: no-repeat;
  background-position-x: right;
background-position-y: calc(100% + 3px);
  border-bottom: 35px solid var(--str-darkblue);
  border-top: 7px solid #ddd;
}

/* Header-Zeile */
.mega-menu-header {
  display: block;
  width: 100%;
  padding-bottom: .75rem;
  margin-bottom: .75rem;
  border-bottom: 1px solid rgba(0,0,0,0.2);
}

.mega-menu-title {
  font-size: 1.1rem;
  font-weight: 700;
  color: #000;
  display: block;
  text-transform: uppercase;
}

/* Content-Wrapper (li) */
.mega-menu-content {
  list-style: none;
  padding: 0;
  margin: 0;
}


/* Navbar: Fokus-Ring/Outline für Dropdown-Toggles entfernen */
.navbar .nav-link:focus,
.navbar .nav-link:focus-visible,
.navbar .dropdown-toggle:focus,
.navbar .dropdown-toggle:focus-visible{
  outline: 0 !important;
  box-shadow: none !important;
}

/* ============================================
   Desktop: 3 Inhaltsspalten, spaltenweise Befüllung
   ============================================ */
@media (min-width: 992px) {

  /* nur Mega-Menü A: Geschäftsbereiche */
  .mega-menu-a .mega-menu-columns {
    column-count: 3;
    column-gap: 2.5rem;
    width: 75%;
  }

  /* Nur für Mega-Menü A, NICHT für B */
  .mega-menu-a .mega-menu-item {
    display: block;
    break-inside: avoid;
    margin-bottom: 0.75rem;
  }
}




/* ============================================
   Mega-Menü Typ B: "Unternehmen"
   ============================================ */

@media (min-width: 992px) {

  /* 2x2 Grid: 
     col1: Unternehmen / Firmengeschichte
     col2: Downloads(+PDFs) / Unsere Partner(+Partner) */
  .mega-menu-b .mega-menu-columns {
    display: grid;
    width: 75%;
    grid-template-columns: 30% 70%;
    grid-auto-rows: auto;
    column-gap: 3rem;
    row-gap: 1rem;
  }

  .mega-menu-b .mega-menu-item {
    margin-bottom: 0;
  }

  /* Unternehmen (links oben) */
  .mega-menu-b .mega-menu-item:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
    border-right: 1px solid #ddd;
  }

  /* Firmengeschichte (links unten) */
  .mega-menu-b .mega-menu-item:nth-child(2) {
    grid-column: 1;
    grid-row: 2;
    border-right: 1px solid #ddd;
  }

  /* Downloads (rechts oben) */
  .mega-menu-b .mega-menu-item:nth-child(3) {
    grid-column: 2;
    grid-row: 1;
  }

  /* Unsere Partner (rechts unten) */
  .mega-menu-b .mega-menu-item:nth-child(4) {
    grid-column: 2;
    grid-row: 2;
  }

  /* Textfarbe für alle Links in Mega-Menü B */
  .mega-menu-b .mega-menu-link,
  .mega-menu-b .mega-menu-item a {
    color: var(--str-darkblue) !important;
  }



  .mega-menu-b .dropdown-item:hover {
    background: none;
  }

  /* Überschriften (Downloads / Unsere Partner) */
  .mega-menu-b .mega-menu-item.menu-item-has-children > .mega-menu-link {
    font-weight: 600;
    padding-bottom: .25rem;
  }

  /* Überschrift ohne Kreis-Icon */
  .mega-menu-b .mega-menu-item.menu-item-has-children > .mega-menu-link::before {
    width: 0;
    height: 0;
    margin-right: 0;
    background: none;
  }

  /* Unterlisten (PDFs / Partner) statisch anzeigen */
  .mega-menu-b .mega-menu-item.menu-item-has-children > ul.dropdown-menu {
    position: static;
    transform: none;
    display: block;
    background: transparent;
    border: 0;
    box-shadow: none;
    margin: .25rem 0 0;
    padding: 0;
  }

  .mega-menu-b .mega-menu-item.menu-item-has-children > ul > li {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .mega-menu-b .mega-menu-item.menu-item-has-children > ul > li > a {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .15rem 0;
    font-size: .95em;
  }

  /* Titel "Downloads" / "Unsere Partner" nicht klickbar */
  .mega-menu-b .mega-menu-item.mega-title > a {
    pointer-events: none;
    cursor: default;
    font-weight: 700;
    color: var(--str-darkblue);
  }

  .mega-menu-b .mega-menu-item.mega-title > a:hover {
    color: var(--str-darkblue);
    text-decoration: none;
  }

  /* Download-Icons vor PDFs */
  .mega-menu-b .mega-menu-item.menu-item-has-children > ul > li > a::before {
    content: "";
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #f5f5f5 url('assets/img/header/icons/svg/Download_idle.svg')
                center / 12px 12px no-repeat;
    flex-shrink: 0;
  }

  .mega-menu-b .mega-menu-item.menu-item-has-children > ul > li > a:hover::before {
    background-image: url('assets/img/header/icons/svg/Download_hover.svg');
  }

  /* Partner-Icons (mega-partner im Backend zuweisen) */
  .mega-menu-b .mega-menu-item.mega-partner > ul > li > a::before {
    content: "";
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #f5f5f5 url('assets/img/header/icons/svg/Partner_idle.svg')
                center / 12px 12px no-repeat;
    flex-shrink: 0;
  }

  .mega-menu-b .mega-menu-item.mega-partner > ul > li > a:hover::before {
    background-image: url('assets/img/header/icons/svg/Partner_hover.svg');
  }
}

@media (min-width: 992px){
.mega-menu-b .mega-menu-item.mega-firmengeschichte {
    margin-top: -44px; /* Feintuning */
  }
}



/* ============================================
   Mobile / Tablet: alles untereinander
   ============================================ */
@media (max-width: 991.98px) {

  .navbar .dropdown-menu.mega-menu {
    position: static;
    transform: none;
    width: 100%;
    max-width: 100%;
    padding: .75rem 1rem;

  }

  .mega-menu-columns {
    column-count: 1;
    column-gap: 0;
  }

  .mega-menu-item {
    margin-bottom: 0.75rem;
  }
}

/* ============================================
   Links + Icons
   ============================================ */

.mega-menu-link {
  /*font-family: 'Montserrat', sans-serif!important;*/
  color:var(--str-darkblue);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-weight: 500;
  color: #00163b !important;
  text-decoration: none;
  padding: 0;
  font-size: 1em!important;
}

.mega-menu-link:hover {
  font-weight: 600;
  text-decoration: none;
}

/* Icon-Platzhalter, Icons per Menü-Klasse zuweisen */
.mega-menu-link::before {
  content: "";
  display: inline-block;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #f5f5f5;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

/* Idle Icon */
.mega-tiefkanal > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/Kanal_idle.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-tiefkanal > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/Kanal_hover.svg');
}


/* Idle Icon */
.mega-erdbau > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/Erdbau_idle.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-erdbau > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/Erdbau_hover.svg');
}

/* Idle Icon */
.mega-asphalt > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/Asphaltbau_idle.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-asphalt > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/Asphaltbau_hover.svg');
}

/* Idle Icon */
.mega-strassenbau > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/Strassenbau_idle.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-strassenbau > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/Strassenbau_hover.svg');
}

/* Idle Icon */
.mega-bankett > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/Bankettbau_idle.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-bankett > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/Bankettbau_hover.svg');
}

/* Idle Icon */
.mega-pflaster > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/Pflaster_idle.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-pflaster > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/Pflaster_hover.svg');
}



/* Idle Icon */
.mega-recycling > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/recycling_idle.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-recycling > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/recycling_hover.svg');
}


/* Idle Icon */
.mega-unternehmen > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/Unternehmen_idle2.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-unternehmen > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/Unternehmen_hover2.svg');
}

/* Idle Icon */
.mega-firmengeschichte > .mega-menu-link::before {
  content: "";
  width: 48px;
  height: 48px;
  display: inline-block;
  background-image: url('assets/img/header/icons/svg/geschichte_idle.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover Icon */
.mega-firmengeschichte > .mega-menu-link:hover::before {
  background-image: url('assets/img/header/icons/svg/geschichte_hover.svg');
}




.navbar .dropdown-menu.mega-menu::before{
  content:"";
  position:absolute;
  left:0;
  top:-16px;      /* Pufferhöhe */
  width:100%;
  height:16px;
}





/* ============================================
   Hover-Verhalten Desktop (Bootstrap)
   ============================================ */
@media (min-width: 1200px) {

  .navbar .nav-item.dropdown:hover > .dropdown-menu {
    display: block;
  }

  .navbar .nav-item.dropdown:hover > .dropdown-menu.mega-menu {
    display: block;
  }
}





/* ============================================
   Heros
   ============================================ */


/* ausgelagert: bootscore-child/assets/css/hero-styles.css */


























/* ============================================
   Footer
   ============================================ */

footer {
  color:#fff;
  font-family: 'Montserrat', sans-serif;
}

footer a { 
text-decoration: none;
color: #fff;
}

footer a:hover { 
font-weight: 600;
}
footer .bootscore-copyright {
  color:#ddd;
}


footer ul {
  list-style-type: none;
  font-size: .8em;

}
footer ol,ul {
    padding-left: 0;
}

   #footer .bg-body-st-darkblue{
  background-color: var(--str-darkblue);
}

#footer .bg-body-st-stdblue{
  background-color: var(--str-stdblue);
}

#footer .bootscore-footer-top{
  border-bottom: 1px solid var(--str-stdblue)!important;
}

#footer .bootscore-footer-top h2{
  color: var(--str-darkblue);
}




/* =====================================================
   CLS Button – Outline Secondary
   unabhängig von Bootstrap
   ===================================================== */

.btn-cls-outline-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.35rem;

  padding:10px 14px;
  border:2px solid var(--str-darkblue);
  background:transparent;

  color:var(--str-darkblue);
  text-decoration:none;

  font-weight:600;
  font-size:.85rem;
  text-transform:uppercase;
  letter-spacing:.02em;

  border-radius:0;

  transition:
    background-color .2s ease,
    color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.btn-cls-outline-secondary:hover{
  background:var(--str-darkblue);
  color:var(--str-purewhite);
  border-color:var(--str-darkblue);
  transform:translateY(-1px);
}

.btn-cls-outline-secondary:disabled{
  border-color:var(--str-bluegrey17);
  color:var(--str-bluegrey17);
  background:transparent;
  transform:none;
}
















/* ============================================
   individuelle Blocks – HOME
   ============================================ */


.home-gschftsbrch-wrapper{
overflow: hidden;
}


.home-gschftsbrch-wrapper > .stk-row{
  position: relative;
  z-index: 0;
}

/* Hintergrundbild fullwidth */
.home-gschftsbrch-wrapper > .stk-row::before{
  content:"";
  position:absolute;

  top:0;
  bottom:0;

  left:50%;
  right:50%;

  margin-left:-50vw;
  margin-right:-50vw;

  background:url(assets/img/various/LogoWallpaper_SD.jpg) center / cover no-repeat;

  z-index:-2;
}

/* diagonaler Separator */
.home-gschftsbrch-wrapper > .stk-row::after{
  content:"";
  position:absolute;

  
  width:200vw;
  height:100%;

  top:-50%;
box-shadow: 10px 10px 5px rgba(4,21,45,.22);

  background:var(--str-lightgrey5);
  transform-origin:center;

  transform: translateX(-50%) rotate(-10deg);

  z-index:-1;
}





.home-tiles-dsk{
  width:20%;
  margin: 8px !important;
  padding-top: 50px;
  aspect-ratio: 1;

  text-align: center;

  /* hyphens: auto;
  overflow-wrap: break-word;   
  word-break: normal;  */

  background: var(--str-purewhite, #fff);
  color: var(--str-darkblue);

  box-shadow: 5px 5px 12px rgba(0,0,0,.25);

  /* Typo-/Hover-System */
  --tile-scale: 1;      /* Hover-Faktor */
  --h2-base: 1.8rem;
  --h3-base: 1.4rem;
  --p-base:  1rem;

  transition: box-shadow .25s ease;
}

/* Headings zentrieren (falls global überschrieben) */
.home-tiles-dsk h2,
.home-tiles-dsk h3,
.home-tiles-dsk h4{
  text-align: center;
}

/* Border-Radius */
.home-tiles-dsk:nth-child(1),
.home-tiles-dsk:nth-child(4),
.home-tiles-dsk:nth-child(5){
  border-radius: 0 50px 0 50px;
}

.home-tiles-dsk:nth-child(2),
.home-tiles-dsk:nth-child(3),
.home-tiles-dsk:nth-child(6){
  border-radius: 50px 0 50px 0;
}

/* Farben gebündelt */
.home-tiles-dsk:nth-child(2),
.home-tiles-dsk:nth-child(6){
  background-color: var(--str-signalblue);
  color: var(--str-purewhite);
}

.home-tiles-dsk:nth-child(3){
  background-color: var(--str-darkblue);
  color: var(--str-purewhite);
}

/* h3 nur dort weiß (redundant, aber ok) */
.home-tiles-dsk:nth-child(2) h3,
.home-tiles-dsk:nth-child(3) h3,
.home-tiles-dsk:nth-child(6) h3{
  color: var(--str-purewhite);
}

/* K6: nur Basisgröße der Überschrift reduzieren (Hover bleibt erhalten) */
.home-tiles-dsk:nth-child(6){
  --h3-base: 1rem;
}

/* Hover: Text wird größer (kein transform-scale -> kein Pixelmatsch) */
.home-tiles-dsk:hover{
  --tile-scale: 1.09;
  box-shadow: 6px 6px 12px rgba(0,0,0,.25);
}

/* Skalierte Schriftgrößen */
.home-tiles-dsk h2{ font-size: calc(var(--h2-base) * var(--tile-scale)); }
.home-tiles-dsk h3{ font-size: calc(var(--h3-base) * var(--tile-scale)); }
.home-tiles-dsk p { font-size: calc(var(--p-base)  * var(--tile-scale)); }

/* Smooth */
.home-tiles-dsk h2,
.home-tiles-dsk h3,
.home-tiles-dsk p{
  transition: font-size .25s ease;
}


@media (max-width: 600px){



  .home-gschftsbrch-wrapper > .stk-row::before{
 background-position: bottom;
}
  
    .home-tiles-dsk p  {
     display:none;

  }

   .home-tiles-dsk   {
        text-align: justify;
  text-justify: inter-word;

  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;

  overflow-wrap: break-word;
  word-break: normal;
    
  }

 
}

/*Spezial blocks*/

/*.accent-block-signal-blue{
  position: relative;       
              
  
  
  background-color: var(--str-signalblue);
  color: var(--str-purewhite);
  font-size: 1.2em;
  padding: 60px 0;          
}
.accent-block-signal-blue h2{
  color: var(--str-purewhite);
}
*/




.hero-separator img{

  filter:
    drop-shadow(0 4px 6px rgba(0,0,0,.12))
    drop-shadow(0 18px 22px rgba(0,0,0,.18));
}



.position-absolute {
  position:absolute;
  left:-50px;
  top :-200px;
  z-index: 99;
}


.home-bagger-position-absolute {
  position:absolute;
  left:-50px;
  top :-3rem;
  z-index: 99;
  width: clamp(900px, 55vw, 1600px);
}




/* Submit Button – Idle */
#gform_submit_button_5, #gform_submit_button_6, #gform_browse_button_6_30 {
  background: var(--str-stdblue);
  color: var(--str-purewhite);
  text-transform: uppercase;
  border: none;
  transition: background .25s ease;
}

/* Hover */
#gform_submit_button_5:hover, , #gform_submit_button_6:hover, #gform_submit_button_6_30:hover {
  background: var(--str-signalblue);
}

/* Optional: Fokus für Accessibility */
#gform_submit_button_5:focus-visible, #gform_submit_button_6:focus-visible, #gform_submit_button_6_30:focus-visible  {
  outline: 2px solid var(--str-signalblue);
  outline-offset: 2px;
}


/* To-Top Button – exklusives Styling */
.top-button {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  padding: 0;

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

  line-height: 1;
}

/* Icon sauber zentriert + optisch minimal korrigiert */
.top-button i {
  font-size: 18px;
  line-height: 1;
  margin: 0;
}





.container-over-hero{
  --overlap: 220px;           /* Wert hier einstellen */
  position: relative;
  z-index: 5;

  transform: translateY(calc(var(--overlap) * -1));
  margin-bottom: calc(var(--overlap) * -1);
}

/* Mobile weniger Overlap */
@media (max-width: 991.98px){
  .container-over-hero{ --overlap: 240px; }
}





.bewerbungsformular h3 {
  text-transform: capitalize;
  font-size: 1em;
}


 .btn-cls-fill-primary {
  margin:25px;
  background: var(--str-signalblue);
  border-radius: 0;
}

 .btn-cls-fill-primary:hover {
  background: var(--str-signalblue);
  border-radius: 0;
}


.gform_required_legend {
  font-size: .7em;
}







@media (max-width: 1199.98px){

  header #offcanvas-navbar {

box-shadow: -1px 0px 0px 0px var(--str-stdblue50);
}


    #offcanvas-navbar .offcanvas-footer-logo{
    margin-top: auto;
    padding: 2rem 1.25rem 1.5rem;
    
  }

  #offcanvas-navbar .offcanvas-footer-logo img{
    max-width: 160px;
    height: auto;
    opacity: .9;
  }

  #offcanvas-navbar .offcanvas-social{
    display:block;
    margin-top: 2rem;
    gap: 1.25rem;
    padding: 2rem 1.25rem;
      border-top: 1px solid var(--str-stdblue50);
  }

  #offcanvas-navbar .offcanvas-social a{
    display:flex;
    align-items:left;
    justify-content:left;
  }

  #offcanvas-navbar .offcanvas-social svg{
    width:28px;
    height:28px;
  }




   header .offcanvas-body{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Submenus: volle Breite, keine Einrückung des Containers */
  header .offcanvas-body .dropdown-menu{
    position: static !important;
    transform: none !important;
    float: none !important;
    width: 100%;

    border: 0 !important;
    box-shadow: none !important;

    padding: 0 !important;     /* <- wichtig */
    margin: 0 !important;      /* <- wichtig */

    display: none; /* zu */
    background: transparent !important;
    border-radius: 0 !important;
  }

  header .offcanvas-body .dropdown-menu.show{
    display: block;
  }

  /* =========================
     Level 2 Fläche (50%)
  ========================= */
  header .offcanvas-body
  .navbar-nav > li.menu-item-has-children > ul.dropdown-menu.show{
    background: rgba(20, 73, 133, .5) !important; /* --str-stdblue @ 50% */
    margin:1rem 0!important;
    padding: 1.25rem 0!important;
  }

  /* =========================
     Level 3 Fläche (50%)
  ========================= */
  header .offcanvas-body
  .navbar-nav > li.menu-item-has-children > ul.dropdown-menu
  li.menu-item-has-children > ul.dropdown-menu.show{
    background: rgba(34, 115, 184, .5) !important; /* --str-signalblue @ 50% */
     margin:1rem 0!important;
    padding: 1.25rem 0!important;


  }

 

  


  /* Top-Level Links: größer + fett */
  header .offcanvas-body .navbar-nav > li > a.nav-link{
    font-size: 1.05rem;
    font-weight: 600;
    color: #fff !important;
    padding: .55rem 20px !important;
  }

  /* Unterpunkte: etwas kleiner + geringerer Zeilenabstand */
  header .offcanvas-body .dropdown-item,
  header .offcanvas-body .dropdown-menu a.dropdown-toggle{
    color: #fff !important;
    font-size: .95rem;
    font-weight: 500;
    line-height: 1.15;
    padding-top: .35rem !important;
    padding-bottom: .35rem !important;
    background: transparent !important;
  }

    /* Level 2 & 3 Links */
  header .offcanvas-body
  .dropdown-menu a{
    padding-top: .6rem !important;
    padding-bottom: .6rem !important;
    line-height: .8;
  }

  /* Einrückung nur über Link-Padding (nicht über Container) */
  /* Level 2 Links */
  header .offcanvas-body
  .navbar-nav > li.menu-item-has-children > ul.dropdown-menu
  > li > a{
    padding-left: 2.25rem !important;
    padding-right: 1rem !important;
  }

  /* Level 3 Links */
  header .offcanvas-body
  .navbar-nav > li.menu-item-has-children > ul.dropdown-menu
  li.menu-item-has-children > ul.dropdown-menu
  > li > a{
    padding-left: 3.25rem !important;
    padding-right: 1rem !important;
  }

  /* Chevron vor Link (nur Sublevels) */
  header .offcanvas-body
  .navbar-nav > li.menu-item-has-children > ul.dropdown-menu a::before{
    content: "\203A"; /* › als Fallback ohne Icon-Font */
    display: inline-block;
    width: 1rem;
    margin-left: -1rem;
    margin-right: .35rem;
    opacity: .9;
  }

  /* Fokus/Active nicht schwarz */
  header .offcanvas-body .nav-link:focus,
  header .offcanvas-body .dropdown-item:focus,
  header .offcanvas-body .dropdown-toggle:focus,
  header .offcanvas-body .nav-link:active,
  header .offcanvas-body .dropdown-item:active,
  header .offcanvas-body .dropdown-toggle:active{
    color:#fff !important;
    background: transparent !important;
    outline: 0 !important;
    box-shadow:none !important;
  }
}




  /* =========================
     maschinenverkauf hide filter
  ========================= */


  .filter-button-row {
    display: none;
  }

  .filter-ranges-container {
    display: none;
  }




  .zeitstrahl-zoom-drag{
  position:relative;
  overflow:hidden;
  cursor:grab;
}

.zeitstrahl-zoom-drag img{
  display:block;
  width:100%;
  height:auto;
  transform-origin:center;
  transition:transform .25s ease;
}

.zeitstrahl-zoom-drag .stk-img-wrapper{
  display:block;
}





/* Cookie Banner Hintergrund */
#cc--main .cc__modal,
#cc--main .cc__settings {
  background-color: var(--str-darkblue);
  color: #ffffff;
}

/* Text */
#cc--main,
#cc--main p,
#cc--main span,
#cc--main strong {
  color: #ffffff;
}

/* Links */
#cc--main a {
  color: #ffffff;
  text-decoration: underline;
}

/* Buttons */
#cc--main .cc__btn-primary {
  background: #ffffff;
  color: var(--str-darkblue);
  border: none;
}

#cc--main .cc__btn-secondary {
  background: transparent;
  color: #ffffff;
  border: 1px solid #ffffff;
}

/* Toggle Labels */
#cc--main .cc__toggle-wrapper span {
  color: #ffffff;
}