﻿
/* ===========================
   TABLE OF CONTENTS
   ===========================

   1. Root / Reset / Global Styles
   2. Layout
      2.1 Header
      2.2 Navigation
      2.3 Main Content
      2.4 Footer
      2.5 Toolbar
   3. Modules / Components
      3.1 Buttons
      3.2 Cards
      3.3 Badges
      3.4 Pills
   4. Utilities
   5. External theme customizations

   =========================== */


/* Reset styles */
body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, dl, dd, ol, ul, figure, fieldset, form, legend, input, textarea, button, select {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.text-primary {
    color: var(--ibp-text-primary) !important;
}

h1, h2, h3, h4, h5, h6 {
    line-height: 1.3;
    font-weight: 350;
}

/* Global styles */

body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
    overflow-x: hidden;
    font-size: 1rem;
    line-height: 1.6;
}

html body a {
    text-decoration: none;
    background-color: transparent;
    color: var(--bs-link-color);
}

    html body a:hover {
        text-decoration: underline;
    }


a[target]:not(.btn) {
    font-weight: 400;
    text-decoration-skip-ink: auto;
    text-decoration: none !important;
}

.container-fluid {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.selector-for-some-widget {
    box-sizing: content-box;
}

p {
    margin: 0 !important;
}


/* ===========================
   LAYOUT
   =========================== */

/* -- header -- */
.dropdown-toggle .img-user {
    width: 30px;
    margin-right: 10px;
}

.hamburger span {
    height: 4px;
    background: var(--ibp-secondary-color);
    display: block;
    width: 30px;
    margin: 5px 0;
    border-radius: 2px;
}

/* iBancs portal theme styles */

.ibancs-portal-theme .navbar-light .navbar-toggler {
    border: none !important;
}

    .ibancs-portal-theme .navbar-light .navbar-toggler:focus {
        outline: none !important;
        border: none !important;
        box-shadow: none !important;
    }

.ibancs-portal-theme a.navbar-brand {
    padding-left: 16px;
}

.ibancs-portal-theme .nav-link {
    font-size: 16px;
    text-transform: uppercase;
}


    .ibancs-portal-theme .nav-link span {
        display: block;
        font-size: 14px;
       /* color: #959595;*/
        text-transform: capitalize;
    }


.ibancs-portal-theme li.nav-item {
    padding: 0;
    margin: 0 50px;
    border-top: solid 4px transparent !important;
}

    .ibancs-portal-theme li.nav-item a.nav-link.dropdown-toggle {
        position: relative !important;
    }

.dropdown-toggle::after {
    position: absolute;
    top: 41px;
    right: -8px;
    display: inline-block !important;
    margin-left: 0.255em !important;
    vertical-align: 0.255em !important;
    content: "" !important;
    border-top: 0.4em solid !important;
    border-right: 0.4em solid transparent !important;
    border-bottom: 0 !important;
    border-left: 0.4em solid transparent !important;
}

a.dropdown-item:focus {
    background: var(--ibp-primary-color) !important;
    color: #fff !important;
}

.ibancs-portal-theme .navbar {
    padding: 0 26px !important;
}

.ibancs-portal-theme li.nav-item::before {
    content: '';
    background: black;
    width: 0.5px;
    height: 26px;
    position: absolute;
    margin-left: 120px;
    margin-top: 18px;
}

.ibancs-portal-theme li.nav-item:nth-last-child(1)::before {
    display: none;
}

.ibancs-portal-theme li.nav-item:hover {
    border-top: solid 4px;
}

ul.language {
    padding: 2px 0 0 20px;
    margin: 0;
}

    ul.language li {
        display: inline-block;
        padding: 0 14px 0 10px;
        margin: 3px 0 0;
        border-right: solid 1px #cfcfcf;
    }

        ul.language li:nth-child(2) {
            border: none;
        }

        ul.language li a {
            color: #fff;
            margin: 4px 0 0;
            text-decoration: none;
        }

            ul.language li a:hover {
                text-decoration: underline;
            }





.topbar {
    padding: 4px 0;
    background: var(--ibp-secondary-color) !important;
}

    .topbar .number {
        padding: 6px 0 0;
        text-align: right;
    }

       /* .topbar .number span {
            color: #fff;
        }*/

/* ===========================
   2.4 Toolbar
   =========================== */

.sticky-container {
    position: sticky;
    top: 0;
    z-index: 999;
    background-color: inherit;
    border-left: 8px solid;
    border-left-color: var(--theme-success-600);
    padding: 10px 10px 10px;
}

.toolbar {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 5px;
}

.toolbar-button {
    margin-left: 10px;
    padding: 8px 16px;
    cursor: pointer;
}

    .toolbar-button i {
        margin-right: 5px;
    }


/* ===========================
   MODULES / COMPONENTS
   =========================== */

.form-control:disabled, .form-control[readonly] {
    background-color: #ededed;
    opacity: 1;
}
.bg-read-only {
    background-color: #ededed;
}

.form-label {
    font-weight: 400;
    width: 100%;
}


.custom-select {
    display: inline-block;
    width: 100%;
    height: calc(1.47em + 1rem + 2px);
    padding: 0.5rem 1.875rem 0.5rem 0.875rem;
    font-size: 0.8125rem;
    font-weight: 400;
    line-height: 1.47;
    color: #495057;
    vertical-align: middle;
    background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.875rem center/8px 10px no-repeat;
    border: 1px solid #E5E5E5;
    border-radius: 4px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


span.select2.select2-container {
    width: 100% !important;
}


.form-check-input:checked {
    background-color: var(--ibp-secondary-color) !important;
    border-color: var(--ibp-secondary-color) !important;
    height: 20px;
    width: 20px;
}

.form-control {
    font-size: 1rem;
    background-color: var(--background-color);
}

    .form-control:focus {
        outline: none !important;
        box-shadow: none !important;
        border: solid 1px #000 !important;
    }


/* ===========================
   3.1 Buttons
   =========================== */
.btn:focus {
    outline: none !important;
    box-shadow: none !important;
}

.btn.sm {
    border-radius: 100px !important;
    padding: 0 10px !important;
    font-size: 14px;
    line-height: 2;
    min-width: 100px;
}

.btn.md {
    padding: 6px 30px 8px;
    border-radius: 100px;
    min-width: 160px;
}

.btn.lg {
    padding: 8px 100px;
    border-radius: 100px;
    min-width: 250px;
}

button.close {
    padding: 0;
    background-color: transparent;
    border: 0;
    appearance: none;
}

.close {
    float: right;
    font-size: 1.23rem;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: .5;
}

/* ===========================
   3.2 Card
   =========================== */

.card-header {
    margin-bottom: 1rem;
    background-color: inherit;
}

/* ===========================
   3.3 Badges
   =========================== */

.badge-success {
    color: #fff;
    background-color: var(--bs-success);
}

.badge-danger {
    color: #fff;
    background-color: var(--bs-danger);
}


/* ===========================
   3.3 Pills
   =========================== */

.nav-pills .nav-link {
    border-radius: 50px;
}

    .nav-pills .nav-link.active, .nav-pills .show > .nav-link {
        color: #fff !important;
        background-color: var(--ibp-primary-color);
        
    }



.boxes .single-box {
    min-height: 350px;
    text-align: center;
    cursor: pointer;
    padding: 40px 60px !important;
    border: solid 1px #eaedf4;
}

    .boxes .single-box h1, .mega-content h1 {
        color: var(--ibp-primary-color);
        font-size: 48px;
    }

.mega-content h5 {
    color: var(--ibp-primary-color);
}

.mega-content .link p {
    color: #000;
}

.mega-content .link {
    color: #000;
    text-decoration: underline;
}

    .mega-content .link:hover .card-body {
        background-color: #edeff2;
        border-radius: 4px;
    }

    .mega-content .link .card-body {
        height: 185px;
    }

.img-megamenu {
    width: 100%;
}



a.list-group-item {
    font-size: 18px;
    color: #000;
    padding: 16px 22px;
}

    a.list-group-item:hover {
        color: #000;
        background: #f7fbfb;
    }

.mega-content .two, .mega-content .three {
    padding-top: 40px !important;
}

.mega-content h3 {
    font-size: 20px;
    padding-bottom: 12px;
}

.discount-price {
    width: 150px;
    margin: auto;
    height: 70px;
    position: relative;
}

.amount {
    font-size: 70px;
    position: absolute;
    left: 0;
    right: 10px;
    top: -18px;
}

.percent {
    position: absolute;
    right: 10px;
    top: -4px;
    font-size: 40px;
}

.off {
    position: absolute;
    top: 40px;
    right: 6px;
    font-size: 20px;
    text-transform: uppercase;
}

.staric {
    position: absolute;
    top: 0;
    right: 4px;
    font-size: 30px;
}


.product-list {
    display: flex;
    overflow: hidden;
    border-radius: 10px;
    border: solid 1px var(--ibp-primary-color);
    margin-bottom: 4px;
    font-weight: 500;
    text-decoration: none;
    padding: 0;
}

    .product-list.left {
        padding: 16px 0 0;
        font-weight: 600;
    }

    .product-list .col {
        text-align: center;
        padding-right: 0;
        padding-left: 0;
    }

        .product-list .col.half .body {
            padding: 50px 0 0;
        }

    .product-list.left .col {
        text-align: left;
        padding: 0 50px
    }

    .product-list .col .head {
        background: var(--ibp-primary-color);
        color: #fff;
        padding: 8px 0;
        width: 100%;
        height: 41px;
        font-size: 16px;
    }

.tbr-0 {
    border-radius: 0 !important
}

.product-list .col .head.gray {
    background: #f9faff !important;
    color: #000;
    font-weight: 500;
    border: none;
    border-bottom: 1px solid;
}

.product-list .col .body {
    padding: 30px 20px 0;
    font-weight: 600;
    font-size: 16px;
}

.product-list.benefit .col .body {
    padding: 14px 0;
}

.product-list .col.additional {
    flex: 4
}

.product-list .col .body .imgproduct {
    width: 120px
}

.product-list .col .body .btn {
    margin-bottom: 4px
}

.product-list ul {
    padding: 10px 0 20px 0;
}

    .product-list ul li {
        list-style: none;
        text-align: left;
        font-weight: 500;
    }

.product-list .benefit li {
    display: inline-block;
    margin: 0 30px 0 0;
    text-align: center;
    font-size: 16px;
}

.product-list ul li .fa, .product-list ul li .fa-check {
    color: var(--ibp-primary-color);
}






.boxes .single-box p {
    color: #8591ab;
    height: 60px;
}

.icon-box {
    height: 62px;
    width: 100px;
    margin: auto;
    background-position: center 0;
    background-repeat: no-repeat;
    margin-bottom: 10px;
    transition: all .5s;
}

.boxes .single-box:hover .icon-box {
    background-position: center -50px;
}

.icon-box.car {
    background-image: url('../images/car.png');
}

.icon-box.bike {
    background-image: url('../images/bike.png');
}

.icon-box.home {
    background-image: url('../images/home.png');
}

.icon-box.pet {
    background-image: url('../images/pet.png');
}

.boxes .single-box:hover h1, .boxes .single-box:hover p, .boxes .single-box:hover h5 {
    color: #fff !important;
}

.boxes .single-box:hover .discount-price .amount,
.boxes .single-box:hover .discount-price .percent,
.boxes .single-box:hover .discount-price .staric,
.boxes .single-box:hover .discount-price .off {
    color: #fff !important;
}

.boxes .single-box:hover .btn {
    border: solid 2px #fff !important;
    color: #fff !important;
}

/* -- four boxes -- */


/* -- banner -- */
#multiscroll {
    position: relative;
    width: 100%;
    height: 80vh;
    overflow: hidden;
}

.banner .box.selector-for-some-widget {
    padding: 50px;
}

.banner {
    padding: 0;
}

.box.left {
    background: #152433;
    padding: 100px 60px 0 !important;
}

.ms-left .ms-section {
    padding: 100px 60px 0 !important;
}

    .ms-left .ms-section.two {
        padding: 50px 60px 0 !important;
    }

.ms-section .line {
    width: 100px;
    height: 5px;
    display: inline-block;
}

.box.left.two {
    background-color: #152433;
}

.box.left.three {
    background-color: #152433;
}

.box.left.four {
    background-color: #152433;
}

.banner .box.right {
    padding: 0;
}

    .banner .box.right img {
        width: 100%;
    }

.banner h1 {
    color: #fff;
    font-size: 45px;
    line-height: 1;
    font-weight: 100;
}

.banner h2 {
    color: #fff;
    font-size: 30px;
    font-weight: 100;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 1.6 !important;
}

/* -- Testimonials -- */
.testimonials {
    padding: 40px 0 50px !important;
    background: var(--bg-secondary);
}

    .testimonials .box {
        padding: 50px 50px 40px;
        background: var(--background-color);
        text-align: center;
        height: 550px;
    }

    .testimonials h5 {
        margin: 10px 0;
       /* color: #8591ab;*/
        font-size: 1em;
        font-weight: 400;
        line-height: 1.5;
    }

    .testimonials .fa-quote {
        color: #e2cd69;
        font-size: 42px;
    }

.dp-box {
    height: 80px;
    width: 80px;
    overflow: hidden;
    margin: 0 auto;
    border-radius: 100px;
}

    .dp-box img {
        width: 100% !important;
        height: 100% !important;
    }

.testimonials .seprator {
    width: 80px;
    height: 2px;
    margin: 0 auto;
    display: inline-block;
    background: #eaedf4;
    margin-bottom: 10px;
}

.testimonials h2 {
    text-align: center;
    /*color: #2e3a52;*/
    margin-bottom: 30px !important;
}



/* -- Policy -- */
.policy {
    padding: 30px 0;
    background: var(--ibp-primary-color);
}

    .policy .box {
        padding: 30px 0;
    }

    .policy div {
        color: #fff;
        text-align: center;
    }

    .policy h4 {
        margin: 20px 0 0;
    }


/* -- Slick Slider -- */

/* Slider */
.slider {
    width: 100%;
    margin: 20px auto;
}

.slick-slide {
    margin: 0 20px;
    transition: all ease-in-out .3s;
    opacity: 1;
}

    .slick-slide img {
        width: 130px;
        height: 40px;
        margin: auto;
    }

.slick-prev::before, .slick-next::before {
    font-size: 30px !important;
    color: #8591ab !important;
}



.slick-active {
    opacity: 1;
}

.slick-current {
    opacity: 1;
}

.partners h2 {
    text-align: center;
    margin: 50px 0 !important;
}



footer {
    padding: 30px 0 0;
}

.list {
    padding: 0;
    font-size: 1rem;
}

    .list li {
        margin: 4px 0;
        list-style: none;
    }

        .list li a {
            text-decoration: none;
            color: #fff;
        }

            .list li a:hover {
                text-decoration: underline;
            }

footer .fa {
    color: #fff;
    font-size: 18px;
    margin: 0 10px 0 0;
}

footer .bottom {
    padding: 10px 0;
    border-top: solid 1px rgb(255 255 255 / 21%);
}

footer h6 {
    color: #fff;
}



.stepbutton.disabled {
    display: none;
}

.btn {
    border-radius: 50px !important;
}

.btn-padded {

    padding: 6px 40px;
}

.fb.btn:hover, .google.btn:hover {
    color: #fff;
}

.fb {
    background-color: #3B5998 !important;
    color: white !important;
}

.twitter {
    background-color: #55ACEE !important;
    color: white !important;
}

.google {
    background-color: #dd4b39 !important;
    color: white !important;
}

.g-recaptcha {
    display: inline-block;
}



.modal label {
    margin-bottom: 0;
}

.pass {
    padding: 50px 0;
    background: #f1f1f1;
}

.pass-box {
    margin: 0 auto;
    width: 600px;
    border: solid 1px var(--ibp-primary-color);
    padding: 50px;
    border-radius: 6px;
    box-shadow: 1px 1px 20px #e9e9e9;
    background: #fff;
}

    .pass-box h2 {
        color: var(--ibp-primary-color);
    }

.error {
    color: red;
}

/* modal */

.modal.show {
    z-index: 9999999;
}

.modal-open {
    overflow: hidden;
}

    .modal-open .modal {
        overflow: hidden auto;
    }

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2050;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: .5rem;
    pointer-events: none;
}

.modal.fade .modal-dialog {
    transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out;
    transition: transform .3s ease-out, -webkit-transform .3s ease-out;
    transform: translate(0, -50px);
}

.modal.show .modal-dialog {
    transform: none;
}

.modal.modal-static .modal-dialog {
    transform: scale(1.02);
}

.modal-dialog-scrollable {
    display: -webkit-box;
    display: flexbox;
    display: flex;
    max-height: calc(100% - 1rem);
}

    .modal-dialog-scrollable .modal-content {
        max-height: calc(100vh - 1rem);
        overflow: hidden;
    }

    .modal-dialog-scrollable .modal-footer,
    .modal-dialog-scrollable .modal-header {
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }

    .modal-dialog-scrollable .modal-body {
        overflow-y: auto;
    }

.modal-dialog-centered {
    display: -webkit-box;
    display: flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: calc(100% - 1rem);
}

    .modal-dialog-centered::before {
        display: block;
        height: calc(100vh - 1rem);
        content: "";
    }

    .modal-dialog-centered.modal-dialog-scrollable {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 100%;
    }

        .modal-dialog-centered.modal-dialog-scrollable .modal-content {
            max-height: none;
        }

        .modal-dialog-centered.modal-dialog-scrollable::before {
            content: none;
        }

.modal-content {
    position: relative;
    display: -webkit-box;
    display: flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-clip: padding-box;
    border: 1px solid;
    border-color: var(--ibp-primary-color);
    border-radius: 4px;
    outline: 0;
}

.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2040;
    width: 100vw;
    height: 100vh;
    background-color: #000;
}

    .modal-backdrop.fade {
        opacity: 0;
    }

    .modal-backdrop.show {
        opacity: .2;
    }

.modal-header {
    display: -webkit-box;
    display: flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0.5rem 1rem;
    border-bottom: 0 solid #dee2e6;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

    .modal-header .close {
        padding: 1.25rem;
        margin: -1.25rem -1.25rem -1.25rem auto;
    }

.modal-title {
    margin-bottom: 0;
    line-height: 1.47;
}

.modal-body {
    position: relative;
    -webkit-box-flex: 1;
    flex: 1 1 auto;
    padding: 1.25rem;
}

.modal-footer {
    display: -webkit-box;
    display: flexbox;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 1rem;
    border-top: 0 solid #dee2e6;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}

    .modal-footer > * {
        margin: .25rem;
    }

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll;
}

.booking-modal .form-inline-field {
    padding: 10px 22px;
    font-size: 16px;
    width: 100%;
    border: solid 1px black;
    border-radius: 6px;
}

.booking-modal .close {
    float: right;
    font-size: 21px;
    font-weight: 100 !important;
    line-height: 1;
    color: #fff;
    opacity: 1;
}

.booking-modal .form-select {
    width: 100%;
    margin: 0;
}

.booking-modal h6 {
    text-align: left !important;
}

.booking-modal .modal-footer {
    display: block;
}

@media (width >= 576px) {
    .modal-dialog {
        max-width: 500px;
        margin: 1.75rem auto;
    }

    .modal-dialog-scrollable {
        max-height: calc(100% - 3.5rem);
    }

        .modal-dialog-scrollable .modal-content {
            max-height: calc(100vh - 3.5rem);
        }

    .modal-dialog-centered {
        min-height: calc(100% - 3.5rem);
    }

        .modal-dialog-centered::before {
            height: calc(100vh - 3.5rem);
        }

    .modal-sm {
        max-width: 300px;
    }
}

@media (width >= 992px) {
    .modal-lg, .modal-xl {
        max-width: 650px;
    }
}

@media (width >= 1399px) {
    .modal-xl {
        max-width: 1140px;
    }
}

.modal .link {
    color: #2b2b2b;
    width: 100%;
    text-align: right;
    display: inline-block;
    padding: 7px 0 0;
    cursor: pointer;
    text-decoration: none;
}

    .modal .link:hover {
        text-decoration: underline;
    }

.modal .red {
    cursor: pointer;
}

.modal .nav-tabs li.nav-item {
    width: 50%;
    padding: 0;
    margin: 0;
    text-align: center;
}

    .modal .nav-tabs li.nav-item button {
        width: 100%;
        color: #fff !important;
    }

.modal li.nav-item::before {
    content: none;
}

.modal .tab-pane {
    padding: 20px 80px 10px !important;
}

.modal .nav-link {
    border: none !important;
}

.modal li.nav-item.active,
.modal li.nav-item:hover,
.modal li.nav-item {
    border: none !important;
}

.modal h6 {
    text-align: center;
}

.modal .g-recaptcha {
    margin: auto;
}

/* modal ends here */
ul.dropdown-topbar {
    width: auto;
    display: inline-flex;
    padding: 0 16px;
    margin: 3px 0 6px;
}

.dropdown-topbar li {
    list-style: none;
    margin: 0;
}

    .dropdown-topbar li a {
        text-align: left;
        color: #fff !important;
        padding: 0;
        margin: 0;
        line-height: 1.2;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.dropdown-toggle.user {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #fff;
    text-decoration: none;
    display: inline-block;
  /*  width: 70px;*/
    position: relative;
    margin: 4px 0 -5px;
}

    .dropdown-toggle.user::after {
        display: inline-block !important;
        margin-left: 0.255em !important;
        vertical-align: 0.255em !important;
        content: "" !important;
        border-top: 0.3em solid !important;
        border-right: 0.3em solid transparent !important;
        border-bottom: 0 !important;
        border-left: 0.3em solid transparent !important;
        position: absolute;
        top: 7px;
        width: 10px;
        right: 1px;
        z-index: 999;
    }

.dropdown-menu.user {
    width: 100px
}

.dropdown-topbar li a.dropdown-item {
    color: #2b2b2b !important;
    padding: 12px 20px;
}

.dropdown-topbar li.nav-item:hover {
    border-top: solid 4px transparent !important;
}

.dropdown-menu.show {
    padding: 10px 0;
    z-index: 9999;
}

.dropdown-topbar .dropdown-toggle::after {
    top: 6px;
    right: 0;
}



.btntopbox {
    text-align: center;
    padding-right: 20px !important;
}



/* -- Process Steps -- */
.btn a, .btn a:hover {
    color: #fff;
    text-decoration: none;
}

.btn-box {
    text-align: center !important;
    padding: 40px 0 0;
}




.process {
    padding-bottom: 0;
}

.pb-20 {
    padding-bottom: 20px
}


.uppercase {
    text-transform: uppercase
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    appearance: none;
    margin: 0;
}

.input-container {
    display: flex;
    width: 100%;
    margin-bottom: 15px;
}

/* Style the input fields */
.input-field {
    width: 30%;
    padding: 10px;
    outline: none;
}


/* Firefox */
input[type="number"] {
    appearance: textfield;
}

.process .head {
    text-align: center;
    padding: 30px 0;
/*    border-top: solid 1px gray;*/
}


.process .steps {
    padding: 0;
}

.process .step-tiles {
    padding: 0;
    text-align: center;
}

    .process .step-tiles li {
        list-style: none;
        background: var(--ibp-primary-color);
        display: inline-block;
        margin: 0;
        width: 15.9%;
        padding: 16px 8px;
        border-radius: 6px;
        vertical-align: middle;
        font-size: 14px;
        font-weight: 600;
        color: #fff;
   /*     text-align: left;*/
        opacity: .4;
    }

    .process .step-tiles.life li {
        width: 22.5%;
    }

    .process .step-tiles li img {
        width: 26px;
        margin: 0 4px;
    }

    .process .step-tiles li .fa-check {
        opacity: 0;
        background: #8591ab;
        border-radius: 50px;
        padding: 4px;
        font-size: 14px;
        color: var(--ibp-primary-color);
        display: none;
    }

    .process .step-tiles li.active .fa-check {
        display: inline-block;
        opacity: 1;
    }

    .process .step-tiles li.active {
        background: var(--ibp-primary-color);
        opacity: 1;
    }

        .process .step-tiles li.active.completed .fa-check {
            background: var(--ibp-primary-color);
        }



.flex.font-ar.title {
    font-size: 18px;
    background: #fff;
    padding: 0;
    color: var(--ibp-secondary-color);
    border-radius: 4px;
    font-weight: 600;
}

.option-table tr {
    background: #fff;
    border: solid 1px #fff;
}

td.details-control .fa {
    font-size: 20px;
    color: var(--ibp-primary-color);
    margin: 6px 0 0;
    cursor: pointer;
}

.option-table tr.odd td, .option-table tr.even td {
    padding: 10px !important;
    font-size: 16px;
    font-weight: 500;
    color: var(--ibp-secondary-color);
    line-height: 1.7;
}

#productOptionsDatatable input {
    width: 20px;
    height: 20px;
    border: solid 1px gray;
    box-shadow: none;
    margin: 3px 0 0;
}

.option-table tr td table tr td {
    padding: 0 20px
}

.form-grid, .bg-gray {
    /*background: #f9faff;*/
    margin: 0 !important;
    padding: 0 !important;
}

.bg-gray {
    padding-bottom: 40px !important;
}

.form-grid .title {
    background: var(--ibp-primary-color);
/*    border-top-right-radius: 6px;
    border-top-left-radius: 6px;*/
    padding: 10px 20px 6px;
    text-align: center;
}

    .form-grid .title h5 {
        color: var(--ibp-secondary-color);
        font-weight: 600;
    }

.form-grid .body {
    padding: 26px 26px 0;
    min-height: 160px;
}

.quote-form {
    text-align: center;
    padding: 10px 0 30px;
}

    .quote-form h5, .cardetails-form h5 {
        color: var(--ibp-secondary-color);
        font-weight: 500;
    }

        .quote-form h5.tag {
            color: var(--ibp-secondary-color);
            background: #fff;
            display: inline-block;
            padding: 10px 50px;
            border-radius: 3px;
            font-size: 22px;
            font-weight: 600;
        }

.cardetails-form {
    padding: 16px 0;
    background: #f9faff;
    border-radius: 3px;
    border: solid 1px var(--ibp-secondary-color);
    text-align: center;
    height: 86px;
}

/* table */

.table-condensed {
    font-size: 0.7rem;
    text-align: left;
    vertical-align: middle;
}

.table.quote thead {
    background: var(--ibp-primary-color);
}

.table.quote tr th {
    color: white;
    font-weight: 500;
}

/*.table.quote tr td, .table.quote tr td a {
    font-weight: 600;*/
    /*color: var(--ibp-secondary-color);*/
    /*text-decoration: none;
}*/

.table.quote tr td {
    padding: 18px 0;
}

    .table.quote tr td img {
        width: 120px;
    }

/*    .table.quote tr td a.btn {
        color: #fff;
        font-weight: 500;
    }*/

.table-box {
    padding: 0 !important;
    border-top-right-radius: 6px;
    border-top-left-radius: 6px;
    overflow: hidden;
}

    .table-box.grid {
        border-radius: 10px;
        margin: 9px 0 0;
        border: 1px solid var(--ibp-primary-color);
    }

        .table-box.grid table tr td ul {
            padding: 0;
        }

            .table-box.grid table tr td ul li {
                list-style: none;
                text-align: left;
            }

 /*               .table-box.grid table tr td ul li .fa, .table-box.grid table tr td ul li .fa-check {
                    color: var(--ibp-primary-color);
                }
*/

        .table-box.grid table tr td {
            padding: 12px 30px 0;
            text-align: left;
        }



    .table.quote tr td, .table.quote tr th {
        text-align: center;
        vertical-align: middle;
    }


    .table.quote.life .btn.md {
        padding: 5px 15px 6px;
        min-width: 150px;
        font-size: 16px;
        margin: auto;
    }

.hide {
    display: none
}

.disabled {
    display: none;
}

.hidden-sm, .hidden-md, .hidden-lg {
    display: none !important
}


ul.dropdown-topbar li.nav-item.dropdown {
    width: 107px;
}

.options-box {
    padding: 0 !important;
}

table tbody tr td object {
    width: 170px;
}

.outer-process-body {
    width: 80%;
    margin: 0 auto;
    min-height: 80px;
    padding-bottom : 50px;
}

/*.motor-form-section {
    width: 100%;
    margin: auto;
    display: none;
}

    .motor-form-section:nth-child(1) {
        display: inline-block
    }*/


ul.benefits {
    padding: 0;
}

    ul.benefits li {
        list-style: none;
        text-align: left;
    }

.table.quote.life {
    border-radius: 4px;
    overflow: hidden;
}

span.select2-selection {
    border: solid 1px black !important;
    padding: 9px 6px !important;
    border-radius: 6px !important;
    height: 45px !important;
}

span.select2-selection__arrow {
    top: 3px !important;
    right: 6px !important;
}

span.select2-selection--single {
    background: #8591ab;
    color: #fff;
}

div#product-page {
    min-height: 320px;
}

.option-table-top {
    display: flex
}

    .option-table-top .leftbox {
        width: 88%
    }

ul.no-list.result-action-btn li {
    list-style: none;
}

/* -- Life Insurance */
.process.head .row {
    padding: 20px 0 0;
}

.no-border {
    border: none !important;
}

.section.product-list {
    padding: 20px 0;
    background: none;
    border: none;
}

.pro-icons img {
    margin: auto;
    width: 100px;
}

.product {
    position: relative;
    text-align: center;
    background: #fff;
    border: solid 1px #dbdbdb;
    border-radius :10px;
    cursor: pointer;
    min-height: 440px;
    padding: 20px 40px;
}

    .product span {
        display: contents;
        padding: 10px 80px;
    }

    .product::before, .product::after {
        content: "";
        width: 0;
        height: 2px;
        position: absolute;
        transition: all 0.2s linear;
        background: #000;
    }

    .product span::before, .product span::after {
        content: "";
        width: 2px;
        height: 0;
        position: absolute;
        transition: all 0.2s linear;
        background: #000;
    }

    .product:hover::before, .product:hover::after {
        width: 100%;
    }

    .product:hover span::before, .product:hover span::after {
        height: 100%;
    }

    .product.btn-2.hovered {
        padding-top: 50px;
    }

        .product.btn-2.hovered span::after, .product.btn-2.hovered span::before {
            height: 100%;
        }

        .product.btn-2.hovered::before, .product.btn-2.hovered::after {
            width: 100%;
        }

.btn-2::before, .btn-2::after {
    transition-delay: 0s;
}

.btn-2 span::before, .btn-2 span::after {
    transition-delay: 0.2s;
}

.btn-2::before {
    right: 0;
    top: 0;
}

.btn-2::after {
    left: 0;
    bottom: 0;
}

.btn-2 span::before {
    left: 0;
    top: 0;
}

.btn-2 span::after {
    right: 0;
    bottom: 0;
}

.btn-2:hover::before, .btn-2:hover::after {
    transition-delay: 0.2s;
}

.btn-2:hover span::before, .btn-2:hover span::after {
    transition-delay: 0s;
}

.product p {
    font-size: 16px;
    color: #333;
    line-height: 1.7rem;
    padding: 0;
    letter-spacing: .5px;
    font-weight: 400;
}

.product h4 {
    font-size: 20px;
    font-weight: 400 !important;
    padding: 0;
    color: #000;
    padding-bottom: 20px !important;
}

.product h5 {
    color: #000;
}

.section.product-list a {
    text-decoration: none;
}

.howitworks {
    text-align: center;
    padding-bottom: 50px;
}

    .howitworks .fa {
        font-size: 40px;
        margin-bottom: 20px;
    }

    .howitworks h5 {
        font-weight: 600;
        margin-bottom: 16px !important;
    }

.col-icon-cntr-claim {
    border: solid 1px #d5d5d5;
    height: 230px;
    padding: 33px 25px;
    border-radius: 10px;
}

.step-box {
    height: 100px;
    padding: 33px 25px;
}



.card-form-section {
    width: auto;
    margin: auto;
    /*background: #f9faff;*/
    background: var(--background-color);
    overflow: hidden;
    margin-top: 10px;
    margin-bottom: 10px;
    border: 1px solid;
    border-color: var(--ibp-primary-color)
}

.card-header .card-title {
    color:#fff !important;
}




.title-text {
    padding: 14px 18px;
    text-align: justify;
}

.portal-form-section {
    width: auto;
    margin: auto;
    /*background: #f9faff;*/
    background: var(--background-color);
    /*  padding: 10px;*/
    /*border-top-left-radius: 6px;
    border-top-right-radius: 6px;*/
    padding-bottom: 10px;
    border-radius: 6px;
    overflow: hidden;
    margin-top: 10px;
    margin-bottom: 10px;
    border: 1px solid;
    border-color: var(--ibp-primary-color)
}

.portal-form-section .heading, h3.survey-title, h3.screenreader-only {
    background: var(--ibp-primary-color);
    padding: 12px 18px;
    color: #fff;
    font-size: 18px;
}

.portal-mini-form-section {
    width: auto;
    margin: auto;
    background: var(--background-color);
    padding: 10px;
    border-radius: 6px;
    overflow: hidden;
    margin-top: 10px;
    margin-bottom: 10px;
    border: 1px solid;
    border-color: var(--ibp-primary-color)

}

.portal-form-section .form-group {
    padding: 0 18px;
    margin: 18px 0 0;
}

.portal-form-section .container {
    padding: 0;
}

.survey-body.survey-page {
    padding-bottom: 50px;
}



h3.screenreader-only {
    display: none;
}



/* -- Question --- */

span.question-info {
    display: block;
    color: #808080;
    margin-top: 10px;
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    text-decoration: none;
    line-height: 1.25
}

/* checkbox button align */
.checkbox-button-label .modern-browser .answer-option-cell,
.checkbox-button-label .modern-browser .other-answer-container {
    padding: 8px 8px 10px 8px !important
}

.radio-button-label,
.checkbox-button-label {
    border: 1px solid transparent
}

.modern-browser .radio-button-label.focus .radio-button-display,
.modern-browser .checkbox-button-label.focus .checkbox-button-display {
    border-color: #4f5a77 !important;
    box-shadow: 0 0 4px #4f5a77 !important
}

/*.question-fieldset {
    padding: 30px;
}*/

.question-fieldset input.form-check-input.checkbox-button-display {
    width: 1.0rem;
    height: 1.0rem;
    margin-right: 10px;
    margin-top: 5px;
}

.question-fieldset .custom-control.custom-checkbox {
    display: flex;
}

/*.question-fieldset input.radio-button-display {
    width: 20px;
    height: 20px;
}*/

  /*  .question-fieldset .custom-control.custom-radio {
        display: flex;
    }*/

.checkbox-button-label-text {
    font-size: 18px;
    padding-left:10px;
}

.survey-page .question-title-container {
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    text-decoration: none;
    color: #333e48;
    line-height: 1.25;
    padding: 0 0 18px 0
}

.question-fieldset .form-control {
    width: 50%;
}


.radio-button-container {
    width: 100%;
    display: inline-flex;
}

.radio-button-container {
    padding: 10px 22px 10px 16px;
    display: inline-block;
    cursor: pointer;
}

.radio-button-container:hover {
    background: #dcdee9;
    border-radius: 4px;
}

div#svg_wrap {
    display: none;
}

.life-result-form .font-ar {
    font-size: 18px;
    font-weight: 600;
}

.life-result-form .flex.font-ar {
    font-weight: 500;
}



.table.quote.life tr td, .table.quote.life tr th {
    font-size: 16px;
}


.calendar-time select {
    width: 80px !important;
}

.booking-modal .modal-header {
    background: var(--ibp-primary-color);
}

.booking-modal .modal-title {
    font-size: 18px;
}

.booking-modal .modal-body {
    color: black;
    padding: 30px 40px;
    text-align: left;
}

.booking-modal .form-group {
    text-align: left
}

.booking-modal .row {
    padding: 14px 0;
}


/* -- Life Insurance */


/* -- Term Life -- */
.term-box {
    min-height: 350px;
}

/* -- Term Life -- */


/* -- Individual Health Plan -- */
.form-home {
    background: #f9faff;
    padding: 30px 40px;
    border: solid 1px #dbdbdb;
}

    .form-home .form-group {
        padding: 0;
        margin: 18px 0 0;
    }

.dt-buttons button {
    background: #687798;
    color: #fff;
    width: 60px;
    padding: 8px 0;
    border-radius: 13px;
}

    .dt-buttons button:hover {
        color: #fff !important
    }

    .dt-buttons button.disabled {
        display: inline-block;
        opacity: 0.2
    }

.tablebox {
    padding-top: 12px;
}

.bgaddmember {
    background: var(--ibp-primary-color);
    color: #a0a4a5;
    padding: 7px 0;
    border-radius: 2px;
}

.DTE_Header {
    background: var(--ibp-primary-color) !important;
    color: #fff !important;
    padding: 6px 19px !important;
    height: 40px !important;
    font-size: 18px !important;
}

.DTE_Field {
    width: 48% !important;
    padding: 0 !important;
    display: inline-block;
    padding-left: 10px !important;
}

.DTED_Lightbox_Close {
    top: 2px !important;
}

    .DTED_Lightbox_Close::after {
        font-size: 28px !important;
        color: #fff !important;
    }

.DTE_Form_Buttons .btn {
    color: #fff !important;
    padding: 8px 30px;
    border-radius: 100px !important;
    min-width: 180px;
    background: var(--ibp-primary-color) !important;
    border: solid 1px var(--ibp-primary-color) !important;
}

.DTE_Form_Buttons {
    text-align: center !important;
    display: inline-block;
}

.DTE_Footer {
    display: inline-block !important;
    text-align: center;
    padding: 7px 0 8px !important;
    background: none !important;
}

.DTE_Form_Info {
    padding: 0 !important;
    font-size: 20px !important;
}

/* -- Individual Health Plan End -- */



/* -- Login Page -- */
.login .left {
    background-image: url('../images/ib7_standard_background_transparent.png');
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}

.login .head {
    padding-top: 0;
    padding-bottom: 0
}

.login .right {
    justify-content: center;
    align-items: center;
    text-align: left;
    padding: 30px 40px;
}

/* -- Dashboard -- */
.primary-nav .nav-menu:first-of-type {
    margin-top: 0;
}

aside.page-sidebar {
    background: var(--ibp-primary-color);
    z-index: 1100 !important;
}

.nav-footer.shadow-top {
    background: none;
}

.nav-menu li a > [class*='fa-'], .nav-menu li a > .ni {
    color: #9e97b7;
}

.nav-menu li a {
    font-size: 18px;
}


.nav-link {
    display: block;
    padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
    font-size: var(--bs-nav-link-font-size);
    font-weight: var(--bs-nav-link-font-weight);
    color: #63676c !important;
    text-decoration: none;
    background: 0 0;
    border: 0;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out;
}

.nav-link:focus, .nav-link:hover {
    color: var(--ib-primary-color);
}
.page-header.dashboard {
    background: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    height: auto;
}

/*.page-content-wrapper {*/
   /* background: #fff;*/
    /*border-top: solid 1px #48546e;
}*/

a.btn.btn-outline-primary.btn-xs.btn-icon.waves-effect.waves-themed {
    width: 40px;
}

/* card */

.card-group.justify-content-center.row {
    box-shadow: none;
}

.card-deck {
    padding: 0 !important;
}

    .card-deck .card {
        box-shadow: none;
        border: solid 1px var(--ibp-primary-color) !important;
        border-radius: 6px;
        overflow: hidden;
    }



    .card .card-body::-webkit-scrollbar {
        width: 6px;
    }

    .card .card-body::-webkit-scrollbar-track {
        background: #d8d8d8;
    }

    .card .card-body:hover::-webkit-scrollbar-track {
        opacity: 1;
    }

    .card .card-body::-webkit-scrollbar-thumb {
        background-color: var(--ibp-secondary-color);
        outline: 1px solid slategrey;
    }

i.fal.position-absolute.pos-right.pos-bottom {
    top: 10px;
    opacity: .1;
    right: 6px;
}

.card-title.box h3 {
    display: inline-block;
    width: 40px;
    height: 40px;
    border-radius: 100px;
    margin: 22px 18px 0 !important;
    padding: 4px;
    text-align: center;
    font-size: 24px;
}

.card-title.box {
    height: 76px;
}

.card-footer h5 {
    font-size: 18px;
    font-weight: 600;
    text-shadow: none;
    color: var(--ibp-primary-color);
}

.card-title.full {
    background: var(--ibp-primary-color);
}

    .card-title.full a h6 {
        color: #fff;
    }


.card-title-small {
    text-align: center;
    padding: 10px 0 0;
}

    .card-title-small a {
        padding: 8px 23px;
        border-radius: 20px;
    }

        .card-title-small a:hover {
            color: #fff;
            background: #c73f59;
        }

.card-deck.fourbox .card h2 {
    font-size: 40px;
    color: var(--ibp-primary-color) !important;
}

.card-deck.fourbox .card:hover {
    background: var(--ibp-primary-color);
    color: #fff !important;
}

    .card-deck.fourbox .card:hover h2 {
        color: #fff !important
    }

.accordion .card .card-header .card-title {
    color: #000;
}

table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child::before, table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child::before, table.dataTable.dtr-column > tbody > tr > td.control::before, table.dataTable.dtr-column > tbody > tr > th.control::before {
    background: var(--ibp-primary-color);
}

.btn-outline-primary {
    color: var(--ibp-primary-color) !important;
    border-color: var(--ibp-primary-color) !important;
}

    .btn-outline-primary:hover {
        color: #fff;
        background-color: var(--ibp-primary-hover);
        border-color: var(--ibp-primary-color);
    }

td.dataTables_empty {
    color: var(--ibp-primary-color);
    font-size: 20px;
}

.page-item.active .page-link {
    background-color: var(--ibp-primary-color) !important;
    border-color: var(--ibp-primary-color) !important;
}

.pagination .page-link:hover {
    background-color: var(--ibp-primary-color) !important;
    color: #fff;
}

a.page-link {
    color: #000;
}

.mod-nav-link:not(.nav-function-top, .nav-function-minify, .mod-hide-nav-icons) ul.nav-menu:not(.nav-menu-compact) > li > ul > li a::after {
    background-color: var(--ibp-primary-color);
    border: none;
}

.boxes.inner .single-box {
    padding: 16px 0 !important;
    min-height: 300px;
}

.survey-title-table.table-reset p {
    text-align: center;
    font-size: 20px;
    padding-top: 50px;
}


/* -- Dashboard End -- */




/* -- Contact us -- */
.contact .zero {
    opacity: 0;
}

.contact .fa {
    width: 14px;
    text-align: center;
}

.contactform {
    padding: 0 30px 0 0;
}

.contactright {
    border: solid 1px #e3e4eb;
    background: #f9faff;
    border-radius: 8px;
    padding: 0 26px 20px;
}

.contactform .form-group {
    margin: 0 0 12px;
}

.container.center.page-intro h6.c-red.text-end {
    text-align: center !important;
}

section#driverhistory .form-check-input {
    width: 24px;
    height: 24px;
    margin-top: -3px;
}

    section#driverhistory .form-check-input[type="checkbox"] {
        margin-right: 12px;
    }


/* -- About us -- */

/* ---- */




@media screen and (max-width: 480px) {
    html {
        width: 100% !important;
        overflow-x: hidden;
    }

    body {
        overflow-y: scroll !important;
    }

    ul .dropdown-topbar {
        padding: 0 10px !important;
        margin: 3px 44px 6px;
        float: right;
    }

    .btntopbox .btn {
        margin: 0 0 0 6%;
    }

    ul.language {
        padding: 0 0 0 6px;
    }

    .btntopbox {
        text-align: right !important;
        padding: 8px 20px 8px 0 !important;
    }

    .question-fieldset {
        padding: 20px 20px;
    }

    .dropdown-topbar li a {
        font-size: 14px;
    }

    .topbar .number span {
        font-size: 14px;
    }

    .topbar .number {
        text-align: center
    }

    .btn.sm {
        padding: 0 0 !important;
    }

    .mega-content h3 {
        text-align: center;
        padding: 0 41px 20px;
    }

    .mega-content .row {
        overflow: hidden !important;
        padding: 0 14px;
    }

    .box.left {
        padding: 20px;
        text-align: center;
    }

        .box.left h1 {
            font-size: 42px;
        }

        .box.left h2 {
            font-size: 22px;
        }

    .box.right img {
        height: 300px !important;
    }

    .slider {
        width: 68%;
    }

    section.multiple-items.slider {
        width: 100%
    }

    section.center.slider {
        width: 96%;
    }

    .slick-next {
        right: 14px !important;
    }

    .slick-prev {
        left: 5px !important;
        z-index: 88;
    }

    a.fb.btn, a.google.btn {
        width: 150px;
        margin: 4px 0;
        font-size: 14px;
        padding: 11px 2px;
    }

    .hidden-xs {
        display: none
    }

    .testimonials .box {
        padding: 24px 20px 20px;
        background: #fff;
        text-align: center;
    }


    footer {
        text-align: center;
    }

    .row.menubar {
        padding: 10px 0;
    }

    li.nav-item {
        margin: 0 10px;
    }

        li.nav-item.active, li.nav-item:hover {
            border: none !important;
        }

    .mega-content {
        padding: 0 6px !important;
    }

        .mega-content .py-4 {
            padding: 10px 0 !important;
        }

    .dropdown-menu.shadow.show {
        box-shadow: none !important;
    }

    .dropdown-toggle::after {
        position: absolute;
        top: 24px;
        right: 10px;
    }

    li.nav-item::before {
        display: none;
    }

    .modal .tab-pane {
        padding: 30px 10px 0px !important;
    }


    .process .head h2 {
        font-size: 24px;
    }

    .process .steps {
        padding: 0 20px;
    }

    .process .step-tiles {
        text-align: center;
    }

        .process .step-tiles li img {
            display: none;
        }

        .process .step-tiles li {
            margin: 3px 2px;
            width: 170px;
            padding: 12px 13px;
            background: none;
            border-radius: 0;
            font-size: 14px;
            border-bottom: solid 4px transparent;
        }

        .process .step-tiles.life li {
            width: auto;
            padding: 0 5px;
            margin: 0 6px;
            border-bottom: solid 4px transparent;
        }



        .process .step-tiles li .fa-check {
            padding: 3px;
            font-size: 10px;
            display: none !important;
        }

    .form-grid {
        margin: 0 0 !important;
    }

    .btn.md {
        padding: 6px 20px 8px;
        min-width: 150px;
    }

    .btn-box {
        text-align: center;
    }


  

    .container.questions.form-standard {
        padding: 0;
    }

    .process .step-tiles li:after {
        content: '>';
        margin-left: 10px;
        position: absolute;
    }

    .process .step-tiles li:nth-last-child(1)::after {
        display: none;
    }

    .process .step-tiles li.active {
        background: none;
        border-bottom: solid 2px var(--ibp-primary-color);
        color: var(--ibp-primary-color);
    }


    .mega-content .list-group-item {
        border: none;
        border-bottom: 1px solid rgba(0,0,0,.125);
    }

    .hidden-sm.hidden-md.hidden-lg {
        display: revert
    }

    .btntopbox .btn.sm.btn-secondary {
        float: left;
    }


    .ref-link {
        margin: 0 20px;
    }

    .cardetails-form {
        display: flex;
        margin: 0 20px;
    }

        .quote-form h5, .cardetails-form h5 {
            font-size: 15px;
        }

    .container.center.page-intro.quote-form {
        padding: 0 30px;
    }

    .section.section-padding-sm.life-result-form {
        padding: 0 0 !important;
    }

    .table-box.grid table tr td {
        display: block;
        border: none;
        padding: 10px 32px;
    }

        .table-box.grid table tr td button#request-callback-btn {
            margin: auto;
            display: block;
        }


        .table-box.grid table tr td br {
            display: none;
        }

    .options-box {
        padding: 0 21px !important;
    }

    .table-box {
        padding: 0 10px !important;
    }

    .quote-form h5.tag {
        padding: 0px 0px 10px;
    }

    .btn-table tbody td {
        padding: 20px 0 !important;
    }

    .option-table-top .leftbox {
        width: 81%;
    }

    ul.benefits li {
        font-size: 11px;
    }

    ul.benefits {
        padding: 0 20px 0 14px;
    }

    .table.quote tbody {
        border: solid 2px #d8d8d8;
    }

    .table.quote.life .btn.md {
        padding: 5px 15px 6px;
        min-width: 160px;
        font-size: 15px;
        margin: auto;
    }

    label.radio-button-label.no-touch.touch-sensitive.clearfix {
        width: 90%;
        margin-left: 8px;
        margin-top: -5px;
    }

    .radio-button-container {
        width: 100%;
        display: inline-flex;
    }

    .question-fieldset .form-control {
        width: 100%;
    }

    .question-fieldset input.form-check-input.checkbox-button-display {
        width: 84px !important;
    }

    .booking-modal .modal-body {
        padding: 10px 20px;
    }

    .product {
        min-height: auto;
        padding-bottom: 32px;
        margin-bottom: 4px;
        padding-top: 26px;
    }

        .product p {
            font-size: 16px;
        }

        .product h4 {
            font-size: 24px;
        }

    .pro-icons img {
        margin: auto;
        width: 30%;
    }

    .col-icon-cntr-claim {
        height: 160px;
        padding: 16px 10px;
        margin-bottom: 6px;
    }

    .table.quote.life tr td, .table.quote.life tr th {
        width: 50%;
    }

    .process.head .row {
        padding: 20px 20px 0;
    }

    .form-home {
        padding: 20px 20px;
    }

    .dt-buttons {
        padding: 18px 0px 0 !important;
    }

    .DTED_Lightbox_Close {
        padding-right: 10px;
    }

    .no-bg tr th {
        background: none !important;
        color: #8591ab !important;
    }

    .no-bg thead {
        background: none !important;
    }

    .table.quote thead tr {
        border: solid 2px #d8d8d8;
        border-top: none;
    }

    .dashboard .row.menubar {
        display: none;
    }

    .header-btn[data-class='mobile-nav-on'] {
        background: var(--ibp-primary-color);
        border: none;
        margin-left: 8px;
    }

    .card-deck .col-sm-6 {
        padding: 0;
    }

    .product-list {
        display: inline-block;
        width: 100%
    }

        .product-list ul li {
            display: inline;
        }

        .product-list .col.half {
            width: 33%;
            display: inline-block;
            float: left;
        }

        .product-list .col .body {
            padding: 0px 0px 0;
        }

        .product-list .col.half .body {
            padding: 0 0 0;
        }

        .product-list .col.half .head {
            background: #f9faff;
            color: #524e69;
            font-weight: 600;
        }

        .product-list .col.full {
            clear: both;
            margin-top: 200px;
        }

            .product-list .col.full .head {
                background: #f9faff;
                color: #524e69;
                font-weight: 600;
            }


        .product-list .benefit li {
            display: block;
            margin: 0 0 0 0;
            text-align: center;
            font-size: 14px;
        }

        .product-list.left.hidden-xs {
            display: none;
        }

        .product-list.left.hidden-md.hidden-lg {
            display: inline-block !important;
        }



        .product-list .col.full.termlife {
            margin-top: 300px;
        }

        .product-list.left {
            margin-top: -224px;
            display: block;
            margin-bottom: 124px;
        }

            .product-list.left.termlife {
                margin-top: -312px;
            }

            .product-list.left .col {
                text-align: left;
                padding: 0 10px;
            }

    .table-box.grid table tr td.hidden-xs {
        display: none;
    }



    .contactform {
        padding: 0 0 0;
    }

    .contactform-outer {
        padding: 0 20px;
    }

    .contactright {
        margin-top: 30px;
    }

    .login .left {
        padding: 20px 0 30px;
    }

    .login .right {
        padding: 18px 0;
    }

    #multiscroll-nav ul {
        display: none;
    }

    .product-list.benefit {
        border-radius: 0 !important;
    }

        .product-list.benefit.included {
            margin-top: -117px;
            margin-bottom: 100px;
            display: block;
        }

        .product-list.benefit .col {
            width: 49% !important;
            display: inline-block;
        }

    .productlistouter {
        height: 570px;
    }

    .dropdown-toggle .img-user {
        width: 37px;
        margin: 0px 16px 0 0;
    }

    .dropdown-toggle.user::after {
        top: 15px;
    }

    section#driverhistory .body {
        text-align: center;
    }
}

@media screen and (min-width: 480px) and (max-width: 768px) {
    html {
        width: 100% !important;
        overflow-x: hidden;
    }

    body {
        overflow-y: scroll !important;
    }

    .process .step-tiles {
        text-align: center;
    }

        .process .step-tiles li img {
            display: none;
        }

        .process .step-tiles li {
            margin: 0 0;
            width: auto;
            padding: 0 8px 6px;
            background: #fff;
            border-radius: 0;
            font-size: 16px;
        }

            .process .step-tiles li:after {
                content: '>';
                margin-left: 4px;
            }

            .process .step-tiles li:nth-last-child(1)::after {
                display: none;
            }

            .process .step-tiles li.active {
                background: none;
                border-bottom: solid 2px var(--ibp-secondary-color);
                color : var(--ibp-primary-color) !important;
            }

            .process .step-tiles li .fa-check {
                font-size: 8px;
            }

    .mega-content .list-group-item {
        border: none;
        border-bottom: 1px solid rgba(0,0,0,.125);
    }

    .btntopbox {
        text-align: right !important;
        padding: 8px 20px 8px 20px !important;
    }

    .hidden-sm.hidden-md.hidden-lg {
        display: revert;
    }

    .btntopbox .btn.sm.btn-secondary {
        float: left;
    }

    .hidden-xs {
        display: none;
    }

    .topbar .number {
        padding: 4px 24px 0;
    }


    .cardetails-form {
        display: flex;
    }

        .quote-form h5, .cardetails-form h5 {
            font-size: 15px;
        }

    .container.center.page-intro.quote-form {
        padding: 0 30px;
    }

    .section.section-padding-sm.life-result-form {
        padding: 0 0 !important;
    }

    .table-box.grid table tr td {
        display: block;
        border: none;
        padding: 10px 32px;
    }

        .table-box.grid table tr td button#request-callback-btn {
            margin: auto;
            display: block;
        }

        .table-box.grid table tr td br {
            display: none;
        }

    .options-box {
        padding: 0 21px !important;
    }

    .table-box {
        padding: 0 10px !important;
    }

    .quote-form h5.tag {
        padding: 0px 0px 10px;
    }

  
    .process .step-tiles.life li {
        width: auto;
        padding: 0 5px;
    }

    ul.benefits li {
        font-size: 14px;
    }

    ul.benefits {
        padding: 0 20px 0 14px;
    }

    .table.quote tbody {
        border: solid 2px #d8d8d8;
    }

    .table.quote.life .btn.md {
        padding: 5px 15px 6px;
        min-width: 150px;
        font-size: 16px;
        margin: auto;
    }

    label.radio-button-label.no-touch.touch-sensitive.clearfix {
        width: 90%;
        margin-left: 8px;
        margin-top: -5px;
    }

    .radio-button-container {
        width: 100%;
        display: inline-flex;
    }

    .question-fieldset .form-control {
        width: 100%;
    }

    .question-fieldset input.form-check-input.checkbox-button-display {
        width: 84px !important;
    }


    /* fieldset */

   


    .booking-modal .modal-body {
        padding: 10px 20px;
    }

    .product {
        height: auto;
        padding-bottom: 32px;
        margin-bottom: 4px;
        padding-top: 0;
    }

        .product p {
            font-size: 16px;
        }

        .product h4 {
            font-size: 24px;
        }

    .pro-icons img {
        margin: auto;
        width: 50%;
    }

    .col-icon-cntr-claim {
        height: 160px;
        padding: 16px 10px;
        margin-bottom: 6px;
    }

    .process.head .row {
        padding: 20px 20px 0;
    }

    .form-home {
        padding: 20px 20px;
    }

    .dt-buttons {
        padding: 18px 0px 0 !important;
    }

    .DTED_Lightbox_Close {
        padding-right: 10px;
    }

    .no-bg tr th {
        background: none !important;
        color: #8591ab !important;
    }

    .no-bg thead {
        background: none !important;
    }

    .table.quote thead tr {
        border: solid 2px #d8d8d8;
        border-top: none;
    }

    .dashboard .row.menubar {
        display: none;
    }

    .header-btn[data-class='mobile-nav-on'] {
        background: var(--ibp-primary-color);
        border: none;
        margin-left: 8px;
    }

    .card-deck .col-sm-6 {
        padding: 0;
    }

    .product-list {
        display: inline-block;
        width: 100%
    }

        .product-list ul li {
            display: inline;
        }

        .product-list .col.half {
            width: 33%;
            display: inline-block;
            float: left;
        }

        .product-list .col .body {
            padding: 0px 0px 0;
        }

        .product-list .col.half .body {
            padding: 0 0 0;
        }

        .product-list .col.half .head {
            background: #f9faff;
            color: #524e69;
            font-weight: 600;
        }

        .product-list .col.full {
            clear: both;
        }

            .product-list .col.full .head {
                background: #f9faff;
                color: #524e69;
                font-weight: 500;
            }

        .product-list .benefit li {
            display: block;
            margin: 0 0 0 0;
            text-align: center;
            font-size: 14px;
        }

        .product-list.left.hidden-xs {
            display: none;
        }

        .product-list.left.hidden-md.hidden-lg {
            display: inline-block !important;
        }

        .product-list.left .col {
            text-align: left;
            padding: 0 10px;
        }

    .table-box.grid table tr td.hidden-xs {
        display: none;
    }



    .contactform {
        padding: 0 0 0;
    }

    .contactform-outer {
        padding: 0 20px;
    }

    .contactright {
        margin-top: 30px;
    }

    #multiscroll-nav ul {
        display: none;
    }

    .dropdown-toggle .img-user {
        width: 37px;
        margin: -3px 16px 0 0;
    }

    .dropdown-toggle.user::after {
        top: 15px;
    }

    section#driverhistory .body {
        text-align: center;
    }
}


@media screen and (min-width: 768px) and (max-width: 1024px) {
    .mega-content .list-group-item {
        border: none;
        border-bottom: 1px solid rgba(0,0,0,.125);
    }

    .box.left {
        padding: 20px;
        text-align: center;
    }

        .box.left h1 {
            font-size: 42px;
        }

        .box.left h2 {
            font-size: 22px;
        }

    .box.right img {
        height: 300px !important;
    }

    .slider {
        width: 68%;
    }

    footer {
        text-align: center;
    }

    .row.menubar {
        padding: 10px 0;
    }

    li.nav-item {
        margin: 0 10px;
    }

        li.nav-item.active, li.nav-item:hover {
            border: none !important;
        }

    .mega-content {
        padding: 0 6px !important;
    }

        .mega-content .py-4 {
            padding: 10px 0 !important;
        }

    .dropdown-menu.shadow.show {
        box-shadow: none !important;
    }

    .dropdown-toggle::after {
        position: absolute;
        top: 24px;
        right: 10px;
        border-top: 0.4em solid !important;
        border-right: 0.4em solid transparent !important;
        border-bottom: 0 !important;
        border-left: 0.4em solid transparent !important;
    }

    li.nav-item::before {
        display: none;
    }

    .modal .tab-pane {
        padding: 30px 10px 0px !important;
    }



    .process .step-tiles li {
        margin: 0 4px;
        width: 18.7%;
        padding: 14px 18px;
    }

        .process .step-tiles li .fa-check {
            font-size: 10px;
            display: none;
        }

        .process .step-tiles li.active .fa-check {
            display: inline-block;
        }

   

    .process .step-tiles.life li {
        width: 22.8%;
    }
}

/* assessment result grid */
.assessment-container {
    margin: 10px;
    justify-content: center;
    align-items: center;
    position: relative;
}

.assessment-grid {
    display: grid;
    gap: 10px;
}

.assessment-item {
    display: flex;
    align-items: center;
    padding: 5px;
}

.assessment-label {
    font-weight: bold;
    margin-right: 10px;
}

.btn-download-assesment {
    position: absolute;
    bottom: 10px;
    right: 10px;
    background-color: forestgreen !important;
    border-color: forestgreen !important;
}

    .btn-download-assesment:hover {
        background-color: green !important;
        border-color: green !important;
    }

.validation-summary-errors {
    padding: 10px;
    color: var(--bs-danger) !important;
}
/* assessment result grid end here */
/* ===========================
   External theme CSS Customizations
   =========================== */
.sw > .nav .nav-link > .num {
    display: flex;
    justify-content: center;
    align-items: center;
    float: left;
    pointer-events: none;
    height: 100%;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    border-radius: 10em;
    text-align: center;
    font-size: 2em;
    font-weight: 300 !important;
    clear: both;
    line-height: 1;
    text-decoration: none;
}

.overlay {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 999999;
    background: rgba(255,255,255,0.3) url("/Content/assets/images/loading-image.svg") center no-repeat;
    background-size: 70px 70px;
}

body.loading {
    overflow: hidden;
}

    body.loading .overlay {
        display: block;
    }




/* Buttons and UI elements - Light Theme */
.btn-primary {
    color: #fff !important;
    background: var(--ibp-primary-color) !important;
    border: solid 1px var(--ibp-primary-color) !important;
}

    .btn-primary:hover {
        background: var(--ibp-primary-hover) !important;
        border: solid 1px var(--ibp-primary-color) !important;
    }

    .btn-primary:focus {
        outline: none !important;
        border: none !important;
        box-shadow: none !important;
    }

.btn-secondary {
    background: var(--ibp-secondary-color) !important;
    border: solid 1px var(--ibp-secondary-color) !important;
}


    .btn-secondary:hover {
        background: var(--ibp-primary-hover) !important;
        border: solid 1px var(--ibp-primary-hover) !important;
    }

.bg-primary, .boxes .single-box:hover, .dt-buttons button.buttons-create, td.today.active, .box .line {
    background: var(--ibp-primary-color) !important;
    background-color: var(--ibp-primary-color) !important;
}

.bg-secondary {
    background: var(--ibp-secondary-color) !important;
}

.staric, .percent, .off, .amount, .howitworks .fa, .c-red, .c-primary, .modal .modal-header .modal-title, .breadcrumb > li > a, .nav-menu li.active:not(.open) > a:before {
    color: var(--ibp-primary-color) !important;
}


.modal-header .btn-close, .modal .red {
    color: var(--ibp-primary-hover);
}

.modal .nav-link.active, .modal .nav-link:hover {
    background: var(--ibp-primary-color) !important;
}

.dt-buttons button.buttons-create:hover, .modal .nav-tabs {
    background: var(--ibp-primary-hover);
}

.ibancs-portal-theme li.nav-item:hover {
    border-color: var(--ibp-primary-color) !important;
}

.card-title-small a, .card-title.box h3 {
    color: #fff;
    background: var(--ibp-primary-color) !important;
}

.product-list .col .head {
    background: var(--ibp-primary-color) !important;
    color: #fff;
}

.topbar {
    background: var(--ibp-secondary-color) !important;
    /*  color: #fff;*/
}

.sw-theme-square > .nav .nav-link.active {
    color: var(--ibp-primary-color) !important;
    cursor: pointer;
}





/* =============================== */
/* Dark Theme */
/* =============================== */

body.dark-theme {
    /* Dark mode base colors */
    --background-color: #121212;
    --surface-color: #1E1E1E;
    --text-color: #E0E0E0;
    --text-secondary-color: #B0B0B0;
    --primary-color: #004a99; /* Muted blue for accessibility another option is #269dff*/
    --btn-primary-hover-color: #64B5F6;
    --secondary-color: #202930; /* Muted green */
    --btn-secondary-hover-color: #66BB6A;
    --error-color: #EF5350; /* Muted red */
    --border-color: #333333;
    /* Override portal colors */
    --ibp-primary-color: var(--primary-color);
    --ibp-primary-hover: var(--btn-primary-hover-color);
    --ibp-secondary-color: var(--secondary-color);
    --ibp-btn-secondary-hover-color: var(--btn-secondary-hover-color);
    /* Bootstrap colors override */
    --bs-body-bg: var(--background-color);
    --bs-body-color: var(--text-color);
    --bs-body-color-rgb: 224, 224, 224;
    --bs-primary: var(--primary-color);
    --bs-secondary: var(--secondary-color);
    --bs-emphasis-color: var(--text-color);
    --bs-primary-rgb: 144, 202, 249;
    --bs-secondary-rgb: 129, 199, 132;
    --bs-gray-100: #2c2c2c;
    --bs-gray-200: #3a3a3a;
    --bs-gray-300: #454545;
    --bs-gray-400: #505050;
    --bs-gray-500: #616161;
    --bs-gray-600: #757575;
    --bs-gray-700: #9e9e9e;
    --bs-gray-800: #bdbdbd;
    --bs-gray-900: #e0e0e0;
    --bs-border-color: var(--border-color);
    --bs-light: #2c2c2c;
    --bs-dark: var(--text-color);
    --bs-link-color: var(--primary-color);
    --bs-link-hover-color: #82b1ff;
    --bs-success: #81c784;
    --bs-warning: #ffb74d;
    --bs-danger: var(--error-color);
    --bs-form-valid-color: #66bb6a;
    --bs-form-valid-border-color: #66bb6a;
    --bs-form-invalid-color: var(--error-color);
    --bs-form-invalid-border-color: var(--error-color);
}

/* Apply dark theme colors */
body.dark-theme {
background-color: var(--background-color);
color: var(--text-color);
}

    body.dark-theme .bg-primary,
    body.dark-theme .btn-primary,
    body.dark-theme .topbar,
    body.dark-theme .card-title-small a,
    body.dark-theme .card-title.box h3,
    body.dark-theme .product-list .col .head {
        background-color: var(--ibp-primary-color) !important;
        color: var(--text-color);
    }

        body.dark-theme .btn-primary:hover {
            background-color: var(--ibp-primary-hover) !important;
        }

    body.dark-theme .btn-secondary {
        background-color: var(--ibp-secondary-color) !important;
        border-color: var(--ibp-secondary-color) !important;
        color: var(--text-color);
    }

        body.dark-theme .btn-secondary:hover {
            background-color: var(--ibp-btn-secondary-hover-color) !important;
            border-color: var(--ibp-secondary-color) !important;
        }

    body.dark-theme .modal-header .btn-close,
    body.dark-theme .modal .red {
        color: var(--ibp-primary-hover);
    }

    body.dark-theme .modal .nav-link.active,
    body.dark-theme .modal .nav-link:hover {
        background-color: var(--ibp-primary-hover) !important;
    }

    body.dark-theme .dt-buttons button.buttons-create:hover,
    body.dark-theme .modal .nav-tabs {
        background-color: var(--ibp-primary-hover);
    }

    body.dark-theme .ibancs-portal-theme li.nav-item:hover {
        border-color: var(--ibp-primary-color) !important;
    }

    body.dark-theme .staric,
    body.dark-theme .percent,
    body.dark-theme .off,
    body.dark-theme .amount,
    body.dark-theme .howitworks .fa,
    body.dark-theme .c-red,
    body.dark-theme .c-primary,
    body.dark-theme .modal .modal-header .modal-title,
    body.dark-theme .breadcrumb > li > a,
    body.dark-theme .nav-menu li.active:not(.open) > a:before {
        color: var(--ibp-primary-color) !important;
    }

    body.dark-theme .sw-theme-square > .nav .nav-link.active {
        color: var(--ibp-primary-color) !important;
        cursor: pointer;
    }

body.dark-theme .odd .sorting_1 {
    background-color: var(--ibp-tertiary-color);
}

body.dark-theme .panel {
    display: flex;
    flex-direction: column;
    position: relative;
    background-color: var(--background-color);
    box-shadow: 0px 0px 13px 0px rgba(darken($primary-800, 15%), (8/100));
    margin-bottom: $grid-gutter-width;
    border-radius: $border-radius;
 /*   experimental ... border: 1px solid rgba(0, 0, 0, 0.09);*/
    border-bottom: 1px solid #e0e0e0;
    border-radius: $panel-edge-radius;
    transition: border 500ms ease-out;
}

    /*body.dark-theme .btn-next {
        background-color: var(--ibp-primary-color) !important;
        border-color: var(--ibp-primary-color) !important;
        color: var(--text-color);
    }

        body.dark-theme .btn-next:hover {
            background-color: var(--ibp-primary-hover) !important;
            border-color: var(--ibp-primary-color) !important;
        }

        body.dark-theme .btn-next:focus {
            outline: none !important;
            border: none !important;
            box-shadow: none !important;
        }

    body.dark-theme .btn-prev {
        background-color: var(--ibp-secondary-color) !important;
        border-color: var(--ibp-secondary-color) !important;
        color: var(--text-color);
    }

        body.dark-theme .btn-prev:hover {
            background-color: var(--ibp-btn-secondary-hover-color) !important;
            border-color: var(--ibp-secondary-color) !important;
        }*/

/* Borders and general styling */
body.dark-theme {
    border-color: var(--border-color);
}



fieldset {
    border: 1px solid var(--ibp-primary-color);
    border-radius: .25rem;
    padding: 1.5rem 1rem 1rem; /* extra top padding so content clears the legend */
    margin: 1rem 0;
    position: relative;
}

legend {
    font-size: 1rem;
    font-weight: 600;
    color: var(--info);
    padding: 0 .5rem;
    margin-left: .5rem;
    background: #fff; /* same as page background */
    display: inline-block; /* shrink to content */
    margin-top: -0.8rem; /* pull upward into the border */
}


