@font-face {font-family: "Roundo-ExtraLight";src: url("../fonts/Roundo-ExtraLight.otf");}
@font-face {font-family: "Roundo-Light";src: url("../fonts/Roundo-Light.otf");}
@font-face {font-family: "Roundo-Regular";src: url("../fonts/Roundo-Regular.otf");}
@font-face {font-family: "Roundo-Medium";src: url("../fonts/Roundo-Medium.otf");}
@font-face {font-family: "Roundo-SemiBold";src: url("../fonts/Roundo-SemiBold.otf");}
@font-face {font-family: "Roundo-Bold";src: url("../fonts/Roundo-Bold.otf");}
@font-face {font-family: "Viga-Regular";src: url("../fonts/Viga-Regular.ttf");}
@font-face {font-family: "James-Stroker"; src: url("../fonts/James-Stroker.ttf");}
@font-face {font-family: "Antonio"; src: url("../fonts/Antonio.ttf");}


:root {
	--primary			: #D54B6E;
	--secondary			: #000000;
}

* { margin: 0; }
b { font-family: Roundo-Bold; font-weight: normal; }

.icon {
    height: 2.5vw;
    width: 2.5vw;
}
.icon img {
    width: 100%;
    height: 100%;
}

.mobile { display: none!important; }






/* START HEADER */
header section#navigation {
    display: flex;
    height: 100%;
    justify-content: space-between;
    align-items: center;
    width: 100vw;
    height: 5vw;
    margin: auto;
    background: #FFFFFF;
	padding: 0 3.3vw;
	position: fixed;
	z-index: 20;
}
header section#navigation img.icon_head {
/*	height: 70%;*/
	width: 11%;
}



header section#navigation #titre p {
	text-transform:	uppercase;
}

header section#navigation p {
	text-align: center;
	font-size: 1.5vw;
	margin-top: 0.3vw;
}

header section#navigation article#phone p {
	text-align: right;
	font-size: 1.1vw;
}

header section#navigation article#phone a {
	display: flex;
	align-items: center;
    column-gap: 0.5vw;
    font-family: "Roundo-SemiBold";
    text-decoration: none;
    color: #fff;
    font-size: 1.2vw;
    justify-content: right;
	background-color: #DA1B41;
    padding: 0.8vw 1vw;
    border-radius: 35px;
	gap: 1vw;
}

header section#navigation article#phone img {
	width: 1.3vw;
	height: 1.3vw;
}
header section#navigation article#socials {
	display: flex;
    align-items: center;
    column-gap: 0.7vw;
}

header .img_head {
	width: 100%;
}

header section#text {
    display: flex;
    flex-direction: column;
    position: relative;
    margin-top: -16.3vw;
    left: 2.2vw;
    width: fit-content;
    /* row-gap: 1.6vw; */
}

header section#text article#titles {
	display: flex;
    flex-direction: column;
    width: fit-content;
	margin-top: -1vw;
    margin-bottom: 1vw;
}
header section#text article#titles .title {
    font-family: "Roundo-SemiBold";
    font-weight: 600;
    font-size: 1.3vw;
	letter-spacing: 1px;
    width: 27vw;
}
header section#text article#titles .title1 {
	order: 1;
	padding: 1vw;
	/* background-color: pink; */
	color: #fff;
}
header section#text article#titles .title2 {
	order: 3;
	padding: 1vw;
}
/* header section#text article#titles:after {
    content: "";
    width: 0;
    height: 0;
    border-top: 1.2vw solid #000000;
    border-left: 0.8vw solid transparent;
    border-right: 0.8vw solid transparent;
    order: 2;
    top: -0.1vw;
    left: 6vw;
    position: relative;
} */
header section#text article#resume {
	background-color: #FFFFFF;
	color: #000000;
	padding: 1vw 2.5vw;
	font-family: Roundo-Regular;
	font-size: 1.05vw;
	filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
	visibility: hidden;
}
/* END HEADER */

/* START MAIN */
main {
	margin-top: 8.1vw;
    display: flex;
    flex-direction: column;
}

/*Debut Intro*/

main section#intro {
	width: 100%;
    position: relative;
    line-height: 1.5vw;
}

main section#intro p {
	font-size: 1.1vw;
	margin-bottom: 0.7vw;
}

main section#intro div.container {
	width: 100%;
	display: flex;
	justify-content: space-between;
/*	line-height: 1.5vw;*/
}

main section#intro div.container h3 {
	font-family: "Viga-Regular";
	margin-top: 3vw;
	font-size: 1.6vw;
	color: var(--primary);
	margin-bottom: 1.5vw;
}
main section#intro div.container h4 {
	font-family: Roundo-Regular;
	font-size: 1.1vw;
	color: var(--secondary);
	margin-top: 1.5vw;
	margin-bottom: 1vw;
}

main section#intro div.container ul {
	margin-top: 2vw;
	
	font-size: 1.1vw;
}

main section#intro div#list-intro {
	background-color: #EDEDED;
    height: auto;
    width: 100%;
    padding-left: 3vw;
    padding-top: 3vw;
    padding: 3vw 0 3vw 3vw;
}

main section#intro div#list-intro h2 {
	font-size: 2.6vw;
	color: #86478B;
	font-family: "Antonio";
	line-height: 3vw;
	text-transform: uppercase;
}

main section#intro div#list-intro h2::before {
	content: " ";
    position: absolute;
    width: 20vw;
    height: 23vw;
    background-image: url(../images/cle-bloc1.png);
    background-size: 37%;
    background-repeat: no-repeat;
    margin-top: -13.4vw;
    margin-left: -4vw;
}

main section#intro div#list-intro h2 span {
	margin-left: 3.8vw;
}

main section#intro div#list-intro h4 {
	color: #864086;
	font-size: 1.3vw;
	font-family: "Roundo-Bold";
	
}

main section#intro div#list-intro p {
	width: 36%;
    font-size: 0.92vw;
    line-height: 1vw;
	font-family: "Roundo-Regular";
}

main section#intro div#list-intro h5 {
	font-size: 1.3vw;
	color: #8578B6;
	font-family: "Roundo-Bold";
}

main section#intro div#list-intro img.deco-persona {
	width: 20vw;
    position: absolute;
    left: 48%;
    margin-top: -4.7vw;
}

main section#dynamiser {
	margin-left: 3vw;
	padding: 2vw 0 6vw 0;
}

main section#dynamiser h4 {
	color: #DA1B41;
	font-family: "Antonio";
	font-size: 2.6vw;
	text-transform: uppercase;
}

main section#dynamiser h4::after {
	content: " ";
    position: absolute;
    width: 30vw;
    height: 10vw;
    background-image: url("../images/flexi-boost.png");
    background-size: 36%;
    background-repeat: no-repeat;
    margin-top: -4vw;
    margin-left: 17vw; /*5vw;*/
}



main section#dynamiser p {
	font-size: 1vw;
	font-family: "Roundo-Regular";
	width: 42%;
	padding: 2.5vw 0;
}

main section#dynamiser .dynamiser-fleche {
	width: 30vw;
    margin-left: -3vw;
}

main section#dynamiser h5 .o1, main section#dynamiser h5 .o2, main section#dynamiser h5 .o3 {
	font-size: 4.5vw;
	font-family: "James-Stroker";
	font-weight: 200;
	color: #F7B532;
	 text-shadow: 2px 2px 0 #ED7346; /* décalage X, Y et couleur de l’ombre */
}

main section#dynamiser h5 {
	font-size: 1.5vw;
	font-family: "Antonio";
	font-weight: bold;
}

main section#dynamiser h5 .o4 {
	font-size: 3vw;
	font-family: "James-Stroker";
	font-weight: 200;
	color: #F27F2D;
	text-shadow: 2px 2px 0 #DA1B41; /* décalage X, Y et couleur de l’ombre */
}

main section#dynamiser h5 .o5 {
	font-size: 3vw;
	font-family: "James-Stroker";
	font-weight: 200;
	color: #DA1B41;
	text-shadow: 2px 2px 0 #F7B532; /* décalage X, Y et couleur de l’ombre */
}

main section#dynamiser h5 .o3-descr {
	font-size: 1vw;
    margin-left: 3.5vw;
    font-family: "Roundo-Regular";
    color: #000;
    width: 30vw;
    display: block;
}

main section#dynamiser .card-programme {
	display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 1vw;
    margin-left: 2.5vw;
} 

main section#dynamiser .card-programme img {
	width: 33%;
}

main section#dynamiser .bloc-offre {
	display: flex;
    justify-content: flex-start;
    align-items: baseline;
    gap: 4vw;
    margin-top: 2vw;
}

main section#descr-offre {
	background: linear-gradient(140deg,rgba(91, 149, 208, 1) 0%, rgba(0, 116, 190, 1) 100%);
	padding: 0 0 3vw 3vw;
}

main section#descr-offre .patch-meuble {
	position: absolute;
    left: 58%;
    width: 15vw;
    margin-top: -7vw;
}

main section#descr-offre h4 {
	color: #fff;
	font-family: "Antonio";
	font-size: 2.6vw;
	text-transform: uppercase;
	margin-top: 3vw;
}

main section#descr-offre .descr-list-container {
	display: flex;
	justify-content: baseline;
	align-items: flex-start;
	margin-top: 2.5vw;
	gap: 5vw;
}

main section#descr-offre .descr-col {
	max-width: 27%;
}
@media (max-width: 768px) {
	main section#descr-offre .descr-col {
		max-width: 98%;
	}
}

main section#descr-offre .descr-col .col-picto {
	height: 2.2vw;
}

main section#descr-offre .descr-col h5 {
	font-size: 1.5vw;
	font-family: "Antonio";
	text-transform: uppercase;
	color: #fff;
	line-height: 1.9vw;
}

main section#descr-offre .descr-col .col-bp-container {
	display: flex;
	flex-direction: column;
	justify-content: start;
	align-items: flex-start;
	gap: 1vw;
	margin-top: 2vw;

}

main section#descr-offre .descr-col .col-bp-container p {
	font-family: "Roundo-Regular";
	font-size: 0.9vw;
	color: #fff;
	padding-left: 1.7vw;
	min-height: 2.5vw;
}

main section#descr-offre .descr-col:first-of-type .col-bp-container p:first-of-type {
	color: #DA1B41;
    background-color: #fff;
    width: 23vw;
    position: relative;
    margin-left: -5vw;
    padding: 0.5vw 0 0.5vw 6.7vw;
    margin-top: -0.5vw;
}

main section#descr-offre .descr-col:first-of-type .col-bp-container p:first-of-type::before {
	content: " ";
    width: 2.2vw;
    height: 2.2vw;
    position: absolute;
    background-image: url("../images/flexi-decr-redbp.png");
    background-size: 50%;
    background-repeat: no-repeat;
    display: block;
    margin-left: -1.7vw;
}

main section#descr-offre .descr-col .col-bp-container p::before {
	content: " ";
    width: 1.5vw;
    height: 1.5vw;
    position: absolute;
    background-image: url("../images/flexi-descr-whitebp.png");
    background-size: 50%;
    background-repeat: no-repeat;
    display: block;
    margin-left: -1.7vw;
}

main section#senioriales {
	background: linear-gradient(114deg,rgba(134, 71, 139, 1) 0%, rgba(158, 140, 194, 1) 100%);
	padding: 3vw 0 3vw 3vw;
}

main section#senioriales h4 {
	font-size:2.7vw;
	font-family: "Antonio";
	text-transform: uppercase;
	color: #fff;
	margin-bottom: 2vw;
}

main section#senioriales .senioriales-cards {
	display: flex;
	justify-content: flex-start;
	gap: 1vw;
	align-items: center;
}

main section#senioriales .senioriales-cards .card {
	width: 14%;
}

main section#senioriales p {
	font-size: 1vw;
	color: #fff;
	font-family: "Roundo-Regular";
	margin-top: 1.5vw;
}

main section#flexi-invest {
	padding: 3vw 0 0vw 3vw;
}

main section#flexi-invest h4 {
	font-family: "Antonio";
	font-size: 2.7vw;
	text-transform: uppercase;
	color: #0074BE;
}

main section#flexi-invest h5 {
	font-family: "Roundo-Bold";
	font-size: 1.4vw;
	color: #013989;
	margin: 1vw 0;
}

main section#flexi-invest .invest-list-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1.5vw;
	margin: 2vw 0;
}

main section#flexi-invest .flexi-bottom {
	width: 77vw;
    position: relative;
    margin-top: -3vw;
	bottom: -0.3vw;
}



main section#flexi-invest .invest-list-container .invest-list-row {
	display: flex;
	justify-content: flex-start;
	align-items: end;
	gap: 1vw;
}

main section#flexi-invest .invest-list-container .invest-list-row img {
	width: 2.2vw;
}

main section#flexi-invest .invest-list-container .invest-list-row p {
	font-size: 1.05vw;
	font-family: "Roundo-Medium";
	color: #000;
}

main section#intro div.container ul li {
	color: #D92D4B;
	font-size: 2vw;
	margin-top: 1vw;
	margin-bottom: 1vw;
}

main section#intro div.container ul li span.intro-list-text {
	color: #000000;
	font-size: 1.1vw;
	text-wrap: wrap;
}

main section#intro div.container div#image-intro {
	margin-top: 10%;
	max-width: 300px;
}

main section#intro div.container #grid {
	display: flex;
 	flex-wrap: wrap;
	justify-content: space-between;
	margin-left: -10px;
}
main section#intro div.container #grid .cell{
	width: calc(25% - 5px); /* 25% moins l'espace entre les colonnes */
  	padding: 10px;
  	box-sizing: border-box;
	display: flex; 
}
main section#intro div.container #grid .content{
	text-align: center;
	border: 1px solid var(--primary);
	padding: 20px 5px 10px;
	display: flex; /* Pour aligner le contenu */
  	flex-direction: column; /* Pour empiler le contenu */
  	justify-content: flex-start; 
}
main section#intro div.container #grid .content p{
	font-family: Roundo-Regular;
	font-size: 0.8vw;
	line-height: 0.9vw;
}

main section#intro div.container #grid .icon {
	width: 5vw;
	height: 5vw;
	border-radius: 50%;
	background-color: var(--primary);
	margin: 0 auto 20px;
	overflow: hidden;
	position: relative;
}

main section#intro div.container #grid .icon img{
	width: 50%;
	height: auto;
  	position: absolute; /* Pour positionner l'image par rapport à son parent (.icon) */
  	top: 50%;
  	left: 50%;
  	transform: translate(-50%, -50%);
}
/*Fin Intro*/

main section#form form div#fullname {
	/* display: flex;
	justify-content: space-between;
	row-gap: 2%; */
}

main section#form form div#fullname input {
	width: 100%;
}

main section#form form div#fulladress {
	display: flex;
	justify-content: space-between;
	row-gap: 2%;
}

main section#form form div#fulladress input {
	width: 49%;
}

main section#form form select {
	font-family: Roundo-Regular;
	font-size: 0.85vw;
	line-height: 1.4vw;
	border: none;
	background-color: #f6f6f6;
	padding: 0.4vw;
	width: 100%;
}

main section#form form article#newsletter {
	display: flex;
	column-gap: 0.3vw;
	margin: 1vw 0 1vw 0;
	justify-content: center;
}

main section#form form article#newsletter p {
	font-size: 0.80vw;
}

main section#form #commentaire {
	padding-bottom: 5vw;
}

main section#form {
    display: flex;
    flex-direction: column;
    position: fixed;
    height: 100%;
    margin-top: -5vw;
    top: 10vw;
    /* left: 70%; */
    width: 25%;
    z-index: 100;
    background: linear-gradient(140deg,rgba(134, 71, 139, 1) 0%, rgba(158, 49, 103, 1) 100%);
    box-shadow: 0px 0px 43px rgba(0, 0, 0, 0.08);
    right: 0;
	overflow-y: scroll;
	padding-bottom: 5vw;
}

main section#form h3 {
    /* background-color: #000000; */
    color: #FFFFFF;
    /* text-align: center; */
    text-transform: uppercase;
    font-family: "Antonio";
    font-size: 1.82vw;
    padding-bottom: 1vw;
	line-height: 2.32vw;
}

main section#form .form-subtitle {
	color: #fff;
	font-family: "Roundo-SemiBold";
	font-size: 0.94vw;
	padding-bottom: 0.7vw;
}
main section#form article#confirmation {
	font-family: 'Roundo-Regular';
    flex-direction: column;
	color: #fff;
    row-gap: 2vw;
    width: 80%;
    margin: 3vw auto;
}
main section#form article#confirmation h4 {
	font-size: 1.1vw;
}
main section#form article#confirmation p {
	font-size: 0.85vw;
}
main section#form form {
	font-family: Roundo-Regular;
    font-size: 0.85vw;
    display: flex;
    flex-direction: column;
    row-gap: 0.6vw;
    width: 80%;
    margin: 2vw auto 3vw auto;
}
main section#form form article#civilite {
	display: flex;
	column-gap: 0.5vw;
}
main section#form form input:not(input[type="checkbox"]), main section#form form textarea {
	font-family: "Roundo-Regular";
    font-size: 0.85vw;
    line-height: 1.4vw;
    border: none;
    background-color: #F6F6F600;
    padding: 0.4vw;
    border: 1px solid #fff;
	color: #fff;
	width: 100%;
}

::placeholder {
	color: #fff;
}
main section#form form article#project {
	display: flex;
	flex-direction: column;
	row-gap: 0.5vw;
}
main section#form form article#project div.project {
	display: flex;
	flex-direction: row;
    column-gap: 2vw;
    justify-content: center;
}
main section#form form article#optin {
	display: flex;
    flex-direction: row;
    column-gap: 1vw;
    font-size: 0.73vw;
}
main section#form form article#optin input {
	width: 5vw;
}
#nonews {margin-left: 1vw;}

main section#form form button[type="submit"] {
	font-family: Roundo-Regular;
	font-size: 1.26vw;
	/* text-transform: uppercase; */
	width: fit-content;
	margin: auto;
	padding: 0.7vw 2vw;
	background-color: #F8B532;
	color: #FFFFFF;
	border: none;
	border-radius: 27px;
	cursor: grab;
}

#civilite {
    display: flex;
    gap: 10px;
}

#civilite label {
	border: 1px solid white;
	background-color: #8e4585;
	color: white;
	padding: 15px 30px;
	font-weight: bold;
	text-align: center;
	cursor: pointer;
	transition: background-color 0.3s, color 0.3s;
	border-radius: 4px;
	position: relative;
	width: 5.4vw;
}

#civilite input[type="radio"] {
	display: none;
}

#civilite input[type="radio"]:checked + label {
	background-color: white;
	color: #8e4585;
}

/* Pour activer le label lorsqu'on clique dessus */
#civilite label:has(input[type="radio"]:checked) {
	background-color: white;
	color: #8e4585;
}



.newsletter-btn {
	display: flex;
	align-items: center;
	background: linear-gradient(to right, #E43353, #EC6663); /* Dégradé rose/rouge */
	padding: 20px;
	color: white;
	font-weight: bold;
	font-size: 1.2em;
	border-radius: 4px;
	cursor: pointer;
}

.newsletter-btn input[type="checkbox"] {
	width: 24px;
	height: 24px;
	margin-right: 15px;
}

.consentement {
	display: flex;
	align-items: flex-start;
	max-width: 700px;
}

.consentement input[type="checkbox"] {
	width: 24px;
	height: 24px;
	margin-right: 15px;
	margin-top: 4px;
	border: 2px solid white;
}

.consentement span {
	font-size: 1em;
	line-height: 1.4;
}

 .checkbox-wrapper {
      display: flex!important;
      align-items: flex-start!important;
      margin-bottom: 20px!important;
	  margin-inline: 0!important;
      background: linear-gradient(to right, #d8235c, #ea5a5a);
      padding: 20px;
      border-radius: 6px;
      max-width: 700px;
	  align-items: center!important;
	  justify-content: flex-start !important;
	  gap: 1vw!important;
    }

	.mab_radio input {
    	position: relative!important;
    	z-index: 1!important;
    	width: 1.5vw!important;
		height: 1.5vw!important;
    	margin: 0!important;
    	opacity: 1!important;
	}

    .checkbox-wrapper.second {
      background: none;
	  padding: 0;
    }

    .checkbox-custom {
      appearance: none;
      -webkit-appearance: none;
      background-color: transparent;
      border: 2px solid white;
      width: 1.5vw;
      height: 1.5vw;
      margin-right: 15px;
      position: relative;
      cursor: pointer;
      outline: none;
    }

	.checkbox-wrapper.second .checkbox-custom {
		width: 2vw!important;
		height: 1.2vw!important;
	}

    .checkbox-custom:checked {
      background-color: white;
    }

    .checkbox-custom:checked::after {
      content: "";
		position: absolute;
		left: 0.4vw;
		top: 0.1vw;
		width: 0.4vw;
		height: 0.8vw;
		border: solid #93306a;
		border-width: 0 2px 2px 0;
		transform: rotate(45deg);
    }

	.checkbox-wrapper.second .checkbox-custom:checked::after {
      content: "";
		position: absolute;
		left: 0.25vw;
		top: 0;
		width: 0.4vw;
		height: 0.8vw;
		border: solid #93306a;
		border-width: 0 2px 2px 0;
		transform: rotate(45deg);
    }

    .checkbox-label {
      font-size: 1.2em;
      font-weight: bold;
	  color:#fff;
	  font-family: "Roundo-Regular";
    }

    .checkbox-text {
      font-size: 0.6vw;
      line-height: 1.4;
	  color:#fff;
	  font-family: "Roundo-Regular";
    }

/*Section des blocs*/

main section#cards-bloc {
	width: 72%;
	margin-left: 3vw;
}
main section#cards-bloc h3{
	font-size: 1.7vw;
	color: #D54B6E;
}

main section#cards-bloc p {
	color: #D54B6E;
	font-size: 0.8vw;
}
main section#cards-bloc p span {
	color: #D54B6E;
	font-size: 1vw;
}

main section#cards-bloc div#container-blocs {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	column-gap: 1vw;
	margin-left: -5.5vw;
}

main section.blocs12 {
	width: 40%;
	margin-top: 2vw;
	background-color: #F6F6F6;
	padding: 1vw;
	
}
main section.blocs13 {
	width: 26%;
	margin-top: 2vw;
	background-color: #F6F6F6;
	padding: 1vw;
	
}

main section#cards-bloc div#container-blocs section div {
	display: flex;
	justify-content: left;
	vertical-align: middle;
	margin-bottom: 1.5vw;

}

main section#cards-bloc div#container-blocs section div img {
	width: 1.05vw; 
}
main section#cards-bloc div#container-blocs section div p {
	font-size: 1.1vw;
	margin-left: 0.5vw;
	color: #000000;
	text-transform: uppercase;
}

.cards-emplacement{
	font-family: viga-regular;
}

main section#cards-bloc div#container-blocs section .patch {
	position: absolute;
    margin-top: -6vw;
    margin-left: 16.4vw;
}
main section#cards-bloc div#container-blocs section .patch img{
	width: 5vw;
	height: 5vw;
}
/*main section#bloc1 {
	
}*/
/*main section#bloc2 {
	
}*/
main section#bloc1 img,
main section#bloc2 img {
	width: 100%;
}
main article.text > * {
	width: fit-content;
}
main article.text {
    display: flex;
    flex-direction: column;
    row-gap: 0.6vw;
	width: fit-content;
	margin-top: 1vw;
}
main article.text h3 {
	font-size: 1.3vw;
	font-family: Viga-Regular;
	font-weight: normal;
	text-transform: uppercase;
}
main article.text h4 {
	font-size: 0.8vw;
	font-family: Roundo-Regular;
	font-weight: normal;
	min-height: 3.3vw;
}
main article.text ul {
	font-size: 1.0vw;
	font-family: Roundo-Regular;
	margin-bottom: 1vw;
	padding-left: 1.3vw;
}

main article li {
	line-height: 2vw;
	list-style-type:" - " ;
}

main article ul li span.deca {
	font-size: 1.0vw;
}
main article.text ul.margin > li:last-child{
	margin-bottom: 1.0vw;
}

/* prix */
main section.blocs12 article.text p, main section.blocs13 article.text p {
	font-size: 1.1vw;
	width: 100%;
	background-color: #ffffff;
	padding: 0.5vw 0 0.5vw 0.5vw;
	line-height: 1.2vw;
}

/*Fin Section bloc*/

/*Debut Section Logo*/

main div#zone-logo {
	background-color: #F6F6F6;
	margin-top: 2vw;
}

main div#zone-logo section#logo {
	width: 60%;
	display: flex;
	justify-content: space-around;
	margin-left: 10vw;
	padding: 3vw 0 3vw 0;
	background-color: #F6F6F6;
}

main div#zone-logo section#logo div.alllogo {
text-align: center;
line-height: 1.5vw;
font-size: 1.1vw;

}

main div#zone-logo section#logo div.alllogo p {
	margin-top: 1vw;
}

main div#zone-logo section#logo div.alllogo p span {
	font-size: 1.5vw;
}

/*Fin Section Logo*/
main section#form form div input.radioI {
	width: 1vw;
	height: 1vw;
	margin-right: 1vw;
	margin-bottom: -1vw;

}

main section#form form article#civilite input.radioCiv{
	width: 1vw;
	height: 1vw;
}

main section#form form div input.radlab {
	vertical-align: baseline;
	margin-top: -10px;
	width: 86%;
}

main section#form form div.pi {
	margin-bottom: 0.3vw;
}

main section#form form label#projet {
	line-height: 2vw;
}

main section#form form label#lblresidence {
	margin-top: 1vw;
}

.gris {
	background-color: #F6F6F6;
	padding: 1vw;
}

#text-news {margin-top: 1vw; text-align: center;}

/* END MAIN */

/* START FOOTER */
footer {
    background-color: #EDEDED;
    padding: 2vw 3vw;
    text-align: justify;
    font-family: Roundo-Regular;
}
footer section#links {
	display: flex;
	flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 3vw;
	width: 72%;
}
footer section#links article#left {
    display: flex;
    flex-direction: column;
    row-gap: 0.7vw;
    align-items: center;
    font-size: 1.35vw;
    font-family: Roundo-Bold;
}
footer section#links article#left img {
	width: 12vw;
}
footer section#links article#left a {
    text-decoration: none;
    color: #000000;
}
footer section#links article#right {
	display: flex;
	gap: 1vw;
}
footer section#links article#right a.phone {
    display: flex;
	flex-direction: row-reverse;
    align-items: center;
    column-gap: 0.5vw;
    font-family: "Roundo-SemiBold";
    text-decoration: none;
    color: #fff;
    font-size: 1vw;
    justify-content: right;
    background-color: #004899;
    padding: 0.8vw 1.4vw;
    border-radius: 35px;
    gap: 1vw;
}

footer section#links article#right a.phone p {
	margin-top: 0.2vw;
}

footer section#links article#right a.web p {
	margin-top: 0.2vw;
}

footer section#links article#right a.phone .icon {
	width: 1.3vw;
	height: 1.3vw;
}

footer section#links article#right a.web {
    display: flex;
	flex-direction: row-reverse;
    align-items: center;
    column-gap: 0.5vw;
    font-family: "Roundo-SemiBold";
    text-decoration: none;
    color: #fff;
    font-size: 1vw;
    justify-content: right;
    background-color: #DA1B41;
    padding: 0.8vw 1vw;
    border-radius: 35px;
    gap: 1vw;
}

footer section#links article#right a.web .icon {
	width: 1.3vw;
	height: 1.3vw;
}

footer section#links article#right div.socials {
	display: flex;
	flex-direction: row;
	column-gap: 0.8vw;
	justify-content: flex-end;
}
footer section#mentions {
	display: flex;
	flex-direction: column;
	row-gap: 1vw;
	width: 72%;
}
footer section#mentions p {
	font-size: 0.65vw;
}
/* END FOOTER */

/*----------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------*/

/* MOBILE */
@media (max-width: 768px) {
	.desktop { display: none!important; }
	.mobile { display: block!important; }

	.icon {
	    height: 8.5vw;
	    width: 8.5vw;
	}

	footer section#links article#right a.web p {
    	margin-top: 1vw;
	}

	/* START HEADER */

	header .img_head {
		padding-top: 20vw;
	}

	header section#navigation img.icon_head {
		width: 43%;
	}
	header section#navigation {
		height: 10vh;
		width: 100%;
	   	justify-content: space-between;
	}

	header section#navigation article#phone img {
    	width: 5.3vw;
    	height: 5.3vw;
	}

	header section#navigation article#phone a {
		padding: 2.6vw;
	}

	header section#navigation article#socials { 
		display: none;
	}

	header section#navigation article#phone p {
    	text-align: right;
    	font-size: 4vw;
	}

	header section#navigation article#titre p,  header section#navigation #phone #horaire{
    	display: none;
	}

	header section#navigation article#phone p {
	  text-align: right;
    	font-size: 3vw;
    	margin-top: 0.3vw;
	}

	header section#navigation article#phone a {
		font-size: 3.7vw;
	}
	header section#text {
		left: 3vw;
	    row-gap: 3.6vw;
		width: 86%;
		position: absolute;
        top: 85vw;
	}
	header section#text article#titles .title {
		font-size: 3.7vw;
	    padding: 3vw 3vw 3vw 2vw;
		width: 100%;
	}
	header section#text article#titles:after {
	    border-top: 3.6vw solid #000000;
	    border-left: 1.8vw solid transparent;
	    border-right: 1.8vw solid transparent;
	    left: 24vw;
	}
	header section#text article#resume {
		padding: 5vw 7vw;
	    font-size: 4.2vw;
	}
	/* END HEADER */

	/* START MAIN */
	main {
		margin-top: 0;
	}
	main section#form {
		order: 3;
	    position: relative;
	    top: unset;
	    right: unset;
	    left: unset;
	    margin-top: 10vw;
	    width: 100%;
	}

	main section#intro div#list-intro h2::before {
        content: " ";
        position: absolute;
        width: 100%;
        background-image: url(../images/cle-bloc-mob.png);
        background-size: 75%;
        background-repeat: no-repeat;
        margin-top: -22.5vw;
        margin-left: -4vw;
        height: 100%;
	}

	main section#intro div#list-intro h2 span {
    	margin-left: 0
	}

	main section#intro div#list-intro h2 {
    	font-size: 7vw;
        line-height: 8vw;
	}

	main section#intro div#list-intro h4 {
		font-size: 4.2vw;
	}

	main section#form form select {
		height: 10vw;
	}

	.checkbox-label {
		font-size: 1.1em;
		margin-top: 1vw;
	}

	main section#form #commentaire {
		padding-bottom: 20vw;
	}

	main section#form article#confirmation h4 {
		font-size: 4.73vw;
	}
	main section#form article#confirmation p {
		font-size: 3.73vw;
	}
	main article#form-button {
	    position: fixed;
	    bottom: 5vw;
	    width: 100%;
	    text-align: center;
        z-index: 1000;
        opacity: 0;
        transition: opacity 0.5s ease;
	}
	main article#form-button.visible {
	    opacity: 1;
        transition: opacity 0.5s ease;
	}
	main article#form-button h4 {
		background: linear-gradient(119deg,rgba(248, 181, 50, 1) 0%, rgba(242, 127, 45, 1) 100%);;
	    color: #FFFFFF;
	    text-transform: uppercase;
	    width: fit-content;
	    margin: auto;
        padding: 5vw;
	    font-family: Viga-Regular;
	    font-size: 4.8vw;
	    font-weight: normal;
		border-radius: 33px;
	}

	.mab_radio input {
    	width: 5vw!important;
		height: 5vw!important;
	}

	.checkbox-wrapper {
		gap: 3vw !important;
	}

	.checkbox-custom:checked::after {
    	content: "";
    	position: absolute;
    	left: 1vw;
    	top: -0.2vw;
    	width: 2vw;
    	height: 3.5vw;
    	border: solid #93306a;
    	border-width: 0 2px 2px 0;
    	transform: rotate(45deg);
	}

	.checkbox-wrapper.second .checkbox-custom:checked::after {
    	content: "";
    	position: absolute;
    	left: 0.85vw;
    	top: -1.6px;
    	width: 2vw;
    	height: 3.8vw;
    	border: solid #93306a;
    	border-width: 0 2px 2px 0;
    	transform: rotate(45deg);
	}

	/*Debut intro Mobile*/

	main section#intro {
		margin-left: 0;
		margin-right: 0;
		line-height: 5vw;
		width: 100%;
	}

	main section#intro div#list-intro p {
		width: 94%;
		font-size: 3.32vw;
		line-height: 4vw;
		font-family: "Roundo-Regular";

	}

	main section#intro div#list-intro h5 {
    	font-size: 4.2vw;
    	margin-top: 4vw;
	}

	main section#intro div.container {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		/* margin-top: 3vw;
		margin-left: 5vw;
		margin-right: 5vw; */
	}

	main section#intro div.container h3 {
		margin-top: 3vw;
		font-size: 4.3vw;
	}

	main section#intro div.container ul {
		margin-top: 2vw;
		margin-left: 0;
		font-size: 4vw;
		padding-left: 5vw;
	}

	main section#intro div#list-intro {
		width: 100%;
		padding: 22vw 0 50vw 5vw;
	}

	main section#intro div#list-intro img.deco-persona {
    	width: 40vw;
    	left: 25%;
    	margin-top: 72vw;
	}

	main section#dynamiser h4 {
    	font-size: 7vw;
	}

	main section#dynamiser {
    	padding: 20vw 0 11vw 0;
		margin-inline: 5vw;
	}

	main section#dynamiser h4::after {
    	content: " ";
    	position: absolute;
    	width: 35vw;
    	height: 27vw;
    	background-image: url("../images/flexi-boost.png");
    	background-size: 90%;
    	background-repeat: no-repeat;
    	margin-top: -31vw;
    	margin-left: 6vw;
	}

	main section#dynamiser p {
    	font-size: 3.3vw;
    	font-family: "Roundo-Regular";
    	width: 100%;
    	padding: 6.5vw 0;
	}

	main section#dynamiser .dynamiser-fleche {
    	width: 100%;
    	margin-left: 0;
		margin-top: 3vw;
		margin-bottom: 7vw;
	}

	main section#dynamiser h5 {
	    font-size: 5.9vw;
		width: 96%;
		text-align: center;
		margin-top: 4vw;
	}

	main section#dynamiser h5 .o1, main section#dynamiser h5 .o2, main section#dynamiser h5 .o3 {
    	font-size: 21vw;
    	color: #F7B532;
    	text-shadow: 2px 2px 0 #ED7346;
	}

	main section#dynamiser .bloc-offre {
    	display: flex;
		flex-direction: column;
	    justify-content: flex-start;
	    align-items: baseline;
	    gap: 4vw;
	    margin-top: 2vw;
	}

	main section#dynamiser h5 .o4, main section#dynamiser h5 .o5 {
    	font-size: 12vw;
	}

	main section#dynamiser h5 .o3-descr {
    	font-size: 3.3vw;
    	margin-left: 3.5vw;
    	font-family: "Roundo-Regular";
    	color: #000;
    	width: 96%;
    	display: block;
    	text-align: center;
	}

	.splide__arrow {
		opacity: 0 !important;
	}

	.splide__pagination__page {
		background-color: #F27F2D!important;
		opacity: 1!important;
	}

	main section#descr-offre {
    	padding: 0 0 10vw 5vw;
	}

	main section#descr-offre .patch-meuble {
    	position: absolute;
    	left: inherit;
    	width: 35vw;
    	margin-top: -11vw;
    	right: 0;
	}

	main section#descr-offre h4 {
    	font-size: 7vw;
    	margin-top: 9vw;
	}

	main section#descr-offre .descr-list-container {
    	display: flex;
		flex-direction: column;
    	justify-content: flex-start;
    	align-items: flex-start;
    	margin-top: 10vw;
	}

	main section#descr-offre .descr-col h5 {
    	font-size: 5.9vw;
		line-height: 7vw;
	}

	main section#descr-offre .descr-col .col-picto {
    	height: 12vw;
		/* width: 12vw; */

	}

	main section#descr-offre .descr-list-container .mobile-disposition {
		display: flex !important;
    	justify-content: flex-start;
    	gap: 6vw;
	}

	main section#descr-offre .descr-col .col-bp-container p {
    	font-size: 3.3vw;
	}

	main section#descr-offre .descr-col:first-of-type .col-bp-container p:first-of-type::before {
    	content: " ";
    	width: 6.2vw;
    	height: 6.2vw;
    	position: absolute;
    	background-image: url(../images/flexi-decr-redbp.png);
    	background-size: 50%;
    	background-repeat: no-repeat;
    	display: block;
    	margin-left: -4.7vw;
	}

	main section#descr-offre .descr-col:first-of-type .col-bp-container p:first-of-type {
    	width: 140%;
    	margin-left: -7vw;
    	padding: 1.5vw 0 1.5vw 12.7vw;
    	margin-top: -0.5vw;
	}

	main section#descr-offre .descr-col .col-bp-container p::before {
    	content: " ";
    	width: 6.5vw;
    	height: 6.5vw;
    	position: absolute;
    	background-image: url(../images/flexi-descr-whitebp.png);
    	background-size: 50%;
    	background-repeat: no-repeat;
    	display: block;
    	margin-left: -4.7vw;
	}

	main section#descr-offre .descr-col .col-bp-container p {
    	padding-left: 5.7vw;
	}

	main section#descr-offre .descr-col .col-bp-container {
    	display: flex;
    	flex-direction: column;
    	justify-content: start;
    	align-items: flex-start;
    	gap: 4vw;
    	margin-top: 5vw;
	}

	main section#senioriales {
    	background: linear-gradient(114deg, rgba(134, 71, 139, 1) 0%, rgba(158, 140, 194, 1) 100%);
    	padding: 10vw 5vw 10vw 5vw;
	}

	

	main section#senioriales h4 {
	    font-size: 7vw;
	}

	main section#senioriales .senioriales-cards {
    	display: flex;
    	justify-content: flex-start;
    	gap: 5vw;
    	align-items: center;
    	margin: 5vw 0;
		flex-wrap: wrap;
		
	}

	main section#senioriales .senioriales-cards .card {
    	width: 47%;
	}

	main section#senioriales p {
    	font-size: 3.4vw;
    	color: #fff;
    	font-family: "Roundo-Regular";
    	margin-top: 1.5vw;
	}

	main section#flexi-invest {
    	padding: 10vw 0 0vw 5vw;
	}

	.checkbox-wrapper.second .checkbox-custom {
    	width: 10vw!important;
    	height: 5vw!important;
	}

	main section#flexi-invest h4 {
    	font-size: 7vw;
	}

	main section#flexi-invest h5 {
    	font-size: 1.4vw;
	}

	main section#flexi-invest h5 {
    	font-size: 3.8vw;
    	margin: 3vw 0;
	}

	main section#flexi-invest .invest-list-container {
    	gap: 5vw;
		margin: 5vw 0;
	}

	main section#flexi-invest .invest-list-container .invest-list-row {
    	gap: 5vw;
	}

	main section#flexi-invest .invest-list-container .invest-list-row img {
    	width: 8vw;
	}

	main section#flexi-invest .invest-list-container .invest-list-row p {
    	font-size: 3.35vw;
	}

	main section#flexi-invest .flexi-bottom {
	    width: 100%;
    	margin-top: 10vw;
	}

	main section#intro div.container ul li {
		color: #D92D4B;
		font-size: 4vw;
		margin-top: 1vw;
		margin-bottom: 1vw;
	}

	main section#intro div.container ul li span.intro-list-text {
		color: #000000;
		font-size: 3.5vw;
		text-wrap: wrap;
	}

	main section#intro div.container div#image-intro {
		position: absolute;
    	top: -44%;
    	width: 30vw;
    	right: -9px;

	}

	main section#intro div.container h4 {
		margin-top: 5vw;
		font-size: 3.5vw;

	}
	/*Fin intro Mobile*/
	main section#intro div.container #grid {
		margin-left: 0;
	}

	main section#intro div.container #grid .cell {
		width: calc(50% - 3vw);
    	padding: 2vw 0 3vw;
	}

	main section#intro div.container #grid .content {
		width: 100%;
	}
	main section#intro div.container #grid .icon { 
		width: 15vw;
		height: 15vw;
	}
	main section#intro div.container #grid .content p {
		font-size: 2.8vw;
		line-height: 2.9vw;
	}	

	main section#cards-bloc div#container-blocs {
	display: flex;
	flex-direction: column;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    column-gap: 1vw;
    margin: 0;
	}

	main section#cards-bloc {
		width: 100%;
    	margin-left: 0;
		margin-right: 0;
    	margin-top: 155vw;
	}
	main section#cards-bloc h3 {
		font-size: 4.3vw;
		margin: 0 4vw;
	}
	main section#cards-bloc p {
		font-size: 4vw;
	}
	main section#cards-bloc p span {
		font-size: 5vw;
	}

	main section.blocs12, main section.blocs13 {
		margin-top: 4vw;
		background-color: #F6F6F6;
    	padding: 4vw;
		width: 100%;
	}

	main section.blocs12 article.text p, main section.blocs13 article.text p {
		line-height: unset;
	}

	main section#cards-bloc div#container-blocs section div p {
		font-size: 4vw;
	}

	main section#cards-bloc div#container-blocs section div p {
		align-items: baseline;
	}

	main section#cards-bloc div#container-blocs section div {
	    display: flex;
	    justify-content: left;
	    align-items: center;
	    margin-bottom: 0.5vw;
	}

	main section#cards-bloc div#container-blocs section div img {
    	width: 20px;
    	height: 25px;
	}

	main section#cards-bloc div#container-blocs section .patch {
		position: absolute;
		margin-top: -24vw;
   		margin-left: 69vw;
	}
	main section#cards-bloc div#container-blocs section .patch img{
		width: 20vw;
		height: 20vw;
	}

	main section#bloc1 {
		position: unset;
	}
	main section#bloc2 {
		margin-top: unset;
	}
	main section#bloc1 img,
	main section#bloc2 img {
		width: 100%;
	}
	main article.text {
		width: 100%;
	    margin: -1vw auto 0 auto;
	    padding: 7vw 2vw;
	    row-gap: 2.6vw;
	}
	main article.text h3 {
		font-size: 4vw;
		width: fit-content;
		margin: auto;
		text-align: center;
	}
	main article.text h4 {
		font-size: 3.8vw;
		width: fit-content;
		margin: auto;
	}
	main article.text ul {
		font-size: 3.1vw;
		padding-left: 5.3vw;
	}
	main section#form form {
		font-size: 4vw;
		row-gap: 4vw;
		margin: 7vw auto;
	}
	main section#form h3 {
		font-size: 9vw;
        padding: 5vw 0;
        line-height: 11vw;
	}

	#civilite label {
    	width: 26vw;
	}

	main section#form .form-subtitle {
    	font-size: 3.84vw;
	}
	main section#form form article#optin input {
		width: 15vw;
	}
	main section#form form input:not(input[type="checkbox"]), main section#form form textarea {
	    font-size: 4vw;
	    line-height: 9vw;
	    padding: 1vw;
	}

	.splide__slide {
		height: 124vw;
	}

	.splide__arrow {
		background-color: transparent!important;
	}

	.splide__arrow--prev {
		left: 0!important;
	}

	.splide__arrow--next {
		right: 0!important;

	}

	.splide__arrow--prev, .splide__arrow--next {
		background: none !important;
	}

	.splide__pagination {
		bottom: 10vw!important;
		gap: 1vw !important;
	}

	.splide__pagination__page.is-active {
    	-webkit-transform: scale(1.4);
    	transform: scale(1.4);
    	background: black;
    	width: 30px;
    	border-radius: 5px;
	}

	.checkbox-text {
    	font-size: 3vw;
    	line-height: 1.4;
    	color: #fff;
    	font-family: "Roundo-Regular";
	}

	main section#form form button[type="submit"] {
		font-size: 4.56vw;
	    padding: 3vw 10vw;
	}
	main section#form form article#project {
		row-gap: 2.5vw;
	}
	main section#form form article#optin {
		column-gap: 3vw;
		font-size: 3.73vw;
	}

	main section#form form select {
	    font-family: Roundo-Regular;
	    font-size: 4vw;
	    line-height: 1.4vw;
	    border: none;
	    /* background-color: transparent; */
		border: 1px solid #fff;
		/* color: #fff; */
	    padding: 1vw;
	}

	main section#form form article#newsletter {
    	display: flex;
    	column-gap: 2vw;
    	margin: 1vw 0 1vw 0;
	}

	main section#form form article#newsletter p {
    	font-size: 4vw;
	}

	main article li {
		line-height: 5vw;
	}

	/*main article a {
		margin-bottom: -7vh;
	}*/

	
	main section#bloc2 {
		margin-top: 10vw;
	}

	main section#bloc2 article.text {
		margin-left: 0%;
	}

	main section#form form div{
		padding: 0.3vw;
	}

	main article ul li span.deca {
		font-size: 3.1vw;
	}


	main section#form form article#civilite input.radioCiv{
		width: 5vw;
		height: 5vw;
	}

	main section#form form article#civilite {
		display: flex;
		column-gap: 5.5vw;
	}

	main section#form form label#projet {
		line-height: 5vw;
	}

	main div#zone-logo section#logo div.alllogo img {
		width: 20vw;
		height: 20vw;
    }

	main div#zone-logo section#logo div.alllogo {
    	text-align: center;
    	max-width: 36%;
    	text-wrap: wrap;
    	font-size: 4vw;
    	margin-top: 4vw;
    }

	main div#zone-logo section#logo div.alllogo p {
		line-height: 5vw;
	}

    main div#zone-logo section#logo div.alllogo p span {
    	font-size: 4vw;
	}

	main div#zone-logo section#logo {
		width: 70%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding: 3vw 0 3vw 0;
		background-color: #F6F6F6;
		margin: 0 auto;
	}

	main section#form form div.gris {
		padding: 2vw;
	}


	/* END MAIN */

	/* START FOOTER */
	footer {
		padding: 6vw 10vw;
	}

	footer section#links article#right a.web {
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
        column-gap: 0.5vw;
        font-family: "Roundo-SemiBold";
        text-decoration: none;
        color: #fff;
        font-size: 3vw;
        justify-content: right;
        background-color: #DA1B41;
        padding: 3vw 6vw;
        border-radius: 35px;
        gap: 4vw;
	}

	footer section#links {
		flex-direction: column;
		row-gap: 3vw;
		width: 100%;
	}
	footer section#links article#left,
	footer section#links article#right {
		flex-direction: column;
		column-gap: 4vw;
	}

	footer section#links article#right a.web .icon {
    	width: 4.3vw;
    	height: 4.3vw;
	}

	footer section#links article#right a.phone {
    	display: flex;
    	flex-direction: row-reverse;
    	align-items: center;
    	column-gap: 0.5vw;
    	font-family: "Roundo-SemiBold";
    	text-decoration: none;
    	color: #fff;
    	font-size: 1vw;
    	justify-content: center;
    	background-color: #004899;
    	padding: 3vw 6vw;
    	border-radius: 35px;
    	gap: 2vw;
	}

	

	footer section#links article#right a.phone .icon {
    	width: 4.3vw;
    	height: 4.3vw;
	}

	footer section#links article#left {
	    font-size: 3.35vw;
	}
	footer section#links article#left img {
	    width: 40vw;
	}
	footer section#links article#right a.phone {
		font-size: 3.2vw;
	}
	footer section#links article#right div.socials {
		column-gap: 3.8vw;
	}
	footer section#mentions {
	    row-gap: 4vw;
		width: 100%;
	}
	footer section#mentions p {
	    font-size: 2.85vw;
	}
	
	/* END FOOTER */
}


.ui-helper-hidden-accessible { display:none !important; }
.ui-autocomplete { z-index:9999; }
ul.ui-autocomplete { list-style-type:none; background:white; color:black; padding:0; margin:0; border:solid 1px #ccc; display:inline-block; }
ul.ui-autocomplete > li { display:block; height:30px; line-height:30px; padding:0 10px; font-family:Arial, sans-serif; font-size:14px; cursor:pointer; border-bottom:solid 1px #eee; }
ul.ui-autocomplete > li:last-child { border:none; }
ul.ui-autocomplete > li:hover { background:#eee; }