/* ===== NUR Seite 2626: Header soll NICHT sticky sein ===== */

/* Alle Sticky-Zustände vom Header neutralisieren */
body.page-id-2626.has-sticky-header .header-wrapper,
body.page-id-2626.has-sticky-header .header-wrapper.stuck,
body.page-id-2626.has-sticky-header .header-main,
body.page-id-2626.has-sticky-header .header-main.stuck,
body.page-id-2626.has-sticky-header .header-top,
body.page-id-2626.has-sticky-header .header-top.stuck,
body.page-id-2626 .header-wrapper.stuck,
body.page-id-2626 .header-main.stuck,
body.page-id-2626 .header-top.stuck,
body.page-id-2626 .sticky-header {
  position: relative !important;
  top: 0 !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Falls Flatsome irgendwo Platz für Sticky reserviert */
body.page-id-2626 .stuck {
  position: static !important;
  top: auto !important;
}

/* Sicherstellen, dass der Inhalt nicht nach unten geschoben wird */
body.page-id-2626 #wrapper,
body.page-id-2626 .site-content,
body.page-id-2626 #main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}


/* Dropdown breiter, Einträge einzeilig */
.nav-dropdown {
  min-width: 340px !important;
}
.nav-dropdown li a {
  white-space: nowrap !important;
  font-size: 14px !important;
  padding: 10px 16px !important;
}





/* ============================================================
   3) TYPOGRAFIE — global mit !important, AUSSER Startseite
   Gewinnt auch gegen Inline-Styles in HTML-Blöcken
   ============================================================ */

body:not(.home) {
  /* Hier zentral die Schriften ändern (Font muss in
     Flatsome > Customizer > Style > Typography geladen sein): */
  --ek-font-body: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --ek-font-head: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;

  --ek-color-body: #4a4a4a;
  --ek-color-head: #2b2b2b;
}

/* ---------- Fliesstext, Listen und H3: identische Typografie ---------- */
body:not(.home) #main p,
body:not(.home) #main li,
body:not(.home) #main ul,
body:not(.home) #main ol,
body:not(.home) #main h3,
body:not(.home) #main h3 span,
body:not(.home) .entry-content p,
body:not(.home) .entry-content li,
body:not(.home) .entry-content ul,
body:not(.home) .entry-content ol {
  font-family: var(--ek-font-body) !important;
  font-size: 17px !important;
  line-height: 1.75 !important;
  font-weight: 350 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  -webkit-text-stroke: 0.2px currentColor;
}

body:not(.home) #main p {
  margin-bottom: 1.3em;
}

/* Listenabstände wie Absätze */
body:not(.home) #main ul,
body:not(.home) #main ol {
  margin-bottom: 1.3em;
}

body:not(.home) #main li {
  margin-bottom: 0.35em;
}

/* Grundfarbe OHNE !important — damit heller Text auf dunklen
   Boxen (Inline-Styles) lesbar bleibt */
body:not(.home) #main p,
body:not(.home) #main li {
  color: var(--ek-color-body);
}

/* ---------- Überschriften H1/H2/H4–H6: Familie + Grossbuchstaben ---------- */
body:not(.home) #main h1,
body:not(.home) #main h2,
body:not(.home) #main h4,
body:not(.home) #main h5,
body:not(.home) #main h6,
body:not(.home) .section-title,
body:not(.home) .section-title span {
  font-family: var(--ek-font-head) !important;
  text-transform: uppercase !important;
  color: var(--ek-color-head);
  margin-bottom: 0.5em;
}

/* ---------- Grössen-Hierarchie ---------- */
body:not(.home) #main h1 {
  font-size: clamp(26px, 3.4vw, 36px) !important;
  line-height: 1.2 !important;
  font-weight: 300 !important;
  letter-spacing: 0.02em !important;
}

body:not(.home) #main h2 {
  font-size: clamp(21px, 2.6vw, 28px) !important;
  line-height: 1.3 !important;
  font-weight: 300 !important;
  letter-spacing: 0.03em !important;
}

body:not(.home) #main h4 {
  font-size: 16px !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
}

body:not(.home) #main h5,
body:not(.home) #main h6 {
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
}

/* ---------- Mobile: Fliesstext etwas kleiner ---------- */
@media (max-width: 549px) {
  body:not(.home) #main p,
  body:not(.home) #main li,
  body:not(.home) #main h3,
  body:not(.home) #main h3 span {
    font-size: 16px !important;
    line-height: 1.7 !important;
  }
}

/* ---------- Buttons/Formulare: Schriftfamilie angleichen ---------- */
body:not(.home) .button,
body:not(.home) button,
body:not(.home) input,
body:not(.home) select,
body:not(.home) textarea {
  font-family: var(--ek-font-body) !important;
}

/* ---------- H1 immer in Grossbuchstaben, überall ---------- */
h1,
h1 span,
.page-title h1,
.entry-title {
  text-transform: uppercase !important;
}





/* ============================================================
   Mobiles Menü: mehr Platz, Text bricht sauber um
   ============================================================ */

/* Menü-Panel breiter (statt 300px) */
.off-canvas .mfp-content,
.off-canvas-left .mfp-content,
.off-canvas-right .mfp-content,
#main-menu.mobile-sidebar {
  width: min(86vw, 360px) !important;
  max-width: 86vw !important;
}

/* Menüeinträge: rechts Luft, sauberer Zeilenumbruch */
#main-menu .nav-sidebar li > a,
#main-menu .nav-vertical li > a {
  padding-right: 22px !important;
  white-space: normal !important;
  line-height: 1.35 !important;
  overflow-wrap: break-word;
  hyphens: auto;
}

/* Etwas mehr Höhe für zweizeilige Einträge */
#main-menu .nav-sidebar > li > a {
  padding-top: 13px !important;
  padding-bottom: 13px !important;
}

/* Untermenü-Einträge kompakter, damit die Liste nicht zu lang wird */
#main-menu .nav-sidebar li li > a {
  padding-top: 7px !important;
  padding-bottom: 7px !important;
  font-size: 15px !important;
}