body {
    font-family: "Inter", sans-serif;
    color: #19191B;
    font-size: calc(16px + (18 - 16) * (100vw - 320px) / (1920 - 320));
    line-height: 24px;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}
/* Container for the Radio Buttons */
.insurance-selector {
    display: flex;
    flex-wrap: wrap; /* This is the magic line for mobile */
    gap: 10px; /* Spacing between items */
    align-items: center;
}

    /* Individual Item Styles */
    .insurance-selector span {
        display: flex;
        align-items: center;
        /*background: #fdfdfd;
        border: 1px solid #ddd;
        border-radius: 8px;
        padding: 8px 12px;*/
        cursor: pointer;
        transition: 0.2s;
    }

    /* Make the label text look nice */
    .insurance-selector label {
        margin-bottom: 0; /* Fixes Bootstrap label alignment */
        cursor: pointer;
    }
.d-flex
{
    display: flex;
}

.d-flex-space-between
{
    justify-content: space-between;
}

.d-flex-align-items
{
    align-items: center;
}

.d-flex-justify-content
{
    justify-content: center;
}

.d-flex-justify-end
{
    justify-content: flex-end;
}

.d-flex-wrap
{
    flex-wrap: wrap;
}

.d-flex-no-wrap
{
    flex-wrap: unset!important;
}

.d-flex-gap-5
{
    gap:5px
}

.d-flex-gap-10
{
    gap:10px
}

.d-flex-gap-20
{
    gap:20px
}

.content-container
{
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    /* padding-bottom: 30px; */
}

h1, h2, h3, h4, h5{
     margin: 0; 
}

h1{
    font-size: calc(32px + (56 - 32) * (100vw - 320px) / (1920 - 320));
}

h2{
    font-size: calc(28px + (50 - 28) * (100vw - 320px) / (1920 - 320));
}

h3{
    font-size: calc(25px + (40 - 25) * (100vw - 320px) / (1920 - 320));
}

h4{
    font-size: calc(20px + (24 - 20) * (100vw - 320px) / (1920 - 320));
}

h5{
    font-size: calc(12px + (14 - 12) * (100vw - 320px) / (1920 - 320));
}

h6{
    font-size: calc(11px + (12 - 11) * (100vw - 320px) / (1920 - 320));
}

.bold{
    font-weight: 600;
}

.big{
    font-size: calc(16px + (18 - 16) * (100vw - 320px) / (1920 - 320));
}

.bblue{
    color: #0B68AD;
}

.pink{
    color: #E62E62;
}

.tiffany{
    color: #00B4C5;
}

small{
    font-size: 12px;
    line-height: 8px;
}

.listing-menu > li:not(:last-child) { 
    margin-bottom: 1.2rem;  
}

ol li{
    margin-left: -25px;
    margin-top: 1rem;
}

.warning-box ol li{
    margin-top: 0;
}

p{
    margin: 0;
}

strong{
    font-weight: 600;
}

a{
    text-decoration: none;
    color: #004CE6;
}

a:active, a:hover{
    color: #4197D9;
}


header a, footer a{
    font-size: 12px;
}

/* banner */
.banner {
    margin-top: 75px;
    position: relative;
    min-height: 350px;
    display: flex;
    justify-content: center;
    background-image: linear-gradient(to right,rgba(238, 34, 91, 0.17), rgba(255,0,0,0));
    /*background-image: linear-gradient(to right,rgba(11, 104, 173, 0.17), rgba(255,0,0,0));*/
}

.pink-theme .banner{
    background-image: linear-gradient(to right,rgba(238, 34, 91, 0.17), rgba(255,0,0,0));
}

.banner .banner-img{
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 0;
}

.banner .banner-img img{
    width: auto;
    height: 100%;
}

.banner .banner-text{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    margin: auto;
}

.banner h1{
    position: relative;
    z-index: 1;
}

/* end */

/* Margin , padding */
.mb-1{
    margin-bottom: 0.5rem;
}

.mb-2{
    margin-bottom: 1rem;
}

.mb-3{
    margin-bottom: 1.5rem;
}

.mt-1{
    margin-top: 0.5rem;
}

.mt-2{
    margin-top: 1rem;
}

.mt-3{
    margin-top: 1.5rem;
}

.mt-4{
    margin-top: 2rem;
}

.mt-5{
    margin-top: 2.5rem;
}

/* wrapper */
.main-wrapper{
    position: relative;
    width: 100%;
    margin: 3rem auto;
}

.standard-wrapper{
    max-width: 600px;
}

/* alignment */

.text-center{
    text-align: center;
}

.text-left{
    text-align: left;
}

.align-center{
    display: flex;
    justify-content: center;
}

/* buttons */
.btn{
    width:auto;
    border:none;
    border-radius: 8px;
    padding: 10px 30px;
    cursor: pointer;
    font-size: calc(14px + (18 - 14) * (100vw - 320px) / (1920 - 320));
    font-weight: 600;
    margin-left: 8px;
}

.primary-btn{
    background-color:#E62E62;
    color:#FDE9EF;
    -webkit-box-shadow: 0px 6px 10px -5px rgba(230,46,98,1);
    -moz-box-shadow: 0px 6px 10px -5px rgba(230,46,98,1);
    box-shadow: 0px 6px 10px -5px rgba(230,46,98,1);
}

.light-btn{
    background-color:#FCE8EE;
    color: #EF225B;
    /* padding: 10px 20px; */
}

.disable-btn{
    background: #EDEDF0;
    color: #BDBDCA;
    padding: 10px;
}

.btn:active, 
.btn:hover, .btn:visited{
    opacity:0.8;
}

/* info box */
.info-box{
    background-color: #E6F8F9;
    border-radius: 8px;
    border-left: 6px solid #99E1E8;
    padding: 2rem 1rem;
    text-align: left;
}

.red-box {
    /*background-color: #FCE8EE;*/
    border-radius: 8px;
    border: 12px solid#FCE8EE;
    padding: 1rem;
    margin: 30px 0;
    text-align: left;
}

.warning-box{
    background-color: #FCE8EE;
    border-radius: 8px;
    border-left: 6px solid #F794B0;
    padding: 1rem;
    margin: 30px 0;
    text-align: left;
}

.niceUrl{
    color: #000;
}

/* header */

header
{
    box-shadow: 0px 2px 10px 5px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0px 2px 10px 5px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 2px 10px 5px rgba(0,0,0,0.1);
    width: 100%;
    position: fixed;
    top: 0;
    background-color: white;
    /* border-top:3px solid #A32035; */
    z-index:10;
    padding: 1rem 0;
}

header .content-container{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header .main_logo_img{
    width: 200px;
}

header .logo_container a {
    position: relative;
    z-index: 999;
}

/* header end */

/* Footer Start */

.footer-container
{
    background-color: #fff;
    font-size: 12px;
    padding: 30px 0px;
}

.footer-line{
    border-top: 1px solid #A1A1B3;
    padding-top: 1.5rem;
}

.footer-container a
{
    margin-bottom:10px;
}

.footer_top_row
{
    margin-bottom:50px;
}

.footer_top_column
{
    margin-right:70px;
}

.footer_nav_4 a
{
    margin-right:20px;
}

.social_label
{
    margin-right:20px;
    /* margin-bottom:10px; */
}

.social_row_container .social_box
{
    margin-right:15px;
}

.social_row_container .social_box:last-child
{
    margin-right:0px;
}

.social_row_container .social_box a i
{
    font-size: 18px;
    color: #4197D9;
}

/* Footer End */

/* form related */
.field-note{
    color: #707070;
    font-size: calc(11px + (13 - 11) * (100vw - 320px) / (1920 - 320));
    margin: 0;
}

.form-inline-row{
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
}

.form-inline-child{
    flex-basis: 32% ;
    margin-right: 8px;
}

textarea:focus, input:focus{
    outline: none;
}

.form-row, .form-row-checkbox{
    margin-top: 1.5rem;
}

    .form-row input:not(.form-check-input, .form-upload,.form-check-box,.form-check,[type="radio"], [type="checkbox"],[type="number"],.numInput, cur-year),
    .form-row textarea,
    .form-row select {
        display: inline;
        width: 100%;
        padding: 10px;
        border: 1px solid #A1A1B3;
        box-sizing: border-box;
        margin-top: 8px;
        font-size: 18px;
    }

.form-row textarea{
    height: auto;
}

.form-row .form-check-box .form-check-inline :not(.insurance-selector *){
    /* flex: 1 0 auto; */
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: flex-start;

}

.required .form-label:after {
    content:" *";
    color: red;
}

input[type=radio]{
    box-shadow: 0px 0px 0px 1px #6d6d6d;
    font-size: 3em;
    width: 20px;
    height: 20px;
    border: 2px solid #fff;
    background-clip: border-box;
    border-radius: 50%;
    appearance: none;
    transition: background-color 0.3s, box-shadow 0.3s;
}

input[type=radio]:checked {
    background-color: #000;
}

.form-check-box{
    display: flex;
}

.tnc-box{
    font-size: 0.8rem;
    max-height: 100px;
    border: 1px solid #707070;
    border-radius: 4px;
    overflow-wrap: break-word;
    overflow-y: scroll;
    padding: 8px;
}

/* language box */
.language-box{
    display: flex;
    justify-content: flex-end;
    margin-bottom: 15px;
}

.language-box a{
    margin-left: 15px;
    cursor: pointer;
    color: #A1A1B3;
}

.language-box a.active, .language-box a:hover{
    color: #E62E62; 
}

@media screen and (max-width: 1500px) {
    .banner h1 {
        white-space: normal;
    }
}

@media screen and (max-width: 1300px) {
    .banner{
        min-height: 300px;
    }
}

/* form related */
@media screen and (max-width: 1025px) {
    .banner h1{
        max-width: 25%;
        line-height: 4rem;
    }
    
    .banner .banner-img img{
        height: auto;
        width: 100%;
    }
    .main-wrapper
    {
        margin-top:22vh;
    }
}

@media screen and (max-width: 900px) {
    .content-container{
        padding: 0 15px;
    }

    .footer-line{
        padding: 15px;
    }

    .topmost_header_bar{
        padding: 5px 25px;
    }

    .banner{
        min-height: 250px;
    }
}

@media screen and (max-width: 800px) {
    .banner{
        min-height: 500px;
    }

    .banner .banner-text {
        margin: 0;
        padding-top: 50px;
    }

    .banner-text h1{
        line-height: normal;
        max-width: none;
    }

    .banner .banner-img {
        top: auto;
        bottom: 0;
        height: auto;
    }

    .main-wrapper{
        max-width: none;
        margin-top:15px;
    }

    .footer_top_row
    {
        flex-direction: column-reverse;
    }

    .footer_top_row{
        margin-bottom: 20px;
    }

    header .main_logo_img{
        width: 160px;
    }

    /*.form-row input:not(.form-check-input, .form-upload,.fix-form-check,.insurance-selector input),
    .form-row textarea,
    .form-row select {
        width: 95%;
    }*/

    .tnc-box{
        width: 95%;
    }

    .footer-container{
        padding-bottom: 0;
    }
}

@media screen and (max-width:764px)
{
    .d-flex
    {
        /* flex-direction: column; */
        flex-flow: wrap;
    }
    .d-flex-no-wrap
    {
        flex-wrap: wrap!important;
    }
}

@media screen and (max-width: 600px){
    .banner{
        min-height: 400px;
    }

    .main-wrapper{
        margin: 1rem auto;
    }

    .form-inline-child{
        flex-basis: 100%;
        margin-right: 0;
    }

    .sub-step{
        flex-basis: 100%;
        margin-bottom: 8px;
    }

    .form-row, .form-row-checkbox{
        margin-top: 15px;
    }

    .btn{
        padding: 15px;
    }
    .insurance-selector label {
        font-size: 14px;
    }
}

@media screen and (max-width: 450px)
{
    header{
        padding: 10px 0;
    }

    .banner{
        min-height: 320px;
        margin-top: 50px;
    }

    .banner .banner-text{
        padding-top: 60px;
    }

    header .logo_container::before{
        width: 100px;
    }

    .content-container
    {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .footer-line{
        padding: 10px;
    }
    .insurance-selector label {
       font-size:14px;
    }
}

@media screen and (max-width: 376px){
    header .main_logo_img{
        width: 120px;
    }
}

@media screen and (max-width:281px){
    .banner{
        min-height: 240px;
    }

    .footer_nav_4, .social_label{
        margin-bottom: 8px;
    }

    .header-link a{
        font-size: 10px;
    }
}
