.estimate-banner{

    margin:80px auto;

    max-width:1200px;

    padding:0 20px;
}

.estimate-banner-content{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:40px;

    padding:48px 60px;

    border-radius:28px;

    background:
        linear-gradient(
            135deg,
            #0f172a 0%,
            #1e293b 100%
        );

    overflow:hidden;

    position:relative;
}

.estimate-banner-content::before{

    content:'';

    position:absolute;

    top:-100px;
    right:-100px;

    width:260px;
    height:260px;

    border-radius:50%;

    background:
        rgba(250,204,21,.12);
}

.estimate-banner-badge{

    display:inline-flex;

    align-items:center;

    padding:8px 16px;

    border-radius:999px;

    background:#facc15;

    color:#111827;

    font-size:13px;

    font-weight:700;
}

.estimate-banner h2{

    margin:18px 0 14px;

    color:#fff;

    font-size:clamp(28px,4vw,42px);

    line-height:1.3;
}

.estimate-banner p{

    color:rgba(255,255,255,.75);

    line-height:1.8;
}

.estimate-banner-btn{

    flex-shrink:0;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    height:64px;

    padding:0 34px;

    border-radius:16px;

    background:#facc15;

    color:#111827;

    font-size:18px;

    font-weight:700;

    text-decoration:none;

    transition:.25s;
}

.estimate-banner-btn:hover{

    transform:translateY(-3px);

    box-shadow:
        0 16px 32px rgba(250,204,21,.35);
}
@media (max-width:768px){

    .estimate-banner-content{

        flex-direction:column;

        align-items:flex-start;

        padding:32px 24px;
    }

    .estimate-banner-btn{

        width:100%;
    }
}