.elementor-1555 .elementor-element.elementor-element-e73a9cd3 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-1555 .elementor-element.elementor-element-e73a9cd3{padding:0px 0px 0px 0px;}.elementor-bc-flex-widget .elementor-1555 .elementor-element.elementor-element-92fd4a62.elementor-column .elementor-widget-wrap{align-items:middle;}.elementor-1555 .elementor-element.elementor-element-92fd4a62.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:middle;align-items:middle;}.elementor-1555 .elementor-element.elementor-element-d9d20ba9{padding:100px 20px 100px 20px;}.elementor-1555 .elementor-element.elementor-element-c2116f8d{text-align:left;}.elementor-1555 .elementor-element.elementor-element-857456da{text-align:left;}.elementor-1555 .elementor-element.elementor-element-02b10a6f:not(.elementor-motion-effects-element-type-background), .elementor-1555 .elementor-element.elementor-element-02b10a6f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var(--aiow-bg,#f4f6ff);}.elementor-1555 .elementor-element.elementor-element-02b10a6f{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1555 .elementor-element.elementor-element-02b10a6f > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1555 .elementor-element.elementor-element-a78457c5{text-align:left;}.elementor-1555 .elementor-element.elementor-element-29449cdf{text-align:left;}.elementor-1555 .elementor-element.elementor-element-dad04be1:not(.elementor-motion-effects-element-type-background), .elementor-1555 .elementor-element.elementor-element-dad04be1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-1555 .elementor-element.elementor-element-dad04be1{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 40px 20px;}.elementor-1555 .elementor-element.elementor-element-dad04be1 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1555 .elementor-element.elementor-element-4a05508f{text-align:left;}.elementor-1555 .elementor-element.elementor-element-1dcba5d4:not(.elementor-motion-effects-element-type-background), .elementor-1555 .elementor-element.elementor-element-1dcba5d4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-1555 .elementor-element.elementor-element-1dcba5d4{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 20px 100px 20px;}.elementor-1555 .elementor-element.elementor-element-1dcba5d4 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1555 .elementor-element.elementor-element-56e2ab1a img{width:100%;}.elementor-1555 .elementor-element.elementor-element-4487de6e{text-align:center;}.elementor-1555 .elementor-element.elementor-element-471a5c12{text-align:center;}.elementor-1555 .elementor-element.elementor-element-b89c97dc{text-align:center;}.elementor-1555 .elementor-element.elementor-element-d04e1ba1 img{width:100%;}.elementor-1555 .elementor-element.elementor-element-731be3c0{text-align:center;}.elementor-1555 .elementor-element.elementor-element-2a05b326{text-align:center;}.elementor-1555 .elementor-element.elementor-element-fbaf9f7f{text-align:center;}.elementor-1555 .elementor-element.elementor-element-4684e58c img{width:100%;}.elementor-1555 .elementor-element.elementor-element-42a7c06c{text-align:center;}.elementor-1555 .elementor-element.elementor-element-84e5389c{text-align:center;}.elementor-1555 .elementor-element.elementor-element-a37acb74{text-align:center;}.elementor-1555 .elementor-element.elementor-element-ce7a8511 img{width:100%;}.elementor-1555 .elementor-element.elementor-element-df78efb2{text-align:center;}.elementor-1555 .elementor-element.elementor-element-53d4aa37{text-align:center;}.elementor-1555 .elementor-element.elementor-element-8d8fa73c{text-align:center;}.elementor-1555 .elementor-element.elementor-element-84a5ba48:not(.elementor-motion-effects-element-type-background), .elementor-1555 .elementor-element.elementor-element-84a5ba48 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var(--aiow-bg,#f4f6ff);}.elementor-1555 .elementor-element.elementor-element-84a5ba48{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1555 .elementor-element.elementor-element-84a5ba48 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1555 .elementor-element.elementor-element-ddbf03ae{text-align:center;}.elementor-1555 .elementor-element.elementor-element-ddbf03ae .elementor-heading-title{font-size:68px;font-weight:800;line-height:1.1em;}.elementor-1555 .elementor-element.elementor-element-cdf2e580{text-align:center;}.elementor-1555 .elementor-element.elementor-element-ede064ad{text-align:center;}.elementor-1555 .elementor-element.elementor-element-ede064ad .elementor-heading-title{font-size:68px;font-weight:800;line-height:1.1em;}.elementor-1555 .elementor-element.elementor-element-839f8d08{text-align:center;}.elementor-1555 .elementor-element.elementor-element-6d6c4520{text-align:center;}.elementor-1555 .elementor-element.elementor-element-6d6c4520 .elementor-heading-title{font-size:68px;font-weight:800;line-height:1.1em;}.elementor-1555 .elementor-element.elementor-element-bc9538a6{text-align:center;}.elementor-1555 .elementor-element.elementor-element-694ebc9e:not(.elementor-motion-effects-element-type-background), .elementor-1555 .elementor-element.elementor-element-694ebc9e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-1555 .elementor-element.elementor-element-694ebc9e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1555 .elementor-element.elementor-element-694ebc9e > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1555 .elementor-element.elementor-element-772068a1{text-align:center;}@media(max-width:1024px){.elementor-1555 .elementor-element.elementor-element-ddbf03ae .elementor-heading-title{font-size:52px;}.elementor-1555 .elementor-element.elementor-element-ede064ad .elementor-heading-title{font-size:52px;}.elementor-1555 .elementor-element.elementor-element-6d6c4520 .elementor-heading-title{font-size:52px;}}@media(max-width:767px){.elementor-1555 .elementor-element.elementor-element-ddbf03ae .elementor-heading-title{font-size:38px;}.elementor-1555 .elementor-element.elementor-element-ede064ad .elementor-heading-title{font-size:38px;}.elementor-1555 .elementor-element.elementor-element-6d6c4520 .elementor-heading-title{font-size:38px;}}/* Start custom CSS *//* ── Design Tokens ──────────────────────────────────── */
:root {
    --aiow-primary:   #aa7942;
    --aiow-secondary: #855f34;
    --aiow-accent:    #c79c6c;
    --aiow-bg:        #faf6f2;
}

/* ── 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 */