/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Start your style declarations here    */
/*****************************************/

.hero-gradient {
   background: linear-gradient(
    135deg,
    #43e1db 0%,
    #1a6b65 15%,
    #011a14 30%,
    #000000 50%,
    #0a1a05 70%,
    #4a6e1a 85%,
    #dff469 100%
  ) !important;
  /* transform: matrix(-1, 0, 0, 1, 0, 0); */
}
.hero-gradient .container{
  /* transform: matrix(-1, 0, 0, 1, 0, 0); */
}
.text-background-gradient .col-inner {
  border-radius: 20px;
}
.image-text .hhs-img img {
  border-radius: 20px;
}
.dark-image-text .hhs-col-inner * {
  color: #ffffff;
}
.cards .hhs-flexi-card img {
  border-radius: 0px !important;
}
.testimonial .c-slide-2 {
  border-radius: 8px;
  box-shadow: 0px 0px 6px -1px rgba(0, 0, 0, .1) inset, 0 0 4px -2px rgba(0, 0, 0, .05) inset;
}
.testimonial .c-slide-2 .c-image-2 img{
  width: 200px;
}
.testimonial .c-slider .slick-dots li {
  width: 12px !important;
  height: 12px !important;
  background-color: #43e1db !important;
  border-radius: 12px !important;
}
.testimonial .c-slider .slick-dots .slick-active {
  width: 30px !important;
  height: 12px !important;
  background-color: #008692 !important;
  border-radius: 12px !important;
}
.testimonial .c-slider button.slick-prev,
.testimonial .c-slider button.slick-next {
  display:none !important;
}
.gray-background {
  background: #f5f5f5;
}
.video-cards .container .row {
  gap: 15px;
}
.video-cards .c-video-card {
  border-radius: 20px;
  background: #f5f5f5;
  overflow: hidden;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);
}
.video-cards .c-video-card:hover {
  background: radial-gradient(72.29% 123.63% at 33.47% 50.06%, #03666e 6.23%, #024247 43.95%, #000 93.83%) !important;
}
.video-cards .c-video-card:hover .c-vid-text *{
  color: #ffffff !important;
}
.video-cards img {
  width: 100%;
}
.video-cards .c-vid-text{
  padding: 32px 40px;
}
@media(min-width: 992px){
  .video-cards .col-lg-4 {
    max-width: calc(33.333333% - 10px);
  }
}

@media(max-width: 991px) and (min-width: 768px){
  .video-cards .col-md-6 {
    max-width: calc(50% - 8px);
  }
}

@media(max-width: 767px){
  .cards .container > .row {
    gap: 20px;
  }
}





.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
  text-transform: capitalize;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
}

/* Floating Navbar — immer aktiv */
.hhs-top-bar {
  max-width: 1280px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: calc(100% - 60px) !important;
  border-radius: 30px !important;
  margin-top: 10px !important;
  background: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  transition: none !important;
  /* Immer über dem Side Menu — Language Switcher Dropdown bleibt sichtbar */
  z-index: 100002 !important;
}
/* Mobile: Pill gleich breit wie das Menü-Panel (16px Rand) */
@media(max-width: 1199px){
  .hhs-top-bar {
    width: calc(100% - 32px) !important;
  }
}





/* Desktop-Nav und Mega-Menu auf Tablet verstecken */
@media(min-width: 993px) and (max-width: 1199px){
  /* Desktop-Navigation ausblenden */
  .hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal,
  .hhs-top-bar .hhs-nav-grid__nav,
  .hhs-header-menu,
  .hhs-top-bar .hhs-header-cta {
    display: none !important;
  }
  /* Hamburger-Toggle einblenden */
  .hhs-menu-toggle {
    display: flex !important;
  }
  /* Sticky-Nav-Links ebenfalls verstecken */
  .sticky-menu .hs-menu-wrapper,
  .sticky-menu .hhs-nav-grid__nav {
    display: none !important;
  }
}

/* Keine Animation beim Sticky-Übergang */
.sticky-menu,
.sticky-menu.active {
  transition: none !important;
}

/* Immer dunkles Logo zeigen, weißes Logo verstecken */
.hhs-header-logo .logo-standard {
  display: none !important;
}
.hhs-header-logo .logo-sticky {
  display: block !important;
}

/* Immer dunkle Schrift in der Navigation */
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal > ul li a {
  color: #2e2e2e !important;
}
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal > ul li a:hover {
  color: #008692 !important;
}

/* Schatten weg wenn Sticky oder Mega-Menü aktiv */
.sticky-menu.active,
.mega-menu.active {
  box-shadow: none !important;
}

/* Blur vom Header entfernen wenn Mega-Menü offen ist */
.hhs-top-bar:has(.mega-menu.active) {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background: rgba(255, 255, 255, 0.85) !important;
}

.hs-menu-item.hs-menu-depth-2:has(.new),
.hs-menu-item.hs-menu-depth-3:has(.new) {
  position: relative;
}
.hs-menu-item.hs-menu-depth-2:has(.new):before,
.hs-menu-item.hs-menu-depth-3:has(.new):before {
  content: 'New';
  background: #008692;
  color: #FFFFFF;
  padding: 3px;
  border-radius: 3px;
  position: absolute;
  top: 10px;
  left: 100%;
  z-index: 5;
  font-size: 12px;
  line-height: 16px;
}





/* Flex-Zentrierung auf allen Ebenen */
.hhs-nav-grid__extras {
  align-items: center !important;
}
.hhs-lang-switch {
  display: flex !important;
  align-items: center !important;
  float: none !important;
}
.hhs-lang-switch .lang_switcher_class {
  margin-top: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
}

/* *** KERN-FIX: globe_class ist display:block mit 30px Höhe,
   das 16px Font-Awesome-Icon hängt oben — Flex zentriert es */
.hhs-top-bar .hhs-lang-switch .globe_class {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Globe-Icon (Font Awesome ::before) immer schwarz statt weiß */
.hhs-top-bar .hhs-lang-switch .globe_class::before {
  color: #2e2e2e !important;
}

/* Hover → Petrol */
.hhs-top-bar .hhs-lang-switch .globe_class:hover::before {
  color: #008692 !important;
}

/* Hover-Gap Fix: Dropdown auch offen halten wenn Maus über dem Menü selbst ist. */
.hhs-top-bar .hhs-lang-switch .lang_switcher_class:hover .lang_list_class {
  display: block !important;
}

/* Dropdown — passendes Design zum Navbar */
.hhs-top-bar .hhs-lang-switch .lang_list_class {
  background: rgba(255, 255, 255, 0.92) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 24px -4px rgba(0, 0, 0, 0.12), 0 1px 4px rgba(0, 0, 0, 0.06) !important;
  padding: 8px !important;
  top: 32px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  min-width: 120px !important;
  overflow: hidden !important;
}

/* Pfeil-Dreiecke entfernen */
.hhs-top-bar .hhs-lang-switch .lang_list_class::before,
.hhs-top-bar .hhs-lang-switch .lang_list_class::after {
  display: none !important;
}

/* List-Items: kein schwarzer Rand, transparenter Hintergrund */
.hhs-top-bar .hhs-lang-switch .lang_list_class li {
  background: transparent !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 0 !important;
  margin: 2px 0 !important;
}

/* Links */
.hhs-top-bar .hhs-lang-switch .lang_list_class li a {
  color: #2e2e2e !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  padding: 8px 14px !important;
  border-radius: 10px !important;
  transition: background 0.15s ease, color 0.15s ease !important;
}

/* Hover auf Link */
.hhs-top-bar .hhs-lang-switch .lang_list_class li a:hover {
  color: #008692 !important;
  background: rgba(0, 134, 146, 0.08) !important;
}

@media(min-width: 1200px){
  .mega-menu {
    width: 100%;
    max-width: 1100px;
    left: 50% !important;
    transform: translateX(-50%);
    padding: 30px 50px 30px !important;
    background: rgba(255, 255, 255, 0.85) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
  }
  .mega-menu .row > div:not(:last-child) {
    border-right: 0px solid #008692;
    margin: 0px;
  }
  .mega-menu {
     border-radius: 30px;
     margin-top: 15px !important;
  }
  .mega-menu::before {
    content: '';
    position: absolute;
    top: -15px;
    left: 0;
    width: 100%;
    height: 15px;
    background: transparent;
  }
  .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
    transition: none !important;
  }
  .mega-text-con h3,
  .hs-menu-item h3 {
    font-size: 18px;
    line-height: 22px;
    font-weight: 600;
    color: #111827;
  }
  .mega-text-con p,
  .hs-menu-item p {
    font-size: 16px;
    font-weight: 400;
    line-height: 150%;
    color: #6b7280;
  }
  .mega-nav-con .hs-menu-item a {
    padding: 0px 20px;
  }
  .mega-nav-con .hs-menu-item.hs-menu-depth-1 {
    margin: 0px !important;
  }
  .mega-menu .row > div:not(:nth-child(1)) .mega-nav-con ul {
    padding: 0px 10px 0px 15px;
  }
  .mega-menu .row > div:nth-child(1) .mega-nav-con ul {
    padding: 0px 15px 0px 0px;
  }
  .mega-menu .container {
    padding: 0px !important;
  }
  .mega-nav-con .hs-menu-item.hs-menu-depth-1 > a:hover h3,
  .mega-nav-con .hs-menu-item.hs-menu-depth-2 > a:hover h3{
    color: #008692;
  }
  .hs-menu-item.hs-menu-depth-1.hs-item-has-children:hover > a:after {
    transform: rotate(180deg);
    transition: transform 0.3s ease-in-out;
  }
  .logo-sticky:hover img {
    filter: grayscale(100%) brightness(0%);
  }
  .top-bar-search:hover .fas {
    color: #000;
  }
  .hs-search-field.is-open .hs-search-field__bar {
    left: -58vw !important;
    max-width: 57vw !important;
    position: absolute;
    width: 62vw !important;
  }
}
@media(max-width: 1199px){
  .mega-menu {
    width: 100%;
    max-width: 1100px;
    left: 50% !important;
    transform: translateX(-50%);
    padding: 30px 50px 80px !important;
  }
  .hs-menu-item.hs-menu-depth-2:has(.new):before {
    display: none!important;
  }
  .hs-menu-item.hs-menu-depth-3:has(.new):before {
    left: 89%;
  }
  .hs-search-field.is-open .hs-search-field__bar {
    left: -47vw !important;
    max-width: 80vw !important;
    position: absolute;
    width: 45vw !important;
    margin-top: 0px;
  }
  .mega-menu .row > div:not(:nth-child(3)) {
    border-right: 0px solid #008692;
    margin: 0px;
  }
  .mega-text-con h3,
  .hs-menu-item h3 {
    font-size: 18px;
    line-height: 22px;
    font-weight: 600;
    color: #111827;
  }
  .mega-text-con p,
  .hs-menu-item p {
    font-size: 16px;
    font-weight: 400;
    line-height: 150%;
    color: #6b7280;
  }
  .mega-nav-con .hs-menu-item a {
    padding: 0px 20px;
  }
  .mega-nav-con .hs-menu-item.hs-menu-depth-1 {
    margin: 0px !important;
  }
  .mega-menu .row > div:not(:nth-child(1)) .mega-nav-con ul {
    padding: 0px 10px 0px 15px;
  }
  .mega-menu .row > div:nth-child(1) .mega-nav-con ul {
    padding: 0px 15px 0px 0px;
  }
  .mega-menu .container {
    padding: 0px !important;
  }
  .mega-nav-con .hs-menu-item.hs-menu-depth-1 > a:hover h3,
  .mega-nav-con .hs-menu-item.hs-menu-depth-2 > a:hover h3{
    color: #008692;
  }

  /* ─── HEADER: 80px, Logo links in Flucht mit Menütexten ─── */
  .hhs-top-bar {
    min-height: 80px !important;
    display: flex !important;
    align-items: center !important;
    padding-left: 24px !important;
    padding-right: 20px !important;
  }
  /* Container: kein eigenes Padding — nur Pill-Padding zählt */
  .hhs-top-bar .container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .hhs-top-bar .hhs-nav-grid {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding-left: 0 !important;
  }
  .hhs-header-logo {
    position: static !important;
    transform: none !important;
    flex-shrink: 0 !important;
  }
  .hhs-top-bar .hhs-nav-grid__extras {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    flex-shrink: 0 !important;
  }
  /* Hamburger/X: 36×36 Tap-Target */
  .hhs-menu-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    margin-right: 0 !important;
  }
  .hhs-top-bar, .body-wrapper.nav-is-open .hhs-top-bar {
    border-radius: 30px !important;
  }

  /* ─── SIDE MENU: exakt gleich breit wie Pill ─── */
  .hhs-side-menu__footer { display: none; }
  .body-wrapper::after { background-color: rgba(0,0,0,0) !important; }

  .hhs-side-menu {
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(24px) !important;
    -webkit-backdrop-filter: blur(24px) !important;
    border-radius: 24px !important;
    box-shadow: 0 10px 32px -8px rgba(0,0,0,0.14), 0 2px 8px rgba(0,0,0,0.05) !important;
    position: fixed !important;
    left: 16px !important;
    right: 16px !important;
    top: 100px !important;
    bottom: 16px !important;
    width: auto !important;
    overflow: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    padding: 0 !important;
    border: none !important;
    opacity: 0 !important;
    transform: translateY(-6px) !important;
    transition: opacity 0.18s ease, transform 0.18s ease !important;
    z-index: 100001 !important;
    pointer-events: none !important;
    display: flex !important;
    flex-direction: column-reverse !important;
    justify-content: flex-end !important;
  }
  .hhs-side-menu::-webkit-scrollbar { display: none !important; }

  /* Nav-Bereich scrollt lautlos — kein Scrollbalken */
  .hhs-side-menu .hhs-side-menu__mobile {
    background: transparent !important;
    padding: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    flex-shrink: 1 !important;
    min-height: 0 !important;
  }
  .hhs-side-menu .hhs-side-menu__mobile::-webkit-scrollbar { display: none !important; }
  .hhs-side-menu__mobile::-webkit-scrollbar { display: none !important; }
  .hhs-side-menu__mobile .sc-site-header__menu { border-bottom: none !important; }
  .hhs-side-menu__mobile { scrollbar-width: none !important; }

  .hhs-side-menu .hhs-side-menu__ctas {
    background: transparent !important;
    border-top: 1px solid rgba(0,0,0,0.07) !important;
    padding: 20px 16px 24px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-shrink: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
  .hhs-side-menu__ctas .hhs-header-cta { margin: 0 !important; }

  /* ─── DEPTH-1 ITEMS ─── */
  .hhs-side-menu .hs-menu-item.hs-menu-depth-1,
  .hs-menu-item.hs-menu-depth-1.hs-item-has-children {
    display: block !important;
    position: relative !important;
    margin: 0 !important;
    border-bottom: none !important;
  }
  .hhs-side-menu .hs-menu-item.hs-menu-depth-1 > a,
  .hs-menu-item.hs-menu-depth-1.hs-item-has-children > a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    min-height: 60px !important;
    padding: 0 48px 0 16px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    color: #1a1a1a !important;
    font-size: 16px !important;
  }

  /* ─── CHEVRON ─── */
  .hhs-side-menu .hs-menu-item.hs-menu-depth-1 > a .hhs-sidebar-nav-toggle,
  .hhs-side-menu .hs-menu-item.hs-menu-depth-1 > a > .hhs-sidebar-nav-toggle {
    position: absolute !important;
    top: 50% !important;
    right: 16px !important;
    transform: translateY(-50%) !important;
    height: 24px !important;
    width: 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    bottom: auto !important;
  }
  .hhs-side-menu .hs-menu-item.hs-menu-depth-1 > a .hhs-sidebar-nav-toggle i,
  .hhs-side-menu .hs-menu-item.hs-menu-depth-1 > a > .hhs-sidebar-nav-toggle i {
    font-size: 20px !important;
    line-height: 1 !important;
    color: #2e2e2e !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Gradient-Divider */
  .hhs-side-menu .hs-menu-item.hs-menu-depth-1::after {
    content: '' !important;
    display: block !important;
    height: 1px !important;
    margin: 0 16px !important;
    background: linear-gradient(to right,
      transparent 0%, rgba(0,0,0,0.09) 20%,
      rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.09) 80%,
      transparent 100%) !important;
  }

  /* ─── SUBMENÜ ─── */
  .hhs-side-menu .hs-menu-children-wrapper {
    position: static !important;
    display: block !important;
    width: 100% !important;
    float: none !important;
    background: rgba(0,0,0,0.025) !important;
    padding: 4px 16px 12px 16px !important;
    box-sizing: border-box !important;
    text-align: left !important;
  }
  .hhs-side-menu .hs-menu-item.hs-menu-depth-2 > a,
  .hhs-side-menu .hs-menu-item.hs-menu-depth-3 > a {
    display: block !important;
    text-align: left !important;
    padding: 10px 0 !important;
    color: #444 !important;
    font-size: 15px !important;
  }
  .hs-menu-item.hs-menu-depth-2 { padding-right: 0 !important; }

  /* ─── OPEN STATE ─── */
  .hhs-side-menu.is-open {
    opacity: 1 !important;
    transform: translateY(0) !important;
    z-index: 100001 !important;
    pointer-events: auto !important;
  }
  .hhs-side-menu.is-open .hhs-menu-toggle { display: none !important; }
  .hhs-side-menu__mobile { scrollbar-width: none !important; -ms-overflow-style: none !important; }
  .hhs-side-menu__mobile::-webkit-scrollbar { display: none !important; }

  /* ─── HAMBURGER ─── */
  .hamburger-icon { height: 20px !important; width: 22px !important; }
  .hhs-menu-toggle .line {
    height: 1.5px !important;
    border-radius: 1px !important;
    background: #2e2e2e !important;
    transition: transform 0.2s ease, opacity 0.15s ease !important;
  }
  .hhs-menu-toggle .line.line-1 { top: 2px !important; width: 100% !important; }
  .hhs-menu-toggle .line.line-2 { width: 100% !important; }
  .hhs-menu-toggle .line.line-3 { top: 18px !important; width: 100% !important; left: 0 !important; }
  .hamburger-icon.active .line-1 { transform: translateY(8px) rotate(45deg) !important; width: 100% !important; }
  .hamburger-icon.active .line-2 { opacity: 0 !important; transform: scaleX(0) !important; }
  .hamburger-icon.active .line-3 { transform: translateY(-8px) rotate(-45deg) !important; width: 100% !important; }
  .hamburger-icon .line.line-1 { width: 100% !important; }
  .hamburger-icon.active .line.line-1 { width: 100% !important; }
  body:has(.nav-is-open) { overflow: hidden; }
  .hhs-sidebar-nav-toggle.is-open > * { transform: rotate(180deg) !important; }
  .hs-menu-depth-2 .hhs-sidebar-nav-toggle { top: 0 !important; }
  /* Chevron-Icon: fa-plus → fa-chevron */
  .hhs-side-menu__mobile .fa-plus:before {
    content: "\f078" !important;
    font-size: 14px !important;
    color: #2e2e2e !important;
  }
  .hhs-side-menu__mobile .sc-site-header__menu {
    border-bottom: none !important;
  }
  .hhs-side-menu__ctas {
    display: flex;
    justify-content: center;
  }
  .hhs-side-menu .top-bar-search {
    position: absolute;
    right: 20px !important;
    top: 2px;
    border-radius: 50px;
    border: 1px solid #000;
    padding: 12px 14px;
  }
  body:has(.nav-is-open) {
    overflow: hidden;
  }
  .hhs-side-menu .hhs-side-menu__mobile li a {
    color: #2e2e2e !important;
    font-weight: 400 !important;
  }
  .hs-menu-item.hs-menu-depth-2 {
    padding-right: 24px !important;
  }
  .hs-menu-item.hs-menu-depth-2 h3 {
    font-size: 16px !important;
  }
  .hs-menu-item.hs-menu-depth-2 p {
    font-size: 12px !important;
  }
  .hs-menu-depth-2 .hhs-sidebar-nav-toggle {
    top: 0 !important;
  }
  .hs-menu-item.hs-menu-depth-1.hs-item-has-children:has(.is-open) > a {
    background: #f0f0f0 !important;
  }

}
@media(max-width: 767px){
  .hs-search-field.is-open .hs-search-field__bar {
    left: 5vw !important;
    max-width: 80vw !important;
    position: absolute;
    width: 73vw !important;
    margin-top: 9px;
  }
}


/* ══════════════════════════════════════════════════════════════
   BUG FIX: Burger-Menü auf Desktop komplett verstecken
   Problem: .hhs-side-menu.is-open { right: 0px } (global, ohne
   Media Query) lässt das Mobile-Menü auf Desktop einpoppen wenn
   JS die Klasse setzt (z.B. beim Öffnen des Megamenüs).
   Fix: Ab 1200px das Side-Menu hard-hide — egal ob is-open oder nicht.
══════════════════════════════════════════════════════════════ */
@media(min-width: 1200px) {
  .hhs-side-menu,
  .hhs-side-menu.is-open {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
  }
}




/* ══ FIX: hhs-side-menu__mobile wird vom Theme ab 1200px versteckt.
   Unterhalb 1200px muss es sichtbar sein wenn das Burger-Menü offen ist. */
@media(max-width: 1199px) {
  .hhs-side-menu .hhs-side-menu__mobile {
    display: flex !important;
    visibility: visible !important;
  }
}
/* ══ END MOBILE FIX ══ */









.footer-fruitcore {
  background: radial-gradient(72.29% 123.63% at 33.47% 50.06%, #03666e 6.23%, #024247 43.95%, #000 93.83%) !important;
  position: relative;
  clip-path: polygon(0% 10%, 100% 0%, 100% 100%, 0% 100%);
  padding-top: 80px !important;
}
.footer-fruitcore .hhs-foot-break-line{
  margin-bottom: 32px!important;
  margin-left: 15px;
  margin-right: 15px;
  padding: 32px 0px 0 !important;
  width: 97.5% !important;
}
.footer-fruitcore .nav-col-4 {
  margin-top: 19px;
}
.footer-fruitcore .nav-col-4 h5 {
  margin-bottom: 0px !important;
}
.footer-fruitcore * {
  color: #FFFFFF;
  font-size: 16px;
}
.footer-fruitcore .row.hhs-foot-nav-cols {
  align-items: flex-start;;
}
.footer-fruitcore .hs_email.hs-email .input {
  display: flex;
  align-items: center;
}
.footer-fruitcore .hs_email.hs-email .input .hs-input {
  background: transparent !important;
  border: 2px solid #43e1db;
  border-radius: 50px;
}
.footer-fruitcore .hs-menu-item > a {
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 700 !important;
}
.footer-fruitcore .hhs-foot-copyright {
  display: none;
}
.footer-fruitcore h5 {
  margin-bottom: 20px !important;
}
.footer-fruitcore .nav-col-2,
.footer-fruitcore .nav-col-3 {
  margin-top: 74px;
}
.footer-fruitcore .nav-col-2 h5,
.footer-fruitcore .nav-col-3 h5 {
  font-weight: 500 !important;
  color: #FFF !important;
}
.footer-fruitcore .nav-col-4 h5, {
  font-weight: 500 !important;
  color: #FFF !important;
  font-size: 18px !important;
}
.footer-fruitcore .nav-col-4 span, 
.footer-fruitcore .nav-col-4 a {
  font-size: 12px !important;
}
.footer-fruitcore .hs_email.hs-email:hover .hs-input,
.footer-fruitcore .hs_email.hs-email:hover .hs-button {
  border-color: #D0F7F6 !important;
}
.footer-fruitcore .hs_email.hs-email:hover .hs-button {
  background-color: #D0F7F6 !important;
}
.footer-fruitcore .hs_email .input .hs-input {
    position: relative;
    padding-left: 30px !important;
}

.footer-fruitcore .hs_email .input .hs-input::before {
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M12.7999 3.69995L12.8 3.69995C13.0807 3.6999 13.3508 3.80718 13.555 3.99983C13.6822 4.11978 13.7778 4.26717 13.8357 4.42899L7.99989 7.34655L2.16404 4.42899C2.22201 4.26717 2.3176 4.11978 2.44475 3.99983C2.64895 3.80718 2.91907 3.6999 3.1998 3.69995H3.19989L12.7999 3.69995Z" fill="%23C5C7C4" stroke="%23C5C7C4"/><path d="M14.4001 6.49438L8.0001 9.69438L1.6001 6.49438V11.2C1.6001 11.6243 1.76867 12.0313 2.06873 12.3314C2.36878 12.6314 2.77575 12.8 3.2001 12.8H12.8001C13.2244 12.8 13.6314 12.6314 13.9315 12.3314C14.2315 12.0313 14.4001 11.6243 14.4001 11.2V6.49438Z" fill="%23C5C7C4"/></svg>');
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-size: contain;
    background-repeat: no-repeat;
}
@media(max-width: 992px){
  .footer-fruitcore {
    clip-path: polygon(0% 5%, 100% 0%, 100% 100%, 0% 100%);
  }
  .footer-fruitcore .nav-col-2,
  .footer-fruitcore .nav-col-3 {
    margin-top: 0px;
  }
  .footer-fruitcore .nav-col-2 h5,
  .footer-fruitcore .nav-col-3 h5,
  .footer-fruitcore .nav-col-4 h5,
  .footer-fruitcore .nav-col-2 a,
  .footer-fruitcore .nav-col-3 a {
    text-align: left !important;
  }
  .footer-fruitcore .hhs-foot-nav-col {
    border: none;
  }
  .footer-fruitcore .row.hhs-foot-nav-cols {
    flex-direction: column !important;
  }
}





.cards-hover-gradient .hhs-flexi-card:hover {
  background: radial-gradient(72.29% 123.63% at 33.47% 50.06%, #03666e 6.23%, #024247 43.95%, #000000 93.83%) !important;
}
.cards-simple.hhs-flexi-card-mod a:hover {
  transform: scale(1) !important;
}
.cards-hover-gradient.hhs-flexi-card-mod a:hover {
  transform: scale(1) !important;
}
.cards-hover-gradient.hhs-flexi-card-mod .hhs-flexi-card:hover * {
  color: #FFFFFF !important;
}
.cards-hover-gradient.hhs-flexi-card-mod .hhs-flexi-card:hover .flex * {
  color: #43e1db !important;
}
.cards-hover-gradient.hhs-flexi-card-mod .hhs-flexi-card:hover .flex svg path {
  fill: #43e1db !important;
}
.cards-hover-gradient.hhs-flexi-card-mod .hhs-flexi-card:hover .hs_cos_wrapper_type_inline_rich_text h4 > span {
  color: #FFFFFF !important;
}
.cards-hover-gradient .hhs-flexi-card img {
  border-radius: 20px 20px 0 0;
  object-fit: cover;
  width: 100%;
  height: 245px !important;
}
.cards-hover-gradient h4 {
  font-size: 24px !important;
}
.cards-hover-gradient.simple .hhs-flexi-card img {
  border-radius: 16px !important;
  object-fit: contain;
  width: auto;
  height: auto !important;
}
.image-slider .c-slider .slick-dots li {
  width: 12px !important;
  height: 12px !important;
  background-color: #43e1db !important;
  border-radius: 12px !important;
}

.image-slider .c-slider .slick-dots .slick-active {
  width: 30px !important;
  height: 12px !important;
  background-color: #008692 !important;
  border-radius: 12px !important;
}
.custom-cards h3 {
  font-weight: 600 !important;
  font-size: 40px !important;
}
.list-numer-custom ol {
  counter-reset: custom-counter;
  list-style-type: none;
  padding-left: 0;
}

.list-numer-custom ol li {
  position: relative;
  margin-bottom: 37px !important;
  padding-left: 55px;
}
.list-numer-custom ol li::before {
  content: counter(custom-counter);
  counter-increment: custom-counter;
  background-color: #FFF158;
  color: #005057;
  padding: 10px 15px;
  margin: 5px 0;
  border-radius: 16px;
  position: absolute;
  left: 0;
  top: 34%;
  transform: translateY(-50%);
  vertical-align: middle;
  font-weight: bold;
}
.list-numer-custom .row {
  align-items: center !important;
}
.cards-simple .hhs-flexi-card,
.cards-hover-gradient .hhs-flexi-card {
  box-shadow: 0px 4px 6px -1px rgba(0,0,0,0.1),0px 2px 4px -2px rgba(0,0,0,0.05) !important;
}
.cards-simple h4 {
  margin-bottom: 20px !important;
}
@media(max-width: 992px){
  .custom-cards .row,
  .cards-simple .row {
    flex-direction: column !important;
    align-items: center;
  }
  .cards-hover-gradient .row {
    flex-direction: column !important;
    align-items: center;
  }
  .cards-hover-gradient .row > div {
    max-width: 70% !important;
  }
}
@media(max-width: 767px){
  .cards-hover-gradient .row > div {
    max-width: 100% !important;
  }
  .cards-hover-gradient .hhs-card-content {
    padding: 20px !important;
  }
  .cards-hover-gradient.simple .hhs-flexi-card {
    padding: 20px !important;
  }
  .cards-hover-gradient.simple .hhs-card-content {
    padding: 0px !important;
  }
  .cards-hover-gradient.simple img {
    width: 60px !important;
    height: 60px !important;
  } 
}

.video-content .hs-embed-wrapper:has(video) {
  border-radius: 30px !important;
}


@media screen and (min-width: 701px) {
  .slick-dots li, .slick-dots li button {
    width: unset !important;
    height: unset !important;
  }
  .c-slider .slick-dots li button,
  .hubdb-testimonial-slider__slider .slick-dots li button {
    height: 12px;
    width: 12px;
  }
  .c-slider .slick-dots li.slick-active button,
  .hubdb-testimonial-slider__slider .slick-dots li.slick-active button {
    width: 30px !important;
  }
}
@media screen and (max-width: 700px) {
  
  .slick-arrow {
    display: none !important;
  }
  .hubdb-testimonial-slider__slider .slick-dots {
    position: relative !important;
  }
  .c-slider .slick-dots li,
  .hubdb-testimonial-slider__slider .slick-dots li {
    width: unset !important;
    height: unset !important;
    border-radius: 0;
  }
  .image-slider .c-slider .slick-dots li,
  .hubdb-testimonial-slider__slider .slick-dots li {
    width: unset !important;
    height: unset !important;
    margin-bottom: 5px !important;
  }
  .image-slider .c-slider .slick-dots .slick-active,
  .hubdb-testimonial-slider__slider .slick-dots .slick-active {
    width: unset !important;
    height: unset !important;
  }
  .c-slider .slick-dots li button,
  .hubdb-testimonial-slider__slider .slick-dots li button {
    width: 48px !important;
    height: 48px !important;
    padding: 0 !important;
    margin: -5px !important;
  }
}






.tabs-container select {
  display: block;
}

.fc-dropdown {
  position: relative;
  width: 100%;
  font-family: 'IBM Plex Mono', monospace;
}

.fc-dropdown__btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  box-sizing: border-box;
  padding: 14px 18px;
  border-radius: 20px;
  border: 1px solid rgba(96, 96, 96, 0.5);
  background: #ffffff;
  color: #2e2e2e;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 15px;
  font-weight: 400;
  cursor: pointer;
  outline: none;
  transition: border-color 0.18s ease, background-color 0.18s ease, color 0.18s ease;
  min-height: 48px;
  -webkit-tap-highlight-color: transparent;
}

.fc-dropdown__btn:hover {
  border-color: #43e1db;
}

.fc-dropdown__btn:focus-visible {
  border-color: #43e1db;
  box-shadow: 0 0 0 3px rgba(67, 225, 219, 0.2);
}

.fc-dropdown__btn.is-open {
  background: rgba(96, 96, 96, 1);
  color: #ffffff;
  border-color: rgba(96, 96, 96, 1);
  border-radius: 20px 20px 12px 12px;
}

.fc-dropdown__arrow {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  stroke: #606060;
  transition: transform 0.22s ease, stroke 0.18s ease;
}

.fc-dropdown__btn.is-open .fc-dropdown__arrow {
  transform: rotate(180deg);
  stroke: #ffffff;
}

.fc-dropdown__panel {
  position: absolute;
  top: calc(100% - 2px);
  left: 0;
  right: 0;
  background: #ffffff;
  border: 1px solid rgba(96, 96, 96, 0.4);
  border-top: none;
  border-radius: 0 0 20px 20px;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  transition: max-height 0.28s cubic-bezier(0.4, 0, 0.2, 1),
              opacity 0.2s ease,
              visibility 0s linear 0.2s;
  z-index: 50;
}

.fc-dropdown__panel.is-open {
  max-height: 300px;
  opacity: 1;
  visibility: visible;
  transition: max-height 0.28s cubic-bezier(0.4, 0, 0.2, 1),
              opacity 0.2s ease,
              visibility 0s linear 0s;
}

.fc-dropdown__opt {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 12px 18px;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 15px;
  font-weight: 400;
  color: #606060;
  cursor: pointer;
  transition: background 0.14s ease, color 0.14s ease;
  -webkit-tap-highlight-color: transparent;
}

.fc-dropdown__opt:last-child {
  padding-bottom: 16px;
  border-radius: 0 0 20px 20px;
}

.fc-dropdown__opt:hover,
.fc-dropdown__opt:focus {
  background: #f5f5f5;
  color: #2e2e2e;
  outline: none;
}

.fc-dropdown__opt.is-active {
  color: #2e2e2e;
  font-weight: 500;
}

.fc-dropdown__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #43e1db;
  flex-shrink: 0;
  opacity: 0;
  transition: opacity 0.15s ease;
}

.fc-dropdown__opt.is-active .fc-dropdown__dot {
  opacity: 1;
}

.fc-dropdown__sep {
  height: 1px;
  background: rgba(96, 96, 96, 0.12);
  margin: 0 18px;
}


/* =========================================================
   Robotik Megamenü — Kacheln gleich groß & gleicher Abstand
   ========================================================= */
@media(min-width: 1200px) {

  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 16px !important;
    padding: 20px !important;
    box-sizing: border-box !important;
  }

  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul > li {
    flex: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
  }

  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul > li > a:first-child {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    box-sizing: border-box !important;
  }
}






/*
 * Fix 1: #hs-interactives-modal-overlay hat right: -12.9px —
 * das erzeugt einen horizontalen Scrollbalken beim Popup.
 */
#hs-interactives-modal-overlay {
  right: 0 !important;
  max-width: 100vw !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

html:has(#hs-interactives-modal-overlay) {
  overflow-x: hidden !important;
}

/*
 * Fix 2: hs-menu-children-wrapper ragt über dem Megamenü heraus (Desktop).
 * Nur auf Desktop ≥1200px — Mobile Hamburger-Menü bleibt unberührt.
 */
@media(min-width: 1200px) {
  .hhs-top-bar .hs-menu-item.hs-item-has-children > .hs-menu-children-wrapper {
    display: none !important;
  }
}




/* =========================================================
   Megamenü — Kacheln: Layout, Abstände, Hover, Max-Höhe
   Gilt für alle Menüs (Robotik, KI Software etc.)
   ========================================================= */
@media(min-width: 1200px) {

  /* Panel: inline-flex → nur so breit wie Inhalt, padding 15px überall */
  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 15px !important;
    padding: 15px !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    white-space: nowrap !important;
  }

  /* li: feste Breite 260px — alle Kacheln immer gleich breit */
  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul > li {
    flex: 0 0 260px !important;
    width: 260px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: column !important;
    white-space: normal !important;
  }

  /* Kachel: volle Höhe des li → alle Kacheln automatisch gleich hoch */
  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul > li > a:first-child {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    max-height: 340px !important;
    padding: 16px !important;
    border-radius: 25px !important;
    background-color: #f5f5f5 !important;
    text-decoration: none !important;
    color: #1a1a1a !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    border: none !important;
    /* Unsichtbare inset-Kontur als Platzhalter — kein Layout-Shift */
    box-shadow: inset 0 0 0 2px transparent !important;
  }

  /* Hover: Teal-Kontur via inset box-shadow — nicht überschreibbar durch Theme */
  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul > li:hover > a:first-child {
    background-color: #edf9f9 !important;
    box-shadow: inset 0 0 0 2px #008692 !important;
    color: #1a1a1a !important;
  }

  /* Hover: Textfarben beibehalten */
  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul > li:hover > a:first-child *  {
    color: inherit !important;
  }

  /* Bild: feste Höhe 140px, object-fit cover → immer gleich */
  .hs-menu-wrapper.hs-menu-flow-horizontal > ul > li.hs-item-has-children > ul > li > a:first-child img {
    width: 100% !important;
    height: 140px !important;
    max-height: 140px !important;
    object-fit: cover !important;
    border-radius: 14px !important;
    display: block !important;
    margin-bottom: 14px !important;
    flex-shrink: 0 !important;
  }
}
/* force-build:1776785470651 */












/* ── 1) Karten- & Bild-Mega-Menüs: gleichmäßige Abstände ────────────────
   Außenrand (oben/unten/links/rechts) = 24px. Abstand zwischen den
   Spalten = 19px (etwas enger als der Außenrand).
   Umsetzung per Flexbox-`gap`: das Panel bekommt 24px Innenpolster auf allen
   Seiten, die Reihe verteilt die Spalten mit 19px gap, die Spalten teilen
   sich den Platz gleichmäßig (flex:1) und sind alle gleich hoch.

   Scope: Menüs MIT Karten ODER MIT Bild (Robotik, KI, References) — reine
   Listen-Menüs (Wissen, Unternehmen) behalten ihr bestehendes Layout.
   Das `html`-Prefix hebt die Spezifität über `.mega-menu { padding:30px 50px }`. */
@media(min-width: 1200px) {
  html .mega-menu:has(a[style*="border-radius: 25px"]),
  html .mega-menu:has(.mega-text-con img) {
    padding: 24px !important;
  }
  html .mega-menu:has(a[style*="border-radius: 25px"]) .container,
  html .mega-menu:has(.mega-text-con img) .container {
    padding: 0 !important;
    max-width: 100% !important;
  }
  html .mega-menu:has(a[style*="border-radius: 25px"]) .row,
  html .mega-menu:has(.mega-text-con img) .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 19px !important;                 /* Abstand zwischen den Spalten (Außenrand 24px) */
    margin: 0 !important;
    align-items: stretch !important;     /* alle Spalten gleich hoch */
    min-height: 300px !important;        /* einheitliche Mindesthöhe — alle Menüs ~300px, wächst nur falls Text mehr braucht (kein Clipping) */
  }
  html .mega-menu:has(a[style*="border-radius: 25px"]) .row > div,
  html .mega-menu:has(.mega-text-con img) .row > div {
    flex: 1 1 0 !important;              /* Spalten teilen sich gleichmäßig */
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
}

/* ── 1b) Bild-Menüs wie "References": Bild rundum 24px, echte runde Ecken ────
   Ziel: Das Bild hat links = oben = unten = 24px Abstand zum Panelrand, damit
   seine 20px-Rundung konzentrisch zur 30px-Panelrundung wirkt — und echte
   runde Ecken am Foto (cover, leicht beschnitten; "contain" würde das Foto in
   der Box schweben lassen, dann wären die Ecken nicht am Foto sichtbar).

   Technik (live verifiziert: 24/24/24 ringsum):
   - Reihe auf feste Höhe 252px (= 300px Wunschhöhe − 2×24px Panelpadding).
   - WICHTIG: margin/padding auf der ganzen Bild-Wrapper-Kette nullen — ein
     stray margin verursachte sonst einen 10px-Versatz oben/unten.
   - Bild füllt seine Spalte (height:100% der 252px-Reihe), object-fit:cover.
   - Textspalte vertikal mittig.
   Greift nur auf Bild-Menüs OHNE 25px-Karten (also nicht Robotik/KI). */
@media(min-width: 1200px) {
  /* Reihe dieses Bild-Menüs: feste Höhe statt min-height, bündig,
     und gap 48px = doppelter Außenrand (Abstand Bild ↔ Text). */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row {
    min-height: 0 !important;
    height: 252px !important;
    align-items: stretch !important;
    margin: 0 !important;
    gap: 48px !important;
  }
  /* Bild-Wrapper-Kette: volle Höhe, KEINE eigenen margins/paddings */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:has(.mega-text-con img),
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:has(.mega-text-con img) > .mega-text-con,
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:has(.mega-text-con img) > .mega-text-con > .hs_cos_wrapper,
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:has(.mega-text-con img) a {
    display: block !important;
    height: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
  }
  /* Bild füllt die Spalte → rundum 24px Panelpadding; cover = echte runde Ecken */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:has(.mega-text-con img) img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 20px !important;
    display: block !important;
    margin: 0 !important;
  }
  /* Textspalte (ohne Bild): vertikal mittig */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:not(:has(img)) > .mega-text-con {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    height: 100% !important;
    width: 100% !important;
    margin: 0 !important;
  }
  /* Kein Auto-Capitalize: Überschrift/Text exakt so wie im Rich-Text getippt.
     (Das Theme setzt auf Menü-Titel teils text-transform:capitalize.)
     Nur strong/p/a — der Eyebrow-span behält sein gewolltes uppercase. */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:not(:has(img)) .mega-text-con strong,
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:not(:has(img)) .mega-text-con p,
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])):has(.mega-text-con img) .row > div:not(:has(img)) .mega-text-con p a {
    text-transform: none !important;
  }

/* ── 2) Robotik-/KI-Kacheln (Rich-Text-Tiles): gleiche Höhe + Bilder
   einpassen statt beschneiden ────────────────────────────────────────────
   Greift über die Kartenstruktur selbst (:has) — NICHT über .mega-menu-2 —
   damit es nach dem Löschen von "Lösungen" (Robotik wird dann .mega-menu-1)
   weiter funktioniert. Trifft automatisch alle Karten-Menüs (Robotik,
   KI Plattform), nicht aber die Listen-Menüs (Wissen, Unternehmen).

   Gleiche Höhe: Die Flex-Kette Spalte → Wrapper → Tile sorgt dafür, dass
   jede Kachel auf die volle Höhe der höchsten Spalte stretcht.
   Bilder: object-fit:contain skaliert das ganze Bild ein, ohne zu
   beschneiden; Höhe einheitlich 150px, Hintergrund transparent (verschmilzt
   mit dem #f5f5f5 der Kachel). Live verifiziert: alle Kacheln gleich hoch,
   keine beschnittenen Bilder, Abstände rundum gleich (24px, s. Block 1).
   Hover: leicht anthrazit-transparenter Tint statt "Karte verschwindet". */
@media(min-width: 1200px) {
  /* GLEICHE HÖHE — komplette Flex-Kette streckt auf volle Spaltenhöhe.
     Wichtig: jede Ebene braucht flex:1, sonst bleibt eine Ebene auf
     Content-Höhe stehen und die Karte füllt die Spalte nicht ganz aus
     (genau das ließ den Hover bei kürzerem Text anders aussehen als
     die Kachel). col → .mega-text-con → .hs_cos_wrapper → <a> alle 100%. */
  .mega-menu .row > div:has(a[style*="border-radius: 25px"]) {
    display: flex !important;
  }
  .mega-menu .row > div:has(a[style*="border-radius: 25px"]) > .mega-text-con,
  .mega-menu .mega-text-con:has(a[style*="border-radius: 25px"]) {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    width: 100% !important;
  }
  .mega-menu .mega-text-con:has(a[style*="border-radius: 25px"]) > .hs_cos_wrapper {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    width: 100% !important;
  }
  /* Tile füllt die ganze Spaltenhöhe + weniger Innenpolster (war 20px). */
  html body .mega-menu .mega-text-con a[style*="border-radius: 25px"] {
    flex: 1 1 auto !important;
    height: auto !important;
    width: 100% !important;
    padding: 14px !important;
  }
  /* Bild: komplett einpassen, nicht beschneiden, einheitlich 150px */
  .mega-menu .mega-text-con a[style*="border-radius: 25px"] img {
    width: 100% !important;
    height: 150px !important;
    object-fit: contain !important;
    object-position: center !important;
    background: transparent !important;
    border-radius: 14px !important;
    display: block !important;
    margin-bottom: 14px !important;
    flex-shrink: 0 !important;
  }

  /* HOVER: NUR auf der Kachel (<a>) — sie füllt jetzt die ganze Spalte,
     deshalb deckt sich der Hover exakt mit der sichtbaren Karte, egal
     wie lang der Text ist. Die Wrapper-Ebenen bewusst transparent halten,
     damit kein abweichend geformter Hintergrund durchscheint. */
  html body .mega-menu .mega-text-con:has(a[style*="border-radius: 25px"]):hover,
  html body .mega-menu .mega-text-con:has(a[style*="border-radius: 25px"]) > .hs_cos_wrapper:hover {
    background-color: transparent !important;
    box-shadow: none !important;
  }
  /* Schwarze Umrandung (1px) beim Hover.
     Per inset box-shadow statt border: liegt INNEN an der Kante (kein
     Clipping durch overflow:hidden) und verursacht keinen Layout-Shift.
     Grundzustand-Platzhalter (transparent) verhindert Springen. */
  html body .mega-menu .mega-text-con a[style*="border-radius: 25px"] {
    box-shadow: inset 0 0 0 1px transparent !important;
    transition: box-shadow 0.15s ease, background-color 0.15s ease !important;
  }
  html body .mega-menu .mega-text-con a[style*="border-radius: 25px"]:hover {
    background-color: #f5f5f5 !important;
    box-shadow: inset 0 0 0 1px #000 !important;
    border-radius: 25px !important;
  }
}

/* ── 2b) Link-Hub-Menüs (Wissen & Support): Überschrift + Zeilen ─────────
   Das Theme gibt Mega-Links font-size:16px und padding:10px → großer,
   unausgewogener Zeilenabstand, und die kleine 11px-Überschrift "klebte".
   Hier: Überschrift klar abgesetzt (mit feiner Trennlinie), Links enger &
   einheitlich, plus dezenter Hover-Pill (Petrol), damit man sieht, dass es
   anklickbar ist.

   Scope: Karten-Menüs sind ausgenommen (`:not(:has(a[…25px]))`), damit
   Robotik/KI unberührt bleiben. Hohe Spezifität (html body … p a) schlägt
   die Theme-Regeln. Greift auf jede Rich-Text-Spalte mit <p><a>-Links. */
@media(min-width: 1200px) {
  /* Eyebrow-Überschrift der Link-Spalten */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])) .mega-text-con > span:first-child {
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #008692 !important;
    display: block !important;
    margin: 0 0 14px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  }
  /* Link-Zeilen: kein Doppelabstand */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])) .mega-text-con p {
    margin: 0 !important;
  }
  /* Links: enger, einheitlich, als anklickbare Pill */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])) .mega-text-con p a {
    display: block !important;
    padding: 7px 10px !important;
    margin: 0 -10px !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    border-radius: 8px !important;
    transition: background-color 0.14s ease, color 0.14s ease !important;
  }
  /* Hover: dezenter Petrol-Pill + Petrol-Text */
  html body .mega-menu:not(:has(a[style*="border-radius: 25px"])) .mega-text-con p a:hover {
    background-color: rgba(0, 134, 146, 0.08) !important;
    color: #008692 !important;
  }
}

/* ── 3) Mobile-Overlap-Fix: kleine Handys ───────────────────────────────
   Auf ~360–390px-Phones überlappte das Logo mit Sprach-/Such-/Hamburger-
   Icons, weil alles flex-shrink:0 war und nichts umbrach. Hier darf das
   Logo schrumpfen und die Abstände werden kompakter. */
@media(max-width: 480px) {
  .hhs-top-bar {
    padding-left: 16px !important;
    padding-right: 14px !important;
  }
  .hhs-top-bar .hhs-nav-grid__extras {
    gap: 10px !important;
  }
  .hhs-header-logo {
    flex-shrink: 1 !important;
    min-width: 0 !important;
  }
  .hhs-header-logo img {
    max-width: 140px !important;
    height: auto !important;
  }
}
