/* Journey v2 experiment — styles for the "test" arm only (see journey.js).
   Every rule is scoped to html[data-journey="test"] or to elements that only
   journey.js creates, so the control journey is untouched. */

/* Form page: hold the first screen back while a first-time visitor's variant
   loads (max 1.5s), so control/test never flash the wrong screen. */
html.bd-journey-pending #preformPanel,
html.bd-journey-pending #boForm {
    visibility: hidden;
}

/* ── Homepage ───────────────────────────────────────────────────────── */
html[data-journey="test"] button.bd-cta-demoted {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #CFFAFE !important;
    text-decoration: underline;
    text-underline-offset: 4px;
    padding: 0.5rem 0.75rem !important;
    min-height: 44px;
}
html[data-journey="test"] button.bd-cta-demoted:hover,
html[data-journey="test"] button.bd-cta-demoted:focus-visible {
    color: #FFFFFF !important;
}

.bd-sticky-cta {
    display: none;
}
@media (max-width: 767px) {
    .bd-sticky-cta {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 60;
        padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
        background: #FFFFFF;
        border-top: 1px solid #E5E7EB;
        box-shadow: 0 -6px 20px rgba(13, 94, 107, 0.12);
        transform: translateY(110%);
        transition: transform 0.25s ease;
        font-family: 'Poppins', sans-serif;
    }
    .bd-sticky-cta.is-visible {
        transform: translateY(0);
    }
    .bd-sticky-cta__copy {
        display: flex;
        flex-direction: column;
        line-height: 1.25;
    }
    .bd-sticky-cta__copy strong {
        color: #0D5E6B;
        font-size: 15px;
        font-weight: 600;
    }
    .bd-sticky-cta__copy span {
        color: #6B7280;
        font-size: 12px;
    }
    .bd-sticky-cta__btn {
        flex-shrink: 0;
        min-height: 44px;
        padding: 0 20px;
        border: 0;
        border-radius: 8px;
        background: #FF9A00;
        color: #FFFFFF;
        font-weight: 600;
        font-size: 15px;
        cursor: pointer;
    }
    .bd-sticky-cta__btn:focus-visible {
        outline: 3px solid #0D5E6B;
        outline-offset: 2px;
    }
    body.bd-has-sticky-cta {
        padding-bottom: 72px;
    }
    /* Keep the back-to-top button clear of the bar */
    body.bd-has-sticky-cta .back-to-top {
        bottom: 88px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .bd-sticky-cta { transition: none; }
}

/* ── Form ───────────────────────────────────────────────────────────── */
html[data-journey="test"] #preformPanel {
    display: none !important;
}

.bd-needs-note {
    margin: 0 0 20px;
    padding: 14px 16px;
    border: 1px solid #CDE7EA;
    border-radius: 10px;
    background: #F0F9FA;
    color: #0D5E6B;
    font-size: 14px;
    line-height: 1.5;
}
.bd-needs-note ul {
    margin: 6px 0 0;
    padding-left: 18px;
    color: #374151;
}

.bd-field-label {
    display: block;
    margin: 0 0 6px;
    color: #111827;
    font-size: 14px;
    font-weight: 500;
}

.bd-form-alert {
    margin: 0 0 16px;
    padding: 12px 16px;
    border: 1px solid #FCA5A5;
    border-left: 4px solid #EF4444;
    border-radius: 8px;
    background: #FEF2F2;
    color: #991B1B;
    font-size: 14px;
    line-height: 1.5;
}
.bd-form-alert p,
.bd-form-alert ul {
    margin: 0;
}
.bd-form-alert ul {
    padding-left: 18px;
}
