/* ==========================================================================
   Hero-Slider Startseite (Relaunch-Design)
   Row:    .fl-node-2sl7wqfrozev  (Hintergrundfoto + Overlay)
   Slider: .fl-node-wj56uic7fth1  (Beaver Builder Content Slider, bxSlider)
   Texte der Slides bleiben unverändert, hier wird nur das Design übernommen.
   ========================================================================== */

:root {
    --ds-navy-900:  #13212F;
    --ds-gold:      #B69256;
    --ds-gold-soft: #CDAE78;
    --ds-serif:     "Playfair Display", Georgia, "Times New Roman", serif;
    --ds-sans:      system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --ds-ease:      cubic-bezier(0.16, 1, 0.3, 1);
    --ds-dur:       280ms;
    --ds-fs-hero:   clamp(2.5rem, 4.5vw + 1rem, 4.6rem);
    --ds-fs-dxl:    clamp(2.1rem, 3vw + 1rem, 3.4rem);
}

/* ---------- Row: Overlay wie Vorlage (dunkel links, rechts fast klar) ---------- */
.fl-node-2sl7wqfrozev > .fl-row-content-wrap {
    background-color: var(--ds-navy-900);
}
.fl-builder-content .fl-node-2sl7wqfrozev > .fl-row-content-wrap:after {
    background:
        linear-gradient(100deg, rgba(15,27,40,0.95) 0%, rgba(18,32,47,0.86) 28%, rgba(22,38,54,0.50) 50%, rgba(22,38,54,0.18) 72%, rgba(22,38,54,0.06) 100%),
        linear-gradient(0deg, rgba(15,27,40,0.55) 0%, transparent 42%);
}

/* Abstands-Spalte über dem Slider neutralisieren, Inhalt rückt nach oben (Desktop) */
@media (min-width: 993px) {
    .fl-builder-content .fl-node-et0rwo8nvq93 > .fl-col-content { min-height: 0; margin-top: 0; }
    .fl-node-wj56uic7fth1.fl-module > .fl-module-content { margin-top: 2.5rem; }
}

/* ---------- Slide-Inhalt ---------- */
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide-foreground {
    max-width: 640px;
    margin: 0;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide-content {
    color: #fff;
    font-family: var(--ds-sans);
}

/* Eyebrow (per JS eingefügt) */
.fl-node-wj56uic7fth1 .ds-eyebrow {
    display: inline-flex; align-items: center; gap: .6em;
    font-family: var(--ds-sans); font-size: .78rem; font-weight: 700;
    letter-spacing: .16em; text-transform: uppercase; color: var(--ds-gold-soft);
    margin: 0 0 .25rem;
}
/* Keine Linie / kein Strich vor dem Eyebrow */
.fl-node-wj56uic7fth1 .ds-eyebrow::before,
.fl-node-wj56uic7fth1 .ds-eyebrow::after { content: none !important; display: none !important; }

/* Titel */
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-title {
    font-family: var(--ds-serif);
    font-weight: 400;
    font-size: var(--ds-fs-dxl);
    line-height: 1.08;
    color: #fff;
    margin: 1rem 0 1.3rem !important;
    padding: 0 !important;
    text-align: left;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide-0 .fl-slide-title {
    font-size: var(--ds-fs-hero);
    /* zweite Zeile ("DISTLER Immobilien GRUPPE kauft!") in Gold + kursiv,
       erste Zeile ("Sie verkaufen?") bleibt weiß */
    color: var(--ds-gold-soft);
    font-style: italic;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide-0 .fl-slide-title::first-line {
    color: #fff;
    font-style: normal;
}

/* Fließtext */
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text,
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text * {
    font-family: var(--ds-sans);
    font-size: 1.15rem;
    line-height: 1.65;
    color: rgba(255,255,255,0.86);
    font-weight: 400;
    text-align: left;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text {
    max-width: 540px;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text strong,
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text b {
    color: #fff; font-weight: 600;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text > p {
    margin: 0 0 1em !important;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text > p:last-child {
    margin: 0 !important;
}

/* ---------- CTA-Button: gold, eckig, mit Pfeil ---------- */
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide-cta-button {
    padding-top: 2rem;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-cta-button .fl-button-wrap .fl-button:is(a, button) {
    display: inline-flex; align-items: center; justify-content: center; gap: .55em;
    font-family: var(--ds-sans);
    font-size: 1.15rem;
    font-weight: 600;
    letter-spacing: .01em;
    line-height: 1.2;
    padding: 1.05em 2.2em;
    background: var(--ds-gold) !important;
    border: 1.5px solid transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-decoration: none;
    white-space: nowrap;
    transition: background var(--ds-dur) var(--ds-ease), transform var(--ds-dur) var(--ds-ease), box-shadow var(--ds-dur) var(--ds-ease);
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-cta-button .fl-button-wrap .fl-button:is(a, button):hover,
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-cta-button .fl-button-wrap .fl-button:is(a, button):focus-visible {
    background: #a07f48 !important;
    border-color: transparent !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 40px -16px rgba(43,67,93,0.20) !important;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-cta-button .fl-button-wrap .fl-button:is(a, button) span.fl-button-text,
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-cta-button .fl-button-wrap .fl-button:is(a, button):hover span.fl-button-text {
    color: #fff;
}
.fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-cta-button .fl-button-wrap .fl-button:is(a, button)::after {
    content: "";
    display: inline-block; width: 1.1em; height: 1.1em; flex-shrink: 0;
    background-color: #fff;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ---------- USP-Zeile unter dem Button (per JS eingefügt) ---------- */
.fl-node-wj56uic7fth1 .ds-usps {
    display: flex; flex-wrap: wrap; gap: .8rem 1.4rem;
    margin-top: 2rem; padding-top: 1.6rem;
    border-top: 1px solid rgba(255,255,255,0.16);
    list-style: none; padding-left: 0;
}
.fl-node-wj56uic7fth1 .ds-usps li {
    display: inline-flex; align-items: center; gap: .55em;
    font-family: var(--ds-sans); font-size: .85rem; color: rgba(255,255,255,0.9);
    margin: 0; white-space: nowrap;
}
.fl-node-wj56uic7fth1 .ds-usps li::before {
    content: ""; width: 20px; height: 20px; flex-shrink: 0;
    background-color: var(--ds-gold-soft);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ---------- Pager-Punkte (bxSlider) ---------- */
.fl-node-wj56uic7fth1 .bx-wrapper .bx-pager {
    text-align: left;
    padding-left: 9px;
}
.fl-node-wj56uic7fth1 .bx-wrapper .bx-pager.bx-default-pager a.bx-pager-link {
    position: relative;
    background: transparent !important;
    text-indent: -9999px;
    margin: 0;
}
.fl-node-wj56uic7fth1 .bx-wrapper .bx-pager.bx-default-pager a.bx-pager-link::after {
    content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 10px; height: 10px; border-radius: 999px;
    background: rgba(255,255,255,0.45);
    transition: width var(--ds-dur) var(--ds-ease), background var(--ds-dur) var(--ds-ease);
}
.fl-node-wj56uic7fth1 .bx-wrapper .bx-pager.bx-default-pager a.bx-pager-link:hover::after {
    background: rgba(255,255,255,0.8);
}
.fl-node-wj56uic7fth1 .bx-wrapper .bx-pager.bx-default-pager a.bx-pager-link.active::after {
    width: 26px;
    background: var(--ds-gold-soft);
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
    .fl-builder-content .fl-node-2sl7wqfrozev > .fl-row-content-wrap:after {
        background:
            linear-gradient(180deg, rgba(15,27,40,0.86) 0%, rgba(18,32,47,0.55) 42%, rgba(18,32,47,0.30) 68%, rgba(15,27,40,0.78) 100%);
    }

    .fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-content { padding: 0; }
    .fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-title { line-height: 1.12; }
    .fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text,
    .fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-text * { font-size: 1.05rem; line-height: 1.55; }
    .fl-builder-content .fl-node-wj56uic7fth1 .fl-slide .fl-slide-cta-button .fl-button-wrap .fl-button:is(a, button) {
        font-size: 1rem; padding: 1em 1.8em; white-space: normal; text-align: center;
    }
    .fl-node-wj56uic7fth1 .ds-usps { gap: .8rem 1.2rem; margin-top: 1.5rem; padding-top: 1.2rem; }
}
