.db-offerte-popup{
    position:fixed;
    inset:0;
    z-index:99999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .2s ease, visibility .2s ease;
}

.db-offerte-popup.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

.db-offerte-popup__backdrop{
    position:absolute;
    inset:0;
    background:rgba(5, 10, 25, .56);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

.db-offerte-popup__dialog{
    position:relative;
    width:min(640px, calc(100vw - 48px));
    max-height:min(85vh, 760px);
    overflow:auto;
    padding:30px 30px 26px;
    border:1px solid rgba(59,99,255,.12);
    border-radius:24px;
    background:#fff;
    box-shadow:0 30px 80px rgba(15,23,42,.22);
    opacity:0;
    transform:translateY(16px) scale(.98);
    transition:opacity .2s ease, transform .2s ease;
}

.db-offerte-popup.is-open .db-offerte-popup__dialog{
    opacity:1;
    transform:translateY(0) scale(1);
}

.db-offerte-popup__inner{
    padding:0;
}

.db-offerte-popup__close{
    position:absolute;
    top:20px;
    right:20px;
    width:42px;
    height:42px;
    border:1px solid rgba(15,23,42,.12);
    border-radius:12px;
    background:#fff;
    color:var(--af-text, #111827);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:background .18s ease, border-color .18s ease, transform .18s ease;
}

.db-offerte-popup__close:hover,
.db-offerte-popup__close:focus-visible{
    background:#f8faff;
    border-color:rgba(59,99,255,.25);
    transform:translateY(-1px);
    outline:none;
}

.db-offerte-popup__close svg{
    width:20px;
    height:20px;
}

.db-offerte-popup__title{
    margin:0 64px 16px 0;
    font-size:28px;
    line-height:1.2;
    font-weight:900;
    color:var(--af-text, #111827);
}

.db-offerte-popup__content{
    font-size:15px;
    line-height:1.7;
    color:rgba(15,23,42,.78);
}

.db-offerte-popup__content p{
    margin:0 0 14px;
}

.db-offerte-popup__content strong{
    color:var(--af-text, #111827);
}

.db-offerte-popup__content ul,
.db-offerte-popup__content ol,
.db-offerte-popup__content .af-quote-info-list{
    margin:0 0 18px;
    padding:0;
    list-style:none;
    display:grid;
    gap:11px;
}

.db-offerte-popup__content ul li,
.db-offerte-popup__content ol li,
.db-offerte-popup__content .af-quote-info-list li{
    position:relative;
    padding-left:28px;
    margin:0;
}

.db-offerte-popup__content ul li::before,
.db-offerte-popup__content ol li::before,
.db-offerte-popup__content .af-quote-info-list li::before{
    content:"";
    position:absolute;
    left:0;
    top:9px;
    width:8px;
    height:8px;
    border-radius:999px;
    background:var(--af-green, #19c23e);
    box-shadow:0 0 0 5px rgba(25,194,62,.12);
}

.db-offerte-popup__content .af-quote-info-note,
.db-offerte-popup__content p.af-quote-info-note{
    margin:8px 0 0;
    padding:14px 16px;
    border-radius:14px;
    background:#f3f6ff;
    border:1px solid #dfe7ff;
    font-size:13px;
    line-height:1.6;
    color:#546fe8;
    font-weight:700;
}

.db-offerte-popup__content .af-quote-info-note strong,
.db-offerte-popup__content p.af-quote-info-note strong{
    color:#546fe8;
}

body.db-offerte-popup-open{
    overflow:hidden !important;
}

@media (max-width:767px){
    .db-offerte-popup{
        padding:16px;
    }

    .db-offerte-popup__dialog{
        width:min(640px, calc(100vw - 32px));
        max-height:min(88vh, 760px);
        padding:24px 20px 20px;
        border-radius:20px;
    }

    .db-offerte-popup__close{
        top:16px;
        right:16px;
    }

    .db-offerte-popup__title{
        margin-right:56px;
        font-size:24px;
    }

    .db-offerte-popup__content{
        font-size:14px;
    }
}
