.elementor-168656 .elementor-element.elementor-element-f1b9b8c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-168656 .elementor-element.elementor-element-b971bd5{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Arial, sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-168656 .elementor-element.elementor-element-cda47c5 .elementor-heading-title{font-family:var( --e-global-typography-9624656-font-family ), Arial, sans-serif;font-size:var( --e-global-typography-9624656-font-size );font-weight:var( --e-global-typography-9624656-font-weight );text-transform:var( --e-global-typography-9624656-text-transform );line-height:var( --e-global-typography-9624656-line-height );color:var( --e-global-color-1254bafa );}.elementor-168656 .elementor-element.elementor-element-852439b{--display:flex;}.elementor-168656 .elementor-element.elementor-element-c2808a4{--display:flex;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-168656 .elementor-element.elementor-element-cda47c5 .elementor-heading-title{font-size:var( --e-global-typography-9624656-font-size );line-height:var( --e-global-typography-9624656-line-height );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-168656 .elementor-element.elementor-element-cda47c5 .elementor-heading-title{font-size:var( --e-global-typography-9624656-font-size );line-height:var( --e-global-typography-9624656-line-height );}}/* Start custom CSS for html, class: .elementor-element-539bcc1 */.bsz-team{
  --bsz-teal:#006f7e;
  --bsz-teal-dark:#063f47;
  --bsz-gold:#8b6a23;
  --bsz-gold-light:#e7cd90;
  --bsz-gap:24px;                 /* Abstand zwischen Karten */
  --bsz-radius:16px;
  --bsz-placeholder:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27400%27%20height%3D%27400%27%3E%3Crect%20width%3D%27400%27%20height%3D%27400%27%20fill%3D%27%23dfeaec%27%2F%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27%239bb4b8%27%20stroke-width%3D%276%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%27150%27%20y%3D%27158%27%20width%3D%27100%27%20height%3D%2784%27%20rx%3D%278%27%2F%3E%3Ccircle%20cx%3D%27176%27%20cy%3D%27186%27%20r%3D%2710%27%2F%3E%3Cpath%20d%3D%27M154%20236%20l30%20-28%2022%2020%2028%20-28%2012%2012%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  max-width:1200px;
  margin-inline:auto;
  margin-bottom:var(--bsz-gap);   /* Abstand zum Footer */
  padding:8px;
  font-family:inherit;
}
.bsz-team *,.bsz-team *::before,.bsz-team *::after{box-sizing:border-box;}

/* --- Masonry-Raster ueber CSS-Spalten --- */
.bsz-team-grid{
  column-count:4;
  column-gap:var(--bsz-gap);
  column-fill:balance;
}
@media (max-width:1000px){.bsz-team-grid{column-count:3;}}
@media (max-width:680px){.bsz-team-grid{column-count:2;}}

/* --- Karte --- */
.bsz-team .bsz-team-card{
  position:relative;
  display:block;                          /* block statt inline-block: Fix gg. Safari-Multicol-Ueberlauf */
  width:100%;
  margin:0 0 var(--bsz-gap) !important;   /* senkrechter Abstand, gg. Theme-Reset figure{margin:0} */
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  border-radius:var(--bsz-radius);
  overflow:hidden;
  background:#dfeaec;
  box-shadow:0 1px 4px rgba(6,63,71,.10);
}
.bsz-team-card.bsz-portrait{aspect-ratio:2 / 3;}   /* 1 : 1,5 */
.bsz-team-card.bsz-square{aspect-ratio:1 / 1;}      /* 1 : 1   */

/* --- Foto: Regeln gelten fuer .bsz-team-photo UND ein evtl. inneres <img>.
   WICHTIG: WebP/AVIF-Plugins (z. B. Converter for Media) verpacken das Bild in
   <picture class="bsz-team-photo"><source><img></picture>. Dann muss das INNERE
   <img> beschnitten/positioniert werden, sonst wirkt der Ausschnitt nicht. --- */
.bsz-team .bsz-team-photo,
.bsz-team .bsz-team-photo img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:var(--bsz-focus,50% 50%) !important;
  display:block !important;
}
.bsz-team .bsz-team-photo{
  background:var(--bsz-placeholder) center/cover no-repeat;
  transition:transform .5s ease;
}

/* --- Ausschnitt per KLASSE: setzt die Variable --bsz-focus an der Karte;
   das (auch innere) Bild erbt sie. Robust gg. WP-Optimierung/kses/<picture>. --- */
.bsz-team .bsz-fy-0  {--bsz-focus:50% 0%;}
.bsz-team .bsz-fy-10 {--bsz-focus:50% 10%;}
.bsz-team .bsz-fy-20 {--bsz-focus:50% 20%;}
.bsz-team .bsz-fy-30 {--bsz-focus:50% 30%;}
.bsz-team .bsz-fy-40 {--bsz-focus:50% 40%;}
.bsz-team .bsz-fy-50 {--bsz-focus:50% 50%;}
.bsz-team .bsz-fy-60 {--bsz-focus:50% 60%;}
.bsz-team .bsz-fy-70 {--bsz-focus:50% 70%;}
.bsz-team .bsz-fy-80 {--bsz-focus:50% 80%;}
.bsz-team .bsz-fy-90 {--bsz-focus:50% 90%;}
.bsz-team .bsz-fy-100{--bsz-focus:50% 100%;}
.bsz-team .bsz-fx-0  {--bsz-focus:0% 50%;}
.bsz-team .bsz-fx-25 {--bsz-focus:25% 50%;}
.bsz-team .bsz-fx-50 {--bsz-focus:50% 50%;}
.bsz-team .bsz-fx-75 {--bsz-focus:75% 50%;}
.bsz-team .bsz-fx-100{--bsz-focus:100% 50%;}

/* Teal-Flaeche (Hover) */
.bsz-team-veil{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(6,63,71,.96) 99%);
  transition:opacity .35s ease;
}

/* --- Textblock unten --- */
.bsz-team-info{
  position:absolute;
  z-index:3;
  inset:auto 0 0 0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  padding:16px 18px;
}
.bsz-team-role{
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#ffffff;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .3s ease .02s,transform .3s ease .02s;
}
.bsz-team-text{
  font-size:.95rem;
  line-height:1.35;
  color:#fff;
  max-width:22em;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .3s ease .06s,transform .3s ease .06s;
}
.bsz-team-name{
  margin-top:2px;
  font-size:1.05rem;
  font-weight:700;
  line-height:1;
  color:var(--bsz-teal);
  background:#fff;
  padding:7px 15px;
  border-radius:999px;
  box-shadow:0 2px 6px rgba(6,63,71,.18);
  transition:color .3s ease,background .3s ease,box-shadow .3s ease,padding .3s ease;
}

/* --- Hover-Effekt NUR auf Geraeten mit echtem Hover (Maus) ---
   Verhindert, dass auf Touch beim Tippen die Karte das Gesicht ueberdeckt. */
@media (hover:hover){
  .bsz-team-card:hover .bsz-team-photo,
  .bsz-team-card:focus-within .bsz-team-photo{transform:scale(1.05);}
  .bsz-team-card:hover .bsz-team-veil,
  .bsz-team-card:focus-within .bsz-team-veil{opacity:1;}
  .bsz-team-card:hover .bsz-team-role,
  .bsz-team-card:hover .bsz-team-text,
  .bsz-team-card:focus-within .bsz-team-role,
  .bsz-team-card:focus-within .bsz-team-text{opacity:1;transform:none;}
  .bsz-team-card:hover .bsz-team-name,
  .bsz-team-card:focus-within .bsz-team-name{
    color:#fff;background:transparent;box-shadow:none;padding-left:0;padding-right:0;
  }
}

/* Reduzierte Bewegung respektieren */
@media (prefers-reduced-motion:reduce){
  .bsz-team-photo,.bsz-team-veil,.bsz-team-role,.bsz-team-text,.bsz-team-name{transition:none;}
  .bsz-team-card:hover .bsz-team-photo,.bsz-team-card:focus-within .bsz-team-photo{transform:none;}
  .bsz-team-role,.bsz-team-text{transform:none;}
}/* End custom CSS */