#mfp-calculator{

    max-width:1100px;
    margin:40px auto;
    padding:35px;

    background:#fbfaf6;

    border:1px solid #e5e2d8;
    border-radius:12px;

    box-shadow:0 10px 35px rgba(0,0,0,.05);

    font-family:inherit;

}

.mfp-header{

    text-align:center;
    margin-bottom:35px;

}

.mfp-header h2{

    margin:0 0 12px;
    color:#4d5d3d;
    font-size:2.2rem;

}

.mfp-header p{

    max-width:700px;
    margin:0 auto;
    color:#666;
    line-height:1.7;

}

.mfp-grid{

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:25px;
    margin-bottom:35px;

}

.mfp-card{

    background:#ffffff;
    border:1px solid #e5e2d8;
    border-radius:10px;
    padding:25px;

}

.mfp-card h3{

    margin-top:0;
    margin-bottom:20px;

    color:#4d5d3d;
    border-bottom:2px solid #d9d2bf;
    padding-bottom:8px;

}
.mfp-card label{

    display:block;
    margin-bottom:18px;

    color:#555;
    font-weight:600;
    font-size:.95rem;

}

.mfp-card input{

    width:100%;
    margin-top:8px;

    padding:12px 14px;

    border:1px solid #d9d2bf;
    border-radius:6px;

    background:#fff;

    font-size:16px;

    transition:border-color .2s ease,
               box-shadow .2s ease;

    box-sizing:border-box;

}

.mfp-card input:focus{

    outline:none;

    border-color:#6b7b57;

    box-shadow:0 0 0 3px rgba(107,123,87,.15);

}

.mfp-results{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

    gap:20px;

    margin-top:20px;

}

.mfp-result{

    background:#f7f4ea;

    border:1px solid #ddd6c4;

    border-radius:10px;

    padding:24px;

    text-align:center;

}.mfp-result h4{

    margin:0 0 12px;

    color:#4d5d3d;

    font-size:1.15rem;

}

.mfp-result div{

    font-size:2rem;

    font-weight:700;

    color:#2f3d24;

}

#budget_summary{

    margin-top:35px;

    padding:25px;

    background:#ffffff;

    border:1px solid #e5e2d8;

    border-radius:10px;

    line-height:1.8;

}

#budget_summary p{

    margin:0 0 12px;

}

#budget_summary p:last-child{

    margin-bottom:0;

}

@media (max-width:768px){

    #mfp-calculator{

        padding:20px;

    }

    .mfp-header h2{

        font-size:1.8rem;

    }

    .mfp-grid{

        grid-template-columns:1fr;

    }

    .mfp-results{

        grid-template-columns:1fr;

    }

}
