.elementor-552 .elementor-element.elementor-element-kontakt-sektion-seite{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:40px;--padding-bottom:88px;--padding-left:32px;--padding-right:32px;}.elementor-552 .elementor-element.elementor-element-kontakt-links{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:36px 36px;--row-gap:36px;--column-gap:36px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-552 .elementor-element.elementor-element-kontakt-rechts{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:36px 36px;--row-gap:36px;--column-gap:36px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-552 .elementor-element.elementor-element-kontakt-karte{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#292D30;--border-color:#292D30;--border-radius:28px 28px 28px 28px;--padding-top:36px;--padding-bottom:36px;--padding-left:36px;--padding-right:36px;}.elementor-552 .elementor-element.elementor-element-kontakt-karte:not(.elementor-motion-effects-element-type-background), .elementor-552 .elementor-element.elementor-element-kontakt-karte > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#050505;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-552 .elementor-element.elementor-element-kontakt-sektion-seite{--content-width:1200px;}}@media(max-width:1024px){.elementor-552 .elementor-element.elementor-element-kontakt-sektion-seite{--padding-top:40px;--padding-bottom:72px;--padding-left:32px;--padding-right:32px;}}@media(max-width:767px){.elementor-552 .elementor-element.elementor-element-kontakt-sektion-seite{--padding-top:24px;--padding-bottom:56px;--padding-left:16px;--padding-right:16px;}.elementor-552 .elementor-element.elementor-element-kontakt-karte{--padding-top:22px;--padding-bottom:24px;--padding-left:18px;--padding-right:18px;}}/* Start custom CSS *//* == STARTSEITE BLACKSHAPER == */
/* == HELLER HERO UND UEBERGANG == */
#start{position:relative;--width:calc(100% - 24px);width:calc(100% - 24px);margin-left:auto;margin-right:auto;border-radius:28px;overflow:hidden;background:#F3F4EF;isolation:isolate}
#start > .e-con-inner{position:relative;z-index:1}
#start .bs-pill{color:#16190F!important;border-color:rgba(22,25,15,.14);background:rgba(255,255,255,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
#start .bs-pill:hover{border-color:rgba(22,25,15,.4)}
#start .bs-pill span{color:var(--bs-akzent-tief)}
#start .bs-link a{color:#16190F!important}
#start .bs-link a:hover{color:#000000!important}
#start .elementor-button{-webkit-backdrop-filter:blur(12px) saturate(160%);backdrop-filter:blur(12px) saturate(160%)}
#start .elementor-element-hero-cta .elementor-button{background:var(--bs-knopf)!important;border-color:transparent!important;color:#FFFFFF!important;text-shadow:0 1px 1px rgba(90,30,0,.25);box-shadow:var(--bs-knopf-schatten)}
#start .elementor-element-hero-cta .elementor-button:hover{background:#0B0C0A!important;color:var(--bs-akzent)!important;text-shadow:none}
#start ::selection{background:#16190F;color:var(--bs-akzent)}
/* Erster Scroll: Deckkraft und Schleier setzt das Skript im Hero-Widget. Ist der Hero ganz dunkel, wird auch sein Grund schwarz, damit an den runden Ecken kein heller Saum bleibt. */
html.bs-hero-weg #start{background:var(--bs-grund)}
#start.bs-fg-aus .elementor-element-hero-text-spalte,#start.bs-fg-aus .bsx-phone,#start.bs-fg-aus .bsx-pass{pointer-events:none}
@media (max-width:767px){#start{--width:calc(100% - 16px);width:calc(100% - 16px);border-radius:22px}}
/* Hero-Satz: Montserrat, nur Views in ITC Garamond (Wunsch Manuel) */
#start h1 .bs-serif{font-family:'ITC Garamond Std',Georgia,serif;font-weight:400;font-style:italic;font-size:1.32em;line-height:.8;letter-spacing:-.005em;padding-right:.06em}
/* Montserrat im Hero-Satz in die Hoehe gezogen: Versalhoehe gleich dem kursiven V von Views (gemessen 0,70 zu 0,83, Faktor 1,19) */
#start h1 .bs-lang{display:inline-block;line-height:1;transform:scaleY(1.19);transform-origin:50% 86%}
/* == ENDE HELLER HERO == */
/* == FLUGHAFEN-BOARD: Stil und Skript stecken im HTML-Widget tafel-widget, hier nur die Breite == */
#zahlen .elementor-widget-html{width:100%;max-width:100%}
/* Wisch-Uebergang: der Hero bleibt stehen (Skript setzt html.bs-wisch und top), alle folgenden Abschnitte liegen darueber */
html.bs-wisch #start{position:sticky;z-index:0;transform-origin:50% 30%;transition:none}
.elementor-21 > .e-con:not(#start){position:relative;z-index:2;background-color:var(--bs-grund)}
#zahlen{border-radius:28px 28px 0 0;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 -30px 60px rgba(0,0,0,.45)}
@media (max-width:767px){#zahlen{border-radius:22px 22px 0 0}}
/* == ENDE FLUGHAFEN-BOARD == */

@keyframes bs-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.bs-rise{animation:bs-rise 900ms cubic-bezier(.22,1,.36,1) both}
.bs-rise-2{animation-delay:120ms}.bs-rise-3{animation-delay:240ms}.bs-rise-4{animation-delay:360ms}
.bs-js .bs-reveal{opacity:0;transform:translateY(20px);transition:opacity 800ms ease-out,transform 800ms cubic-bezier(.22,1,.36,1)}
.bs-js .bs-reveal.is-in{opacity:1;transform:none}
.bs-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid var(--bs-linie);border-radius:9999px;font-family:Montserrat,sans-serif;font-size:14px;line-height:1.43;color:#F0F0F0!important;text-decoration:none!important;transition:border-color 150ms ease-out}
.bs-pill:hover{border-color:#6E727A;opacity:1!important}
.bs-pill span{color:var(--bs-akzent);font-size:18px;line-height:1}
.bs-link a{color:#F0F0F0!important;text-decoration:none!important;display:inline-flex;align-items:center;gap:8px;min-height:44px;transition:color 150ms ease-out}
.bs-link a:hover{color:#FFFFFF!important;opacity:1!important}
.bs-link a span{transition:transform 150ms ease-out}
.bs-link a:hover span{transform:translateX(3px)}
.bs-tag{display:inline-flex;align-items:center;gap:8px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:600;line-height:1.33;letter-spacing:.1em;text-transform:uppercase;color:#A1A4A5}
.bs-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.bs-badges span{font-family:Montserrat,sans-serif;font-weight:500;font-size:12px;line-height:1;color:#A1A4A5;border:1px solid var(--bs-linie);border-radius:999px;padding:7px 12px}
.bs-card{transition:border-color 150ms ease-out,opacity 800ms ease-out,transform 800ms cubic-bezier(.22,1,.36,1)!important}
.bs-card:hover{border-color:#464A4D!important}
.bs-card p:last-child,.bs-who{margin-bottom:0}
.bs-who{display:flex;align-items:center;gap:12px;line-height:1.4}
.bs-who strong{color:#F0F0F0;font-weight:500}
.bs-ini{width:32px;height:32px;flex:0 0 32px;border-radius:50%;border:1px solid var(--bs-linie);display:grid;place-items:center;font-family:Montserrat,sans-serif;font-size:11px;color:#F0F0F0}
.bs-schluss .elementor-heading-title{font-size:clamp(40px,6.4vw,77px)!important}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
@media (prefers-reduced-motion:reduce){.bs-rise{animation:none}.bs-js .bs-reveal{opacity:1;transform:none;transition:none}}
/* == ENDE STARTSEITE == */
/* == KONTAKT BLACKSHAPER == */
.bsa-raster{position:relative;isolation:isolate}
.bsa-raster::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(50% 40% at 88% 0%,color-mix(in srgb,var(--bs-akzent) 13%,transparent),color-mix(in srgb,var(--bs-akzent) 0%,transparent) 70%),radial-gradient(45% 40% at 0% 70%,rgba(200,226,255,.07),rgba(200,226,255,0) 70%)}
/* Raster (Wunsch Manuel 24.9.2026, "Formular ganz rauf, gleich das ganze Formular sehen"): zwei eigene Spalten.
   Links Einstieg und Live-Vorschau, rechts ganz oben das Formular und darunter die Kontaktknoepfe. Die Karte hat am
   Rechner eine feste Mindesthoehe (hoechster Schritt), damit sie zwischen den Schritten nicht springt.
   Bis 1024 px untereinander: Formular, Kontaktknoepfe, Einstieg, Vorschau. */
.bsa-raster>.e-con-inner{display:grid!important;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:48px;row-gap:36px;align-items:start!important}
.bsa-raster>.e-con-inner>.e-con{width:auto!important;max-width:none!important;margin:0!important}
.bsa-raster .elementor-element-kontakt-links{grid-column:1;grid-row:1}
.bsa-raster .elementor-element-kontakt-rechts{grid-column:2;grid-row:1}
.bsa-raster .elementor-element-kontakt-links,.bsa-raster .elementor-element-kontakt-rechts{--gap:36px;--row-gap:36px;gap:36px!important;padding:0!important}
.bsa-raster .elementor-element-kontakt-karte{width:100%!important;max-width:none!important;margin:0!important}
@media (min-width:1025px){.bsa-raster .elementor-element-kontakt-karte{min-height:640px}}
@media (min-width:1025px){
  .bs-form .elementor-element-kontakt-formular{flex:1 1 auto!important;position:relative!important;padding-bottom:84px}
  .bs-form .elementor-element-kontakt-formular .elementor-shortcode,.bs-form .elementor-element-kontakt-formular .fluentform,.bs-form .elementor-element-kontakt-formular form,.bs-form .elementor-element-kontakt-formular fieldset{position:static!important}
  .bs-form .elementor-element-kontakt-formular .bsq-ms .bsq-nav{position:absolute;left:0;right:0;bottom:0;margin:0}
  .bs-form .elementor-element-kontakt-formular .bsq-ms.bsq-letzt .bsq-nav{right:auto}
  .bs-form .elementor-element-kontakt-formular .bsq-ms.bsq-letzt .ff_submit_btn_wrapper{position:absolute!important;right:0;bottom:-5px;margin:0!important}
}
.bs-form .fluentform,.bs-form .fluentform *{font-family:Montserrat,sans-serif}
.bs-form .fluentform fieldset{display:flex;flex-wrap:wrap;column-gap:16px;margin:0;padding:0;border:0}
.bs-form .fluentform fieldset > *{flex:0 0 100%;max-width:100%}
.bs-form .fluentform fieldset > .bs-halb{flex:0 0 calc(50% - 8px);max-width:calc(50% - 8px)}
.bs-form .fluentform fieldset > .ff_submit_btn_wrapper{flex:0 0 auto}
.bs-form .ff-el-form-control::placeholder{color:#7D8288;opacity:1}
.bs-form .error.text-danger,.bs-form .ff-el-is-error .text-danger{color:#FF9592;font-size:13px;margin-top:6px}
.bs-form .ff-el-is-error .ff-el-form-control{border-color:#FF9592!important}
.bs-form .ff-el-tc a{color:#FFFFFF!important;text-decoration:underline;text-underline-offset:3px}
@media (max-width:1024px){.bsa-raster>.e-con-inner{grid-template-columns:minmax(0,1fr);row-gap:36px}.bsa-raster .elementor-element-kontakt-links,.bsa-raster .elementor-element-kontakt-rechts{display:contents!important}.bsa-raster .elementor-element-kontakt-karte{order:1}.bsa-raster .elementor-element-kontakt-vorschau{order:2}.bsa-raster .elementor-element-kontakt-profil{order:3}.bsa-raster .elementor-element-kontakt-intro{order:4}}
@media (max-width:767px){.bs-form .fluentform fieldset > .bs-halb{flex:0 0 100%;max-width:100%}}
/* Frage ohne Fokusrahmen: Theme ([tabindex=-1]:focus) und Kit ([tabindex]:focus-visible) zeichnen sonst Schein und weissen Rahmen */
.bs-form .bsq-frage:focus,.bs-form .bsq-frage:focus-visible{outline:none!important;box-shadow:none!important}
/* Post erst vor dem Absenden (Wunsch Manuel 24.9.2026): Live-Vorschau versteckt, erscheint im letzten Schritt
   (Skript setzt html.bsq-am-ende). Am Rechner anstelle des Einstiegs neben dem Formular, bis 1024 px direkt unter dem Formular. */
body:not(.elementor-editor-active) .bsa-raster .elementor-element-kontakt-vorschau{display:none}
html.bsq-am-ende body:not(.elementor-editor-active) .bsa-raster .elementor-element-kontakt-vorschau{display:block;animation:bsq-post-rein .5s cubic-bezier(.22,1,.36,1) both}
@keyframes bsq-post-rein{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (min-width:1025px){html.bsq-am-ende body:not(.elementor-editor-active) .bsa-raster .elementor-element-kontakt-intro{display:none}}
@media (prefers-reduced-motion:reduce){html.bsq-am-ende .bsa-raster .elementor-element-kontakt-vorschau{animation:none}}
/* == ENDE KONTAKT == *//* End custom CSS */