/* Accueil */
#storelocator_home { position: relative; background: transparent url("../../ximg/storelocator/storelocator_index.png") no-repeat center center; background-size: cover; min-height: 569px; transition: 0.5s background-color linear; }
body.document_ready #storelocator_home { background-color: rgba(0,172,223,0.3); }
#storelocator_home > form { position: absolute; top: 20%; left: 0; width: 100%; text-align: center; }
#storelocator_home > form .searchShopBlock { background-color: rgba(255,255,255,0.6); display: inline-block; padding: 20px 0 0; width: 50%; min-width: 515px; box-shadow: 0 0 10px 1px rgba(102,102,102,0.5); }
#storelocator_home > form .searchShopBlock .ttl { margin: 0 0 10px; font-size: 20px; }
#storelocator_home > form .searchShopBlock .searchField { padding: 10px; }
#storelocator_home > form .searchShopBlock .searchField .searchViaZip { background-color: #FFF; }
	#storelocator_home > form .searchShopBlock .searchField .or { display: block; text-align: center; }
#storelocator_home > form .searchShopBlock .searchField .error > p { padding: 10px 0; }
#accordion_allMags { margin-top: 20px; }
#accordion_allMags .panel-body > a { padding-top: 15px; padding-bottom: 15px; height: 75px; }
/* Recherche */
.mapAndList .nbResult { margin: 15px 0; font-size: 20px; }
/* Modifier ma recherche */
.mapAndList .modifAndAffine .searchField .or { font-size: 24px; }
.mapAndList .modifAndAffine .searchField .error > p { padding-top: 15px; }
/* Google map */
.mapAndList .container-map { padding-right: 0; }
.mapAndList .container-map .googlemap{ height: 523px; }
.mapInfos { margin-top: 10px; margin-bottom: 10px; margin-left: 10px; }
.mapInfos > div > span:first-child { margin-right: 10px; }
.mapInfos .legend { font-size: 14px; }
/* Liste magasins */
#magList { overflow: hidden; min-height: 535px; }
#magList .nbResult { font-size: 1.5em; line-height: 25px; margin: 10px 20px 10px 0; }
#magList .nbResult strong { font-size: 1.5em; }

#magList .resultsMag { height: 525px; overflow-x: hidden; overflow-y: auto; }
#magList .resultsMag .placeName { padding: 0 0 5px 0; margin: 10px 0 0 0; }
#magList .resultsMag .mag > header{ padding: 0 0 5px 0; margin: 10px 0 0 0; }
#magList .resultsMag .mag > header .count { padding-right: 0; }
#magList .resultsMag .mag .flipper { width: 100%; min-height: 225px; }
#magList .resultsMag .mag .flip-content,
#magList .resultsMag .mag .box > .infosMag { padding: 15px; width: 100%; }
#magList .resultsMag .mag .flipper .back .actionList > li { margin-bottom: 5px; }
#magList .resultsMag .mag .flipper .back .actionList > li a span.dspTel { display: none; }
#magList .resultsMag .mag .flipper .back .actionList > li a.affiche span.callMag { display: none; }
#magList .resultsMag .mag .flipper .back .actionList > li a.affiche span.dspTel { display: inline-block; }
#magList .resultsMag .mag .count .icoStore { text-align: center; line-height: 32px; }
#magList .resultsMag .mag .count .icoStore.mag_ville { color: #FFF; }
.infosMag .schdl .fa { margin-right: 0.5em; }

/* Icones */
.icoStore { display: inline-block; vertical-align: middle; 
 		background-color: transparent;
		background-image: url("../../ximg/storelocator/sprites_store_2X.png"); 
	    background-size: 97px 75px;
	    -moz-background-size: 97px 75px;
	    -o-background-size: 97px 75px;
	    -webkit-background-size: 97px 75px;
}
.icoStore.mag_ville { width: 28px; height: 42px; background-position: 0 0; }
.icoStore.mag_commercial { width: 28px; height: 41px; background-position: -29px 0; }
.icoStore.mag_favoris { width: 28px; height: 42px; background-position: -58px 0; z-index: 10; }
.icoStore.mag_ville_small { width: 22px; height: 33px; background-position: 0 -42px; }
.icoStore.mag_commercial_small { width: 23px; height: 33px; background-position: -22px -41px; }
.icoStore.mag_favoris_small { width: 22px; height: 33px; background-position: -47px -41px; }
.isFav,
.magFav .isNotFav { display: none; }
.isNotFav,
.magFav .isFav { display: inline-block; }
/* Bulle Google map */
	.bulle img { display:inline-block; vertical-align: middle; width:95px; }
	.bulle .infosMag { display:inline-block; padding:0 0 0 8px; vertical-align: middle; }
	.bulle .infosMag h2 { color:#000; display:block; font-size:15px; }
	.bulle .infosMag p { color:#666; display:block; font-size:15px; }
	.bulle .infosMag .time { color:#1fa5a7; display:block; font-size:15px; margin:20px 0 0 0; }
	.bulle .infosMag .time .icoClock { background:#fff; border:2px solid #1fa5a7; border-radius:100%; display:inline-block; height:20px; margin:0 10px 0 0; position:relative; width:20px; }
	.bulle .infosMag .time .icoClock::before { border-bottom:2px solid #1fa5a7; border-left:2px solid #1fa5a7; content:" "; display:block; height:6px; position:absolute; right:2px; top:2px; width:6px; }
/* Icones Google map */	
.mapIconLabel { color:#000; display:block; height:43px; font-size:20px; margin: -43px 0 0 -15px !important; width:49px; z-index: 0; 
	transition: 0.5s opacity ease, 0.5s visibility ease; 
	-o-transition: 0.5s opacity ease, 0.5s visibility ease; 
	-ms-transition: 0.5s opacity ease, 0.5s visibility ease; 
	-moz-transition: 0.5s opacity ease, 0.5s visibility ease; 
	-webkit-transition: 0.5s opacity ease, 0.5s visibility ease;
}
.mapIconLabel > span { display:block; line-height: 32px; text-align:center; width:28px; }
.mapIconLabel.mag_favoris > span { display: none; }
.mapIconLabel.mag_ville > span { color: #FFF; }
.mapIconLabel.hide { opacity: 0; visibility: hidden; }

#magList .otherStore50and100 { padding: 2% 0 0 7%; margin: 0 0 20px 0; }
#magList .otherStore50and100 .ttl { color: #333333; font-size: 1.5em; margin: 0 0 10px 0; }
#magList .otherStore50and100 p { margin: 0 0 10px 0; font-size: 1.15em; }

#magList .otherStore50and100 p strong { color: #000; text-transform: uppercase; }
#magList .otherStore50and100 p span { color: #666; }

/* LightBox Itinéraire */
#lightbox.directions .modal-dialog { max-width: 875px; width: 100%; }
#lightbox .googleZone {  }
#lightbox .googleZone > header { margin-bottom: 20px; }
#lightbox .googleZone > header .recherche { background: transparent url("../../ximg/storelocator/bgSearch_google.png") no-repeat 13px 10px; padding: 0 0 0 33px; border: 1px solid #CCC; box-shadow: -3px 3px 5px 0 #e6e6e6; }
#lightbox .googleZone header .recherche input { line-height: 30px; width: 99%; height: 30px; background: none; font-size: 14px; padding: 0; }
#lightbox .googleZone header .recherche input.origin { margin: 3px 0 0 0; }
#lightbox .googleZone header .recherche input.destin { border-top: 1px solid #cccccc; padding: 3px 0 0 0; }
#lightbox .googleZone header a.submit { display: none; text-align: center; vertical-align: top; margin: 10px 0 0 0; background-color: #4d90fe; background-image: -webkit-linear-gradient(top,#4d90fe,#4787ed); width: 70px; height: 35px; line-height: 35px; -webkit-box-shadow: 3px 3px 5px 0 #e6e6e6; box-shadow: 3px 3px 5px 0 #e6e6e6;}

#lightbox .googleZone .steps { height: 500px; overflow-y: scroll; }
#lightbox .googleZone .steps .content .adp-placemark { border: 0; background: none; }
#lightbox .googleZone .steps .content .adp-placemark .adp-text { padding: 0 0 0 25px; }
#lightbox .googleZone .steps .content .adp-details,
#lightbox .googleZone .steps .content .adp-details .adp-legal { font-size: 12px; }

#lightbox .googleZone #gMapDirection { height: 500px; }
	
#lightbox .googleZone .locomotion { background-color: #ffffff; height: 40px; border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; margin: 0 0 25px 0; }
#lightbox .googleZone .locomotion ul.moyensLoc { margin: 0 0 0 35px; visibility: hidden; }
#lightbox .googleZone .locomotion ul.moyensLoc li { text-align: center; cursor: pointer; width: 55px; height: 38px; line-height: 34px; display: inline-block; border-bottom: 5px solid #ffffff; }
#lightbox .googleZone .locomotion ul.moyensLoc li.selected { border-color: #3983de; }
#lightbox .googleZone .locomotion ul.moyensLoc li:hover { border-color: #9cc1ef; }
#lightbox .googleZone .locomotion ul.moyensLoc li.disabled { opacity: 0.3; }
#lightbox .googleZone .locomotion ul.moyensLoc li.disabled:hover { border-color: #ffffff; }
#lightbox .googleZone .locomotion ul.moyensLoc li .icoG { vertical-align: middle; display: inline-block; background: url('../../ximg/storelocator/locomotions.png') no-repeat; width: 20px; height: 20px; }
	
#lightbox .googleZone .locomotion ul.moyensLoc li .icoG.voiture,
#lightbox .googleZone .locomotion ul.moyensLoc li.disabled:hover .icoG.voiture { background-position: 0 -40px; }
#lightbox .googleZone .locomotion ul.moyensLoc li .icoG.bus,
#lightbox .googleZone .locomotion ul.moyensLoc li.disabled:hover .icoG.bus { background-position: 0 -80px; }
#lightbox .googleZone .locomotion ul.moyensLoc li .icoG.pieton,
#lightbox .googleZone .locomotion ul.moyensLoc li.disabled:hover .icoG.pieton{ background-position: 0 -120px; }
#lightbox .googleZone .locomotion ul.moyensLoc li .icoG.velo,
#lightbox .googleZone .locomotion ul.moyensLoc li.disabled:hover .icoG.velo { background-position: 0 -160px; }
	
#lightbox .googleZone .locomotion ul.moyensLoc li.selected .icoG.voiture,
#lightbox .googleZone .locomotion ul.moyensLoc li:hover .icoG.voiture { background-position: 0 -60px; }
#lightbox .googleZone .locomotion ul.moyensLoc li.selected .icoG.bus,
#lightbox .googleZone .locomotion ul.moyensLoc li:hover .icoG.bus { background-position: 0 -100px; }
#lightbox .googleZone .locomotion ul.moyensLoc li.selected .icoG.pieton,
#lightbox .googleZone .locomotion ul.moyensLoc li:hover .icoG.pieton { background-position: 0 -140px; }
#lightbox .googleZone .locomotion ul.moyensLoc li.selected .icoG.velo,
#lightbox .googleZone .locomotion ul.moyensLoc li:hover .icoG.velo { background-position: 0 -180px; }

/* LightBox Choix du magasin */
.selectMagLbx > .modal-dialog { width: 950px; } 
.selectMagLbx .modal-header { margin: 0; height: 0; padding: 0; }
.selectMagLbx .modal-header .close { margin: 0; position: absolute; top: 10px; right: 15px; z-index: 10; }
.selectMagLbx .modal-body { padding: 0; } 
.selectMagLbx .map { height: 567px; }
.selectMagLbx .gMaps { width: 100%; height: 100%; }
.selectMagLbx .mapInfos > div > span { display: inline-block; vertical-align: middle; max-width: 115px; }

/* Fiche magasin */
#magDetail h1 { font-size: 1.38em; margin: 0 0 15px 0; }
#magDetail h1 span:not(.mag) { text-transform: uppercase; }
#magDetail h3 { font-size: 1.10em; display: inline-block; margin-top: 10px; }
#magDetail ul.schedules li { margin: 0 0 5px 0; }
#magDetail ul.schedules li span.hours.closed { color: #d32a2a; }
#magDetail .imgMag { margin-bottom: 10px }
#magDetail .imgMag img { max-width: 100%; margin: 0 auto; display: block; }
#magDetail .selectFav > span.isNotFav {  margin: -4px 0 0 0; vertical-align: middle; }
#magDetail .selectFav > span.isFav { vertical-align: middle; }
#magDetail .h2_magasin { margin: 15px 0; font-size: 20px; }
/* Zone Google map */
#magDetail .zoneGoogleMap { height: 330px; position: relative; }
#magDetail .zoneGoogleMap .googlemap { height: 330px; width: 100%; }
#magDetail .zoneGoogleMap a.goTo { bottom: 10px; left: 50%; margin: 0 0 0 -155px; position: absolute; text-align: center; width: 230px; z-index: 6000; }
#magDetail .imgStaticGoogle { display: none; }
/* Vos magasins pres de */
.zoneGoogleMap .closestMags { background-color: #fff; min-width: 300px; position: absolute; right: 0px; text-align: right; top: 10px; }
.zoneGoogleMap .closestMags a.linkDeploy { display: block; font-size: 15px; padding: 0 15px; position: relative; }
.zoneGoogleMap .closestMags a.linkDeploy .icoStore { left: 10px; position: absolute; top: 8px; }
.zoneGoogleMap .closestMags.open a.linkDeploy .icoStore { transform:rotate(180deg); -o-transform:rotate(180deg); -ms-transform:rotate(180deg); -moz-transform:rotate(180deg); -webkit-transform:rotate(180deg); }
.zoneGoogleMap .closestMags > div { max-height: 0; overflow-y: scroll; overflow-x: hidden; -webkit-transition: all 0.3s linear; transition: all 0.3s linear; }
.zoneGoogleMap .closestMags > div ul { display: inline-block; width: 100%; }
.zoneGoogleMap .closestMags > div ul li { border-bottom: 1px solid #eeeeee; font-size: 0; min-height: 32px; padding: 7px 0 4px; }
.zoneGoogleMap .closestMags > div ul li:last-child { border-bottom: 0; }
.zoneGoogleMap .closestMags > div ul li a.otherMag { display: inline-block; font-size: 15px; text-align: left; text-decoration: none; text-transform: uppercase; vertical-align: middle; width: 55%; margin: 0 0 0 5%; }
.zoneGoogleMap .closestMags > div ul li a.otherMag:hover { text-decoration: underline; }
.zoneGoogleMap .closestMags > div ul li p { display: inline-block; font-size: 15px; text-align: right; vertical-align: middle; width: 35%; margin: 0 5% 0 0; }
.zoneGoogleMap .closestMags.open > div { max-height: 139px; }
.zoneGoogleMap .closestMags a .fa-chevron-up { display: none; }
.zoneGoogleMap .closestMags.open a .fa-chevron-down { display: none; }
.zoneGoogleMap .closestMags.open a .fa-chevron-up { display: inline-block; }
/* Services */
.services .ttlLine { font-size: 20px; margin: 20px 0; }
.fa-echanges:before { content: "\f0ec"; }
.fa-livraison:before { content: "\f0d1"; }
.fa-cadeaux:before { content: "\f20a"; }
.fa-tailles:before { content: "\f02b"; }
.fa-paiement:before { content: "\f04e"; }
.fa-ereservation:before { content: "\f017"; }
.fa-embalage:before { content: "\f06b"; }
.fa-handicape:before { content: "\f193"; }
.fa-typepaiement:before { content: "\f0d6"; }
.fa-collection:before { content: "\f005"; }
.fa-recyclage:before { content: "\f1b8"; }
.fa-parking:before { content: "\f1b9"; }
.fa-retouches:before { content: "\f0e2"; }
/* Retrouvez ces informations plus tard */
#magDetail .findInfosLater { background-color: #eee; }
#magDetail .findInfosLater > p { font-size: 18px; margin: 10px 0; }
#magDetail .findInfosLater > div { margin-bottom: 10px; }
#sendCoordForm > input { margin-bottom: 20px; }

/* ----- [TAB] ----- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) { 
	/* LightBox Choix du magasin */
	.selectMagLbx > .modal-dialog { width: 95%; } 
	.mapInfos > div > span:first-child { margin-right: 0; }
	.mapInfos > div > span { display: inline-block; vertical-align: middle; }
}

/* ----- [MOB] ----- */
@media (max-width: 767px) {	
	
	/* Accueil */
	#storelocator_home { min-height: 210px; position: relative; }
	#storelocator_home:before { content: ""; display: inline-block; vertical-align: middle; width: 1px; height: 100%; }
	#storelocator_home > .storelocator_bg { display: inline-block; vertical-align: middle; }
	#storelocator_home > form { top: 10px; }
	#storelocator_home > form .searchShopBlock { min-width: 265px; }
	#storelocator_home > form .searchShopBlock .ttl { font-size: 15px; }
	
	/* Recherche */
	.resultsMag { height: 345px; }
	.resultsMag .flip-container .flipper { min-height: 235px; }
	.resultsMag .flip-container .flip-content { padding: 10px; }
	.resultsMag .flip-container .flip-content .actionList > li > a { padding-left: 0; padding-right: 0; } 
	#lightbox.map .modal-header { margin: 0; height: 0; padding: 0; }
	#lightbox.map .modal-header .close { margin: 0; position: absolute; top: 10px; right: 15px; z-index: 10; }
	#lightbox.map .container-map { padding: 0; }
	#lightbox.map .googlemap { height: 355px; margin-top: 20px; }
	#lightbox.map .mapInfos > div { margin-bottom: 5px; }
	
	/* LightBox Itinéraire */
	#lightbox.directions .modal-dialog { width: auto; }
	
	/* LightBox Choix du magasin */
	.selectMagLbx > .modal-dialog { width: auto; } 
	
	/* Fiche magasin */
	#magDetail .zoneGoogleMap a.goTo { left: 0%; width: 96%; margin: 0 2%; }
}