/* Custom CSS, Copyright by www.web2use.ch */

/* Biodiversität im Flug – geprüft und korrigiert am 17.09.2026. */

/**************************************
            Allgemein
**************************************/

:root {
  --bif-cream: #fbf6ea;
  --bif-sand: #efe3cd;
  --bif-ink: #2f2a23;
  --bif-brown: #4b3827;
  --bif-light-brown: #cfbfa3;
  --bif-green: #567235;
  --bif-link-green: #617C16;
  --bif-green-dark: #435928;
  --bif-white: #ffffff;
  --bif-red: #a31313;
  --bif-radius-sm: 12px;
  --bif-radius-lg: 34px;
  --bif-shadow: 0 18px 20px rgba(47, 42, 35, .12);
  --bif-shadow-soft: 0 10px 28px rgba(47, 42, 35, .08);
  --bif-container: 1620px;
  --bif-vf-css-ready: 1;
  --bif-vf-green: var(--bif-green, #567235);
  --bif-vf-text: var(--bif-ink, #2f2a23);
  --bif-vf-line: #dce3d4;
  --bif-vf-pale: #f5f7f0;
  --bif-vf-gap: 24px;
}

.bif-kachel-hell {
  border-radius: var(--bif-radius-lg);
  padding: 30px;
  background: var(--bif-cream);
}

.bif-kachel-border {
  border: 1px solid var(--bif-light-brown);
}

.sppb-addon-image-overlay {
  border-radius: var(--bif-radius-lg);
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--bif-cream);
  color: var(--bif-ink);
}

body,
.sppb-addon,
.sp-module {
  font-family: "Public Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

h1,
h2,
h3,
.bif-section-title,
.bif-bird-page-title {
  font-family: "Caveat", cursive;
  letter-spacing: .005em;
}

p:last-child {
  margin-bottom: 0;
}

img {
  border-radius: var(--bif-radius-sm);
}

a {
  color: var(--bif-link-green);
}

a:hover,
a:focus {
  color: var(--bif-green);
}

#sp-main-body {
  padding: 72px 0;
  background: var(--bif-cream);
}

.com-sppagebuilder #sp-main-body {
  padding-top: 0;
}

.sppb-addon-module .sppb-row-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/**************************************
            Header
**************************************/

#sp-header {
  background: rgba(251, 246, 234, .94) !important;
  box-shadow: 0 1px 0 rgba(75, 56, 39, .10);
  backdrop-filter: blur(14px);
}

#sp-header.header-sticky {
  box-shadow: 0 14px 35px rgba(47, 42, 35, .10);
}

#sp-header .logo,
#sp-header .logo a {
  color: var(--bif-green-dark) !important;
  font-weight: 800;
  letter-spacing: .01em;
  text-transform: none;
}

#sp-header .logo a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

#sp-header .logo a::before {
  display: none;
}

.full-header .container {
  max-width: 100%;
}

/**************************************
            Topnavigation
**************************************/

.sp-megamenu-parent > li > a {
  color: var(--bif-ink) !important;
  font-weight: 700;
  letter-spacing: .01em;
  padding: 0 18px;
}

.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li:hover > a,
.sp-megamenu-parent > li:focus-within > a {
  color: var(--bif-green) !important;
}

.sp-megamenu-parent > li > a::after {
  background-color: transparent !important;
}

.sp-megamenu-parent > li::after {
  display: none !important;
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  background: var(--bif-cream);
  border: 1px solid rgba(75, 56, 39, .10);
  border-radius: 18px;
  box-shadow: var(--bif-shadow-soft);
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
  color: var(--bif-ink) !important;
  font-weight: 500;
  font-family: "Public Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover {
  color: var(--bif-green) !important;
}

.sp-megamenu-parent .sp-mega-group > li > a {
  text-transform: none;
  font-weight: 500;
}

.sp-megamenu-parent .sp-mega-group > li > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
  font-size: 18px;
}

.sp-megamenu-parent .sp-mega-group > li > a.sp-group-title {
  text-transform: none;
  font-size: 28px;
  font-weight: 500;
  line-height: 28px;
}

/**************************************
            Off-Canvas
**************************************/

.offcanvas-menu {
  background: var(--bif-cream);
}

.offcanvas-menu .offcanvas-inner ul.menu > li a,
.offcanvas-menu .offcanvas-inner ul.menu > li span {
  color: var(--bif-ink);
  font-weight: 700;
}

.offcanvas-menu .offcanvas-inner ul.menu > li.active > a,
.offcanvas-menu .offcanvas-inner ul.menu > li a:hover {
  color: var(--bif-green);
}

.burger-icon > span {
  background-color: var(--bif-green-dark);
}

.offcanvas-menu .offcanvas-inner ul.menu > li > a {
  display: block;
  font-size: 26px;
  padding: 12px 0;
  position: relative;
  line-height: 18px;
  opacity: 0.7;
  transition: 0.3s;
}

body.ltr .offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > a > .menu-toggler {
  right: -10px;
  width: 105%;
  text-align: right;
  margin-left: -10px;
}

.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent li.menu-parent .menu-toggler {
  right: -10px;
  width: 105%;
  text-align: right;
  margin-left: -10px;
}

/**************************************
            Inhalt
**************************************/

.bif-section-title {
  color: var(--bif-brown);
  font-size: clamp(2.4rem, 4vw, 4rem);
  line-height: 1;
  margin-bottom: 12px;
}

.bif-main-column .bif-section-title {
  text-align: left;
}

.btn,
.sppb-btn,
body .sppb-btn.sppb-btn-primary.sppb-btn-rounded {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 13px 24px;
  color: var(--bif-white) !important;
  font-weight: 800;
  line-height: 1.2;
  background: var(--bif-green);
  border: 1px solid var(--bif-green-dark);
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(67, 89, 40, .18);
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.bif-feldlerche-hero {
  position: relative;
  background-color: #b8b58a !important;
  padding: 110px 0 90px;
}

.bif-feldlerche-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(255, 250, 241, .92) 0%, rgba(255, 250, 241, .68) 26%, rgba(255, 250, 241, 0) 50%);
}

.bif-massnahme-hero::before {
  background: linear-gradient(96deg, rgba(255, 250, 241, .94) 0%, rgba(255, 250, 241, .94) 55%, rgba(255, 250, 241, .08) 60%);
}

.bif-feldlerche-hero .sppb-row {
  position: relative;
  z-index: 1;
  max-width: 1180px;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}

.bif-bird-page-title {
  color: var(--bif-brown) !important;
  font-size: clamp(4rem, 7vw, 7.6rem) !important;
  line-height: .88 !important;
  margin-bottom: 6px !important;
}

.bif-bird-latin p {
  margin-bottom: 28px;
  color: var(--bif-brown);
  font-size: 1.25rem;
}

.bif-speech-card {
  max-width: 520px;
  padding: 28px 32px;
  font-size: 1.05rem;
  line-height: 1.55;
  background: #fffaf1;
  border-radius: 36px 1px 36px 36px;
  box-shadow: 0 18px 55px rgba(75, 56, 39, .16);
}

.bif-fact-card {
  background: rgba(255, 255, 255, .66);
  border: 1px solid rgba(75, 56, 39, .10);
  border-radius: 28px;
  box-shadow: 0 18px 55px rgba(75, 56, 39, .08);
  padding: 34px !important;
}

.bif-bird-hero-text {
  padding-right: 32px;
}

.bif-main-column {
  padding-right: 0;
}

.sppb-addon-single-image-container img {
  border-radius: var(--bif-radius-lg) !important;
}

/**************************************
            Startseite
**************************************/

.bif-hero-lead {
  max-width: 470px;
  margin-bottom: 32px;
  font-size: clamp(1.1rem, 1.35vw, 1.35rem);
  line-height: 1.65;
}

.bif-home-hero {
  position: relative;
  min-height: min(820px, 100vh);
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
}

.bif-home-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(90deg, rgba(251, 246, 234, .72) 10%, rgba(251, 246, 234, .32) 28%, rgba(251, 246, 234, 0) 100%);
  pointer-events: none;
}

.bif-home-hero .sppb-row {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--bif-container);
  margin: 0 auto;
  padding: 140px 24px 170px;
}

/**************************************
            Vogel-Kacheln
**************************************/

.bif-bird-person {
  width: 100%;
}

.bif-bird-person .sppb-person-image, .bif-massnahmen-person .sppb-person-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background: var(--bif-sand);
  border-radius: var(--bif-radius-lg) var(--bif-radius-lg) 0 0;
}

.bif-bird-person .sppb-person-image img,
.bif-massnahmen-person .sppb-person-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
  transition: transform .28s ease;
}

.bif-bird-person .sppb-person-information {
  display: flex;
  flex-direction: column;
  padding: 22px 24px 24px !important;
  background: #fbf6ea !important;
  border-top: 0;
  border-radius: 0 0 var(--bif-radius-lg) var(--bif-radius-lg);
  box-shadow: var(--bif-shadow-soft);
  transition: background-color .3s, box-shadow .3s, border-color .3s;
}

.bif-massnahmen-person .sppb-person-information {
  display: flex;
  flex-direction: column;
  padding: 22px 20px 24px !important;
  background: #fbf6ea !important;
  border-top: 0;
  border-radius: 0 0 var(--bif-radius-lg) var(--bif-radius-lg);
  box-shadow: var(--bif-shadow-soft);
  transition: background-color .3s, box-shadow .3s, border-color .3s;
}

.bif-bird-person:hover .sppb-person-information,
.bif-massnahmen-person:hover .sppb-person-information {
  background: #fff !important;
}

.bif-bird-person .sppb-person-name,
.bif-massnahmen-person .sppb-person-name {
  margin: 0 0 6px;
  color: var(--bif-brown);
  font-family: "Caveat", cursive;
  font-size: 1.8rem !important;
  font-weight: 700;
  line-height: .95;
}

.bif-bird-person .sppb-person-designation {
  color: rgba(47, 42, 35, .76);
  font-size: .98rem;
  line-height: 1.5;
}

.bif-bird-person:hover .sppb-person-image img,
.bif-bird-person:focus-within .sppb-person-image img,
.bif-massnahmen-person:hover .sppb-person-image img,
.bif-massnahmen-person:focus-within .sppb-person-image img {
  transform: scale(1.04);
}

.bif-bird-person:hover .sppb-person-information,
.bif-bird-person:focus-within .sppb-person-information,
.bif-massnahmen-person:hover .sppb-person-information,
.bif-massnahmen-person:focus-within .sppb-person-information {
  box-shadow: var(--bif-shadow);
}

/* Inhalt darf auf jeder Bildschirmbreite natürlich wachsen. */
.sppb-addon-person.bif-bird-person,
.sppb-addon-person.bif-massnahmen-person,
.sppb-addon-person.bif-bird-person > .sppb-addon-content,
.sppb-addon-person.bif-massnahmen-person > .sppb-addon-content {
  height: auto !important;
  max-height: none !important;
}

.sppb-addon-person.bif-bird-person .sppb-person-information,
.sppb-addon-person.bif-massnahmen-person .sppb-person-information {
  box-sizing: border-box;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-wrap: anywhere;
  /* Höhenkorrekturen sofort anwenden; Hover-Effekte beibehalten. */
  transition-property: background-color, box-shadow, border-color !important;
}

.sppb-addon-person.bif-bird-person .sppb-person-information > *,
.sppb-addon-person.bif-massnahmen-person .sppb-person-information > * {
  flex-shrink: 0;
}

/* Massnahmen-Kacheln: Text oben, Bild unten */
.sppb-addon-person.bif-massnahmen-person > .sppb-addon-content {
  display: flex;
  flex-direction: column-reverse;
}

/* Textbereich: Rundungen oben */
.bif-massnahmen-person > .sppb-addon-content > .sppb-person-information {
  border-radius: var(--bif-radius-lg) var(--bif-radius-lg) 0 0;
}

/* Bildbereich: Rundungen unten */
.bif-massnahmen-person > .sppb-addon-content > .sppb-person-image {
  margin-bottom: 0;
  border-radius: 0 0 var(--bif-radius-lg) var(--bif-radius-lg);
}

/**************************************
            Vogelkarussell
**************************************/

.sppb-team-carousel-layout1 .sppb-carousel-extended-item {
  /* Die vom Karussell berechnete Breite inklusive Innenabstand behalten. */
  flex: 0 0 auto;
  min-width: 0;
  box-sizing: border-box;
  margin: 0;
  padding: 0 15px;
}

.sppb-team-carousel-layout1 .sppb-carousel-extended-item > a {
  display: block;
}

.sppb-team-carousel-layout1 .sppb-carousel-extended-item > a > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.sppb-team-carousel-layout1 .sppb-carousel-extended-team-name {
  overflow-wrap: anywhere;
}

.sppb-carousel-extended-team-content.sppb-carousel-layout1 {
  background: none;
}

.sppb-carousel-extended-team-content {
  box-shadow: none;
  padding: 10px 20px 25px;
}

.sppb-carousel-extended-team-name {
  font-weight: 300;
  text-align: center;
}

.sppb-carousel-extended-item img {
  border-radius: var(--bif-radius-lg);
}

/**************************************
            Akkordeon
**************************************/

.sppb-addon-accordion .sppb-panel-title {
  font-size: 36px;
  color: #4b3827;
  font-weight: 600;
}

.sppb-addon-accordion .sppb-panel {
  background: none !important;
}

.sppb-addon-accordion .sppb-panel:nth-child(odd) {
  background: #F4EAD9 !important;
}

.sppb-addon-accordion .sppb-panel.sppb-panel-custom {
  border-radius: 40px !important;
}


.sppb-addon-accordion .sppb-accordion-icon-wrap .fas { color: #4b3827 !important;}	

@media (min-width: 990px) {
.sppb-addon-accordion .sppb-accordion-icon-wrap {padding-top: 15px;}

}


/**************************************
            Aufwandsanzeige
**************************************/

.bif-effort {
  width: min(100%, 360px);
  margin: 0 auto;
  text-align: center;
}

.bif-effort__svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.bif-effort[data-level="1"] .bif-effort__needle {
  transform: rotate(-67.5deg);
}

.bif-effort[data-level="2"] .bif-effort__needle {
  transform: rotate(-22.5deg);
}

.bif-effort[data-level="3"] .bif-effort__needle {
  transform: rotate(22.5deg);
}

.bif-effort[data-level="4"] .bif-effort__needle {
  transform: rotate(67.5deg);
}

.bif-effort .bif-effort__needle {
  transform-box: view-box;
  transform-origin: 200px 200px;
}

/**************************************
            Bild-Copyright
**************************************/

.bif-credit-aeschlimann {
  --bif-credit: "Ruedi Aeschlimann";
}


.bif-credit-burkhardt {
  --bif-credit: "Marcel Burkhardt";
}


.bif-credit-vogelwarte {
  --bif-credit: "Schweizerische Vogelwarte";
}

.bif-credit-ornitho-fr {
  --bif-credit: "Station ornithologique suisse";
}

.bif-credit-ornitho-it {
  --bif-credit: "Stazione ornitologica svizzera";
}



.bif-copyright-host {
  --bif-credit-right: 12px;
  --bif-credit-bottom: 12px;
}

.bif-copyright-relative {
  position: relative;
}

.bif-vogelhero.bif-copyright-host {
  --bif-credit-right: 20px;
  --bif-credit-bottom: 55px;
}

.bif-copyright-host > .bif-copyright-button {
  position: absolute;
  right: var(--bif-credit-right);
  bottom: var(--bif-credit-bottom);
  z-index: 10;
  display: flex;
  align-items: center;
  gap: 0;
  width: auto;
  min-width: 36px;
  height: 36px;
  max-width: none;
  margin: 0;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 18px;
  background: #000;
  color: #fff;
  box-shadow: 0 2px 8px rgb(0 0 0 / 15%);
  font-family: inherit;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  text-transform: none;
  cursor: pointer;
  appearance: none;
}

.bif-copyright-button .bif-copyright-name {
  display: flex;
  min-width: 0;
  max-width: none;
  overflow: visible;
  opacity: 0;
  white-space: nowrap;
  text-overflow: clip;
  transition: clip-path 280ms ease, opacity 180ms ease;
  flex: 0 0 auto;
  padding: 0 10px 0 14px;
  position: absolute;
  top: 0;
  right: 100%;
  align-items: center;
  height: 36px;
  border-radius: 18px 0 0 18px;
  background: #000;
  color: #fff;
  clip-path: inset(0 0 0 100%);
  pointer-events: none;
}

.bif-copyright-button .bif-copyright-symbol {
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  height: 36px;
  font-size: 20px;
}

.bif-copyright-button[aria-expanded="true"] .bif-copyright-name {
  opacity: 1;
  clip-path: inset(0 0 0 0);
  pointer-events: auto;
}

.bif-copyright-host > .bif-copyright-button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

.bif-copyright-host > .bif-copyright-button[aria-expanded="true"] {
  border-radius: 0 18px 18px 0;
}

/**************************************
            Massnahmen und Profiteure
**************************************/

.bif-featurebox {
  padding: 30px;
  border-radius: var(--bif-radius-lg);
}

.bif-featurebox.bif-praxistipp {
  background: rgba(97, 124, 22, .1);
}

.bif-featurebox.bif-infos {
  background: rgba(82, 104, 123, .1);
}

.bif-profiteur .sppb-addon-title {
  padding-top: 15px;
}

@media (max-width: 990px) {

  .bif-praxistipp .sppb-media,
  .bif-infos .sppb-media {
    overflow: visible;
  }

  .bif-praxistipp .sppb-media > .pull-left,
  .bif-infos .sppb-media > .pull-left {
    float: none !important;
    width: 100% !important;
    margin-right: 0 !important;
    text-align: center !important;
  }

  .bif-praxistipp .sppb-media .sppb-img-responsive,
  .bif-infos .sppb-media .sppb-img-responsive {
    width: 100px !important;
    height: auto !important;
    margin-bottom: 30px;
  }

  .bif-praxistipp .sppb-media-body,
  .bif-infos .sppb-media-body {
    display: block;
    width: 100% !important;
    overflow: visible !important;
    clear: both;
  }

  .bif-praxistipp .sppb-feature-box-title,
  .bif-infos .sppb-feature-box-title {
    width: 100%;
    padding-bottom: 20px;
    text-align: center;
  }
}

/**************************************
            Partner und Sponsoren
**************************************/

.sponsoren {
  background: var(--bif-light-brown);
}

.no-radius img {
  border-radius: 0 !important;
}

/**************************************
            Vogelfilter Startseite
**************************************/

#sp-page-builder .bif-vf-root.bif-vf-ready [hidden] {
  display: none !important;
}

#sp-page-builder .bif-vf-root .bif-vf-form {
  width: 100%;
  margin: 0 0 32px;
  padding: 26px 28px 18px;
  color: var(--bif-vf-text);
  background: var(--bif-cream);
  border: 1px solid var(--bif-sand);
  border-radius: var(--bif-radius-lg);
  box-sizing: border-box;
  font: inherit;
  text-align: left;
}

#sp-page-builder .bif-vf-root .bif-vf-intro {
  margin: 0 0 22px;
  color: var(--bif-vf-text);
  font-size: 17px;
  line-height: 1.5;
}

#sp-page-builder .bif-vf-root .bif-vf-fields {
  display: grid;
  grid-template-columns: 0.8fr 1fr 1.6fr;
  gap: 28px;
}

#sp-page-builder .bif-vf-root .bif-vf-fieldset {
  display: block;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

#sp-page-builder .bif-vf-root .bif-vf-fieldset + .bif-vf-fieldset {
  padding-left: 28px;
  border-left: 1px solid var(--bif-sand);
}

#sp-page-builder .bif-vf-root .bif-vf-legend {
  float: none;
  width: 100%;
  margin: 0 0 14px;
  padding: 0;
  color: var(--bif-vf-text);
  font-size: 19px;
  font-weight: 700;
  line-height: 1.5;
}

#sp-page-builder .bif-vf-root .bif-vf-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin-right: 9px;
  color: var(--bif-brown);
  background: var(--bif-sand);
  border-radius: 50%;
  font-size: 15px;
  vertical-align: text-bottom;
}

#sp-page-builder .bif-vf-root .bif-vf-choices {
  display: grid;
  gap: 3px;
}

#sp-page-builder .bif-vf-root .bif-vf-option {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
  min-height: 42px;
  margin: 0;
  padding: 7px 9px;
  color: var(--bif-vf-text);
  background: transparent;
  border-radius: 7px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  box-sizing: border-box;
}

#sp-page-builder .bif-vf-root .bif-vf-option:has(input:checked) {
  background: var(--bif-sand);
}

#sp-page-builder .bif-vf-root .bif-vf-option:has(input:focus-visible) {
  outline: 2px solid var(--bif-vf-green);
  outline-offset: 2px;
}

#sp-page-builder .bif-vf-root .bif-vf-radio {
  appearance: auto;
  display: inline-block;
  position: static;
  flex: 0 0 19px;
  width: 19px;
  height: 19px;
  margin: 0;
  padding: 0;
  opacity: 1;
  accent-color: var(--bif-brown);
  cursor: pointer;
}

#sp-page-builder .bif-vf-root .bif-vf-hint {
  margin: 15px 9px 0;
  color: #58644f;
  font-size: 13px;
  line-height: 1.5;
}

#sp-page-builder .bif-vf-root .bif-vf-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 23px;
  padding-top: 14px;
  border-top: 1px solid var(--bif-sand);
}

#sp-page-builder .bif-vf-root .bif-vf-status {
  margin: 0;
  color: var(--bif-vf-text);
  font-size: 15px;
  line-height: 1.5;
  font-weight: 600;
}

#sp-page-builder .bif-vf-root .bif-vf-reset {
  appearance: none;
  min-height: 42px;
  margin: 0;
  padding: 8px 12px;
  color: var(--bif-brown);
  background: transparent;
  border: 1px solid var(--bif-brown);
  border-radius: 7px;
  box-shadow: none;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  text-transform: none;
  cursor: pointer;
}

#sp-page-builder .bif-vf-root .bif-vf-reset:hover:not(:disabled) {
  background: var(--bif-vf-pale);
}

#sp-page-builder .bif-vf-root .bif-vf-reset:focus-visible {
  outline: 2px solid var(--bif-vf-green);
  outline-offset: 3px;
}

#sp-page-builder .bif-vf-root .bif-vf-reset:disabled {
  color: var(--bif-light-brown);
  border: 1px solid var(--bif-light-brown);
  opacity: 1;
  cursor: default;
}

#sp-page-builder .bif-vf-root .bif-vf-empty {
  margin: 0;
  padding: 24px;
  color: var(--bif-vf-text);
  background: var(--bif-vf-pale);
  border: 1px solid var(--bif-vf-line);
  border-radius: 10px;
  font-size: 17px;
  line-height: 1.6;
}

/* Die zwölf Originalspalten werden direkte Kinder dieses gemeinsamen Rasters.
ID-basierte Spaltenbreiten aus SP Page Builder werden nur hier aufgehoben. */
#sp-page-builder .bif-vf-root.bif-vf-ready .bif-vf-results {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  align-items: start;
  gap: var(--bif-vf-gap);
  width: 100%;
  margin: 0;
  padding: 0;
}

#sp-page-builder .bif-vf-root.bif-vf-ready .bif-vf-results > .bif-vf-item {
  display: block;
  float: none;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex-basis: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  order: 0 !important;
  box-sizing: border-box;
}

#sp-page-builder .bif-vf-root .bif-vf-item > .sppb-column,
#sp-page-builder .bif-vf-root .bif-vf-item > .sppb-column > .sppb-column-addons {
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

#sp-page-builder .bif-vf-root .bif-vf-item .sppb-addon-wrapper {
  margin: 0 !important;
}

/* Lange Vogelnamen bleiben im schmaleren Raster mit sechs Spalten lesbar. */
@media (min-width: 1400px) {
  #sp-page-builder .bif-vf-root .bif-vf-item .sppb-person-name {
    font-size: clamp(1.4rem, 1.6vw, 2rem) !important;
  }
}

@media (max-width: 1399.98px) {
  #sp-page-builder .bif-vf-root.bif-vf-ready .bif-vf-results {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 899.98px) {
  #sp-page-builder .bif-vf-root.bif-vf-ready .bif-vf-results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #sp-page-builder .bif-vf-root .bif-vf-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }
  #sp-page-builder .bif-vf-root .bif-vf-fieldset:nth-child(3) {
    grid-column: 1 / -1;
    padding: 20px 0 0;
    border-left: 0;
    border-top: 1px solid var(--bif-vf-line);
  }
  #sp-page-builder .bif-vf-root .bif-vf-fieldset:nth-child(3) .bif-vf-choices {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 599.98px) {
  #sp-page-builder .bif-vf-root.bif-vf-ready .bif-vf-results {
    grid-template-columns: minmax(0, 1fr);
  }
  #sp-page-builder .bif-vf-root .bif-vf-form {
    padding: 20px 16px 14px;
    margin-bottom: 24px;
  }
  #sp-page-builder .bif-vf-root .bif-vf-fields {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }
  #sp-page-builder .bif-vf-root .bif-vf-fieldset + .bif-vf-fieldset {
    grid-column: auto;
    padding: 18px 0 0;
    border-left: 0;
    border-top: 1px solid var(--bif-vf-line);
  }
  #sp-page-builder .bif-vf-root .bif-vf-choices,
  #sp-page-builder .bif-vf-root .bif-vf-fieldset:nth-child(3) .bif-vf-choices {
    grid-template-columns: minmax(0, 1fr);
  }
  #sp-page-builder .bif-vf-root .bif-vf-legend {
    font-size: 18px;
    margin-bottom: 9px;
  }
  #sp-page-builder .bif-vf-root .bif-vf-hint {
    margin-top: 10px;
  }
}

/**************************************
            Footer
**************************************/

#sp-bottom,
#sp-footer {
  color: var(--bif-cream);
  background: var(--bif-footer, #2E3C19) !important;
}

#sp-footer {
  padding: 34px 0;
  font-size: .95rem;
}

#sp-footer a,
#sp-bottom a {
  color: #EFE3CD;
}

#sp-footer a:hover,
#sp-bottom a:hover {
  color: var(--bif-white);
}

#sp-bottom h3 {
  color: #fff;
}

#sp-bottom .form-control {
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,.3);
}

#sp-bottom .input-group button.input-password-toggle {
  background: rgba(255,255,255,.1);
}

#sp-bottom .list-group-item {
  background-color: transparent;
  border: 0;
}

#sp-bottom {
  font-size: 18px;
}

#sp-bottom .sp-module .langswitch ul > li {
  display: inline-block !important;
  padding: 10px 15px;
    font-size: 20px;
  font-weight: 600;
	  border-radius: 10px;
}


/**************************************
            Mediaqueries
**************************************/

@media (max-width: 480px) {
  .logo-image {
    height: 50px;
  }

  .bif-feldlerche-hero::before {
    background: linear-gradient(0deg, rgba(255, 250, 241, .92) 0%, rgba(255, 250, 241, .68) 65%, rgba(255, 250, 241, .08) 65%);
  }
}

@media (max-width: 575px) {
  #column-id-a0ce3fc4-5c6d-43d3-8447-b7ee9e0d36f5 {
    padding-top: 250px;
  }


}

@media (max-width: 579.98px) {
  .bif-feldlerche-hero .sppb-row {
    padding-left: 18px;
    padding-right: 18px;
  }

  .bif-fact-card {
    padding: 22px !important;
  }

  .bif-bird-page-title {
    font-size: 4rem !important;
  }

  .bif-speech-card {
    padding: 24px;
    border-radius: 26px;
  }

  .bif-home-hero .sppb-row {
    padding-top: 112px;
    padding-bottom: 140px;
  }

  .bif-bird-person .sppb-person-information {
    padding: 20px !important;
  }

  .sppb-addon-person .sppb-person-information > span.sppb-person-designation {
    font-size: 18px;
  }

}

@media (max-width: 767.98px) {
  .sp-page-builder .page-content .bif-vogelhero .sppb-row-container {
    width: 100%;
    max-width: 100%;
  }

  .sp-page-builder .page-content .bif-vogelhero .sppb-row {
    margin-top: 250px;
  }
}

@media (max-width: 768px) {
  .bif-massnahme-hero::before {
    background: linear-gradient(0deg, rgba(255, 250, 241, 1) 0%, rgba(255, 250, 241, 1) 65%, rgba(255, 250, 241, 0) 65%);
  }

  .bif-massnahme-hero .sppb-row-container {
    margin-top: 200px;
  }

  .sp-page-builder .page-content .bif-hero-untersaat {
    background-size: 200% !important;
    background-position: 70% 130% !important;
  }
}

@media (max-width: 989.98px) {
  .bif-feldlerche-hero {
    padding: 88px 0 70px;
  }

  .bif-bird-hero-text {
    padding-right: 0;
  }

  #sp-main-body {
    padding: 48px 0;
  }

  .bif-main-column {
    padding-right: 0 !important;
  }

  .bif-home-hero .sppb-row {
    padding-left: 18px;
    padding-right: 18px;
  }

  .bif-bird-person {
    margin-bottom: 22px;
  }

  .bif-massnahmenvogelcontainer {
    margin-top: 75px !important;
  }

    #sp-footer #sp-footer2 {
  text-align: left;
  margin-top: 20px;
}
   
	#sp-bottom .sp-module .langswitch ul {margin: 50px 0;}
	
    #sp-bottom .sp-module .langswitch ul > li {
  display: inline-block !important;
}
	
	.offcanvas-menu .mod-languages {margin-left: 10px;}
	.offcanvas-menu .mod-languages a {font-weight: 600;}
    .offcanvas-menu .mod-languages li {padding: 6px 12px !important;}
}

@media (max-width: 1250px) {
  .burger-icon > span {
    height: 4px;
    width: 40px;
    margin-left: -20px;
  }

  .close-offcanvas .burger-icon > span {
    height: 2px;
  }

  #sp-header .sp-megamenu-parent {
    display: none !important;
  }

  #sp-header #sp-menu .sp-megamenu-wrapper {
    justify-content: flex-end;
  }

  #sp-header .sp-megamenu-wrapper > #offcanvas-toggler:not(.offcanvas-toggler-secondary) {
    display: flex !important;
    margin-left: auto;
  }

  #sp-header .sp-megamenu-wrapper > #offcanvas-toggler .burger-icon {
    width: 40px;
  }

  #sp-header .sp-megamenu-wrapper > #offcanvas-toggler .burger-icon > span {
    margin-left: 0;
  }

  #sp-header.full-header-center #offcanvas-toggler.offcanvas-toggler-secondary {
    display: none !important;
  }

  #sp-header .header-modules {
    display: none !important;
  }

  .social-wrap {
    display: none !important;
  }
}

@media (min-width: 330px) and (max-width: 379.98px) {
  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 100% !important;
    background-position: 78% 180% !important;
  }
}

@media (min-width: 380px) and (max-width: 439.98px) {
  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 100% !important;
    background-position: 78% 150% !important;
  }
}

@media (min-width: 440px) and (max-width: 479.98px) {
  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 100% !important;
    background-position: 78% 150% !important;
  }
}

@media (min-width: 480px) and (max-width: 549.98px) {
  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 100% !important;
    background-position: 78% 160% !important;
  }
}

@media (min-width: 550px) and (max-width: 619.98px) {
  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 100% !important;
    background-position: 78% 140% !important;
  }
}

@media (min-width: 620px) and (max-width: 679.98px) {
  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 260% !important;
    background-position: 78% 100% !important;
  }
}

@media (min-width: 680px) and (max-width: 767.98px) {
  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 260% !important;
    background-position: 78% 80% !important;
  }
}

@media (min-width: 768px) and (max-width: 989.98px) {
  .sponsoren .sppb-img-responsive {
    max-width: 200px !important;
  }

  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 180% !important;
    background-position: 70% 60% !important;
  }
}

@media (min-width: 990px) {
  .sponsoren .sppb-img-responsive {
    max-width: 300px !important;
  }

  /* Das bestehende Script synchronisiert die Texthöhe ab 990 px. */
  .sppb-addon-person.bif-bird-person .sppb-person-information,
  .sppb-addon-person.bif-massnahmen-person .sppb-person-information {
    min-height: var(--bif-person-info-height, 0px) !important;
  }
}

@media (min-width: 990px) and (max-width: 1199.98px) {
  .bif-feldlerche-hero .sppb-row {
    gap: 32px;
  }

  .logo-image {
    height: 50px;
  }

  .sp-megamenu-parent > li > a {
    font-size: 20px;
  }

  .sponsoren .sppb-img-responsive {
    max-width: 250px !important;
  }

  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 150% !important;
    background-position: 65% 50% !important;
  }

  .addon-root-team-carousel .sppb-carousel-extended-team-name {
    font-size: 16px;
  }
}

@media (min-width: 580px) and (max-width: 989.98px) {

  /* Die eigentlichen Kachelreihen auf zwei CSS-Spalten umstellen.
  Section-Titel und Filterformular liegen ausserhalb dieser Container. */
  #sp-page-builder :is(
    .bif-unterstuetzung > .sppb-row-container > .sppb-row,
    .bif-massnahmenvogelcontainer > .sppb-row-container > .sppb-row,
    .bif-vf-root.bif-vf-ready .bif-vf-results
  ):not([hidden]) {
    display: block !important;
    width: 100%;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    column-count: 2;
    column-gap: 24px;
    column-fill: balance;
  }

  /* Jede Page-Builder-Spalte wird zu einer unteilbaren Kachel.
  ID-basierte Spaltenbreiten und Aussenabstände werden übersteuert.
  Ausgefilterte Kacheln bleiben verborgen. */
  #sp-page-builder :is(
    .bif-unterstuetzung > .sppb-row-container > .sppb-row,
    .bif-massnahmenvogelcontainer > .sppb-row-container > .sppb-row,
    .bif-vf-root.bif-vf-ready .bif-vf-results
  ) > .sppb-row-column:not([hidden]) {
    display: inline-block !important;
    float: none !important;
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    flex: none !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    vertical-align: top;
    break-inside: avoid;
    page-break-inside: avoid;
  }

  /* Der Abstand entsteht bereits an der umgebenden Page-Builder-Spalte. */
  #sp-page-builder :is(
    .bif-unterstuetzung,
    .bif-massnahmenvogelcontainer,
    .bif-vf-root.bif-vf-ready
  ) .sppb-addon-person:is(.bif-bird-person, .bif-massnahmen-person) {
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Im Masonry-Bereich die natürliche Texthöhe verwenden.
  Das Script darf seine Variable weiter setzen; sie wirkt erst ab 990 px. */
  #sp-page-builder :is(
    .bif-unterstuetzung,
    .bif-massnahmenvogelcontainer,
    .bif-vf-root.bif-vf-ready
  ) .sppb-addon-person:is(.bif-bird-person, .bif-massnahmen-person)
    > .sppb-addon-content > .sppb-person-information {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .addon-root-team-carousel .sppb-carousel-extended-team-name {
    font-size: 16px !important;
  }
}

@media (min-width: 1200px) and (max-width: 1399.98px) {
  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 150% !important;
    background-position: 80% 50% !important;
  }

  .bif-massnahmenvogelcontainer .sppb-row-column {
    max-width: 33.333332% !important;
    flex-basis: 33.333332% !important;
    margin-bottom: 30px;
  }

  .bif-bird-person .sppb-person-name,
  .bif-massnahmen-person .sppb-person-name {
    font-size: 1.2rem !important;
  }

  .addon-root-team-carousel .sppb-carousel-extended-team-name {
    font-size: 16px;
  }
}

@media (min-width: 1200px) and (max-width: 1439.98px) {
  .logo-image {
    height: 56px;
  }

  .sp-megamenu-parent > li > a {
    font-size: 24px;
  }
	
	h3 {font-size: 28px;}
}

@media (min-width: 1400px) and (max-width: 1599px) {
.bif-status .bif-status__row {font-size: .8rem !important;}
}

@media (max-width: 1199.98px)  { 
    .bif-mit-bindestrich {display: none;}
}


@media (min-width: 1200px) and (max-width: 1619.98px) {
    .bif-ohne-bindestrich {display: none;}    
}

@media (min-width: 1620px) {
    .bif-mit-bindestrich {display: none;}
}

@media (min-width: 1400px) {
  .container {
    max-width: var(--bif-container);
  }
}

@media (min-width: 1400px) and (max-width: 1549.98px) {
  .bif-bird-person .sppb-person-name {
    font-size: 24px !important;
  }

  .sp-page-builder .page-content .bif-vogelhero {
    background-size: 130% !important;
    background-position: 70% 50% !important;
  }
    
  .bif-bird-person .sppb-person-name,
  .bif-massnahmen-person .sppb-person-name {
    font-size: 1.7rem !important;
  }    
	
	  .logo-image {
    height: 70px;
  }

}

@media (prefers-reduced-motion: reduce) {
  .bif-copyright-button .bif-copyright-name {
    transition: none;
  }
}

/* Startseiten-Hero DE / FR / IT — zur Übernahme ans Ende der custom.css.
   Voraussetzung: bestehende Klassen bif-home-hero, bif-section-title, bif-hero-lead.
   Nach der Übernahme die bisherigen Hero-Regeln aus dem deutschen Seiten-CSS entfernen.
   Bild: 1983 × 1200. Titel und Einleitung bleiben separate vorhandene Addons. */

.bif-home-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  width: 100% !important;
  max-width: 100% !important;
  height: clamp(480px, 45vw, 700px) !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background-image: url('/images/einzelne-vogelseiten/feldlerche.jpg') !important;
  background-size: 400% auto !important;
  background-position: left center !important;
  background-repeat: no-repeat !important;
  background-color: #f4ead9;
}
.bif-home-hero::before {
  content: '';
  display: block;
  position: static;
  grid-area: 1 / 1;
  justify-self: end;
  width: auto;
  height: 100%;
  aspect-ratio: 1983 / 1200;
  pointer-events: none;
  background: url('/images/einzelne-vogelseiten/feldlerche.jpg') right center / contain no-repeat;
  mask-image: linear-gradient(to right, transparent, #000 25%);
}
.bif-home-hero > .sppb-row-container {
  grid-area: 1 / 1;
  align-self: center;
  position: relative;
  z-index: 1;
  width: 100% !important;
  max-width: none !important;
  padding: 48px clamp(24px, 8vw, 150px) !important;
}
.bif-home-hero > .sppb-row-container > .sppb-row {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
}
.bif-home-hero > .sppb-row-container > .sppb-row > .sppb-row-column {
  flex: 0 0 44% !important;
  max-width: 44% !important;
  padding: 0 !important;
}
.bif-home-hero > .sppb-row-container > .sppb-row > .sppb-row-column > .sppb-column {
  padding: 0 !important;
}
.bif-home-hero .bif-section-title .sppb-addon-title {
  font-size: clamp(40px, 5.5vw, 72px) !important;
  line-height: 1.12 !important;
  margin: 0 0 24px !important;
}
.bif-home-hero .bif-hero-lead .sppb-addon-title {
  font-size: clamp(20px, 2.5vw, 32px) !important;
  line-height: 1.55 !important;
  margin: 0 !important;
}
/* Etwas längere französische/italienische Titel passen in die linke Textspalte. */
@media (min-width: 992px) {
  .bif-home-hero:lang(fr) .bif-section-title .sppb-addon-title,
  .bif-home-hero:lang(it) .bif-section-title .sppb-addon-title {
    font-size: clamp(36px, 4.2vw, 60px) !important;
  }
}

/* Kleine Bildschirme: Vogel oben, Texte darunter auf durchgehendem Himmel. */
@media (max-width: 991.98px) {
  .bif-home-hero {
    height: auto !important;
    background-position: left bottom !important;
  }
  .bif-home-hero::before {
    width: 100%;
    max-width: 740.32px;
    height: clamp(200px, 51vw, 320px);
    aspect-ratio: auto;
    background-size: auto 140%;
    mask-image: linear-gradient(to right, transparent, #000 25%), linear-gradient(#000 82%, transparent);
    mask-composite: intersect;
  }
  .bif-home-hero > .sppb-row-container {
    grid-area: 2 / 1;
    padding: 8px clamp(24px, 6vw, 48px) 32px !important;
  }
  .bif-home-hero > .sppb-row-container > .sppb-row > .sppb-row-column {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
  .bif-home-hero .bif-section-title,
  .bif-home-hero .bif-hero-lead {
    margin-bottom: 0 !important;
  }
  .bif-home-hero .bif-section-title .sppb-addon-title {
    font-size: clamp(36px, 5.5vw, 48px) !important;
    margin-bottom: 16px !important;
  }
  .bif-home-hero .bif-hero-lead .sppb-addon-title {
    font-size: clamp(18px, 2.6vw, 22px) !important;
    line-height: 1.45 !important;
  }
  .bif-home-hero > .sppb-bottom-shape {
    display: block !important;
  }
  .bif-home-hero > .sppb-bottom-shape,
  .bif-home-hero > .sppb-bottom-shape svg {
    height: 24px !important;
  }
}

/* 680–991 px: beide Texte links, vollständiger Vogel rechts. */
@media (min-width: 680px) and (max-width: 991.98px) {
  .bif-home-hero {
    height: clamp(380px, 45vw, 440px) !important;
    background-position: left center !important;
  }
  .bif-home-hero::before {
    width: auto;
    max-width: none;
    height: 100%;
    aspect-ratio: 1983 / 1200;
    background-size: contain;
    mask-image: linear-gradient(to right, transparent, #000 25%);
    mask-composite: add;
  }
  .bif-home-hero > .sppb-row-container {
    grid-area: 1 / 1;
    padding: 32px clamp(24px, 4vw, 40px) !important;
  }
  .bif-home-hero > .sppb-row-container > .sppb-row > .sppb-row-column {
    flex-basis: 46% !important;
    max-width: 46% !important;
  }
  .bif-home-hero .bif-section-title .sppb-addon-title {
    font-size: clamp(36px, 4.6vw, 44px) !important;
  }
  .bif-home-hero .bif-hero-lead .sppb-addon-title {
    font-size: clamp(18px, 2.3vw, 22px) !important;
  }
}

/* 480–679 px: Titel neben dem Vogel, Einleitung in voller Breite darunter. */
@media (min-width: 480px) and (max-width: 679.98px) {
  .bif-home-hero {
    grid-template-columns: minmax(0, 46fr) minmax(0, 54fr);
  }
  .bif-home-hero::before {
    grid-area: 1 / 1 / 2 / 3;
    width: min(100%, clamp(475.92px, 83.286vw, 555.24px));
    max-width: none;
    height: clamp(240px, 42vw, 280px);
    background-size: auto 120%;
  }
  .bif-home-hero > .sppb-row-container,
  .bif-home-hero > .sppb-row-container > .sppb-row,
  .bif-home-hero > .sppb-row-container > .sppb-row > .sppb-row-column,
  .bif-home-hero > .sppb-row-container > .sppb-row > .sppb-row-column > .sppb-column,
  .bif-home-hero > .sppb-row-container > .sppb-row > .sppb-row-column > .sppb-column > .sppb-column-addons {
    display: contents !important;
  }
  .bif-home-hero .addon-root-heading {
    grid-area: 1 / 1;
    align-self: center;
    position: relative;
    z-index: 1;
    min-width: 0;
    padding-left: clamp(24px, 4vw, 28px);
  }
  .bif-home-hero .bif-section-title .sppb-addon-title {
    font-size: clamp(32px, 5.5vw, 36px) !important;
    margin: 0 !important;
  }
  .bif-home-hero .addon-root-text-block {
    grid-area: 2 / 1 / 3 / 3;
    position: relative;
    z-index: 1;
    min-width: 0;
    padding: 0 clamp(24px, 4vw, 28px) 40px;
  }
  .bif-home-hero .bif-hero-lead {
    max-width: none !important;
    width: 100% !important;
  }
}

/* Menü bei sehr schmalen Geräten innerhalb der Kopfzeile halten. */
@media (max-width: 359.98px) {
  body:has(.bif-home-hero) #sp-logo .logo-image {
    max-width: calc(100vw - 128px) !important;
    height: auto !important;
  }
}

