:root{

    --ff:"Noto Sans", sans-serif;

    --ff-alt:serif;

    

    --clr100:#fff;

    --clr100-100:#ffffff10;

    --clr200:#F7F7F7;

    --clr300:#F4F1EB;

    --clr400:#BFBFBF;

    --clr600:#93928E;

    --clr700:#484848;

    

    --clr900:#171717;

    --clr900-100:#17171740;

    --clr900-700:#17171770;

    --clr900-900:#17171799;

    --clr900-90:#171717e6;

    

    --clr-accent:#c4c4c4;

    --clr-accent-100:#c4c4c405;

    --clr-accent-400:#c4c4c435;

    --clr-accent-800:#c4c4c4e6;

    

    --filter-accent: invert(19%) sepia(100%) saturate(6043%) hue-rotate(334deg) brightness(94%) contrast(91%);

    --filter-red: brightness(0) saturate(100%) invert(19%) sepia(50%) saturate(4096%) hue-rotate(333deg) brightness(101%) contrast(99%);

    --clr-err:#FF2727;

    --clr-sold:#FF2727;

	

	--clrkw200:#d21c3e;

	--clrkw900:#000;

	--clrkw300:#eeeeee;

}



*{

    padding: 0;

    margin: 0;

    box-sizing: border-box;

}

html{

    scroll-behavior: smooth;

    scroll-padding-top:5rem;

}

html.noscroll{

    position: fixed;

    width: 100%;

    top:0;

    left: 0;

    height: 100%;

    overflow-y: scroll !important;

    z-index: 10;

 }



body{

    font-family: var(--ff);

    font-size: 1rem;

    color: var(--clr900);

    line-height: 1.4;

    padding-top: 6.6rem;

    background-color: var(--clr100);

}

body.noSelect{

    -webkit-touch-callout: none;

    -webkit-user-select: none;

    -khtml-user-select: none;

    -moz-user-select: none;

    -ms-user-select: none;

    user-select: none;

}



.wrap{

    width: 81.25rem;

    max-width: calc(100% - 3rem);

    margin-inline:auto;

}

.wrap.wide{

    width: 100%;

    max-width: calc(100% - 2rem);

}

.wrap.narrow{

    width: 52.5rem;

}



:where(a){

    color:inherit;

}

:where(a:hover){

    text-decoration: none;

}

:where(ul){

    padding-left: 1rem;

}



img, svg, video{

    display: block;

    height: auto;

    max-height: 100%;

    width: 100%;

    max-width: 100%;

}



input, textarea, button, select{

    -webkit-appearance:none;

    appearance:none;

    border-radius: 0;

    border:1px solid #000;

    background-color: #fff;

    font-family: var(--ff);

    font-size: .9rem;

    text-align: left;

}



.inputfile label{margin-bottom: 1rem;}



textarea{

    min-height: 10rem;

    resize: vertical;

}

.selectelement{position: relative;}

.selectelement::after{

    content: url("/images/essentials/flecheselect.svg");

    position: absolute;

    top: 50%;right: 1rem;

    translate:0 -50%;

    width: 1.25rem;

    height: 1.25rem;

    pointer-events: none;

}



.sectionreverse .selectelement::after{filter: invert(1);}

input:not([type=checkbox]):not([type=radio]):not([type=submit]), textarea, .selectelement select{

    --c-border:var(--clr900-100);

    --bgc:var(--clr-accent-100);

    display: block;

    width: 100%;

    border:1px solid var(--c-border);

    background-color: var(--bgc);

    padding: 1rem;

    margin-bottom: 1rem;

}

.tabscontent input:not([type=checkbox]):not([type=radio]):not([type=submit]), .tabscontent textarea, .tabscontent .selectelement select, .contactintro input:not([type=checkbox]):not([type=radio]):not([type=submit]), .contactintro textarea, .contactintro .selectelement select{background-color: var(--clr100);}

.sectionlighter input:not([type=checkbox]):not([type=radio]):not([type=submit]), .sectionlighter textarea, .sectionlighter .selectelement select{

    --bgc:var(--clr100);

}

.selectelement select{

    cursor: pointer;

    padding-right: 3rem;

    margin-bottom: 0;

}



.propfiltersinner .selectelement select{

    border-radius:50vh;

    background-color: var(--clrkw200);

    color: var(--clr100);

    border:0;

    padding-top: .75rem;padding-bottom: .75rem;

}

.courtierfilters .propfiltersinner .selectelement select{

	min-width: 216px;

}

.courtierfilters input[type=text] {

	width: 300px !important;

    max-width: 100%;

	margin-bottom: 0 !important;

	padding: 0.7rem 1rem !important;

}

.courtierfilters .propfiltersinner {

    align-items: center;

    justify-content: left;

}

.courtierfilters .propfiltersinner button,

.courtierfilters .propfiltersinner .selectelement {

    margin-top:0;

}

.propfiltersinner .selectelement::after{filter: invert(1);}



input:not([type=checkbox]):not([type=radio]):not([type=submit]):focus, textarea:focus, .selectelement select:focus{

    outline:0;

    --c-border:var(--clr-accent) !important;

}

input.err:not([type=checkbox]):not([type=radio]):not([type=submit]), textarea.err, .selectelement select.err{

    --c-border:var(--clr-err) !important;

}



.inputfile input{

    width: 0 !important;

    height: 0 !important;

    position: absolute !important;

    padding: 0 !important;

    border:0 !important;

    font-size: 0 !important;

}

.inputfile h4{margin-bottom: 1rem;margin-top: 1.5rem;}



.sectionreverse input:not([type=checkbox]):not([type=radio]):not([type=submit]), .sectionreverse textarea, .sectionreverse .selectelement select{

    --c-border:var(--clr100-100);

    --bgc:var(--clr-accent-100);

    color: #fff;

}

.sectionreverse .selectelement select{color: var(--clr400);}

.sectionreverse .selectelement select:has(option[hidden]:not(:checked)){color: var(--clr100);}



.formelement{position: relative;}



.formelement label{

    pointer-events: none;

    position: absolute;

    left: 1rem;

    top: 1.625rem;

    translate:0 -50%;

    font-size: .9rem;

    opacity: .75;

}



.formelement:focus-within label, .formelement:has(input:not(:placeholder-shown)) label, .formelement:has(textarea:not(:placeholder-shown)) label {display: none;}



input[type=checkbox]:has(+label), input[type=radio]:has(+label){

    width: 0;

    height: 0;

    border:0;

    opacity: 0;

    position: absolute;

}



input[type=checkbox]+label, input[type=radio]+label{

    display: flex;

    justify-content: flex-start;

    align-items: flex-start;

    gap:1rem;

    font-size: .75rem;

    margin-bottom: 1rem;

    cursor: pointer;

}

input[type=checkbox].error:not(:checked)+label, input[type=radio].error:not(:checked)+label{

    color: var(--clr-err) !important;

}

input[type=checkbox]+label::before, input[type=radio]+label::before{

    content: "";

    border-radius: 3px;

    border:1px solid var(--clr900);

    width: 1rem;

    height: 1rem;

    background-color: transparent;

    flex-shrink: 0;

    margin-top: 3px;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 75% auto;

    cursor: pointer;

}

input[type=checkbox].error:not(:checked)+label::before, input[type=radio].error:not(:checked)+label::before{

    border:1px solid var(--clr-err) !important;

    filter: none !important;

}

input[type=radio]+label::before{border-radius: 50%;}

input[type=checkbox]:checked+label::before, input[type=radio]:checked+label::before{

    background-image: url("/images/essentials/check.svg");

}

.sectionreverse input[type=checkbox]+label::before, .sectionreverse input[type=radio]+label::before{

    filter: invert(1);

}



input.afftoggle+label{

    width: 1.8rem;

    display: inline-block;

    vertical-align: middle;

    margin-right: .75rem;

    margin-bottom: 0;

}

input.afftoggle+label::before{display: none;}

.sectionreverse input.afftoggle+label{filter: invert(1);}

input.afftoggle:checked+label{

    filter: var(--filter-accent);

}



.cbgelement input+label{

    background-color: var(--clr400);

    color: var(--clr900);

    padding: .5rem 1rem;

    align-items: center;

    font-size: .85rem;

    font-weight: 600;

    margin-bottom: auto;

}

.cbgelement input[type=checkbox]+label::before{filter: grayscale(1);}



.sectionreverse .cbgelement input+label{

    background-color: #000;

}



.cbgelement input[type=checkbox]+label::before{

    margin-top: 0;

    border-radius:0;

}



.form2cols{

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap:1rem;

    margin-top: 3.5rem;

}

.form2cols .offgrid{

    grid-column: 1 / 3;

}



.clraccent{

    color: var(--clrkw200) !important;

}

.clr900{

    color: var(--clr900) !important;

}



.tac{

    text-align: center;

}

.tar{text-align: right;}

.ttu{

    text-transform: uppercase;

}



.flexsb{

    display: flex;

    justify-content: space-between;

    flex-wrap: wrap;

    align-items: flex-start;

}

.smbr{

    --br:.75rem !important;

}

.brb{

    --br:1.5rem;

    border-bottom-right-radius: var(--br);

    border-bottom-left-radius: var(--br);

    overflow: hidden;

}

.brt{

    --br:1.5rem;

    border-top-right-radius: var(--br);

    border-top-left-radius: var(--br);

    overflow: hidden;

}





.cornerInside{--sizew:48px;

    --sizeh:48px;position: relative;border-bottom-right-radius: 0;}





.bouton-plus, .bouton-openprop{

    --br:.75rem;

    border-radius: var(--br);

    background-color: var(--clr-accent);

    aspect-ratio: 1;

    display: flex;

    justify-content: center;

    align-items: center;

    width: 42px;

    transition: all .3s;

}

.bouton-plus:hover, .bouton-openprop:hover{

    background-color: var(--clr900);

}

.bouton-plus svg, .bouton-openprop svg{

    width: 20px;

}

.bouton-openprop svg{fill: var(--clr900);transition: all .3s;}

.bouton-plus line{

    stroke-width: 2px;

    stroke:var(--clr900);

    transition: all .3s;

}

.bouton-plus:hover line{

    stroke:var(--clr100);

}

.bouton-openprop:hover svg{fill: var(--clr100);}

.cornerInside .bouton-plus, .cornerInside .bouton-openprop{

    position: absolute;

    bottom: 0;

    right: 0;

    z-index: 3;

}



/* BOUTON */

.boutons{

    display: flex;

    gap:1rem;

    justify-content: flex-start;

    align-items: center;

    flex-wrap: wrap;

}

.contactintro .boutons{margin-bottom: 1.5rem;margin-top: 3rem;}

.tac .boutons{justify-content: center;}

.boutons a.bouton{margin: 0;}

.bouton{

    --bgc:var(--clr100);

    --c:var(--clr900);

    --border:var(--clr900);

    --hoverbgc:var(--clrkw900);

    --borderleft:var(--c);

    border:0;

    display: inline-flex;

    align-items: stretch;

    justify-content: center;

    width: max-content;

    font-size: .9rem;

    background-color: var(--bgc);

    color: var(--c);

    font-weight: 500;

    text-decoration: none;

    cursor: pointer;

    border-radius: 50vh;

    overflow: hidden;

    position: relative;

    font-size: .9rem;

    transition: all .3s 0s, border .3s 0s;

}



.bouton:hover{

    --border:var(--hoverbgc);

	color: var(--clr100);

    transition: all .3s .3s, border .3s 0s;

}

.boutonaccent:hover{

    --c:var(--clr100);

}



.boutonaccent{

    --bgc:var(--clr-accent);

    --c:var(--clr900);

    --border:var(--clr-accent);

    --hoverbgc:var(--clr900);

    --borderleft:var(--clr100);

}



.bouton.hoverreverse:hover{

    --hoverbgc: var(--clr900);

}

.bouton.boutonreverse.hoverreverse:hover, 

.bouton.boutonaccent.hoverreverse::after, 

.bouton.boutonaccent.hoverreverse:hover{

    --hoverbgc: var(--clr100);

    --c:var(--clr900);

}



.boutonreverse{

    --bgc:var(--clrkw900);

    --c:var(--clr100);

    --border:var(--clr100);

    --hoverbgc:var(--clrkw200);

    --borderleft:var(--c);

}



.boutonreversered{

    --bgc:var(--clr100);

    --c:var(--clr900);

    --border:var(--clr900);

    --hoverbgc:var(--clrkw200);

    --borderleft:var(--c);

}

.boutonreversered:hover svg{

    filter: brightness(0) invert(1) !important;

}

.boutonred{

    --bgc:var(--clrkw200);

    --c:var(--clr100);

    --border:var(--clrkw200);

    --hoverbgc:var(--clr900);

    --borderleft:var(--c);

}

.boutonred svg {

    filter: brightness(0) invert(1) !important;

}

.boutonred:hover svg{

    filter: brightness(0) invert(1) !important;

}





.bouton span:not(.icon){

    padding: .7rem 2rem;

    position: relative;

    z-index: 2;

}

.bouton.boutonicone span:not(.icon){

    padding-right: 0;

}

.bouton::after{

    content: "";

    width: 0%;

    height: 100%;

    position: absolute;

    right: 0;

    top: 0;

    background-color: var(--hoverbgc);

    z-index: 0;

    transition: all .4s;

    transition-delay: 0s;

    transition-timing-function: ease-in;

}



.bouton.boutonaccent::after{

    --hoverbgc:var(--clr900);

}



.bouton:has(.icon):hover::after{transition-delay: .1s;}



.bouton:hover::after{

    width: 100%;

}



.bouton .icon{

    padding: 0px 1.5rem 0 .75rem;

    display: flex;

    justify-content: center;

    align-items: center;

    transition: all .3s;

    position: relative;

    transform-origin: center;

    scale:1.2;

    z-index: 2;

    transition-delay: .4s;

}

.bouton.iconefront .icon{

    order:-1;

    padding: 0px .75rem 0 1.5rem;

}

.bouton.boutonicone.iconefront span:not(.icon){

    padding-left: 0;

    padding-right: 2rem;

}



.bouton.boutoniconeseul .icon{

    border-left: 0px solid var(--borderleft);

    transition-delay: 0s;

    padding: 1rem;

}

.bouton.boutoniconeseul .icon>*, .bouton.boutonaccent.hoverreverse:not(:hover) svg{

    transition-delay: 0s !important;

}



.bouton.boutonreverse.hoverreverse:hover svg, .bouton.boutonaccent.hoverreverse:hover svg{

    filter: invert(0) !important;

}





.bouton img, .bouton svg{

    max-width: 1rem;

    max-height: 1rem;

    transition: all .3s;

    transition-delay: .4s;

}



.boutonaccent img, .boutonaccent svg{

    filter: brightness(0) invert(0);

    transition: all .4s;

}

.boutonaccent:not(.iconnoreverse):hover img, 

.boutonaccent:not(.iconnoreverse):hover svg{

    filter: brightness(0) invert(1) !important;

}



.boutonreverse:not(.iconnoreverse):hover img, .boutonreverse:not(.iconnoreverse):hover svg, .boutonreverse img, .boutonreverse svg{

    filter: invert(1);

/*    transition-delay: 0s;*/

}



.bouton .googleico svg{

   filter: none !important; 

}



.boutonborder, .boutonborder:hover{

    border:1px solid var(--border);

}



/*

.scrolled  .bouton span:not(.icon){

    padding: 0.5rem 1rem;

    transition: padding .3s;

}

.scrolled  .bouton.boutonicone span:not(.icon){padding-right: 0;}

.scrolled .bouton .icon{

    scale:1;

    transition: scale .3s;

}

*/





/* TITRES */

.titre{

    display: block;

    font-weight: bold;

    font-size: 2.75rem;

    line-height: 1.2;

}

.titre2{

    display: block;

    font-weight: 600;

    font-size: 1.5rem;

    line-height: 1.2;

}

.titre.titrehero{

    display: block;

    font-size: 1.2rem;

    line-height: 1;

}

.innertitre{

    font-size: 65%;

    display: block;

}

.titresm, .blogpost h2{

    display: block;

    font-weight: bold;

    font-size: 1.5rem;

    line-height: 1.2;

}

form .titresm{

    margin-top: 2rem;

    margin-bottom: 1rem;

}



.titrep, .blogpost h3{

    display: block;

    font-size: 1.1rem;

    font-weight: bold;

   

}



/* CTAS FIXES */

.fixedctas{

    position: fixed;

    bottom: .5rem;

    right: .5rem;

    z-index: 990;

    transition: all .4s;

}



/*.fixedctas:has(+.scrolled){

    bottom: 1rem;

}*/



/* POPUP */

.popup{

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background-color: var(--clr900-700);

    z-index: 9981;

    display: none;

}

.popup>div{

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    display: grid;

    place-items:center;

    overflow: scroll;

    padding: 6.5rem 0 3rem;

}

.popup.galpopup>div{

    padding: 2.5rem 0;

}



.popup article{

    position: relative;

    padding: 3.5rem 6rem;

    width: min(60vw, 70rem);

    max-width: calc(100% - 2rem);

}



.popup.galpopup article{

    padding: 0;

    max-width: 90%;

    max-height: 100%;

    width: 100%;

    transition: width .4s;

}

.galslide{

    position: relative;

}



.galslide img{

    max-height: calc(95vh - 5.25rem);

    max-width: 100%;

    width: auto;

    object-fit: cover;

    object-position: center;

}



.galslide>div{

    position: absolute;

    bottom: 0;

    left: 0;

    width: 100%;

    padding: .75rem 1.5rem;

    background-color: var(--clr900-900);

    font-weight: 500;

    font-size: .9rem;

    text-shadow: 0px 0px 8px rgba(0,0,0,0.9),  0px 0px 2px rgba(0,0,0,0.9);

}

.galpages{

    position: absolute;

    bottom: 0;

    right: 0;

    padding: .75rem 1.5rem;

    font-weight: 500;

    font-size: .9rem;

    text-shadow: 0px 0px 8px rgba(0,0,0,0.9),  0px 0px 2px rgba(0,0,0,0.9);

}



.popup .close{

    position: absolute;

    top: 2rem;

    right: 2rem;

    width: 2rem;

    cursor: pointer;

    z-index: 99;

}



.popup .sectionreverse .close{filter: invert(1);}

.popup .sectionreverse .close:hover{filter: var(--filter-accent);}

.popup.galpopup .close{

    top: 1rem;right: 1rem;

}

.popup.galpopup .sectionreverse .close{

    filter: invert(1) drop-shadow(0 0 0.2rem rgba(0, 0, 0, 0.9));

}

.popup .titre{margin-bottom: 2rem;}



/* HEADER */

header{

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    padding: 1rem 0 1rem;

    z-index: 999;

    overflow: visible;

    transition: all .3s;

	background: #FFF;

	border-bottom: 1px solid var(--clr400);

}



header .bouton.langswitch {

    --bgc: transparent;

}



header .wrap.wide{

    max-width: 100%;

    padding: 0 1rem;

    display: flex;

    justify-content: space-between;

    gap: 0rem;

    align-items: center;

    background: #FFF;

    transition: all .3s;

}

/*header.scrolled .wrap.wide{

    box-shadow: 0 4px 45px rgba(0, 0, 0, 0.1);

    padding: 0.5rem 1rem;

}*/



header .logo{

    width: 13rem;

    margin-top: -.65rem;

    transition: all .3s;

}



/*header.scrolled .logo{

    width: 13.5rem;

    margin-top: 0;

    filter: drop-shadow(0px 0px 2px var(--clr100)) drop-shadow(0px 0px 8px var(--clr100)) drop-shadow(0px 0px 20px var(--clr100));

}*/



header .logo img{

    transition: all .4s;

}

.sidenav{

    display: flex;

    align-items: center;

    justify-content: flex-end;

    gap:1rem;

}



header nav{

    display: flex;

    justify-content: center;

    align-items: center;

    gap:1.75rem;

    margin-right: 1.75rem;

    margin-left: auto;

	text-transform: uppercase;

}



header nav a{

    text-decoration: none;

    font-size: .95rem;

    font-weight: 500;

    transition: all .3s;

}



/*header.scrolled nav a{

    font-size: .9rem;

}*/



header nav a.currentpage{

    color: var(--clrkw200);

    text-decoration: none;

}

header nav a:hover{

    text-decoration: underline;

}



.menuicocontainer{

    display: flex;

    justify-content: flex-end;

    align-items: center;

    gap:2rem;

    display: none;

}



.menuico{

    width: 2.5rem;

    padding: .5rem 0 .5rem .5rem;

    cursor: pointer;

    transition: all .4s;

}

.menuico.open path{

    d:path("M88.4,43l41.4-41.3c2.2-2,5.6-1.9,7.7,0.2c1.9,2.1,1.9,5.3,0,7.5L96.1,50.8l41.4,41.4c2,2.2,1.9,5.6-0.2,7.7c-2.1,2-5.3,2-7.5,0L88.4,58.5L47.1,99.8c-2.2,2-5.6,1.9-7.7-0.2c-1.9-2.1-1.9-5.3,0-7.5l41.4-41.4L39.4,9.4c-2.1-2.1-2.1-5.6,0-7.7s5.5-2,7.6,0l41.4,41.4V43z");

}



.menuico:hover{

}



/* NAVIGATION */



.navcontainer{

    overflow: hidden;

    display: none;

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    z-index: 998;

}



.navcomplete{

    position: fixed;

    padding-top: 5.375rem;

    padding-left: 6.5rem;

    padding-right: max(3.5rem, calc(50vw - 50rem));

    padding-bottom: 1rem;

    top: 0;

    right: 0;

    height: 100%;

    min-width: 40%;

    background-color: var(--clr900);

    color: var(--clr100);

    display: flex;

    flex-direction: column;

    justify-content: flex-end;

    gap:3rem;

    z-index: 998;

    translate:100% 0;

    transition: all .4s 0s;

}

.navcomplete.open{

    translate:0;

    transition: all .6s .6s;

}



.navcomplete::after{

    content: "";

    position: absolute;

    right: 100%;

    top: 0;

    height: 100%;

    width: 100dvw;

    background-color: var(--clr900);

    opacity: 0;

    z-index: -1;

    pointer-events: none;

    transition: right .4s 0, opacity .4s .4s;

}



.navcomplete.open::after{

    right: 0;

    opacity: .65;

    transition: right .6s .6s, opacity .6s 0s;

}



.navlinks a{

    font-size: 1.6rem;

    display: block;

    text-decoration: none;

    font-weight: bold;

    margin-bottom: 1rem;

}

.navlinks a.currentpage{color: var(--clr-accent);}

.navlinks a:hover, .navlinks a.currentpage{text-decoration: underline;}



.navlinks a.hide{display: none !important;}



.navsocials{

    display: flex;

    justify-content: flex-start;

    align-items: center;

    padding: 1rem 0;

    border-top:1px solid var(--clr400);

    gap:.5rem;

    margin-top: 5rem;

}

.navsocials .boutonsocial svg, .sectionaccent .boutonsocial svg{filter: invert(1);}





.boutonsocial svg{

    max-width: .8rem;

    max-height: .85rem;

    filter: var(--filter-accent);

    transition: all .4s;

}

.boutonsocial i {

	color: var(--clrkw200);

}

.boutonsocial:hover svg{filter: none;}





.boutonsocial{

    --color:var(--clrkw200);

    border-radius: 50%;

    border:2px solid var(--color);

    display: flex;

    justify-content: center;

    align-items: center;

    aspect-ratio:1;

    width: 2.1rem;

    transition: all .4s;

}

.boutonsocial span,

.navsocials .boutonsocial, .sectionaccent .boutonsocial{--color:var(--clr100);}





a.boutonsocial:hover {

    border:2px solid var(--clr900);

}

.sectionaccent .boutonsocial:hover{

    border:2px solid var(--clr900);

}

.footerbloc a.boutonsocial {

   text-decoration: none;

}

.boutonssharefiche a.boutonsocial i {

	color: var(--clrkw200);

    font-size: 13px;

    margin-bottom: 4px;

}

a.boutonsocial:hover i {

   color:var(--clr900);

}

a.boutonsocial {

   transition: all .1s;

}

a.boutonsocial span i {

	--color:var(--clr100);

}

a.boutonsocial.messagecopied {

    width: auto;

    aspect-ratio: auto;

    border-radius: 50px;

    padding: 1px 20px;

	white-space: nowrap;

}

a.boutonsocial #messagecopy {

	padding-left: 6px;

    font-size: 13px;

}

a.boutonsocial.boutonsocialcopy {

	text-decoration: none !important;

}

a.boutonsocial #shareButton {

	padding-left: 6px;

}

a.boutonsocial:hover span  {

   color:var(--clr100);

}

/* HERO */

.logo-banner {

	width: 95%;

    max-width: 400px;

    margin: 0 auto 15px;

}

.wrapper-beanner-video {

	position: relative;

	background: #000;

	height: 547px;

}

.hero video {

    display: block;

    width: 100%;

    opacity: .5;

	object-fit: cover;

}



.hero{

    position: relative;

}



.hero .wrap{

	position: absolute;

    top: 50%;

    left: 50%;

    translate: -50% -50%;

    text-align: center;

    box-sizing: border-box;

    padding: 50px;

    z-index: 99;

}



.heromedia{

    position: absolute;

    bottom: 0;

    left: 0;

    width: 100%;

    height: 100%;

    object-fit: cover;

    opacity: .6;

    z-index: 1;

}



.heroinner{

    position: absolute;

    top: 50%;

    left: 50%;

    width: calc(100% - 13rem);

    translate:-50% -50%;

    z-index: 2;

    display: flex;

    flex-wrap: wrap;

    justify-content: center;

    gap:1rem;

	color: #FFF;

}

.heroinner h1{

    margin-bottom: 1rem;

}

.heroinner p{

    font-size: 1.5rem;

    margin: 0;

}

.heroinner.heroinnerhome h1{

    font-weight: normal;

	margin-top: 1rem;

	margin-bottom: 0;

}



.heroinner.heroinnerhome .titre.titrehero {

    width: 100%;

	padding-left: 0 !important;

	padding-right: 0 !important;

    margin-bottom: 1rem;

}





.heroinner+.bouton{

    position: absolute;

    right: 4.5rem;

    bottom: 6rem;

    z-index: 2;

}



.hero-cta{

    position: absolute;

    bottom: 2rem;

    right: 2rem;

    z-index: 9;

}

.hero-cta .cornerInsideInner{

    display: flex;

    align-items: center;

    background-color: var(--clr100);

    

    color: var(--clr900);

}

.hero-cta img{

    aspect-ratio: 1;

    object-fit: cover;

    width: 8rem;

}

.hero-cta p{

    font-size: 1.325rem;

    font-weight: 600;

    padding: 1.5rem;

}

.bouton-plus{position: absolute;}



/* FOOTER */

/* FOOTER */

footer{

    background-color: var(--clr200);

    font-size: .85rem;

    padding-bottom: 0rem;

    padding: 1.5rem;

}



.sectioncta+footer{

    padding-top: 3rem;

    margin-top: -1.5rem;

}



footer > .wrap{

    display: grid;

    grid-template-columns: 1.2fr .85fr 1fr .95fr;

}



footer h3{

    font-weight: bold;

    font-size: 1.375rem;

    margin-bottom: 1.5rem;

    width: 100%;

}



.footerbloc{

    padding: 3rem 1.5rem;

}

.footerbloc:last-child{

    padding-right: 0;

}

.footerbloc a, .siteplan a:hover{

    text-decoration: underline;

}

.footerbloc a:hover, .siteplan a{text-decoration: none;}



.footerbloc a:hover, 

.siteplan a:hover{color: var(--clr-accent);}





footer .boutonsocial {

    --color: var(--clrkw200);

    color: var(--clrkw200);

    border: 1px solid var(--color);

}

footer .boutonsocial i {

    --color: var(--clrkw200);

    color: var(--clrkw200);

}



footer .footerbloc a.boutonsocial:hover {

	color: var(--clr900);

    border: 1px solid var(--clr900);

}

footer .footerbloc a.boutonsocial:hover i {

	color: var(--clr900);

}

.siteplan{

    padding: 3rem;

    padding-left: 0;   

}



.siteplaninner{

    display: flex;

    justify-content: flex-start;

    align-items: flex-start;

    flex-wrap: wrap;

    gap:0 5rem;

}



.siteplan ul{

    list-style-type: none;

    width: max-content;

    padding: 0;

    margin: 0;

    margin-bottom: 1.5rem;

}



.siteplan a{

    margin-bottom: .5rem;

    display: block;

    

}

.siteplan a:hover{text-decoration: underline;}



.footersocials{

    display: flex;

    justify-content: center;

    align-items: center;

    gap:1.75rem;

}



.footerbloc .footersocials {

	justify-content: left;

}

 

.innerfooter{

    border-top:1px solid var(--clr900);

    font-size: .75rem;

    padding: 2rem 0 1rem;

}



.innerfooter .wrap{

    display: flex;

    justify-content: space-between;

    align-items: center;

}



footer .logo{

    width: 12rem;

}



.innerfooter p a:last-child{

    color: var(--clr-accent);

}



/* CTA prÃ©-footer */

.cta-carriere .wrap{

    display: flex;

    justify-content: space-between;

    align-items: center;

    flex-wrap: wrap;

    gap:2rem;

    padding: 5rem 0 7rem;

}

.sectionpadding+.cta-carriere .wrap{padding-top: 1.5rem;}



.sectioncta{

    background-color: var(--clr400);

    padding: 5rem 0;

    margin-top: 0;

    position: relative;

}



.sectioncta:has( .tidycal-embed){padding-bottom: 0;margin-bottom: 4rem;}

.tidycal-embed{display: block;}

.sectioncta .titre{

    margin-bottom: 4.5rem;

}

.sectioncta .innertitre{

    max-width: 50ch;

    margin-left: auto;margin-right: auto;

    width: 100%;

}

.sectioncta .titresm{

    margin-bottom: 1.5rem;

}



.tacintro{

    text-align: center;

}

.tacintro>*{

    margin-left: auto;margin-right: auto;

}





/*  */

.sectionreverse{

    background-color: var(--clr900);

    color: var(--clr100);

}



.sectionborderb{

    border-bottom: 1px solid var(--clr900);

}

.sectionborder .wrap{

    border-right: 1px solid var(--clr900);

    border-left: 1px solid var(--clr900);

    padding-left: 2rem;

    padding-right: 2rem;

}

.sectionreverse.sectionborder .wrap{

    border-right: 1px solid var(--clr100);

    border-left: 1px solid var(--clr100);

}



.sectionmid{

    background-color: var(--clr400);

    color: var(--clr900);

}

.sectionlight{

    background-color: var(--clrkw300);

    color: var(--clr900);

	

	

}

.sectionlighter{

    background-color: var(--clr200);

    color: var(--clr900);

}

.sectionaccent{

    background-color: var(--clr400);

    color: var(--clr100);

}

.sectionwhite{

    background-color: var(--clr100);

    color: var(--clrkw900);

}

.sectionintro{

    padding: 5rem 0;

    margin-top: 1.5rem;

}



.halfcols{

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap:5rem;

}

.halfcols.third{

    grid-template-columns: 1.4fr 2fr;

    gap:1rem;

    align-items: start;

    margin-top: 4rem;

}

.halfcols.sixth{

    grid-template-columns: .4fr .6fr;

}

.halfcols.halftoleft{

    grid-template-columns: .85fr 1fr;

    gap:8rem;

}



.halfcolswlines{

    display: grid;

    grid-template-columns: 1fr 1fr;

    position: relative;

    border-right: 1px solid var(--clr900);

    border-left: 1px solid var(--clr900);

}

.sectionaccent .halfcolswlines, .sectionreverse .halfcolswlines{

    border-color: var(--clr100);

}



.sectiontemoignages .halfcolswlines{align-items: flex-end;}



.halfcolswlines::after{

    content: "";

    position: absolute;

    left: 50%;

    top: 0;

    height: 100%;

    translate:-50% 0;

    width: 1px;

    background-color: var(--clr900);

}

.sectionaccent .halfcolswlines::after, .sectionreverse .halfcolswlines::after{

    background-color: var(--clr100);

}



.aic{align-items: center;}

.ais{align-items: start;}



.halfcolswlines>div{

    padding: 7rem 2.5rem 3rem;

}

.tripcolswlines>div{

    padding: 3rem 2.5rem 2rem;

    border-right: 1px solid var(--clr900);

}



.tripcolswlines>div:nth-child(3n+1){

    border-left: 1px solid var(--clr900);

}





.tripcols{

    display: grid;

    grid-template-columns: 1fr 1fr 1fr;

    gap:3rem;

}

.tripcolswlines{

    display: grid;

    grid-template-columns: 1fr 1fr 1fr;

}



hr.sectionhr{

    border:0;

    height: 1px;

    width: 100%;

    background-color: var(--clr900);

    margin: 2rem auto;

}



hr.sectionhr.wrap{

    margin: 5rem auto;

}



.sectiontemoignages p{

    margin-top: 2rem;

    width: 100%;

    max-width: 60ch;

}



.sectiontemoignages p{margin-bottom: 3rem;}



.avantagesinner{

    margin-top: 3rem;

    display: grid;

    grid-template-columns: 1fr 1fr 1fr;

    gap:.75rem;

}



.avantagecard{

    background-color: var(--clr100);

    border:1px solid var(--clr100);

    padding: 3.5rem 2.5rem 3rem 2.5rem;

    position: relative;

    z-index: 2;

    transition: all .2s .1s;

}

.avantagecard.wimg{

    padding: 1rem;

}

.avantagecard.wimg>div{

    padding: 1.5rem 1.5rem 2rem 1.5rem;

}



.avantagecard.wimg img{

    aspect-ratio:4/2.6;

    object-fit: cover;

}



.sectionaccent .avantagecard{

    background-color: var(--clr900);

    border:0px solid var(--clr100);

}



.avantagecard:hover{

    /* color: var(--clr100); */

}



.boutonavantage::after{

    content: "";

    position: absolute;

    left: 0;

    top: 0;

    width: 0;

    height: 100%;

    background-color: var(--clr100);

    z-index: -1;

    transition: all .4s;

}

.avantagecard::after{

    content: "";

    position: absolute;

    left: 0;

    bottom: 0;

    width: 100%;

    height: 1.5rem;

    background-color: var(--clr700);

    z-index: -1;

    transition: all .2s;

    display: none;

}

.boutonavantage::after{

    background-color: var(--clr-accent);

}

.sectionaccent .boutonavantage::after{

    background-color: var(--clr900);

}



.avantagecard:hover::after, .boutonavantage:hover::after{

    width: 100%;

}

.avantagecard:hover::after{

    height: 100%;

}



.avantagecard .img{

    position: absolute;

    right: 1.5rem;

    top: 1.5rem;

    background-color: var(--clr700);

    width: 5rem;

    padding: 1.25rem;

    aspect-ratio:1;

}



.avantagecard .img img{

    filter: invert(1);

}



.avantagecard .lst{

    font-size: 5rem;

    font-weight: bold;

    line-height: 1;

    margin-bottom: 1rem;

}



.avantagecard h3{

    margin-bottom: 1.5rem;

}



.boutonavantage{

    border:1px solid var(--clr100);

    background-color: var(--clr100);

    padding: 1rem .25rem;

    text-align: center;

    color: var(--clr900);

    z-index: 2;

    position: relative;

    display: flex;

    justify-content: center;

    align-items: center;

    font-weight: bold;

    text-decoration: none;

    font-size: 1.1rem;

    transition: all .2s .1s;

}



.boutonavantage:hover{

    color: var(--clr100);

    border:1px solid var(--clr-accent);

}



.sectionaccent .boutonavantage:hover{

    border:1px solid var(--clr900);

}



.boutonavantage svg{

    position: absolute;

    bottom: 2rem;

    width: 1.85rem;

    height: 1.85rem;

    max-width: none;

    filter: var(--filter-accent);

    transition: all .2s .1s;

}



.boutonavantage:hover svg{

    filter: invert(1);

}



.sectiontemoignages .controlscontainer{margin-top: 0;}

.sectiontemoignages .wrap>p{margin-left: auto;margin-right: auto;}



.temoignagescontainer{

    background-color: var(--clr100);

    color: var(--clr900);

    padding: 3rem 0rem;

}

.sectionreverse .temoignagescontainer{background-color: var(--clr900);}

.temoignagescontainer.fullwtemoignages{

    border-radius: 1rem;

    overflow: hidden;

}

.temoignagescontainer>.temoignagesslider{

    display: grid;

    grid-template-columns: 1fr 1fr 1fr;

    gap:1rem;

}



.temoignagescontainer>.temoignagesslider>.temoignageslide{display: none;}

.temoignagescontainer>.temoignagesslider>.temoignageslide:nth-child(1), .temoignagescontainer>.temoignagesslider>.temoignageslide:nth-child(2), .temoignagescontainer>.temoignagesslider>.temoignageslide:nth-child(3){display: block;}

.temoignageslide{

    background-color: var(--clr200);

    padding: 3rem 2rem;

}



.temoignagescontainer p{

    margin-bottom: 1rem;

    margin-top: 1rem;

}



.temoignagescontainer p.author, .temoignageheader h4{

    font-weight: bold;

    font-size: 1.25rem;

    margin-top: 2rem;

    margin-bottom: 0;

}

.temoignageheader h4{

    margin-top: 0;

    margin-bottom: .5rem;

}



.temoignageheader{

    display: flex;

    justify-content: flex-start;

    align-items: center;

    gap:1.5rem;

    margin-bottom: 1.25rem;

}



.temoignageheader .note{

    --nb:5;

    height: 1.5rem;

    width: calc(var(--nb) * 1.5rem + (.3rem * round((var(--nb)) - 1)));

    background-image: url("../images/essentials/etoile.png");

    background-size: auto 100%;

    background-repeat: repeat-x;

}

.temoignageheader .note.etoiles0point5{--nb:.5;}

.temoignageheader .note.etoiles1{--nb:1;}

.temoignageheader .note.etoiles1point5{--nb:1.5;}

.temoignageheader .note.etoiles2{--nb:2;}

.temoignageheader .note.etoiles2point5{--nb:2.5;}

.temoignageheader .note.etoiles3{--nb:3;}

.temoignageheader .note.etoiles3point5{--nb:3.5;}

.temoignageheader .note.etoiles4{--nb:4;}

.temoignageheader .note.etoiles4point5{--nb:4.5;}

.temoignageheader .note.etoiles5{--nb:5;}



.temoignageheader .img{

    position: relative;

    aspect-ratio:1;

    border-radius: 50%;

    overflow: hidden;

    width: 5.5rem;

}



.temoignageheader .img img{

    position: absolute;

    top: 0;left: 0;

    width: 100%;

    height: 100%;

}



.controlscontainer{

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-top: 3rem;

    gap:1.5rem;

}



.sectionproprietes .boutonscontrols{width: 100%;justify-content: space-between;}



.controlscontainer p{

    opacity: .6;

    font-weight: bold;

    font-size: 1.1rem;

    margin: 0;

}



.boutonscontrols{

    display: flex;

    justify-content: flex-end;

    align-items: center;

    gap:1rem;

}



.galpopup .boutonscontrols{

    position: absolute;

    top: 50%;

    left: 0;

    width: 100%;

    justify-content: space-between;

    padding: 1rem;

    translate:0 -50%;

    z-index: 99;

}

.galpopup .sectionreverse .boutonscontrols{

    filter: drop-shadow(0 0 0.2rem rgba(0, 0, 0, 0.9));

}



.boutonscontrols a{

    width: 2.5rem;

    background-color: var(--clrkw200);

    border-radius: 50%;

    transition: all .2s;

}



.boutonscontrols a svg, .sectionreverse .boutonscontrols a:hover svg{filter: invert(1);}



.galpopup .boutonscontrols a{width: 2rem;}



.boutonscontrols a:hover{background-color: var(--clr900);}

.sectionreverse .boutonscontrols a{

    background-color: var(--clr100);

}

.sectiontemoignages.sectionreverse .boutonscontrols a{

    background-color: var(--clr-accent);

}

.sectionreverse .boutonscontrols a:hover{

    background-color: var(--clr-accent);

}

.sectiontemoignages.sectionreverse .boutonscontrols a:hover{

    background-color: var(--clr100);

}

.sectionreverse:not(.sectiontemoignages) .boutonscontrols a svg, .sectiontemoignages.sectionreverse .boutonscontrols a:hover svg{filter: none;}



.boutonscontrols a.prev{

    scale:-1 1;

}



.sliderproprietescontainer{

    padding-left: max(calc(50vw - 40.625rem), 1.5rem);

    overflow: hidden;

    margin-top: 3rem;

}

.sliderproprietes{

    display: flex;

    align-content: stretch;

}

.sliderproprietescontainer>.sliderproprietes{

    display: grid;

    grid-template-columns: 1fr 1fr;

    width: calc(100% / 3 * 3.75);

}

.sectionproprietes .controlscontainer{

    padding-left: max(calc(50vw - 40.625rem), 1.5rem);

    padding-right: max(calc(50vw - 40.625rem), 1.5rem);

}



.sliderproprietescontainer>.sliderproprietes>a.proprieteitem:not(:first-child):not(:nth-child(2)){display: none;}



.sliderproprietescontainer .bx-viewport{

}



.sliderproprietescontainer>.sliderproprietes>a.proprieteitem{

    border-right:0;

}

a.proprieteitem{

    display: block;

    text-decoration: none !important;

    cursor: pointer;

    padding-right: 4rem;

    transition: all .4s;

}



a.proprieteitem:hover{

    color: var(--clrkw200);

}



a.proprieteitem h3, a.proprieteitem p{margin-bottom: 0;}



a.proprieteitem .img{

    position: relative;

    margin-bottom: 1.5rem;

}

a.proprieteitem .img img{

    --br:1rem;

    aspect-ratio:8/5;

    object-fit:cover;

    object-position:center;

    transition:all .3s;

}



a.proprieteitem:hover .img img{

    opacity: .7;

}

a.proprieteitem .prix{

    position: absolute;

    left: 0;

    top: 1.5rem;

    background-color: var(--clrkw900);

    color: var(--clr100);

    font-weight: bold;

    padding: .5rem 1.5rem;

    z-index: 2;

    border-bottom-right-radius: .85rem;

    border-top-right-radius: .85rem;

}



a.proprieteitem .prix.vendu{

    background-color: var(--clr-sold);

    background-color: var(--clr900);

}



a.proprieteitem .vltag{

    position: absolute;

    left: 1rem;

    top: 1rem;

    background-color: var(--clr100);

    color: var(--clr900);

    font-weight: 500;

    font-size: .85rem;

    padding: .45rem 1rem;

    z-index: 2;

    border-radius:50vh;

}

a.proprieteitem .vltag::first-letter{text-transform: uppercase;}

a.proprieteitem .vltag+.vltagvisit {

	top: 3.5rem;

    background-color: var(--clr-accent);

}



.propinfos{

    display: flex;

    justify-content: space-between;

    align-items: flex-end;

    flex-wrap: wrap;

}



.propinfos h3+p{

    margin-bottom: 1rem;

}

.propinfos h3+p+p{

    color: var(--clr700);

}

.sliderproprietescontainer .propinfos h3+p+p{

    color: var(--clr900-900);

}

.sectionproprietes{

    padding: 5rem 0rem 5rem;

}



.sectionproprietes a.bouton{float: right;}



.sectionproprietes h2{

    margin-bottom: 1rem;

}



.sectionvideointro .wrap{

    padding-top: 5rem;

    padding-bottom: 6rem;

}



.sectionvideointro h1{

    margin-bottom: 4rem;

}



.video{

    border-radius: .75rem;

    overflow: hidden;

    width: 100%;

    aspect-ratio:16/9;

    position: relative;

}



.video.videomid{max-width: 40rem;}



.video>*{

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

}

.sectioncontent li{margin-bottom: .5rem;}

.sectioncontent ul{margin-bottom: 1.5rem;}



.sectioncontent p, .sectioncontent h2, .sectioncontent h3, .sectioncontent .video, .sectioncontent h1.titre{

    margin-bottom: 1.5rem;

}



.sectioncontent .wrap>p{

    max-width: 75ch;

}

.sectioncontent.tac .wrap>p, .sectioncontent .wrap>p.tac{

    margin-left: auto;

    margin-right: auto;

}



.sectionpadding{

    padding-top: 5rem;

    padding-bottom: 4rem;

}

.sectionpaddingtop{

    padding-top: 5rem;

}

.sectionwidepadding{

    padding-inline: 2.5rem;

}



.sectiongap{

    margin-top: 1.5rem;

}



img.pretxticon{

    max-width: 6.5rem;

    margin-bottom: 3rem;

}



.stats{

    display: grid;

    grid-template-columns: repeat(2,1fr);

    gap:1rem;

}



.stats .stat{

    padding: 0;

}

.stats .stat p{margin-bottom: 0;margin-top: 1.5rem;font-size: .9rem;}

.stats .statnum{

    font-size: 2.125rem;

    line-height: 1;

    font-weight: 600;

}

.stats .statnum span{

    font-size: 4rem;

    line-height: 1;

}

.sideaccordeon{

    --maxw:1250px;

    margin-top: 4rem;

    display: flex;

    justify-content: flex-start;

    align-items: stretch;

}

.sideaccordeon.altsa{

    border-radius: 1rem;

    border:1px solid var(--clr400);

    overflow: hidden;

    background-color: var(--clr100);

}



.sectionreverse .sideaccordeon.altsa, .sectionreverse .altsa .satitre{

    border-color: var(--clr100);

}



.saitem{

    position: relative;

    padding: 1rem 0;

    display: grid;

    grid-template-columns: 4rem 1fr;

    border-right: 1px solid var(--clr400);

    width: 4rem;

    overflow: hidden;

    min-height: 15rem;

    transition: background-color .3s .2s, width .4s, min-height .2s;

}



.altsa .saitem{

    padding: 3rem 0rem 0;

}



.saitem.open{

    width: var(--maxw);

}



.altsa .saitem.open{

}



.saitem.open .clr900{

    color: var(--clr-accent) !important;

}



.satrigger{

    cursor: pointer !important;

    position: relative;

    z-index: 2;

}



.satitre{

    font-size: 3rem;

    font-weight: bold;

    text-align: center;

    line-height: 1;

    color: var(--clr-accent);

}



.satitre img, .satitre svg{

    max-width: 55%;

    margin: 0 auto;

}



.sectionreverse .altsa .satitre img, .sectionreverse .altsa .satitre svg{

    filter:invert(1);

}



.sectionreverse .altsa .open .satitre img, .sectionreverse .altsa .open .satitre svg{

    filter:none;

}



.altsa .satitre{

    border-right: 1px solid var(--clr400);

}



.saclose{

    transform-origin: center;

    rotate:-45deg;

    position: absolute;

    bottom: 1rem;

    right: 1.25rem;

    width: 1.5rem;

    transition: all .4s;

}



.saitem.open .saclose{

    filter: var(--filter-accent);

    rotate:0deg;

}



.sainner{

    overflow: hidden;

    display: flex;

    justify-content: flex-start;

    align-items: flex-start;

    gap:1.5rem;

    padding: 1rem 1rem 3rem;

    position: absolute;

    max-width: calc(100% - 4rem);

    left: 4rem;

    opacity: 0;

    transition: opacity 0s 0s

}



.altsa .sainner{

    display: block;

    padding: 3rem 1.5rem 1rem;

}



.open .sainner{

    opacity: 1;

    transition: opacity .3s .3s

}



.sainner>*:first-child{

    min-width: 30%;

    line-height: 1.4;

}



.sainner>div{

    margin-top: .75rem;

}



.sainner .media{

    margin-top: 0;

    border-radius: .8rem;

    overflow: hidden;

    max-width: 70%;

    margin-bottom: 1.5rem;

}



.logogrid{

    display: grid;

    align-items: center;

    grid-template-columns: repeat(4,1fr);

    gap:.75rem;

    margin-top: 6rem;

    margin-bottom: 4rem;

}

.logoitem{

    background-color: var(--clr100);

    display: flex;

    justify-content: center;

    align-items: center;

    padding: 3rem 2.5rem;

}



.logoitem img{

    width: auto;

}



.cartevendues{

    position: relative;

    width: 65%;

    height: 26rem;

    margin-top: 4rem;

    margin-left: auto;margin-right: auto;

}



.cartevendues>*{

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

}



.pageintro .wrap{

    padding: 6rem 0;

}



.pageintro h1{

    grid-column: 1 / 3;

}



a.morea:hover{

    text-decoration: none;

}



a.morea+div{

    padding-top: 1.5rem;

    display: none;

}



.courtierminiinner{

    display: flex;

    justify-content: space-between;

    align-items: flex-start;

}



.courtiermini img{

    margin-bottom: 1.5rem;

    width: 100%;

    aspect-ratio:1;

    object-fit: contain;

    object-position: center;

}



.courtierminiinner a.bouton{flex-shrink: 0;}



.courtierminiinner h3{margin-bottom: 0;}

.courtierminiinner h4{

    font-weight: 300;

    font-size: .75rem;

}



.wrap.courtierbio .titresm {

	font-size: 1rem;

	font-weight: 600;

	margin-bottom: 1rem;

}

.brokerlinks {

	display: flex;

    flex-wrap: wrap;

    gap: 20px;

	margin-bottom: 1.5rem;

}

.brokerlinks a {

	text-decoration: none;

}

.brokerlinks a:hover {

	color: var(--clrkw200);

	text-decoration: none;

}

.brokerlinks i {

	display: inline-block;

	margin-right:5px;

}

.courtierbio .boutons{

    justify-content: flex-start;

    margin-top: 3rem;

}



.courtierbio .txt{

    padding: 3rem 0;

}



.courtiercontact h2{margin-bottom: 3.5rem;}



.sectiongal, .sectiongal>div:not(.img){

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap:1rem;

}



.sectiongal{margin-bottom: 5rem;padding-left: 1.5rem;padding-right: 1.5rem;margin-top: 5rem;}



.sectiongal .img{

    aspect-ratio:1;

    position: relative;

}



.sectiongal img{

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    object-fit: cover;

}



.titremidline{

    margin-top: 4.5rem;

}



.titremidline h4{

    font-weight: 300;

    font-size: 1rem;

    margin: 0;

}

.titremidline hr{

    width: 100%;

    border:0;

    background-color: var(--clr400);

    opacity: .8;

    height: 1px;

    margin: 1rem 0;

}



.accordeontrigger{

    padding: 1.25rem 0;

    display: flex;

    justify-content: space-between;

    align-items: center;

    cursor: pointer;

    flex-wrap: nowrap;

}



.accordeontrigger svg{

    width: 2rem;

}

.accordeontrigger.open svg{

    rotate:45deg;

}

.accordeontrigger>*{margin: 0 !important;}



.accordeoncontent{display: none;}



.accordeoncontent .halfcols{

    padding-bottom: 2rem;

    padding-top: 2rem;

    gap:1rem 5rem;

}

.accordeoncontent h4{

    border-bottom: 1px solid #000;

    font-weight: 400;

    font-size: 1.2rem;

    padding-bottom: .75rem;

    margin-bottom: 1.25rem;

}



.accordeoncontent a.bouton{

    margin-left: auto;

    margin-top: 3rem;

}



.sectionmid:has(.accordeontrigger.open){

    background-color: var(--clr300);

}



/* Round steps list */

.roundsteps{

    display: grid;

    grid-template-columns: 40% 60%;

}

.rslist{

    list-style-type: none;

    display: flex;

    flex-direction: column;

    justify-content: center;

}

.rslist li{

    counter-increment: step-counter;

    cursor: pointer;

    padding:1rem 1.5rem;

    font-weight: bold;

    margin-bottom: 0;

    font-size: 1.1rem;

    color: var(--clr700);

    transition: all .4s;

}

.rslist li::before{

    content: counter(step-counter) ".";

    margin-right: .5rem;

    display: inline-block;

}



.rslist li:hover, .rslist li.currentrs{

    color: var(--clr-accent);

}



.rslist li svg{

    width: 1.85rem;

    margin-left: auto;

    transition: all .4s;

}



.rslist li:hover svg, .rslist li.currentrs svg{

    filter: var(--filter-accent);

}



.rsmain{

    position: relative;

    aspect-ratio:1;

    display: grid;

    place-items:center;

}



.rscircle{

    aspect-ratio:1;

    width: calc(100% - 15rem);

    border-radius: 50%;

    border:.5rem solid var(--clr700);

    position: absolute;

    z-index: 2;

}

.rsicon{

    position: absolute;

    height: 100%;

    left: 50%;

    transform-origin: center;

    rotate:var(--deg);

}

.rsiconinner{

    position: absolute;

    top: 0;

    left: 50%;

    translate:-50% -50%;

    background-color: var(--clr700);

    display: grid;

    place-items:center;

    border-radius: 50%;

    width: 5.5rem;

    aspect-ratio:1;

    cursor: pointer;

    rotate:calc(-1 * var(--deg));

    transition: background-color .3s;

    

}

.rsiconinner:hover, .currentrs .rsiconinner{

}

.rsiconinner>*{

    width: calc(100% - 3rem);

    opacity: .8;

    transition: all .3s;

}

.rsiconinner:hover>*, .currentrs .rsiconinner>*{

    filter: var(--filter-accent);

    opacity: 1;

}

.rsiconinner>*{

    filter: invert(1);

    opacity: 1;

}



.rsinnercircle{

    width: calc(100% - 22rem);

    position: relative;

    aspect-ratio:1;

    text-align: center;

    list-style-type: none;

}

.rscontent{

    counter-increment: step-counter;

    position: absolute;

    padding: 3rem 2.5rem;

    width: 100%;

    top: 50%;

    left: 0;

    transform-origin: center;

    translate:0 -50%;

    scale:.01 .01;

    opacity: 0;

    rotate:15deg;

    transition: all .4s 0s;

}

.rscontent.currentrs{

    scale:1 1;

    opacity: 1;

    rotate:0deg;

    transition: all .4s .2s;

}

.rscontent::before{

    content: counter(step-counter) ".";



    font-weight: bold;

    display: block;

    font-size: 4rem;

}



.faqaccordeon{

    margin-top: 4rem;

}



.faqaccordeon .accordeontrigger svg{

    transition: all .2s;

}



.faqaccordeon .accordeontrigger{

    border-bottom: 1px solid var(--clr900);

    padding-left: 1rem;

    padding-right: 1rem;

    transition: all .2s;

}



.faqaccordeon .accordeontrigger:hover{

    color: var(--clrkw200);

}

.faqaccordeon .accordeontrigger.open{border:0;}

.faqaccordeon .accordeontrigger:hover svg, .faqaccordeon .accordeontrigger.open svg{

    filter:var(--filter-accent);

}



.faqaccordeon .accordeoncontent{

    padding: 1rem 1rem 1.5rem;

    border-bottom: 1px solid var(--clr900);

}

.faqaccordeon .accordeoncontent p{

    width: 80ch;

    max-width: 100%;

}



.checkboxgrid{

    display: grid;

    grid-template-columns: 1fr 1fr 1fr;

    gap:.75rem 1rem;

    width: 65%;

    margin-bottom: 2rem;

}



/* propriÃ©tÃ©s */



.propfilters{

    padding: 0px 2rem;

}

.propfiltersinner{

    margin-top: 2.5rem;

    margin-bottom: 4rem;

    display: flex;

    justify-content: space-between;

    align-items: flex-start;



    gap:1rem;

}

.propfiltersinner label.titrep{

    display: block;

    margin-bottom: .5rem;

}

.propfiltersinner .selectelement, .propfiltersinner button{

    margin-top: 2rem;

}

.propfiltersinner input.afftoggle+label{margin-top: .5rem;}

.propfiltersinner button{flex-shrink: 0;}



.propfiltersinner .selectelement{max-width: 13.5rem;}

/* Double range input */

.doublerange{

    

    flex-grow: 1;

    display: flex;

    justify-content: space-between;

    align-items: center;

    flex-wrap: wrap;

    padding-left: .5rem;padding-right: .5rem;

}

.drcontainer{

    position: relative;

    width: 100%;

    padding: .35rem 0rem;

    margin-top: .75rem;

}

.drtrack{

    width: 100%;

    height: .5rem;

    border:1px solid var(--clr200);

    background-color: var(--clr-accent-400);

    position: relative;

    border-radius: 2px;

}

.drtrackinner{

    --left:0%;

    --width:100%;

    position: absolute;

    background-color: var(--clr-accent);

    top: 0;

    left: var(--left);

    width: var(--width);

    height: 100%;

}

.drhandle{

    --curr:0%;

    --max:0%;

    width: 1.2rem;

    border-radius: 50%;

    aspect-ratio:1;

    background-color: var(--clr200);

    border:4px solid var(--clr-accent);

    position: absolute;

    top: 0;

    left: max(var(--curr),var(--max));

    cursor: pointer;

    z-index: 2;

    translate:-50% 0;

}



.drhandle:last-child{

    --curr2:100%;

    --min:100%;

    left: min(var(--curr2),var(--min));

}



.drhandle:active{border-width: 3px; scale:1.1;}



input.drinputresult{

    border:0 !important;

    padding: 0 !important;

    background-color: transparent !important;

    width: auto !important;

    text-align: right;

    margin-bottom: .25rem !important;

    max-width: 9.25rem;

}



.propfiltersinner2{

    flex-shrink: 0;

    display: flex;

    gap:2rem;

    align-items: flex-end;

    justify-content: flex-end;

}



a.reset{

    font-size: .8rem;

    margin-bottom: .5rem;

}

a.reset:hover{text-decoration: none;}



.propgrid{

    display: grid;

    grid-template-columns: 1fr 1fr 1fr;

    gap:1rem;

}



.propgrid:has(>p:first-child:last-child){

    text-align: center;

    display: block;

    padding: 5rem 0 0;

    font-weight: bold;

}



.propfilters:has( input[value="liste"]:checked) ~ .propgrid{

    display: block;

}



.propgrid .proprieteitem{

    padding-left: 0;

    padding-right: 0;

    border-left: 0;

}



.propfilters:has( input[value="liste"]:checked) ~ .propgrid .proprieteitem>.cornerInsideInner{

    display: grid;

    grid-template-columns: 40% 60%;

}

.propfilters:has( input[value="liste"]:checked) ~ .propgrid .propinfos{

    align-items: center;

    padding-left: 2rem;

}

.minidescription{

    display: none;

}

.propfilters:has( input[value="liste"]:checked) ~ .propgrid p.minidescription{

    display: block;

    margin-bottom: 1.5rem;

    font-size: .85rem;

    margin-bottom: 0;

    margin-top: 1rem;

}

.propfilters:has( input[value="liste"]:checked) ~ .propgrid .propinfos h3+p{

    margin-bottom: .5rem;

}



.propfilters:has( input[value="liste"]:checked) ~ .propgrid .bouton{display: none;}



.propfilters:has( input[value="liste"]:checked) ~ .propgrid a.proprieteitem{margin-bottom: 1.5rem;}





/* pager */

.pager{

    list-style-type: none;

    display: flex;

    justify-content: flex-end;

    align-items: center;

    gap:1rem;

    padding: 4rem;

    padding-bottom: 0;

	flex-wrap: wrap;

}



.pager li a{

    display: block;

    background-color: var(--clr100);

    color: var(--clr900);

    border:1px solid var(--clr900);

    width: max-content;

    text-decoration: none;

    font-size: .75rem;

    line-height: 1.75rem;

    text-align: center;

    width: 1.75rem;

    aspect-ratio:1;

    transition: all .4s;

}

.pager li a:hover, .pager li a.currpager{

    border-color: var(--clr900);

    background-color: var(--clr900);

    color: var(--clr100);

}



.pager li:first-child a, .pager li:last-child a{

    background-color: transparent;

    border:0px;

    width: 1.75rem;

    aspect-ratio:auto;

}

.pager li:first-child a:hover, .pager li:last-child a:hover{

    filter: var(--filter-accent);

}





/* multiselect */



.multiselect{

    background-color: var(--clr100);

    border:1px solid var(--clr900);

    position: relative;

    margin-top: .5rem;

    color: var(--clr900);

    width:max-content;

    min-width: 75%;

}

.mssearchbar{

    position: relative;

    padding: .75rem 1rem;

    overflow: hidden;

    padding-right: 3rem;

    display: flex;

    justify-content: flex-start;

    align-items: center;

    min-height: 3.5rem;

    gap:.5rem;

    flex-wrap: wrap;

}

.mssearchbar::after{

    content: "";

    position: absolute;

    height: 100%;

    aspect-ratio:1;

    border-bottom: 1px solid var(--clr900-100);

    top: 0;

    right: 0;

    background-image: url(/images/essentials/fleche.svg);

    background-size: 1.4rem auto;

    background-position: center;

    background-repeat: no-repeat;

    rotate:90deg;

    cursor: pointer;

    background-color: var(--clr100);

}

.msplaceholder{

    font-weight: bold;

    font-size: .9rem;

}

.msplaceholder:not(:last-child){display: none;}

.mslist{

    position: absolute;

    bottom: -1px;

    translate:0 100%;

    background-color: var(--clr100);

    width: 100%;

    left: 0;

    padding: 1.5rem;

    display: none;

    max-height: 13rem;

    overflow: scroll;

    z-index: 2;

}



.mslist label{

    width: 100%;

    align-items: center !important;

    margin-bottom: 0 !important;

    font-weight: bold;

    font-size: .9rem !important;

}



.mslist label:not(:last-child){margin-bottom: .75rem !important;}



.mslist input[type=checkbox]+label::before{

    filter: none;

    border:1px solid var(--clr900);

    background-color: var(--clr100);

    background-image: none;

    margin-top: 0;

    

}

.mslist input[type=checkbox]:checked+label::before{

    background-color: var(--clr-accent);

}



.msselected{

    position: relative;

    border:1px solid var(--clr900);

    font-size: .9rem;

    font-weight: bold;

    padding: .25rem .5rem;

    padding-right: 2.5rem;

    

}

.msselected::after{

    content: "";

    position: absolute;

    cursor: pointer;

    background-image: url(/images/essentials/fermer.svg);

    background-size: .625rem auto;

    width: .625rem;

    height: .625rem;

    right: .5rem;

    top: 50%;

    translate:0 -50%;

}

.msselected:hover::after{

    filter: var(--filter-accent);

}

.blogfiltersinner .mslist {

	overflow: auto;

    background-color: #FFF;

    border: 1px solid var(--clr900-100);

    bottom: 0px;

	padding: 1rem;

}

.blogfiltersinner .mslist label {

	font-weight: normal;

}



/* Blogue */ 

.blogfiltersinner{

    margin-top: 2rem;

    text-align: center;

}

.blogfiltersinner > label {

	padding-bottom: 10px;

    display: inline-block;

}

.blogfiltersinner .multiselect {

    width: 400px;

    max-width: 100%;

    margin: 0 auto;

    min-width: auto;

	border: 1px solid var(--clr900-100);

}

.blogfilters {

	margin-bottom: 4rem;

}

.blogtitle {

	text-align: center;

}

.blogelement-text {

	border: 1px solid var(--clr400);

    background: #FFF;

    padding: 1.5rem;

}

.blogelement-text .tags {

	margin: 0;

}

.bloglink h2.titresm {

    margin-top: 10px;

    margin-bottom: 10px;

}

.blogelement-img {

	background-color: var(--clrkw900);

}

.blogelement img{

    width: 100%;

    aspect-ratio:7 / 4.5;

    object-fit: cover;

    transition: all .4s;

}





.blogelement-img a:hover{

    opacity: .8;

}

a.bloglink:hover h2.titresm { 

	color: var(--clrkw200);

}

.blogtext {

	font-size: 0.94rem;

}

.blogelement a{

    text-decoration: none;

    transition: all .4s;

}



.tags{

    display: flex;

    justify-content: flex-start;

    align-items: center;

    gap:.75rem;

    margin: 1.5rem 0;

}



.blogtag{

    padding: .3rem 0.8rem;

    cursor: pointer;

    border-radius: 50vh;

    font-size: 14px;

	color: var(--clrkw200);

}

.blogelement-text-header {

	display: flex;

    gap: 10px;

    justify-content: space-between;

    align-items: self-start;

}

.blogdate {

	font-size: 14px;

    padding-top: 5px;

}

p.date:has( + .blogpost){

    margin-top: 2rem;

    font-weight: 600;

}



.blogpost{

    padding: 0px 4.5rem;

    margin-top: 3rem;

}



.blogpost img{

    margin: 0 auto 4rem;

}



.blogpost a.bouton{margin-top: 3rem;}



.blogpost h2{margin-bottom: 2.5rem;}



.formulaireMerci{

    margin: 0;

    padding: 1rem;

    text-align: center;

    font-weight: bold;

    width: 100%;

    border:1px solid var(--clr-accent);

    display: none;

}

.form2cols .formulaireMerci{grid-column: 1/3;}



.grecaptcha-badge{display: none !important;}



.boutoncalcul{margin-top: 2.5rem;}

.boutoncalcul span:first-child{

    min-width: 10rem;

    text-align: left;

}

.boutoncalcul:not(:hover){

    --bgc:var(--clr900);

}



.calcinput, .tabscontent .selectelement{

    position: relative;

    margin-bottom: 1.5rem;

}

.calcinput input, .tabscontent .selectelement select{

    border-radius: 3px;

    margin-bottom: 0 !important;

}

.calcinput::after, .calcinput::before{

    content: "";

    display: grid;

    place-items:center;

    position: absolute;

    right: .5px;

    top: 50%;

    translate:0 -50%;

    height: calc(100% - 1px);

    width: 6rem;

    text-align: center;

    color: var(--clr900);

    background-color: var(--clr-accent);

    background-color: var(--clrkw300);

    border-radius: 3px;

    pointer-events: none;

}

.calcinput:focus-within::after{

    height: calc(100% - 2px);

    right: 1px;

    width: calc(6rem - 1px);

}

.calcinput::before{

    background-color: transparent;

    z-index: 2;

}

.calcinputmoney::after{content: "$";}

.calcinputpercent::after{content: "%";}

.calcinputtime::before{

    background-image: url(/images/essentials/calendrier.svg);



    background-position: center;

    background-repeat: no-repeat;

    background-size: 1.5rem auto;

}



input.calcdisabled{

    font-size: 2rem !important;

    font-weight: bold !important;

    color: var(--clr900) !important;

    background-color: transparent !important;

    border-color:transparent !important;

    text-align: center !important;

    padding: .25rem !important;

    margin-bottom: 0 !important;

}

.tabscontent>div{display: none;}

.tabscontent>div>div{

    display: grid;

    gap:1rem;

    grid-template-columns: 6.5fr 4fr;

}



.calccols{

    display: grid;

    grid-template-columns: 2fr 1.5fr;

    gap:1.5rem 1rem;

}



.calccols .calcinput, .calccols .selectelement{margin-bottom: 0;}



.tabscontent label{

    margin-bottom: 1rem;

    display: block;

    font-size: .9rem;

}

.calcresult p{margin-bottom: .5rem;}

.calcresult .result{

    font-size: 2.5rem;

    font-weight: bold;

}

.calcresult p.mention{

    font-size: .8rem;

}

.calccta{

    margin-top: 2.5rem;

    padding: 3rem 2rem;

}



.tabslabel{

    list-style-type: none;

    display: grid;

    grid-template-columns: 1fr 1fr 1fr;

    gap:2px;

    padding-left: 0;

    margin: 0;

    margin-bottom: 2.5rem;

}

.tabslabel li{

    cursor: pointer;

    background-color: var(--clrkw900);

    color: var(

    --clr100);

    padding: .75rem .25rem;

    text-align: center;

    font-weight: bold;

    font-size: 1.1rem;

    transition: all .4s;

}



.tabslabel li.open, .tabslabel li:hover{

    background-color: var(--clrkw200);

}



.txt:has( img.ballontitre){

    position: relative;

    padding-right: 1.5rem;

    padding-top: 1.5rem;

}

img.ballontitre{

    width: 4.5rem;

    position: absolute;

    top: 0;

    right: 0;

}



.sectionavcta .media{

    background-color: var(--clr900);

    padding: 2rem;

}

.sectionavcta .media iframe{

    display: block;

    width: 100%;

    aspect-ratio:.56;

    height: auto !important;

}



.avcard{

    background-color: var(--clr200);

    position: relative;

    padding: 2rem 3rem;

    font-size: .85rem;

}



.avcard+.avcard{margin-top: 1rem;}



.avcard::after{

    content: "";

    position: absolute;

    left: 0;

    bottom: 0;

    height: 100%;

    width: 1.25rem;

    background-color: var(--clr900);

    z-index: 0;

    transition: all .4s 0s;

}



.avcard:has( .bouton:hover){

    color: var(--clr100);

    transition: all .4s .2s;

}



.avcard>*{position: relative;z-index: 1;}



.avcard:has( .bouton:hover)::after{width: 100%;transition: all .4s .2s;}



.avcard+.avcard::after{

    left: auto;

    right: 0;

}



.avcard li{margin-bottom: 0;}



.undertem{

    display: flex;

    justify-content: space-between;

    align-items: center;

    

}



.undertem p{

    width: auto;

    margin-top: 0;

    margin-bottom: 0;

}



.undertem p+a.bouton{

    margin-right: auto;

    margin-left: 2rem;

}



.frbtn{float: right;}



.contactintro form{

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

    align-items: flex-start;

    margin-top: 5rem;

}



.contactintro form .formelement{

    width: calc(50% - .5rem);

}

.contactintro form .formelement:has( textarea){width: 100%;}



.showmobile{display: none !important;}



.bouton span.hidemobile{padding: 0;}







.temoignagesslider_wrapper {

	display: flex;

    gap: 15px;

}

.temoignagesslider_wrapper  .temoignageslide {

    flex: 0 0 calc(33.33% - 10px);

}









.liste-avantages{padding-left: 0;}

.liste-avantages li{

    list-style-type: none;

    background-color: var(--clr300);

    border:1px solid var(--clr400);

    margin-bottom: 2rem;

    padding: 2rem;

}



.liste-avantages img{

    width: 3.125rem;

    margin-bottom: 1.5rem;

}

.liste-avantages p{margin-bottom: 0;font-size: 1.125rem;}



.liste-avantages+.bouton{

    display: flex;

    width: max-content;

    margin-left: auto;margin-right: auto;

}



.cta-av{

    --sizew:16.25rem;

    --sizeh:3.25rem;

    position: relative;

    font-size: 1.125rem;

    margin-top: 4rem;

}

.cta-av+.cta-av{margin-top: 3rem;}



.cta-av .cornerInsideInner{

    --sizew:16.25rem;

    --sizeh:3.25rem;

    background-color: var(--clr100);

    /* border:1px solid var(--clr400); */

    outline: 1px solid var(--clr400);

    outline-offset: -1px;

    border-radius: var(--br);

    display: flex;

    justify-content: space-between;

    align-items: center;

}

.cta-av>.bouton{

    position: absolute;

    bottom: 0;

    right: 0;

    width: 15.625rem;

    justify-content: space-between;

}



.cta-av.cornerInside::after{

    width: 33px;

    z-index: 3;

    right: calc(var(--sizew) - 23px);

    bottom: calc(var(--sizeh) - 23px);

    background-image: radial-gradient(circle, rgba(0, 0, 0, 0) 50%, var(--clr400) 50%, var(--clr400) 52%, var(--clr100) 52%);

}



.cta-av .img img{

    scale: 1.01;

}



.cta-av .img{

    width: 45%;

}

.cta-av .txt{

    width: 45%;

    padding-right: 10%;

}

.cta-av .txt h3{margin-bottom: 2.5rem;}

.cta-av .txt p{

    color: var(--clr900-900);

}



.halfwrap{

    margin-left: auto;

    width: calc(100% - ((100% - 81.25rem) / 2));

    max-width: calc(100% - 1.5rem);

    overflow: hidden;

}



.propertiessliderwrap{

    position:relative;

}





.propertiescontainer{

    display: flex;

    gap:2rem;

    align-items: start;

}



.customcontrols{

    display: flex;

    justify-content: start;

    gap:.75rem;

}



.customcontrols a{

    width: 2.5rem;

    aspect-ratio: 1;

    border-radius: .5rem;

    display: flex;

    justify-content: center;

    align-items: center;

    padding: 0px 0.75rem;

    border:1px solid var(--clr900-90);

    transition: all .2s;

}

.customcontrols a:hover{

    background-color:var(--clr900-90);

}

.customcontrols a svg{fill: var(--clr900-90);transition: all .2s;}

.customcontrols a:hover svg{fill: var(--clr300);}



.customcontrols a:first-child{scale:-1 1;}



.propertiescontainer a.proprieteitem, .courtiermini.cornerInside{

    --br:1rem;

    padding-right: 0;

    margin-left: 0.5rem;

}

a.proprieteitem{--br:1rem;}

a.proprieteitem .cornerInsideInner, .courtiermini.cornerInside .cornerInsideInner{

    background-color: var(--clr100);

    outline: 1px solid var(--clr400);

    outline-offset: -1px;

    /*border-radius: var(--br);*/

    overflow: hidden;

	height: 100%;

}

.courtiermini.cornerInside .cornerInsideInner{

    background-color: var(--clr200);

}



.propertiescontainer{

    margin-top: 3rem;

    width: 100%;

}

.propertiessliderwrap>.propertiesslider{

    display: grid;

    grid-template-columns: 1fr 1fr 1fr;

    gap:1.25rem;

	align-items: stretch;

}



a.proprieteitem .img{

	margin-bottom: 0;

	background-color: var(--clrkw900);

}

.propinfos{

    padding: 1.5rem 1.5rem 2rem;

}



.propicons{

    display: flex;

    gap:2rem;

    align-items: center;

    margin-top: 1.5rem;

    font-weight: 500;

    font-size: 1.125rem;

}

.propicon{

    display: flex;

    gap:.75rem;

    align-items: center;

}

.propicon:first-child svg{

    height: 1.7rem;

}

.propicon svg{

    height: 2rem;

    width: auto;

}



.custompager{

    height: 1rem;

    margin-left: 0.5rem;

    width: calc(100vw - (100vw - 81.25rem) - 8.25rem);

    max-width: 81.25rem;

    position: relative;

    z-index: 100;

    margin-top: 2rem;

    display: flex;

    flex-direction: row-reverse;

    margin-bottom: 2rem;

}

.custompager::after{

    content:"";

    width: 100%;

    height: 1px;

    background-color: var(--clr600);

    display: block;

    position: absolute;

    top: 50%;

    left: 0;

    translate:0 -50%;

}

.custompage{

    flex-grow: 1;

    height: 100%;

    position: relative;

    z-index: 3;

}

.custompage::after{

    content:"";

    position: absolute;

    top: 50%;

    translate:0 -50%;

    left: 0;

    width: 100%;

    height: 25%;

    scale:.01 1;

    opacity: 0;

    transform-origin: right;

    background-color:var(--clr600);

    transition: scale .8s, background-color .25s, opacity .8s;

}

.custompager.reverse .custompage::after{

    transform-origin: left;

}



.custompage:hover::after{

    height: 25%;

    opacity: 1;

    scale:1 1;

    transform-origin: right;

}

.custompage:has( ~ .current):hover::after{

    transform-origin: left;

}

.custompager .custompage.current::after{

    transform-origin: left;

}

.custompager.reverse .custompage.current::after{

    transform-origin: right;

}

.custompage.current::after{

    height: 25%;

    opacity: 1;

    scale:1 1;

    background-color:var(--clr700);

    transition: scale 1.2s, background-color .25s;

}

.custompage.current{pointer-events: none;}



.equipesliderwrap>.equipeslider{

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap:2rem;

}





.courtiermini.cornerInside img{aspect-ratio:.875;object-fit: cover;object-position: center;margin-bottom: 0;}



.courtiermini.cornerInside .courtierminiinner{

    padding: 1.5rem;

}

.courtiermini.cornerInside p{

    margin-bottom: 0;

    margin-top: 0.25rem;

    color: var(--clr700);

}

.courtiermini.cornerInside a{text-decoration: none !important;transition: all .2s;}

.courtiermini.cornerInside a:hover{color: var(--clr-accent);}

.courtiermini.cornerInside{margin-left: 0;}

.equipesliderwrap .custompager{

    max-width: 100%;

    width:100%;

    margin-bottom: 0;

    margin-left: 0;

}



.equipesliderwrap>.equipeslider>.courtiermini.cornerInside:nth-child(n+3){display: none;}



.equipeslidercontainer{

    position: relative;

}

.equipeslidercontrols{

    position: absolute;

    bottom: 0;

    left: -2rem;

    translate: -100% 0;

}



.stickypicture{

    --h:300px;

    position: sticky;

    top: calc(50% - var(--h));

}



.hidenotxs{display: none !important;}



.wrap #showEquipe{

    display: grid;

    grid-template-columns: 1fr 1fr 1fr 1fr;

    gap:1rem;

    margin-top: 5rem;

    align-items: start;

}

/*WISSEM*/

.homeprop .titre {

	text-align: center;

}

h2.titre.hasspan span,

h1.titre span {

	color: var(--clrkw200);

}

.tachome {

	margin-top: 3rem;

}



.contactintro .boutons.boutonscontacthome{

    gap: 20px;

    align-items: flex-start;

    justify-content: space-between;

}

.boutons .boutons-right {

	flex:0 0 300px;

}

.boutons .boutons-right a {

	width:300px;

	max-width: 100%;

	margin-bottom: 10px;

}

.teamsectionreverse .wrap-team-text {

	order:-1;

}



/* Team Page */



.sectioncontent.teamsection h1.titre {

    margin-bottom: 80px;

}

.wrap-team .team-img {

	margin-bottom: 50px;

	border: 1px solid var(--clr400);

}

.wrap-team h2 {

	color: var(--clrkw200);

	margin-bottom: 1rem;

}

.wrap-team h3 {

	font-size: 1.2rem;

	font-weight: 600;

	margin-bottom: 0;

}

.wrap-team-text {

	font-size: 15px;

}

.iframcont{cursor: pointer;}

.iframcont>*{

	cursor: pointer;

}



.instafeed iframe {

	width:100%;

}

.instafeed {

	text-align: center;

}



.instafeed img {

	width: 240px;

    filter: invert(1);

    display: inline-block;

    vertical-align: middle;

}

.sectioncontent.instafeed .wrap > p {

	margin: 0 auto 40px;

    text-align: center;

    max-width: 460px;

    width: 100%;

}
a.phoneico{

	width: 60px;

	height: 60px;

	border-radius: 50%;

	display: inline-block;

	background: var(--clrkw900);

	margin-left: 15px;

	border:2px solid #fff;

    position: fixed;

    bottom: 22px;

    right: 100px;

    z-index: 999;

}
a.phoneico img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    transform: translate(-50%, -50%);
    transition: all .4s;
}
a.phoneico:hover img{
	transform: translate(-50%,-50%) scale(1.1);
}

@media screen and (max-width:860px){ 

	.temoignagesslider_wrapper {

		flex-wrap: wrap;

	}

	.temoignagesslider_wrapper  .temoignageslide {

		flex: 0 0 calc(50% - 10px);

	}

}

@media screen and (max-width:580px){ 

	.temoignagesslider_wrapper  .temoignageslide {

		flex: 0 0 100%;

	}

}

@media screen and (max-width:800px){ 

	a.proprieteitem .vltag {

		padding: .5rem 1rem;

		font-size: 14px;

	}

}

/* 1400 */

@media screen and (max-width:87.5rem){

    .calccta{

        padding: 2rem 1rem;

    }

    .calcresult .calccta{margin-top: 0;}

    .calccta .bouton{margin-bottom: 0;}

    .tabscontent>div>div{display: block;}

    

    .calcresult{

        margin-top: 2rem;

        display: grid;

        grid-template-columns: 1fr 1fr;

        gap:1rem;

    }



    header nav{gap:1.25rem;}

    header nav a{font-size: .9rem;}



    .courtierminiinner h3{font-size: 1.25rem;}

}

/*1300*/

@media screen and (max-width:81.25rem){

    

    .wrapper-beanner-video {

		height: 450px;

	}

    .halfcols{

        gap:3.5rem;

    }

	.logo-banner {

		max-width: 300px;

		margin: 0 auto 10px;

	}

    .titre.titrehero {

		font-size: 1.1rem;

	}

    .titre{font-size: 2.25rem;}

    

    .titresm, .blogpost h2{

        font-size: 1.25rem;

    }

    

    hr.sectionhr{

        margin: 1.25rem auto;

    }

    

    .sectionproprietes .controlscontainer{

        padding-right: max(calc(50vw - 40.625rem), 1.5rem);

    }

    

    .halfcolswlines>div {

        padding: 5rem 1.5rem 2rem;

    }

    

    .temoignageheader{margin-bottom: 2rem;}

    

    .avantagesinner{

        grid-template-columns: 1fr 1fr 1fr;

    }

    

    .boutonavantage{

        grid-column: 3 / 4;

        flex-wrap: wrap;

        gap:.5rem;

    }

    .boutonavantage span{width: 100%;}

    .boutonavantage svg{

        position: relative;

        bottom: auto;

    }

    

    .pageintro .wrap{

        padding: 5rem 3rem;

    }

    

    .rsinnercircle {

        width: calc(100% - 14rem);

    }

    .rscircle{

        width: calc(100% - 5rem);

    }

    .rsiconinner{

        width: 5rem;

    }

    .rscontent{

        padding: 2rem 1rem 5.5rem;

    }

    .rscontent::before{

        font-size: 3rem;

    }

    .rslist li{

        font-size: 1rem;

        padding: 1.15rem 1rem 1.15rem 1.25rem;

    }

    .rslist li svg{

        width: 1.5rem;

        flex-shrink: 0;

    }

    

    form .titresm{

        font-size: 1.1rem;

    }

    .propfiltersinner{

        flex-wrap: wrap;

        gap:.5rem;

    }

    .propfiltersinner2{

        margin-top: 1rem;

        width: 100%;

        justify-content: flex-start;

    }

    .doublerange{min-width: 17rem;}

    .propfilters{padding: 0;}

    

    .titremidline{

        margin-top: 2.5rem;

    }

    .popup article{padding: 3.5rem;}

    

    .sectionvideointro .wrap{padding-bottom: 4rem;}

    

    .tripcolswlines>div{

        padding: 2.5rem 1.5rem 2rem;

    }

    

    img.pretxticon{max-width: 5rem;margin-bottom: 2rem;}

    

    .stats{

        grid-template-columns: repeat(auto-fill, minmax(19rem, 50%));

    }

    

    .saitem:not(.open){flex-shrink: 0;}

    

    .logoitem{

        padding: 3rem;

    }

    .cartevendues{width: 100%;}

    

    .wrap.courtierbio{padding: 3rem;}

    

    .bouton span:not(.icon) {

		padding: .75rem;font-size: .9rem;

	}

    .bouton .icon{padding-left: 1rem;}

	

    /*.scrolled .bouton.boutonicone span:not(.icon), 

	.scrolled .bouton span:not(.icon) {

		padding-top: 0.5rem;padding-bottom: 0.5rem;

	}*/

    

    .avantagecard{

        padding: 2.5rem 1.5rem 2rem;

    }

    .sectionfiche{padding-left: 1rem !important;padding-right: 1rem !important;}







    .sidenav{gap:.5rem;}

    .bouton .icon{

        padding-right: 0.75rem;

        padding-left: 0.5rem;

        scale:1;

    }

    .bouton.iconefront .icon{

        padding: 0.7rem;

        padding-right: 0.5rem;

    }

    .bouton.boutonicone.iconefront span:not(.icon){

        padding-right: 0.75rem;

    }

    .heroinner{width: calc(100% - 6rem);}

    .propicon:first-child svg{

        height: 1.25rem;

    }

    .propicon svg{

        height: 1.5rem;

    }

    .propicon{gap:.5rem;}

    .propicons{

        gap:1.25rem;

    }

    a.proprieteitem p:not(.titre2){

        font-size: .8rem;

    }



    .custompager{

        max-width: 100%;

        width: calc(100vw - 11.25rem);

    }



    .courtierminiinner h3{font-size: 1rem;}

    .courtiermini.cornerInside .courtierminiinner{padding-left: 1rem;}

}

/*1200*/

@media screen and (max-width:75rem){

	header nav {

        gap: 0.65rem;

		margin-right: 1rem;

    }

	header .logo, header.scrolled .logo {

        width: 10rem;

    }

}

	

	

/*1024*/

@media screen and (max-width:64rem){

	header nav{

        gap:1rem;

    }

    header nav a{font-size: .85rem;}

    header .logo, 

	header.scrolled .logo{

        width: 11rem;

    }

    .menuicocontainer{

        gap:.5rem;

    }

    body {

		padding-top: 5.8rem;

	}

    header .wrap.wide{

        overflow: visible !important;

    }

    .navrapide{display: none;}

    header .wrap{

        display: flex;

        justify-content: space-between;

        align-items: center;

    }

    .navcomplete{

        gap:0;

        justify-content: space-evenly;

    }

    .navlinks a{

        font-size: 1.25rem;

        margin-bottom: .75rem;

    }

    .navlinks a.hide{display: block !important;}

    .navsocials{margin-top: 0;}

    .titre.titrehero{

        font-size: 1rem;

    }

    .titre {

        font-size: 2rem;

    }

    .fixedctas{

        bottom: 1rem;

        gap:.75rem;

    }

    

    .avantagesinner{

        display: block;

    }

    .avantagecard{

        padding: 1.5rem 1rem .5rem;

        margin-bottom: 1rem;

        display: flex;

        justify-content: flex-start;

        align-items: flex-start;

        gap:1.5rem;

    }

    .avantagecard .lst{

        margin-top: -.5rem;

    }

    .boutonavantage{

        width: 35%;

        min-width: max-content;

        margin-left: auto;margin-right: auto;

        padding: 1rem 2rem;

    }

    

    .halfcols {

        gap: 2rem;

    }

    .propfiltersinner button{

        margin-top: 1.5rem;

        margin-left: auto;

        order:9;

    }

    .propfiltersinner2{

        margin-top: .75rem;

        width: auto;

        order:8;

        min-width: 16rem;

    }

    

    .propinfos .bouton{display: none;}

    

    .logogrid{padding-left: 0;padding-right: 0;}

    

    .innerfooter{

        padding: 2rem 0;

    }

    

    .tripcolswlines>div{

        padding: 1.75rem 1rem 1rem;

    }

    .courtiermini img{margin-bottom: .5rem;}

    

    .courtierminiinner a.bouton{display: none;}

    .courtierminiinner p{font-size: .9rem;}

    .wrap.courtierbio {

        padding: 2rem;

    }

    .pageintro .wrap{

        padding: 3.5rem 2rem;

    }

    

    .roundsteps{

        display: block;

    }

    .rslist{

        display: flex;

        width: 100%;

        overflow: scroll;

    }

    .rslist li{

        flex-shrink: 0;

        white-space: nowrap;

        gap:1rem;

    }

    .rslist li svg{

        rotate:90deg;

    }

    .rsiconinner{

        width: 6rem;

    }

    .rscircle {

        width: calc(100% - 8rem);

    }

    .rsinnercircle {

        width: calc(100% - 17rem);

    }

    .checkboxgrid{width: 80%;}

    

    .altsa .sainner{

        padding: 3rem 1rem 1rem;

    }

    .sainner .media{max-width: 100%;}

    

    .accordeoncontent .halfcols{gap:1rem 2rem;}

    

    .popup article{

        padding: 1.5rem;

        width: min(80vw, 60rem);

    }

    

    .rsinnercircle{position: static;}

    header{overflow: visible !important;}

    header nav{

        margin-right: 0;

        display: none;

        position: absolute;

        right: 0;

        top: 5.8rem;

        background-color: var(--clrkw900);

        padding: 1rem 2rem;

        min-width: 15rem;

        --br:1rem;

        border-radius: 0;

        transition: margin-top .2s, top .2s;

        

    }

    /*header.scrolled nav{top: 4.25rem;}*/

    header nav a {

        display: block;

        color: var(--clr100);

        font-size: .9rem;

        margin: .5rem 0;

    }

	header nav a:hover {

		text-decoration: underline;

		color: var(--clrkw200);

	}

	

    header nav a.currentpage{color: var(--clrkw200);}

    .menuicocontainer{display: flex;}

    .sidenav{margin-left: auto;margin-right: 1rem;}

    

	.menuico path{

        fill: var(--clrkw200);

    }

	

    .menuico:hover path{

        fill: var(--clrkw200);

    }

    .avantagecard .img{width: 3.5rem;padding: .75rem;top: .5rem;right: .5rem;}

    a.proprieteitem{padding-right: 2.75rem;}

    .sectionavcta .halfcols.third{

        display: block;

    }

    .sectionavcta .halfcols.third>div:last-child{

        display: grid;

        grid-template-columns: 1fr 1fr;

        gap:1rem;

        margin-top: 1rem;

    

    }

    .avcard{padding: 2rem;}

    .avcard+.avcard{margin-top: 0;}

    

    .sectionavcta .media iframe{

        max-width: 350px;

        width: 100%;

        margin-left: auto;margin-right: auto;

    }

    .temoignageslide{

        padding: 2rem 1.5rem;

    }

    footer .logo{

        width: 17rem;

    }

    

    img.ballontitre{

        position: relative;

        width: 3.5rem;

        margin-bottom: 1rem;

    }

    .logoitem{

        padding: 3rem 2rem;

    }

    .avantagecard.wimg{gap:.5rem;}

    .avantagecard.wimg img{

        flex-shrink: 0;

        width: 10rem;

    }

    .sectiongal{padding-left: .5rem;

    padding-right: .5rem;}

    

    

    

    

    .rslist {

        flex-direction: row;

        justify-content: flex-start;

    }

    .rsinnercircle{position: relative;}



    .hero-cta img{width: 6rem;}

    .hero-cta p{font-size: 1rem;padding: 1.5rem 1rem 1.75rem 1rem;}





    

    .halfcols.halftoleft{gap:2rem;}

    .liste-avantages .titre2{margin-bottom: 1rem;}

    .liste-avantages p{font-size: 1rem;}

    .liste-avantages img{width: 2.75rem;margin-bottom: 1rem;}

    .cta-av .txt{padding-right: 5%;width: calc(50% - 2rem);}

    .cta-av .img{width: calc(50% - 2rem);}



    .propertiessliderwrap>.propertiesslider{

		grid-template-columns: 1fr 1fr 1fr;

		gap:.75rem;

	}

	

	

	

    .cornerInside{--sizew:40px;--sizeh:40px;}

    .cta-av {

        --sizew: 16.25rem;

        --sizeh: 3.25rem;

    }

    .courtiermini .titre2{font-size: 1.05rem;}

    .courtiermini.cornerInside p{font-size: .8rem;margin-bottom: 0.3rem;}

    .equipesliderwrap>.equipeslider{gap:1rem;}



    .courtiermini.cornerInside .courtierminiinner{padding: 1rem;}





    .wrap #showEquipe{grid-template-columns: 1fr 1fr 1fr;}

}

/*856*/

@media screen and (max-width:53.5rem){

	.logo-banner {

        max-width: 260px;

    }

	.wrapper-beanner-video {

		height: calc(60vh - 92px);

	}

    .wrap{

        max-width: calc(100% - 1.5rem);

    }

    .heroinner+.bouton {

        right: 0.5rem;

        bottom: 4rem;

    }

    

    .titre{font-size: 1.7rem;}

    

    .sectionproprietes .controlscontainer{padding-left: .75rem;padding-right: .75rem;}

    .sliderproprietescontainer{padding-left: .75rem;}

    

    .halfcolswlines{

        grid-template-columns: 1fr;

        padding: 3rem 0;

        gap:2rem;

    }

    .halfcolswlines>div {

        padding: 0rem 1rem 0;

    }

    .halfcolswlines::after{display: none;}

    

    .halfcolswlines>div:first-child{

        padding-bottom: 2rem;

        border-bottom: 1px solid var(--clr900);

    }

    .sectionaccent .halfcolswlines>div:first-child, .sectionreverse .halfcolswlines>div:first-child{

        border-bottom: 1px solid var(--clr100);

    }

    .pager{padding-left: 0;padding-right: 0;}

    

    .sectionvideointro.sectionreverse .wrap{

        border-bottom:1px solid var(--clr100);

    }

    

    .stats .stat{

        padding: 2rem 1rem;

    }

    .sainner{display: block;}

    

    .tripcolswlines{

        grid-template-columns: 1fr;

        border-left:1px solid var(--clr900);

        border-right:1px solid var(--clr900);

    }

    .tripcolswlines>div{

        border-left: 0 !important;

        border-right: 0 !important;

        display: grid;

        grid-template-columns: auto 1fr;

        gap:2rem;

        align-items: center;

    }

    .tripcolswlines>div:not(:last-child){border-bottom: 1px solid var(--clr900);}

    

    .sectiongap{margin-top: .75rem;}

    

    .courtierminiinner a.bouton{display: block;}

    

    .courtierbio .txt{padding-top: .5rem;}

    

    .wrap.courtierbio{padding: 3rem 1rem;}

    .sectionborder .wrap{padding-left: 1rem;padding-right: 1rem;}

    

    .courtiercontact .halfcols{

        grid-template-columns: 1fr;

        gap:4rem;

    }

    .courtiercontact h2{

        margin-bottom: 2.5rem;

    }

    .faqaccordeon .accordeontrigger>span{width: 1.25rem !important;flex-shrink: 0;}

    .faqaccordeon .accordeontrigger{gap:.5rem;}

    

    .sideaccordeon.altsa{flex-direction: column;}

    .altsa .saitem.open{

        width: 100%;

        padding:0;

        min-height: 0 !important;

    }

    .altsa .saitem{

        min-height: 0 !important;

        width: 100% !important;

        grid-template-columns: 1fr;

        border-right: 0;

        padding:  0;

    }

    .altsa .saitem:not(:first-child){border-top: 1px solid var(--clr400);}

    

    .altsa .satitre img{

        width: 2.25rem;

        margin-left: 1rem;

    }

    .altsa .satitre{border-right: 0;padding: .75rem 0rem;}

    .altsa .sainner{

        position: relative;

        width: 100% !important;

        max-width: 100%;

        padding: 1rem;

        left: 0;

        display: none;

    }

    .multiselect{width: 100%;}

    .blogpost{padding-left: 1rem;padding-right: 1rem;}

    

    .temoignagescontainer>.temoignagesslider{

        display: grid;

        grid-template-columns: 1fr 1fr;

        gap:1rem;

    }

    .temoignagescontainer>.temoignagesslider>.temoignageslide:nth-child(3){

        display: none;

    }



    .innerfooter .wrap{display: block;}

    footer .logo{display: block;margin-bottom: 1rem;}

    

    

    

    

    

    

    

    

    

    

    .rslist{display: none !important;}

    

    .rscontent{

        position: relative;

        top: auto;

        translate:0;

        scale:1;

        opacity: 1;

        rotate:0deg;

        padding: 0rem 0;

    }

    .rscontent::before{display: none;}

    .rscontent h3{

        cursor: pointer;

        border-bottom: 1px solid var(--clr700);

        padding: .75rem .5rem .75rem 0rem;

        text-align: left;

        font-size: 1rem;

        margin-bottom: 0;

        display: flex;

        justify-content: flex-start;

        align-items: flex-start;

        gap:.5rem;

    }

    .rscontent h3::before{

/*        content:counter(step-counter) ". ";*/

        content:"";

        background-image: url("/images/essentials/fleche2.svg");

        width: 1.75rem;

        height: 1.75rem;

        background-size: cover;

        background-position: center;

        display: inline-block;

        filter: invert(1);

        translate:-.25rem -.3rem;

        transform-origin: center;

        transition: all .4s;

    }

    .rscontent h3.open::before{

        rotate:90deg;

    }

    .rsinnercircle{padding-bottom: 2rem;}

    

    .rscontent h3+div{

        display: none;

        text-align: left;

        padding: .75rem .5rem;

    }

    

    

    

    .pageintro .wrap{padding: 3.5rem .5rem;}

    

    

    .sectioncta{padding-left: .5rem;padding-right: .5rem;}

    

    

    .avantagecard .lst{font-size: 3.5rem;}

    

    .avantagecard.wimg>div {

        padding: 1.5rem .25rem 1rem .25rem;

    }

    

    

    

    .altsa .satitre{

        display: flex;

        justify-content: flex-start;

        align-items: center;

        gap:1rem;

    }

    

    .altsa .satitre img{

        margin-right: 0;

    }

    

    .altsa .sainner h3{display: none;}

    .altsa .satitre .showmobile{

        display: block !important;

        text-align: left;

        font-size: 1.1rem;

        color: var(--clr900);

        pointer-events: none;

    }

    .rscircle{display: none;}

    

    

    .hero-cta{bottom: 1rem;right: 1rem;}

    

    .cta-av .img, .cta-av .txt{

        width: calc(50% - 1rem);

    }

    .cta-av{font-size: 1rem;}

    .cta-av .txt h3{margin-bottom: 1.5rem;}



    .propicons{

        gap:1rem;

        font-size: .9rem;

    }

    .propicon{

        gap:.125rem;

    }

    .propicon:first-child svg {

        height: .75rem;

    }

    .propicon:first-child svg{

        height: 1rem;

    }



    .propinfos{

        padding: 1rem 1rem 1.5rem;

    }



    .customcontrols a{

        width: 2.25rem;

        padding: 0px 0.625rem;

    }

    .customcontrols{gap:.5rem;}

    .propertiescontainer{gap:1rem;}

    .custompager{width: calc(100vw - 8.5rem);}

    .halfwrap{max-width: calc(100% - 1rem);}



    .equipesliderwrap>.equipeslider{grid-template-columns: 1fr;}



    .halfcols.third:has( .equipeslider){

        grid-template-columns: 1fr .8fr;

    }



    footer .wrap.wide .wrap{

        gap:2rem;

    }

}

/*750*/

@media screen and (max-width:46.875rem){

	.propertiessliderwrap>.propertiesslider {

        grid-template-columns: 1fr 1fr;

    }

    .wrap #showEquipe{grid-template-columns: 1fr;max-width: 20rem;}

    .form2cols .formulaireMerci{grid-column: auto;}

    .fixedctas{

        bottom: .25rem;

        gap:.5rem;

    }

    .titre.titrehero{padding-left: .5rem;padding-right: .5rem;}

    .titre.titrehero br{

        display: none;

    }

    .halfcols{

        grid-template-columns: 1fr;

    }

    .halfcols>.img{order:1;}

    .halfcols>.txt{order:2;}

    

	

	.teamsectionreverse .wrap-team-text {

		order: 1;

	}

	.wrap-team .team-img {

		margin-bottom: 30px;

	}

	.wrap-team h2 {

		margin-bottom: 0.5rem;

	}

    hr.sectionhr.wrap {

        margin: 2rem auto;

    }

    

    .sliderproprietescontainer>.sliderproprietes{

        width: calc(100% / 2.5 * 4);

    }

    footer > .wrap {

        grid-template-columns: 1fr;

    }

    .siteplan, .footerbloc:last-child{grid-column: auto;}

    .footerbloc:last-child{border-bottom:0;border-top:0;}

    

    .navcomplete{padding-left: 4.5rem;}

    

    .propfiltersinner .selectelement{width: 100%;max-width: 100%;}

    .propfiltersinner .selectelement{margin-top: 0;}

    .propfiltersinner button{

        margin: 1.5rem auto;

    }

    .propfiltersinner2{display: none;}

    

    .propgrid, .stats{

        grid-template-columns: 1fr;

    }

    .logogrid{

        grid-template-columns: 1fr 1fr;

    }

    

    

    .sideaccordeon{flex-direction: column;}

    .saitem.open{

        width: 100%;

        padding:0;

        min-height: 0 !important;

    }

    .saitem{

        min-height: 0 !important;

        width: 100% !important;

        grid-template-columns: 1fr;

        border-right: 0;

        padding:  0;

    }

    .saitem:not(:first-child){border-top: 1px solid var(--clr400);}

    

    .satitre img{

        width: 2.25rem;

        margin-left: 1rem;

    }

    .satitre{border-right: 0;padding: .75rem 1rem;text-align: left;}

    .sainner{

        position: relative;

        width: 100% !important;

        max-width: 100%;

        padding: 1rem;

        left: 0;

        display: none;

    }

    .pageintro h1 {

        grid-column: auto;

    }

    

    .tripcolswlines>div.courtiermini{

        grid-template-columns: 1fr;

    }

    .courtiermini img{

        width: 100%;

        max-width: 20rem;

    }

    .boutons{

        gap:.5rem;

    }

    .rscircle{display: none;}

    .rsinnercircle{width: 100%;}

    .rslist li::before{margin-right: 0;}

    .faqaccordeon .accordeontrigger{padding-left: 0.5rem;padding-right: 0.5rem;}

    

    .form2cols{grid-template-columns: 1fr;}

    .form2cols .offgrid{grid-column: auto;}

    .checkboxgrid{

        width: 100%;

        grid-template-columns: 1fr 1fr;

        gap:.75rem;

    }

    .hero{padding-bottom: .75rem;}



    .popup article{width: 90vw;}

    

    .controlscontainer p{font-size: .75rem;}

    .boutonscontrols a{width: 2.125rem;}

    .boutonscontrols{gap:.75rem;}

    .controlscontainer{gap:1rem;}

    

    .bouton span:not(.icon){padding: .7rem 1rem;font-size: .9rem;}

    .bouton img, .bouton svg{max-width: 1.1rem;max-height: 1.1rem;}

    .bouton .icon{padding: 0px .5rem 0px 1.2rem;}

    

    input.calcdisabled {

        font-size: 1.25rem !important;

        padding: .6rem 0 !important;

    }

    .calcresult{

        grid-template-columns: 1fr;

    }

    .hero .wrap{

        max-width: calc(100% - 1rem);

    }



    .heroinner{

        left: 0;

        width: 100%;

        translate:0 -50%;

        padding-left: 1rem;

        padding-right: 1rem;

    }



    .halfcols.sixth, .sectionavcta .halfcols.third>div:last-child{

        grid-template-columns: 1fr;

    }



    .temoignagescontainer>.temoignagesslider{

        display: grid;

        grid-template-columns: 1fr ;

        gap:1rem;

    }

    .temoignagescontainer>.temoignagesslider>.temoignageslide:nth-child(2){

        display: none;

    }

    .undertem{flex-wrap: wrap;}

    .undertem .controlscontainer{width: 100%;order: -1;margin-bottom: 1rem;}



    .undertem p{

        width: 100%;

        margin-bottom: .75rem;

    }

    .undertem p+a.bouton{margin-left: 0;}



    .avantagecard{

        display: block;

        padding: 1.5rem 1rem 1.5rem;

    }

    .avantagecard.wimg img{

        width: 100%;

    }

    .tabslabel li{

        border-bottom-right-radius: var(--br);

    border-bottom-left-radius: var(--br);

    }

    

    .sectiongal{

        grid-template-columns: 1fr;

    }

    .contactintro form .formelement{width: 100%;}

    .frbtn{float: none;margin-bottom: 1rem;}

    

    .hidemobile{display: none !important;}

    .bouton span::first-letter{text-transform: capitalize;}

    

    .sectionfiche {

        padding-left: .5rem !important;

        padding-right: .5rem !important;

    }

    a.proprieteitem .prix{top: 1.5rem;}





    .sidenav{margin-right: 0;}

    .sidenav a.bouton:not(.langswitch){display: none;}

    .hidenotxs{display: block !important;}

    .bouton .icon {

        padding: 0px .75rem 0px .5rem;

    }

    .halfcols.halftoleft{grid-template-columns: 1fr;}

    .stickypicture{

        position: relative;

        top: 0;

    }

    .titre {

        font-size: 1.6rem;

    }

    .cta-av .cornerInsideInner{display: block;padding-bottom: 2.5rem;}

    .cta-av .img, .cta-av .txt{width: 100%;}

    .cta-av .txt{

        padding-left: 1rem;

        padding-right: 1rem;

        padding-top: 1rem;

    }

    .propertiescontainer{display: block;}

    .custompager{width:calc(100vw - 2rem);margin-left: 0;}

    .customcontrols{margin-bottom: 1rem;}

    .propertiescontainer a.proprieteitem, .courtiermini.cornerInside{margin-left: 0;padding-left: 0;}

    .propertiessliderwrap>.propertiesslider{grid-template-columns: 1fr 1fr;gap:.75rem;}



	

    .propertiescontainer{

        margin-top: 2rem;

        width: 100%;

    }

    .halfcols.third:has( .equipeslider) {

        grid-template-columns: 1fr;

    }

    .equipesliderwrap>.equipeslider{

        grid-template-columns: 1fr;

        gap:.75rem;

    }

    .equipesliderwrap{

        margin-right: auto;

        width: 100%;

        max-width: 20rem;

    }

    .equipeslidercontrols{

        margin-top: 1.5rem;

        translate:0;

        position:relative;

        left: 0;

        margin-bottom: 1rem;

    }

}

/*640*/

@media screen and (max-width:40rem){

	.wrapper-beanner-video {

        height: calc(60vh - 120px);

    }

	.propertiessliderwrap>.propertiesslider {

        grid-template-columns: 1fr;

        gap: 1.25rem;

    }

}	

/*600*/

@media screen and (max-width:37.5rem){

	.logo-banner {

		max-width: 200px;

		margin: 0 auto 5px;

	}

	.heroinner.heroinnerhome .titre.titrehero {

		line-height: 160%;

		font-weight: normal;

	}

	

	.hero video {

		width: 130%;

		max-width: 130%;

		object-position: 50% 50%;

	}

	.wrapper-beanner-video {

        overflow: hidden;

    }

}

/*480*/

@media screen and (max-width:30rem){

	

    a.proprieteitem .prix {

        font-size: 14px;

        padding: .5rem 1rem;

    }

}



/*440*/

@media screen and (max-width:27.5rem){

    .hero video {

        width: 140%;

        max-width: 140%;

    }

}