/* lato-100 - 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: 'Lato';
  font-style: normal;
  font-weight: 100;
  src: url('/fonts/lato-v24-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-100italic - 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: 'Lato';
  font-style: italic;
  font-weight: 100;
  src: url('/fonts/lato-v24-latin-100italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-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: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url('/fonts/lato-v24-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-300italic - 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: 'Lato';
  font-style: italic;
  font-weight: 300;
  src: url('/fonts/lato-v24-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-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: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/lato-v24-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-italic - 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: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: url('/fonts/lato-v24-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-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: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/lato-v24-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-700italic - 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: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: url('/fonts/lato-v24-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-900 - 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: 'Lato';
  font-style: normal;
  font-weight: 900;
  src: url('/fonts/lato-v24-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-900italic - 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: 'Lato';
  font-style: italic;
  font-weight: 900;
  src: url('/fonts/lato-v24-latin-900italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

hr.linear {
	color: #FFF;
  height: 10px /* 10px für 'linear-min', 50px für 'linear-max' */;
  background-image: linear-gradient(90deg, #FFF, #979795 50%, #FFF);  
}


body {line-height: 1.8em; color: #555; font-family: 'Lato', Arial, sans-serif; overflow-x: hidden;}
header {background-color: #FFF;}
.bg-bbt { background-color: #00a6d7 !important; border: 1px solid #00a6d7;}
.col-bbt { color: #00a6d7 !important;}
.topborder-bbt {border-bottom: 4px solid #00a6d7;}
.bg-fdt { background-color: #184388 !important; border: 1px solid #184388;}
.topborder-fdt {border-bottom: 4px solid #184388;}
.col-fdt { color: #184388 !important;}
.bg-cpt { background-color: #308D2E !important; border: 1px solid #308D2E;}
.topborder-cpt {border-bottom: 4px solid #308D2E;}
.col-cpt { color: #308D2E !important;}
.bg-mex { background-color: #008055 !important; border: 1px solid #308D2E;}
.topborder-mex {border-bottom: 4px solid #008055;}
.col-mex { color: #008055 !important;}
.topborder-sea {border-bottom: 4px solid #cb1a18;}
.bg-sea { background-color: #cb1a18 !important; border: 1px solid #308D2E;}
.col-sea { color: #cb1a18 !important;}
.bg-tec { background-color: #979795 !important; border: 1px solid #8a8a8a;}
.col-tec { color: #979795 !important;}
.topborder-tec {border-bottom: 4px solid #979795;}
.bg-mul { background-color: #Ef7D00 !important; border: 1px solid #Ef7D00;}
.col-mul { color: #Ef7D00 !important;}
.topborder-mul {border-bottom: 4px solid #Ef7D00;}

.liner {
  display: flex;
  align-items: flex-start;
  text-align: left;

  &:after {
    content: '';
    flex-grow: 1;
    height: 1px;
    background: #979795;
    min-width: 20px;
    margin: auto;
  }
&:after {
    margin-left: 20px;
  }	
}
.grey_dash { border: 1px dashed #898989; }
.fs-7 {font-size: 0.8rem !important;}
.fs-8 {font-size: 0.7rem !important;}
.absatz_titel {display:block; font-size: 1.25rem !important; margin: 1.5rem 0 1rem 0 !important;}
.navbar_main .nav-link ,
.navbar_main .nav-link.show { color: #FFF;}

@media (max-width: 575.98px) { 
.navbar_main .nav-link { font-size: 1.5rem; }
.navbar_main .nav-link-firstlvl { font-size: 2rem; }
}
@media (max-width: 991.98px) { 
	.navbar_main .nav-item-border { border-bottom: 1px solid #FFF; }	
}	
@media handheld,(max-height: 450px) { 
	#navbar-content { height: 90vh; }
}	

.content-wrapper { background-color: #FFF; overflow-x: hidden;}
.img-left-margin {margin: 10px 10px 10px 0}
.img-right-margin {margin: 10px 0px 10px 10px}
.img-greyscale { filter: grayscale(100%) opacity(60%); }

.produkt_detail_cpt { hyphens: auto; }
.produkt_detail_cpt .absatz_titel { text-align: left; }

.produkt_detail_cpt .produkt_kontakt_container,
.produkt_detail .produkt_kontakt_container { min-height: 200px; padding: 2em; color: #10344c;}
.produkt_detail_cpt .produkt_kontakt_container .produkt_kontakt_box,
.produkt_detail .produkt_kontakt_container .produkt_kontakt_box { border: 5px solid #f9fafb; }

.produkt_uebersicht_cpt a,
.produkt_detail_cpt a {color: #308D2E !important;}

/* Navbars */
.navbar_main .nav-item:hover a.nav-link { opacity: 0.7; }
.navbar_main .lvl3 { min-width: 20rem }
.navbar_main .topnavlink_container { height: 3em; line-height: 3em; padding-left: 0.7em; }
/* .navbar_main .topnavlink_container.active { background-color: #2d759a; } */
.navbar_main .topnavlink_container.active { background-color: #FFF; }
.navbar_main .topnavlink_container.active a { color: #000; }
.navbar_main .topnavlink_container a::after { position: absolute; right: 10px; content: '›'; }
@media (max-width: 575.98px) { 
 .navbar_main .topnavlink_container a::after {content: ''; }
}

.dropdown-menu a,
.navbar_main .topnavlink_container a { color: #FFF; font-size: 15px; text-decoration: none;}
.navbar_main .megamenu_element_container { float: left; width: 200px; margin: 5px; text-align: center; min-height: 175px; }
.navbar_main .megamenu_element_container:hover { background-color: #e6e6e6; text-decoration: none;}
.navbar_main .megamenu_element_container a { color: #333; }

.navbar_main .dropdown-toggle a::after { position: absolute; right: 10px; content: '›'; }

.navbar_top { padding:0; }
.navbar_top .nav-link { padding: 0;}
.navbar_top .nav-item a { color: #FFF !important;height: 40px; line-height: 40px;}
.navbar_top .nav-item:hover a,
.navbar_top .nav-item.active a { color: #FFF !important; }
.navbar_top .nav-item.bbt_mainlink { width: 200px; text-align: center; background-color: #009DD3; opacity: 0.7;}
.navbar_top .nav-item.bbt_mainlink:hover,
.navbar_top .nav-item.bbt_mainlink.active { background-color: #009DD3; opacity: 1;}
.navbar_top .nav-item.fdt_mainlink { width: 200px; text-align: center; background-color: #184388; opacity: 0.7;}
.navbar_top .nav-item.fdt_mainlink:hover,
.navbar_top .nav-item.fdt_mainlink.active { background-color: #184388; opacity: 1;}
.navbar_top .nav-item.cpt_mainlink { width: 200px; text-align: center; background-color: #308D2E; opacity: 0.7;}
.navbar_top .nav-item.cpt_mainlink:hover,
.navbar_top .nav-item.cpt_mainlink.active { background-color: #308D2E; opacity: 1;}
.navbar_top .nav-item.mul_mainlink { width: 200px; text-align: center; background-color: #Ef7D00; opacity: 0.7;}
.navbar_top .nav-item.mul_mainlink:hover,
.navbar_top .nav-item.mul_mainlink.active { background-color: #Ef7D00; opacity: 1;}

/* Animation to fade in the dropdown menus */
@keyframes fadeIn {
    from {opacity: 0;}
    to {opacity: 1;}
}

/* Assigning the above animation to all dropdown menus */
.dropdown-menu {
    &.show {
        -webkit-animation: fadeIn 0.3s alternate; /* Safari 4.0 - 8.0 */
         animation: fadeIn 0.3s alternate;						
    }
				
	--bs-dropdown-padding-y: 0;
	--bs-dropdown-border-radius: 0;
	--bs-dropdown-spacer: 0.1rem;
	--bs-dropdown-link-active-bg: #008bbb;
}

.dropdown-mega .dropdown-menu {
	background-color: #dfdfdf;
}

.dropdown-mega .dropdown-menu .dropdown-menu-leftside {
	padding:0;
}

/* Mega Menu adjustments */
.nav-item.dropdown.dropdown-mega {
    position: static;
    .dropdown-menu { width: 100%; max-width: 990px; top: auto; left: 5%; }
}

.dropdown-item.dropdown-toggle.show { font-weight: bold; }
.nav-item.dropdown.dropdown-mega .prod_cat { background-color: #dfdfdf; max-width: 73%; padding-top: 10px;	}

/* Complete styles for main navbar toggler and hamburger menu */
.navbar-toggler {
    border: none; padding: 0; outline: none;
    &:focus { box-shadow: none; }
}

/* Sidebox */
.rsidebar_box { margin-bottom: 0.8em; }
.rsidebar_box.bg-light { margin-bottom: 0; }
.rsidebar_box .txt_2col { display: inline-block; width: 50%; }
.rsidebar_box p a,
.rsidebar_box .sidebar_content a { color: #3c3c3b; text-decoration: none; font-weight: 400;}
.rsidebar_box p a::after,
.rsidebar_box .sidebar_content a::after { margin-right: 10px; font-family: "Font Awesome 6 Free"; font-weight: 900; content: " \f35d"; font-size: 12px; }
.rsidebar_box hr { border: none; border-top: #555 dashed 1px; margin: 0.5em 0;}
.rsidebar_box div div,
.rsidebar_box div p { padding: 0.8em 0.8em 0 0.8em; }

.modal-body .rsidebar_box { float:left; width: 200px; }

@media (max-width: 575.98px) { 
 .modal-body .rsidebar_box { float: none; margin: 0.5em auto !important;}
}

@media (max-width: 992px) {
	.rsidebar_box.cpt_contact_box { display:none; }
}

/* Content */
.seite_ueberschrift { padding: 10px 0; margin: 10px 0;  }
	.product-pills { border: 1px solid #ececec;}
	.product-pills ul li { border-bottom: 1px solid #FFF;}
	.pill-text { padding:5px 10px; background-color: #ececec; cursor: pointer; }
	.pill-text.active { padding:5px 10px; background-color: #FFF; border-left: 1px solid #00a6d7; }
	.pill-link { color: #00a6d7; text-decoration: none; }

.project_highlight_container { height: 400px; }
.project_highlight_container .project_highlight_img { padding-right: 0; }
.project_highlight_container .project_highlight_content { position: relative; }
.project_highlight_container .project_highlight_logo { position: absolute; top: 0; left: 0; }
.project_highlight_container .project_highlight_content_container { height: 350px; }
.project_highlight_container .project_highlight_content_container_spacer { height: 60px; background-color: #FFF; }
.project_highlight_sub { position: relative; height: 110px; z-index: 1; }
.project_highlight_sub .project_highlight_sub_content { line-height: 110px; background-color: #3c3c3a; }

.start_news_row .row > *{ padding-right: calc(var(--bs-gutter-x) * 1); padding-left: calc(var(--bs-gutter-x) * 1)}

/* Slider */
.caption .animate__animated.animate__fadeIn{
	animation-delay: 1.8s;
}

.caption .animate__animated.animate__flipInX {
  animation-delay: 2s;
	animation-duration: 3s;
}

@media (max-width: 767.98px) {
	.project_highlight_sub .project_highlight_sub_content { line-height: normal; }	
}

@media (max-width: 575.98px) { 
	body {font-size: 0.8em; }
	.project_highlight_container .project_highlight_img { min-height: 200px; }
	.project_highlight_container .project_highlight_logo { position: absolute; top: -110px; left: 0; }
	.project_highlight_container .project_highlight_content_container_spacer { display: none; }
	.project_highlight_container .project_highlight_content_container { height: auto; margin: 20px 0; line-height: normal;}	
	.project_highlight_sub .project_highlight_sub_content { line-height: normal; padding-bottom: 1em;}
	.produkt_detail_cpt img {float: none !important;}	
}


@media (max-width: 991.98px) {
	.claim,
	.topnav_companies,
	.prod_cat { display: none;}	
	.project_highlight_sub .project_highlight_sub_content { line-height: normal; padding-top: 20px}	
}

@media (min-width:1400px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width:1140px;
  }
}


/* Editor */
.edit_bg_1 { background-color: #FDF5E6;}
.edit_bg_2 { background-color: #FFFACD;}
.edit_bg_3 { background-color: #E0FFFF;}
.edit_bg_4 { background-color: #F8F8FF;}

/* CUSTOMER SLIDER START */
#startslider .caption_content_container { position: absolute; top:5%; left: 15%; min-width:30%; max-width: 600px; filter: opacity(90%) }
#startslider .cnt-mex .caption_content_container { top:initial; bottom: 10%; }
#startslider .caption_txt { color: #6A6A6A; margin-left: 0.7em; line-height: 1em; white-space: nowrap;}
#startslider .caption_subtxt { clear: both; color: #6A6A6A; margin: 1em; line-height: 1.2em;}
#startslider .caption_content_button { position: absolute; bottom: 10%; left: 10%; width: 40%; max-width: 500px; }
#startslider .caption_btn_txt { font-weight: bold; position: absolute; bottom: 0; right: 0; border: none; }

@media (max-width: 812px) { 
	#startslider .caption_content_container { position: absolute; top:5%; left: 10%; width:45%; max-width: none; }	
}

@media (max-width: 575.98px) { 
	#startslider .caption_content_container { position: absolute; top:5%; left: 10%; width:45%; max-width: none; }	
  #startslider .slider_bbt_logo { width: auto; height: 50px; }
	#startslider .caption_txt { font-size: 0.9em !important; white-space: wrap;}
	#startslider .caption_subtxt { font-size: 0.7em; } 
	#startslider .caption_btn_txt { font-size: 0.7em; font-weight: bold; position: absolute; bottom: 0; right: 0; border: none; }
	#startslider .carousel-item a.btn { padding: 0.5em 0.5em !important;}
	#startslider .carousel-indicators { margin-bottom: 0;}
	#startslider .caption_content_container ul { display: none; }
}

.carousel-inner .carousel-item.active,
.carousel-inner .carousel-item-next,
.carousel-inner .carousel-item-prev {
    display: flex;
}


.bscarousel img { filter: grayscale(100%) opacity(40%) }
.col-mex .bscarousel img { filter: grayscale(0%) opacity(40%) }

/* medium and up screens */
@media (min-width: 768px) {
    
    .carousel-inner .carousel-item-end.active,
    .carousel-inner .carousel-item-next {
      transform: translateX(25%);
			filter: opacity(40%);
    }
    
    .carousel-inner .carousel-item-start.active, 
    .carousel-inner .carousel-item-prev {
      transform: translateX(-25%);
			filter: opacity(40%);
    }
	
		
}

@media (max-width: 575.98px) {
    .carousel-inner .carousel-item-end.active,
    .carousel-inner .carousel-item-next {
			transform: translateX(50%);
      filter: opacity(40%);
    }
    
    .carousel-inner .carousel-item-start.active, 
    .carousel-inner .carousel-item-prev {
			transform: translateX(-50%);
      	filter: opacity(40%);
    }
}	

.carousel-inner .carousel-item-end,
.carousel-inner .carousel-item-start { 
  transform: translateX(0);
	filter: opacity(60%);
}


#sidebarCarousel .carousel-inner .carousel-item-end.active,
#sidebarCarousel  .carousel-inner .carousel-item-next {
			transform: translateX(100%);	
	filter: opacity(0);
}

#sidebarCarousel  .carousel-inner .carousel-item-start.active, 
#sidebarCarousel  .carousel-inner .carousel-item-prev {
			transform: translateX(-100%);
      	filter: opacity(0);
}

.carousel-item {
  transition: transform 1s ease-in-out;
}

.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  transition: opacity 0s 1s;
}

.contact_fixedbtn {
	position: fixed;
	top: 50%;
  right: 0;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
	writing-mode: vertical-lr;
	padding: 20px 5px;
	border-top-right-radius: 0%;
	border-bottom-right-radius: 0%;
	z-index:1021;
}

#btn2top {
  display: none; /* Hidden by default */
  position: fixed; /* Fixed/sticky position */
  bottom: 20px; /* Place the button at the bottom of the page */
  right: 30px; /* Place the button 30px from the right */
  z-index: 99; /* Make sure it does not overlap */
  border: none; /* Remove borders */
  outline: none; /* Remove outline */
  background-color: lightgrey; /* Set a background color */
  color: white; /* Text color */
  cursor: pointer; /* Add a mouse pointer on hover */
  padding: 10px 15px; /* Some padding */
  border-radius: 10px; /* Rounded corners */
  font-size: 18px; /* Increase font size */
	text-align: center;
}

#btn2top:hover {
  background-color: #555; /* Add a dark-grey background on hover */
}

@media (min-width: 992px) {
  .collapse.dont-collapse-sm {
    display: block;
    height: auto !important;
    visibility: visible;
  }
.collapse.dont-collapse-sm a:active,
.collapse.dont-collapse-sm a:hover {  
	font-weight: bold;
}	
	.rsidebar_box.cpt_contact_box { display:none; }
}

.cpt-dropdown_DEACTIVATED .dropdown-toggle::after {
  content: '\f054'; /* Replace this with the desired Font Awesome icon code */
  font-family: 'Font Awesome 5 Free'; /* Specify the Font Awesome font-family */
  font-weight: 900; /* Adjust the font weight if needed */
  border-top: 0;
  vertical-align: middle;
}