.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-20911 .elementor-element.elementor-element-7c94addc{--e-nav-menu-horizontal-menu-item-margin:calc( 2rem / 2 );}.elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:2rem;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for nav-menu, class: .elementor-element-7c94addc */& .elementor-nav-menu .elementor-item { font-family: 'PP FramaText', Sans-serif; font-weight: 500; color: #000000; text-decoration: none; } & .elementor-nav-menu .elementor-item:hover, & .elementor-nav-menu .elementor-item:focus { color: #5F6F6A; } & .elementor-nav-menu .elementor-item.elementor-item-active { color: #1F1F1F; } & .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child) { margin-bottom: 2rem; } @media (max-width: 1280px) { margin-bottom: 3rem; text-align: right; & .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child) { margin-bottom: 2.25rem; } & .elementor-nav-menu a.elementor-item { justify-content: flex-end; text-align: right; padding: 0; font-size: 38px; line-height: 1.15; font-weight: 500; text-shadow: none; } & .elementor-nav-menu a, & .elementor-nav-menu a *, & .elementor-nav-menu a:hover, & .elementor-nav-menu a:focus, & .elementor-nav-menu a:visited, & .elementor-nav-menu a.elementor-item-active, & .elementor-nav-menu .current-menu-item > a, & .elementor-nav-menu .lang-item a { color: #FFFFFF !important; fill: #FFFFFF; } }/* End custom CSS */
/* Start custom CSS */@keyframes iox-slide-in-right { from { opacity: 0; transform: translateX(48px); } to { opacity: 1; transform: translateX(0); } }

/* ===== Desktop-Navigation: Unterstrich-Animation ===== */
.elementor-20911 a.DUP_navbar-button24652 { position: relative; }
.elementor-20911 a.DUP_navbar-button24652,
.elementor-20911 a.DUP_navbar-button24652:hover,
.elementor-20911 a.DUP_navbar-button24652:focus,
.elementor-20911 a.DUP_navbar-button24652:focus-visible { text-decoration: none !important; box-shadow: none; }
.elementor-20911 a.DUP_navbar-button24652::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2px;
  height: 2px;
  background: #000000;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .25s ease;
  pointer-events: none;
}
.elementor-20911 a.DUP_navbar-button24652:hover::after,
.elementor-20911 a.DUP_navbar-button24652:focus-visible::after { transform: scaleX(1); }
/* Aktuelle Seite: dauerhafter Unterstrich (nicht auf der Startseite) */
/* Services 18509 */
body.page-id-18509 .elementor-20911 a.DUP_navbar-button24652.e-43f9b4e3-4cb0::after,
/* About IOX 18494 */
body.page-id-18494 .elementor-20911 a.DUP_navbar-button24652.e-63d33fba-b681::after,
/* Projects: Uebersicht 19879 und Unterseiten */
body.page-id-19879 .elementor-20911 a.DUP_navbar-button24652.e-306feba9-36f6::after,
body.parent-pageid-19879 .elementor-20911 a.DUP_navbar-button24652.e-306feba9-36f6::after,
/* Insights 19785, Unterseiten, IoT Technology Blog 19950, Blogbeitraege und Blog-Archive */
body.page-id-19785 .elementor-20911 a.DUP_navbar-button24652.e-4e3665ed-54ed::after,
body.parent-pageid-19785 .elementor-20911 a.DUP_navbar-button24652.e-4e3665ed-54ed::after,
body.page-id-19950 .elementor-20911 a.DUP_navbar-button24652.e-4e3665ed-54ed::after,
body.single-post .elementor-20911 a.DUP_navbar-button24652.e-4e3665ed-54ed::after,
body.archive .elementor-20911 a.DUP_navbar-button24652.e-4e3665ed-54ed::after { transform: scaleX(1); }

/* ===== Dunkle Seiten: Services 18509, About IOX 18494, Insights 19785, Contact 18515 ===== */
.elementor-20911 img[src*="IOX-Logo-1-1.svg"],
.elementor-20911 img[src*="logo-2-white-1.svg"] { display: none !important; }
body.page-id-18509 .elementor-20911 :has(> * > img[src*="IOX-Logo-1-1.svg"]) img[src*="IOX_Logo_SVG-1-1-1.svg"],
body.page-id-18494 .elementor-20911 :has(> * > img[src*="IOX-Logo-1-1.svg"]) img[src*="IOX_Logo_SVG-1-1-1.svg"],
body.page-id-19785 .elementor-20911 :has(> * > img[src*="IOX-Logo-1-1.svg"]) img[src*="IOX_Logo_SVG-1-1-1.svg"],
body.page-id-18515 .elementor-20911 :has(> * > img[src*="IOX-Logo-1-1.svg"]) img[src*="IOX_Logo_SVG-1-1-1.svg"],
body.page-id-18509 .elementor-20911 :has(> img[src*="logo-2-white-1.svg"]) > img[src*="21eadbd0-6911"],
body.page-id-18494 .elementor-20911 :has(> img[src*="logo-2-white-1.svg"]) > img[src*="21eadbd0-6911"],
body.page-id-19785 .elementor-20911 :has(> img[src*="logo-2-white-1.svg"]) > img[src*="21eadbd0-6911"],
body.page-id-18515 .elementor-20911 :has(> img[src*="logo-2-white-1.svg"]) > img[src*="21eadbd0-6911"] { display: none !important; }
body.page-id-18509 .elementor-20911 img[src*="IOX-Logo-1-1.svg"],
body.page-id-18494 .elementor-20911 img[src*="IOX-Logo-1-1.svg"],
body.page-id-19785 .elementor-20911 img[src*="IOX-Logo-1-1.svg"],
body.page-id-18515 .elementor-20911 img[src*="IOX-Logo-1-1.svg"],
body.page-id-18509 .elementor-20911 img[src*="logo-2-white-1.svg"],
body.page-id-18494 .elementor-20911 img[src*="logo-2-white-1.svg"],
body.page-id-19785 .elementor-20911 img[src*="logo-2-white-1.svg"],
body.page-id-18515 .elementor-20911 img[src*="logo-2-white-1.svg"] { display: block !important; }

/* Desktop-Navigation auf dunklen Seiten */
body.page-id-18509 .elementor-20911 a.DUP_navbar-button24652,
body.page-id-18494 .elementor-20911 a.DUP_navbar-button24652,
body.page-id-19785 .elementor-20911 a.DUP_navbar-button24652,
body.page-id-18515 .elementor-20911 a.DUP_navbar-button24652,
body.page-id-18509 .elementor-20911 a.DUP_navbar-button24652:hover,
body.page-id-18494 .elementor-20911 a.DUP_navbar-button24652:hover,
body.page-id-19785 .elementor-20911 a.DUP_navbar-button24652:hover,
body.page-id-18515 .elementor-20911 a.DUP_navbar-button24652:hover { color: #FFFFFF !important; }
body.page-id-18509 .elementor-20911 a.DUP_navbar-button24652::after,
body.page-id-18494 .elementor-20911 a.DUP_navbar-button24652::after,
body.page-id-19785 .elementor-20911 a.DUP_navbar-button24652::after,
body.page-id-18515 .elementor-20911 a.DUP_navbar-button24652::after { background: #FFFFFF !important; }
body.page-id-18509 .elementor-20911 a.e-2e37658b-434d,
body.page-id-18494 .elementor-20911 a.e-2e37658b-434d,
body.page-id-19785 .elementor-20911 a.e-2e37658b-434d,
body.page-id-18515 .elementor-20911 a.e-2e37658b-434d { border: 1px solid #DDC3AA !important; }

/* Overlay-Menue fuer alle Burger-Breakpoints (bis 1280px) */
@media (max-width: 1280px) {
  .elementor-20911 summary > * { margin-left: auto !important; width: auto !important; flex: 0 0 auto !important; display: flex !important; justify-content: flex-end !important; }
  .elementor-20911 summary img { width: auto !important; max-width: none !important; height: 52px !important; aspect-ratio: 48.78 / 15; object-fit: cover; object-position: left center; }

  .elementor-20911 details[open] > summary img { opacity: 0 !important; visibility: hidden !important; }
  .elementor-20911 details[open] > summary::before,
  .elementor-20911 details[open] > summary::after { content: '' !important; display: block !important; position: absolute !important; top: 50% !important; bottom: auto !important; left: auto !important; right: 0 !important; inset-inline-start: auto !important; margin: 0 !important; width: 32px !important; height: 2px !important; border-radius: 2px; background-color: #FFFFFF !important; pointer-events: none; }
  .elementor-20911 details[open] > summary::before { transform: translateY(-50%) rotate(45deg) !important; }
  .elementor-20911 details[open] > summary::after { transform: translateY(-50%) rotate(-45deg) !important; }

  .elementor-20911 details > summary + * { padding-right: 40px !important; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); overflow-x: hidden !important; opacity: 0; transition: opacity .3s ease; }
  .elementor-20911 details[open] > summary + * { opacity: 1; }
  @starting-style { .elementor-20911 details[open] > summary + * { opacity: 0; } }

  .elementor-20911 .elementor-element.elementor-element-7c94addc { margin-right: 15px !important; }
  .elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu a.elementor-item { font-size: 32.2px !important; }

  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li { animation: iox-slide-in-right .5s cubic-bezier(.22,.61,.36,1) both; }
  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li:nth-child(1) { animation-delay: .15s; }
  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li:nth-child(2) { animation-delay: .25s; }
  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li:nth-child(3) { animation-delay: .35s; }
  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li:nth-child(4) { animation-delay: .45s; }
  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li:nth-child(5) { animation-delay: .55s; }
  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li:nth-child(6) { animation-delay: .65s; }
  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li:nth-child(7) { animation-delay: .75s; }
  .elementor-20911 details[open] .e-86b9b65-832c { animation: iox-slide-in-right .5s cubic-bezier(.22,.61,.36,1) .7s both; }

  .elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu li.menu-kontakt > a,
  .elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu li > a[href*="/kontakt"],
  .elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu li > a[href*="/contact"],
  .elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu li.menu-kontakt > a:hover,
  .elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu li > a[href*="/kontakt"]:hover,
  .elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu li > a[href*="/contact"]:hover { color: #B06A4A !important; }

  .elementor-20911 .elementor-element.elementor-element-7c94addc .elementor-nav-menu li.lang-item { display: none !important; }

  /* Sprach-Button: nur Deutschland-Flagge, Text 'Deutsch' visuell ausgeblendet (bleibt fuer Screenreader) */
  .elementor-20911 .e-86b9b65-832c {
    display: block !important; width: 33.2px !important; height: 22.5px !important; padding: 0 !important;
    margin-top: 2.25rem !important; margin-right: 15px !important;
    font-size: 0 !important; line-height: 0 !important; color: transparent !important; overflow: hidden;
    border-radius: 3px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 3' preserveAspectRatio='none'%3E%3Cpath d='M0 0h5v3H0z'/%3E%3Cpath fill='%23DD0000' d='M0 1h5v2H0z'/%3E%3Cpath fill='%23FFCE00' d='M0 2h5v1H0z'/%3E%3C/svg%3E") !important;
    background-size: 100% 100% !important; background-position: center !important; background-repeat: no-repeat !important;
  }
}

@media (min-width: 1025px) and (max-width: 1280px) {
  .elementor-20911 .elementor-element-7c94addc .elementor-nav-menu--main a.elementor-item { position: relative; width: fit-content; margin-left: auto; }
  .elementor-20911 .elementor-element-7c94addc .elementor-nav-menu--main a.elementor-item::after {
    content: '' !important; position: absolute !important; left: 0 !important; right: 0 !important; top: auto !important; bottom: 0 !important; width: auto !important; height: 2px !important; background: currentColor !important; opacity: 1 !important; transform: scaleX(0); transform-origin: left; transition: transform .25s ease !important;
  }
  .elementor-20911 .elementor-element-7c94addc .elementor-nav-menu--main a.elementor-item:hover::after,
  .elementor-20911 .elementor-element-7c94addc .elementor-nav-menu--main a.elementor-item:focus-visible::after { transform: scaleX(1); }
}

@media (max-width: 767px) {
  .elementor-20911 details > summary + * { padding-right: 25px !important; }
  .elementor-20911 summary img { height: 39px !important; }
}

@media (max-width: 1280px) and (prefers-reduced-motion: reduce) {
  .elementor-20911 details[open] .elementor-element-7c94addc .elementor-nav-menu--main .elementor-nav-menu > li,
  .elementor-20911 details[open] .e-86b9b65-832c { animation: none !important; }
}

/* ===== Scroll: Navbar uebernimmt beim Scrollen die Hero-Farbe der Seite ===== */
.elementor-20911 .elementor-element-4b10c640 { --iox-header-bg: #F4F2EE; }
body.page-id-18509 .elementor-20911 .elementor-element-4b10c640,
body.page-id-18515 .elementor-20911 .elementor-element-4b10c640 { --iox-header-bg: #5F6F6A; }
body.page-id-18494 .elementor-20911 .elementor-element-4b10c640 { --iox-header-bg: #464646; }
body.page-id-19785 .elementor-20911 .elementor-element-4b10c640 { --iox-header-bg: #1F1F1F; }
@keyframes iox-header-bg { from { background-color: transparent; } to { background-color: var(--iox-header-bg); } }
@supports (animation-timeline: scroll()) {
  .elementor-20911 .elementor-element-4b10c640 { animation: iox-header-bg linear both; animation-timeline: scroll(root block); animation-range: 0px 60px; }
}
@supports not (animation-timeline: scroll()) {
  .elementor-20911 .elementor-element-4b10c640 { background-color: var(--iox-header-bg); }
}
.elementor-20911 .elementor-element-4b10c640.iox-js { animation: none !important; background-color: transparent !important; transition: background-color .3s ease; }
.elementor-20911 .elementor-element-4b10c640.iox-js.iox-scrolled { background-color: var(--iox-header-bg) !important; }/* End custom CSS */