.elementor-1477 .elementor-element.elementor-element-f385dcb1 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-1477 .elementor-element.elementor-element-f385dcb1:not(.elementor-motion-effects-element-type-background), .elementor-1477 .elementor-element.elementor-element-f385dcb1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #dbe5ff 0%, #c3d6ff 100%);}.elementor-1477 .elementor-element.elementor-element-f385dcb1{border-style:solid;border-width:0px 0px 1px 0px;border-color:#2563eb;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:88px 20px 88px 20px;}.elementor-1477 .elementor-element.elementor-element-f385dcb1 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-1477 .elementor-element.elementor-element-5e4152c0.elementor-column .elementor-widget-wrap{align-items:middle;}.elementor-1477 .elementor-element.elementor-element-5e4152c0.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:middle;align-items:middle;}.elementor-1477 .elementor-element.elementor-element-98335653{padding:100px 20px 100px 20px;}.elementor-1477 .elementor-element.elementor-element-c6369395{text-align:left;}.elementor-1477 .elementor-element.elementor-element-4ce59d65{text-align:left;}.elementor-1477 .elementor-element.elementor-element-34e6a080:not(.elementor-motion-effects-element-type-background), .elementor-1477 .elementor-element.elementor-element-34e6a080 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var(--aiow-bg,#f4f6ff);}.elementor-1477 .elementor-element.elementor-element-34e6a080{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1477 .elementor-element.elementor-element-34e6a080 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1477 .elementor-element.elementor-element-054792fd{text-align:left;}.elementor-1477 .elementor-element.elementor-element-cd0d293e{text-align:left;}.elementor-1477 .elementor-element.elementor-element-23535793:not(.elementor-motion-effects-element-type-background), .elementor-1477 .elementor-element.elementor-element-23535793 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-1477 .elementor-element.elementor-element-23535793{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 40px 20px;}.elementor-1477 .elementor-element.elementor-element-23535793 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1477 .elementor-element.elementor-element-78c632d6{text-align:left;}.elementor-1477 .elementor-element.elementor-element-39ed4409:not(.elementor-motion-effects-element-type-background), .elementor-1477 .elementor-element.elementor-element-39ed4409 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-1477 .elementor-element.elementor-element-39ed4409{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 20px 100px 20px;}.elementor-1477 .elementor-element.elementor-element-39ed4409 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1477 .elementor-element.elementor-element-14384568 img{width:100%;}.elementor-1477 .elementor-element.elementor-element-41ccc2e0{text-align:center;}.elementor-1477 .elementor-element.elementor-element-767592b0{text-align:center;}.elementor-1477 .elementor-element.elementor-element-fceeed5d{text-align:center;}.elementor-1477 .elementor-element.elementor-element-73404e75 img{width:100%;}.elementor-1477 .elementor-element.elementor-element-2945c6d2{text-align:center;}.elementor-1477 .elementor-element.elementor-element-aea32458{text-align:center;}.elementor-1477 .elementor-element.elementor-element-399f8516{text-align:center;}.elementor-1477 .elementor-element.elementor-element-39cbacab img{width:100%;}.elementor-1477 .elementor-element.elementor-element-02113a1d{text-align:center;}.elementor-1477 .elementor-element.elementor-element-6eb60328{text-align:center;}.elementor-1477 .elementor-element.elementor-element-43a58b30{text-align:center;}.elementor-1477 .elementor-element.elementor-element-ab5e454a img{width:100%;}.elementor-1477 .elementor-element.elementor-element-485f90da{text-align:center;}.elementor-1477 .elementor-element.elementor-element-824d723c{text-align:center;}.elementor-1477 .elementor-element.elementor-element-c142c2f1{text-align:center;}.elementor-1477 .elementor-element.elementor-element-eca757fd:not(.elementor-motion-effects-element-type-background), .elementor-1477 .elementor-element.elementor-element-eca757fd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var(--aiow-bg,#f4f6ff);}.elementor-1477 .elementor-element.elementor-element-eca757fd{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1477 .elementor-element.elementor-element-eca757fd > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1477 .elementor-element.elementor-element-a3dc7f53{text-align:center;}.elementor-1477 .elementor-element.elementor-element-a3dc7f53 .elementor-heading-title{font-size:68px;font-weight:800;line-height:1.1em;}.elementor-1477 .elementor-element.elementor-element-4e22ade0{text-align:center;}.elementor-1477 .elementor-element.elementor-element-8d775e0f{text-align:center;}.elementor-1477 .elementor-element.elementor-element-8d775e0f .elementor-heading-title{font-size:68px;font-weight:800;line-height:1.1em;}.elementor-1477 .elementor-element.elementor-element-b92dda56{text-align:center;}.elementor-1477 .elementor-element.elementor-element-afced374{text-align:center;}.elementor-1477 .elementor-element.elementor-element-afced374 .elementor-heading-title{font-size:68px;font-weight:800;line-height:1.1em;}.elementor-1477 .elementor-element.elementor-element-49f637bc{text-align:center;}.elementor-1477 .elementor-element.elementor-element-de0be680:not(.elementor-motion-effects-element-type-background), .elementor-1477 .elementor-element.elementor-element-de0be680 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-1477 .elementor-element.elementor-element-de0be680{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1477 .elementor-element.elementor-element-de0be680 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1477 .elementor-element.elementor-element-f55b4331{text-align:center;}@media(max-width:1024px){.elementor-1477 .elementor-element.elementor-element-a3dc7f53 .elementor-heading-title{font-size:52px;}.elementor-1477 .elementor-element.elementor-element-8d775e0f .elementor-heading-title{font-size:52px;}.elementor-1477 .elementor-element.elementor-element-afced374 .elementor-heading-title{font-size:52px;}}@media(max-width:767px){.elementor-1477 .elementor-element.elementor-element-a3dc7f53 .elementor-heading-title{font-size:38px;}.elementor-1477 .elementor-element.elementor-element-8d775e0f .elementor-heading-title{font-size:38px;}.elementor-1477 .elementor-element.elementor-element-afced374 .elementor-heading-title{font-size:38px;}}/* Start custom CSS *//* ── Design Tokens ──────────────────────────────────── */
:root {
    --aiow-primary:   #2563eb;
    --aiow-secondary: #1e40af;
    --aiow-accent:    #3b82f6;
    --aiow-bg:        #f0f4ff;
}

/* ── Hero: min-height 650px + vertikale Zentrierung ─── */
.aiow-el-hero {
    min-height: 650px !important;
    display: flex !important;
    align-items: center !important;
}
.aiow-el-hero > .elementor-container {
    align-items: center !important;
    flex: 1;
}
.aiow-el-hero .elementor-column-wrap,
.aiow-el-hero .e-con-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
}

/* ── ALLE Buttons: neutral transparent, schwarzer Rand ─ */
/* Heller BG (weiß, Cards, aiow-bg): schwarzer Rand+Text  */
.elementor-button,
.elementor-button.elementor-size-md {
    background: transparent !important;
    color: #111827 !important;
    border: 2px solid #111827 !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    padding: 13px 32px !important;
    font-size: 15px !important;
    text-decoration: none !important;
    transition: background-color .22s, color .22s, border-color .22s, transform .18s, box-shadow .22s !important;
}
.elementor-button:hover {
    background: #111827 !important;
    color: #ffffff !important;
    border-color: #111827 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,.18) !important;
}

/* ── Buttons auf farbigem/dunklem BG: weißer Rand ───── */
/* Hero, CTA-Banner (aiow-el-cta), Stats (aiow-el-stats) */
.aiow-el-hero .elementor-button,
.aiow-el-cta .elementor-button,
.aiow-el-stats .elementor-button {
    background: transparent !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 8px !important;
}
.aiow-el-hero .elementor-button:hover,
.aiow-el-cta .elementor-button:hover,
.aiow-el-stats .elementor-button:hover {
    background: rgba(255,255,255,.15) !important;
    color: #ffffff !important;
    border-color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 20px rgba(0,0,0,.25) !important;
}

/* ── Abgerundete Ecken: Two-Col Bild + alle Widget-Bilder */
.aiow-el-img-rounded .elementor-widget-image img,
.aiow-el-img-rounded img {
    border-radius: 12px !important;
    overflow: hidden;
    display: block;
    width: 100%;
}

/* ── Card-Styling ───────────────────────────────────── */
.aiow-el-card {
    background: #fff;
    border-radius: 14px;
    padding: 28px;
    box-shadow: 0 2px 18px rgba(0,0,0,.07);
    transition: box-shadow .22s, transform .22s;
    height: 100%;
}
.aiow-el-card:hover {
    box-shadow: 0 10px 36px rgba(0,0,0,.13);
    transform: translateY(-3px);
}

/* ── Bilder in Cards ─────────────────────────────────── */
.aiow-el-card .elementor-widget-image img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    display: block;
    margin-bottom: 16px;
}

/* ── Testimonial-Bilder kreisförmig ─────────────────── */
.aiow-el-testimonial .elementor-widget-image img {
    width: 100% !important;
    height: 160px !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    display: block;
    margin: 0 auto 12px;
}

/* ── Überschriften ───────────────────────────────────── */
.elementor-widget-heading h1.elementor-heading-title { font-size: clamp(40px, 6vw, 72px); line-height: 1.1; }
.elementor-widget-heading h2.elementor-heading-title { font-size: 1.9rem; line-height: 1.2; }
.elementor-widget-heading h3.elementor-heading-title { font-size: 1.3rem; line-height: 1.3; }
.elementor-widget-heading h4.elementor-heading-title { font-size: 1.05rem; line-height: 1.4; }

/* ── Hero-Text weiß ──────────────────────────────────── */
.aiow-el-hero .elementor-widget-heading .elementor-heading-title,
.aiow-el-hero .elementor-widget-text-editor,
.aiow-el-hero .elementor-widget-text-editor p { color: #ffffff !important; }

/* ── CTA: Flaeche, Schrift und Knopf wie im Hero (seit 2.17.0) ───────── */
.aiow-el-cta.elementor-section { background-color: var(--aiow-hero1,#dbe5ff) !important; background-image: linear-gradient(180deg, var(--aiow-hero1,#dbe5ff) 0%, var(--aiow-hero2,#c3d6ff) 100%) !important; border-bottom: 1px solid var(--aiow-primary,#2563eb) !important; }
.aiow-el-cta > .elementor-container { background-color: transparent !important; background-image: none !important; }
.aiow-el-cta .elementor-widget-heading .elementor-heading-title { color: #0f172a !important; }
.aiow-el-cta .elementor-widget-text-editor p { color: #4b5563 !important; }
.aiow-el-cta .elementor-button,
.aiow-el-cta .elementor-button:hover { background: var(--aiow-primary-surface, var(--aiow-primary,#2563eb)) !important; color: var(--aiow-on-primary,#ffffff) !important; border: 2px solid var(--aiow-hero-edge, var(--aiow-primary,#2563eb)) !important; border-radius: 10px !important; }

/* ── Stats-Boxen: weiß mit Primärfarbe-Zahl ─────────── */
.aiow-el-stat-box {
    text-align: center;
}
.aiow-el-stat-box .elementor-widget-heading .elementor-heading-title {
    color: var(--aiow-primary, #2563eb) !important;
    font-size: 2.5rem !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
}
.aiow-el-stat-box .elementor-widget-text-editor,
.aiow-el-stat-box .elementor-widget-text-editor p {
    color: #374151 !important;
    font-size: 1rem !important;
}
.aiow-el-cards-row > .elementor-container > .elementor-row,
.aiow-el-cards-row > .elementor-container { gap: 28px !important; }
.aiow-el-cards-row .elementor-column-gap-extended > .elementor-row { gap: 28px; }

/* ── Kontakt: linke Spalte (2 Bilder übereinander) ───── */
.aiow-el-contact-imgs {
    padding-right: 40px !important;
}
.aiow-el-contact-imgs .elementor-widget-image {
    margin-bottom: 24px;
}
.aiow-el-contact-imgs .elementor-widget-image img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    display: block;
}

/* ── Buchstabenabstand Überschriften (global) ────────── */
.elementor-widget-heading h1.elementor-heading-title {
    letter-spacing: 0.01em !important;
}
.elementor-widget-heading h2.elementor-heading-title {
    letter-spacing: 0.02em !important;
}
.elementor-widget-heading h3.elementor-heading-title {
    letter-spacing: 0.025em !important;
}
.elementor-widget-heading h4.elementor-heading-title {
    letter-spacing: 0.025em !important;
}

/* ── Mobile: Abstände ────────────────────────────────── */
@media (max-width: 767px) {
    /* Abstand Button → Bild (Two-Col Section, Über uns auf Startseite) */
    .aiow-el-img-rounded {
        margin-top: 40px !important;
    }
}/* End custom CSS */