body {
	font-family: 'Roboto';
}

.container {
	width: 1190px;
	max-width: 100%;
}

.columns {
	display: flex;
}

.columns > .column {
	flex: 1;
}

.desktop {
	display: none;
}

.btn-documentation {
	position: relative;
	display: inline-block;
	margin: auto;
	padding: 0px 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 20px;
	background: #9a3f34;
	color: #fff !important;
	font-weight: bold;
	text-decoration: none !important;
}

div.perspective {
	position: relative;
	width: 100%;
}

div.perspective > .picto {
	position: absolute;
	top: -30px;
	right: 20px;
}

header {
	overflow: hidden;
	text-align: center;
	background: #ccc url('../img/header-visuel2.jpg') no-repeat;
	background-size: cover !important;
	background-position: center right !important;
}

header .container {
	display: block;
	/* width:100%; */
	height: 0px;
	padding: 15px 15px 25% 15px;
	text-align: left;
}

header .logo-dbi {
	position: relative;
	display: inline-block;
	margin-bottom: 40px;
	margin-top: 40px;
}

header h1 {
	font-size: 22px;
	text-transform: uppercase;
	line-height: 1.3em;
	margin-bottom: 15px;
	font-weight: 200;
}

header h1 strong {
	font-size: 22px;
}

header h1 .mini {
	font-size: 18px;
	text-transform: none;
}

header .btn-documentation {
	padding: 0px 30px 0px 50px;
	/* top: -60px; */
}

header .btn-documentation:before {
	content: " ";
	position: absolute;
	left: 15px;
	top: 10px;
	width: 23px;
	height: 20px;
	background: transparent url('../img/icon-book.png') no-repeat;
}

header .patch-offre-all {
	top: -245px;
	position: relative;
	left: 20px;
	width: 160px;
}

header .patch-fno {
	display: inline-block;
	height: 40px;
	line-height: 40px;
	padding: 0px 20px;
	color: #000;
	background: #fff;
	border: solid 1px #9A3F34;
	margin-bottom: 15px;
}

header ul.menu-top {
	position: relative;
	display: block;
	list-style-type: none;
	text-align: center;
	width: 100%;
	display: flex;
	/* transform:translateY(-100%); */
}

header ul.menu-top:before {
	content: " ";
	position: absolute;
	left: 0px;
	bottom: 0px;
	right: 0px;
	height: 40px;
	background: linear-gradient(to top, #000, transparent, transparent, transparent);
	z-index: 1;
	opacity: 0.2;
}

header ul.menu-top > li {
	flex: 1;
	height: 50px;
	line-height: 50px;
	z-index: 2;
}

header ul.menu-top > li > a {
	position: relative;
	display: block;
	height: 50px;
	line-height: 50px;
	text-align: center;
	color: #fff;
	font-weight: 500;
	text-decoration: none;
	text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.7);
	font-size: 16px;
}

header ul.menu-top > li.active > a {
	border-radius: 8px 8px 0px 0px;
	background: #aaa;
}

main {}

main > section.programme {
	display: none;
}

main > section.programme.active {
	display: block;
}

main > section.programme > .header-icons img.patch-offre-programme {
	width: 10vw;
}

main > section.programme > .logo-programme,
main > section.programme > div > .logo-programme {
	display: block;
	width: 80%;
	height: auto;
	max-width: 300px;
	margin: 0px auto 30px auto;
}

main > section.programme > .header-icons {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	column-gap: 2vw;
	/* margin-left: 8vw; */
}

main > section.programme .logo-quartier {
	margin-bottom: 30px;
	width: 20vw;
}

ul.lots {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	margin-bottom: 15px;
}

ul.lots > li {
	display: block;
	height: 44px;
	line-height: 44px;
	padding: 0px 15px;
	margin-bottom: 5px;
	color: #fff;
}

ul.lots > li strong.prix {
	color: #000;
}

body.idealiz header ul.menu-top {
	background: transparent;
}

body.idealiz header ul.menu-top > li:first-child {}

body.idealiz header ul.menu-top > li:first-child a {
	background: transparent;
	display: block;
	border-radius: 0 0 10px 0;
}

body.idealiz header ul.menu-top > li:last-child {}

body.idealiz header ul.menu-top > li:last-child a {
	background: transparent;
	display: block;
	border-radius: 0 0 0 10px;
}

body.idealiz {
	background: #168E9A;
}

body.idealiz header ul.menu-top > li.active {
	background: transparent;
}

body.idealiz header ul.menu-top > li.active a {
	background: #168E9A;
	border-radius: 20px 20px 0px 0px;
}

body.idealiz header ul.menu-top > li.idealiz a:before {
	content: " ";
	position: absolute;
	left: -20px;
	bottom: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/menu-arrondi-br-oxygene.png') no-repeat;
}

body.idealiz header ul.menu-top > li.idealiz a:after {
	content: " ";
	position: absolute;
	right: -20px;
	bottom: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/menu-arrondi-bl-oxygene.png') no-repeat;
}

body.idealiz main > section.programme#idealiz {
	display: block;
}


body.quintsens {
	background: #3F787C;
}

body.quintsens header ul.menu-top > li.active {
	background: transparent;
}

body.quintsens header ul.menu-top > li.active a {
	background: #3F787C;
	border-radius: 0px 20px 0px 0px;
}

body.quintsens main > section.programme#quintsens {
	display: block;
}

body.quintsens header ul.menu-top > li.quintsens a:before {
	content: " ";
	position: absolute;
	left: -20px;
	bottom: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/menu-arrondi-br-quintsens.png') no-repeat;
}

body.quintsens header ul.menu-top > li.quintsens a:after {
	content: " ";
	position: absolute;
	right: -20px;
	bottom: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/menu-arrondi-bl-quintsens.png') no-repeat;
}

body.symboliz {
	background: #eee2d4;
}

body.symboliz header ul.menu-top > li.active {
	background: transparent;
}

body.symboliz header ul.menu-top > li.active a {
	background: #eee2d4;
	border-radius: 20px 20px 0px 0px;
}

body.symboliz main > section.programme#symboliz {
	display: block;
}

body.symboliz header ul.menu-top > li.symboliz a:before {
	content: " ";
	position: absolute;
	left: -20px;
	bottom: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/sr.png') no-repeat;
}

body.symboliz header ul.menu-top > li.symboliz a:after {
	content: " ";
	position: absolute;
	right: -20px;
	bottom: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/sl.png') no-repeat;
}


body.heritage {
	background: #a2957f;
}

body.heritage header ul.menu-top > li.active {
	background: transparent;
}

body.heritage header ul.menu-top > li.active a {
	background: #a2957f;
	border-radius: 20px 0px 0px 0px;
}

body.heritage main > section.programme#heritage {
	display: block;
}

body.heritage header ul.menu-top > li.heritage a:before {
	content: " ";
	position: absolute;
	left: -20px;
	bottom: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/menu-arrondi-br-heritage.png') no-repeat;
}

body.heritage header ul.menu-top > li.heritage a:after {
	content: " ";
	position: absolute;
	right: -20px;
	bottom: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/menu-arrondi-bl-heritage.png') no-repeat;
}

ul.texte {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}

ul.texte > li {
	position: relative;
	padding-left: 40px;
}

ul.texte > li:before {
	content: " ";
	position: absolute;
	left: 0px;
	top: 5px;
	width: 40px;
	height: 30px;
	background: transparent url('../img/fleche-verte.png') no-repeat;
}

#symboliz ul.texte > li:before,
#idealiz ul.texte > li:before {
	background: transparent url('../img/fleche-idealiz.png') no-repeat;
}

#heritage ul.texte > li:before {
	background: transparent url('../img/fleche-heritage3.png') no-repeat;
}


.programme-section {
	position: relative;
	padding-top: 60px;
	padding-bottom: 60px;
}

.programme-section .container {
	position: relative;
}

.programme-section .columns > .column.illustration img {
	position: relative;
	width: 100%;
	z-index: 2;
}

.programme-section.residence {
	color: #fff;
}

.programme-section.residence .columns > .column.illustration {
	min-width: 66%;
}

.programme-section.logements {
	background: #fff;
}


#quintsens .btn-documentation {
	background: #82B591;
}

#quintsens .programme-section.residence .columns > .column.texte {
	padding-top: 5%;
}

#quintsens .programme-section.logements .columns > .column.texte {
	padding-top: 0%;
}

#quintsens .programme-section.logements .columns > .column.texte ul.texte {
	max-width: 80%;
	margin-bottom: 30px;
}

#quintsens .programme-section.logements .btn-documentation {
	margin-left: 40px;
}

#quintsens .programme-section.gdp .container {
	width: 60%;
	background: transparent;
	padding: 30px 15px;
	border: solid 1px #82B591;
}

#quintsens .programme-section.gdp h3 {
	font-weight: 200;
	font-size: 30px;
	color: #fff;
	margin-bottom: 15px;
	text-align: center;
}

#quintsens .programme-section.gdp ul.lots > li {
	background: #7ABEBE;
}

#quintsens .programme-section.gdp .btn-documentation {
	background: #fff;
	color: #7ABEBE !important;
}

#quintsens .programme-section.quartier {
	background: #F0F4F3;
}

#quintsens .programme-section.quartier .quartier-1 > .column.texte {
	padding-left: 40px;
	padding-top: 40px;
}

#quintsens .programme-section.quartier .quartier-2 > .column.texte {
	padding-right: 40px;
	padding-top: 5%;
}

#quintsens .programme-section.quartier .btn-documentation {
	background: #48830F;
}

#idealiz .btn-documentation {
	background: #D3694A;
}

#idealiz .programme-section {
	color: #321B11;
}

#idealiz .programme-section.residence,
#idealiz .programme-section.prestations {
	color: white;
}

#idealiz .programme-section.residence {
/*	background: transparent url('../img/idealiz-arbre1.png') no-repeat;*/
	background-position: 100% calc(100% - 60px);
	padding-top: 0px;
}

#idealiz .programme-section.residence .container:before {
	content: " ";
/*	background: transparent url(../img/idealiz-arbre2.png) no-repeat;*/
	background-position: 0px 0px;
	position: absolute;
	left: 0px;
	top: -140px;
	width: inherit;
	height: -webkit-fill-available;
	z-index: 1;
}

#idealiz .programme-section.residence .columns > .column.texte {
	padding-top: 5%;
}

#idealiz .programme-section.residence .btn-documentation {
	margin-left: 40px;
}

#idealiz .programme-section.logements .columns > .column.texte {
	padding-top: 10%;
}

#idealiz .programme-section.logements .columns > .column.texte ul.texte {
	max-width: 80%;
	margin-bottom: 30px;
}

#idealiz .programme-section.logements .btn-documentation {
	margin-left: 40px;
}

#idealiz .programme-section.prestations {
	padding-top: 0px;
}

#idealiz .programme-section.prestations .columns {
	margin-bottom: 0px;
}

#idealiz .programme-section.prestations .columns > .column.texte {
	padding-top: 1%;
}

#idealiz .programme-section.prestations .columns > .column.texte ul.texte {
	margin-bottom: 30px;
}

#idealiz .programme-section.prestations .btn-documentation {
	margin-left: 40px;
}

#idealiz .programme-section.gdp {
	padding-top: 0px;
}

#idealiz .programme-section.gdp .container {
	width: 60%;
	background: #107784;
	padding: 30px 15px;
}

#idealiz .programme-section.gdp h3 {
	font-weight: 200;
	font-size: 30px;
	color: #fff;
	margin-bottom: 15px;
	text-align: center;
}

#idealiz .programme-section.gdp ul.lots > li {
	background: #C6A48E;
}

/*#idealiz .programme-section.gdp .btn-documentation {
	background: #fff;
	color: #3F302A !important;
}*/

#symboliz .btn-documentation {
	background: #6B3C43;
}

#symboliz .programme-section {
	color: #321B11;
}

#symboliz .programme-section.residence {
	background: transparent url('../img/idealiz-arbre1.png') no-repeat;
	background-position: 100% calc(100% - 60px);
	padding-top: 0px;
}

#symboliz .programme-section.residence .container:before {
	content: " ";
	background: transparent url(../img/idealiz-arbre2.png) no-repeat;
	background-position: 0px 0px;
	position: absolute;
	left: 0px;
	top: -140px;
	width: inherit;
	height: -webkit-fill-available;
	z-index: 1;
}

#symboliz .programme-section.residence .columns > .column.texte {
	padding-top: 5%;
}

#symboliz .programme-section.residence .btn-documentation {
	margin-left: 40px;
}

#symboliz .programme-section.logements .columns > .column.texte {
	padding-top: 10%;
}

#symboliz .programme-section.logements .columns > .column.texte ul.texte {
	max-width: 80%;
	margin-bottom: 30px;
}

#symboliz .programme-section.logements .btn-documentation {
	margin-left: 40px;
}

#symboliz .programme-section.prestations {
	padding-top: 0px;
}

#symboliz .programme-section.prestations .columns {
	margin-bottom: 0px;
}

#symboliz .programme-section.prestations .columns > .column.texte {
	padding-top: 5%;
}

#symboliz .programme-section.prestations .columns > .column.texte ul.texte {
	margin-bottom: 30px;
}

#symboliz .programme-section.prestations .btn-documentation {
	margin-left: 40px;
}

#symboliz .programme-section.gdp {
	padding-top: 0px;
}

#symboliz .programme-section.gdp .container {
	width: 60%;
	background: #995943;
	padding: 30px 15px;
}

#symboliz .programme-section.gdp h3 {
	font-weight: 200;
	font-size: 30px;
	color: #fff;
	margin-bottom: 15px;
	text-align: center;
}

#symboliz .programme-section.gdp ul.lots > li {
	background: #C6A48E;
}

#symboliz .programme-section.gdp .btn-documentation {
	background: #fff;
	color: #3F302A !important;
}

#heritage .btn-documentation {
	background: #fff;
	color: #3F302A !important;
}

#heritage .btn-documentation.forcewhite {
	color: #fff !important;
}

#heritage .programme-section.residence {
	padding-top: 0;
	padding-bottom: 0;
}

#heritage .programme-section.residence h4 {
	padding: 10px 0 40px 0
}

#heritage .programme-section.residence h5 {
	padding: 40px;
	font-size: 20px
}

#heritage .programme-section.residence .btn-documentation {
	margin-left: 40px;
}

#heritage .programme-section.residence .btn-documentation.btn-documentation2 {
	margin-left: 0;
}

#heritage .programme-section.residence .column.texte {
	display: flex;
	flex-direction: column;
}

#heritage .programme-section.residence .column.texte > div {
	flex: 1;
}

#heritage .programme-section.residence .column.texte > div:first-child {
	position: relative;
}

#heritage .programme-section.residence .column.texte > div:first-child ul.texte {
	left: 0px;
	bottom: 15px;
}

#heritage .programme-section.residence .column.texte > div > ul li:last-child {
	color: #3F302A;
}

#heritage .programme-section.residence .column.texte > div:last-child ul.texte {
	margin-top: 20px;
}

#heritage .programme-section.residence .column.texte > div:last-child ul.texte > li:before {
	background: transparent url('../img/fleche-heritage2.png') no-repeat;
}

#heritage .programme-section.faq {
	background-color: #fff;
	display: flex;
	justify-content: space-between;
	width: 100%;
}

#heritage .programme-section div.faq {
	flex-grow: 1;
	flex-basis: 0;
	width: 100%;
	margin: 0;
	padding: 40px 60px 150px 60px;
	font-size: 14px !important;
	color: #3F302A;
}

#heritage .programme-section div.faq .sfaq {
	flex-grow: 1;
	flex-basis: 0;
	width: 33.33%;
	margin: 0 10px;
	border-left: 2px solid #A2957F;
	padding-left: 15px;
}

#heritage .programme-section div.faq .sfaq ul.texte li:before {
	background: transparent url('../img/fleche-heritage2.png');
	background-repeat: no-repeat;
	content: " ";
	position: absolute;
	left: 0px;
	top: 5px;
	width: 40px;
	height: 30px;
}

#heritage .programme-section.faq div h4 {
	font-weight: normal;
	color: #A2957F;
	font-size: 18px;
}

#heritage .programme-section.faq .btn-documentation {
	background: #A2957F;
	color: #fff !important;
}

#heritage .programme-section .maison {
	position: relative;
	display: block;
	width: 100%;
	background-color: #A2957F;
	background-image: url('../img/arbre-heritage.png');
	background-repeat: no-repeat;
	background-position: bottom left;
}

#heritage .programme-section .maison img {
	width: 88%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	top: -4vh;
}

#heritage .programme-section div.sfaq #sfaqtxt1 a.btn-documentation {
	text-align: left;
}

.quartier-lize {
	background: #F0F4F3;
}

.quartier-lize .perspective {
	margin-bottom: 40px;
}

.quartier-lize .columns {
	margin-bottom: 40px;
}

.quartier-lize .columns > .column {
	max-width: 50%;
}

.quartier-lize .columns > .column.texte p {
	margin-bottom: 15px;
}

.quartier-lize .columns.quartier-1 > .column.texte {
	padding-right: 6vw;
	padding-top: 5vw;
}

.quartier-lize .columns.quartier-2 > .column.texte {
	padding-left: 6vw;
	padding-top: 5vw;
}

.quartier-lize .btn-documentation {
	background: #9A3F34 !important;
}

section#carte {
	padding-bottom: 80px;
}

section#carte h3 {
	font-weight: 200;
	font-size: 25px;
	color: #FFF;
	text-transform: uppercase;
	text-align: center;
}

section#carte h4 {
	font-weight: bold;
	font-size: 25px;
	color: #FFF;
	margin-bottom: 30px;
	text-align: center;
}

section#carte .map-container {
	width: 100%;
	height: 500px;
	/*padding-bottom: 40%;*/
	background: #ccc;
}

section#carte .map-legende {
	padding: 15px 30px;
	background: #fff;
}

section#carte .map-legende ul {
	list-style-type: none;
}

section#carte .map-legende ul > li {
	height: 44px;
	line-height: 44px;
	font-weight: 200;
	display: flex;
	box-sizing: content-box;
	padding-top: 15px;
	padding-bottom: 15px;
	border-bottom: solid 1px #eee;
	margin: 0px;
}

section#carte .map-legende ul > li:last-child {
	border: none;
}

section#carte .map-legende ul > li span {
	flex: 1;
}

section#carte .map-legende ul > li span.logo {
	max-width: 200px;
}

section#carte .map-legende ul > li span.adresse {
	max-width: 360px;
	line-height: 1.2em;
}

section#carte .map-legende ul > li span.actions {}

section#carte .map-legende ul > li .btn-go {
	height: 44px;
	line-height: 44px;
	display: inline-block;
	padding: 0px 20px;
	border-radius: 22px;
	background: #F0F4F3;
	font-weight: bold;
	text-decoration: none;
}

section#carte .map-legende ul > li.quintsens {
	color: #3F787C;
}

section#carte .map-legende ul > li.quintsens .btn-go {
	color: #3F787C;
}

section#carte .map-legende ul > li.heritage {
	color: #3F302A;
}

section#carte .map-legende ul > li.heritage .btn-go {
	color: #A2957F;
}

section#carte .map-legende ul > li.idealiz {
	color: #168E9A;
}

section#carte .map-legende ul > li.idealiz .btn-go {
	color: #A2957F;
}

body.quintsens section#carte .map-legende ul > li.quintsens .btn-go {
	display: none;
}

body.quintsens section#carte h3 {
	color: #fff;
}

body.quintsens section#carte h4 {
	color: #fff;
}

body.heritage section#carte .map-legende ul > li.heritage .btn-go {
	display: none;
}

body.idealiz section#carte .map-legende ul > li.idealiz .btn-go {
	display: none;
}

body.symboliz section#carte .map-legende ul > li.symboliz .btn-go {
	display: none;
}

section#evoluvie {
	background: #253150;
}

footer {
	background: #fff;
	padding-top: 60px;
	padding-bottom: 60px;
	font-weight: 200;
}

footer a {
	display: inline-block;
	font-weight: bold;
	color: #17213C;
}

footer .columns > .column {
	text-align: center;
}

footer .columns > .column:first-child {
	text-align: left;
}

footer .columns > .column:last-child {
	text-align: right;
}

footer ul {
	list-style-type: none;
}

footer ul > li {
	margin-bottom: 15px;
}

footer .mentions-legales {
	padding-top: 30px;
}

footer .mentions-legales p {
	font-family: Arial;
	font-size: 11px;
	color: #333;
	margin-bottom: 0px;
	white-space: normal;
	text-align: left;
}

#telecharger-documentation {
	position: fixed;
	left: 0px;
	top: 30px;
	right: 0px;
	bottom: 0px;
	z-index: 111;
	background: #f0f4f3;
	border-radius: 30px 30px 0px 0px;
	overflow: visible;
	transition: all 0.4s ease;
	transform: translateY(100%);
	opacity: 0;
	padding: 40px 30px;
}

#telecharger-documentation.open {
	transform: translateY(0);
	opacity: 1;
}

#telecharger-documentation a.close {
	display: block;
	position: absolute;
	right: 20px;
	top: -10px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border-radius: 20px;
	background: #9a3f34;
	color: #fff;
	z-index: 3;
	opacity: 1;
}

#telecharger-documentation h2 {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	color: #9a3f34;
	margin-bottom: 10px;
}

#telecharger-documentation p.intro {
	text-align: center;
	font-size: 16px;
	color: #000;
	margin-bottom: 30px;
}

#documentation {
	background: #f0f4f3;
	border-radius: 30px;
}

#documentation a.close {
	display: block;
	position: absolute;
	right: 20px;
	top: -10px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border-radius: 20px;
	background: #9a3f34;
	color: #fff;
	z-index: 3;
	opacity: 1;
}

#documentation h5 {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	color: #9a3f34;
	margin-bottom: 10px;
}

#documentation p.intro {
	text-align: center;
	font-size: 16px;
	color: #000;
	margin-bottom: 30px;
}

ul.checkbuttons.programmes {
	display: flex;
	line-style-type: none;
	text-align: center;
}

ul.checkbuttons.programmes > li {
	display: inline-block;
	flex: 1;
	margin-right: 5px;
}

ul.checkbuttons.programmes > li:last-child {
	margin-right: 0px;
}

ul.checkbuttons.programmes > li > input.checkbutton {
	display: none;
}

ul.checkbuttons.programmes > li > input.checkbutton ~ label {
	display: block;
	width: 100%;
	height: 70px;
	line-height: 40px;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
	border: solid 2px #fff;
}

ul.checkbuttons.programmes li input.checkbutton:checked ~ label {
	border: solid 2px #9a3f34;
}

.form-group#programme .control-label {
	display: block;
	width: 100%;
	margin-bottom: 5px;
	text-align: center;
}

#navbar-top {
	background: transparent;
	box-shadow: none;
	transition: all 0.4s ease;
	transform: translateY(-100%);
}

#navbar-top.open {
	transform: translateY(0);
}

#navbar-top .container-fluid {
	background: #f0f4f3;
	padding-top: 20px;
	padding-bottom: 10px;
}

#navbar-top .container {
	padding-left: 15px;
	padding-right: 15px;
}

#navbar-top .columns > .column {
	text-align: center;
}

#navbar-top .columns > .column:first-child {
	text-align: left;
}

#navbar-top .columns > .column:last-child {
	text-align: right;
}

#navbar-top .btn-documentation {
	padding: 0px 30px 0px 50px;
}

#navbar-top .btn-documentation:before {
	content: " ";
	position: absolute;
	left: 15px;
	top: 10px;
	width: 23px;
	height: 20px;
	background: transparent url('../img/icon-book.png') no-repeat;
}

#navbar-top h1 {
	font-size: 14px;
	font-weight: 200;
	margin-bottom: 5px;
}

#navbar-top h2 {
	font-size: 16px;
	font-weight: bold;
	text-transform: uppercase;
	margin: 0px;
	display: none;
}

body.quintsens #navbar-top h2.quintsens {
	display: block;
}

body.idealiz #navbar-top h2.idealiz {
	display: block;
}

body.symboliz #navbar-top h2.symboliz {
	display: block;
}

body.heritage #navbar-top h2.heritage {
	display: block;
}

#navbar-top ul.menu-top {
	position: relative;
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	display: flex;
	justify-content: center;
}

#navbar-top ul.menu-top > li {
	flex: 1;
	height: 50px;
	line-height: 50px;
	z-index: 2;
	padding: 0px;
}

#navbar-top ul.menu-top > li:first-child {
	background: #f0f4f3;
}

#navbar-top ul.menu-top > li:last-child {
	background: #f0f4f3;
}

#navbar-top ul.menu-top > li.menu-item {
	max-width: 120px;
	padding: 0px;
}

#navbar-top ul.menu-top > li.active {
	background: transparent;
	color: #fff;
}

#navbar-top ul.menu-top:before {
	content: " ";
	position: absolute;
	left: 0px;
	bottom: 0px;
	right: 0px;
	height: 50px;
	/*background: linear-gradient(to bottom, #000, transparent, transparent);*/
	z-index: 1;
	opacity: 0.5;
}

#navbar-top ul.menu-top > li > a {
	position: relative;
	display: block;
	width: 100%;
	height: 50px;
	line-height: 50px;
	text-align: center;
	background: #f0f4f3;
	color: #afafaf;
	font-weight: 500;
	text-decoration: none;
	font-size: 16px;
}

#navbar-top ul.menu-top > li.active > a {
	border-radius: 8px 8px 0px 0px;
	background: transparent;
	color: #fff;
	text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.7);
}

#navbar-top ul.menu-top > li.active > a:before {
	content: " ";
	position: absolute;
	left: 0px;
	top: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/navbar-coin-active-left.png') no-repeat;
}

#navbar-top ul.menu-top > li.active > a:after {
	content: " ";
	position: absolute;
	right: 0px;
	top: 0px;
	width: 20px;
	height: 20px;
	background: transparent url('../img/navbar-coin-active-right.png') no-repeat;
}

body.idealiz #navbar-top ul.menu-top > li:first-child {
	border-radius: 0px 0px 20px 0px;
}

body.idealiz #navbar-top ul.menu-top > li.menu-item.quintsens a {
	border-radius: 0px 0px 0px 20px;
}

body.idealiz #navbar-top ul.menu-top > li.menu-item.idealiz a {
	border-radius: 0px;
}

body.idealiz #navbar-top ul.menu-top > li.menu-item.symboliz a {
	border-radius: 0px 0px 0px 0px;
}

body.idealiz #navbar-top ul.menu-top > li.menu-item.heritage a {
	border-radius: 0px 0px 0px 0px;
}

body.idealiz #navbar-top ul.menu-top > li:last-child {}

body.symboliz #navbar-top ul.menu-top > li.menu-item.symboliz a {
	border-radius: 0px 0px 0px 0px;
}

body.symboliz #navbar-top ul.menu-top > li.menu-item.quintsens a {
	border-radius: 0px 0px 20px 0px;
}

body.symboliz #navbar-top ul.menu-top > li.menu-item.idealiz a {
	border-radius: 0px 0px 0px 0px;
}

body.symboliz #navbar-top ul.menu-top > li.menu-item.heritage a {
	border-radius: 0px 0px 0px 20px;
}

body.symboliz #navbar-top ul.menu-top > li:last-child {}

body.heritage #navbar-top ul.menu-top > li.menu-item.quintsens a {
	border-radius: 0px 0px 0px 0px;
}

body.heritage #navbar-top ul.menu-top > li.menu-item.symboliz a {
	border-radius: 0px 0px 20px 0px;
}

body.heritage #navbar-top ul.menu-top > li.menu-item.idealiz a {
	border-radius: 0px 0px 0px 0px;
}

body.heritage #navbar-top ul.menu-top > li.menu-item.heritage a {
	border-radius: 0px;
}

body.heritage #navbar-top ul.menu-top > li:last-child {
	border-radius: 0px 0px 0px 20px;
}

body.quintsens #navbar-top ul.menu-top > li.menu-item.quintsens a {
	border-radius: 0px 0px 0px 0px;
}

body.quintsens #navbar-top ul.menu-top > li.menu-item.symboliz a {
	border-radius: 0px 0px 0px 20px;
}

body.quintsens #navbar-top ul.menu-top > li.menu-item.idealiz a {
	border-radius: 0px 0px 20px 0px;
}

body.quintsens #navbar-top ul.menu-top > li.menu-item.heritage a {
	border-radius: 0px;
}

body.quintsens #navbar-top ul.menu-top > li:first-child {
	border-radius: 0px 0px 0px 0px;
}


#documentation {
	background: #f0f4f3;
	border-radius: 30px;
}

#documentation .modal-content {
	background: #f0f4f3;
	border-radius: 30px;
	overflow: visible;
}

#documentation .modal-header {
	padding-bottom: 0px;
	border: none;
}

#documentation .close {
	display: block;
	position: absolute;
	right: 20px;
	top: -10px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border-radius: 20px;
	background: #9a3f34;
	color: #fff;
	z-index: 3;
	opacity: 1;
}

#documentation h5 {
	text-align: center;
	font-size: 24px;
	font-weight: 200;
	color: #9a3f34;
	margin-bottom: 10px;
	text-transform: uppercase;
}

#documentation p.intro {
	text-align: center;
	font-size: 16px;
	color: #000;
	margin-bottom: 30px;
	font-weight: 400;
}

#documentation .form-group {
	width: 100%;
	margin-bottom: 10px;
}

#documentation .form-group .control-label {
	color: #000;
	font-weight: 200;
}

#documentation .form-control {
	height: 40px;
	line-height: 40px;
	border-radius: 20px;
	padding: 0px 20px;
	background: #fff;
	border: none;
}

#documentation .form-group#civilite .control-label {
	display: inline;
	float: left;
	min-width: 100px;
	height: 40px;
	line-height: 40px;
}

#documentation .form-group#civilite .control {
	display: inline;
}

#documentation .form-group#projet .control-label,
#documentation .form-group#optin1 .control-label {
	display: block;
	width: 100%;
	text-align: center;
}

#documentation .form-group#projet .control,
#documentation .form-group#optin1 .control {
	text-align: center;
}

#documentation p.mentions {
	margin-bottom: 15px;
	font-size: 11px;
	color: #9F9F9F;
	text-align: center;
}

#documentation .form-group#programme {
	margin-bottom: 20px;
}

input.checkbutton {
	display: none;
}

input.checkbutton + label {
	display: inline-block;
	height: 40px;
	line-height: 40px;
	border-radius: 20px;
	padding: 0px 20px;
	background: #fff;
	color: #000;
	overflow: hidden;
	font-weight: 200;
}

input.checkbutton:checked + label {
	background: #9A3F34;
	color: #fff;
}

#documentation [type="submit"] {
	display: inline-block;
	height: 40px;
	line-height: 40px;
	border-radius: 20px;
	padding: 0px 30px;
	background: #9A3F34;
	color: #fff;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 24px;
	border: none;
}

ul.checkbuttons.programmes {
	display: flex;
	line-style-type: none;
	text-align: center;
	justify-content: center;
}

ul.checkbuttons.programmes > li {
	display: inline-block;
	flex: 1;
	margin-right: 5px;
	max-width: 120px;
}

ul.checkbuttons.programmes > li:last-child {
	margin-right: 0px;
}

ul.checkbuttons.programmes > li > input.checkbutton {
	display: none;
}

ul.checkbuttons.programmes > li > input.checkbutton + label {
	display: block;
	width: 100%;
	height: 70px;
	line-height: 40px;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
	border: solid 2px #fff;
	background-repeat: no-repeat !important;
	background-position: center !important;
}

input#programme_quintsens + label {
	background-image: url('../img/option-quintsens.png');
}

input#programme_oxygene + label {
	background-image: url('../img/option-oxygene.png');
	background-size: 80%;
}

input#programme_symboliz + label {
	background-image: url('../img/logo_symboliz2.png');
	background-size: contain;
	background-position: top center !important;
}

input#programme_heritage + label {
	background-image: url('../img/option-heritage.png');
}

#documentation .form-group.error .form-control {
	border: solid 1px #ff0000;
}

#documentation .form-group.error input.checkbutton + label {
	border: solid 1px #ff0000;
}

@media (min-width: 641px) {

	header ul.menu-top {
		justify-content: center;
	}

	header ul.menu-top > li {
		max-width: 160px;
	}

	body.heritage header ul.menu-top > li.active a {
		border-radius: 20px 20px 0 0;
	}

	body.quintsens header ul.menu-top > li.active a {
		border-radius: 20px 20px 0 0;
	}

}

.carousel {
	min-height: fit-content;
}

.carousel,
.carousel-inner,
.item.active {
	width: 100%;
	height: 100%;
}

@media (max-width: 640px) {

	.desktop {
		display: block;
	}

	.columns {
		flex-direction: column;
		max-width: 100%;
	}

	.columns > .column {
		max-width: 100% !important;
	}

	header {
		background: #ccc url('../img/bg-mobile2.jpg') no-repeat;
		background-size: cover !important;
		background-position: bottom center !important;
	}

	header .container {
		padding-bottom: 90%;
		text-align: center;
		height: 70vh;
	}

	header .logo-dbi {
		margin-top: 15px;
	}

	header h1 {
		font-size: 5vw;
	}

	header h1 strong {
		font-size: 6vw;
	}

	header h1 .mini {
		font-size: 4.1vw;
	}

	section.programme {
		padding-bottom: 0px;
	}

	main > section.programme > .logo-programme {
		margin-bottom: 0px;
	}

	header .container .container-img {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	header .btn-documentation {
		top: unset;
	}

	main > section.programme > div > .logo-programme {
		width: 60%;
	}

	main > section.programme > .header-icons img.patch-offre-programme {
		width: 30%;
	}

	header .patch-offre-all {
		top: unset;
		left: unset;
		width: 35vw;
	}

	main > section.programme > .header-icons {
		margin-left: 0;
	}

	main > section.programme .logo-quartier {
		margin-bottom: 30px;
		width: 80%;
	}

	.programme-section.gdp {
		padding-top: 0px;
		width: auto;
		padding-left: 15px;
		padding-right: 15px;
	}

	.programme-section.gdp .container {
		width: 100% !important;
	}

	ul.lots > li {
		line-height: 1.5em;
		height: auto;
		padding-top: 5px;
		padding-bottom: 5px;
	}

	ul.lots > li .type_bien {
		display: block;
	}

	/*#quintsens .programme-section.residence {
		padding-top: 30px;
	}

	#quintsens .programme-section.residence .columns {
		flex-direction: column-reverse;
	}

	#quintsens .programme-section.residence .columns > .column.texte {
		padding-bottom: 30px;
	}

	#quintsens .programme-section.logements {
		margin-left: 15px;
		margin-right: 15px;
		padding-top: 30px;
		padding-bottom: 0px;
	}

	#quintsens .programme-section.logements .columns > .column.texte {
		padding-bottom: 30px;
	}

	#quintsens .programme-section.logements .columns > .column.texte ul.texte {
		max-width: none;
	}

	#quintsens .programme-section.logements .columns > .column.illustration {
		margin-left: -15px;
		margin-right: -15px;
		max-width: none !important;
		width: 100vw;
	}

	#quintsens .programme-section.gdp {
		padding-top: 30px;
	}

	#quintsens .programme-section.quartier .quartier-1 > .column.texte {
		padding-left: 0px;
		text-align: center;
		padding-bottom: 30px;
	}

	#quintsens .programme-section.quartier .quartier-1 > .column.texte p {
		text-align: left;
	}

	#quintsens .programme-section.quartier .quartier-2 {
		flex-direction: column-reverse;
	}

	#quintsens .programme-section.quartier .quartier-2 > .column.texte {
		text-align: center;
		padding-right: 0px;
	}

	#quintsens .programme-section.quartier .quartier-2 > .column.texte p {
		text-align: left;
	}*/

	#idealiz .programme-section.residence {
		background-image: none;
	}

	#idealiz .programme-section.residence .container:before {
		display: none;
	}

	#idealiz .programme-section.residence {
		padding-top: 0px;
		padding-bottom: 30px;
	}

	#idealiz .programme-section.residence .columns {
		flex-direction: column-reverse;
	}

	#idealiz .programme-section.residence .column.illustration img {
		margin-left: -15px;
		margin-right: -15px;
		max-width: none;
		width: 100vw;
	}

	#idealiz .programme-section.residence .column.texte {
		padding-bottom: 30px;
	}

	#idealiz .programme-section.logements .columns > .column.texte {
		padding-bottom: 30px;
	}

	#idealiz .programme-section.logements {
		margin-left: 15px;
		margin-right: 15px;
		padding-top: 0px;
		padding-bottom: 0px;
	}

	#idealiz .programme-section.logements .container {
		padding: 0px;
	}

	#idealiz .programme-section.prestations {
		padding-bottom: 30px;
	}

	#idealiz .programme-section.prestations .columns {
		flex-direction: column-reverse;
	}

	#idealiz .programme-section.prestations .columns > .column.texte {
		padding-bottom: 30px;
		text-align: center;
	}

	#idealiz .programme-section.prestations .columns > .column.texte ul {
		text-align: left;
	}

	#idealiz .programme-section.prestations .btn-documentation {
		margin-left: 0px;
	}

	#idealiz .programme-section.prestations img.perspective {
		margin-left: -15px;
		margin-right: -15px;
		max-width: none;
		width: 100vw;
	}

	#symboliz .programme-section.residence {
		background-image: none;
	}

	#symboliz .programme-section.residence .container:before {
		display: none;
	}

	#symboliz .programme-section.residence {
		padding-top: 0px;
		padding-bottom: 30px;
	}

	#symboliz .programme-section.residence .columns {
		flex-direction: column-reverse;
	}

	#symboliz .programme-section.residence .column.illustration img {
		margin-left: -15px;
		margin-right: -15px;
		max-width: none;
		width: 100vw;
	}

	#symboliz .programme-section.residence .column.texte {
		padding-bottom: 30px;
	}

	#symboliz .programme-section.logements .columns > .column.texte {
		padding-bottom: 30px;
	}

	#symboliz .programme-section.logements {
		margin-left: 15px;
		margin-right: 15px;
		padding-top: 0px;
		padding-bottom: 0px;
	}

	#symboliz .programme-section.logements .container {
		padding: 0px;
	}

	#symboliz .programme-section.logements .columns {}

	#symboliz .programme-section.prestations {
		padding-bottom: 30px;
	}

	#symboliz .programme-section.prestations .columns {
		flex-direction: column-reverse;
	}

	#symboliz .programme-section.prestations .columns > .column.texte {
		padding-bottom: 30px;
		text-align: center;
	}

	#symboliz .programme-section.prestations .columns > .column.texte ul {
		text-align: left;
	}

	#symboliz .programme-section.prestations .btn-documentation {
		margin-left: 0px;
	}

	#symboliz .programme-section.prestations img.perspective {
		margin-left: -15px;
		margin-right: -15px;
		max-width: none;
		width: 100vw;
	}


	.quartier-lize .columns.quartier-1 > .column.texte {
		padding: 0px 0px 30px 0px;
		text-align: center;
	}

	.quartier-lize .columns.quartier-1 > .column.texte p {
		text-align: left;
	}

	.quartier-lize .columns.quartier-1 > .column.illustration img {
		margin-left: -15px;
		margin-right: -15px;
		max-width: none;
		width: 100vw;
	}

	.quartier-lize .columns.quartier-2 {
		flex-direction: column-reverse;
		margin-bottom: 0px;
	}

	.quartier-lize .columns.quartier-2 > .column.texte {
		padding: 0px 0px 30px 0px;
		text-align: center;
	}

	.quartier-lize .columns.quartier-2 > .column.texte p {
		text-align: left;
	}

	section#carte h3 {
		margin-bottom: 10px;
	}

	section#carte h4 {
		font-size: 5.7vw;
		font-weight: 500;
	}

	section#carte .map-container {
		padding-bottom: 100%;
	}

	section#carte .map-legende ul > li {
		display: block;
		height: auto;
	}

	section#carte .map-legende ul > li span {
		flex: none;
		display: block;
		margin-bottom: 5px;
	}

	footer {
		text-align: center;
	}

	footer .columns > .column {
		text-align: center !important;
		margin-bottom: 30px;
	}

	footer p {
		text-align: center;
	}

	footer p > a {
		display: block;
		margin-top: 10px;
	}

	#navbar-top .container-fluid {
		padding-bottom: 20px;
	}

	#navbar-top .container {
		max-width: 100%;
		display: block;
	}

	#navbar-top .container-fluid > .container {
		padding: 0px;
	}

	#navbar-top .columns {
		display: flex;
		flex-direction: row;
	}

	#navbar-top .columns > .column {
		flex: 1;
	}

	#navbar-top ul.menu-top > li:first-child {
		display: none;
	}

	#navbar-top ul.menu-top > li:last-child {
		display: none;
	}

	#navbar-top ul.menu-top > li.menu-item {
		max-width: none;
	}

	#navbar-top .btn-documentation {
		padding-right: 0px !important;
		height: 50px;
		line-height: 50px;
		border-radius: 25px;
		text-align: left;
		font-size: 13px;
		font-weight: 500;
		max-width: 150px;
	}

	#navbar-top .btn-documentation span {
		display: inline-block;
		line-height: 1.3em;
		vertical-align: middle;
		margin-top: -3px;
	}

}

* {
	box-sizing: border-box;
}

.img-comp-container {
	position: relative;
	height: 500px;
	width: 100%;
}

.img-comp-img {
	position: absolute;
	width: auto;
	height: auto;
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.img-comp-slider {
	position: absolute;
	z-index: 9;
	cursor: pointer;
	width: 40px;
	height: 40px;
	background: url("/img/icon-avant-apres.png") no-repeat;
	background-position: center;
	background-size: contain;
}

.img-comp-overlay {
	z-index: 1;
}

.img-comp-bg {
	background-size: cover !important;
	width: 100%;
	height: 100%;
}

div.subtitle {
	position: relative;
	display: block;
	width: 100%;
}

.subtitle h3 {
	font-size: 25px;
	font-weight: normal;
	text-align: center;
	text-transform: uppercase;
}

.subtitle h4 {
	text-align: center;
}

.desktop_new {
	display: none;
}

@media (min-width: 1100px) {
	.desktop_new {
		display: block!important;
	}
}

@media (max-width: 800px) {
	#heritage .programme-section.residence .column.texte > div:first-child ul.texte {
		position: relative;
		color: #fff;
		margin: 30px 0 -30px;
	}

	#heritage .programme-section.residence .column.texte > div {
		padding: 10px;
	}

	.desktop {
		display: block;
	}

	#heritage .img-comp-container {
		width: auto;
		height: 250px;
	}

	#heritage .logo-programme {
		width: 50%;
	}

	#heritage .header-icons {
		margin-bottom: 5vh;
	}

	#heritage .programme-section div.faq {
		flex-direction: column;
		padding: 20px 0px 40px 15px;
		margin-left: -5vw;
		width: 110%;
	}

	#heritage .programme-section div.faq .sfaq {
		border-left: inherit;
		width: 105%;
		border-bottom: 2px solid #A2957F;
		padding: inherit;
		margin: inherit;
	}

	#heritage .programme-section.residence .btn-documentation {
		width: fit-content;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}

	#heritage .programme-section.residence h5 {
		margin-top: 1vh;
		padding: 0;
		text-align: left;
	}

	#heritage .programme-section div.faq .sfaq h4 {
		width: 95%;
		cursor: pointer;
		background-image: url('../img/puce.png');
		background-position: center right;
		background-repeat: no-repeat;
		padding: 5px;
	}

	#heritage .programme-section div.faq .sfaq h4.inverted {
		background-image: url('../img/puce-inv.png');
	}

	#heritage .programme-section div.sfaq .sfaqtxt {
		display: none;
		padding: 5px;
	}

	#heritage .programme-section div.sfaq #sfaqtxt1 a.btn-documentation {
		width: fit-content;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}

	#heritage .programme-section .maison {
		margin-top: 2vh;
		padding-bottom: 3vh;
		background-size: contain;
	}

	#heritage .programme-section .maison img {
		width: 95%;
	}
}