body.polycc-popup-open{
    overflow:hidden;
}

.polycc-popup{
    position:fixed;
    inset:0;
    z-index:99999;
}

.polycc-popup__backdrop{
    position:absolute;
    inset:0;
    background:rgba(10,16,36,.62);
    backdrop-filter:blur(3px);
}

.polycc-popup__dialog{
    position:relative;
    z-index:1;
    display:grid;
    gap:0;
    width:min(92vw,760px);
    max-height:min(88vh,960px);
    margin:4vh auto;
    overflow:auto;
    border-radius:18px;
    background:#fff;
    box-shadow:0 30px 90px rgba(0,0,0,.28);
    animation:polyccPopupEnter .28s ease;
}

.polycc-popup__close{
    position:absolute;
    top:14px;
    right:14px;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border:0;
    border-radius:999px;
    background:rgba(18,26,74,.86);
    color:#fff;
    font-size:28px;
    line-height:1;
    cursor:pointer;
}

.polycc-popup__media{
    background:#eef2ff;
}

.polycc-popup__media img{
    display:block;
    width:100%;
    height:auto;
}

.polycc-popup__body{
    display:grid;
    gap:16px;
    padding:28px 26px 30px;
    color:#202534;
}

.polycc-popup__title{
    margin:0;
    font-size:clamp(24px,3vw,34px);
    line-height:1.12;
    color:#18215f;
}

.polycc-popup__content{
    font-size:16px;
    line-height:1.7;
}

.polycc-popup__content > :first-child{
    margin-top:0;
}

.polycc-popup__content > :last-child{
    margin-bottom:0;
}

.polycc-popup__actions{
    display:flex;
    justify-content:flex-start;
}

.polycc-popup__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:12px 22px;
    border-radius:999px;
    background:#292d83;
    color:#fff;
    font-weight:700;
    text-decoration:none;
}

.polycc-popup__button:hover,
.polycc-popup__button:focus{
    color:#fff;
    opacity:.94;
}

@keyframes polyccPopupEnter{
    from{opacity:0;transform:translateY(18px) scale(.98)}
    to{opacity:1;transform:translateY(0) scale(1)}
}

@media (max-width:767px){
    .polycc-popup__dialog{
        width:min(94vw,760px);
        max-height:90vh;
        margin:3vh auto;
        border-radius:14px;
    }

    .polycc-popup__close{
        top:10px;
        right:10px;
        width:36px;
        height:36px;
        font-size:24px;
    }

    .polycc-popup__body{
        gap:14px;
        padding:22px 18px 22px;
    }

    .polycc-popup__content{
        font-size:15px;
        line-height:1.65;
    }

    .polycc-popup__actions{
        justify-content:stretch;
    }

    .polycc-popup__button{
        width:100%;
    }
}
