.m__calculator *,
.m__calculator ::after,
.m__calculator ::before {
    box-sizing: border-box
}

.m__calculator * {
    font-family: inherit;
    /* Match the rest of the site: Poppins (set as --font-poppins in the
       root layout) instead of the embed's original Work Sans. */
    font-family: var(--font-poppins), system-ui, -apple-system, sans-serif;
}

.m__calculator {
    width: 100%;
    margin: 0 auto;
    font-family: inherit;
    font-size: 17px;
    color: rgb(55, 65, 81);
}

.m__calculator .m__row {
    display: block;
    /* flex */
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    column-gap: 20px;
    width: 100%;
}

.m__calculator .m__cell {
    flex: 1;
    padding: 4px 0;
    flex: 1 1 calc(50% - 20px);
    /*display: flex;*/
    align-items: center;
    /* background: #ccc; 
    border-bottom: 1px solid #e8e8e8;*/
    min-height: 60px;
    padding-bottom: 10px;
}

.m__calculator .m__group {
    position: relative;
    width: 100%;
}


.m__group input {
    width: 100%;
    position: relative;
    background: rgb(249, 250, 251);
    border-radius: 6px;
    border-width: 2px;
    border-style: solid;
    border-color: rgb(79 84 221);
    border-image: initial;
    height: 45px;
    padding: 5px 10px 5px 12px;
    font-size: 15px;
    color: rgb(0 7 15);
    font-weight: 600;
}

.m__group input:focus {
    border-radius: 6px;
    border: 2px solid rgb(79 84 221);
    outline: 0
}

.m__calculator .m__name {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 4px;
    line-height: 20px;
    position: relative;
    flex: 1;
}
.m__calculator .m__name.m_center{
        font-weight: 600;
    font-size: 18px;
    margin-bottom: 4px;
    line-height: 23px;
    position: relative;
    flex: 1;
    color: #4f54dd;
    width: 100%;
    text-align: center;
}
.m__calculator .m__step_desc{
        font-size: 14px;
        font-weight: 500;
        margin-bottom: 20px;
        text-align: center;
        color: #022858;
        width: 100%;
}

.m__calculator .m__label {
    display: flex;
    flex-direction: column;
    align-items: self-start;
}

.m__section {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    column-gap: 10px;
    max-width: 550px;
    margin: 0 auto 20px auto;
}

.m__wrap {
    max-width: 800px;
    padding: 25px 30px;
    margin: auto;
    color: #4f54dd;
    box-shadow: 6px 19px 38px 0px rgba(0, 113.00000000000001, 237.99999999999997, 0.2);
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    border-radius: 25px;
    min-height: 300px;
    z-index: 999;
    background: white;
}



@media all and (max-width:700px) {
    .m__calculator {}

    .m__calculator .m__row {
        display: flex;
        flex-direction: column;
        align-items: initial;
        width: 100%;
        column-gap: 0;
    }

    .m__calculator .m__cell {
        max-width: 100%
    }
}


@media all and (max-width:700px) {
    .m__calculator {
        font-size: 16px;
    }

    .m__section {
        display: flex;
        flex-direction: column;
        row-gap: 10px;

                margin-bottom: 0;
    }

    .m__calculator .m__cell {
        flex-wrap: wrap;
        align-items: flex-start;
    }

    .m__calculator .m__name {
        min-width: auto;
        font-size: 14px !important;
    }

    .m__calculator .m__group {
        position: relative;
        flex: 1;
        width: auto;
    }
}


/*-----For Switch Radio Buttons----*/


.m__headings {
    font-size: 19px;
    font-weight: 700;
    margin-bottom: 6px;
}

h1.m__top_head {
    font-size: 38px;
    font-weight: 800;
    margin: 0;
    margin-bottom: 10px;
    /* Match the site's display style: Poppins extrabold, tight tracking,
       sentence case (was Bebas Neue uppercase). */
    font-family: var(--font-poppins), system-ui, -apple-system, sans-serif;
    letter-spacing: -0.02em;
    text-align: center;
}

.mtable th, .mtable td {
    width: 33%;
    text-align: left;
    font-weight: 600;
    font-size: 15px;
    margin-bottom: 4px;
    line-height: 17px;
    position: relative;
    flex: 1;
    color: #3e43cc;
}

.mtable th {
    background: #d7d9ff;
    text-align: center;
    padding: 8px 10px;
    border-radius: 6px;
}

.m__result_block{
    background: #f4f4f4;
    font-weight: 600;
    font-size: 19px;
    line-height: 20px;
    color: #4f54dd;
    padding: 20px;
    border-radius: 16px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.m__res{
    background: #e2e2e2;
    padding: 20px 10px;
    margin: 4px;
    border-radius: 8px;
    flex: 40%;
}
.m__res strong{
    color: #000a15;
    font-size: 16px;
}
.info_div{
        background: #d7d9ff;
        color: #121573;
        border: 1px solid #b5b8ff;
        border-radius: 6px;
        padding: 10px;
        font-size: 11px;
        font-weight: 600;
        margin: 10px 4px 10px;
}
.m_steps{
 display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 10px;
    margin: 20px 0 0;
    border-top: 1px solid #f0f0f0;   
}
.next_btn, .prev_btn {border: 1px solid #0562ca;padding: 10px;min-width: 120px;border-radius: 25px;background: #4f54dd;color: white;font-size: 14px;font-weight: 600;display: flex;align-items: center;justify-content: center;cursor: pointer;outline: none;}
.next_btn{
    margin-left: auto;
}



.zone_block{
        color: #370000;
        border-radius: 6px;
        padding: 8px 5px 2px;
        margin-bottom: 4px;
}
.zone_title{
        padding: 0 0 10px 0;
        text-align: center;
        border-bottom: 1px solid rgb(255 255 255 / 35%);
        font-weight: 600;
}
.zone_content{
        display: flex;
    align-items: center;
    justify-content: space-between;
}
.zone_lower, .zone_Upper{
    display: flex;
    flex-direction: column;
    text-align: center;
    width: 150px;
    margin: 5px 0 5px;
    background: rgb(255 255 255 / 29%);
    padding: 4px;
    border-radius: 6px;
    font-size: 15px;
}

.error_info{
    font-size: 13px;
    color: red;
    font-weight: 600;
    text-align: center;
    display: none;
    background: #ffdddd;
    padding: 6px;
    border-radius: 6px;
}

.m_to_divide{
        font-size: 16px;
        display: flex;
        align-items: center;
        font-weight: 600;
        gap: 8px;
}

@media all and (max-width:700px) {
    .m__top_head {
        line-height: 29px;
        font-size: 32px !important;
    }

    .m__wrap {
        margin: 20px;
        padding: 20px 15px;
    }
}