* {
    margin: 0;
    padding: 0;
}

html {
    height: 100%
}

.color_red {
    color: #0e3594;
}
.bg_red {
    background-color: #0e3594;
}
.color_blue {
    color: #0e3594;
}
.bg_blue {
    background-color: #0e3594;
}
.is-invalid,
label.parent-is-invalid,
select.is-invalid ~ .select2-container--bootstrap4 .select2-selection {
    border-color: red !important;
}
.error {
    color: red;
}
.row-title {
    margin-top: 10px;
    margin-bottom: 10px;
}
.form-card {
    text-align: left
}
.select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered,
.select2-dropdown,
.select2-search--dropdown .select2-search__field {
    color: #2C3E50;
    background-color: #ECEFF1;
}

#form_tarif_auto {
    text-align: center;
    position: relative;
    margin-top: 20px
}
#form_tarif_auto fieldset {
    background: white;
    border: 0 none;
    border-radius: 0.5rem;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding-bottom: 20px;
    position: relative
}
#form_tarif_auto fieldset:not(:first-of-type) {
    display: none
}
#form_tarif_auto select,
#form_tarif_auto input,
#form_tarif_auto textarea {
    padding: 8px 15px 8px 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    /*margin-bottom: 25px;*/
    margin-top: 2px;
    width: 100%;
    box-sizing: border-box;
    color: #2C3E50;
    background-color: #ECEFF1;
    font-size: 16px;
    letter-spacing: 1px;
}
#form_tarif_auto input[type=text], #form_tarif_auto input[type=file], #form_tarif_auto input[type=tel], #form_tarif_auto input[type=date] {
    height: 44px;
}
#form_tarif_auto select:focus,
#form_tarif_auto input:focus,
#form_tarif_auto textarea:focus {
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: 1px solid #0e3594;
    outline-width: 0
}
#form_tarif_auto .action-button {
    width: 100px;
    background: #0e3594;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 5px;
    cursor: pointer;
    padding: 5px 5px;
    margin: 20px 5px 10px 0;
    float: right
}
#form_tarif_auto .action-button:hover,
#form_tarif_auto .action-button:focus {
    background-color: #182983
}
#form_tarif_auto .action-button-previous {
    width: 100px;
    background: #fff;
    font-weight: bold;
    color: #0e3594;
    cursor: pointer;
    padding: 5px 5px;
    margin: 20px 5px 10px 0;
    border: 1px solid #0e3594;
    border-radius: 5px;
    float: right;
}
#form_tarif_auto .action-button-more-garanty {
    width: 150px;
    background: #fff;
    font-weight: bold;
    color: #0e3594;
    cursor: pointer;
    padding: 5px 5px;
    margin: 20px 5px 10px 0;
    border: 1px solid #0e3594;
    border-radius: 5px;
    float: right;
}
#form_tarif_auto .action-button-previous:hover,
#form_tarif_auto .action-button-previous:focus {
    border: 1px solid #000000;
}

.card {
    z-index: 0;
    border: none;
    position: relative
}
.fs-title {
    font-size: 25px;
    color: #0e3594;
    margin-bottom: 15px;
    font-weight: normal;
    text-align: left;
    flex-basis: 100%;
}
.info-assure-title {
    padding: 0 0 0 14px;
}
.purple-text {
    color: #0e3594;
    font-weight: normal
}
.steps {
    font-size: 25px;
    color: gray;
    margin-bottom: 10px;
    font-weight: normal;
    text-align: right
}
.fieldlabels {
    color: gray;
    text-align: left
}
#progressbar {
    margin-bottom: 10px;
    overflow: hidden;
    color: lightgrey
}

.etoile {
    color: red
}

#progressbar .active {
    color: #0e3594
}
#progressbar li {
    list-style-type: none;
    font-size: 15px;
    width: 33%;
    float: left;
    position: relative;
    font-weight: 400
}
#progressbar #vehicule:before {
    content: url('https://api.iconify.design/ion/car-sport-outline.svg?color=white&width=32&height=32');
    padding: 8px 0;
}
#progressbar #garantie:before {
    content: url('https://api.iconify.design/clarity/grid-chart-outline-badged.svg?color=white&width=32&height=32&rotate=180deg&flip=horizontal');
    padding: 8px 0;
}
#progressbar #prospect:before {
    content: url('https://api.iconify.design/fa/user.svg?color=white&width=32&height=32');
    padding: 8px 0;
}
#progressbar li:before {
    width: 50px;
    height: 50px;
    line-height: 45px;
    display: block;
    font-size: 20px;
    color: #ffffff;
    background: lightgray;
    border-radius: 50%;
    margin: 0 auto 10px auto;
    padding: 2px
}
#progressbar li:after {
    content: '';
    width: 100%;
    height: 2px;
    background: lightgray;
    position: absolute;
    left: 0;
    top: 25px;
    z-index: -1
}
#progressbar li.active:before,
#progressbar li.active:after {
    background: #0e3594
}
.progress {
    height: 20px
}
.progress-bar {
    background-color: #0e3594
}
.fit-image {
    width: 100%;
    object-fit: cover
}

/* Custom radio */

.cradio {
    max-width: 200px !important;
}
.custom-radio {
    height: 45px !important;
    overflow: inherit;
    margin-top: 7px !important;
}
.custom-radio input[type=radio] {
    opacity: 0;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden;
    transform: scale(0.0, 0.0);
}
.custom-radio label {
    display: block;
    color: rgba(29, 29, 31, 0.76);
    width: 50px;
    text-align: center;
    padding: 3px 0;
    margin: 0 !important;
    margin-right: 10px !important;
    border: 2px solid #0e3594;
    cursor: pointer;
    box-shadow: 0 0 1px 0 rgba(88, 87, 93, 0.43);
    transition-duration: 200ms;
    border-radius: 7px;
}
.custom-radio label.yes-no-success:hover {
    background-color: #0e3594;
    color: white;
    transition-duration: 200ms;
}
.custom-radio label.yes-no-danger:hover {
    background-color: #0F2D7B;
    color: white;
    transition-duration: 200ms;
}
.custom-radio.active label.yes-no-success, .custom-radio.active label.yes-no-success:hover {
    background-color: #0e3594;
    color: white;
    transition-duration: 200ms;
    border-radius: 7px;
}
.custom-radio.active label.yes-no-danger, .custom-radio.active label.yes-no-danger:hover {
    background-color: #0F2D7B;
    color: white;
    transition-duration: 200ms;
}

/* Custom radio pack */
.custom-radio-pack{
    position: relative;
    margin: 0 2px!important;
    overflow: inherit;
    width: 240px;
    z-index: 1;
}

.custom-radio-pack input[type=radio] {
    opacity: 0;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden;
    transform: scale(0.0, 0.0);
}
.custom-radio-pack label {
    position: relative;
    display: block;
    color: rgba(29, 29, 31, 0.76);
    width: 100%;
    text-align: center;
    padding: 20px 0;
    font-size: 20px;
    cursor: pointer;
    transition-duration: 200ms;
    border: 1px solid rgba(0, 0, 0, .3);
    z-index: 1;
}

/*.custom-radio-pack label:hover{*/
/*    background-color: #0e3594;*/
/*    color: white;*/
/*    transition-duration: 200ms;*/
/*}*/

.custom-radio-pack label:hover {
    background-color: #0F2D7B;
    color: white;
    transition-duration: 200ms;
}
.custom-radio-pack.active label:hover {
    background-color: #0e3594;
    color: white;
    transition-duration: 200ms;
}
.custom-radio-pack.active label {
    background-color: #0e3594;
    color: white;
    transition-duration: 200ms;
}
.custom-radio-pack.active label:hover {
    background-color: #0F2D7B;
    color: white;
    transition-duration: 200ms;
}
#bloc_pack {
    display: flex;
    margin: 0;
    justify-content: center;
    flex-wrap: wrap !important;
}

/*slider effect*/
.slider-effect-1 {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 72px;
    z-index: -1;
    padding: 20px 0;
    transition-duration: 450ms;
    background-color: #0e3594;
}


/*Custom input radio options garanties */

label.label-radio {
    position: relative;
    margin-bottom: 16px;
    cursor: pointer !important;
    padding-top: 8px;
    width: 80%;
    background-color: #f6f6f6;
    border-radius: 15px;
    transition-duration: 200ms;
}
label.label-radio .image-radio {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    opacity: .2;
}
label.label-radio.active {
    background-color: #fff;
}
label.label-radio.active .image-radio {
    opacity: 1;
}
label.label-radio:hover .image-radio {
    opacity: 1;
}
label.label-radio {
    border: 3px solid #182983;
    transition-duration: 50ms;
}
label.label-radio:hover {
    border: 3px solid black !important;
    transition-duration: 50ms;
}
label.label-radio.active {
    border: 3px solid #182983 !important;
}
label.label-radio input[type=radio] {
    position: absolute;
    z-index: 2;
    right: -60px;
    width: 15px;
    height: 15px;
    top: 0;
    outline: none !important;
    border-radius: 5px !important;
    margin-left: 12px;
}
label.label-radio input[type=radio]:checked {
    background-color: #182983 !important;
    color: #182983 !important;
    border-color: #182983 !important;
}
label.label-radio.active input[type=radio] {
    border: 2px solid #182983 !important;
}
label.label-radio p, label.label-radio span, label.label-radio div {
    font-weight: normal !important;
    font-size: 13px !important;
    line-height: 22px !important;
}

/* Garanties */
.show-garantie {
    display: block;
}
.hide-garantie {
    display: none;
}
.garantie_wrapper .options_garantie_bloc {
    display: none;
}
.garantie_wrapper.options_active .options_garantie_bloc {
    display: flex;
}
#toast-container {
    width: 30% !important;
}
.tarif-value {
    font-size: 18px;
}
.option-description {
    display: none;
    position: absolute;
    background-color: #ffc107;
    color: black;
    border: solid 1px #fff;
    padding: 10px;
    width: 100%;
    z-index: 3;
}
.option-description:before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    margin-left: 0;
    margin-top: -15px;
    border: 1.25rem solid #ffc107;
    transform: rotate(45deg);
    z-index: -1;
}
.garantie-description {
    display: none;
    position: absolute;
    background-color: #ffc107;
    color: black;
    border: solid 1px #fff;
    padding: 10px;
    width: auto;
    height: auto;
    z-index: 3;
}
.garantie-description:before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    margin-left: 0;
    margin-top: -15px;
    border: 1.25rem solid #ffc107;
    transform: rotate(45deg);
    z-index: -1;
}
.select2-container {
    width: 100% !important;
}
.labels-question-bloc {
    text-align: right;
}
form fieldset {
    margin-top: 25px !important;
    border: 0 none;
    border-radius: 3px;
    box-shadow: 0 0 15px 1px rgb(0 0 0 / 40%);
    padding: 20px 20px;
    box-sizing: border-box;
    width: 100%;
    position: relative;
}
.moyen_detail.active {
    display: block;
}
.moyen_detail {
    display: none;
}

body {
    overflow-x: hidden;
}

.carousel-item {
    position: relative;
    display: block;
    height: 100%;
}
.voile-image {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0;
    z-index: 1;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.owl-item {
    height: 400px;
    padding: 0;
    margin-top: 0;
    margin-bottom: 0;
}
.owl-item .heading {
    position: absolute;
    text-transform: inherit;
    font-size: 2.2em !important;
    font-weight: bold;
    color: white;
    z-index: 2;
    transform: scale(0);
    bottom: 45%;
    left: 15%;
    background-color: rgba(0, 0, 0, 0.42);
    padding: 0 5% 1% 5%;
}
.owl-item.active .heading {
    transform: scale(1);
    transition-delay: 200ms;
    transition-duration: 300ms;
}
.voile {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(119, 119, 127, 0.7);
}
.wrapper-block {
    margin: 0;
    padding: 0;
    min-height: 100vh;
    background-color: rgba(255, 255, 255, 0.89);
}
.banner {
    background-color: #003393;
}
.social-icon {
    font-size: 25px;
    color: white;
    background-color: #003393;
    padding: 7px;
}
.bloc-info {
    width: 25%;
    margin-right: 40px;
}
.bloc-simu {
    width: 70%;
}
.bloc-auto {
    margin-left: 7%;
    margin-right: 7%;
    margin-top: 5%;
}
.banner h4 {
    text-align: right;
}
.table-responsive {
    display: inline-table;
}

#form_tarif_iac fieldset:not(:first-of-type) {
    display: none
}
#form_tarif_iac {
    text-align: center;
    position: relative;
    margin-top: 20px
}
#form_tarif_iac fieldset {
    background: white;
    border: 0 none;
    border-radius: 0.5rem;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding-bottom: 20px;
    position: relative
}
#form_tarif_iac select,
#form_tarif_iac input,
#form_tarif_iac textarea {
    padding: 8px 15px 8px 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    /*margin-bottom: 25px;*/
    margin-top: 2px;
    width: 100%;
    box-sizing: border-box;
    color: #2C3E50;
    background-color: #ECEFF1;
    font-size: 16px;
    letter-spacing: 1px
}
#form_tarif_iac select:focus,
#form_tarif_iac input:focus,
#form_tarif_iac textarea:focus {
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: 1px solid #0e3594;
    outline-width: 0
}
#form_tarif_iac .action-button {
    width: 100px;
    background: #0e3594;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 0px;
    cursor: pointer;
    padding: 10px 5px;
    margin: 10px 0px 10px 5px;
    float: right
}
#form_tarif_iac .action-button:hover,
#form_tarif_iac .action-button:focus {
    background-color: #182983
}
#form_tarif_iac .action-button-previous {
    width: 100px;
    background: #616161;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 0px;
    cursor: pointer;
    padding: 10px 5px;
    margin: 10px 5px 10px 0px;
    float: right
}
#form_tarif_iac .action-button-previous:hover,
#form_tarif_iac .action-button-previous:focus {
    background-color: #000000
}
#form_tarif_iac #progressbar li {
    width: 50%;
}

#form_tarif_voyage fieldset:not(:first-of-type) {
    display: none
}
#form_tarif_voyage {
    text-align: center;
    position: relative;
    margin-top: 20px
}
#form_tarif_voyage fieldset {
    background: white;
    border: 0 none;
    border-radius: 0.5rem;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding-bottom: 20px;
    position: relative
}
#form_tarif_voyage select,
#form_tarif_voyage input,
#form_tarif_voyage textarea {
    padding: 8px 15px 8px 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    /*margin-bottom: 25px;*/
    margin-top: 2px;
    width: 100%;
    box-sizing: border-box;
    color: #525252;
    background-color: #ECEFF1;
    font-size: 16px;
    letter-spacing: 1px
}
#form_tarif_voyage select:focus,
#form_tarif_voyage input:focus,
#form_tarif_voyage textarea:focus {
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: 1px solid #0e3594;
    outline-width: 0
}
#form_tarif_voyage .action-button {
    width: 100px;
    background: #0e3594;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 0px;
    cursor: pointer;
    padding: 10px 5px;
    margin: 10px 0px 10px 5px;
    float: right
}
#form_tarif_voyage .action-button:hover,
#form_tarif_voyage .action-button:focus {
    background-color: #182983
}
#form_tarif_voyage .action-button-previous {
    width: 100px;
    background: #616161;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 0px;
    cursor: pointer;
    padding: 10px 5px;
    margin: 10px 5px 10px 0px;
    float: right
}
#form_tarif_voyage .action-button-previous:hover,
#form_tarif_voyage .action-button-previous:focus {
    background-color: #000000
}
#form_tarif_voyage #progressbar li {
    width: 50%;
}

#form_tarif_multirisque fieldset:not(:first-of-type) {
    display: none
}
#form_tarif_multirisque {
    text-align: center;
    position: relative;
    margin-top: 20px
}
#form_tarif_multirisque fieldset {
    background: white;
    border: 0 none;
    border-radius: 0.5rem;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding-bottom: 20px;
    position: relative
}
#form_tarif_multirisque select,
#form_tarif_multirisque input,
#form_tarif_multirisque textarea {
    padding: 8px 15px 8px 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    /*margin-bottom: 25px;*/
    margin-top: 2px;
    width: 100%;
    box-sizing: border-box;
    color: #2C3E50;
    background-color: #ECEFF1;
    font-size: 16px;
    letter-spacing: 1px
}
#form_tarif_multirisque select:focus,
#form_tarif_multirisque input:focus,
#form_tarif_multirisque textarea:focus {
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: 1px solid #0e3594;
    outline-width: 0
}
#form_tarif_multirisque .action-button {
    width: 100px;
    background: #0e3594;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 0px;
    cursor: pointer;
    padding: 10px 5px;
    margin: 10px 0px 10px 5px;
    float: right
}
#form_tarif_multirisque .action-button:hover,
#form_tarif_multirisque .action-button:focus {
    background-color: #182983
}
#form_tarif_multirisque .action-button-previous {
    width: 100px;
    background: #616161;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 0px;
    cursor: pointer;
    padding: 10px 5px;
    margin: 10px 5px 10px 0px;
    float: right
}
#form_tarif_multirisque .action-button-previous:hover,
#form_tarif_multirisque .action-button-previous:focus {
    background-color: #000000
}

#form_tarif_incendie fieldset:not(:first-of-type) {
    display: none
}
#form_tarif_incendie {
    text-align: center;
    position: relative;
    margin-top: 20px
}
#form_tarif_incendie fieldset {
    background: white;
    border: 0 none;
    border-radius: 0.5rem;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding-bottom: 20px;
    position: relative
}
#form_tarif_incendie select,
#form_tarif_incendie input,
#form_tarif_incendie textarea {
    padding: 8px 15px 8px 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    /*margin-bottom: 25px;*/
    margin-top: 2px;
    width: 100%;
    box-sizing: border-box;
    color: #2C3E50;
    background-color: #ECEFF1;
    font-size: 16px;
    letter-spacing: 1px
}
#form_tarif_incendie select:focus,
#form_tarif_incendie input:focus,
#form_tarif_incendie textarea:focus {
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: 1px solid #0e3594;
    outline-width: 0
}
#form_tarif_incendie .action-button {
    width: 100px;
    background: #0e3594;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 0px;
    cursor: pointer;
    padding: 10px 5px;
    margin: 10px 0px 10px 5px;
    float: right
}
#form_tarif_incendie .action-button:hover,
#form_tarif_incendie .action-button:focus {
    background-color: #182983
}
#form_tarif_incendie .action-button-previous {
    width: 100px;
    background: #616161;
    font-weight: bold;
    color: white;
    border: 0 none;
    border-radius: 0px;
    cursor: pointer;
    padding: 10px 5px;
    margin: 10px 5px 10px 0px;
    float: right
}
#form_tarif_incendie .action-button-previous:hover,
#form_tarif_incendie .action-button-previous:focus {
    background-color: #000000
}

/* Custom radio suprime */

.custom-radio-suprime {
    margin: auto;
    height: 45px !important;
    overflow: inherit;
    margin-top: 7px !important;
}
.custom-radio-suprime input[type=radio] {
    opacity: 0;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden;
    transform: scale(0.0, 0.0);
}
.custom-radio-suprime label {
    display: block;
    color: rgba(29, 29, 31, 0.76);
    width: 50px;
    text-align: center;
    padding: 3px 0;
    margin: 0 !important;
    margin-right: 10px !important;
    border: 2px solid #57BDF9;
    cursor: pointer;
    box-shadow: 0 0 1px 0 rgba(88, 87, 93, 0.43);
    transition-duration: 200ms;
}
.custom-radio-suprime label.yes-no-success:hover {
    background-color: #0e3594;
    color: white;
    transition-duration: 200ms;
}
.custom-radio-suprime label.yes-no-danger:hover {
    background-color: #0F2D7B;
    color: white;
    transition-duration: 200ms;
}
.custom-radio-suprime.active label.yes-no-success, .custom-radio-suprime.active label.yes-no-success:hover {
    background-color: #0e3594;
    color: white;
    transition-duration: 200ms;
}
.custom-radio-suprime.active label.yes-no-danger, .custom-radio-suprime.active label.yes-no-danger:hover {
    background-color: #0F2D7B;
    color: white;
    transition-duration: 200ms;
}
#progressbar #other:before {
    font-family: FontAwesome;
    content: "\f005"
}


.supp_subscriber {
    background: #E31D1B !important;
    color: white !important;
}
.ajout_subscriber {
    background: #0e3594 !important;
    color: white !important;
}
.subscriber_box {
    padding: 6px;
}
.subscriber_box .subscriber_datas {
    padding-top: 6px;
    padding-bottom: 6px;
    box-shadow: 0 0 1px 0 #0e3594;
}
.card-bloc {
    background-color: #f6f6f6;
    margin-top: 25px !important;
    border: 0 none;
    border-radius: 3px;
    box-shadow: 0 0 15px 1px rgb(0 0 0 / 15%);
    padding: 20px 20px;
    box-sizing: border-box;
    width: 100%;
    position: relative;
}
.card-bloc:hover, .cotation-aside:hover {
    box-shadow: 0 0 20px 1px rgb(14 53 148 / 40%);
}

.custom-switch.custom-switch-xl .custom-control-label {
    padding-left: 4rem;
    padding-bottom: 2.5rem;
}
.custom-switch.custom-switch-xl .custom-control-label::before {
    height: 2.5rem;
    width: calc(8rem + 0.75rem);
    border-radius: 5rem;
}
.custom-switch.custom-switch-xl .custom-control-label::after {
    content: 'NON';
    padding: 8px 0;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    color: #0e3594;
    width: calc(2.5rem - 4px);
    height: calc(2.5rem - 4px);
    border-radius: calc(4rem - (2.5rem / 2));
}
.custom-switch.custom-switch-xl .custom-control-input:checked ~ .custom-control-label::after {
    content: 'OUI';
    padding: 8px 0;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    color: #0e3594;
    transform: translateX(calc(6.5rem - 0.25rem));
}
.custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #0e3594;
    background-color: #0e3594;
}
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #0e3594;
}
.custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgb(14 53 148 / 25%);
}
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: #0e3594;
}

.switch-field {
    display: table-cell;
    vertical-align: middle;
}
input.switch {
    position: absolute;
    margin-left: -9999px;
    visibility: hidden;
}
input.switch + label {
    background-color: #f0f0f0;
    display: block;
    position: relative;
    cursor: pointer;
    outline: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
input.switch + label, input.switch + label:before, input.switch + label:after {
    -webkit-border-radius: 2.4em;
    -moz-border-radius: 2.4em;
    -ms-border-radius: 2.4em;
    -o-border-radius: 2.4em;
    border-radius: 2.4em;
}
input.switch + label {
    background-color: #f0f0f0;
    width: 7.5em;
    height: 2.8em;
    overflow: hidden;
}
input.switch + label:before, input.switch + label:after {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    content: "";
}
input.switch + label:before {
    background-color: #bbb;
    right: 0;
    -webkit-transition: background 0.3s;
    -moz-transition: background 0.3s;
    -o-transition: background 0.3s;
    transition: background 0.3s;
}
input.switch + label:after {
    content: 'Non';
    padding: 8px 0;
    text-align: center;
    color: #fff;
    font-weight: bold;
    background-color: dimgrey;
    width: calc(3em - 2px);
    -webkit-box-shadow: 1px 0 3px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 1px 0 3px rgba(0, 0, 0, 0.1);
    box-shadow: 1px 0 3px rgba(0, 0, 0, 0.1);

    -webkit-transition: margin 0.3s;
    -moz-transition: margin 0.3s;
    -o-transition: margin 0.3s;
    transition: margin 0.3s;
}
input.switch:checked + label:before {
    background-color: rgba(14, 53, 148, 0.5);
}
input.switch:checked + label.label-disabled:before {
    background-color: rgba(140, 234, 122, 0.5);
}
input.switch:checked + label:after {
    content: 'Oui';
    padding: 8px 0;
    text-align: center;
    color: #fff;
    font-weight: bold;
    margin-left: 4.6em;
    background-color: #0e3594;
}
input.switch:checked + label.label-disabled:after {
    background-color: green;
}

.cotation-aside {
    background-color: #f6f6f6;
    margin: auto;
    border: 0 none;
    border-radius: 3px;
    box-shadow: 0 0 15px 1px rgb(0 0 0 / 15%);
    padding: 20px 20px;
    box-sizing: border-box;
    width: 100%;
    position: relative;
}
.bloc-info {
    padding: 0;
}
.garanty-cotation-sub-header {
    color: #0e3594;
    font-weight: bold;
}
.color_red {
    color: #be0f0f;
}
.modal-content {
    background-color: #fff !important;
}
.modal-header {
    align-items: center;
}
.modal-header .close {
    padding: 4px 10px 10px;
    border-radius: 6px;
    color: white;
    margin: 0;
    background-color: red;
    opacity: 1;
}
.modal-body > form > div[id*="modal-"] > .row > div > .card > .card-header {
    background-color: transparent;
}
.modal-body > form > div[id*="modal-"] > .row > div > .card > .card-header .card-title {
    color: #0e3594;
    margin-bottom: 0;
    font-size: 24px;
}

.btn-primary, .btn-primary:hover {
    color: #fff;
    background-color: #0e3594;
    border-color: #0e3594;
}
.btn-outline-primary {
    color: #0e3594;
    border-color: #0e3594;
}
.btn-outline-primary:hover, .btn-outline-primary:focus {
    color: #fff;
    border-color: #0e3594;
    background-color: #0e3594;
}
.modal-footer {
    border-top: 1px solid #0e3594;
}
.modal-header {
    border-bottom: 1px solid #0e3594;
}

/* The customcheck */
.customcheck {
    display: block;
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Hide the browser's default checkbox */
.customcheck input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    width: 0 !important;
}

/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 35px;
    width: 35px;
    background-color: #eee;
    border-radius: 5px;
}

/* On mouse-over, add a grey background color */
.customcheck:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.customcheck input:checked ~ .checkmark {
    background-color: #02cf32;
    border-radius: 5px;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.customcheck input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator */
.customcheck .checkmark:after {
    left: 14px;
    top: 9px;
    width: 7px;
    height: 15px;
    border: solid white;
    border-width: 0 3px 3px 0;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

input[class*="action-button"] {
    border-radius: 6px !important;
    padding: 10px !important;
}

.custom-file-label::after {
    content: "Parcourir";
}
.affix {
    top: 0;
    position: fixed;
    overflow: visible !important;
    padding: 0;
    z-index: 9998;
    margin: 0;
}
.prime-ttc {
    position: relative;
    display: flex;
    justify-content: center;
    padding: 25px 40px;
    background-color: #008000;
    border-radius: 3px;
}
.prime-ttc div {
    color: #fff;
}
.ttc-price {
    text-align: center;
}
.hide-on-desktop {
    display: none;
}
.banner-new {
    /*background-color: #f6f6f6;*/
    margin-top: 25px !important;
    border: 0 none;
    border-radius: 3px;
    box-shadow: 0 0 15px 1px rgb(0 0 0 / 15%);
    padding: 20px 20px;
    box-sizing: border-box;
    Position: relative;
}
.logo-chanas-banner {
    position: absolute;
    top: 50%;
    left: 5%;
    display: block;
    z-index: 9;
    width: 237px;
    transform: translate(0, -120%);
}
.payment_label {
    display: inline-block;
    width: 140px;
    margin: auto;
}
input[name="payment_method"] {
    width: 0;
    height: 0;
}
.payment_icon {
    width: inherit;
}
.payment_method_container {
    width: fit-content;
    margin: auto;
}
.selected_payment {
    border-radius: 20px;
    background: linear-gradient(145deg, #e6e6e6, #ffffff);
    box-shadow: 11px 11px 22px #e8e8e8,
    -11px -11px 22px #ffffff;
    border: 1px solid #0033934d;
}

#is-age-valid.show {
    padding: 0;
}
#is-age-valid .modal-dialog {
    /* width: 100%; */
    /* margin: 0; */
}
#is-age-valid .modal-dialog .modal-content {
    background-color: #0e3594 !important;
    color: white;
}
#is-age-valid .modal-dialog .modal-content .modal-header {
    /* 	border-bottom: none; */
    border-color: white;
}
#is-age-valid .modal-dialog .modal-content .modal-footer {
    /* 	border-top: none; */
    border-color: white;
}
#is-infirm-modal .modal-dialog .modal-content {
    background-color: #0e3594 !important;
    color: white;
}
#is-infirm-modal .modal-dialog .modal-content .modal-header {
    /* 	border-bottom: none; */
    border-color: white;
}
#is-infirm-modal .modal-dialog .modal-content .modal-footer {
    /* 	border-top: none; */
    border-color: white;
}

/*changing the dashboard left-side bar color and all related elements with blue color*/
.simulation-item-title {
    background-color: #0e3594;
}

/* new voyage simulator styles */

/* subscriber information */

/* add remove subscriber buttons container */
.ajouter-assure-voyage-container {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    flex-basis: 100%;
}

/* add remove subscriber buttons */
.ajouter-assure-voyage-container button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border: none;
}

/* remove subscriber button */
.remove-assure-voyage {
    background-color: #be0f0f;
}

/* remove subscriber button hover */
.remove-assure-voyage:hover {
    background-color: #ab0e0e;
}

/* subscriber is not the assured one form check container */
.subscriber-is-not-assured-one-container {
    display: flex !important;
    align-items: center !important;
    padding-left: 2.25rem !important;
    color: gray;
}

/* subscriber is not the assured one checkbox */
.subscriber-is-not-assured-one-container input#subscriber-is-not-assured-one {
    width: fit-content !important;
    scale: 1.5;
}

/* subscriber is not the assured one checkbox checked */
.subscriber-is-not-assured-one-container input#subscriber-is-not-assured-one:checked {
    background: #0e3594 !important;
    color: red;
}

/* subscriber is not the assured one label */
.subscriber-is-not-assured-one-container label {
    padding-left: 8px;
}

/* user conditions modal dialog */
#voyage-user-condition-modal .modal-dialog {
    /* background-color: gray !important; */
    max-width: unset;
    width: 60%;
}

/* user conditions modal content */
#voyage-user-condition-modal .modal-dialog .modal-content {
    padding: 24px;
}

/* user conditions modal header */
#voyage-user-condition-modal .modal-dialog .modal-content .modal-header {
    margin-bottom: 40px;
}

/* user conditions modal header and footer */
#voyage-user-condition-modal .modal-dialog .modal-content .modal-header,
#voyage-user-condition-modal .modal-dialog .modal-content .modal-footer {
    border: none;
    display: flex;
}

/* user conditions modal body */
#voyage-user-condition-modal .modal-dialog .modal-content .modal-body {
    border: 2px solid #c9c9c9;
    width: 97%;
    height: 400px;
    margin: auto auto 40px auto;
    padding: 0 32px;
    border-radius: 8px;
}

/* user conditions modal footer */
#voyage-user-condition-modal .modal-dialog .modal-content .modal-footer {
    justify-content: space-between;
    display: none;
}

/* continue btn user conditions */
#submit_user_conditions_btn[disabled] {
    cursor: not-allowed;
    background-color: #5a7da3;
    border: none;
    color: #afb6bd;
}

/* close user conditions modal btn */
.close-user-condition-modal {
    border: none;
    padding: 8px 8px 4px 8px;
    border-radius: 4px;
}

/* close user conditions modal btn active */
.close-user-condition-modal:active {
    outline: none;
}

/* check user conditions checkbox */
.check-voyage-user-conditions-container {
    padding-left: 24px;
}

/* voyage user conditions checkbox */
.check-voyage-user-conditions-container #check-voyage-user-conditions,
.check-voyage-user-conditions-container label {
    cursor: not-allowed;
}

/* user conditions btn container */
.user-condition-modal-launcher-container {
    color: red;
    padding: 0 16px;
    /* width: fit-content; */
    width: -moz-fit-content;
    margin-left: auto;
    margin-right: 0 !important;
    align-items: center;
    justify-content: flex-end;
}

/* user conditions trigger btn */
.user-condition-modal-launcher-container #display-user-conditions-modal-btn {
    height: 44px;
    font-weight: 700;
}

/* donnees exactes */
#donnees_exactes {
    scale: 1.5;
    width: fit-content !important;
    margin: unset;
    position: relative;
}

/* donnees exactes container */
#donnees-exactes-container {
    display: flex !important;
    align-content: flex-end !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 16px;
}
/*colored cell table user condition*/
.colored {
    background-color: #D9E1F3;
}
.user-conditions-garaties-table tr td {
    border: 1px solid gray;
    padding: 16px;
}