
html,body { width:100%; height:100%; padding:0px; margin:0px; /* min-width:100vw; */ }
h1,h2,h3,h4,h5,h6,p,form,ul,li { padding:0px; margin:0px; }
* { outline:none !important; }

.p-0 { padding:0px; }
.m-0 { margin:0px; }
.desktop {  }
.mobile { display:block; }

.columns { display:flex; list-style-type:none; }
.columns > .column { flex:1; }
.columns > li { flex:1; }

input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
input[type="number"] { -moz-appearance:textfield; }

.lightbox .lb-number { display:none !important; }
.lightbox .lb-closeContainer { position:fixed; top:0px; right:0px; }
.lightbox .lb-close { width:40px; height:40px; background-color:#000; background-position:center center; }
.lightbox .lb-image { border-radius:0px; border:solid 10px #fff; }

.carousel > .carousel-inner { position:absolute; left:0px; top:0px; width:100%; height:100%; }
.carousel > .carousel-inner > .item { position:absolute; left:0px; top:0px; right:0px; bottom:0px; background-size:cover !important; background-position:center !important; background-repeat:no-repeat !important; }


/****** // ******/

body {
	min-width:320px; /* 100vw */
	background: white;
	font-family:'Helvetica Neue', sans-serif; 
	font-size: 16px;
	overflow-x: hidden;
}

::-webkit-scrollbar { width:8px; background-color:#eee; }
::-webkit-scrollbar-thumb { background-color:#777; /* #e80001 */ }

.container { width:100%; max-width:100% !important; }

.checkbox-inline input { position: relative; display:inline-block; width:16px; height:16px; -moz-appearance:none; -webkit-appearance:none; margin-top:0px; vertical-align:top; border:none !important; }
.checkbox-inline input:before  { content:" "; position:absolute; left:0px; top:0px; width:16px; height:16px; border-radius:3px; /* border:solid 1px #666; */ background:#ddd; }
/* .checkbox-inline input:checked:after { content:" "; position:absolute; left:3px; top:3px; width:14px; height:14px; border-radius:7px; background-color:#e5194e; } */
.checkbox-inline input:checked:after { font-family:"icomoon"; /* "Font Awesome 5 Pro"; font-weight:900; content:"\f00c"; */ content:"\ea10"; position:absolute; left:0px; top:0px; width:16px; height:16px; /* border-radius:7px; background-color:#e5194e; */ background:transparent; color:#9F0353; text-align:right; }
.checkbox-inline input[type="checkbox"] { }
.checkbox-inline input[type="checkbox"]:before { /* border-radius:0px; */ }
.checkbox-inline input[type="checkbox"]:checked:after { /* border-radius:0px; background:#9F0353; */ }
.checkbox-inline input[type=checkbox], .radio-inline input[type=radio], .checkbox-inline input[type=radio] { position:absolute; margin-left:-20px; }

.ui-front.ui-autocomplete { z-index:6666; }

/****** // ******/

.btn-provinces { display:inline-block; height:60px; line-height:60px; padding:0px 20px; text-align:center; background:#D4453C; color:#fff !important; text-decoration:none !important; border:none !important; box-shadow:none !important; outline:none !important; }

header { position:relative; }
header.sticky-header { display:block; position:fixed; left:0px; top:0px; right:0px; height:69px; background:#fff; border-radius:0px; z-index:901; margin-bottom:0px; /* box-shadow:0px 0px 10px rgba(0,0,0,0.3); */ }
header.sticky-header { display:flex; justify-content:flex-end; /* space-between; */ align-items:center; /* padding:30px 10%; */ padding:0px 30px; }
header.sticky-header > .container > * { flex:1; }
header.sticky-header .logo { width:200px; height:40px; line-height:40px; /* background:#ccc; border-radius:4px; */ margin-right:auto; font-family:Lato; font-weight:900; font-size:20px; text-align:center; color:#000 !important; text-decoration:none !important; }
header.sticky-header .logo { position:absolute; left:35px; top:12px; }
header.sticky-header .logo span { font-weight:100; }
.nav__links { list-style-type:none; margin-bottom:0px; white-space:nowrap; } 
.nav__links > li { display:inline-block; }
.nav__links > li > a { position:relative; display:block; height:69px; line-height:69px; padding:0px 15px; transition:all 0.4s ease; text-decoration:none !important; color:#333; font-size:14px; text-transform:uppercase; }
.nav__links > li.active > a,
.nav__links > li > a:hover { color:#000; font-weight:bold; }
header.sticky-header .cta { height:40px; line-height:40px; font-size:16px; margin-left:15px; }
#quicksearch { position:relative; }
#quicksearch > input { width:230px; height:40px; line-height:40px; padding:0px 20px; border-radius:20px; background:#eee; border:none; box-shadow:none; font-size:15px; z-index:1; padding-right:40px; outline:none !important; }
#quicksearch > input::placeholder { color:#888; }
#quicksearch > button { position:absolute; top:5px; right:5px; width:30px; height:30px; line-height:30px; border-radius:15px; background:#aaa; color:#fff; border:none; box-shadow:none; outline:none; z-index:2; }
#quicksearch > button:hover { background:#319db5; /* #f64f64; */ }
header .btn-userpanel { width:40px; height:40px; line-height:40px; text-align:center; border-radius:20px; background:#eee; color:#f64f64; margin-left:15px; }
body.sticky-navbar { padding-top:69px; }
header .btn-intranet { position:absolute; right:-1px; top:68px; height:69px; line-height:69px; padding:0px 40px; background:#F6F6F6; border-radius:34px 0px 0px 34px; box-shadow:2px 4px 4px rgba(0,0,0,0.2); color:#000 !important; text-decoration:none !important; font-weight:bold; font-size:20px; }
header .btn-intranet .icon-lock { color:#D4453C; }

header.sticky-header { box-shadow:0px 0px 10px rgb(0 0 0 / 30%); }
header.sticky-header .btn-intranet { top:58px; box-shadow:0px 0px 10px rgb(0 0 0 / 30%); }

footer { background:#f6f6f6; font-size:14px; }
footer > .container { margin:auto; padding:40px; }
footer .logo-lesprovinces { display:block; margin-bottom:15px; }
footer .adresse-lesprovinces { color:#6D6D6D; text-transform:uppercase; font-weight:bold; font-size:14px; margin-bottom:15px; }
footer ul.links { display:block; list-style-type:none; margin:0px; padding:0px; }
footer ul.links > li { display:inline-block; }
footer ul.links > li > a { color:#6F6F6F !important; text-decoration:underline; }



main.main-container, main > .main-container { padding:0px; }
main section { display:block; width:100%; /* min-height:calc(100vh - 69px); */ margin-bottom:60px; }
main section h1 { position:relative; font-size:42px; color:#000; text-decoration:none !important; line-height:1em; }
main section h1:before { content:" "; position:absolute; left:-15px; top:0px; bottom:0px; width:2px; background:#000; }
main section h2 { font-size:24px; font-weight:bold; color:#000; }
main section .bloc-infos { position:relative; padding:40px; background:#fff; }
main section .bloc-infos h1 { margin-bottom:20px; }
main section .bloc-infos p { margin-bottom:20px; }
main section .columns,
main section .columns > .column { position:relative; }

section#home-programmes { height:100%; min-height:calc(100vh - 69px); }
section#home-programmes > .columns { height:100%; min-height:calc(100vh - 69px); }
section#home-programmes > .columns > .column { max-width:50%; }
section#home-programmes > .columns > .column:first-child { background:#f6f6f6; min-width:60%; }
section#home-programmes .carousel { width:100%; height:100%; }
section#home-programmes .carousel > .carousel-inner { }
section#home-programmes .carousel > .carousel-inner > .item { background-repeat:no-repeat !important; background-size:cover !important; background-position:center !important; }
section#home-programmes .carousel > .carousel-control-prev,
section#home-programmes .carousel > .carousel-control-next { width:40px; height:40px; line-height:40px; text-align:center; background:#fefefe; color:#333; text-decoration:none !important; }
section#home-programmes .carousel > .carousel-control-prev:hover,
section#home-programmes .carousel > .carousel-control-next:hover { background:#ddd; }
section#home-programmes .carousel > .carousel-control-prev { position:absolute; right:40px; bottom:0px; }
section#home-programmes .carousel > .carousel-control-next { position:absolute; right:0px; bottom:0px; }
.programme-infos { position:absolute; top:60%; left:50%; width:48%; margin-left:-24%; padding:20px 20px 40px 20px; background:#fff; display:block; text-align:center; line-height:1.4em; }
.programme-infos > span { display:block; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
.programme-infos .ville_programme { display:block; font-size:24px; text-transform:uppercase; font-weight:bold; margin-bottom:5px; }
.programme-infos .nom_programme { display:block; font-size:15px; text-transform:uppercase; margin-bottom:0px; }
.programme-infos .typologies_programme { display:block; font-size:15px; text-transform:uppercase; color:#929292; margin-bottom:10px; }
.programme-infos > .btn-ensavoirplus { position:absolute; width:52%; left:50%; margin-left:-26%; bottom:-20px; }
section#home-programmes > .columns > .column:last-child { padding:5%; }
section#home-programmes h1 { margin-top:40%; margin-bottom:20px; }
section#home-programmes > .columns > .column:last-child p { margin-bottom:20px; }

section#home-quisommesnous { height:100%; min-height:calc(100vh - 69px); }
section#home-quisommesnous > .columns { height:100%; min-height:calc(100vh - 69px); }
section#home-quisommesnous > .columns > .column { }
section#home-quisommesnous > .columns > .column:last-child { min-width:62%; background:#eee url('../img/bg-quisommesnous.jpg') no-repeat; background-size:cover !important; background-position:center !important; }
section#home-quisommesnous .bloc-infos { margin:40% -20% 0 10%; z-index:2;  }

section#home-promoteurs { padding:40px; }
section#home-promoteurs h2 { margin-bottom:40px; font-size:28px; font-weight:bold; color:#000; text-align:center; }
section#home-promoteurs .columns { margin-bottom:20px; padding:0px 10px; }
section#home-promoteurs .columns > .column { border-right:solid 1px #000; text-align:center; line-height:200px; }
section#home-promoteurs .columns > .column .logo-promoteur { max-width:225px; max-height:100px; display:inline-block; vertical-align:middle; }
section#home-promoteurs .columns > .column:last-child { border:none; }


ul.points-forts { display:flex;  list-style-type:none; padding:30px 60px; background:#f6f6f6; }
ul.points-forts > li { flex:1; color:#6D6D6D; font-weight:bold; text-align:center; }
ul.points-forts > li img { display:block; margin:0px auto 15px auto; }

#quisommesnous-intro { margin-bottom:15%; }
#quisommesnous-intro .bloc-infos { margin:10% 5% 0 5%; }
#quisommesnous-intro ul.points-forts { width:76.666666%; position:absolute; right:0px; bottom:0px; margin-bottom:-10%; }

#quisommesnous-chiffres { }
#quisommesnous-chiffres h2 { margin-bottom:20px; margin-top:6%;  }
#quisommesnous-chiffres .columns { }
#quisommesnous-chiffres .columns > .column { }
#quisommesnous-chiffres .columns > .column:last-child { padding-left:0px; }
#quisommesnous-chiffres #les-chiffres { width:85%; padding:30px 60px; background:#f6f6f6; }
#quisommesnous-chiffres ul.points-forts { padding:0px; }
#quisommesnous-chiffres ul.points-forts li { display:block; margin-right:10px; /* height:0px; */ padding-bottom:100%; background:#fff; padding:20px; font-size:16px; font-weight:normal; }
#quisommesnous-chiffres ul.points-forts li:last-child { margin-right:0px; }
#quisommesnous-chiffres ul.points-forts li strong { display:block; font-size:68px; font-weight:bold; color:#D4453C; line-height:0.9em; }

#quisommesnous-engagement { position:relative; margin-bottom:0px; }
#quisommesnous-engagement img.background { display:block; width:74%; height:auto; }
#quisommesnous-engagement ul.engagements { list-style-type:none; margin:0px; padding:40px; position:absolute; right:0px; bottom:0px; width:40%; background:#F6F6F6; }
#quisommesnous-engagement ul.engagements li { position:relative; padding-left:60px; color:#7B7B7B; font-weight:bold; }
#quisommesnous-engagement ul.engagements li:before { content:" "; position:absolute; left:0px; top:0px; width:50px; height:50px; background:transparent url('../img/icon-feuille.png') no-repeat; background-size:cover !important; }
#quisommesnous-engagement ul.engagements li strong { color:#D4453C; }


#quisommesnous-forces { }
#quisommesnous-forces .columns { }
#quisommesnous-forces .columns > .column { }
#quisommesnous-forces .columns > .column:first-child { padding-left:40px; padding-right:10%; }
#quisommesnous-forces .columns > .column:last-child { max-width:40%; }
#quisommesnous-forces h1 { margin-bottom:40px; margin-top:-38px; }
ul.forces { list-style-type:none; margin:0px; padding:0px; }
ul.forces > li { position:relative; display:block; font-weight:bold; color:#D4453C; padding-left:90px; margin-bottom:30px; font-size:20px; padding-top:25px; }
ul.forces > li span.number { position:absolute; left:0px; top:0px; width:70px; height:70px; line-height:70px; border-radius:35px; text-align:center; border:dotted 2px #D4453C; color:#D4453C; }
ul.forces > li p { display:block; font-size:14px; color:#000; margin-top:10px; font-weight:normal; }
.img-wrapper { position:relative; }
.img-wrapper > .btn-vertical { position: absolute; top: 0px; right: 0px; bottom: 0px; width: 40px; background:#D4453C; color:#fff; text-decoration:none !important; }
.img-wrapper > .btn-vertical span { position:relative; display:block; transform:rotate(-90deg); white-space: nowrap; }


#promoteurs { }
section#promoteurs { height:100%; min-height:calc(100vh - 69px); margin-bottom:0px; }
section#promoteurs h1 { font-weight:normal; }
section#promoteurs > .columns { height:100%; min-height:calc(100vh - 69px); transition:all 0.4s ease; transition:flex 0.4s ease-out; }
section#promoteurs > .columns > .column { position:relative; transition:all 0.4s ease; }
section#promoteurs > .columns > .column a.fg { position:absolute; left:0px; top:0px; right:0px; bottom:0px; background:transparent; transition:all 0.4s ease; z-index:2; }
section#promoteurs > .columns > .column a.fg span.title { position:absolute; display:inline-block; left:0px; top:0px; right:0px; bottom:0px; margin:auto; width:200px; height:200px; color:#707070 !important; text-align:center; font-weight:bold; font-size:18px; line-height:1em; }
section#promoteurs > .columns > .column a.fg span.icon-arrow-right2 { display:block; width:50px; height:50px; line-height:50px; text-align:center; background:#D4453C; color:#fff; margin:10px auto 0px auto; }
section#promoteurs > .columns > .column a.fg:hover:before { content:" "; position:absolute; left:0px; top:0px; right:0px; bottom:0px; background:rgba(212,69,60,0.7); }
section#promoteurs > .columns > .column a.fg:hover span.title { color:#fff !important; }
section#promoteurs > .columns > .column a.fg:hover span.icon-arrow-right2 { background:#fff; color:#D4453C; }
section#promoteurs  .promoteur { transition:all 0.4s ease; overflow:hidden; }
section#promoteurs  .promoteur.copra { background:#eee url('../img/bg-promoteur-copra.png') no-repeat; background-size:cover !important; background-position:center; }
section#promoteurs  .promoteur.creerpromotion { background:#eee url('../img/bg-promoteur-creerpromotion.png') no-repeat; background-size:cover !important; background-position:center; }
section#promoteurs  .promoteur.endroitsdecite { background:#eee url('../img/bg-promoteur-endroitsdecite.png') no-repeat; background-size:cover !important; background-position:center; }
section#promoteurs  .promoteur.sully { background:#eee url('../img/bg-promoteur-sully.png') no-repeat; background-size:cover !important; background-position:center; }
section#promoteurs  .logo-promoteur.creerpromotion { max-width:240px; }
section#promoteurs  .logo-promoteur.sully { max-height:80px; }

.promoteurs .promoteur.minimized { max-width:40px; }
.promoteurs .promoteur.minimized a.fg { width:40px; }
.promoteurs.active .promoteur.active { max-width:none; }
.promoteurs.active .promoteur a.fg,
.promoteurs.active .promoteur.active a.fg { left:0px; right:auto; width:40px !important; color:#fff !important; }
.promoteurs.active .promoteur.active a.fg:before { content:" "; position:absolute; left:0px; top:0px; right:0px; bottom:0px; background:rgba(212,69,60,0.7); }
.promoteurs.active .promoteur a.fg span.title,
.promoteurs.active .promoteur.active a.fg span.title { position:relative; width:auto; height:auto; transform:rotate(-90deg); line-height:40px !important; font-size:16px !important; font-weight:normal !important; }

section#promoteurs > .columns > .column.active a.fg span.title,
.promoteurs.active .promoteur.active a.fg span.title { color:#fff !important; }

.promoteurs.active .promoteur a.fg span.title { color:#fff !important; }
.promoteurs.active .promoteur a.fg span.title br { display:none; }
.promoteurs.active .promoteur a.fg span.title span.icon-arrow-right2 { display:none !important; }

.promoteurs.active .promoteur a.fg span.icon-arrow-right2,
.promoteurs.active .promoteur.active a.fg span.icon-arrow-right2 { display:none; }

.promoteurs  .promoteur .fiche-promoteur { transition:all 0.4s ease; opacity:0; margin-left:-100%;  }
.promoteurs  .promoteur.active .fiche-promoteur { opacity:1; margin-left:0px; }
.promoteurs.active .promoteur.active { background:#fff !important; padding:0px; }

.promoteurs.active .promoteur .fiche-promoteur { width:100%; height:100%; background:#fff !important; }
.promoteurs.active .promoteur .fiche-promoteur > .columns > .column:first-child { max-width:30%; }
.promoteurs.active .promoteur .fiche-promoteur > .columns > .column:last-child { padding:9%; }
.promoteurs.active .promoteur .fiche-promoteur h1 { margin-bottom:30px; }
.promoteurs.active .promoteur .fiche-promoteur .logo-promoteur { margin-bottom:30px; }
.promoteurs.active .promoteur .fiche-promoteur h2 { text-transform:uppercase; margin-bottom:30px; font-size:23px; }
.promoteurs.active .promoteur .fiche-promoteur p { margin-bottom:15px; }
.promoteurs.active .promoteur .fiche-promoteur a.link-promoteur { font-weight:bold; font-size:14px; color:#D4453C; }




section#contact { margin-bottom:0px; }
section#contact h1 { font-weight:normal; line-height:1.1em; font-size:40px; margin-bottom:30px; }
section#contact h2 { font-size:25px; margin-bottom:30px; text-transform:uppercase; }
section#contact > .columns > .column:first-child { padding-left:15%; padding-top:15%; }
section#contact > .columns > .column:first-child:before { content:" "; position:absolute; left:0px; top:0px; width:20%; height:23%; min-height:400px; background:#D4453C url('../img/carte-france.png') no-repeat; background-size:100% auto !important; background-position:top center; }
#form-contact { margin-bottom:40px; }
#form-contact .form-group { }
#form-contact .form-group > .control-label { display:none; }
#form-contact .form-group > .control { width:100%; }
#form-contact .form-group > .control > .form-control { height:50px; line-height:50px; padding:0px 30px; border-radius:25px; background:#eee; border:none !important; box-shadow:none !important; outline:none !important; font-size:18px; color:#000; } 
#form-contact .form-group > .control > .form-control:placeholder { color:#666; font-style:italic; }
#form-contact .form-group > .control > textarea.form-control { height:auto; line-height:1.5em; padding:20px 30px; resize:none !important; }
#form-contact .form-group > .control > input.form-control { margin-right:60px; }
#form-contact p.mentions { margin-bottom:30px; }
#form-contact .btn-provinces { min-width:220px; margin-right:0px; margin-left:auto; display:block; }
#form-contact .form-group.error { }
#form-contact .form-group.error .form-control { border:solid 1px #ff0000 !important; }
section#contact > .columns > .column:last-child { padding-top:10%; }
ul.adresses-promoteurs { list-style-type:none; width:51%; margin-right:0px; margin-left:auto; }
ul.adresses-promoteurs > li { display:block; background:#F6F6F6; margin-bottom:30px; color:#000; padding:40px; }
ul.adresses-promoteurs > li > span, ul.adresses-promoteurs > li > a { display:block; }
ul.adresses-promoteurs > li > .nom { font-weight:bold; font-size:30px; color:#D4453C; text-transform:none; margin-bottom:15px; }
ul.adresses-promoteurs > li > .adresse { font-weight:normal; font-size:18px; margin-bottom:15px; }
ul.adresses-promoteurs > li > .telephone { font-weight:normal; font-size:18px; color:#000 !important; }
ul.adresses-promoteurs > li > .telephone { text-decoration:none !important; }
ul.adresses-promoteurs > li > .email { font-weight:bold; font-size:18px; text-decoration:underline; color:#000 !important; }
ul.adresses-promoteurs > li > .website { font-weight:bold; font-size:18px; text-decoration:underline; color:#000 !important; }

section#contact > .columns > .column:first-child { }
section#contact > .columns > .column:first-child:before { width:15%; }
section#contact > .columns > .column:first-child #form-contact { max-width:640px; }
section#contact > .columns > .column:first-child > img { max-width:640px; }
section#contact > .columns > .column:last-child { max-width:360px; }
ul.adresses-promoteurs { width:100%; }

.form-group#optin { display:flex; }
.form-group#optin [type="checkbox"] { position:relative; flex:1; max-width:40px; appearance:none; -webkit-appearance:none; }
.form-group#optin [type="checkbox"]:before { content:" "; position:absolute; left:5px; top:0px; width:20px; height:20px; border:solid 1px #ccc; }
.form-group#optin [type="checkbox"]:checked:after { content:" "; position:absolute; left:9px; top:4px; width:12px; height:12px; background:#e80001; }
.form-group#optin label { flex:1; font-weight:normal; }
div.confirmation { text-align:center; max-width:640px; min-height:400px; }


#actualites { }
section#actualites {	 }
section#actualites h1 { margin:5% 0px 5% 10%; }
ul.actualites { list-style-type:none; }
ul.actualites > li { position:relative; display:block; margin-bottom:60px; }
ul.actualites > li a.btn-more { display:block; font-weight:bold; color:#D4453C; float:right; font-size:14px; text-decoration:none !important; }
ul.actualites > li a.btn-more span { }

ul.actualites > li:nth-child(even) { direction:rtl; }
ul.actualites > li:nth-child(even) a.btn-more { float:left; }
ul.actualites > li:before { content:" "; position:absolute; left:0px; top:0px; bottom:0px; width:70%; background:#eee; }
ul.actualites > li:nth-child(even):before { content:" "; position:absolute; right:0px; top:0px; bottom:0px; width:70%; background:#eee; }

ul.actualites > li > .columns {  }
ul.actualites > li > .columns > .column { direction:ltr; }
/* 
ul.actualites > li > .columns > .column:first-child { padding:40px 40px ; background:#eee; }
ul.actualites > li > .columns > .column:last-child { padding:40px; }
*/
ul.actualites > li > .columns > .column:first-child { padding:60px 40px 40px 40px; }
ul.actualites > li > .columns > .column:last-child { padding:40px 40px 40px 0px; }
ul.actualites > li:nth-child(even) > .columns > .column:last-child { padding:40px 0px 40px 40px; }

ul.actualites > li span { transition:all 0.4s ease; }
ul.actualites > li span.date { display:block; font-size:18px; font-weight:bold; color:#6D6D6D; margin-bottom:10px; }
ul.actualites > li span.titre { display:block; font-size:24px; font-weight:bold; color:#000; margin-bottom:30px; line-height:1.1em; }
ul.actualites > li span.texte { display:block; font-size:18px; margin-bottom:20px; max-height:100px; overflow:hidden; }
ul.actualites > li.active span.texte { max-height:none; }


.map-container { position:relative; width:100%; height:100%; }
.map-container > .map-label { position:absolute; top:-20px; right:120px; padding:10px 15px; background:#fff; /* border:solid 2px #ccc; */ box-shadow:0px 0px 10px rgba(0,0,0,0.4); color:#9F0353; pointer-events:none; }

#programmes { }
section#programmes-recherche { }
section#programmes-recherche h2 { font-size:22px; margin-bottom:30px; }
section#programmes-recherche .columns > .column { }
section#programmes-recherche .columns > .column:first-child { padding:20px 40px; }
section#programmes-recherche .columns > .column.carte { min-width:68%; }

	#programmes-recherche { }
	#programmes-recherche > .boxed { padding:0px !important; }
	#programmes-recherche > .columns { flex-flow:wrap; }
	#programmes-recherche > .columns > .column:first-child { max-width:33.333333333%; background:#fff; padding:25px; }
	#programmes-recherche > .columns > .column:last-child { background:#eee; }
	#programmes-recherche .carte-logements { width:100%; height:100%; /* height:0px; padding-bottom:80%; */ }
	#programmes-recherche .form-group { display:flex; }
	#programmes-recherche .form-group > .control-label { flex:1; max-width:100px; font-size:12px; }
	#programmes-recherche .form-group > .control { flex:1; text-align:left; font-size:12px; }
	#programmes-recherche .form-group#budget,
	#programmes-recherche .form-group#livraison,
	#programmes-recherche .form-group#delai { margin-bottom:10px; }
	#programmes-recherche .form-group#budget .control,
	#programmes-recherche .form-group#livraison .control,
	#programmes-recherche .form-group#delai .control { font-size:12px; /* color:#aaa; */ }
	#programmes-recherche #slider-budget,
	#programmes-recherche #slider-livraison { margin:0px 15px 25px 15px; height:4px; border:none; background:#eee; }
	#programmes-recherche .ui-slider .ui-slider-range { background:#D4453C; border:none; }
	#programmes-recherche .ui-slider .ui-slider-handle { background:#D4453C; border:none; width:14px; height:14px; border-radius:7px; }
	.form-group.combo { position:relative; display:block; }
	.form-group.combo .control { display:block; width:100%; }
	.form-group.combo .control-label { position:absolute; left:0px; top:0px; width:100% !important; max-width:100% !important; height:34px; line-height:34px; padding:0px 15px; font-size:13px; font-weight:normal; pointer-events:none; }
	#programmes-recherche .form-group.combo .form-control { background:#eee; border-radius:17px; border:none; outline:none !important; }
	#programmes-recherche .btn-lnc { margin-bottom:10px; text-transform:uppercase; width:200px; font-size:11px; color:#D4453C; }
	#programmes-recherche .form-group#type_bien > .control-label { flex:0 auto; margin-right:10px; }
	#programmes-recherche .form-group#type_bien > .control { text-align:left; }
	#programmes-recherche .form-group#nb_pieces > .control-label { flex:0 auto; margin-right:10px; }
	#programmes-recherche .form-group#nb_pieces > .control { text-align:left; }
	#programmes-recherche .form-group > .control > .checkbox-inline { margin-left:5px; }
	#programmes-recherche .form-group > .control > .checkbox-inline > input[type="checkbox"] { /* width:20px; height:20px; */ }
	#programmes-recherche .form-group > .control > .checkbox-inline > label { font-weight:normal; /* margin-left:5px; */ }
	.form-group > .control-label { transition:all 0.3s ease; opacity:1; }
	.form-group > .control-label.activated { top:-70% !important; opacity:0 !important; }
	.map-popup { text-align:center; font-size:11px; max-width:150px; }
	.map-popup .perspective { display:block; width:100%; height:0px; padding-bottom:60%; background-repeat:no-repeat !important; background-size:cover !important; background-position:center !important; margin-bottom:10px; max-width:150px; min-width:150px; }
	.map-popup .ville { display:block; font-weight:bold; font-size:11px; color:#D4453C; text-transform:uppercase; margin-bottom:5px; }
	.map-popup .typologies { display:block; font-weight:bold; font-size:11px; color:#000; line-height:1.2em; margin-bottom:5px; }
	.map-popup .btn-lnc { display:inline-block; margin:auto; text-align:center; height:26px; line-height:26px; margin:5px auto 0px auto !important; width:auto !important; }	
	#programmes-recherche #search-results { position:relative; flex:1 1 100%; background:#eee; transition:all 0.5s ease; max-height:0px; max-height:0px; overflow:hidden; }
	#programmes-recherche #search-results.active { height:auto; max-height:600px; }
	#programmes-recherche #search-results > div { margin:15px; }
	#programmes-recherche #search-results ul.programmes,
	#programmes-recherche #search-results ul.programmes > li:last-child { margin-bottom:0px; }
	#programmes-recherche #search-results .programme-infos { padding:7px 10px; }
	#search-results .btn-favoris { display:none !important; }
	#programmes-recherche #search-results .programme-nom { display:block !important; margin:0px; }
	#programmes-recherche #search-results .close { /* position:absolute; right:0px; top:0px; */ display:block; float:none; margin:0px auto 15px auto; opacity:1; }
	
	#programmes-recherche .form-group#type_bien .control-label,
	#programmes-recherche .form-group#nb_pieces .control-label,
	#programmes-recherche .form-group#actable .control-label { flex:2 3 auto; white-space:nowrap; }
	#programmes-recherche .form-group#type_bien .control,
	#programmes-recherche .form-group#nb_pieces .control,
	#programmes-recherche .form-group#actable .control { flex:1 1 100%; text-align:right; }
	
	#programmes-recherche .form-group > .checkbox-inline { margin-left:0px; }
	#programmes-recherche .form-group > .checkbox-inline > label { margin-left:10px; font-weight:normal; }
	
	.form-group#nb_pieces, .form-group#type_bien { /* display:block; */ }	
	.form-group#nb_pieces > .control-label { display:block; flex:none; width:100%; max-width:100%; margin-bottom:10px; }
	.form-group#nb_pieces > .control { display:block; flex:none; width:100%; max-width:100%; }
	.form-group#type_bien > .control-label,
	.form-group#nb_pieces > .control-label,
	.form-group#actable > .control-label { max-width:none; }

section#programmes-resultats { padding:15px; text-align:center; }
section#programmes-resultats > .pagination:first-child { }
ul.programmes { list-style-type:none; margin:0px; padding:0px; text-align:center; }
ul.programmes > li.programme { display:inline-block; width:28%; margin:1%; background:#f6f6f6; vertical-align:top; }
ul.programmes > li.programme .programme-perspective { position:relative; width:100%; height:0px; padding-bottom:60%; background-size:cover !important; background-position:center !important; }
ul.programmes > li.programme .programme-accroche { height:30px; line-height:30px; padding:0px 20px; background:#777; color:#fff; font-weight:bold; text-transform:uppercase; position:absolute; left:0px; top:20px; }
ul.programmes > li.programme .programme-details { display:block; padding:15px; overflow:hidden; text-align:left; }
ul.programmes > li.programme .programme-ville { display:block; font-weight:bold; color:#000; font-size:18px; }
ul.programmes > li.programme .programme-nom { display:block; font-weight:normal; color:#000;  }
ul.programmes > li.programme .programme-dispo { display:block; font-weight:normal; color:#929292; margin-bottom:10px;}
ul.programmes > li.programme .programme-dispositifs { list-style-type:none; margin:0px; padding:0px; margin-bottom:10px; height:50px; line-height:50px; }
ul.programmes > li.programme .programme-dispositifs > li { display:inline-block; width:50px; height:50px; line-height:50px; text-align:center; border-radius:25px; border:dotted 2px #D4453C; font-size:13px; }
ul.programmes > li.programme .programme-dispositifs > li span { display:inline-block; line-height:1em; vertical-align:middle; }
ul.programmes > li.programme .btn-programme { text-transform:uppercase; font-size:12px; font-weight:bold; float:right; color:#000; }
ul.programmes > li.programme .btn-programme span { color:#D4453C; }
ul.pagination { list-style-type:none; }
ul.pagination > li a { float:none; }
ul.pagination > li.current-page { padding-left:20px; padding-right:20px; color:#000; }

footer .columns { }
footer .columns > .column { text-align:center; }
footer .columns > .column:first-child { text-align:left; }
footer .columns > .column:last-child { text-align:right; }
footer .columns > .column.promoteur { }
footer .columns > .column.promoteur span.titre { display:block; font-weight:bold; color:#D4453C; font-size:20px; }
footer .columns > .column.promoteur a { display:block; color:#333 !important;  }



/****** Animations ******/
@-webkit-keyframes shake {
    0%, 100% {-webkit-transform: translateX(0);}
    10%, 30%, 50%, 70%, 90% {-webkit-transform: translateX(-10px);}
    20%, 40%, 60%, 80% {-webkit-transform: translateX(10px);}
}
@keyframes shake {
    0%, 100% {transform: translateX(0);}
    10%, 30%, 50%, 70%, 90% {transform: translateX(-10px);}
    20%, 40%, 60%, 80% {transform: translateX(10px);}
}
.shake {
    -webkit-animation-name: shake;
    animation-name: shake;
    -ms-animation:shake .7s; 
    -webkit-animation:shake .7s; 
    -moz-animation:shake .7s; 
    animation:shake .7s;
}


[type="radio"].checkbutton, [type="checkbox"].checkbutton { display:none }
[type="radio"].checkbutton + label,
[type="checkbox"].checkbutton + label { position:relative; height:30px; line-height:30px; padding:0px 10px; border-radius:5px; border:solid 1px #ccc; }
[type="radio"].checkbutton:checked + label,
[type="checkbox"].checkbutton:checked + label { background:#D4453C; color:#fff; }

#programmes-recherche { }
#programmes-recherche h2 { font-weight:900; margin-top:30px; margin-bottom:20px !important; }
#programmes-recherche .form-control { outline:none !important; box-shadow:none !important; }
#programmes-recherche .btn-provinces { height:50px; line-height:50px; }
#programmes-recherche .form-group.combo .form-control { padding:0px 12px; }
#programmes-recherche .form-group#type_bien { display:block; }
#programmes-recherche .form-group#type_bien .control-label,
#programmes-recherche .form-group#nb_pieces .control-label { height:30px; line-height:30px; margin:0px; }
#programmes-recherche .form-group#localisation .form-control { padding-right:34px !important; }
#programmes-recherche .form-group#localisation .control:after { content:" "; position:absolute; right:0px; top:0px; width:34px; height:34px; line-height:34px; background:transparent url('../img/map-marker.png') no-repeat; background-size:17px auto; background-position:50% 5px; }

#programmes-recherche .form-group#budget .control, 
#programmes-recherche .form-group#delai .control { text-align:right; color:#aaa; }

ul.programmes > li.programme .programme-dispositifs > li { background:#fff; }
ul.programmes > li.programme .programme-dispositifs > li span { font-weight:900; margin-top:-6px; }
ul.programmes > li.programme .programme-ville { text-transform:uppercase; }
ul.programmes > li.programme .btn-programme { text-decoration:none !important; }

a.top { position:fixed; bottom:30px; right:30px; width:60px; height:60px; line-height:60px; text-align:center; background:#fff; border-radius:6px; color:#D4453C !important; z-index:11; box-shadow:0 0 10px rgba(0,0,0,0.3); font-size:7vw; transition:all 0.4s ease; transform:translateY(100%); opacity:0; }
body.scrolled_2x a.top { transform:translateY(0); opacity:1; }

@media (min-width: 641px) {
		
		.mobile { display:none !important; }
	
}

@media (max-width: 640px) {
		
		.desktop { display:none !important; }	
		
		header.sticky-header { padding:0px 0px 0px 15px; }
		header.sticky-header .logo { position:relative; left:0; top:0; }
		header nav { position:fixed; left:0px; right:0px; bottom:0px; top:70px; z-index:-1; background:linear-gradient(to bottom, #fff, #ddd); transition:all 0.4s ease; transform:translateX(100%); opacity:0; }
		body.menu-on header nav { transform:translateX(0); opacity:1; }
		header nav ul { list-style-type:none; }
		.nav__links > li { display:block; width:100%; }
		.nav__links > li > a { width:100%; font-size:4.5vw; font-weight:900 !important; padding-left:30px; background:linear-gradient(to bottom, #fff, #ddd); }
		.nav__links > li.active > a { color:#D4453C; }
		.nav__links > li > a .icon-lock, .nav__links > li > a .glyphicon-lock { color:#D4453C; }
		.promoteurs.active .promoteur.active a.fg:before { background:#D4453C !important; }
		.promoteurs.active .promoteur.active a.fg { box-shadow:0px 0px 10px rgb(0 0 0 / 30%); }
		section#promoteurs > .columns > .column a.fg span.title { color:#666 !important; font-weight:900 !important; text-align:left; padding-left:30px; } 
		section#promoteurs:not(.active) .promoteur a.fg span.title { text-align:center !important; padding-left:0px; }
		.promoteurs.active .promoteur:not(.active) a.fg { border-bottom:solid 1px #aaa; }
		ul.menu-icons { position:absolute; top:0px; right:0px; list-style-type:none; }
		ul.menu-icons > li { display:inline-block; vertical-align:top; }
		ul.menu-icons > li > a { display:block; width:70px; height:70px; line-height:70px; text-align:center; text-decoration:none !important; color:#777 !important; font-size:24px; }
		body.menu-on ul.menu-icons > li > a.open-menu { color:#D4453C !important; }
		ul.menu-icons > li > a.intranet { color:#D4453C !important; width:60px; font-size:20px; }
		header.sticky-header .btn-intranet { position:fixed; top:auto; bottom:10vw; transition:all 0.4s ease; transform:translateX(100%); opacity:0; }
		body.menu-on header.sticky-header .btn-intranet { transition-delay:0.2s; transform:translateX(0); opacity:1; }
		.promoteurs.active .promoteur a.fg:after { content:"\e114"; font-family:"Glyphicons Halflings"; position:absolute; right:0px; top:0px; height:40px; width:40px; text-align:center; color:#777; transition:all 0.4s ease; }
		.promoteurs.active .promoteur.active a.fg:after { content:"\e113"; font-family:"Glyphicons Halflings"; color:#fff; }
		
		main section h1 { font-size:7vw !important; }
		main section h2 { font-size:5vw !important; }
		
		section#home-programmes > .columns { flex-direction:column; }
		section#home-programmes > .columns > .column { max-width:none !important; }
		section#home-programmes > .columns > .column:first-child { max-width:none; min-width:auto; } 
		section#home-programmes .carousel { height:100vw; }
		section#home-programmes > .columns > .column:last-child { padding:10vw 5vw 5vw 10vw; }
		section#home-programmes h1 { margin-top:0; font-size:7vw; }
		section#home-programmes .carousel > .carousel-control-prev { background:#ddd; }
		section#home-programmes .carousel > .carousel-control-next { background:#fff !important; }
		
		.programme-infos { width:70%; margin-left:-35%; line-height:1em; top:55%; padding:4vw 4vw 4vw 4vw; background:rgba(255,255,255,0.9); }
		.programme-infos .ville_programme { font-size:3.6vw; }
		.programme-infos .nom_programme { font-size:4vw; margin-bottom:5px; }
		.programme-infos .typologies_programme { font-size:3vw; font-weight:700; color:#777; text-transform:none; }
		.programme-infos > .btn-ensavoirplus { font-size:3.5vw; height:10vw; line-height:10vw; text-transform:uppercase; font-weight:900; }
		
		section#home-quisommesnous { margin-bottom:0; }
		section#home-quisommesnous > .columns { flex-direction:column-reverse; }
		section#home-quisommesnous > .columns > .column:last-child { min-height:70vw; }
		section#home-quisommesnous .bloc-infos { margin:0px; padding:0px; }
		section#home-quisommesnous > .columns > .column:first-child { padding:10vw 5vw 5vw 10vw; }
		section#home-quisommesnous h1 { font-size:7vw; }
		
		section#home-promoteurs { margin-bottom:0; background:#f8f8f8; }
		section#home-promoteurs h2 { font-size:7vw; margin-bottom:5vw; font-weight:900; }
		section#home-promoteurs .columns { flex-direction:column; }
		section#home-promoteurs .columns > .column { border:none; line-height:1em; padding:20px 0px; background:#fff; margin-bottom:5vw; height:35vw; line-height:35vw; padding:0; box-shadow:0 0 8px rgba(0,0,0,0.2); border-radius:6px; }
		
		footer { background:#eee; }
		footer > .container { padding:10vw 5vw 30vw 5vw; }
		footer .columns { flex-direction:column; }
		footer .columns > .column.promoteur { text-align:right; margin-bottom:5vw; }
		
		/****** Qui sommes-nous ? ******/
		#quisommesnous-intro { margin-bottom:0; }
		#quisommesnous-intro .columns { flex-direction:column; }
		#quisommesnous-intro .bloc-infos { padding:10vw 5vw 10vw 10vw; margin:0; }
		#quisommesnous-intro ul.points-forts { width:100%; position:relative; margin-bottom:0; padding:5vw; }
		
		#quisommesnous-chiffres ul.points-forts li { font-size:3vw; line-height:1em; }
		#quisommesnous-chiffres .columns { flex-direction:column; }
		#quisommesnous-chiffres #les-chiffres { width:100%; padding:5vw; }
		#quisommesnous-chiffres .columns > .column:last-child { padding:5vw; }
		
		#quisommesnous-engagement img.background { width:100%; }
		#quisommesnous-engagement ul.engagements { position:relative; width:100%; padding:10vw 5vw; }
		#quisommesnous-engagement ul.engagements > li { font-size:3.5vw; }
		
		#quisommesnous-forces { margin-bottom:0; }
		#quisommesnous-forces .columns { flex-direction:column; }
		#quisommesnous-forces .columns > .column:first-child { padding:10vw 5vw 5vw 10vw; }
		#quisommesnous-forces .columns > .column:last-child { max-width:none; }
		#quisommesnous-forces h1 { margin-top:0; }
		#quisommesnous-forces ul.forces { margin-left:-5vw !important; }
		
		/****** Les Promoteurs ******/
		section#promoteurs > .columns { flex-direction:column; max-height:calc(100vh - 70px); }
		section#promoteurs > .columns > .column a.fg { bottom:auto; width:100% !important; height:40px; line-height:40px; }
		section#promoteurs > .columns > .column a.fg span.title { position:relative; transform:none; width:100%; height:40px; line-height:40px; }
		section#promoteurs > .columns > .column a.fg span.title br { display:none; }
		.promoteurs .promoteur.minimized { max-width:none; } 
		section#promoteurs .promoteur:not(.active) { max-height:40px; }
		section#promoteurs .promoteur { padding-top:40px; }
		section#promoteurs .promoteur.active {  }
		section#promoteurs > .columns:not(.active) .promoteur { max-height:none; }
		section#promoteurs > .columns:not(.active) .promoteur a.fg { margin-top:10%; }
		.fiche-promoteur .columns { flex-direction:column-reverse; }
		.promoteurs.active .promoteur .fiche-promoteur > .columns > .column:first-child { max-width:none; }
		.promoteurs.active .promoteur .fiche-promoteur { position:absolute; height:100%; overflow-y:auto; }
		.promoteurs .promoteur .fiche-promoteur { margin-left:0; opacity:0; transition:all 0.4s ease; transform:translateY(100%); }
		.promoteurs .promoteur.active .fiche-promoteur { opacity:1; transform:translateY(0); }
		
		
		/****** Programmes ******/
		#programmes-recherche { margin-bottom:5vw; }
		#programmes-recherche > .columns { flex-direction:column; }
		#programmes-recherche > .columns > .column:first-child { max-width:none; margin-bottom:0; }
		section#programmes-recherche .columns > .column.carte { display:none; }
		ul.programmes > li.programme { display:block; width:100%; margin:0 0 5vw 0; }
		ul.programmes > li.programme .programme-ville { font-size:4vw; }
		ul.programmes > li.programme .programme-nom { font-size:3.7vw; }
		ul.programmes > li.programme .programme-dispo { font-size:3.4vw; }
		ul.programmes > li.programme .programme-perspective { /* overflow:hidden; */ }
		ul.programmes > li.programme .programme-accroche { font-weight:900; box-shadow:-5px 4px 3px rgba(0,0,0,0.3); margin-left:-5vw; }
		ul.programmes > li.programme .btn-programme { font-weight:900; text-decoration:none !important; font-size:3vw; }
				
		
		/****** Contact ******/
		#contact > .columns { flex-direction:column; }
		section#contact > .columns > .column:first-child:before { width:100vw; height:30vw; min-height:auto; background-size:auto 190% !important; background-position:center; }
		section#contact > .columns > .column:first-child { padding-left:0px; padding-top:0px; padding:35vw 5vw 5vw 5vw; }
		section#contact h1 { margin-left:5vw; font-size:6vw !important; }
		section#contact h2 { text-align:center; }
		section#contact > .columns > .column:first-child > img { margin-left:-5vw; max-width:100vw; }
		section#contact > .columns > .column:last-child { max-width:none; }
		ul.adresses-promoteurs  { width:80vw; float:right; }
		ul.adresses-promoteurs > li { padding:5vw; }
		ul.adresses-promoteurs > li > .nom { font-size:6vw; margin-bottom:3vw; }
		
}