:root {
    --blue: #104061;
    --gold: #d3bc73;
    --grey: #242421;
    --yellow: #f5ec9b;
    --white: #ffffff;
}

@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/poppins-v23-latin-300.eot');
  src: url('../fonts/poppins-v23-latin-300.eot?#iefix') format('embedded-opentype'),
   url('../fonts/poppins-v23-latin-300.woff2') format('woff2'), 
   url('../fonts/poppins-v23-latin-300.woff') format('woff'), 
   url('../fonts/poppins-v23-latin-300.ttf') format('truetype'), 
   url('../fonts/poppins-v23-latin-300.svg#Poppins') format('svg'); 
}
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/poppins-v23-latin-regular.eot');
  src: url('../fonts/poppins-v23-latin-regular.eot?#iefix') format('embedded-opentype'),
   url('../fonts/poppins-v23-latin-regular.woff2') format('woff2'), 
   url('../fonts/poppins-v23-latin-regular.woff') format('woff'), 
   url('../fonts/poppins-v23-latin-regular.ttf') format('truetype'), 
   url('../fonts/poppins-v23-latin-regular.svg#Poppins') format('svg'); 
}
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/poppins-v23-latin-500.eot');
  src: url('../fonts/poppins-v23-latin-500.eot?#iefix') format('embedded-opentype'),
   url('../fonts/poppins-v23-latin-500.woff2') format('woff2'), 
   url('../fonts/poppins-v23-latin-500.woff') format('woff'), 
   url('../fonts/poppins-v23-latin-500.ttf') format('truetype'), 
   url('../fonts/poppins-v23-latin-500.svg#Poppins') format('svg'); 
}
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/poppins-v21-latin-600.woff2') format('woff2'), 
   url('../fonts/poppins-v21-latin-600.woff') format('woff'), 
   url('../fonts/poppins-v21-latin-600.ttf') format('truetype'), 
   url('../fonts/poppins-v21-latin-600.svg#Poppins') format('svg'); 
}

/* ### --- SOME GLOBAL STYLES --- ### */
::-moz-selection {
    color: #fff;
	background: var(--blue);
}
::-webkit-selection {
    color: #fff;
	background: var(--blue);
}
::selection {
    color: #fff;
	background: var(--blue);
}

body {
    font-size: 1rem;
    margin: 0px;
    font-family: 'Poppins';
    font-weight: 300;
    /*background-color: var(--blue);*/
    padding: 0px;
    overflow-x: hidden;
}
html, body {
    overflow-x: hidden;
}
h1 , h2 , h3 , h4 , h5 , h6{
    margin: 0;
    padding: 0px;
}
h2,
#content h1 {
    font-size: 2.75rem;
}
h3 {
  font-size: 2rem;
}
p {
  font-size: 1.313rem;
  margin-bottom: 0;
  font-weight: 300;
  line-height: 1.49;
}
img{
    max-width: 100%;
}

b, strong {
    font-weight: 600;
}

a {
	color: var(--blue);
	text-decoration: none;
}

p a,
#content li a {
	text-decoration: underline !important;
}

a , a:hover , a:focus , a:visited , button , input , textarea , img{
    text-decoration: none !important;
    outline: none !important;
}

p a:hover,
#content li a:hover {
	text-decoration: none !important;
}

p:not(:last-child) {
	margin-bottom: 1rem;
}
address {
    margin: 0;
}
textarea{
    height: 10.363rem;
    resize: none;
    margin-top: 1.25rem;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
}
::-webkit-input-placeholder{
    opacity: 1 !important;
}
::-moz-placeholder{
    opacity: 1 !important;
}
:-ms-input-placeholder{ 
    opacity: 1 !important;
}
:-moz-placeholder{
    opacity: 1 !important;
}
section{
    position: relative;
    clear: both;
}
section:before , section:after{
    clear: both;
    display: table;
    content: "";
}

.container.container-fluid {
	width: 100%;
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}

.frame-type-ce_container.frame-layout-0 {
	background: #fff;
}

.frame-type-ce_container.frame-layout-1 {
	background: #8c7346;
}

.frame-type-ce_container.frame-layout-2 {
	background: var(--blue);
}

.frame-type-ce_container.frame-layout-3 {
  background-color: var(--grey);
  background-image: url(../images/about_bg.png);
}

.frame-type-ce_container.frame-layout-4 {
  background-color: var(--gold);
}

.frame-type-ce_container.frame-layout-5 {
  background-color: #fafafa;
}

.frame-type-ce_container.frame-layout-0 h2,
.frame-type-ce_container.frame-layout-4 h2,
#content .frame-type-ce_container.frame-layout-0  h1,
#content .frame-type-ce_container.frame-layout-4  h1,
#content h1 {
	color: var(--blue);
}

.frame-type-ce_container.frame-layout-4 .title_bar h2{
	color: #fff;
}

.frame-type-ce_container.frame-layout-1 h2,
.frame-type-ce_container.frame-layout-2 h2,
.frame-type-ce_container.frame-layout-1 #content h1,
.frame-type-ce_container.frame-layout-2 #content h1, 
.frame-type-ce_container.frame-layout-1 p,
.frame-type-ce_container.frame-layout-1 p a,
.frame-type-ce_container.frame-layout-2 p,
.frame-type-ce_container.frame-layout-2 p a,
.frame-type-ce_container.frame-layout-1 li,
.frame-type-ce_container.frame-layout-2 li {
   color: #fff;
}

.frame-type-ce_container.frame-layout-3 h2,
.frame-type-ce_container.frame-layout-3 #content h1 {
  color: var(--gold);
}

h1, h2, h3 {
	font-weight: 300;
	color: var(--blue);
	margin-bottom: 1.5rem;
}

h4 {
	font-weight: 300;
	color: var(--blue);
	margin-bottom: 1rem;
}

section {
	padding: 9.375rem 0;
}

/* ### --- PRELOADER --- ### */

#preloader {
	/*display: none;*/
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: var(--blue);
	-webkit-transition: transform 1500ms ease 2000ms;
	transition: transform 1500ms ease 2000ms;
	z-index: 9999;
}

#preloader.loaded {
	-webkit-transform: scale(3);
	transform: scale(3);
}

.preload-logo {
    position: absolute;
	width: 6rem;
	height: auto;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	margin-left: auto;
	margin-right: auto;
}

.preload-logo .init {
	position: relative;
	-webkit-transition: transform 400ms ease 0ms;
	transition: transform 400ms ease 0ms;
}

.preload-logo .init img,
.preload-logo .init svg {
	width: 6rem !important;
	height: auto;
	-webkit-filter: blur(2rem);
	filter: blur(2rem);
	opacity: 0;
	-webkit-transition: filter 800ms ease 0ms, opacity 800ms ease 0ms;
	transition: filter 800ms ease 0ms, opacity 800ms ease 0ms;
}

.preload-logo img,
.preload-logo svg {
	width: 6rem !important;
	height: auto;
}

#preloader.loaded .preload-logo .init img,
#preloader.loaded .preload-logo .init svg {
	width: 6rem !important;
	-webkit-filter: blur(0);
	filter: blur(0);
	opacity: 1;
}

.preload-logo .img-loaded {
    position: absolute;
	width: 0;
	height: 100%;
	top: 0;
	left: 0;
	-webkit-transition: width 500ms ease 1000ms;
	transition: width 500ms ease 1000ms;
	overflow: hidden;
	z-index: 1;
}

#preloader.loaded .preload-logo .img-loaded {
	width: 100%;
	width: 6rem !important;
}

#loader-wrap {
    position: absolute;
    right: 0;
	bottom: auto;
    left: 0;
	margin: 0 auto;
	top: 50%;
	transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 15.625rem;
    height: 3rem;
}

.loader-spinner {
	width: 3.5rem;
	height: 3.5rem;
    border-radius: 50%;
    position: relative;
    animation: rotate 1s linear infinite
}
.loader-spinner::before , .loader-spinner::after {
	content: "";
	box-sizing: border-box;
	position: absolute;
	inset: 0px;
	border-radius: 50%;
	border: 2px solid  var(--gold);
	animation: prixClipFix 2s linear infinite ;
}
.loader-spinner::after{
	border-color: var(--gold);
	animation: prixClipFix 2s linear infinite , rotate 0.5s linear infinite reverse;
	inset: 6px;
}

@keyframes rotate {
	0%   {transform: rotate(0deg)}
	100%   {transform: rotate(360deg)}
}

@keyframes prixClipFix {
	0%   {clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}
	25%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}
	50%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}
	75%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}
	100% {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}
}



/*MOBILE HAMBURGER */
.hamburger-menu{
  display: flex;
  width: auto;
  position: relative;
  z-index: 999999;
  -webkit-transition: 0.5s ease;
  transition: 0.5s ease;
  display: none;
}
.hamburger-menu a{
  display: inline-block;
  width: 40px;
  height: 35px;
}
.burger {
  height: 3em;
  width: 34px;
  position: relative;
  font-size: 0.75rem;
  cursor: pointer;
  -webkit-transition: 0.5s ease;
  transition: 0.5s ease;
  -webkit-tap-highlight-color: transparent;
}
.burger::after {
  content: "";
  display: block;
  position: absolute;
  height: 150%;
  width: 150%;
  top: -25%;
  left: -25%;
}
.burger.burger-squeeze .burger-lines::after, .burger.burger-squeeze .burger-lines::before {
  width: 2em;
}
.burger .burger-lines::after {
  left: 0;
  top: -0.8em;
}
.burger .burger-lines::before {
  left: 0em;
  top: 0.8em;
}
.burger.burger-squeeze .burger-lines, .burger.burger-squeeze .burger-lines::after, .burger.burger-squeeze .burger-lines::before {
  transition: top .2s .2s,left .1s,transform .2s,background-color .4s .2s;
}
.burger .burger-lines, .burger .burger-lines::after, .burger .burger-lines::before {
  pointer-events: none;
  display: block;
  content: "";
  width: 100%;
  border-radius: .25em;
  background-color: var(--white);
  height: .25em;
  position: absolute;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}
.hamburger-menu-on.active .burger .burger-lines, .hamburger-menu-on.active .burger .burger-lines::after, .hamburger-menu-on.active .burger .burger-lines::before{
  background: rgba(255, 255, 255, 0.3);
}
.hamburger-menu.hamburger-menu-on.active {
  position: relative;
  margin-left: 0.938rem;
  -webkit-transition: 0.5s ease;
  transition: 0.5s ease;
}
.close-humb .burger .burger-lines, .close-humb .burger .burger-lines::after, .close-humb .burger .burger-lines::before{
  background: var(--white);
}
.burger .burger-lines {
  top: 50%;
  margin-top: -.125em;
  width: 2.5em;
}
.burger.burger-squeeze .burger-lines::after, .burger.burger-squeeze .burger-lines::before {
  width: 34px;
  left: -.3em;
}
.burger.burger-squeeze.open .burger-lines::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.burger.burger-squeeze.open .burger-lines::after, .burger.burger-squeeze.open .burger-lines::before {
  left: 0;
  top: 0;
}
.burger.burger-squeeze.open .burger-lines, .burger.burger-squeeze.open .burger-lines::after, .burger.burger-squeeze.open .burger-lines::before {
  transition: background-color .2s,top .2s,left .2s,transform .2s .15s;
}
.burger.burger-squeeze.open .burger-lines::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.burger.burger-squeeze.open .burger-lines {
  background-color: initial;
}

.header_wrapper {
  padding: 1.563rem 0;
  background-image: url(../images/header_particals.png);
  background-repeat: no-repeat;
  background-position: top;
  background-color: var(--blue);
}
.heare_inner {
  display: flex !important; 
  justify-content: space-between;
  justify-content: center; /* bei vollständigem Livegang entfernen*/
  padding: 0 2.938rem 0 9.5rem;
}
.header_logo img {
  width: 197px;
  height: 150px;
  object-fit: contain;
}
.header_menu {
  padding-top: 2.625rem;
}
.header_menu ul {
    border-bottom: 2px solid #ddd;
    padding-left: 0;
    list-style: none;
    margin-bottom: 0;
}
.header_menu > ul > li {
    display: inline-block;
    padding-left: 2rem;
    padding-bottom: 1rem;
}
.header_menu li:first-child {
    padding-left: 0;
}
.header_menu li a {
  font-size: 1.5rem;
  font-weight: 400;
  position: relative;
  text-transform: uppercase;
  color: var(--white);
  transition: color 0.4s;
  letter-spacing: 0.038rem;
  text-decoration: none !important;
}
.header_menu > ul > li > a::before {
  content: "";
  width: 0;
  height: 5px;
  background: var(--gold);
  background: linear-gradient(90deg,var(--gold) 0%, var(--white) 100%);
  position: absolute;
  bottom: -19px;
  left: 0;
  transition: width 0.4s;
}
.header_menu li .active:before, .header_menu li a:hover::before {
    width: 100%;
}
.header_menu li .active, .header_menu li a:hover {
  color: var(--gold);
}

/* Submenu */
.header_menu ul li ul.dropdown {
  display: none;
  position: absolute;
  top: 100%; 
  left: 1rem;
  padding: .5rem 1rem;
  min-width: 200px;
  background: var(--gold);
  background: linear-gradient(90deg, var(--gold) 0%, var(--yellow) 100%);
  border: 0;
  z-index: 1000;
}

/* Submenu-Elemente */
.header_menu ul li ul.dropdown li {
  display: block;
  padding: 0;
}

.header_menu ul li ul.dropdown li a {
  display: block;	
  color: var(--blue);
  font-weight: 400;
  padding: .25rem 0;
}

.header_menu ul li ul.dropdown li a:hover,
.header_menu ul li ul.dropdown li a:focus,
.header_menu ul li ul.dropdown li a:active,
.header_menu ul li ul.dropdown li.active a {
  color: #fff;
}

.banner_img {
  position: relative;
}
.banner_img picture {
	display: block;
}

.banner_img picture > img,
.banner_img video {
  width: 100%;
  height: calc(100vh - 200px);
  /*height: 908px;*/
  object-fit: cover;
}
.banner_content {
  position: absolute;
  top: 100px;
  top: 50%;
  transform: translateY(-50%);
  right: 60px;
  width: 870px;
  background-color: rgba(255,255,255,0.9);
  padding: 2.688rem 2.813rem 2.5rem 2.375rem;
}
.banner_content h1,
.hero-content h1 {
  font-size: 3.313rem;
  line-height: 1.32;
  font-weight: 300;
  color: var(--blue);
  letter-spacing: 0.033rem;
  margin-bottom: 2.125rem;
}
.banner_content h2 {
  font-size: 2.25rem;
  line-height: 1.2;
  margin-bottom: 1rem;
}
.banner_content h2 {
	color: var(--blue);
}
.banner_content p {
  color: var(--grey);
  letter-spacing: 0.026rem;
  margin-bottom: 0.875rem;
}
.banner_content b {
  font-weight: 500;
}
.banner_content .btn_style {
  margin-top: 1.063rem;
}

.btn_style,
.btn-primary {
  display: inline-flex;
  min-width: 360px;
  border-radius: 0 !important;
  padding: 0 1rem;
  height: 60px;
  align-items: center;
  justify-content: center;
  font-size: 1.188rem;
  font-weight: 400;
  color: var(--grey) !important;
  text-transform: uppercase;
  letter-spacing: 0.03rem;
  background: var(--gold);
  background: linear-gradient(90deg,var(--gold) 0%, var(--yellow) 100%);
}
.btn_style:hover, .icon:hover, .scroll_down:hover {
    background: transparent;
    background-color: var(--gold);
}

.btn_style.btn_blue {
	color: var(--white) !important;
	background: var(--blue);
}

.btn_style.btn_blue:hover,
.btn_style.btn_blue:focus,
.btn_style.btn_blue:active {
	background: var(--grey);
}

.btn-primary {
	border: 0 !important; 
  color: var(--grey) !important;
}

.btn_style.outline {
	min-width: initial;
	color: var(--blue);
	background: transparent;
	border: 1px solid var(--blue);
	padding-left: 1rem;
	padding-right: 1rem;
}

.btn_style.outline:hover,
.btn_style.outline:active,
.btn_style.outline.active {
	color: #fff !important;
	background: var(--blue) !important;
}

.btn_style.outline:hover svg,
.btn_style.outline:active svg,
.btn_style.outline.active  svg{
	-ms-fill: #fff
	fill: #fff
}

.btn_style svg {
  width: 18px;
  margin-left: 0.438rem;
}
.scroll_down {
  display: inline-flex;
  justify-content: center;
    align-items: center;
  width: 80px;
  height: 80px;
  position: absolute;
  bottom: 10px;
  animation: bounce 2s infinite ease-in-out;
  left: 0;
  right: 0;
  font-size: 0;
  margin: 0 auto;
  background: var(--gold);
  background: linear-gradient(135deg,var(--gold) 0%, var(--yellow) 100%);
  text-align: center;
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.40);
}
.scroll_down svg {
  width: 26px;
  height: 38px;
}
@keyframes bounce {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, -15px);
  }
}
.float_btns {
    display: flex;
    position: fixed;
    z-index: 1000;
    top: 50%;
	transform: translateY(-50%);
    align-items: flex-start;
    right: 0px;
    transition: right 0.4s;
}
.float_btns {
    right: -340px;
}
.float_btns.open {
  right: 0;
}
.icon {
  width: 60px;
  height: 107px;
  cursor: pointer;
  text-align: center;
  line-height: 50px;
  align-items: center;
  background: var(--gold);
  background: linear-gradient(135deg,var(--gold) 0%, var(--yellow) 100%);
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.40);
}
.icon img {
    width: 30px;
    margin: 0 auto;
    height: 30px;
    object-fit: contain;
}
.icon span:nth-child(1) {
  border-bottom: 1px solid #000;
  display: inline-block;
}
.mini-panel {
    background: var(--white);
    z-index: 999;
    padding: 0.606rem 0.938rem;
    border-radius: 0;
    width: 340px;
}
.mini-panel p {
    font-size: 1rem;
    margin-bottom: 5px;
    color: var(--grey);
}
.mini-panel p a {
  color: var(--grey);
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

.service_wrapper {
  border-bottom: 1px solid var(--white);
}
.service_wrapper .title_bar {
  background-color: #8c7346;
	padding-top: 6.25rem;
  padding-bottom: 7.625rem;
}
.title_bar {
  position: relative;
  padding-top: 9.375rem;
  padding-top: 0;
}

.title_bar + .frame-space-before-extra-large,
.title_bar + .frame-space-before-large {
	margin-bottom: 8rem;
}

.container:not(.container-fluid) .title_bar .container {
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}

.hr_line {
  margin-top: 0;
  background-color: var(--white);
  opacity: 1;
  width: 185px;
  height: 3px;
  border: none;
  margin-left: -10.188rem;
  margin-bottom: 1.875rem;
}
.title_bar h2,
h2 {
  font-size: 2.75rem;
  font-weight: 300;
  letter-spacing: 0.028rem;
}
.title_bar h2 {
  color: var(--white);
}
.service_cnt {
  border-left: 1px solid var(--white);
  padding-left: 1.625rem;
}
.service_slider {
  padding: 0 0 0 0.75rem;
  margin-top: -3.438rem;
}
.owl-item:nth-child(1) .service_cnt {
    border: none;
}
.service_box {
  padding-bottom: 4.688rem;
  position: relative;
}
.service_box::before {
  content: "";
  width: 0;
  height: 10px;
  background: var(--gold);
  transition: width 0.4s;
  background: linear-gradient(90deg,var(--gold) 0%, var(--white) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}
.service_box:hover::before {
    width: 100%;
}
.service_box span img {
  width: 253px !important;
  height: 226px;
  object-fit: contain;
  margin: 0 auto;
}
.service_box > a,
.service_box .img-wrap {
	overflow: hidden;
}

.service_box  .service_cnt > span {
	display: block;
	font-size: 1.25rem;
	fonte-weight: 300;
	text-transform: uppercase;
	color: var(--white);
	margin: 1rem auto;
}

.service_box  .service_cnt > span + svg {
	display: none;
}

.service_box span img.teaser-img {
  width: 100% !important;
  height: auto;
  object-fit: unset;
  margin: 0 auto;
  transition: all 1.2s ease 0ms;
}
.service_box:hover span img.teaser-img {
  transform: scale(1.2);
}
.service_box a {
  display: block;
  font-size: 1.5rem;
  color: var(--white);
  text-transform: uppercase;
  letter-spacing: 0.038rem;
  font-weight: 400;
  margin-top: 3.125rem;
  margin-bottom: 1.063rem;
}
.service_box a:hover {
    color: var(--gold);
}
.service_box a svg,
.service_box .service_cnt svg {
  width: 18px;
  margin-left: 0.375rem;
  margin-top: -0.25rem;
}
.service_box a:hover path {
    fill: var(--gold) !important;
}
.service_box li {
  font-size: 1.125rem;
  line-height: 1.39;
  color: var(--white);
  letter-spacing: 0.023rem;
  position: relative;
  padding-left: 1.25rem;
  margin-bottom: 0.75rem;
}
.service_box li:last-child {
    margin-bottom: 0;
}
.service_box li::before {
  content: "";
  width: 10px;
  height: 10px;
  position: absolute;
  border: 1px solid var(--white);
  border-radius: 20px;
  top: 8px;
  left: 0;
}
.service_cnt ul {
    padding-left: 0;
    list-style: none;
    margin-bottom: 0;
}

.about_wrapper {
  background-color: var(--grey);
  background-image: url(../images/about_bg.png);
  padding-bottom: 8.125rem;
}
.about_desp {
  padding-top: 18.75rem;
  padding-top: 7.75rem;
  padding-left: 0.875rem;
}
.about_desp p {
  color: var(--white);
  letter-spacing: 0.026rem;
  margin-bottom: 0.75rem;
}
.about_desp p strong {
  font-weight: 500;
}
.about_desp p b,
.about_desp p em,
.about_desp p i {
  font-weight: 500;
  color: var(--gold);
  font-style: normal !important;
}
.about_desp p a {
    color: var(--gold);
}
.about_desp p a:hover {
    color: var(--white);
}
.about_desp p a:hover path {
    fill: var(--white);
}
.about_desp p a:hover span {
    border-color: var(--white);
}
.about_desp p a svg {
    width: 18px;
}
.about_desp p a span {
  display: inline-block;
  border-bottom: 1px solid var(--gold);
}
.about_desp p:last-child {
  margin-top: 1.75rem;
}


.industry_wrapper {
  background-color: var(--gold);
  background-image: url(../images/industry_bg.png);
  background-position: center 0px;
  padding-bottom: 6.563rem;
}
.title_bar.blue hr {
  background-color: var(--blue);
}
.title_bar.blue h2 {
    color: var(--blue) !important;
}
.title_bar .hide {
  opacity: 0;
}
.indus_products {
  display: flex;
  flex-wrap: wrap;
  padding-top: 4.063rem;
}

.indus_box_big,
.indus_box_small {
	width: 50%;
}
.indus_products a {
  position: relative;
  font-size: 1.5rem;
  color: var(--blue);
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: 0.038rem;
  display: block;
  z-index: 2;
}

.indus_products a span {
	display: inline-block;
	padding-top: 2rem;
}

.indus_products a:hover {
    color: var(--grey);
}
.indus_products a:hover path {
    fill: var(--grey);
}
.indus_products a svg {
  margin-left: 0.188rem;
  margin-top: -0.313rem;
}
.indus_box_big {
  padding-right: 3.75rem;
  padding-top: 3.625rem;
  position: relative;
  z-index: 9;
}
.indus_box_big .indus_box_inr > a > img {
  width: 341px;
}

.indus_box_inr > a > img {
	transition: transform .4s ease 0ms;
}

.indus_box_inr > a:hover > img {
	transform: scale(1.05);
}

.indus_box_small .indus_box_inr {
  padding-bottom: 1.688rem;
  position: relative;
  z-index: 9;
}
.indus_box_big .indus_box_inr {
    position: relative;
    z-index: 9;
    padding-bottom: 1.875rem;
}
.indus_box_small .indus_box_inr > img {
  width: 278px;
  height: 247px;
  object-fit: contain;
}
.certifcate_block {
  padding-top: 3.875rem;
}
.certifcate_block p {
  color: var(--grey);
  letter-spacing: 0.013rem;
  margin-bottom: 0.875rem;
}
.certifcate_block p b {
  font-weight: 500;
}
.certifcate_block ul {
    padding-top: 2.5rem;
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
}
.certifcate_block li {
  display: inline-block;
  padding-right: 3.25rem;
  width: calc(33.33% - 3px);
  padding-bottom: 2.875rem;
}


.footer_wrapper {
  background-color: var(--grey);
  padding-top: 8rem;
  padding-bottom: 2rem;
}
.footer_logo img {
  width: 197px;
}
.footer_dtls ul {
    padding-left: 0;
    list-style: none;
    margin-bottom: 0;
}
.footer_top a, .footer_bot h2 {
  font-size: 1.188rem;
  color: var(--white);
  font-weight: 400;
  letter-spacing: 0.03rem;
  text-transform: uppercase;
}
.footer_top a:hover, .footer_left a:hover {
    color: var(--gold);
}
.footer_top {
    text-align: right;
    border-bottom: 1px solid var(--white);
    padding-bottom: 0.75rem;
    margin-bottom: 0;
    padding-left: 0;
}
.footer_top li, .footer_right li {
  display: inline-block;
}
.footer_right li {
  padding-right: 0.938rem;
}
.footer_right li img {
  width: 32px;
}
.footer_right li img:hover {
    opacity: 0.8;
}
.footer_dtls {
  margin-left: -3.531rem;
  padding-top: 0.938rem;
}
.footer_inr {
  display: flex;
}
.footer_bot {
  display: flex;
  justify-content: space-between;
  padding-top: 2.188rem;
}
.footer_inr address, .footer_inr li, .footer_inr li a {
  font-size: 1.125rem;
  line-height: 1.736;
  color: var(--white);
  letter-spacing: 0.011rem;
}
.footer_inr li b {
  font-weight: 500;
}
.footer_copy {
  display: flex;
  align-items: center;
  padding-top: 4.875rem;
}
.footer_copy p {
  font-size: 0.938rem;
  color: var(--white);
  letter-spacing: 0.009rem;
  padding-right: 2.375rem;
}
.footer_left h2 {
  margin-bottom: 1rem;
}
.footer_right h2 {
  margin-bottom: 1.563rem;
}
.footer_inr address {
  padding-right: 3.75rem;
}
.footer_top li {
  padding-left: 2.188rem;
}
.mail {
  text-decoration: underline !important;
  text-underline-offset: 5px;
}

.about_feas {
  float: left;
  width: 100%;
}
.title_bar .col-12.col-md-6,
.about_feas .col-12.col-md-6 {
  width: 45%;
  float: left;
  margin: 60px 0px 0px 0px;
  margin-right: auto;
}
.title_bar .col-12.col-md-6:nth-child(odd),
.about_feas .col-12.col-md-6:nth-child(odd){
  margin-right: 8%;
}
.title_bar h3,
.about_feas h3 {
  font-weight: 300;
  color: var(--gold);
  font-size: 4rem;
  margin-bottom: 0;
}
.title_bar span,
.about_feas span {
  color: #fff;
  font-size: 1.5rem;
  margin-top: 10px;
  float: left;
}

/* JPI */
.teaser-box,
.teaser-box + .teaser-box + .teaser-box {
  background: #fafafa;
}

.teaser-box + .teaser-box {
	background: var(--gold);
}

.teaser-box + .teaser-box + .teaser-box + .teaser-box {
	background: var(--blue);
}

.teaser-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bg-blue {
	background: var(--blue) !important;
}

.bg-blue h2,
.bg-blue h3,
.bg-blue h4,
.bg-blue p,
.bg-blue p a,
.bg-blue li {
	color: #fff !important;
}

.teaser-content {
	background: #fff;
	padding: 3rem;
}

.teaser-content h2 {
  color: var(--blue); 
  margin-bottom: 2rem;
}

.teaser-content p {
  margin-bottom: 1.5rem;
}

.teaser-text {
	flex-wrap: wrap;
	flex-direction: row;
}

.teaser-text > *{
	width: 100%;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
}

.teaser-text .teaser-indent {
	padding-left: 2rem;
}

.frame-type-text ol,
.teaser-text ol {
  list-style: none;
  padding: 0;
}

.frame-type-text ol li,
.teaser-text ol li {
  position: relative;
  padding-left: 2rem; /* Platz für das Icon */
  margin-bottom: 0.5rem;
}

.frame-type-text ol li::before,
.teaser-text ol li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1.5rem;
  height: 1.5rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23d3bc73' class='bi bi-check2-circle' viewBox='0 0 16 16'%3E%3Cpath d='M2.5 8a5.5 5.5 0 0 1 8.25-4.764.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0 5.5 5.5 0 1 1-11 0'/%3E%3Cpath d='M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293 5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0z'/%3E%3C/svg%3E");
  background-size: 1.5rem 1.5rem;
  color: #d3bc73;
}

.testimonial-slider {
  padding: 3rem 4rem;
  background: #fff;
  position: relative;
  max-width: 800px;
  margin: 0 auto;
  overflow: hidden;
}

.testimonial-slider .owl-stage,
.logo-slider .owl-stage {
	display: flex;
}

.testimonial-slider .owl-nav {
	display: none;
}

.testimonial-slider .owl-item {
	opacity: 0;
}

.testimonial-slider .owl-item.active {
	opacity: 1;
}

.testimonial-slider .single-slide .owl-dots {
	display: none;
}

.testimonial-slider .owl-dots {
	text-align: center;
	margin-top: 1rem;
	margin-bottom: -1rem;
}

.testimonial-slider .owl-dots button {
	width: .5rem;
	height: .5rem;
	border: 0;
	border-radius: 100%; 
	background: var(--blue);
	margin-right: .5rem;
	padding: 0;
}

.testimonial-slider .owl-dots button.active {
	background: var(--gold);
}
.testimonial-text:before {
    position: absolute;
	top: -1.5rem;
	left: -3rem;
	content: "";
	width: 5rem;
	height: 5rem;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-quote' viewBox='0 0 16 16'%3E%3Cpath d='M12 12a1 1 0 0 0 1-1V8.558a1 1 0 0 0-1-1h-1.388q0-.527.062-1.054.093-.558.31-.992t.559-.683q.34-.279.868-.279V3q-.868 0-1.52.372a3.3 3.3 0 0 0-1.085.992 4.9 4.9 0 0 0-.62 1.458A7.7 7.7 0 0 0 9 7.558V11a1 1 0 0 0 1 1zm-6 0a1 1 0 0 0 1-1V8.558a1 1 0 0 0-1-1H4.612q0-.527.062-1.054.094-.558.31-.992.217-.434.559-.683.34-.279.868-.279V3q-.868 0-1.52.372a3.3 3.3 0 0 0-1.085.992 4.9 4.9 0 0 0-.62 1.458A7.7 7.7 0 0 0 3 7.558V11a1 1 0 0 0 1 1z'/%3E%3C/svg%3E")no-repeat center;
	background-size: 5rem;
	opacity: .1;
	z-index: 0;
}
.testimonial p {
  position: relative;
  font-size: 1.375rem;
  color: var(--grey) !important;
  font-style: italic;
  margin-bottom: 1rem;
  z-index: 2;
}

.logo-slider {
	margin: 2rem auto;
}

.logo-slider .owl-stage-outer {
	overflow: visible;
}



.logo-slider .owl-item {
	background: #ffffff;
    padding: 2rem;
	text-align: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    position: relative;
}

.logo-slider .owl-nav {
	display:flex;
	gap: .125rem;
	justify-content: flex-end;
	margin-top: 1rem;
}

.logo-slider .owl-nav button.owl-prev,
.logo-slider .owl-nav button.owl-next {
  width: 3rem;
  height: 3rem;
  font-size: 0;
  background-color: rgba(255,255,255,.3);
  display: flex !important;
  align-items: center;
  border: 0;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
}

.logo-slider .owl-nav button.owl-prev:hover,
.logo-slider .owl-nav button.owl-next:hover {
  background-color: #ffff !important;
}

.logo-slider .owl-nav button.owl-prev {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-arrow-left' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.5rem;
}

.logo-slider .owl-nav button.owl-next {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-arrow-right' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.5rem;
}


.author {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: .75rem;
}

.author strong {
	color: var(--gold);
}

.author-img img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
}

.controls {
  margin-top: 1rem;
}

.controls button {
  background: #0c2c4a;
  color: #fff;
  border: none;
  padding: .5rem 1rem;
  border-radius: .5rem;
  cursor: pointer;
}

/* Benefits Teaser */
.vorteile {
  background: #0c2c4a;
  color: #fff;
  padding: 2rem;
  border-radius: 1rem;
  text-align: center;
}

.vorteile-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.vorteil {
  background: #123b60;
  padding: 1.5rem;
  border-radius: .75rem;
}

.vorteil .icon {
  font-size: 2rem;
  color: #d4af37;
  display: block;
  margin-bottom: .75rem;
}

/* Related Teaser */

.related-teaser {
  position: relative;
  display: block;
  aspect-ratio: 16/9; 
  background-size: cover;
  background-position: center center;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform 0.28s ease, box-shadow 0.28s ease;
  overflow: hidden;
}

.related-teaser img {
	transition: all 1.5s ease 0ms;
}

.related-teaser:hover img {
	transform: scale(1.1);
}

.related-teaser .overlay {
  position: absolute;
  width: 100%;
  height: 40%;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: flex-end;
  padding: 2.5rem 2rem;
  background: rgba(16, 64, 97, 0);
  background: -webkit-linear-gradient(180deg, rgba(16, 64, 97, 0) 0%, rgba(16, 64, 97, 1) 100%);
  background: -moz-linear-gradient(180deg, rgba(16, 64, 97, 0) 0%, rgba(16, 64, 97, 1) 100%);
  background: linear-gradient(180deg, rgba(16, 64, 97, 0) 0%, rgba(16, 64, 97, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#10406100", endColorstr="#104061", GradientType=0);
  transition: all 0.4s ease 0ms;
}

.related-teaser .overlay:before {
    position: absolute;
	width: 3rem;
	height: 3rem;
	right: 2rem;
	bottom: 2rem;
	content: " ";
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffffff' class='bi bi-arrow-up-right' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M14 2.5a.5.5 0 0 0-.5-.5h-6a.5.5 0 0 0 0 1h4.793L2.146 13.146a.5.5 0 0 0 .708.708L13 3.707V8.5a.5.5 0 0 0 1 0z'/%3E%3C/svg%3E")no-repeat center var(--gold);
	background-size: 1.5rem;
}

.related-teaser .overlay:hover:before {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffffff' class='bi bi-arrow-up-right' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M14 2.5a.5.5 0 0 0-.5-.5h-6a.5.5 0 0 0 0 1h4.793L2.146 13.146a.5.5 0 0 0 .708.708L13 3.707V8.5a.5.5 0 0 0 1 0z'/%3E%3C/svg%3E")no-repeat center var(--blue);
	background-size: 1.5rem;
}

.related-teaser:hover .overlay {
  height: 100%;
}

.related-teaser .content {
  display: flex;
  align-items: center;
  gap: 1rem;
  justify-content: center;
  text-align: center;
  white-space: nowrap;
}

.related-teaser .teaser-title {
	position: relative;
    font-size: 1.75rem;
    color: #fff;
    letter-spacing: 0.2px;
    margin: 0;
    font-weight: 300;
    transition: all .4s ease 0ms;
}

.related-teaser:hover .teaser-title {
	padding-bottom: 1rem;
}

.related-teaser .teaser-title:after {
	position: absolute;
	display: block;
	content: "";
	width: 0;
	height: .25rem;
	left: 0;
	bottom: 0;
    background: var(--gold);
    background: linear-gradient(90deg, var(--gold) 0%, var(--white) 100%);
    transition: all .4s ease 0ms;
}

.related-teaser:hover .teaser-title:after {
	width: 100%;
}

.related-teaser .icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #d4af37; /* Gold */
  transition: transform 0.22s ease;
}

.related-teaser:hover .icon,
.related-teaser:focus .icon {
  transform: translateX(6px);
}

.related-teaser:focus {
  box-shadow: 0 0 0 4px rgba(212,175,55,0.12), 0 10px 25px rgba(2,10,20,0.35);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* Accordion */
.custom-accordion {
	margin-bottom: 4rem;
}

.custom-accordion .accordion-item {
  border: none;
  border-top: 1px solid var(--blue);
  margin-bottom: 0;
  border-radius: 0; 
  box-shadow: none;
  background: transparent;
}

.custom-accordion .accordion-item:last-child {
  border-bottom: 1px solid var(--blue);
}

.frame-type-ce_container.frame-layout-1 .custom-accordion .accordion-item,
.frame-type-ce_container.frame-layout-2 .custom-accordion .accordion-item,
.frame-type-ce_container.frame-layout-3 .custom-accordion .accordion-item {
  border-top: 1px solid #fff;
}

.frame-type-ce_container.frame-layout-1 .custom-accordion .accordion-item:last-child,
.frame-type-ce_container.frame-layout-2 .custom-accordion .accordion-item:last-child,
.frame-type-ce_container.frame-layout-3 .custom-accordion .accordion-item:last-child {
  border-bottom: 1px solid #fff;
}

.custom-accordion .accordion-button {
  background-color: #fff;
  color: var(--blue);
  font-weight: 400;
  font-size: 1.1rem;
  padding: 1.5rem;
  border: none;
  border-radius: 0;
  box-shadow: none;
  transition: background-color 0.25s ease, color 0.25s ease;
}

.frame-type-ce_container.frame-layout-1 .custom-accordion .accordion-button,
.frame-type-ce_container.frame-layout-2 .custom-accordion .accordion-button,
.frame-type-ce_container.frame-layout-3 .custom-accordion .accordion-button {
  background-color: transparent;
  color: #fff;
}

.custom-accordion .accordion-button span {
	padding-right: 1.25rem;
}

.custom-accordion .accordion-button:hover,
.custom-accordion .accordion-button:focus {
  color: var(--gold);
  outline: none;
  box-shadow: none;
}

.custom-accordion .accordion-button::after {
  flex-shrink: 0;
  margin-left: auto;
  background-image: none; 
  width: 16px;
  height: 16px;
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23104061' class='bi bi-plus-lg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8 2a.5.5 0 0 1 .5.5v5h5a.5.5 0 0 1 0 1h-5v5a.5.5 0 0 1-1 0v-5h-5a.5.5 0 0 1 0-1h5v-5A.5.5 0 0 1 8 2'/%3E%3C/svg%3E");
  transform: rotate(0deg) scale(1.5);
  transition: transform 0.3s ease;
}

.frame-type-ce_container.frame-layout-1 .custom-accordion .accordion-button::after,
.frame-type-ce_container.frame-layout-2 .custom-accordion .accordion-button::after,
.frame-type-ce_container.frame-layout-3 .custom-accordion .accordion-button::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffffff' class='bi bi-plus-lg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8 2a.5.5 0 0 1 .5.5v5h5a.5.5 0 0 1 0 1h-5v5a.5.5 0 0 1-1 0v-5h-5a.5.5 0 0 1 0-1h5v-5A.5.5 0 0 1 8 2'/%3E%3C/svg%3E");
}

.custom-accordion .accordion-button:not(.collapsed)::after {
  transform: rotate(45deg) scale(1.5);
}

.custom-accordion .accordion-body {
  background-color: transparent;
  color: var(--grey);
  padding: 1.5rem;
  line-height: 1.5;
}

.frame-type-ce_container.frame-layout-1 .accordion-body,
.frame-type-ce_container.frame-layout-2 .accordion-body,
.frame-type-ce_container.frame-layout-3 .accordion-body {
  color: #fff;
}

.custom-accordion .accordion-body header {
	display: none;
}

.custom-accordion .accordion-collapse {
  transition: height 0.3s ease;
}

.breadcrumb-content {
	color: #fff;
	background: var(--gold);
	padding: 1rem 0;
}

.breadcrumb-content a, 
.breadcrumb-content li,
.breadcrumb-content li.active {
	color: var(--grey);
}

.breadcrumb-content a:hover {
	color: var(--blue);
}

nav[aria-label="breadcrumb"] {
    position: relative;
    width: 100%;
    overflow: hidden;
    height: auto;
	border-bottom: 1px solid var(--border-color);
}

.breadcrumb {
    direction: ltr;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    padding-right: 4rem;
    margin-bottom: 0;
    -webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.breadcrumb::-webkit-scrollbar {
  display: none;
}

/* Banner Subpage */
.hero-banner {
  position: relative;
  width: 100%;
  display: inline-block;
  overflow: hidden;
  margin-bottom: -.5rem;
}

.hero-banner .hero-image {
  display: block;
  width: 100%;
  height: 400px;
  object-fit: cover;
}

.hero-overlay {
  position: absolute;
  inset: 0; 
  /*background: rgba(12, 44, 74, 0.6); */
  display: flex;
  align-items: flex-end;   
  justify-content: flex-start; 
  padding: 4rem 2rem;
}

.hero-content h1 {
  position: relative;
  display: inline-block;
  max-width: 800px;
  color: var(--blue);
  font-size: 2.5rem;
  margin: 0;
  text-align: left;
  background-color: rgba(255, 255, 255, 0.9);
      padding: 1.25rem 1.563rem;
}

.hero-content h1::before {
    content: "";
    width: 100%;
    height: 5px;
    background: var(--gold);
    background: linear-gradient(90deg, var(--gold) 0%, var(--white) 100%);
    position: absolute;
    bottom: -5px;
    left: 0;
}

.logo-gallery .ce-gallery {
	width: 100%;
}

.logo-gallery .ce-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 3rem;
}

.logo-gallery .ce-row .ce-column {
	width: calc(33.3333% - 2rem);
	flex: 0 0 calc(33.3333% - 2rem);
	margin: 0;
}

.logo-gallery .ce-row .ce-column figure {
	display: block;
}

.logo-gallery .ce-row .ce-column img {
	width: 100%;
	height: auto;
}

.frame-type-text:not(:last-child) {
	margin-bottom: 2rem;
}

.certi_section {
	padding-top: 2rem;
}

.company-values {
	margin-top: 6rem;
}

.company-values .col {
	margin-bottom: 6rem;
}

.icon-box {
  position: relative; 	
  flex-direction: column;
  justify-content: flex-start;
  background-color: #ffffff;
  padding: 0rem 2rem 2rem;
  text-align: center;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  max-width: 630px;
  margin: 0 auto 2rem;
}

.icon-box p {
	color: var(--grey) !important;
}

.icon-box.alt-layout {
  padding: 2rem 2rem 4rem;
  margin-bottom: 2rem;
}

.icon-box.alt-layout.icon-left {
  position: relative; 	
  display: flex;
  flex-direction: row;
  align-items: center;
  text-align: left;
  gap: 1.75rem;
  padding: 2rem;
  background: #FFFFFF;
  background: -webkit-linear-gradient(142deg, rgba(255, 255, 255, 1) 60%, rgba(211, 188, 115, .2) 100%);
  background: -moz-linear-gradient(142deg, rgba(255, 255, 255, 1) 60%, rgba(211, 188, 115, .2) 100%);
  background: linear-gradient(142deg, rgba(255, 255, 255, 1) 60%, rgba(211, 188, 115, .2) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#D3BC73", GradientType=0);
}

.icon-wrapper {
  position: relative; 	
  width: 10rem;
  height: 10rem;
  background: var(--gold);
  background: linear-gradient(90deg, var(--gold) 0%, var(--white) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto -3.5rem auto;
  transform: translateY(-5rem);
  overflow: hidden; 
  outline: 2px solid var(--gold);
}

.alt-layout .icon-wrapper {
  margin: 0 auto 2rem auto;
  transform: none;
  background: #fff !important;
  border: .125rem solid var(--blue) !important;
  outline: 0 !important;
}

.alt-layout.icon-left .icon-wrapper {
  width: 5rem;
  -ms-flex: 0 0 5rem;
  flex: 0 0 5rem;
  height: 5rem;
  margin: 0;
  transform: none;
}

.alt-layout .btn_style {
	position: absolute;
	width: 100%;
	bottom: 0;
	left: 0;
	gap: .5rem;
}

.alt-layout .btn_style svg {
	width: 1.5rem;
	height: auto;
}

.frame-type-ce_container.frame-layout-0 .icon-wrapper {
  background-color: var(--gold);
  border: .375rem solid #fff;
}

.frame-type-ce_container.frame-layout-2 .icon-wrapper {
  background-color: var(--gold);
  border: .375rem solid var(--blue);
}

.icon-img {
  max-width: 55%;  
  max-height: 55%;
  object-fit: contain;
}

.icon-box-title {
  font-size: 1.75rem;
  font-size: 1.5rem;
  font-weight: 300;
  margin-bottom: 1rem;
  color: var(--blue);
}

.icon-box-text {
  color: var(--grey);
  line-height: 1.5;
}

.img-col .ce-gallery,
.img-col .ce-gallery .ce-column,
.img-col .ce-gallery figure {
	width:100%;
}

.img-col .ce-gallery img {
	width:100%;
	height:auto;
}

.img-popup {
  position: relative;
  display: block;
}

.img-popup:before {
  position: absolute;
  width: 2rem;
  height: 2rem;
  content: "";
  right: 1.25rem;
  bottom: 1.25rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffffff' class='bi bi-arrows-angle-expand' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M5.828 10.172a.5.5 0 0 0-.707 0l-4.096 4.096V11.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H4.5a.5.5 0 0 0 0-1H1.732l4.096-4.096a.5.5 0 0 0 0-.707m4.344-4.344a.5.5 0 0 0 .707 0l4.096-4.096V4.5a.5.5 0 1 0 1 0V.525a.5.5 0 0 0-.5-.5H11.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707'/%3E%3C/svg%3E")no-repeat center var(--gold);
  background-size: 1.25rem;
  transition: all .4s ease 0ms;
  transform: scale(1.05);
}

.img-popup:hover:before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffffff' class='bi bi-arrows-angle-expand' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M5.828 10.172a.5.5 0 0 0-.707 0l-4.096 4.096V11.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H4.5a.5.5 0 0 0 0-1H1.732l4.096-4.096a.5.5 0 0 0 0-.707m4.344-4.344a.5.5 0 0 0 .707 0l4.096-4.096V4.5a.5.5 0 1 0 1 0V.525a.5.5 0 0 0-.5-.5H11.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707'/%3E%3C/svg%3E")no-repeat center var(--blue);
   background-size: 1.25rem;
  transform: scale(1.2);
}

.mfp-bg {
    background: var(--gold);
	-webkit-backdrop-filter: blur(1rem);
	backdrop-filter: blur(1rem);
}

.cta-box {
  position: relative;
  overflow: hidden;
  color: #fff;
  text-align: center;
}

.cta-box img.img-fluid {
    position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
	transition: all 4s ease 0ms;
}

.cta-box:hover img {
  transform: scale(1.1);
}

.cta-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(7,41,65,.9) 20%, rgba(16,64,97,.5) 100%);
  z-index: 1;
}

.cta-content {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
  max-width: 600px;
  left: 0;
  right: 0;
  margin: 0 auto;
  padding: 4rem 2rem;
  z-index: 2;
}

.cta-content > * {
	width: 100%;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
}

.cta-content .btn_style {
	width: auto;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	margin-top: 1rem;
}

.cta-title {
  font-size: 2rem;
  color: var(--gold) !important;
  margin-bottom: 1rem;
}

.cta-text {
  font-size: 1.1rem;
  margin-bottom: 2rem;
  color: #e0e0e0;
}


/* NEWS */
.news {
	background: #fafafa;
}

.news .row.g-4 {
  align-items: stretch; 
}

.news-header {
	position: relative;
	gap: 2rem;
	z-index: 2;
}

.news-col {
  display: flex; 
}

.news-col > a {
  display: flex;
  flex-direction: column; 
  height: 100%;    
}

.news-item {
    flex: 1;
	background: #fff;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
	transition: all .6s ease 0ms;
}

.news-item:hover {
    box-shadow: 0 4px 8px rgba(0,0,0,0);
}

.news-teaser-img {
	overflow: hidden;
}

.news-teaser-img img {
	transition: all 2s ease 0ms;
}

.news-item:hover .news-teaser-img img {
	transform: scale(1.2);
}

.news-teaser-text {
	padding: 2rem 2rem 6rem;
}

.news .separator {
	display: inline-block;
	width: 1px;
	height: 1.5rem;
	background: var(--blue);
	margin: 0 .75rem;
	opacity: .25;
}

.news-teaser-text h2 {
	font-size: 1.75rem;
	margin-bottom: 1rem;
}

.news-item .more{
    position: absolute;
	width: 3rem;	
	height: 3rem;	
	display: flex;
	align-items: center;
	justify-content: center;
	right: 2rem;
	bottom: 2rem;
	background: var(--gold);
    background: linear-gradient(135deg, var(--gold) 0%, var(--yellow) 100%);
}

.news-item:hover .more{
	background: var(--blue);
}

.news-item .more svg {
	width: 1.5rem;
	height: auto;
}

.news-item:hover .more svg {
	-ms-fill: #fff;
	fill: #fff;
}

.outline.filter-btn svg {
	margin-left: 0;
}

.news-filter-list {
	display: none;
	min-width:140px;
	top: calc(100% + 1px);
	left: 0;
	color: #fff;
	background: var(--blue);
	padding: 1rem;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
	z-index: 2;
}

.news-filter-list ul {
	list-style: none;
	padding: 0;
}

.news-filter-list ul li a{
	color: #fff;
	margin-bottom: .5rem;
}

.news-filter-list ul li a:hover,
.news-filter-list ul li a.active {
	color: var(--gold);
}

#content h1 {
	padding: 0 !important;
	background: none !important;
	color: var(--blue);
	font-weight: 300;
}

.news h2 {
	color: var(--blue);
}

form label {
	color: #fff;
}

form .form-group {
	margin-bottom: 1.5rem;
}

form * {
	border-radius: 0 !important;
}

form input[type="text"],
form input[type="email"],
form input[type="tel"],
form input[type="date"],
form input[type="file"],
form select {
	display: block;
	width: 100%;
	height: 50px;
	background-color: #fff;
}

form input[type="file"] {
	padding: .5rem;
}

form textarea {
	margin-top: 0 !important;
}

form .btn-primary {
	margin-top: 2rem;
}

.form-check {
    padding-left: 0;
	margin-top: 2rem;
}

.form-check input.add-on {
	position:relative;
	width:27px;
	height: 27px;
	opacity: 0;
	margin-right: 7px;
	z-index: 1;
}

.form-check .add-on.form-check-label {
	position: relative;
	line-height: 28px;
}

.form-check .add-on.form-check-label>span {
	vertical-align: super;
}

.form-check .add-on.form-check-label>span:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 27px;
	height: 27px;
	color: #fff;
	font-size: 1.375rem;
	content: "";
	text-align: center;
	background: #fff;
}

.form-check .add-on.form-check-label>input:checked + span:before {
	background: var(--gold);
	content: "✓";
}

form select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-repeat: no-repeat !important;
  background-position: right 0.75rem center;
  background-size: 1rem;
  padding-right: 2rem;
  cursor: pointer;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-chevron-down' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>");
}


form select:focus {
  outline: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-chevron-up' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M1.646 11.354a.5.5 0 0 0 .708 0L8 5.707l5.646 5.647a.5.5 0 0 0 .708-.708l-6-6a.5.5 0 0 0-.708 0l-6 6a.5.5 0 0 0 0 .708z'/></svg>");
}

#map_home {
	width: 100%;
	height: 400px;
}

.leaflet-top.leaflet-right {
	display: none !important;
}

.link-box-link {
	background: #fff;
}

.link-box {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%; 
  max-width: var(--linkbox-width);
  background: transparent;
  border-radius: var(--border-radius);
  overflow: hidden;
  box-shadow: var(--shadow);
}

.link-box-image {
	overflow: hidden;
}

.link-box-image img {
	transition: all 2s ease 0ms;
}

.link-box:hover img {
	transform: scale(1.2);
}

.link-box-media {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}

.link-box-content {
  padding: 2rem 2rem 5rem;
  background: #ffffff;
  color: #111827;
  line-height: 1.45;
}

.link-box-content p {
	color: var(--blue) !important;
}

.link-box-headline {
  margin: 0 0 1rem 0;
  font-size: 1.75rem;
  color: var(--blue);
}

.link-box-text {
  margin: 0 0 1.25rem 0;
  font-size: 0.95rem;
  color: #374151;
}

.link-box-cta {
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  width: 3rem;
  height: 3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--gold);
  background: linear-gradient(135deg, var(--gold) 0%, var(--yellow) 100%);
  cursor: pointer;
  border: none;
  outline: none;
}

.link-box:hover .link-box-cta,
.link-box:focus .link-box-cta {
  background: var(--blue);
}

.link-box-cta svg {
  width: 1.5rem;
  height: auto;
  display: block;
  fill: var(--blue);
}

.link-box:hover svg {
  -ms-fill: #fff;
  fill: #fff;
}

figure.table {
	overflow: auto;
}

.contenttable {
  width: 100%;
  border-collapse: separate;
  border-spacing: .125rem;
}

.contenttable th {
	color: var(--blue);
	padding: .75rem;
}

.contenttable td{
	padding: .75rem;
}

.steps-container {
    position: relative;
    max-width: 900px;
    margin: 3rem auto 0;
    padding: 2rem 0;
}

.steps-line {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background: rgba(0,0,0,.2);
    transform: translateX(-50%);
}

.steps-line:before,
.steps-line:after {
    position: absolute;
	width: 5px;
	height: 5px;
	content: "";
	left: -2.5px;
	border-radius: 100%;
    background: rgba(0,0,0,.2);
}

.steps-line:before {
	top: -5px;
}

.steps-line:after {
	bottom: -5px;
}

.step {
    position: relative;
    width: calc(50% - 2rem);
    padding: 2rem 2rem;
    box-sizing: border-box;
}

.step-content {
    background: #ffffff;
    padding: 1.5rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    position: relative;
}

.step-circle {
    position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
    top: 50%;
	transform: translateY(-50%);
    width: 3rem;
    height: 3rem;
	font-size: 1.25rem;
	color: #fff;
    background: var(--gold);
    border-radius: 50%;
    z-index: 1;
}

.step-left .step-circle {
	right: -3.5rem;
}

.step-right .step-circle {
	left: -3.5rem;
}

.step-left {
    margin-left: 0;
    margin-right: auto;
}

.step-right {
    margin-left: auto;
    margin-right: 0;
}

.step-left .step-content::before,
.step-right .step-content::before {
    content: '';
    position: absolute;
    width: 3rem;
    height: 1px;
    top: 50%;
	transform: translateY(-50%);
	background: rgba(0,0,0,.2);
}

.step-left .step-content::before {
    right: -3rem;
}

.step-right .step-content::before {
    left: -3rem;
}

.step h3 {
    margin-bottom: 1rem;
    font-size: 1.25rem;
    color: var(--blue);
}

.step p {
    margin: 0;
    font-size: 0.95rem;
    color: #374151;
}

.mediaelement-video {
	width: 100%;
	height: auto;
	margin-bottom: 3rem;
}

.mediaelement-video video {
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
}

.mediaelement-video .play-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	top: 50%;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-transform: uppercase;
	font-size: 1.5rem;
	font-weight: 600;
	transform: translateY(-50%);
	text-align: center;
	background-color: var(--gold);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23104061' class='bi bi-play' viewBox='0 0 16 16'%3E%3Cpath d='M10.804 8 5 4.633v6.734zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696z'/%3E%3C/svg%3E");
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 2.5rem auto !important;
	cursor: pointer;
	letter-spacing: 0.1rem;
	z-index: 4;
}

.mediaelement-video .play-icon:hover {
	background-color: var(--blue);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffffff' class='bi bi-play' viewBox='0 0 16 16'%3E%3Cpath d='M10.804 8 5 4.633v6.734zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696z'/%3E%3C/svg%3E");

}

.mediaelement-video.play .play-icon,
.mediaelement-video.autoplay .play-icon {
	display: none;
}

.mediaelement-video .play-icon svg {
	width: 100%;
	height: 100%;
	cursor: pointer;
}

.mediaelement-video .play-icon:hover svg circle {
	-ms-stroke: var(--theme-green-2);
	stroke: var(--theme-green-2);
}

.mediaelement-video .play-icon:hover svg path {
	-ms-fill: var(--theme-green-2);
	fill: var(--theme-green-2);
}
  
/* Back to Top Button */
#backToTop {
    position: fixed;
    width: 3rem;
    height: 3rem;
    bottom: 2rem;
    right: 2rem;
    background-color: var(--grey);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 1000;
}

#backToTop svg {
    width: 1.5rem;
    height: 1.5rem;
}

#backToTop.show {
    opacity: 1;
    visibility: visible;
}

#backToTop:hover {
    background-color: var(--gold);
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

@media screen and (min-width: 1801px) {
    .container {
    max-width: 1618px;
    }
}

@media screen and (max-width:1199px) {

	section {
		padding: 4rem 0;
	}
    .hamburger-menu {
    display: block;
    }
    .hamburger-menu {
    display: none;
    } /* ENTFERNEN WENN VOLLSTÄNDIGER LIVEGANG */
    .body-hide {
    overflow: hidden;
    }
    .header_menu {
    margin-top: 0;
    display: block;
    position: fixed;
    width: 100%;
		max-width: 480px;
    height: 100%;
    background-color: var(--blue);
    top: 0;
    right: -1199px;
    padding-top: 7.375rem;
    transition: right 0.5s;
    z-index: 1001;
    padding-left: 0;
    text-align: left;
    background-position: bottom;
    box-shadow: 0 0 13px var(--bxshadow);
    }	
	.header_menu > ul > li {
		display: block;
		padding-left: 0;
		padding-bottom: 1rem;
		margin-bottom: 1rem;
		border-bottom: 1px solid var(--gold);
	}
	.header_menu > ul > li .expander {
		position: absolute;
		top: -.25rem;
		right: .5rem;
		width: 2.5rem;
		height: 2.5rem;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffffff' class='bi bi-chevron-down' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E")no-repeat center;
		background-size: 1.5rem;
		z-index: 1;
	}
	.header_menu > ul > li.open .expander {
		transform: rotate(180deg);
	}
	.header_menu ul li ul.dropdown {
	    display: none;
		position: relative;
		top: 1rem;
		left: unset;
	}
	.header_menu ul li ul.dropdown li {
	    padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.header_menu li.open > ul.dropdown {
	    display: block;
	}
    .header_wrapper.active .header_menu {
    right: 0;
    }
    .heare_inner {
    display: block;
    padding: 0;
    }
    .header_logo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    }
    .header_logo img {
    width: 105px;
    height: 80px;
    }
    .header_wrapper {
    padding: 0.938rem 0;
    background-position: center;
    }
    .header_menu ul {
    border-bottom: none;
    padding-bottom: 0;
    }
    .header_menu li {
    display: block;
    padding-bottom: 1.563rem;
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
    }
    .header_menu li a {
    font-size: 1.25rem;
    }
    .header_menu li a::before {
    bottom: -10px;
    }
    .banner_img picture > img,
	.banner_img video {
    height: 750px;
    }
    .banner_content {
    /*top: 70px;*/
    right: 0;
    width: 95%;
    padding: 1.25rem;
    left: 0;
    margin: 0 auto;
    }
    .banner_content h1,
	.hero-content h1 {
    font-size: 1.75rem;
    line-height: 1.43;
    letter-spacing: 0.021rem;
    margin-bottom: 0.625rem;
    }
	.banner_content h2 {
	  font-size: 1.25rem;
	  line-height: 1.2;
	}
    p {
    font-size: 1rem;
    line-height: 1.625;
    }
    .banner_content p {
    letter-spacing: 0.02rem;
    margin-bottom: 0.625rem;
    }
    .banner_content .btn_style {
    margin-top: 0.438rem;
    }
    .btn_style,
     .btn-primary {
    height: 50px;
    font-size: 1.125rem;
	max-width: 400px;
    letter-spacing: 0.023rem;
    }
    .btn_style svg {
    width: 15px;
    margin-left: 0.438rem;
    }
    .scroll_down {
    width: 50px;
    height: 50px;
    right: -10%;
    }
    .scroll_down svg {
    width: 13px;
    height: 20px;
    }
    .float_btns {
    right: -290px;
    }
    .icon {
    width: 35px;
    height: 80px;
    line-height: 38px;
    }
    .icon img {
    width: 18px;
    height: 18px;
    }
    .mini-panel {
    padding: 0.406rem 0.938rem;
    width: 290px;
    }
    .mini-panel p {
    font-size: 0.875rem;
    line-height: 1.57;
    margin-bottom: 0;
    }
    .title_bar {
    padding-top: 6.25rem;
    padding-top: 0;
    }
    .title_bar h2,
    h2,
	#content h1 {
    font-size: 2rem;
    letter-spacing: 0.02rem;
    }
    .hr_line {
    margin-left: -2.188rem;
    }
    .service_slider {
    padding: 0 0.938rem;
    margin-top: -3.438rem;
    }
    .service_cnt {
    padding-left: 0.938rem;
    }
    .service_box span img {
    width: 155px !important;
    height: 145px;
    }
    .service_box a {
    font-size: 1.25rem;
    letter-spacing: 0.025rem;
    margin-top: 1.875rem;
    margin-bottom: 0.938rem;
    }
    .service_box li {
    font-size: 1rem;
    line-height: 1.5;
    }
    .service_box {
    padding-bottom: 1.563rem;
    }
    .owl-nav span {
    font-size: 0;
    display: inline-block;
    width: 30px;
    height: 25px;
    background-image: url(../images/icon_arrow-down.svg);
    transform: rotate(90deg);
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 0.188rem;
    vertical-align: top;
    background-position: center;
    filter: brightness(100);
    }
    .owl-nav .owl-next span {
    transform: rotate(-90deg);
    }
    .owl-theme .owl-nav [class*=owl-]:hover {
    background: transparent;
    }
    .owl-theme .owl-nav {
    margin-bottom: 1.25rem;
    }
    .service_box::before {
    height: 5px;
    }

    .about_desp {
    padding-top: 1.25rem;
    padding-left: 0.313rem;
    }
    .about_wrapper {
    padding-bottom: 4.375rem;
    }
    .indus_box_big .indus_box_inr > a > img {
    width: 200px;
    object-fit: contain;
    height: 100%;
    }
    .indus_products {
    padding-top: 0;
    }
    .indus_box_big {
    padding-right: 0;
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
    }
    .indus_products {
    display: block;
    }
    .indus_box_big::before, .indus_box_small .indus_box_inr:before,
    .indus_box_big .indus_box_inr::before {
    content: unset;
    }
    .indus_box_small .indus_box_inr > a > img {
    width: 190px;
    height: 165px;
    }
    .indus_products a span{
    font-size: 1.25rem;
    padding-top: 1.375rem;
    }
    .certi_section .title_bar {
    padding-top: 0;
    }
    .certifcate_block {
    padding-top: 1.25rem;
    }
    .certifcate_block li {
    padding-right: 1.875rem;
    padding-bottom: 1.875rem;
    }
    .certifcate_block img {
    height: 100%;
    }
    .industry_wrapper {
    padding-bottom: 2.188rem;
    }
    .footer_wrapper {
    padding-top: 3.75rem;
    }
    a.footer_logo {
    display: block;
    text-align: center;
    }
    .footer_logo img {
    width: 150px;
    }
    .footer_top li {
    padding-left: 1.25rem;
    }
    .footer_top li:nth-child(1) {
    padding-left: 0;
    }
    ul.footer_top {
    text-align: center;
    }
    .footer_dtls {
    margin-left: 0;
    padding-top: 2.5rem;
    }
    .footer_top a, .footer_bot h2 {
    font-size: 1rem;
    letter-spacing: 0.023rem;
    }
    .footer_bot {
    display: block;
    padding-top: 1.563rem;
    }
    .footer_inr address {
    padding-right: 0;
    padding-bottom: 1.25rem;
    }
    .footer_inr address, .footer_inr li, .footer_inr li a {
    font-size: 0.938rem;
    line-height: 1.68;
    }
    .footer_inr {
    display: block;
    }
    .footer_right {
    padding-top: 1.875rem;
    }
    .footer_right li img {
    width: 25px;
    }
    .footer_copy {
    padding-top: 1.875rem;
    justify-content: space-between;
    }
    .footer_copy p {
    font-size: 0.75rem;
    line-height: 1.67;
    padding-right: 0.938rem;
    }
    .footer_copy img {
    width: 110px;
    object-fit: contain;
    }
	.logo-slider .owl-stage-outer {
		overflow: hidden;
	}
}

@media screen and (max-width: 350px) and (min-width: 320px) {

    .banner_content {
    /*top: 50px;*/
    }
    .banner_img picture > img,
	.banner_img video {
    height: 800px;
    }

}


@media screen and (max-width: 1199px) and (min-width: 768px) {

    .header_menu {
    width: 40%;
    }
    .banner_content {
    right: 30px;
    /*top: 50px;*/
    width: 60%;
    left: unset;
    margin: unset;
    }
    .banner_img picture > img,
	.banner_img video {
    height: 620px;
    }
    .about_desp {
    padding-top: 12.5rem;
    padding-top: 3.75rem;
    padding-left: 0;
    }
    .certi_section .title_bar {
    padding-top: 6.25rem;
    padding-top: 0;
    }
    ul.footer_top {
    text-align: right;
    }
    .footer_inr {
    display: flex;
    }
    .footer_inr address {
    padding-right: 1.875rem;
    }
    .title_bar h3,
    .about_feas h3 {
  font-weight: 300;
  color: var(--gold);
  font-size: 2rem;
    }
    .title_bar span,
    .about_feas span {
  color: #fff;
  font-size: 0.80rem;
  margin-top: 10px;
  float: left;
    }
    
}

@media screen and (max-width: 991px) and (min-width: 768px) {

    .title_bar .col-12.col-md-6,
    .about_feas .col-12.col-md-6 {
    width: 55%;
    margin: 30px 0px 0px 0px;
    }
	
    .about_desp {
    padding-top: 2rem;
    padding-left: 0;
    }

}

@media screen and (min-width: 768px) {
	.hero-content h1 {
		font-size: 1.8rem;
	}
	.hero-content p {
		font-size: 1rem;
	}
	.frame-type-text.frame-layout-1 {
		padding-left: 4rem;
		padding-left: 0;
	}
    .steps-line {
      left: 0;
	  right: 0;
	  margin: 0 auto;
      transform: none;
    }
}

@media screen and (max-width: 991px) {	
	.teaser-box .container {
		padding: 0;
	}
	.teaser-box .row {
		margin: 0;
	}
	.teaser-image {
		padding: 0;
	}
	
	.teaser-content {
		padding: 1.25rem;
	}
}

@media screen and (max-width: 767px) {
	.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}
	#backToTop {
		width: 2.5rem;
		height: 2.5rem;
		bottom: 1.25rem;
		right: 1.25rem;
	}
	#backToTop svg {
		width: 1.25rem;
		height: 1.25rem;
	}
    .service_cnt {
    border-left: none;
    }
    .title_bar h3,
    .about_feas h3 {
  font-size: 2rem;
    }
    .title_bar span,
    .about_feas span {
  font-size: 1rem;
    }
    .about_feas {
  margin-bottom: 40px;
    }
    .title_bar .col-12.col-md-6,
    .about_feas .col-12.col-md-6 {
    margin: 30px 0px 0px 0px;
    }
   .related-grid {
    grid-template-columns: 1fr;
  }
  .related-grid .content {
    gap: 0.75rem;
  }
  .related-grid .teaser-title {
    font-size: 1.1rem;
  }
    .about_desp {
    padding-top: 0;
    padding-left: 0.313rem;
    }
	.icon-box-title {
		font-size: 1.5rem;
	}
	.hero-content h1 {
		padding: 1rem 1.25rem;
	}
	.frame-indent {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.custom-accordion .accordion-button {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}
	.news-header {
		justify-content: space-between;
	}
	.news-filter-list {
		left: auto;
		right: 0;
	}	
	.steps-line {
		left: 1.5rem;
	}
	.step {
		width: calc(100% - 2.5rem);
		padding: 1.25rem;
	}
	.step-left .step-circle,
	.step-right .step-circle {
		left: -2.5rem;
	}
	.step-left,
	.step-right {
		margin-left: auto;
		margin-right: 0;
	}
	.step-left .step-content::before {
		left: -3rem;
		right: auto;
	}
	.step h3 {
		font-size: 1.125rem;
		-webkit-hyphens: auto;
		hyphens: auto;
	}
	.related-teaser .overlay {
		padding: 1.25rem 5rem 1.25rem 1.25rem;
	}
	.related-teaser .teaser-title {
		-webkit-hyphens: auto;
		hyphens: auto;
	}
	.related-teaser .overlay:before {
		right: 1.25rem;
		bottom: 1.25rem;
	}
	.banner_content {
		top: auto;
		bottom: 30px;
	}
	.scroll_down {
		display: none;
	}
}

@media screen and (max-width: 1800px) and (min-width: 1200px) {

    .heare_inner {
    padding: 0 1.875rem;
    }
    .mini-panel p {
    margin-bottom: 0px;
    }
    p {
    font-size: 1rem;
    line-height: 1.5;
    }
    .title_bar h3,
    .about_feas h3 {
  font-weight: 300;
  color: var(--gold);
  font-size: 2.8rem;
    }
    .title_bar span,
    .about_feas span {
  color: #fff;
  font-size: 1rem;
  margin-top: 10px;
  float: left;
    }
    .about_feas {
  float: left;
  width: 100%;
  margin-top: 60px;
    }

    .header_logo img {
    width: 140px;
    height: 100px;
    }
    .header_menu {
    padding-top: 2rem;
    }
    .header_menu li a {
    font-size: 1.25rem;
    }
    .banner_img picture > img,
	.banner_img video {
    height: calc(100vh - 150px);
    }
    .banner_content {
    /*top: 60px;*/
    right: 30px;
    width: 575px;
    padding: 1.25rem 1.563rem;
    }
    .banner_content h1,
	.hero-content h1 {
    font-size: 2.125rem;
    line-height: 1.32;
    letter-spacing: 0.021rem;
    margin-bottom: 0.625rem;
    }
	.banner_content h2 {
		font-size: 1.5rem;
		line-height: 1.2;
	}
    .scroll_down {
    width: 60px;
    height: 60px;
    }
    a.scroll_down svg {
    width: 18px;
    height: 26px;
    }
    .banner_content .btn_style {
    margin-top: 0.313rem;
    }
    .btn_style,
    .btn-primary {
    min-width: 320px;
    height: 50px;
    font-size: 1.125rem;
    }
    .icon img {
    width: 20px;
    height: 20px;
    }
    .icon {
    width: 40px;
    height: 100px;
    }
    .mini-panel {
    padding: 0.844rem 0.938rem;
    }
	section {
    padding: 6.25rem 0;
	}
    .title_bar {
    padding-top: 6.25rem;
    padding-top: 0;
    }
    .title_bar h2,
    h2,
	#content h1 {
    font-size: 2.25rem;
    letter-spacing: 0.024rem;
    }
    .service_box span img {
    width: 185px !important;
    height: 155px;
    }
    .service_slider {
    padding: 0;
    }
    .service_box a svg,
    .service_box .service_cnt svg {
    width: 14px;
    margin-left: 0.125rem;
    margin-top: 0px;
    }
    .service_cnt {
    padding-left: 1.25rem;
    }
    .service_box a {
    font-size: 1rem;
    letter-spacing: 0.025rem;
    margin-top: 1.875rem;
    margin-bottom: 1.063rem;
    }
    .service_box {
    min-height: 559px;
    }
    .service_box li {
    font-size: 1rem;
    line-height: 1.625;
    letter-spacing: 0.023rem;
    }
    .indus_box_big {
    padding-right: 2.5rem;
    }
    .indus_box_big .indus_box_inr > a > img {
    width: 220px;
    height: 100%;
    object-fit: contain;
    }
    .indus_products a span {
    font-size: 1.25rem;
    letter-spacing: 0.025rem;
    }
    .indus_box_small .indus_box_inr > a > img {
    width: 158px;
    height: auto;
    }
    .certifcate_block li {
    padding-right: 2.5rem;
    padding-bottom: 2.188rem;
    }
    .certifcate_block li img {
    height: 100%;
    }
    .footer_logo img {
    width: 150px;
    }
    .footer_top a, .footer_bot h2 {
    font-size: 1rem;
    letter-spacing: 0.017rem;
    }
    .footer_wrapper {
    padding-top: 3.75rem;
    padding-bottom: 2.188rem;
    }
    .footer_right li img {
    width: 26px;
    }
    .footer_left {
    width: 65%;
    }
    .footer_inr address, .footer_inr li, .footer_inr li a {
    font-size: 1rem;
    line-height: 1.625;
    letter-spacing: 0.01rem;
    }
    .footer_inr address {
    padding-right: 1.875rem;
    }
    .footer_right li {
    padding-right: 0.625rem;
    }
    .footer_right {
    width: 35%;
    }
    .footer_copy {
    display: block;
    padding-top: 2.5rem;
    }
    .footer_copy p {
    font-size: 0.875rem;
    padding-right: 0;
    margin-bottom: 0.938rem;
    }    

}

@media screen and (max-width: 1280px) and (min-width: 1200px) {

    .service_cnt li br {
    display: none;
    }
    .banner_content {
    top: 40%;
    width: 515px;
    }
    .service_box {
    min-height: 499px;
    }
    .service_box li {
    font-size: 0.875rem;
    line-height: 1.64;
    }

}

@media screen and (min-width: 1200px) {
	/* Anzeigen bei Hover */
	.header_menu ul li.dropdown:hover > ul.dropdown {
	  display: block;
	}
}
@media screen and (max-width: 575px) {
	h2 {
		-webkit-hyphens: auto;
		hyphens: auto;
	}
	.hero-overlay {
		padding: 2rem 0;
	}
	.teaser-box h2 br {
		display: none;
	}
	.teaser-text .teaser-indent {
		padding-left: 0;
	}
	.icon-box.alt-layout.icon-left {
		padding: 1.25rem;
	}
	.alt-layout.icon-left .icon-wrapper {
		width: 4rem;
		-ms-flex: 0 0 4rem;
		flex: 0 0 4rem;
		height: 4rem;
	}
	.testimonial-slider {
		padding: 2rem 3rem;
	}
	.testimonial-text:before {
		top: -1rem;
		left: -2rem;
		width: 4rem;
		height: 4rem;
		background-size: 4rem;
	}
	.testimonial p {
		font-size: 1.25rem;
	}
}

@media screen and (max-width: 480px) {
	ul.footer_top {
		text-align: left;
	}
	ul.footer_top li {
		display: block;
		padding-left: 0;
	}
}
@media screen and (max-width: 400px) {
	.logo-gallery .ce-row .ce-column {
		width: calc(50% - 2rem);
		flex: 0 0 calc(50% - 2rem);
	}
}