.elementor-1556 .elementor-element.elementor-element-32b21322 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-1556 .elementor-element.elementor-element-32b21322{padding:0px 0px 0px 0px;}.elementor-bc-flex-widget .elementor-1556 .elementor-element.elementor-element-145b40e9.elementor-column .elementor-widget-wrap{align-items:middle;}.elementor-1556 .elementor-element.elementor-element-145b40e9.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:middle;align-items:middle;}.elementor-1556 .elementor-element.elementor-element-0615589b{padding:100px 20px 100px 20px;}.elementor-1556 .elementor-element.elementor-element-0d210430 img{width:100%;}.elementor-1556 .elementor-element.elementor-element-e39f4daf{text-align:left;}.elementor-1556 .elementor-element.elementor-element-538550f9{text-align:left;}.elementor-1556 .elementor-element.elementor-element-9f4b435d img{width:100%;}.elementor-1556 .elementor-element.elementor-element-520bbd83{text-align:left;}.elementor-1556 .elementor-element.elementor-element-d050d185{text-align:left;}.elementor-1556 .elementor-element.elementor-element-891acd9d img{width:100%;}.elementor-1556 .elementor-element.elementor-element-8636e63e{text-align:left;}.elementor-1556 .elementor-element.elementor-element-dd0c7b11{text-align:left;}.elementor-1556 .elementor-element.elementor-element-95ba4993:not(.elementor-motion-effects-element-type-background), .elementor-1556 .elementor-element.elementor-element-95ba4993 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var(--aiow-bg,#f4f6ff);}.elementor-1556 .elementor-element.elementor-element-95ba4993{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1556 .elementor-element.elementor-element-95ba4993 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1556 .elementor-element.elementor-element-9bc8e28f img{width:100%;}.elementor-1556 .elementor-element.elementor-element-53c989bb{text-align:left;}.elementor-1556 .elementor-element.elementor-element-1144e5c3{text-align:left;}.elementor-1556 .elementor-element.elementor-element-b783d3f3 img{width:100%;}.elementor-1556 .elementor-element.elementor-element-440f9863{text-align:left;}.elementor-1556 .elementor-element.elementor-element-35cda1ec{text-align:left;}.elementor-1556 .elementor-element.elementor-element-c8ad5c2a img{width:100%;}.elementor-1556 .elementor-element.elementor-element-56c83473{text-align:left;}.elementor-1556 .elementor-element.elementor-element-10e49b09{text-align:left;}.elementor-1556 .elementor-element.elementor-element-a632b096:not(.elementor-motion-effects-element-type-background), .elementor-1556 .elementor-element.elementor-element-a632b096 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var(--aiow-bg,#f4f6ff);}.elementor-1556 .elementor-element.elementor-element-a632b096{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1556 .elementor-element.elementor-element-a632b096 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1556 .elementor-element.elementor-element-24617f04{text-align:center;}.elementor-1556 .elementor-element.elementor-element-c982f04d:not(.elementor-motion-effects-element-type-background), .elementor-1556 .elementor-element.elementor-element-c982f04d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #f1e6da 0%, #e8d7c4 100%);}.elementor-1556 .elementor-element.elementor-element-c982f04d{border-style:solid;border-width:0px 0px 1px 0px;border-color:#aa7942;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 20px 100px 20px;}.elementor-1556 .elementor-element.elementor-element-c982f04d > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1556 .elementor-element.elementor-element-d51691c3{text-align:center;}.elementor-1556 .elementor-element.elementor-element-d51691c3 .elementor-heading-title{color:#0f172a;}.elementor-1556 .elementor-element.elementor-element-24024b62{text-align:center;color:#4b5563;}/* 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 */