@import url("https://use.typekit.net/sct6ewn.css");
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');

/*
font-family: "richmond-display", sans-serif;
font-weight: 400;
font-style: normal;

font-family: "richmond-display", sans-serif;
font-weight: 400;
font-style: italic;

font-family: "richmond-display", sans-serif;
font-weight: 700;
font-style: normal;

font-family: "richmond-display", sans-serif;
font-weight: 700;
font-style: italic;

font-family: "DM Sans", sans-serif;
font-optical-sizing: auto;
font-weight: <weight>;
font-style: normal;
*/
.tac.mt10{text-align: center;margin-top: 10px;clear: both;}
body{
	font-family: "DM Sans", sans-serif;
	font-weight: 400;
	color: #000;
	font-size: 16px;
}

.wrap{
	width: 1220px;
	max-width: calc(100% - 30px);
	margin: 0 auto;
}

h1, h2, h3, h4, h5, h6{
	font-family: "DM Sans", sans-serif;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: #a6a6a6;
	font-style: italic;
	font-size:16px;
	text-transform: none;
}
input::-moz-placeholder, textarea::-moz-placeholder { /* Firefox 19+ */
	color: #a6a6a6;
	font-style: italic;
	font-size:16px;
	text-transform: none;
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder { /* IE 10+ */
	color: #a6a6a6;
	font-style: italic;
	font-size:16px;
	text-transform: none;
}
input:-moz-placeholder, textarea:-moz-placeholder { /* Firefox 18- */
	color: #a6a6a6;
	font-style: italic;
	font-size:16px;
	text-transform: none;
}

img{
    display: block;
    max-width: 100%;
}

.menu-ico{display: none;}

header .wrap{
    padding: 0px 0px 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

img.royalh{
    width: 140px;
}

header nav{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap:25px;
    font-size: 14px;
    transition: all .2s;
}

header nav:has( + .soch > .btn_soc:hover){
    gap:15px;
    transition: all .5s;
}

header nav a{
    text-decoration: none !important;
    color: #000 !important;
    font-weight: 400;
    padding: 5px 0 3px;
    border-bottom: 2px solid #fff;
    transition: all .4s;
}

header nav a.selected{
    font-weight: 600;
    border-bottom: 2px solid #000;
}

header nav a:hover{border-bottom: 2px solid #000;}

.soch{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap:5px;
}

.soch a.btn_menu{
    font-size: 14px;
    font-weight: 400;
    color: #000 !important;
    text-decoration: none !important;
    margin-right: 10px;
}

a.btn_soc{
    background-color: #FE0118;
    color: #fff !important;
    text-decoration: none !important;
    min-width: 35px;
    height: 35px;
    border-radius: 50vh;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0px 10px;
    font-size: 16px;
    box-sizing: border-box;
}

a.btn_soc:hover{width: auto;}

a.btn_soc span{
    transform-origin: left;
    white-space: nowrap;
    font-size: 13px;
    max-width: 0px;
    overflow: hidden;
    transition: all .2s !important;
}

a.btn_soc:hover span{
    max-width: 550px;
    margin-left: 10px;
    transition: all .8s !important;
}

a.logoh{
    text-decoration: none !important;
    color: #000 !important;
    font-family: "richmond-display", sans-serif;
    font-size: 35px;
    display: block;
    width: max-content;
    text-align: center;
    margin-left: auto;margin-right: auto;
    line-height: 1.15;
    transition: all .4s;
}

a.logoh span, .minititle{
    font-family: "DM Sans", sans-serif;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    display: block;
}
.ttn{text-transform: none !important;}

a.logoh:hover{
    color: #FE0118 !important;
}

.banner{
    text-align: center;
    padding-bottom: 40px;
}

.banimg{
    margin-top: 30px;
    overflow: hidden;
    border-radius: 25px;
    position: relative;
}

.cutout{
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-100%);
    height: 80%;
}

.cutout+.cutout{
    transform:none !important;
}

.cutout:not(:has( ~.cutout)){
    transform: translateX(-50%);
}

.banner p{
    font-size: 45px;
    line-height: 1.2;
    margin: 30px 0px 15px;
}
.banner p strong{
    font-family: "richmond-display", sans-serif;
    font-style: italic;
}

a.boutontxt{
    display: inline-flex;
    padding: 5px 0 3px;
    border-bottom: 2px solid #000;
    color: #000 !important;
    text-decoration: none !important;
    font-size: 15px;
    gap:5px;
    justify-content: center;
    align-items: center;
    transition: all .4s;
}
a.boutontxt i{
    font-size: 15px;
}

a.boutontxt:hover{border-bottom: 2px solid #FE0118;}

button[type=submit], button.bouton, .bouton, a.bouton{
    -webkit-appearance:none;
    appearance:none;
    display: inline-flex;
    gap:8px;
    align-items: center;
    background-color: #FE0118;
    color: #fff !important;
    text-decoration: none !important;
    border-radius: 50vh;
    border:1px solid #FE0118;
    font-size: 15px;
    padding: 6px 20px;
    font-family: "DM Sans", sans-serif;
    cursor: pointer;
    transition: all .4s;
}
button[type=submit]:hover, button.bouton:hover, .bouton:hover, a.bouton:hover{
    background-color: #fff;
    color: #FE0118 !important;
}

button[type=submit].reverse, button.bouton.reverse, .bouton.reverse, a.bouton.reverse{
    background-color: #fff;
    border:1px solid #fff;
    color: #FE0118 !important;
}
button[type=submit].reverse:hover, button.bouton.reverse:hover, .bouton.reverse:hover, a.bouton.reverse:hover{
    background-color: #FE0118;
    border:1px solid #FE0118;
    color: #fff !important;
}

footer{
    background-color: #222222;
    color: #fff;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    
}
.imgf{
    position: relative;
    width: 45%;
}
.imgf>*{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.innerf{
    padding-right:max(30px,calc(50vw - 610px));
    padding-left:120px;
    box-sizing: border-box;
    width: 55%;
    text-align: center;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    padding-top: 35px;
    padding-bottom: 35px;
}
.innerf>*{width: 100%;}
.footercopy{
    background-color: #fff;
    width: 100%;
    padding: 20px 10px;
    box-sizing: border-box;
}
.footercopy .wrap{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.stepForm{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap:0 12px;
}
.stepforminner{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    gap:10px;
    padding: 20px 0 40px;
    width: 100%;
    
}
.stepForm input:not([type=checkbox]):focus, .stepForm textarea:focus{
    outline: none;
    border-bottom: 2px solid #FE0118;
}
.stepForm input:not([type=checkbox]), .stepForm textarea{
    display: block;
    -webkit-appearance:none;
    appearance:none;
    border:0;
    border-bottom: 2px solid #FFF;
    font-family: "DM Sans", sans-serif;
    font-size: 15px;
    background-color: #fff;
    color: #222;
    padding: 5px;
    width: calc(50% - 5px);
    box-sizing: border-box;
    border-radius: 0;
}
.stepForm textarea{
    width: 100%;
    min-height: 80px;
    resize: vertical;
}

.stepForm input[type=checkbox]{
    position: relative;
    z-index: -9;
    display: block;
    margin-right: auto;
    translate:-20% 100%;
    margin-bottom: -30px;
}
.stepForm input[type=checkbox]+label{
    display: flex;
    align-items: flex-start;
    gap:10px;
    width: 100%;
    text-align: left;
    font-size: 13px;
    cursor: pointer;
    margin-top: 10px;
}

.stepForm input[type=checkbox]+label::before{
    content: "";
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #fff;
    display: block;
    flex-shrink: 0;
    margin-top: 2px;
}

.stepForm input[type=checkbox]:checked+label::before{
    background: radial-gradient(circle, rgba(254,1,24,1) 40%, rgba(255,255,255,1) 40%);
}


.navf{
    margin-top: 50px;
    margin-bottom: 30px;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 0;
}

.royalf{
    width: 140px;
}

.navf div{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap:15px 50px;
    
}

.navf a{
    text-align: left;
    color: #fff !important;
    font-size: 15px;
    text-decoration: none;
}

.innerf>.contactf{
    width: 45%;
    font-size: 15px;
    margin-bottom: 30px;
}

.contactf a{
    color: #fff !important;
    text-decoration: none !important;
}

.contactf p{
    margin-top: 0;
    margin-bottom: 10px;
}

.contactf h3+p{
    text-transform: uppercase;
}

.contactf h3{
    font-size: 26px;
    font-family: "richmond-display", sans-serif;
    font-weight: 400;
    margin-top: 0;margin-bottom: 0;
}

.addressa{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 15px;
    color: #fff !important;
    gap:10px;
    text-decoration: none !important;
}

.addressa+a.addressa{
    margin-top: 10px;
    color: #fff !important;
}

.title{
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 45px;
    line-height: 1.1;
    font-weight: 400;
}
.title.smtitle{
    font-size: 25px;
}
.title span{
    font-weight: 600;
    font-style: italic;
    font-family: "richmond-display", sans-serif;
}

.stepforminner{display: none;}
.stepforminner.stepform1{display: flex;}

a.politiquea{
    white-space: nowrap;
    text-transform: uppercase;
    text-decoration: none !important;
    font-size: 15px;
    color: #222 !important;
    font-weight: 600;
}

.footercopy .wrap>div{
    padding-right: 150px;
    font-size: 12px;
    opacity: .75;
    color: #222;
}
.footercopy .wrap h6{display: inline;margin: 0;font-size: 12px;font-weight: 500;}
.footercopy .wrap .ttu{text-transform: none;}

.footercopy a img{display: inline-block;vertical-align: middle;width: 45px;margin-right: 10px;}

.ctas .wrap{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap:10px;
    padding-bottom: 40px;
}

.ctas .cta{
    border-radius: 20px;
    overflow: hidden;
    -webkit-background-size: cover;
    background-size: cover;
    padding: 80px 20px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ctas .cta>div{
    background-color: #fff;
    border-radius: 20px;
    padding: 20px 10px 25px;
    box-sizing: border-box;
    width: calc(100% - 180px);
}

.ctas .cta p{
    margin-top: 00px;
    margin-bottom: 20px;
    font-size: 15px;
}

.prophome{
    background-color: rgba(211,211,211,.5);
    padding: 40px 0;
    text-align: center;
}

.prophsliderwrap{margin-top: 30px;margin-bottom: 45px; position: relative;}

.prophsliderwrap>.prophslider>.propsingle:not(:first-child){display: none;}

.propsingle{
    border-radius: 35px;
    overflow: hidden;
    position: relative;
    display: block;
}

img.propimg{
    display: block;
    width: 100%;
    aspect-ratio:16/9;
    object-fit: cover;
    object-position: center;
}

a.rollprop{
    text-decoration: none !important;
    color: #0F0F0F !important;
    border-radius:20px;
    background-color: #fff;
    padding: 20px 25px;
    box-sizing: border-box;
    display: block;
    position: absolute;
    bottom: 20px;
    left: 20px;
    text-align: left;
}

a.rollprop p{
    font-family: "richmond-display", sans-serif;
    font-size: 25px;
    margin: 0;
}

a.rollprop h3{
    font-weight: 400;
    font-size: 16px;
    margin: 0;
}
.prophinfos{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-top: 10px;
    margin-bottom: 25px;
}

.prophinfo{
    padding-right: 15px;
    margin-right:15px;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap:10px;
}

.prophinfo i{
    color: #D3D3D3 !important;
}

.prophinfo:not(:last-child){
    border-right: 1px solid #D3D3D3;
}

.prophsliderwrap .bx-controls, .prophsliderwrap .bx-controls .bx-controls-direction, .temhome .bx-controls, .temhome .bx-controls-direction, .bloghome .bx-controls, .bloghome .bx-controls .bx-controls-direction{
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.bloghome .bx-controls, .bloghome .bx-controls .bx-controls-direction{
    top: 30%;
}

.prophsliderwrap .bx-controls a, .temhome .bx-controls a, .bloghome .bx-controls a{
    border-radius: 50%;
    width: 70px;
    height: 70px;
    background-color: #FE0118;
    display: flex;
    justify-content: center;
    align-items: center;
    color: transparent !important;
    font-size: 0px;
    text-decoration: none !important;
    translate:-50% 0;
    border:2px solid #FE0118;
    transition: all .4s;
}

.prophsliderwrap .bx-controls a:hover, .temhome .bx-controls a:hover, .bloghome .bx-controls a:hover{
    background-color: #fff;
}

.prophsliderwrap .bx-controls a+a, .temhome .bx-controls a+a, .bloghome .bx-controls a+a{
    translate:50% 0;
}

.prophsliderwrap .bx-controls a:after, .temhome .bx-controls a:after, .bloghome .bx-controls a:after{
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    translate:-30% -50%;
    rotate:135deg;
    width: 15px;
    height: 15px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    transition: all .4s;
}

.prophsliderwrap .bx-controls a+a:after, .temhome .bx-controls a+a:after, .bloghome .bx-controls a+a:after{
    translate:-70% -50%;
    scale:-1;
}

.prophsliderwrap .bx-controls a:hover:after, .temhome .bx-controls a:hover:after, .bloghome .bx-controls a:hover:after{
    border-right: 3px solid #FE0118;
    border-bottom: 3px solid #FE0118;
}

.profilhome{
    padding: 45px 0 110px;
}
.profilhome .wrap{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    text-align: center;
    gap:45px;
}

.imgwshadow{
    position: relative;
    width: 45%;
    flex-shrink: 0;
}
.imgwshadow:after{
    content: "";
    width: calc(100% - 35px);
    aspect-ratio:1;
    border-radius: 20px;
    background-color: #D3D3D3;
    position: absolute;
    top: 35px;
    left: 35px;
    z-index: -1;
}

.imgwshadow>.imgmontage{
    width: calc(100% - 35px);
    overflow: hidden;
    border-radius: 20px;
    position: relative;
}

.imgmontage img:not(.cutout){
    aspect-ratio:1;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.temhome{
    padding: 60px 0;
    background-image: url("../images2/tembg.jpg");
    -webkit-background-size: cover;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.teminner{
    background-color: #fff;
    border-radius: 30px;
    width: 750px;
    max-width: calc(100% - 20px);
    box-sizing: border-box;
    padding: 80px;
    position: relative;
    text-align: center;
    font-size: 15px;
    line-height: 1.4;
}

.bloghome{
    text-align: center;
    padding: 50px 0;
}

.blogsliderwrap{
    margin-top: 40px;
    text-align: left;
    position: relative;
    margin-bottom: 50px;
}

.blogsliderwrap>.blogslider{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap:20px;
}
.blogsliderwrap>.blogslider>article:nth-child(n+4){display: none;}
.bloghome .img{
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 10px;
    display: block;
}
.bloghome .img img{
    display: block;
    width: 100%;
    aspect-ratio:4/3;
    object-fit: cover;
    object-position: center;
}

.bloghome h3{
    font-family: "richmond-display", sans-serif;
    font-size: 22px;
    margin-top: 0;
    margin-bottom: 10px;
    font-weight: 400;
}

.bloghome p{
    font-size: 15px;
    margin-top: 0;
    margin-bottom: 30px;
}

.avantagescta{
    text-align: center;
    padding: 60px 0;
}

.avantagesctagrid{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    margin-top: 50px;
}
.avantagesctagrid>div{
    padding: 20px;
    border-right: 2px solid #D3D3D3;
}
.avantagesctagrid>div:last-child{border-right: 0;}

.avantagesctagrid .img{
    width: 80%;
    aspect-ratio:2/1;
    margin-left: auto;margin-right: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
}

.avantagesctagrid .img img{
    max-height: 100%;
}

.avantagesctagrid p{
    margin-top: 0;
    margin-bottom: 25px;
    font-size: 15px;
}























a.btn_print:link, a.btn_print:visited, a.retour_maison:link, a.retour_maison:visited, .btn_wrapper i{
	color: #FE0118;
}

.indentmenu ul li a.selected {
    background-color: #FE0118;
    border-bottom: 1px solid #FE0118;
}

.box_tabs{
	border-bottom: 3px solid #FE0118;
}

button.btn_calcul4, a.btn_calculateurs:link, a.btn_calculateurs:visited, .form_infos a.btn_calcul4:link, .form_infos a.btn_calcul4:visited, a.btn_calcul4:link, a.btn_calcul4:visited, h3.stit_detail.stit_calcul, .wrapper_triger.active, .btn_eval.btn_calcul4, a.btn_download:link, a.btn_download:visited{
	background-color: #FE0118;
	border-radius: 0px;
	font-weight: 600;
	text-transform: uppercase;
	color:#FFF;
	border: none;
	outline: none;
}

button.btn_calcul4:hover, button.btn_calcul4:focus, .form_infos a.btn_calcul4:hover, a.btn_calcul4:hover, .wrapper_triger, .btn_eval.btn_calcul4:hover, a.btn_download:hover{
	background-color: #333;
	-webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
	font-weight: 600;
	text-transform: uppercase;
}

.wrapper_right_btns{right: 30px;}

.right_btn{
	background-color: #FE0118;
}

.right_btn:hover {
    background-color: #333;
}

a.btn_social, p.socialbtns a{
	transition: color .4s;
}

a.btn_social:hover, p.socialbtns a:hover{
	color: #FE0118 !important;
}

.vendreintro{
	text-align: center;
	background: #FE0118;
	color: #fff;
	padding: 30px 0;
}

.vendreintro h1{
	text-transform: uppercase;
	display: inline-block;
	vertical-align: middle;
	font-weight: 600;
	color: #fff;
}

.vendreintro ul{
	display: inline-block;
	vertical-align: middle;
	text-transform: uppercase;
	font-size: 14px;
	margin-left: 30px;
	text-align: left;
}

.vendreintro li{
	margin-bottom: 5px;
}

h1.h1styled{
	text-transform: uppercase;
    font-weight: 800;
    color: #FE0118;
    font-size: 30px;
    line-height: 1;
    margin: 0;
    margin-bottom: 10px;
	text-align: center;
	padding-top: 40px;
}

#form_item{
	text-align: center;
}

.titre_ajouter_item{
	text-transform: uppercase;
    font-weight: 800;
    color: #333;
    font-size: 25px;
    line-height: 1;
    margin: 0;
    padding-bottom: 30px;
	text-align: center;
}

.page_temoin{max-width: 800px !important;}

.wrapper_btns_mobile > div:first-child, .btn_mobile {
    background-color: #FE0118;
}

.wrapper_btns_mobile > div:last-child, .wrapper_btns_mobile > div:last-child .btn_mobile{
    background-color: #333;
}

.slider img{
	position: fixed !important;
	z-index: -1 !important;
}





.blogsliderwrap, .teminner, .prophsliderwrap{
        max-width: calc(100% - 80px);
        margin-left: auto;margin-right: auto;
    }

sup{font-size: 8px;}

.hbig{display: none !important;}

@media screen and (min-width: 2200px) {
}

@media screen and (max-width: 1240px) {
    header nav{gap:15px}
    .ctas .cta>div{width: calc(100% - 80px);}
    img.royalh {
        width: 120px;
    }
    a.btn_soc:hover span{width: 0 !important;max-width: 0 !important;margin-left: 0 !important;}
    .avantagesctagrid>div{padding: 10px 5px;}
    
    .innerf{
        padding-right: 20px;padding-left: 20px;
    }
}


@media screen and (max-width: 1024px) {
	
	.menu-ico{
		display: block;
		width: 30px;
		height: 22px;
		padding: 10px;
        margin-left: 15px;
        cursor: pointer;
		transition: all .4s;
	}
	
	.menu-ico.open{
	}
	
	.menu-ico div{
		display: block;
		width: 100%;
		height: 4px;
		background: #FE0118;
		margin-bottom: 5px;
		border-radius: 1px;
		transition: all .4s;
	}
	
	.menu-ico.open span{
		background: #fff;
	}
	
    header nav{
        display: none;
        position: absolute;
        right: 5px;
        top: 100px;
        min-width: 30%;
        background-color: #D3D3D3;
        z-index: 999;
        padding: 5px 0;
    }
    header nav a{
        display: block;
        text-align: right;
        padding: 5px 20px;
        border-bottom: 0 !important;
    }
    .soch{margin-left: auto;}
	
    .ctas .cta>div{
        width: 100%;
    }
    .title{
        font-size: 35px;
    }
    .title.smtitle, .bloghome h3{
        font-size: 20px;
    }
    
    .navf{
        padding: 20px 0;
        margin-top: 20px;
    }
    .stepforminner{padding: 20px 0;}
    .contactf h3+p, .contactf p{font-size: 13px;}
    .innerf>.contactf{margin-bottom: 20px;}
    .profilhome .wrap{gap:20px;}
}

@media screen and (max-width: 850px) {
	
    button[type=submit], button.bouton, .bouton, a.bouton{font-size: 14px;}
    
    .prophsliderwrap .bx-controls a, .temhome .bx-controls a, .bloghome .bx-controls a{
        width: 50px;
        height: 50px;
    }
    .prophsliderwrap .bx-controls a:after, .temhome .bx-controls a:after, .bloghome .bx-controls a:after{
        width: 10px;height: 10px;
    }
    .blogsliderwrap, .teminner, .prophsliderwrap{
        max-width: calc(100% - 40px);
    }
    .teminner{
        max-width: calc(100% - 70px);
    }
    
    .bloghome .bx-controls, .bloghome .bx-controls .bx-controls-direction {
        top: 20%;
    }
    
    .footercopy .wrap>div{padding-right: 50px;}
	

}

@media screen and (max-width: 750px) {
	.hbig{display: block !important;}
    .imgf{
        width: 100%;
        height: 300px;
    }
    .innerf{
        width: 100%;
    }

    .innerf>.contactf{width: 100%;}

    .footercopy .wrap{flex-wrap: wrap;}

    .footercopy .wrap>div{width: 100%;padding-right: 0;}

    .footercopy a img{display: none;}

    .avantagesctagrid, .ctas .wrap {
    display: grid;
    grid-template-columns: 1fr;
    }

    .avantagesctagrid>div{
        border-right: 0;
        border-bottom: 2px solid #D3D3D3;
        padding: 25px 0;
    }
    .avantagesctagrid>div:last-child{
        border-bottom: 0;
    }


    .blogsliderwrap>.blogslider{
        grid-template-columns: 1fr;
        gap:0px;
    }

    .bloghome .bx-controls, .bloghome .bx-controls .bx-controls-direction {
        top: 30%;
    }
    .teminner{
        padding: 50px 30px;
    }

    .soch a.btn_menu{display: none;}
    header nav{min-width: 50%;}
    .banner p{font-size: 30px;}
    .ctas .cta{padding: 45px 15px;}
    
    .banimg img:not(.cutout){
        min-height: 250px;
        object-fit: cover;
        object-position: center;
    }
    
    .title{font-size: 27px;}
    .profilhome .wrap{display: block;}
    .imgwshadow{width: 100%;margin-bottom: 60px;}
    
    a.rollprop{
        padding: 15px;
        bottom: 15px;
        left: 15px;
        width: calc(100% - 30px);
    }
    img.propimg{
        aspect-ratio:auto;
        min-height: 300px;
    }
    .prophinfos{margin-top: 7px;margin-bottom: 10px;}
    a.rollprop h3{font-size: 14px;}
    .prophinfo{padding-right: 7px;margin-right: 7px;}
    a.rollprop p{font-size: 20px;}
}

@media screen and (max-width: 370px) {
	
	.btn_social{
		width: 17px;
		margin: 0px 1px;
	}
	
	header nav.soc span{
		font-size: 14px;
	}
	
	.slider img {
    	width: 320% !important;
	}
	
	footer a.logo{
		width: 300px;
	}
}
.back_btn {
	text-align: right;
    position: relative;
    top: -55px;
}

@media screen and (max-width: 590px) { 
	.back_btn {
		top: 0;
		margin: 0 0 30px 0;
	}
	.back_btn a.btn_calcul4 {
		font-size: 12px;
	}
}

.mosaique .box_maison_img img:not(.marq_vendu){
   display: block;
   width: 100%;
   transition: all .4s;
}

.photo_vendu{background: #000 !important;overflow: hidden;}

.photo_vendu:hover img:not(.marq_vendu){transform: scale(1.1);opacity: .7;}
.prophome a:not(.btn) img.marq_vendu{
    width: 210px;
    height: auto;
}
