@import url('https://fonts.googleapis.com/css2?family=Playfair+Display+SC:wght@400;700;900&family=Poppins:ital,wght@0,200;0,400;0,500;0,600;0,700;0,800;0,900;1,100&display=swap');

a {
    text-decoration: none !important;
}

ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.container-fluid.header {
    display: none;
}

.du-header {
    width: 100%;
    position: fixed;
    z-index: 999;
    top: 0;
    padding: 0 1rem;
    background: #ffffff00;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: space-between;
}

.container.xFlexer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 !important;
}
.du-logo img {
    width: 170px;
}

.du-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 20px;
}

.du-menu ul button {
    border: 0;
    background: none;
    padding: 0.75rem 1rem;
    border-radius: 5px;
}

button.du-btn-par {
    background: #64A044 !important;
    color: #fff;
}

button.du-btn-pro {
    background: #557ec9 !important;
    color: #fff;
}

button.du-btn-con {
    background: #000000 !important;
    color: #fff;
}

.du-hero {
    min-height: 85vh;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: contain;
    background-color: #ebfcff;
    position: relative;
}

.du-hero:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
}

.du-hero:after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    width: 100%;
    height: 125px;
    background-image: url(https://www.meilleurservice.com//images/wave1.svg);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
}

h2.du-s-title2 {
    font-size: 2.75rem;
    font-weight: 600;
}

.du-hero .search {
    box-shadow: 0px 1px 5px rgba(0, 0, 0, 0) !important;
    border-radius: 500px !important;
    margin-top: 1rem;
    background: none !important;
}

.du-hero .search input {
    box-shadow: 0px 1px 5px rgba(0, 0, 0, 0) !important;
    border: 3px solid #6c9165 !important;
    border-radius: 10px;
    height: 70px;
    text-align: left;
    width: 100%;
}

.active-bg {
    background-color: #fff;
}

.card.du-card {
    width: 100%;
    text-align: center;
}

.du-steps {
    padding: 5rem 0;
}

.du-etape {
    width: 50px;
    height: 50px;
    background: #37a97f;
    margin: auto;
    font-size: 1.5rem;
    border-radius: 500px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    margin-top: -25px;
}

.autocomp-box {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border-radius: 10px;
    z-index: 1;
    position: relative;
}

.autocomp-box a {
    padding: 0.25rem 1rem;
    background: #fff;
    color: #000;
    border-radius: 5px;
}

.du-grid {
    border-top: 1px solid #f3f3f3;
    border-bottom: 1px solid #f3f3f3;
}

.proIns button {
    background: #557ec9;
    border: none;
    color: #fff;
    padding: 0.5rem 1rem;
    border-radius: 5px;
}

.search.dummy input {
    width: 100%;
    border-radius: 8px;
}

button.big-b {
    width: 100%;
    border: 0;
    padding: 5rem 1rem;
    border-radius: 10px;
    background: #fff;
    color: #fff;
    text-align: left;
}

button.big-b img {
    width: 65px;
    margin-top: 1rem;
    transform: translateX(0px);
    transition: all 0.3s;
}

button.big-b:hover img {
    transform: translateX(10px);
}

button.big-b h3 {
    font-size: 1.25rem;
}

button.big-b p {
    margin: 0 !important;
}

button.big-b.par {
    background-color: #64A044;
    background-position: right -40px bottom;
    background-repeat: no-repeat;
    transition: all 0.3s;
}

button.big-b.pro img {
    transform: translateX(0px) rotate(180deg);
}

button.big-b.pro:hover img {
    transform: translateX(-10px) rotate(180deg);
}

button.big-b.par:hover {
    background-position: right 0px bottom;
}

button.big-b.pro {
    background: #557ec9;
    background-position: left -50px bottom;
    background-repeat: no-repeat;
    text-align: right;
    transition: all 0.3s;
}

button.big-b.pro:hover {
    background-position: left -40px bottom;
}
button.big-b.par.entrePro {
background: rgb(100,160,68);
background: linear-gradient(101deg, rgba(100,160,68,1) 0%, rgba(85,126,201,1) 100%);
}
.section.du-footer {
    background: #f9f9f9;
    padding: 5rem 0rem 0 0;
}

.du-footer .logo img {
    width: 200px;
    margin-bottom: 1rem;
}

.du-footer ul.social {
    list-style: none;
    display: flex;
    opacity: 0.7;
    justify-content: flex-start;
    margin: 0;
    padding: 0;
    gap: 15px;
}

ul.navifooter a {
    color: black;
}
ul.navifooter a:hover {
    color: #64A044;
}

.du-menu-opnner {
    width: 40px;
    height: 44px;
    position: relative;
    display: none;
}

.du-menu-opnner div {
    height: 3px;
    width: 100%;
    background: black;
    margin-bottom: 9px;
    opacity: 1;
    border-radius: 500px;
    transform: translate() rotate(0deg);
    transition: all 0.3s;
}

.du-menu-opnner div.three {
    width: 80%;
    float: right;
    transition: all 0.3s;
}

.du-menu-opnner.active .one {
    transform: translate(6px, 16px) rotate(45deg);
}

.du-menu-opnner.active .three {
    transform: translate(5px, -8px) rotate(-45deg);
    width: 100%;
}

.du-menu-opnner.active .two {
    opacity: 0;
    ;
}
.du-menu-mobile2,
.du-menu-mobile {
    width: 100%;
    position: fixed;
    top: 90px;
    left: -101%;
    background: white;
    padding: 1rem;
    padding-top:50px;
    height: 100vh;
    transition: all 0.3s;
}
.du-menu-mobile2.active,
.du-menu-mobile.active {
    left: 0%;
}
.du-menu-mobile2 ul,
.du-menu-mobile ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 25px;
}
.du-menu-mobile2 ul li,
.du-menu-mobile ul li {
    border-bottom: 1px dotted #adadad;
    padding-bottom: 1rem;
}
.du-menu-mobile2 ul li:last-child,
.du-menu-mobile ul li:last-child {
    border-bottom: 0px dotted #adadad;
}
.du-menu-mobile2 ul a button,
.du-menu-mobile ul a button {
    border: 0;
    float: left;
    text-align: left;
    background: none;
    width: 100%;
    color: black;
}
.du-menu-mobile2 ul a button img,
.du-menu-mobile ul a button img {
    width: 35px;
    float: left;
    height: 35px;
}
.du-menu-mobile2 ul a button h3,
.du-menu-mobile ul a button h3 {
    margin: 0;
    font-size: 1.25rem;
}
.du-menu-mobile2 ul a button p,
.du-menu-mobile ul a button p {
    margin: 0;
    font-size: 0.9rem;
}
.du-menu-mobile2 ul .btnDets,
.du-menu-mobile ul .btnDets {
    margin-left: 3rem !important;
}
/*
h2.du-s-title span {
    font-size: 5rem;
    font-weight: 600;
    margin-left: -8px;
    font-family: 'Playfair', serif;
}
*/
span.clr2 {
    color: #64A044;
}

#ins_menu {
    display: none;
}
#ins_menu button {
    background: #ffffff;
    border: 1px solid;
    padding: 0.5rem 1rem;
    color: #000;
    border-radius: 5px;
    margin-top: -10px;
    margin-right: -10px;
    height: 44px;
}
/*
span.clr2.sm {
    font-size: 3rem !important;
}
*/
a.quel {
    display: none;
}

a.quel img {
    height: 40px !important;
    float: right;
    text-align: right;
    transform: translate(10px, -5px);
}

button.simpleBtn {
    font-size: 0.9rem;
    border: 0;
    padding: 0.25rem 1rem;
    border-radius: 5px;
    background: #557ec900;
    color: #000;
    border: 1px solid black;
}

.connexionSubs {
    padding-right: 1rem;
    display: none;
}

.connexionSubs button {
    margin: 0.5rem;
    padding: 1rem;
    border-radius: 5px;
    color: white !important;
    background-repeat: no-repeat !important;
    background-position: bottom right !important;
}
.connexionSubs button{
    font-size: 1.125rem;
    font-weight: 500;
}
.connexionSubs button span {
    font-size: 1rem;
    opacity: 1;
    display: block;
        font-weight: 300;
}

.connexionSubs button.par {
    background-color: #64A044;
    background-image: url(https://www.meilleurservice.com/images/btn-par-single.svg);

}

.connexionSubs button.pro {
    background-color: #557ec9;
    background-image: url(https://www.meilleurservice.com/images/btn-pro-single.svg);
}

.connexionSubs button.propro {
    background-color: #38568d;
    background-image: url(https://www.meilleurservice.com/images/btn-pro-pro.svg);
    background-position: center !important;
    padding-right: 76px !important; 
}
button.propro.x {
    background-position: center right !important;
}
.connexionSubs.ori.active {
    display: block;
}

.connexionSubs.dup.active {
    display: block;
}

ul.point-list img {
    width: 22px;
    margin-right: 1rem;
    height: 30px;
    float: left;
    object-fit: contain;
    object-position: bottom;
}

ul.point-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
}

ul.point-list li {
    margin-bottom: 0.25rem;
    display: flex;
    align-content: center;
    align-items: flex-end;
}

.adj h2.du-s-title2 {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.adj p {
    margin-bottom: 3rem !important;
}

.dummyBtn {
    display: none;
}

.dummyBtn.active {
    display: block;
}

li.insBtn.big h3,
li.conBtn.big h3 {
    font-size: 1.52rem;
}

li.insBtn.big p,
li.conBtn.big p {
    display: none;
}

.insBtn.dull,
.qlBtn.dull,
.conBtn.dull,
li.dummyBtn.active.dull {
    opacity: 0.5;
}

.h2,
h2 {
    position: relative;
    z-index: 1;
}

.rel {
    position: relative;
}

.rel label {
    position: absolute;
    margin-left: 36px;
    background: white;
    top: -12px;
    padding: 2px 7px !important;
}

.rel input {
    width: calc(100% - 30px);
    height: 50px;
    margin-left: 30px;
    margin-bottom: 1rem !important;
    border: 1px solid rgb(206, 212, 218);
    border-radius: 0.25rem;
    padding: 0.375rem 0.75rem;
}

.icon-validation {
    position: absolute;
    top: 15px;
    width: 24px;
    height: 24px;
    background: #64A044;
    font-size: 11px;
    border-radius: 500px;
    text-align: center;
    padding-top: 4px;
    color: #fff;
}

input#accepts {
    float: left;
    width: 24px;
    height: 24px;
    border-radius: 500px;
}

label.accept {
    width: 80%;
    transform: translateX(6px);
}

input.submitter,
input.g-recaptcha.full-width {
    width: 100%;
    border-radius: 5px;
    border: 0;
    background: #000;
    padding: 1rem;
    color: #fff;
}

label.accept a {
    color: #557ec9;
    font-style: italic;
    font-weight: 900 !important;
}

.form-check-input:checked {
    background-color: #64A044;
    border-color: #64A044;
}

.elem-group {
    position: relative;
}

div#toggle-password img {
    width: 25px;
    position: absolute;
    right: 1rem;
    top: 1rem;
    opacity: 0.5;
}

button.mdpForg,
a.mdpForg {
    color: #000;
    border: 0;
    font-size: 12px;
    border-radius: 3px;
    background: none;
    margin-left: 1.8rem;
}

.proIns {
    display: grid;
    font-size: 1rem;
}

.proIns h4 {
    font-size: 1rem;
}

.inputSet .rel input {
    margin-bottom: 1.5rem !important;
}

.adjAlign .col-12.ins {
    min-height: 100vh;
    margin-top: 120px;
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
}

.du-join {
    padding: 1rem;
}

.hsCatList .itm.open .Subs {
    max-height: unset !important;
}

.hiderA {
    position: fixed;
    left: 0;
    bottom: 0;
    background: #ffffff00;
    width: 100%;
    height: 70vh;
    z-index: -1;
    display: none;
}

.hiderA.active {
    display: block;
}

ul.navifooter li {
    margin-bottom: 0.5rem;
}

.bottom-footer ul {
    padding: 0;
    margin: 0;
}

.bottom-footer {
    text-align: center;
}
.cookie-banner {
  position: fixed;
  bottom: 0;
  left: 5%;
  width: 90%;
  background-color: #557ec9;
  color: #fff;
  padding: 10px;
  text-align: center;
  border-top-left-radius:5px;
  border-top-right-radius:5px;
z-index: 9999;
}
.cookie-banner a{
  color: #ffffff;
}
#accept-cookies {
  background-color: #ffffff;
  color: #000;
  border: none;
  padding: 10px 20px;
  cursor: pointer;
  border-radius:500px;
}
h2.title {
    margin-top: 3rem;
}
div#swal2-html-container a {
    padding: 0.75rem;
    border: 1px solid #000;
    color: #000;
    border-radius: 5px;
}
button.swal2-confirm.swal2-styled {
    background: #fff;
    border: 1px solid #000;
    color: #000;
}
div#swal2-html-container {
    height: 140px;
}
button.loginIconHome {
    border: 1px solid black;
    background: none;
    padding: 0.5rem;
    border-radius: 5px;
    margin-top: -5px;
    height: 44px;
}
button.loginIconHome img {
    width: 24px;
}
.mylang select {
    padding: 0.5rem 1rem;
    border-radius: 5px;
    border: 0;
    background: #dfdfdf;
}
@media(max-width:991.98px) {
    button.big-b {
        padding: 1rem 1rem;
        min-height: 230px !important;
    }
button.big-b p {
    max-width: 200px;
}
button.big-b.pro {
    display: flex;
    flex-direction: column;
    align-content: flex-end;
    align-items: flex-end;
}
    .adjAlign .col-12.ins {
        min-height: unset;
        display: unset;
        align-items: unset;
        flex-direction: unset;
        flex-wrap: unset;
        align-content: unset;
    }

    span.clr2.sm {
        font-size: 1.85rem !important;
        margin-left: 0px;
    }

    .proIns button {
        width: 100%;
    }

    a.quel {
        display: block;
    }

    .du-menu-opnner {
        display: block;
    }

    .du-menu {
        display: none;
    }

    .section.du-hero.d-flex.align-items-center.justify-content-center.active {
        padding-top: 2rem !important;
        background-size: 160%;
    z-index: 9999;
}

    .du-hero:after {
        background-position: center bottom -1px;
        background-size: 200%;
    }

    h2.du-s-title {
        font-size: 1.75rem;
    }

    h2.du-s-title2 {
        font-size: 1.75rem;
    }

    .section.du-grid h2.du-s-title2.mt-5.mb-5.pt-5.pb-3 {
        margin-top: 1rem !important;
        padding: 0 !important;
        margin-bottom: 1rem !important;
    }

    h2.du-s-title2.mt-5.mb-5.pt-5.pb-3 {
        margin-top: 1rem !important;
        margin-bottom: -1rem !important;
    }

    .section.du-steps {
        padding-bottom: 0;
    }

    .section.du-hero {
        padding: 0 1rem;
    }

    .section.du-hero .container {
        z-index: 1;
    }

    .du-grid {
        padding: 1rem;
    }

    .section.du-grid.pb-5 {
        margin-bottom: 1rem !important;
        padding-bottom: 0 !important;
    }

    .section.du-join.pb-5.pt-5.mt-5 {
        margin-top: 0 !important;
    }

    button.simpleBtn {
        width: 100%;
    }
a.chan button.simpleBtn {
        display:none;
    }
    .du-hero-adj {
    min-height: 70vh !important;
    margin-top: 2rem !important;
}
    .section.du-footer .logo {
        display: none;
    }

    .section.du-footer {
        padding-top: 2rem;
    }
    #ins_menu {
    display: block;
}
}