/* Footer-Menü vertikal untereinander */
#sp-bottom .sp-module ul.nav.menu,
#sp-bottom2 .sp-module ul.nav.menu {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

#sp-bottom .sp-module ul.nav.menu > li,
#sp-bottom2 .sp-module ul.nav.menu > li {
  display: block !important;
  width: 100%;
  margin: 0;
  padding: 0;
}

#sp-bottom .sp-module ul.nav.menu > li > a,
#sp-bottom2 .sp-module ul.nav.menu > li > a {
  display: block !important;
  width: 100%;
  padding: 4px 0;
  line-height: 1.5;
  text-decoration: none !important;
}

#sp-bottom .sp-module ul.nav.menu > li > a:hover,
#sp-bottom .sp-module ul.nav.menu > li > a:focus,
#sp-bottom .sp-module ul.nav.menu > li > a:active,
#sp-bottom2 .sp-module ul.nav.menu > li > a:hover,
#sp-bottom2 .sp-module ul.nav.menu > li > a:focus,
#sp-bottom2 .sp-module ul.nav.menu > li > a:active {
  text-decoration: none !important;
}
/* My Account Button in Top2 komplett ausblenden */
#sp-top2 .sp-my-account {
  display: none !important;
}
/* Future Smile Logo größer darstellen */
#sp-logo .logo,
#sp-logo .logo a {
  display: flex !important;
  align-items: center !important;
}

#sp-logo .logo img,
#sp-logo .sp-default-logo {
  width: auto !important;
  max-width: none !important;
  height: auto !important;
  max-height: 120px !important;
}

/* Desktop */
@media (min-width: 992px) {
  #sp-logo .logo img,
  #sp-logo .sp-default-logo {
    height: 113px !important;
    max-height: 113px !important;
	  padding-top:30px;
  }

	}


/* Tablet / Mobile */
@media (max-width: 991px) {
  #sp-logo .logo img,
  #sp-logo .sp-default-logo {
    height: 78px !important;
    max-height: 78px !important;
  }

  #sp-header,
  #sp-header .container-inner,
  #sp-header .row,
  #sp-header .sp-column {
    min-height: 90px !important;
  }
}

/* Kleine Smartphones */
@media (max-width: 575px) {
  #sp-logo .logo img,
  #sp-logo .sp-default-logo {
    height: 64px !important;
    max-height: 64px !important;
  }

  #sp-header,
  #sp-header .container-inner,
  #sp-header .row,
  #sp-header .sp-column {
    min-height: 40px !important;
	  padding-top: 4px;
  }
	 #sp-top2 {
    display: none !important;
  }
	#sp-header.menu-fixed .logo {
  height: 70px;
}
	/* Search-top Modul im Header komplett ausblenden */
#sp-menu .sp-module.floox-top-search {
  display: none !important;
}
}
/* Top2: E-Mail Text "Email" ausblenden, Icon + Adresse behalten */
#sp-top2 .sp-contact-info .sp-contact-email {
  font-size: 0 !important;
}

/* E-Mail Icon einfügen */
#sp-top2 .sp-contact-info .sp-contact-email::before {
  content: "\f0e0";
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free", "FontAwesome";
  font-weight: 900;
  font-size: 11px !important;
  margin-right: 6px;
  display: inline-block;
}

/* E-Mail-Adresse wieder sichtbar machen */
#sp-top2 .sp-contact-info .sp-contact-email a {
  font-size: 11px !important;
}



/* =========================================
   TOP1 KORREKTUR - nur linke Topbar-Seite
   ========================================= */

/* Leeres Floox/Login-Modul in Top1 komplett entfernen */
#sp-top-bar #sp-top1 > .sp-column > .sp-module {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Top1-Inhalt sauber vertikal ausrichten */
#sp-top-bar #sp-top1 {
  display: flex !important;
  align-items: center !important;
}

/* Top1-Spalte sauber halten */
#sp-top-bar #sp-top1 .sp-column {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Social Icons in Top1 exakt ausrichten */
#sp-top-bar #sp-top1 .social-icons {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  list-style: none !important;
}

/* Einzelne Social Icons ohne vertikale Verschiebung */
#sp-top-bar #sp-top1 .social-icons li {
  display: inline-flex !important;
  align-items: center !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1 !important;
}

/* Icon selbst sauber zentrieren */
#sp-top-bar #sp-top1 .social-icons li a,
#sp-top-bar #sp-top1 .social-icons li i {
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
}

/* Feintuning Top1: Wert bei Bedarf ändern */
#sp-top-bar #sp-top1 .social-icons {
  transform: translateY(-4px);
}


/* Alte Linie auf .sp-column entfernen und 5px höher neu setzen */
#sp-top-bar .sp-column {
  border-bottom: none !important;
  box-shadow: inset 0 -6px 0 -5px rgba(255, 255, 255, 0.22) !important;
	padding-bottom: 5px !important;
}

/* =========================================
   MOBILE + TABLET: TOP1 KOMPLETT AUSBLENDEN
   Muss ganz unten stehen!
   ========================================= */

@media (max-width: 991px) {
  #sp-top-bar #sp-top1 {
    display: none !important;
  }
}

/* =========================================
   OFFCANVAS MENU - JOOMLA 6 / HELIX
   wie ursprüngliches Joomla-3-Menü
   ========================================= */

/* Offcanvas Innenbereich */
.offcanvas-menu .offcanvas-inner {
  padding: 30px !important;
}

/* Module im Offcanvas */
.offcanvas-menu .offcanvas-inner .sp-module {
  margin: 0 0 25px 0 !important;
  padding: 0 !important;
}

/* Suchmodul Titel */
.offcanvas-menu .offcanvas-inner .sp-module-title {
  margin: 0 0 15px 0 !important;
  padding: 0 !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
}

/* Suche */
.offcanvas-menu .offcanvas-inner .search,
.offcanvas-menu .offcanvas-inner .search form {
  width: 100% !important;
  margin: 0 !important;
}

.offcanvas-menu .offcanvas-inner .search input[type="text"],
.offcanvas-menu .offcanvas-inner .search .search-query,
.offcanvas-menu .offcanvas-inner .search .inputbox {
  width: 100% !important;
  max-width: 100% !important;
  height: 42px !important;
  padding: 8px 12px !important;
  box-sizing: border-box !important;
}


/* =========================================
   HAUPTMENÜ VERTIKAL
   ========================================= */

.offcanvas-menu .offcanvas-inner ul.nav.menu {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Hauptmenüpunkte */
.offcanvas-menu .offcanvas-inner ul.nav.menu > li {
  display: block !important;
  float: none !important;
  width: 100% !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Hauptmenü-Links */
.offcanvas-menu .offcanvas-inner ul.nav.menu > li > a {
  display: block !important;
  float: none !important;
  width: 100% !important;
  padding: 11px 42px 11px 0 !important;
  margin: 0 !important;
  line-height: 2.35 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

/* Icons im Link */
.offcanvas-menu .offcanvas-inner ul.nav.menu > li > a i {
  margin-right: 6px !important;
}


/* =========================================
   PFEIL / TOGGLER RECHTS
   ========================================= */

.offcanvas-menu .offcanvas-inner ul.nav.menu > li.parent > .offcanvas-menu-toggler,
.offcanvas-menu .offcanvas-inner ul.nav.menu > li.deeper > .offcanvas-menu-toggler {
  position: absolute !important;
  top: 15px !important;
  right: 0 !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10 !important;
}

/* Pfeil Icons */
.offcanvas-menu .offcanvas-inner .offcanvas-menu-toggler i {
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================
   UNTERMENÜS - GESCHLOSSEN BLEIBEN
   ========================================= */

/* Geschlossene Untermenüs */
.offcanvas-menu .offcanvas-inner ul.nav.menu li > ul.collapse:not(.show) {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Während Bootstrap öffnet/schließt */
.offcanvas-menu .offcanvas-inner ul.nav.menu li > ul.collapsing {
  display: block !important;
  height: 0;
  overflow: hidden !important;
  visibility: visible !important;
  margin: 0 !important;
  padding: 0 0 8px 18px !important;
  list-style: none !important;
}

/* Geöffnete Untermenüs */
.offcanvas-menu .offcanvas-inner ul.nav.menu li > ul.collapse.show {
  display: block !important;
  height: auto !important;
  overflow: visible !important;
  visibility: visible !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 0 8px 18px !important;
  list-style: none !important;
  box-sizing: border-box !important;
}

/* Untermenü-Punkte */
.offcanvas-menu .offcanvas-inner ul.nav.menu li > ul.collapse.show > li,
.offcanvas-menu .offcanvas-inner ul.nav.menu li > ul.collapsing > li {
  display: block !important;
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Untermenü-Links */
.offcanvas-menu .offcanvas-inner ul.nav.menu li > ul.collapse.show > li > a,
.offcanvas-menu .offcanvas-inner ul.nav.menu li > ul.collapsing > li > a {
  display: block !important;
  float: none !important;
  width: 100% !important;
  padding: 8px 0 !important;
  margin: 0 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}


/* =========================================
   AKTIVE / CURRENT MENÜPUNKTE
   ========================================= */

.offcanvas-menu .offcanvas-inner ul.nav.menu li.active > a,
.offcanvas-menu .offcanvas-inner ul.nav.menu li.current > a {
  font-weight: 600 !important;
}

/* Keine Unterstreichung */
.offcanvas-menu .offcanvas-inner ul.nav.menu a,
.offcanvas-menu .offcanvas-inner ul.nav.menu a:hover,
.offcanvas-menu .offcanvas-inner ul.nav.menu a:focus,
.offcanvas-menu .offcanvas-inner ul.nav.menu a:active {
  text-decoration: none !important;
}


/* =========================================
   CLOSE BUTTON
   ========================================= */

.offcanvas-menu .close-offcanvas {
  text-decoration: none !important;
}

.offcanvas-menu .close-offcanvas i {
  line-height: 1 !important;
}
.offcanvas-menu .offcanvas-inner .sp-module ul > li a {
  -webkit-transition: 300ms;
  -o-transition: 300ms;
  transition: 600ms;
  padding: 12px 0px 12px 0;
  font-size: 18px;
  text-transform: uppercase;
  color: #333;
  font-weight: 500;
  line-height: 1.5;
}


