/*
Theme Name: Bachner / Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/* wpml banner frontend */
.otgs-development-site-front-end {
  display: none!important;
}

:root {
  --darkgray: #222;
  --white: #fff;
  --black: #000;
  --primary: #e02309;
  --secondary: #ebebeb;
  --transition-duration: 0.25s;
  --red-jobs: #e02309; //var(--primary);
  --red-references: #e02309; //var(--primary);
  --gray: #999999;
  --lightgray: #cdcdcd;
  --highlight-gray: #54646b;
  --footer-gray: #54646b; //var(--highlight-gray);

  --font-size-h1: clamp(3rem, 5.8vw, 5.625rem);
  --font-size-h2: clamp(2.5rem, 4.29vw, 3.75rem);
  --font-size-h3: clamp(2rem, 2.85vw, 2.5rem);
  --font-size-h4: 1.625rem;
  --font-size-h5: 1.375rem;
  --font-size-h6: 1.25rem;
  --font-size-p: 1rem;
}


/***************************/
/***** BASIC TYPOGRAPHY ****/
/***************************/


body {
  font-family: Spartan !important;
  font-size: 100%;
  -webkit-font-smoothing: unset;
}

@media only screen and (max-width: 767px) {
  body {
    hyphens: auto;
  }
}

.elementor h1,
.elementor h2,
.elementor h3,
.elementor h4,
.elementor h5,
.elementor h6 {
  line-height: 1.2;
  margin-top: 0;
}

.elementor h1 {
  text-transform: uppercase;
}

.elementor h1,
.elementor h2,
.elementor h3 {
  font-weight: 900;
  margin-bottom: 0.5em;
}

.elementor h4,
.elementor h5,
.elementor h6 {
  font-weight: 700;
  margin-bottom: 0.75em;
}

.elementor h1 {
  font-size: var(--font-size-h1);
}

.elementor h2 {
  font-size: var(--font-size-h2);
}

.elementor h3 {
  font-size: var(--font-size-h3);
}

.elementor h4 {
  font-size: var(--font-size-h4);
}

.elementor h5 {
  font-size: var(--font-size-h5);
}

.elementor h6 {
  font-size: var(--font-size-h6);
}

.elementor p,
.elementor a {
  font-size: var(--font-size-p);
  line-height: 1.65;
  font-weight: 400;
  margin-bottom: 1em;
}

.elementor small {
  font-size: 0.75rem;
}

.elementor a {
  color: inherit;
}

.elementor ul,
.elementor ol {
  padding-left: 1em;
  margin-bottom: 1.5em;
}

/* Buttons */

.elementor-widget-button {
  margin-bottom: 1em !important;
}

.elementor-widget-button .elementor-button:hover {
  scale: 1.1;
}

/* Content Helper */
.elementor .underlined .elementor-heading-title {
  margin-bottom: 0;
}

.elementor .underlined > .elementor-widget-container::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 0.5rem;
  background-color: var( --e-global-color-primary );
  margin-bottom: 50px;
  margin-top: 0.5em;
}

.elementor .elementor-divider {
  padding: 0 !important;
  margin-top: 15px;
  margin-bottom: 50px;
}

.elementor .elementor-divider .elementor-divider-separator {
  border-top: 0.5rem solid var( --e-global-color-primary ) !important;
  padding: 0;
  margin: 0;
}

.elementor .no-margin h1,
.elementor .no-margin h2,
.elementor .no-margin h3,
.elementor .no-margin h4,
.elementor .no-margin h5,
.elementor .no-margin h6,
.elementor .no-margin p {
	margin-bottom: 0 !important;
}

/* Zweispalter – Bild soll gleiche Höhe haben wie der Inhalt ,Klasse auf Bild-Element*/

.elementor-section.small-container > .elementor-container > .elementor-element {
  max-width: 53.125rem;
}

.image-object-fit {
  height: 100%;
}

.image-object-fit > .elementor-widget-container {
  height: 100%;
}

.image-object-fit img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 30rem;
}

/* Zweispalter mit CTA – Gleiche Höhe */

.container-equal-height > .elementor-container,
.container-equal-height > .elementor-container .elementor-widget-wrap,
.container-equal-height > .elementor-container .elementor-widget-wrap .elementor-element {
  display: flex;
  align-content: stretch;
  flex-wrap: wrap;
}
.container-equal-height > .elementor-container .elementor-widget-wrap .elementor-element .elementor-cta {
  height: 100%;
}

.container-equal-height .elementor-cta .elementor-cta__content {
  align-items: stretch;
  align-content: flex-start;
}

.container-equal-height > .elementor-container .elementor-element .elementor-widget-wrap {
  height: 100%;
}

/* HEADER */

.elementor-location-header > section {
  z-index: 10;
}

.elementor-location-header .elementor-nav-menu--main {
  // filter: drop-shadow(0 5px 7px #aaa);
}

.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > .menu-item::after {
  background-color: var( --e-global-color-primary );
  height: 0.3125rem;
  width: 0;
  transition-duration: 0.25s;
}

.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > .menu-item:hover::after {
  background-color: var( --e-global-color-primary );
  height: 0.3125rem;
  width: 100%;
}

/* MEGA MENU CONTENT */

.elementor-location-header .elementor-nav-menu--main .sub-menu {
  column-count: 2;
}

.elementor-location-header .elementor-nav-menu--main .sub-menu .menu-item a {
  display: flex;
  align-items: flex-start;
  padding: 1.5rem;
}

.elementor-location-header .elementor-nav-menu--main .sub-menu .menu-item a:hover {
    color: var( --e-global-color-primary ) !important;
}

.elementor-location-header .elementor-nav-menu--main .sub-menu .menu-item a::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f054";
  display: inline;
  font-size: 1.2rem;
  width: 1rem;
  height: 1.2rem;
  color: var( --e-global-color-text );
  margin-left: 0.5rem;
  opacity: 1 !important;
  position: relative;
  margin-top: -0.125rem;
}

.elementor-location-header .elementor-nav-menu--main .sub-menu .menu-item a:hover::after  {
  color: var( --e-global-color-primary ) !important;
}

/* MEGA MENU CONTENT ENDE */

.elementor-location-header .elementor-widget.elementor-widget-theme-site-logo img {
  width: 100%;
  max-width: 200px;
  height: auto;
}

.elementor-location-header .aside-meta .elementor-widget-wrap {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-end;
}

.elementor-location-header .header-container-nav .elementor-widget-wrap {
  align-content: space-between !important;
  align-items: unset !important;
}

.elementor-location-header .aside-meta {
  padding: 0 1rem;
}

.elementor-location-header .elementor-nav-menu--dropdown:not(.sub-menu) {
  position: absolute;
  z-index: 1;
  min-width: 360px;
  padding: 2rem 0;
  box-shadow: -3px 8px 8px 0 #00000033;
  right: -10px;
  top: 85px;
}

/* Footer */

.elementor-location-footer .elementor-widget-search-form {
  display: flex;
  justify-content: center;
}

@media only screen and (min-width: 768px) {
  .elementor-location-footer .elementor-widget-search-form {
    display: flex;
    justify-content: flex-end;
  }
}

.elementor-location-footer .elementor-widget-search-form  .elementor-widget-container {
  width: 300px;
}

.elementor-location-footer a:hover {
  text-decoration: underline;
}

.elementor-location-footer .red_bar {
  height: 3.125rem;
}

.elementor-location-footer .elementor-nav-menu.sm-vertical {
  padding-left: 0;
}

/* Aside Social Media and Quick Links */

.aside-meta .elementor-widget-wrap > .elementor-element {
  max-width: 2rem;
  margin: 0.5rem;
}

.aside-meta .elementor-widget-wrap > .elementor-element svg {
  max-width: 100%;
}

.aside-meta .elementor-widget-wrap > .elementor-element.aside-meta_news-item .elementor-icon,
.aside-meta .elementor-widget-wrap > .elementor-element.aside-meta_news-item svg {
  margin-bottom: -1.125rem;
}

.aside-meta .elementor-widget-wrap > .elementor-element.aside-meta_language-switch-item {
  max-width: 3rem;
  display: flex;
  justify-content: flex-end;
}

@media only screen and (max-width: 767px) {
  .elementor-location-footer .elementor-widget-shortcode {
    width: 100%;
  }
}


.aside-meta .elementor-widget-wrap > .elementor-element.aside-meta_language-switch-item ul {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}
.aside-meta .aside-meta_language-switch-item ul {
  padding-left: 0 !important;
}

.aside-meta .aside-meta_language-switch-item .wpml-ls-item .wpml-ls-link .wpml-ls-display,
.aside-meta .aside-meta_language-switch-item .wpml-ls-item .wpml-ls-link .wpml-ls-native,
.aside-meta .aside-meta_language-switch-item .wpml-ls-item .wpml-ls-link .wpml-ls-flag {
  display: none;
}

.aside-meta .aside-meta_language-switch-item .wpml-ls-item .wpml-ls-link {
  padding: 0;
  border-radius: 50%;
}

.aside-meta .aside-meta_language-switch-item .wpml-ls-item.wpml-ls-item-en .wpml-ls-link {
  background-image: url("https://bachner-usa.com/wp-content/uploads/2023/03/en.svg");
}

.aside-meta .aside-meta_language-switch-item .wpml-ls-item.wpml-ls-item-es .wpml-ls-link {
  /* background-image: url("https://bachner-usa.com/wp-content/uploads/2023/03/es.svg"); */
	background-image: url("https://bachner-usa.com/wp-content/uploads/2024/01/flag_mx.svg");
}

.aside-meta .aside-meta_language-switch-item .wpml-ls-item .wpml-ls-link::before {
  content: "";
  display: block;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
}

.aside-meta .aside-meta_language-switch-item .wpml-ls-item:not(.wpml-ls-current-language) .wpml-ls-link::before {
  background-color: var( --e-global-color-2b7b51a );
}

.aside-meta .aside-meta_language-switch-item .wpml-ls-item .wpml-ls-link:hover::before {
  background-color: transparent;
}

.elementor-nav-menu .aside-meta {
  display: block;
}

.elementor-nav-menu .aside-meta .elementor-widget-wrap {
  justify-content: flex-start;
}

.elementor-nav-menu .aside-meta .elementor-widget-wrap > .elementor-element .elementor-icon {
  font-size: 24px;
  all: unset;
  display: inline-block;
  width: 100%;
}

.elementor-nav-menu .aside-meta .elementor-widget-wrap > .elementor-element svg {
  width: 2rem;
  height: 2rem;
  display: block;
}

.elementor-nav-menu .aside-meta .wpml-ls-legacy-list-horizontal {
  padding: 0;
}

.elementor-nav-menu .aside-meta .elementor-widget-wrap > .elementor-element.aside-meta_language-switch-item {
  max-width: 4.25rem;
}

.clone-aside-meta > a {
  display: none !important;
}

/* Page Header */

.page-header > .elementor-container {
  flex-wrap: wrap;
  align-content: flex-end;
}

.page-header .elementor-heading-title {
  margin-bottom: 0;
  font-size: var( --font-size-h2 );
}

.page-header .elementor-inner-column {
  width: auto;
}

/* Services Einstiegsseite */
@media only screen and (max-width: 767px) {
  .services-categorie-slider {
    overflow: hidden;
    padding-bottom: 60px;
  }

  .services-categorie-slider .swiper-container .swiper-slide .elementor-column:first-of-type {
    min-height: 220px;
  }

  .services-categorie-slider .swiper-container .elementor-swiper-button.elementor-swiper-button-prev,
  .services-categorie-slider .swiper-container .elementor-swiper-button.elementor-swiper-button-next  {
    top: auto;
    bottom: -60px;
    color: var( --e-global-color-2b7b51a );
  }

  .services-categorie-slider .swiper-container .elementor-swiper-button.elementor-swiper-button-prev  {
    left: 30%;
  }

  .services-categorie-slider .swiper-container .elementor-swiper-button.elementor-swiper-button-next  {
    right: 30%;
  }

  .services-categorie-slider .services-categorie-slider_content-col {
    padding: 10px 0 !important;
  }
}


/* Services */
.container-services .elementor-loop-container.elementor-grid {
  grid-row-gap: 0;
}

.container-services .elementor-loop-container .e-loop-item .services-item {
  max-width: 1340px;
  margin: 0 auto;
  padding-top: 50px;
  padding-bottom: 50px;
}

.container-services .elementor-loop-container .e-loop-item:nth-child(odd) {
  background-color: var( --e-global-color-48e0971 );
}

.container-services .elementor-loop-container .services-item_image {
  padding: 0 2rem 2rem 2rem;
}

@media only screen and (max-width: 767px) {
  .container-services .elementor-loop-container .e-loop-item .elementor-container .elementor-column {
    width: 100%;
  }
}

@media only screen and (min-width: 768px) {
  .container-services .elementor-loop-container .e-loop-item:nth-child(odd) .elementor-container .elementor-column:first-child {
    order: 1;
  }

  .container-services .elementor-loop-container .services-item_image {
    padding: 0 2rem;
  }
}

@media only screen and (min-width: 1500px) {
  .container-services .elementor-loop-container .e-loop-item:nth-child(odd) .elementor-widget-wrap {
    padding-left: 0;
  }

  .container-services .elementor-loop-container .services-item_image {
    padding: 0;
  }
}

.services-navigation .elementor-loop-container {
  display: block;
  text-align: center;
}

.services-navigation .elementor-loop-container .e-loop-item {
  display: inline-block;
}

.services-navigation .elementor-loop-container .e-loop-item .elementor-widget-button {
  margin-bottom: 1.25em !important;
  margin-right: 1em !important;
}

/* Services Navigation linksbündig */
.services-navigation .elementor-loop-container {
    text-align: left;
}
