/*
 Theme Name:    Olbricht-IT Child-Theme
 Theme URI:     
 Description:   
 Author:        OIT
 Author URI:    https://olbricht.it
 Template:      Divi
 Version: 1.4.68
 Text Domain:   Olbricht-IT Child-Theme
*/

/***********************************************************************
 ***                     Schriftarten festlegen                      ***
 ***********************************************************************/

/* Titel Fonts*/
h1:where(:not(#oit-home-host *),[slot],[slot] *), h2:where(:not(#oit-home-host *),[slot],[slot] *), h3:where(:not(#oit-home-host *),[slot],[slot] *), h4:where(:not(#oit-home-host *),[slot],[slot] *), h5:where(:not(#oit-home-host *),[slot],[slot] *), h6:where(:not(#oit-home-host *),[slot],[slot] *){
	font-family: "Dosis" !important;
}

/*Text Fonts*/
html:where(:not(#oit-home-host *),[slot],[slot] *), body:where(:not(#oit-home-host *),[slot],[slot] *), div:where(:not(#oit-home-host *),[slot],[slot] *), applet:where(:not(#oit-home-host *),[slot],[slot] *), object:where(:not(#oit-home-host *),[slot],[slot] *), iframe:where(:not(#oit-home-host *),[slot],[slot] *), 
p:where(:not(#oit-home-host *),[slot],[slot] *), blockquote:where(:not(#oit-home-host *),[slot],[slot] *), pre:where(:not(#oit-home-host *),[slot],[slot] *), a:where(:not(#oit-home-host *),[slot],[slot] *), abbr:where(:not(#oit-home-host *),[slot],[slot] *), acronym:where(:not(#oit-home-host *),[slot],[slot] *), address:where(:not(#oit-home-host *),[slot],[slot] *), 
big:where(:not(#oit-home-host *),[slot],[slot] *), cite:where(:not(#oit-home-host *),[slot],[slot] *), code:where(:not(#oit-home-host *),[slot],[slot] *), del:where(:not(#oit-home-host *),[slot],[slot] *), dfn:where(:not(#oit-home-host *),[slot],[slot] *), em:where(:not(#oit-home-host *),[slot],[slot] *), img:where(:not(#oit-home-host *),[slot],[slot] *), ins:where(:not(#oit-home-host *),[slot],[slot] *), kbd:where(:not(#oit-home-host *),[slot],[slot] *), q:where(:not(#oit-home-host *),[slot],[slot] *), 
s:where(:not(#oit-home-host *),[slot],[slot] *), samp:where(:not(#oit-home-host *),[slot],[slot] *), small:where(:not(#oit-home-host *),[slot],[slot] *), strike:where(:not(#oit-home-host *),[slot],[slot] *), strong:where(:not(#oit-home-host *),[slot],[slot] *), sub:where(:not(#oit-home-host *),[slot],[slot] *), sup:where(:not(#oit-home-host *),[slot],[slot] *), tt:where(:not(#oit-home-host *),[slot],[slot] *), var:where(:not(#oit-home-host *),[slot],[slot] *),
b:where(:not(#oit-home-host *),[slot],[slot] *), u:where(:not(#oit-home-host *),[slot],[slot] *), center:where(:not(#oit-home-host *),[slot],[slot] *), dl:where(:not(#oit-home-host *),[slot],[slot] *), dt:where(:not(#oit-home-host *),[slot],[slot] *), dd:where(:not(#oit-home-host *),[slot],[slot] *), ol:where(:not(#oit-home-host *),[slot],[slot] *), ul:where(:not(#oit-home-host *),[slot],[slot] *), li:where(:not(#oit-home-host *),[slot],[slot] *),
fieldset:where(:not(#oit-home-host *),[slot],[slot] *), form:where(:not(#oit-home-host *),[slot],[slot] *), label:where(:not(#oit-home-host *),[slot],[slot] *), legend:where(:not(#oit-home-host *),[slot],[slot] *),
table:where(:not(#oit-home-host *),[slot],[slot] *), caption:where(:not(#oit-home-host *),[slot],[slot] *), tbody:where(:not(#oit-home-host *),[slot],[slot] *), tfoot:where(:not(#oit-home-host *),[slot],[slot] *), thead:where(:not(#oit-home-host *),[slot],[slot] *), tr:where(:not(#oit-home-host *),[slot],[slot] *), th:where(:not(#oit-home-host *),[slot],[slot] *), td:where(:not(#oit-home-host *),[slot],[slot] *),
article:where(:not(#oit-home-host *),[slot],[slot] *), aside:where(:not(#oit-home-host *),[slot],[slot] *), canvas:where(:not(#oit-home-host *),[slot],[slot] *), details:where(:not(#oit-home-host *),[slot],[slot] *), embed:where(:not(#oit-home-host *),[slot],[slot] *),
figure:where(:not(#oit-home-host *),[slot],[slot] *), figcaption:where(:not(#oit-home-host *),[slot],[slot] *), footer:where(:not(#oit-home-host *),[slot],[slot] *), header:where(:not(#oit-home-host *),[slot],[slot] *), hgroup:where(:not(#oit-home-host *),[slot],[slot] *),
menu:where(:not(#oit-home-host *),[slot],[slot] *), nav:where(:not(#oit-home-host *),[slot],[slot] *), output:where(:not(#oit-home-host *),[slot],[slot] *), ruby:where(:not(#oit-home-host *),[slot],[slot] *), section:where(:not(#oit-home-host *),[slot],[slot] *), summary:where(:not(#oit-home-host *),[slot],[slot] *),
time:where(:not(#oit-home-host *),[slot],[slot] *), mark:where(:not(#oit-home-host *),[slot],[slot] *), audio:where(:not(#oit-home-host *),[slot],[slot] *), video:where(:not(#oit-home-host *),[slot],[slot] *){
	font-family: "Dosis" !important;
}

body:where(:not(#oit-home-host *),[slot],[slot] *), html:where(:not(#oit-home-host *),[slot],[slot] *){
    overflow-x: hidden; /* verhindert seitliches Scrollen */
}
/***********************************************************************
 ***                  Schriftgrößen Festlegen.                       ***
 ***********************************************************************/
/* Grundstil Desktop */
h1:where(:not(#oit-home-host *),[slot],[slot] *){
  font-size: 5.3rem!important;
  font-weight: 600!important;
  line-height: 1.2!important;
  text-transform: none!important;
  color:white!important;
}
h2:where(:not(#oit-home-host *),[slot],[slot] *){
  font-size: 4rem!important;
  font-weight: 600!important;
  line-height: 1.2!important;
  text-transform: none!important;
  color:white;
}
h3:where(:not(#oit-home-host *),[slot],[slot] *){
  font-size: 2.5rem!important;
  font-weight: 600!important;
  line-height: 1.2!important;
  text-transform: none!important;
  color:white;
}
h4:where(:not(#oit-home-host *),[slot],[slot] *){
  font-size: 2rem!important;
  font-weight: 600!important;
  line-height: 1.2!important;
  text-transform: uppercase!important;
  color:white;
}

/* Tablet (max 1024px) */
@media (max-width: 1024px) {
  h1:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 4rem!important;
  }
  h2:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 3.2rem!important;
  }
  h3:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 2.2rem!important;
  }
  h4:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 1.8rem!important;
  }
  .intro-text:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 2.2rem!important;
  }
  .body-text:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 1.5rem!important;
  }
}

/* Smartphone (max 768px) */
@media (max-width: 768px) {
  h1:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 2.56rem !important; /* vorher 3.2rem */
  }
  h2:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 2.08rem !important; /* vorher 2.6rem */
  }
  h3:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 1.6rem !important;  /* vorher 2rem */
  }
  h4:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 1.28rem !important; /* vorher 1.6rem */
  }
  .intro-text:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 1.6rem !important;  /* vorher 2rem */
  }
  .body-text:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 1.12rem !important; /* vorher 1.4rem */
  }
}


/***********************************************************************
 ***                  Benutzerdefinierte Aenderungen                 ***
 ***********************************************************************/

/* Tag-Wolke für News-Seite */
.oit-tag-cloud:where(:not(#oit-home-host *),[slot],[slot] *){
    background-color: #222222;
    padding: 30px;
    border-radius: 8px;
    margin: 40px 0;
    text-align: center;
}

.oit-tag-cloud h3:where(:not(#oit-home-host *),[slot],[slot] *){
    color: #ffffff !important;
    font-size: 24px !important;
    margin-bottom: 20px !important;
    text-align: center;
}

.oit-tag-cloud .wp-tag-cloud:where(:not(#oit-home-host *),[slot],[slot] *){
    line-height: 2;
}

/* Alle Tag-Links in der Tag-Wolke - sehr spezifisch */
.oit-tag-cloud .wp-tag-cloud a:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud a:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tagcloud a:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .wp-tag-cloud .tag-cloud-link:where(:not(#oit-home-host *),[slot],[slot] *){
    display: inline-block !important;
    background-color: #555555 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    padding: 4px 8px !important;
    margin: 4px !important;
    border-radius: 3px !important;
    transition: all 0.3s ease !important;
    font-weight: normal !important;
    font-size: 14px !important;
    border: none !important;
    box-shadow: none !important;
}

.oit-tag-cloud .wp-tag-cloud a:hover:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud a:hover:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tagcloud a:hover:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .wp-tag-cloud .tag-cloud-link:hover:where(:not(#oit-home-host *),[slot],[slot] *){
    background-color: #666666 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3) !important;
}

/* WordPress Standard Tag-Größen komplett überschreiben */
.oit-tag-cloud .wp-tag-cloud a[style*="font-size"]:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud a[style*="font-size"]:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tagcloud a[style*="font-size"]:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 14px !important;
}

/* Spezifische WordPress Klassen überschreiben */
.oit-tag-cloud .tag-link-1:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-2:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-3:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-4:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-5:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-6:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-7:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-8:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-9:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-tag-cloud .tag-link-10:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 14px !important;
    background-color: #555555 !important;
    padding: 4px 8px !important;
    border-radius: 3px !important;
}

/* Responsive Design */
@media (max-width: 768px) {
    .oit-tag-cloud:where(:not(#oit-home-host *),[slot],[slot] *){
        padding: 20px;
        margin: 20px 0;
    }
    
    .oit-tag-cloud .wp-tag-cloud a:where(:not(#oit-home-host *),[slot],[slot] *),
    .oit-tag-cloud a:where(:not(#oit-home-host *),[slot],[slot] *){
        padding: 4px 8px !important;
        font-size: 14px !important;
        margin: 2px !important;
    }
}

/***********************************************************************
 ***           RESPONSIVE SIDEBAR FÜR KATEGORIEN UND TAGS            ***
 ***********************************************************************/

/* Überschreibt Divi Standard-Layout für Archive-Seiten */
body.archive #main-content .container #content-area:where(:not(#oit-home-host *),[slot],[slot] *),
body.category #main-content .container #content-area:where(:not(#oit-home-host *),[slot],[slot] *),
body.tag #main-content .container #content-area:where(:not(#oit-home-host *),[slot],[slot] *),
body.single #main-content .container #content-area:where(:not(#oit-home-host *),[slot],[slot] *){
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;
}

/* Left Area für Archive */
body.archive #main-content #left-area:where(:not(#oit-home-host *),[slot],[slot] *),
body.category #main-content #left-area:where(:not(#oit-home-host *),[slot],[slot] *),
body.tag #main-content #left-area:where(:not(#oit-home-host *),[slot],[slot] *),
body.single #main-content #left-area:where(:not(#oit-home-host *),[slot],[slot] *){
    -webkit-box-flex: 1 !important;
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
    max-width: calc(100% - 340px) !important;
    width: auto !important;
}

/* Sidebar für Archive */
body.archive #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
body.category #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
body.tag #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
body.single #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *){
    -webkit-box-flex: 0 !important;
    -ms-flex: 0 0 300px !important;
    flex: 0 0 300px !important;
    width: 300px !important;
    max-width: 300px !important;
}

/* Clearfix deaktivieren für Flexbox */
body.archive #content-area.clearfix:where(:not(#oit-home-host *),[slot],[slot] *)::after,
body.category #content-area.clearfix:where(:not(#oit-home-host *),[slot],[slot] *)::after,
body.tag #content-area.clearfix:where(:not(#oit-home-host *),[slot],[slot] *)::after,
body.single #content-area.clearfix:where(:not(#oit-home-host *),[slot],[slot] *)::after,
body.archive #content-area.clearfix:where(:not(#oit-home-host *),[slot],[slot] *)::before,
body.category #content-area.clearfix:where(:not(#oit-home-host *),[slot],[slot] *)::before,
body.tag #content-area.clearfix:where(:not(#oit-home-host *),[slot],[slot] *)::before,
body.single #content-area.clearfix:where(:not(#oit-home-host *),[slot],[slot] *)::before{
    display: none !important;
    content: none !important;
}

/* Mobile Responsive - 980px Breakpoint */
@media screen and (max-width: 980px) {
    body.archive #main-content .container #content-area:where(:not(#oit-home-host *),[slot],[slot] *),
    body.category #main-content .container #content-area:where(:not(#oit-home-host *),[slot],[slot] *),
    body.tag #main-content .container #content-area:where(:not(#oit-home-host *),[slot],[slot] *),
    body.single #main-content .container #content-area:where(:not(#oit-home-host *),[slot],[slot] *){
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }
    
    body.archive #main-content #left-area:where(:not(#oit-home-host *),[slot],[slot] *),
    body.category #main-content #left-area:where(:not(#oit-home-host *),[slot],[slot] *),
    body.tag #main-content #left-area:where(:not(#oit-home-host *),[slot],[slot] *),
    body.single #main-content #left-area:where(:not(#oit-home-host *),[slot],[slot] *){
        max-width: 100% !important;
        width: 100% !important;
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 100% !important;
        flex: 1 1 100% !important;
        margin-bottom: 30px !important;
    }
    
    body.archive #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
    body.category #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
    body.tag #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
    body.single #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *){
        width: 100% !important;
        max-width: 100% !important;
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 100% !important;
        flex: 1 1 100% !important;
        margin-top: 20px !important;
        border-top: 2px solid #333333 !important;
        padding-top: 30px !important;
    }
}

/* Kleine Tablets - 767px Breakpoint */
@media screen and (max-width: 767px) {
    /* Sidebar Widget Anpassungen */
    body.archive #sidebar .widget:where(:not(#oit-home-host *),[slot],[slot] *),
    body.category #sidebar .widget:where(:not(#oit-home-host *),[slot],[slot] *),
    body.tag #sidebar .widget:where(:not(#oit-home-host *),[slot],[slot] *),
    body.single #sidebar .widget:where(:not(#oit-home-host *),[slot],[slot] *){
        padding: 0 15px !important;
    }
    
    body.archive #sidebar .widget h3:where(:not(#oit-home-host *),[slot],[slot] *),
    body.category #sidebar .widget h3:where(:not(#oit-home-host *),[slot],[slot] *),
    body.tag #sidebar .widget h3:where(:not(#oit-home-host *),[slot],[slot] *),
    body.single #sidebar .widget h3:where(:not(#oit-home-host *),[slot],[slot] *){
        font-size: 20px !important;
    }
}

/* Smartphones - 480px Breakpoint */
@media screen and (max-width: 480px) {
    /* Archive Title anpassen */
    .archive_title:where(:not(#oit-home-host *),[slot],[slot] *){
        font-size: 2.5rem !important;
        padding: 0 10px !important;
    }
    
    /* Post Artikel auf Mobile */
    body.archive article.et_pb_post:where(:not(#oit-home-host *),[slot],[slot] *),
    body.category article.et_pb_post:where(:not(#oit-home-host *),[slot],[slot] *),
    body.tag article.et_pb_post:where(:not(#oit-home-host *),[slot],[slot] *){
        padding: 15px !important;
    }
    
    /* Sidebar padding reduzieren */
    body.archive #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
    body.category #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
    body.tag #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *),
    body.single #main-content #sidebar:where(:not(#oit-home-host *),[slot],[slot] *){
        padding: 15px 10px !important;
    }
}

/***********************************************************************
 ***            MINIMALES DIVI MOBILE MENU GLASSMORPHISM             ***
 ***********************************************************************/

/* Nur Glassmorphism-Effekt für das bestehende Mobile Menu */
.et_mobile_menu:where(:not(#oit-home-host *),[slot],[slot] *){
    background: rgba(20, 20, 20, 0.95) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    /* Abgerundete Ecken unten */
    border-radius: 0 0 10px 10px !important;
    /* Subtile Ränder */
    border-left: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
    /* Box-Shadow für Tiefe */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5) !important;
}

/* Links weiß machen */
.et_mobile_menu li a:where(:not(#oit-home-host *),[slot],[slot] *){
    color: #ffffff !important;
}

/* Hover-Effekt */
.et_mobile_menu li a:hover:where(:not(#oit-home-host *),[slot],[slot] *){
    background: rgba(255, 255, 255, 0.1) !important;
}

/* Icons aufhellen */
.et_mobile_menu img:where(:not(#oit-home-host *),[slot],[slot] *){
    filter: brightness(1.5);
}

/* Plus-Zeichen für aufklappbare Menüpunkte */
.et_mobile_menu .menu-item-has-children > a:where(:not(#oit-home-host *),[slot],[slot] *):after{
    content: '+';
    float: right;
    color: rgba(255, 255, 255, 0.5);
    transition: transform 0.3s ease;
}

/* CSS-Only Lösung für Accordion */
/* Versteckt Submenüs initial */
.et_mobile_menu .sub-menu:where(:not(#oit-home-host *),[slot],[slot] *){
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

/* Zeigt Submenu bei Hover/Touch */
.et_mobile_menu .menu-item-has-children:hover > .sub-menu:where(:not(#oit-home-host *),[slot],[slot] *),
.et_mobile_menu .menu-item-has-children:focus-within > .sub-menu:where(:not(#oit-home-host *),[slot],[slot] *){
    max-height: 500px;
}

/* Macht die Links klickbar auf Touch-Geräten */
.et_mobile_menu .menu-item-has-children > a:where(:not(#oit-home-host *),[slot],[slot] *){
    pointer-events: none;
}

.et_mobile_menu .menu-item-has-children > a:where(:not(#oit-home-host *),[slot],[slot] *):after{
    pointer-events: auto;
    cursor: pointer;
    padding: 10px;
    margin: -10px;
}





/* M365 Page */

/* Layout-Wrapper */
.m365-layout:where(:not(#oit-home-host *),[slot],[slot] *){
  display: grid;
  grid-template-columns: 1fr 3fr; /* Content links (3 Teile), Sidebar rechts (1 Teil) */
  gap: 40px;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
	align-items: start; /* wichtig: verhindert Stretching */
}

.m365-sidebar:where(:not(#oit-home-host *),[slot],[slot] *){
  grid-column: 1;
  position: sticky;
  top: 100px;
  color: white;
  display: flex;
  flex-direction: column;
  gap: 30px;
}



/* Content links */
.m365-section:where(:not(#oit-home-host *),[slot],[slot] *){
  width: 100%;
  margin: 0;
  grid-column: 2; /* Content in die linke Spalte */
}

/* Titel */
.m365-title-sec h1:where(:not(#oit-home-host *),[slot],[slot] *){
  background: white;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.m365-title-sec:where(:not(#oit-home-host *),[slot],[slot] *){
  grid-column: 1 / -1; /* Überschrift über beide Spalten */
   margin: 0 auto 50px auto;
  text-align: center;
	margin-top: 20px;
  position: relative;
  font-size: 56px;
  font-weight: 500;
  letter-spacing: -0.015em;
  color: #ffffff;
  filter: brightness(1.1);
  z-index: 1;
  text-align: center;
}

.m365-title-sec:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  content: attr(data-text);
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #00cfff, #a600ff, #ff006e, #ff8800);
  filter: blur(20px) brightness(0.8);
  opacity: 0.7;
  border-radius: 100px;
  z-index: -1;
  pointer-events: none;
  background-size: 200% 200%;
  animation: gradientShift 12s ease-in-out infinite;
}

.m365-title-sec:where(:not(#oit-home-host *),[slot],[slot] *)::after{
  content: attr(data-text);
  position: absolute;
  inset: 0;
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  letter-spacing: inherit;
  background: linear-gradient(90deg, #00cfff, #a600ff, #ff006e, #ff8800);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  mix-blend-mode: color-burn;
  filter: blur(3px) brightness(1.3);
  z-index: 0;
  pointer-events: none;
  background-size: 200% 200%;
  animation: gradientShift 12s ease-in-out infinite;
}

@keyframes gradientShift {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}


/* Section Titel */
.m365-section-title img:where(:not(#oit-home-host *),[slot],[slot] *){
  width: 64px;
  height: 64px;
}
.m365-section-title:where(:not(#oit-home-host *),[slot],[slot] *){
  display: flex;
  gap: 30px;
  border-bottom: 1px solid #ff7700;
  padding-bottom: 15px;
}
.m365-img-wrapper:where(:not(#oit-home-host *),[slot],[slot] *){
  display: flex;
  width: 90px;
  height: 90px;
  justify-content: center;
  align-items: center;
  background: #1a1a1a;
  border-radius: 15px;
}

/* Description */
.m365-sec-description-text:where(:not(#oit-home-host *),[slot],[slot] *){
  color: white;
 font-size: 20px;
  margin-top: 25px;
}

/* Ansprechpartner Box */
.page-template-page-m365 .oit-ansprechpartner-box:where(:not(#oit-home-host *),[slot],[slot] *){
  width: 100%!important;
  margin-top: 25px;
}

/* Ansprechpartner Box fuer oitproducts CPT */
.single-oitproducts .oit-ansprechpartner-box:where(:not(#oit-home-host *),[slot],[slot] *){
  width: 100%;
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid #FF7700;
  border-radius: 15px;
  padding: 20px;
  backdrop-filter: blur(6.8px);
  margin-top: 25px;
}

.single-oitproducts .oit-ansprechpartner-image img:where(:not(#oit-home-host *),[slot],[slot] *){
  width: 110px;
  height: 110px;
  border-radius: 50%;
  object-fit: cover;
}

/* Glow Button fuer Ansprechpartner CTA */
.oit-glow-button:where(:not(#oit-home-host *),[slot],[slot] *){
  display: inline-block;
  padding: 12px 28px;
  font-size: 15px;
  font-weight: 600;
  color: #fff;
  background: #FF7700;
  border: none;
  border-radius: 8px;
  text-decoration: none;
  cursor: pointer;
  transition: box-shadow 0.3s ease, transform 0.2s ease;
  box-shadow: 0 0 15px rgba(255, 119, 0, 0.4), 0 0 30px rgba(255, 119, 0, 0.2);
}

.oit-glow-button:hover:where(:not(#oit-home-host *),[slot],[slot] *){
  box-shadow: 0 0 20px rgba(255, 119, 0, 0.6), 0 0 45px rgba(255, 119, 0, 0.35), 0 0 60px rgba(255, 119, 0, 0.15);
  transform: translateY(-1px);
  color: #fff;
}

/* Ansprechpartner Contact Info Icons Alignment */
.oit-ansprechpartner-contact-info a:where(:not(#oit-home-host *),[slot],[slot] *){
  display: flex;
  align-items: center;
  gap: 8px;
  color: #ccc;
  text-decoration: none;
  transition: color 0.2s ease;
}

.oit-ansprechpartner-contact-info a:hover:where(:not(#oit-home-host *),[slot],[slot] *){
  color: #FF7700;
}

.oit-ansprechpartner-contact-info:where(:not(#oit-home-host *),[slot],[slot] *){
    display: flex;
    gap: 25px;
    margin: 20px 0;
    font-size: 20px;
    flex-wrap: wrap;
}

/* Advantages */
.m365-components-advantages:where(:not(#oit-home-host *),[slot],[slot] *){
  display: flex;
  gap: 30px;
  margin-top: 25px;
}
.m365-components-advantages-box:where(:not(#oit-home-host *),[slot],[slot] *){
  width: 50%;
  color: white;
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 15px;
  padding: 20px;
  backdrop-filter: blur(6.8px);
}

.oit-ansprechpartner-info-box p:where(:not(#oit-home-host *),[slot],[slot] *){
    margin: 0 0 20px 0;
    font-size: 20px;
    font-weight: 500;
}

/* Sub-Sections */
.m365-sub-section-title:where(:not(#oit-home-host *),[slot],[slot] *){
  display: flex;
  gap: 30px;
  margin-top: 25px;
}
.m365-sub-img-wrapper:where(:not(#oit-home-host *),[slot],[slot] *){
  display: flex;
  width: 60px;
  height: 60px;
  justify-content: center;
  align-items: center;
  background: #1a1a1a;
  border-radius: 15px;
}
.m365-sub-section-title img:where(:not(#oit-home-host *),[slot],[slot] *){
  width: 42px;
  height: 42px;
}
.m365-sub-section-title h4:where(:not(#oit-home-host *),[slot],[slot] *){
  display: flex;
  align-items: center;
}
.m365-sub-section-sub-title h6:where(:not(#oit-home-host *),[slot],[slot] *){
  color: white;
  font-size: 26px;
}
.m365-sub-section-sub-title:where(:not(#oit-home-host *),[slot],[slot] *){
  margin-top: 25px;
}
.m365-sub-section-sub-title p:where(:not(#oit-home-host *),[slot],[slot] *){
  color: white;
 font-size: 20px;
}
.m365-sub-section:where(:not(#oit-home-host *),[slot],[slot] *){
  margin-bottom: 50px;
}
	.page-template-page-m365 .my-orange-button:where(:not(#oit-home-host *),[slot],[slot] *){
		text-transform: none!important;
		margin: 20px 0;
	}

.page-template-page-m365 .project-item.shifted:where(:not(#oit-home-host *),[slot],[slot] *){
top:0px !important;
}

.power-plattform-sec-1:where(:not(#oit-home-host *),[slot],[slot] *){
	padding-top: 0px!important;
}
/* Responsive Anpassung für Handy */
@media (max-width: 1200px) {
  .m365-layout:where(:not(#oit-home-host *),[slot],[slot] *){
    grid-template-columns: 1fr; /* nur eine Spalte */
    gap: 20px; /* kleineres Gap */
    padding: 0 30px;
  }

  .m365-sidebar:where(:not(#oit-home-host *),[slot],[slot] *){
    display: none; /* Sidebar ausblenden */
  }

  .m365-section:where(:not(#oit-home-host *),[slot],[slot] *){
    grid-column: 1; /* Content nutzt volle Breite */
  }

  .m365-title-sec:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 36px; /* kleinere Schrift für Titel */
    margin-bottom: 30px;
  }

  .m365-sub-section-sub-title h6:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 20px;
  }

  .m365-sub-section-sub-title p:where(:not(#oit-home-host *),[slot],[slot] *),
  .m365-sec-description-text:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 18px;
  }
}

/* Versteckt NUR eine Section ohne Rows/Module in EN */
html[lang="en"] #et-main-area > .et_pb_section:not(:has(.et_pb_row, .et_pb_module, img, iframe, video)):where(:not(#oit-home-host *),[slot],[slot] *){
  display: none;
}


.et_pb_section_1:where(:not(#oit-home-host *),[slot],[slot] *){
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}

/*
 * 
 * OIT Menü CustomCss
 * 
 */

.nav li ul:where(:not(#oit-home-host *),[slot],[slot] *){
	border: 1px solid #444!important;
}
.oit-menu .nav li ul:where(:not(#oit-home-host *),[slot],[slot] *){
    border-top-width: 1px !important;
}
/* === OIT Mega Dropdown: 2nd+3rd Level in ONE box === */
.oit-menu-first-level:where(:not(#oit-home-host *),[slot],[slot] *){
	font-size: 20px!important;
}
.oit-menu-second-level:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-menu-third-level:where(:not(#oit-home-host *),[slot],[slot] *){
	font-size: 15px!important;
}
.oit-menu-third-level a:hover:where(:not(#oit-home-host *),[slot],[slot] *){
	text-decoration: underline;
}
/* =========================================================
   OIT Divi Mega-Submenu (2nd+3rd Level in einer Box)
   - 2nd Level nebeneinander, 3rd Level darunter
   - Dropdown bleibt stabil beim Navigieren (Hover-Puffer)
   - Dropdown erscheint zentriert unter dem Hauptmenü
   ========================================================= */

/* Bezugspunkt für zentrierte Dropdowns = gesamtes Menü */
.oit-menu .et-menu-nav:where(:not(#oit-home-host *),[slot],[slot] *){
  position: relative;
}

/* First-Level LI soll NICHT der Bezugspunkt sein */
.oit-menu .et-menu.nav > li.oit-menu-first-level:where(:not(#oit-home-host *),[slot],[slot] *){
  position: static !important;
}

/* Basis-Layout für Dropdown (Box) */
.oit-menu .et-menu.nav > li.oit-menu-first-level > ul.sub-menu:where(:not(#oit-home-host *),[slot],[slot] *){
  /* Position: immer mittig unter dem Hauptmenü */
  position: absolute !important;
  top: calc(100% + 10px) !important; /* Abstand nach unten */
  left: 50% !important;
  transform: translateX(-50%);

  /* Größe / Layout */
  width: fit-content;
  max-width: min(1100px, 92vw);
  padding: 18px 18px 14px;
  border-top-width: 1px !important;

  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px 18px;
  align-items: start;

  /* Sichtbarkeit: default aus, per Hover an */
  display: none !important;
  z-index: 9999;
}

/* Dropdown sichtbar beim Hover/Focus */
.oit-menu .et-menu.nav > li.oit-menu-first-level:hover > ul.sub-menu:where(:not(#oit-home-host *),[slot],[slot] *),
.oit-menu .et-menu.nav > li.oit-menu-first-level:focus-within > ul.sub-menu:where(:not(#oit-home-host *),[slot],[slot] *){
  display: grid !important;
}

/* Hover-Puffer: schließt die "Luft" zwischen Menü und Dropdown */
.oit-menu .et-menu.nav > li.oit-menu-first-level > ul.sub-menu:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -12px;
  height: 12px;
}

/* Second-Level = Spalte */
.oit-menu .et-menu.nav > li.oit-menu-first-level > ul.sub-menu > li.oit-menu-second-level:where(:not(#oit-home-host *),[slot],[slot] *){
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
}

/* Second-Level Titel */
.oit-menu .et-menu.nav > li.oit-menu-first-level > ul.sub-menu > li.oit-menu-second-level > a:where(:not(#oit-home-host *),[slot],[slot] *){
  display: block;
  font-weight: 700;
  padding: 6px 8px 10px;
  line-height: 1.2;
}

/* Third-Level UL bleibt darunter (kein Flyout) */
.oit-menu .et-menu.nav > li.oit-menu-first-level > ul.sub-menu > li.oit-menu-second-level > ul.sub-menu:where(:not(#oit-home-host *),[slot],[slot] *){
  position: static !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 0 6px;
  margin: 0;
  width: auto !important;
}

/* Third-Level Links */
.oit-menu .et-menu.nav > li.oit-menu-first-level > ul.sub-menu > li.oit-menu-second-level > ul.sub-menu > li > a:where(:not(#oit-home-host *),[slot],[slot] *){
  display: block;
  padding: 7px 8px;
  line-height: 1.25;
  white-space: normal;
	font-weight: 600;
  overflow-wrap: anywhere;
}

/* Divi Pfeile/Flyout-Indicator auf Second-Level ausblenden */
.oit-menu .et-menu.nav > li.oit-menu-first-level > ul.sub-menu > li.oit-menu-second-level.menu-item-has-children > a:first-child:where(:not(#oit-home-host *),[slot],[slot] *):after{
  display: none !important;
}

/* Falls Divi noch versucht Second-Level Dropdowns beim Hover "seitlich" zu positionieren */
.oit-menu .et-menu.nav > li.oit-menu-first-level > ul.sub-menu > li.oit-menu-second-level:hover > ul.sub-menu:where(:not(#oit-home-host *),[slot],[slot] *){
  left: auto !important;
  top: auto !important;
}

/* =========================================================
   OIT Menu Icons (Third Level, Klassen am <li>)
   Usage:
   <li class="oit-menu-third-level ... oit-menu-icon oit-menu-icon-1">
     <a href="...">Text</a>
   </li>
   ========================================================= */

/* Basis: Link bekommt Icon links */
.oit-menu li.oit-menu-third-level.oit-menu-icon > a:where(:not(#oit-home-host *),[slot],[slot] *){
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
}

/* Icon-Box */
.oit-menu li.oit-menu-third-level.oit-menu-icon > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  content: "";
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  /* optional für leichte optische Anpassung */
  opacity: 0.95;
}

/* ---- Nummerierte Varianten: hier nur URLs eintragen ---- */

/* Leistungen Icons */

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-1 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_Support.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-2 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/OIT_KI-1.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-3 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_M365.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-4 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_Hardware.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-5 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/07/25_OIT_Icons_hellblau_CRM.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-6 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_ff7700_Web.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-7 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_pink_Pulse.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-8 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_pink_Studio-1.svg');
}

/* Referenzen & Produkte Icons */

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-9 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_Partner.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-10 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/08/25_OIT_Icons_orange_Studio-1.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-11 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_Bewertung.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-12 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/11/timeoff_oit-scaled-icon-e1762098201915.jpg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-13 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/vtag.png.webp');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-14 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/07/25_OIT_Icons_hellblau_Taschenrechner.svg');
}

/* Unternehmen */

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-15 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_Team.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-16 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_Historie.svg');
}

/* Kontakt */

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-17 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/07/25_OIT_Icons_hellblau_Telefon.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-18 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/07/25_OIT_Icons_hellblau_WhatsApp.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-19 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_Support.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-20 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2025/06/25_OIT_Icons_hellblau_Partner.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-21 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_orange_Hardware.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-22 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_orange_WebDev.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-23 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_orange-36.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-24 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_orange_SEO.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-25 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_hellblau_App.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-26 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_hellblau_Hosting.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-27 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icons_hellblau_Schloss.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-28 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icon_Play_D94F8A.svg');
}

.oit-menu li.oit-menu-third-level.oit-menu-icon.oit-menu-icon-29 > a:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  background-image: url('https://oit.digital/wp-content/uploads/2026/02/25_OIT_Icon_3D_D94F8A-1.svg');
}

.et_pb_menu__logo-wrap:where(:not(#oit-home-host *),[slot],[slot] *){
	display: none!important;
}

@media (max-width: 768px) {
	.et_pb_menu__logo-wrap:where(:not(#oit-home-host *),[slot],[slot] *){
	display: block!important;
	}
	div.et_pb_menu__wrap:where(:not(#oit-home-host *),[slot],[slot] *){
		justify-content: flex-end!important;
	}
}

/* ============================
   Mobile: Second -> Third immer als normale Liste
   ============================ */

#mobile_menu1 li.oit-menu-second-level > ul.sub-menu:where(:not(#oit-home-host *),[slot],[slot] *){
  display: block !important;        /* wird per JS ggf. redundant gesetzt */
  height: auto !important;
  max-height: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  position: static !important;
  float: none !important;
  box-shadow: none !important;
  border: 0 !important;

  margin: 6px 0 10px 14px;
  padding: 0 !important;
}

/* Optional: Second-Level Überschriften optisch wie Kategorien */
#mobile_menu1 li.oit-menu-second-level > a:where(:not(#oit-home-host *),[slot],[slot] *){
  font-weight: 700;
}
/* WPML Switcher: nur DE / EN anzeigen (statt Deutsch / English) */

/* Originaltext ausblenden */
.wpml-ls-item .wpml-ls-native:where(:not(#oit-home-host *),[slot],[slot] *){
  font-size: 0 !important;
  line-height: 0 !important;
  display: inline-block;
}

/* Default-Format für Kürzel */
.wpml-ls-item .wpml-ls-native:where(:not(#oit-home-host *),[slot],[slot] *)::after{
  font-size: 20px;         
  line-height: 1;
  font-weight: 500;
}

/* Deutsch -> DE */
.wpml-ls-item-de .wpml-ls-native:where(:not(#oit-home-host *),[slot],[slot] *)::after{
  content: "DE";
}

/* Englisch -> EN */
.wpml-ls-item-en .wpml-ls-native:where(:not(#oit-home-host *),[slot],[slot] *)::after{
  content: "EN";
}
/* WPML: nur die NICHT aktive Sprache anzeigen */
.wpml-ls-item.wpml-ls-current-language:where(:not(#oit-home-host *),[slot],[slot] *){
  display: none !important;
}

@supports ((-webkit-mask: url("")) or (mask:url(""))) {

  /* höher spezifisch als Divi: gewinnt gegen opacity:0 !important */
  html body .et_pb_menu_0_tb_header .et_pb_menu__logo-wrap .et_pb_menu__logo img:where(:not(#oit-home-host *),[slot],[slot] *){
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
  }

}
/* =========================================================
   MOBILE: Logo direkt neben Hamburger (Divi Menu Modul)
   ========================================================= */
@media (max-width: 980px){

  /* 1) Inner Container als Flex-Zeile */
  .et_pb_menu_0_tb_header .et_pb_menu_inner_container:where(:not(#oit-home-host *),[slot],[slot] *){
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  /* 2) Desktop-Menü-Wrapper aus dem Flow nehmen (damit er nichts "wegdrückt") */
  .et_pb_menu_0_tb_header .et_pb_menu__wrap:where(:not(#oit-home-host *),[slot],[slot] *){
    margin-left: auto !important;     /* schiebt Burger nach rechts */
    display: flex !important;
    align-items: center !important;
  }

  /* 3) Das Desktop-UL auf Mobile ausblenden (Divi macht das oft sowieso, aber sicher ist sicher) */
  .et_pb_menu_0_tb_header .et_pb_menu__menu:where(:not(#oit-home-host *),[slot],[slot] *){
    display: none !important;
  }

  /* 4) Logo-Block links lassen und Größe sauber setzen */
  .et_pb_menu_0_tb_header .et_pb_menu__logo-wrap:where(:not(#oit-home-host *),[slot],[slot] *){
    margin: 0 !important;
	  margin-left: 14px !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
  }

  .et_pb_menu_0_tb_header .et_pb_menu__logo img:where(:not(#oit-home-host *),[slot],[slot] *){
	height: 40px !important;
        max-height: 40px !important;
    width: auto !important;
    display: block !important;
  }

  /* 5) Hamburger-Wrapper sichtbar + klickbar */
  .et_pb_menu_0_tb_header .et_mobile_nav_menu:where(:not(#oit-home-host *),[slot],[slot] *){
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
  }
}

.oit-project-grid:where(:not(#oit-home-host *),[slot],[slot] *){
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    padding: 20px 0;
}

.oit-project-item:where(:not(#oit-home-host *),[slot],[slot] *){
    background: rgba(255, 255, 255, 0.05);
    border-radius: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    width: 100%;
    transition: transform 0.3s ease, background 0.3s ease;
    padding: 10px;
}

.oit-project-item:hover:where(:not(#oit-home-host *),[slot],[slot] *){
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.1);
}

.oit-project-item a:where(:not(#oit-home-host *),[slot],[slot] *){
    text-decoration: none;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.oit-project-thumb:where(:not(#oit-home-host *),[slot],[slot] *){
    width: 100%;
    height: 150px;
    overflow: hidden;
    position: relative;
    flex-shrink: 0;
}

.oit-project-thumb img:where(:not(#oit-home-host *),[slot],[slot] *){
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.oit-project-item:hover .oit-project-thumb img:where(:not(#oit-home-host *),[slot],[slot] *){
    transform: scale(1.05);
}

.oit-project-thumb .no-thumb:where(:not(#oit-home-host *),[slot],[slot] *){
    background: rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 48px;
    color: rgba(255, 255, 255, 0.3);
    width: 100%;
    height: 100%;
}

.oit-project-content:where(:not(#oit-home-host *),[slot],[slot] *){
    padding: 15px;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.oit-project-title:where(:not(#oit-home-host *),[slot],[slot] *){
    font-size: 13px !important;
    line-height: 1.4;
    font-weight: 400;
    color: #ffffff;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 1024px) {
    .oit-project-grid:where(:not(#oit-home-host *),[slot],[slot] *){
        grid-template-columns: repeat(2, 320px);
    }
}

@media (max-width: 767px) {
    .oit-project-grid:where(:not(#oit-home-host *),[slot],[slot] *){
        grid-template-columns: 1fr;
    }

    .oit-project-item:where(:not(#oit-home-host *),[slot],[slot] *){
        width: 100%;
    }
}

.single-post ol:where(:not(#oit-home-host *),[slot],[slot] *),ul:where(:not(#oit-home-host *),[slot],[slot] *){
    list-style: outside;
}



/* OIT Academy: Autor und Datum auf Kursseiten ausblenden */
.single-oit_academy .single-post-meta:where(:not(#oit-home-host *),[slot],[slot] *){
    display: none !important;
}


/* Footer-Section #news-feed-01: display:none ENTFERNT — hatte gesamten Footer versteckt (oit-fa sitzt innerhalb) */

/* ── Fix: LinkedIn-Icon gleiche Größe wie andere Kontakt-Icons ── */
.team-linkedin-sec:where(:not(#oit-home-host *),[slot],[slot] *){
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
    max-width: 200px;
}

.team-linkedin-sec img:where(:not(#oit-home-host *),[slot],[slot] *){
    width: 44px;
    height: 44px;
}


/* ========================================== 
   FIX: Divi default section bg override
   Divi setzt .et_pb_section default auf weiss.
   OIT Design ist durchgehend schwarz/dunkel.
   Sections die weiss sein sollen bekommen das
   explizit im Builder gesetzt.
   ========================================== */
.et_pb_section:where(:not(#oit-home-host *),[slot],[slot] *){
  background-color: #000 !important;
}
/* Ausnahmen: Sections die explizit weiss/hell sein sollen */
.et_pb_section[style*="background-color: #fff"]:where(:not(#oit-home-host *),[slot],[slot] *),
.et_pb_section[style*="background-color: rgb(255"]:where(:not(#oit-home-host *),[slot],[slot] *),
.et_pb_section.et_pb_section--white:where(:not(#oit-home-host *),[slot],[slot] *){
  background-color: #fff !important;
}

/* ============================================================
   BUBBLE-BREADCRUMB GLOBAL v2 (2026-06-10)
   Sichtbare Yoast-Breadcrumb ist die im Divi-TB-Header
   (et_pb_section_2_tb_header) — .breadcrumb-sec wird hier im Child-Theme
   UND im Divi-Customizer-CSS versteckt. Diese Pill stylt
   den Header-Breadcrumb im Stil des Startseiten-Kickers.
   Blog/Knowledge-Singles rendern ihre eigene Pill (single.php)
   und verstecken diese Sektion dort.
   ============================================================ */
header .et_pb_section_2_tb_header:where(:not(#oit-home-host *),[slot],[slot] *){
  background: transparent !important;
}
header .et_pb_section_2_tb_header .et_pb_code_inner:where(:not(#oit-home-host *),[slot],[slot] *){
  font-size: 0; /* unterdrueckt das fuehrende "/"-Textnode vor der Pill */
  display: flex;
  justify-content: center;
}
@keyframes oit-crumb-pulse-g {
  0%   { box-shadow: 0 0 0 0 rgba(255,119,0,.7); }
  70%  { box-shadow: 0 0 0 9px rgba(255,119,0,0); }
  100% { box-shadow: 0 0 0 0 rgba(255,119,0,0); }
}
header .et_pb_section_2_tb_header .et_pb_code_inner > span:where(:not(#oit-home-host *),[slot],[slot] *){
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 700;
  color: rgba(255,255,255,.3); /* Separator-Slashes */
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.16);
  padding: 8px 18px;
  border-radius: 100px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  max-width: 100%;
}
header .et_pb_section_2_tb_header .et_pb_code_inner > span:where(:not(#oit-home-host *),[slot],[slot] *)::before{
  content: "";
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #FF7700;
  animation: oit-crumb-pulse-g 2.2s infinite;
}
@media (prefers-reduced-motion: reduce) {
  header .et_pb_section_2_tb_header .et_pb_code_inner > span:where(:not(#oit-home-host *),[slot],[slot] *)::before{ animation: none; }
}
header .et_pb_section_2_tb_header .et_pb_code_inner a:where(:not(#oit-home-host *),[slot],[slot] *){
  color: rgba(255,255,255,.55) !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: color .2s ease;
}
header .et_pb_section_2_tb_header .et_pb_code_inner a:hover:where(:not(#oit-home-host *),[slot],[slot] *){ color: #FF7700 !important; }
header .et_pb_section_2_tb_header .breadcrumb_last:where(:not(#oit-home-host *),[slot],[slot] *){
  color: #fff !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 52ch;
}
@media (max-width: 640px) {
  header .et_pb_section_2_tb_header .et_pb_code_inner > span:where(:not(#oit-home-host *),[slot],[slot] *){
    letter-spacing: .12em;
    font-size: 11px;
    padding: 7px 14px;
  }
  header .et_pb_section_2_tb_header .breadcrumb_last:where(:not(#oit-home-host *),[slot],[slot] *){ max-width: 38ch; }
}
/* Breadcrumb-Sektion im Seiteninhalt dauerhaft ausblenden
   (Backup-Regel zum ET-Cache — verhindert doppelte Breadcrumbs) */
.breadcrumb-sec:where(:not(#oit-home-host *),[slot],[slot] *){
  display: none !important;
}


/* Doppel-Bubble-Fix (2026-06-11): Seiten mit eigenem Hero-Kicker
   (.oit-kicker, z.B. /kontakt/) zeigen keine zusaetzliche
   Breadcrumb-Pill direkt darueber. */
body:has(#et-main-area .oit-kicker) header .et_pb_section_2_tb_header:where(:not(#oit-home-host *),[slot],[slot] *){
  display: none !important;
}
