/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

* {
	hyphens: manual;
}

.scolor {color:#005095;}

/* header */
.ekit-template-content-header {position: sticky;top: 0;z-index: 11;}
.active.menu-link {font-weight: bold !important;}
/* .elementor-8 .elementor-element.elementor-element-93d9732 .elementskit-navbar-nav > li > a {padding-left: 0.5em; padding-right: 0.5em;} */
/* home */
.last-vid .e-hosted-video {--video-aspect-ratio: inherit !important;}
/* footer */
.footer-sec ul.menu {margin: 0;padding: 0;list-style: none;font-size: 20px;}
.footer-sec ul.menu li a {color: #000;}
.footer-sec ul.menu li a:hover {text-decoration: underline;}
.hpart {opacity:0;transition: 0.3s ease-out;}
.vbox:hover .hpart {opacity:1;}
/* contact */
.elementor-button-icon svg {width: inherit;}
.page-id-251 .ftr-top, .page-id-253 .ftr-top {display: none;}
/* product */
.ticon h3.elementor-heading-title:after {content: '';background: url('../../../wp-content/uploads/2026/03/Polygon-10.svg') no-repeat center right / contain;display: inline-block;width: 22px;height: 26px;margin-left: 15px;transition: 0.3s ease-out;}
.ticon h3.elementor-heading-title:hover:after {transform: translateX(10px);}
/* scroll top */
#ast-scroll-top {border: 1px solid var(--ast-global-color-0);}
/* about */
.timeline span.elementor-icon {position: relative;top: 8px;}
.timeline .e-con-inner:before {content: '';background: #000;position: absolute;width: 1px;height: 100%;left: 50%;}
body .tab-sec .e-n-tab-title {flex: 1;}
.tab-sec .e-n-tabs-heading {border-top: 1px solid #000;}
body .elementor-widget-n-tabs .e-n-tab-title { white-space: inherit; }
.tab-sec button[aria-selected="true"] span {font-weight: bold;}
.elementor-widget-n-tabs .e-n-tab-title[aria-selected=true] .e-n-tab-icon svg path { fill: var(--n-tabs-icon-color-active); }
.elementor-widget-n-tabs [data-touch-mode=false] .e-n-tab-title[aria-selected=false]:hover .e-n-tab-icon svg path { fill: var(--n-tabs-icon-color-hover); }

/** Custom KuP **/
#menu-primary > li:first-child, #menu-primary-en > li:first-child {
	display: none;
}
.ast-article-single header.entry-header .entry-title {
	font-family: "Source Sans Pro", Sans-serif;
	font-weight: 700;
}
.elementor-kit-7 .ast-article-single h2.wp-block-heading {
	  font-weight: 700;
    font-size: 1.77777777778rem;
}

.elementor-kit-7 .ast-article-single h3.wp-block-heading {
	font-weight: 700;
	font-size: 1.15em;
}
.ast-article-single .entry-content p {
    margin-bottom: 0.75em;
}
.mt-0 {
	margin-top: 0 !important;
}
.mb-0 {
	margin-bottom: 0 !important;
}

.mt-0-5em {
	margin-top: 0.5em;
}
.mb-0-5em {
	margin-bottom: 0.5em;
}
.mt-1em {
	margin-top: 1em;
}
.mb-1em {
	margin-bottom:1em;
}
.mbp-0 p {
	margin-bottom: 0;
}
.elementor-widget-image.logo a {
	display: block;
	height: 100%;
} 
.circle {	
	aspect-ratio: 1;
	border-radius: 50%;
	display: flex;
    flex-direction: column;
    justify-content: center;
}
.circle p {
	line-height: 1;
}

.sticky-header {
	width: 100% important;
}

/** Header **/
.elementor-widget-elementskit-header-search .ekit-wid-con {
	padding-right: 10px;
}
.elementor-8 .elementor-element.elementor-element-7b4850d {
	align-items: center;
}
.elementor-element.elementor-element-7b4850d.e-con {
	--column-gap: 0;
}
.header_vertical_divider {
	position: relative;
}
.header_vertical_divider i {
	display: block;
	margin-right: 2px;
	margin-left: 2px;
}
.header_vertical_divider i::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 1rem;
	background: #ffffff;
}

.wpml-ls-legacy-dropdown {
	width: auto;
}
.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
	border: none;
	display: inline;
	vertical-align: baseline;
	padding-right: calc(10px + 1em);
	padding-top: 0;
	padding-bottom: 0;
}
.wpml-ls-legacy-dropdown .wpml-ls-current-language .wpml-ls-sub-menu:hover, .wpml-ls-legacy-dropdown .wpml-ls-keyboard-open .wpml-ls-sub-menu:hover  {
	visibility: visible;
	z-index: 1001;
}
.wpml-ls-statics-shortcode_actions .wpml-ls-current-language:hover > a {
	color: #ffffff;
	background-color: transparent;
}
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu .wpml-ls-last-item a {
	border-bottom-left-radius: 5px;
  	border-bottom-right-radius: 5px;
}
.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
	vertical-align: baseline;
	top: calc(50% - .4em);
}
.wpml-ls-legacy-dropdown a span {
    vertical-align: baseline;
}

/* Home Videos */
.seq-video.vid-banner {
	overflow: hidden;
}
.seq-video.vid-banner .vid_placeholder {
	display: none;
}
.seq-video.vid-banner .vid_placeholder.open {
	display: block;
}
.seq-video.vid-banner .last-vid {
	max-height: 0;
	overflow: hidden;
  	transition: max-height 1s ease-out;
}
.seq-video.vid-banner .last-vid.open {
	max-height: 500px;
}

/* .seq-video {
	cursor: pointer;
} */
.seq-video.played {
  opacity: 0.75;
  filter: grayscale(80%);
  transition: opacity 0.5s, filter 0.5s;  
}
.seq-video[data-finished="true"] {
  cursor: pointer;
}

/* Grid */
.e-grid.e-con-boxed.grid-rows-auto .e-con-inner {
	grid-template-rows: auto auto;
}

/*** Forms ***/
.wpcf7-form p {
	margin-bottom: 0;
}

/*** Team Boxes ***/
.team-single-wrapper {
  max-width: 1440px;
  margin: 60px auto;
  padding: 0;
}
.team-single-inner {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 60px;
  align-items: start;
}
.team-member-image img {
  width: 100%;
  border-radius: 8px;
}
.team-member-name {
  font-size: 1.8rem;
  margin-top: 20px;
}
.team-member-title {
  color: var(--e-global-color-6f02d72);
}
.team-member-funktion {
  font-size: 1rem;
  margin-top: 4px;
}
.team-member-beschreibung {
  margin-top: 16px;
  line-height: 1.7;
}
.team-contact-form {
  background: var(--e-global-color-astglobalcolor6);
  padding: 40px;
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

/**** Team Übersichtsseite ****/
.team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  /* max-width: 1100px; 
  margin: 60px auto; */
  padding: 0;
}
.team-card, a.team-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  /* border-radius: 10px; */
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.team-grid .team-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.14);
}
.team-card-image img {
  width: 100%;
  aspect-ratio: auto 540 / 698;
  object-fit: cover;
  display: block;
}
.team-card-body {
  padding: 24px;
  display: flex;
  flex-direction: column;
}
.team-card-body p {
	margin-bottom: 0;
	line-height: 1.4;
}
.team-card-name {
  font-size: 1.3636rem;
  font-weight: 700;
  color: var(--e-global-color-astglobalcolor0);
  margin: 0;
}
.team-card-funktion {
  margin-top: 0.5em;
}
.team-card-beschreibung {
  margin-top: 0.5em;
}
.team-card-button {
  display: inline-block;
  margin-top: 1.25rem;
  font-size: 1rem;
  font-weight: 600;
  color: var(--e-global-color-astglobalcolor0);
}

/* Sticky button */
.sticky-button {
  position: fixed;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  background-color: #005095;
  color: #fff;  
  border-radius: 6px;
  text-decoration: none;
  font-weight: bold;
  z-index: 9999;
  box-shadow: -2px 0 8px rgba(0,0,0,0.2) !important;
  transition: right 0.2s ease;
}
.sticky-button:hover {
  background-color: #000;
  /* opacity: 0.9; */
}
.sticky-button.ep-sl i {
	display: block;
	width: 2rem;
	height: 2rem;
	margin: 0.25rem;
	background-image: url("/wp-content/uploads/2026/05/icon_kachel_entwicklung-fertigung.svg");
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover;
}

#ep-sl {
  position: fixed;
  right: 20px;
  top: 75%;
  transform: translateY(-50%);
  background-color: #005095;
  color: #fff;  
  border-radius: 6px;
  padding: 0.25rem;
  text-decoration: none;
  font-weight: bold;
  z-index: 9999;
  box-shadow: -2px 0 8px rgba(0,0,0,0.2) !important;
  transition: right 0.2s ease;
}
#ep-sl.elementor-button span.elementor-button-icon {
	width: 2rem;
	height: 2rem;
	/*margin: 0.25rem;*/
	/* background-image: url("/wp-content/uploads/2026/05/icon_kachel_entwicklung-fertigung.svg");
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover; */
}

/* Fix für WPML / Elementor SVG 1x1 Fehler */
img[src$=".svg"] {
    width: auto !important;
    height: auto !important;
    max-width: 100%;
}

/* media */
@media only screen and (min-width: 1501px) {
	.elementor-kit-7 .grid4 h3 {
		font-size: 28px;
	}
}
@media only screen and (min-width:1281px) and (max-width:1500px) {
	.footer-sec ul.menu {font-size: 18px;}
}
@media only screen and (min-width:1025px) {
	.elementskit-submenu-indicator {display: none !important;}
}
/** Mobile Menu **/
/* @media only screen and (max-width:1340px) {
	nav .elementskit-navbar-nav-default.elementskit-menu-offcanvas-elements {
		width: 100%;
		position: fixed;
		top: 0;
		left: -100vw;
		height: 100%;
		-webkit-box-shadow: 0 10px 30px 0 rgba(255,165,0,0);
		box-shadow: 0 10px 30px 0 rgba(255,165,0,0);
		overflow-y: auto;
		overflow-x: hidden;
		padding-top: 0;
		padding-left: 0;
		padding-right: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		-webkit-transition: left .6s cubic-bezier(.6,.1,.68,.53);
		transition: left .6s cubic-bezier(.6,.1,.68,.53);
	}
	 nav .elementskit-navbar-nav-default.elementskit-menu-offcanvas-elements.active {
		left: 0;
	  }
	.elementor-8 .elementor-element.elementor-element-de6ac6d {
		--flex-direction: row;
		--container-widget-width: calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );
		--container-widget-height: 100%;
		--container-widget-flex-grow: 1;
		--container-widget-align-self: stretch;
		--flex-wrap-mobile: wrap;
		--align-items: center;
		--gap: 20px 20px;
		--row-gap: 20px;
		--column-gap: 20px;
	}
	.elementor-8 .elementor-element.elementor-element-93d9732 button.elementskit-menu-hamburger {
		display: block;
        padding: 8px 8px 8px 8px;
        width: 45px;
        border-radius: 3px;
    }
	.elementor-8 .elementor-element.elementor-element-7b4850d {
		--width: 80%;
	}	
	 button.elementskit-menu-close .elementskit-menu-hamburger-icon, button.elementskit-menu-hamburger .elementskit-menu-hamburger-icon {
		height: 1px;
		width: 100%;
		display: block;
		margin-bottom: 4px;
	}
	button .elementskit-menu-hamburger-icon:last-child {
		margin-bottom: 0;
	  }
	 .elementor-8 .elementor-element.elementor-element-13114a6 {
		--padding-top: 20px;
		--padding-bottom: 20px;
		--padding-left: 20px;
		--padding-right: 20px;
	}
} */

@media only screen and (max-width:1280px) {
	.footer-sec ul.menu {font-size: 16px;}	
}
/*
@media only screen and (max-width:1100px) {
	.elementor-8 .elementor-element.elementor-element-93d9732 .elementskit-navbar-nav > li > a {
        padding: 0px 5px 0px 5px;
    }
} */
@media only screen and (max-width:1024px) {
	.ticon h3.elementor-heading-title:after {width: 12px;height: 16px;margin-left: 10px;}
	a.elementskit-nav-logo {background: #fff;}
	.elementskit-nav-identity-panel {background: #fff;margin-bottom: 30px;}
	.elementskit-submenu-panel {background: #fff !important;}
}
@media only screen and (max-width: 900px) {
  .team-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width:767px) {
	.elementor-8 .elementor-element.elementor-element-7b4850d {
        --width: 100%;
    }
	.seq-video.vid-banner .last-vid.open {max-height: 80px;}
	.top-slide .swiper-slide img {height: 350px;object-fit: cover;}
	.timeline .elementor-widget-icon-box .elementor-icon-box-description {word-break: break-word;font-size: 16px;line-height: 22px;}
	.m-ar-1-1-29 {aspect-ratio: 1 / 1.29;}
	.team-single-inner {grid-template-columns: 1fr;}
	.circle {
		display: flex;
		flex-direction: column;
		justify-content: center;
		flex-wrap: wrap;
	}
}
@media only screen and (max-width: 560px) {
  .team-grid {
    grid-template-columns: 1fr;
  }
}
@media only screen and (max-width:360px) {
	.wpml-ls-legacy-dropdown a {padding: 5px;}
	.elementor-widget-elementskit-header-search .ekit-wid-con {padding-right: 5px;}
	.elementor-8 .elementor-element.elementor-element-7b4850d {justify-content: center;}	
	.elementor-8 .elementor-element.elementor-element-93d9732 button.elementskit-menu-hamburger {width: 30px;}
}