/*
* 1. Corrects font size not being inherited in all browsers.
* 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome.
* 3. Improves appearance and consistency in all browsers.
*/
button,
input,
select,
textarea {
    font-size: 100%; /* 1 */
    margin: 0; /* 2 */
    vertical-align: baseline; /* 3 */
    *vertical-align: middle; /* 3 */
}

/*
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls.
* 2. Corrects inability to style clickable `input` types in iOS.
* 3. Improves usability and consistency of cursor style between image-type `input` and others.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
}

/* css de base pour les placeholders */
::-webkit-input-placeholder  { color:#606060;font-style:italic; }
input:-moz-placeholder { color:#606060;font-style:italic; }
::-webkit-textarea-placeholder  { color:#606060;font-style:italic; }
textarea:-moz-placeholder { color:#606060;font-style:italic; }

/* pour que safari n'en fasse pas qu'à sa tête */
html { -webkit-text-size-adjust:100%; }

/* global*/
body {
	margin:0;
	padding:0;
	background:#fff;
	color:#000;
	font-family: Arial, Helvetica, sans-serif;
	font-size:13px;
}
strong { font-weight:bold; }
table { border:0; padding:0; border-spacing:0; border-collapse:collapse; }

.clr { clear:both; }
/* cas particulier de legacy markup relou */
br.clr { height: 0; overflow: hidden; display: block; }
a img { border:0; }

h2, h3, h4 { padding:10px; padding:.35em; margin:0; }

/* les vidéos en embed */
iframe { max-width: 100%; }
/* désactivé, car ça redimensionne l'iframe qui est déjà redimensionné en JS
@media screen and (max-width: 640px) { iframe { height:auto; } }
*/

/* class pour masquer certains trucs par défaut */
.nope { display:none; }
.much_block { display:block!important; }

/* boutons */
.btn {
	background: #222;
	color:#fff;
	border-radius:5px;
	display: inline-block;
	vertical-align: top;
	padding: 5px 10px;
	position:relative;
	border:0;
	font-size: inherit;
	font-family:inherit;
}
.btn:hover,
.btn:visited:hover,
.btn:focus {
	background:#666;
	color:#fff;
	text-decoration:none;
}

.btn-warning { background: #e92600; color:#fff; }
.btn-warning:hover,
.btn-warning:visited:hover,
.btn-warning:focus { background:#cc2200; color:#fff; }


/* masthead, header, logo*/
#masthead { max-width:980px; margin:0 auto; padding:0; position:relative; }

/*gestion basique des cadres et conteneurs */
div.cadre,
.cadre-in,
#newsletter-abo { padding:1em; box-sizing:border-box; }

.ct_left { padding:0; margin:0; width:100%; max-width:660px; height:auto; overflow:hidden; }

#content { display:table; width:100%; border:0; }
#ct_main,
#mod_ccweb_cine_jeu_large { display:table-cell; vertical-align:top; width:auto; }

/* sidebar*/
#mod_ccweb_cine_jeu_large { margin:0; padding:0; width:32%; max-width:310px; }
#pavevideo { overflow:hidden; max-width:100%; }
.bloc_sidebar { box-sizing:border-box; }
.bloc_sidebar.bs-rch input[type=submit] { display:none; }
.bloc_sidebar center img { display:block; } /* pas de marge sous les images full width */
.bloc_sidebar img { max-width: 100%;}
/* on scale reCaptcha s'il est dans sidebar */
.bloc_sidebar #rc-imageselect, 
.bloc_sidebar .g-recaptcha { transform:scale(0.97);-webkit-transform:scale(0.97);transform-origin:0 0;-webkit-transform-origin:0 0; }
.bloc_sidebar .g-recaptcha { margin-top:5px; }

/* recaptcha dans le contenu */
.ct_left .g-recaptcha { margin:10px 0; }

/* images responsives */
@media screen and (max-width: 980px) { .page-bloc img { max-width: 100%!important; height: auto!important; } }

@media screen and (max-width: 900px) {
	#maincontent,
	#maincontent-large,
	#maincontent-x-large,
	.ct_left,
	#rightlarge,
	#right {
		width:100%;
		box-sizing:border-box;
		max-width:100%;
	}
	
	#rightlarge,
	#right {
		display:block;
		overflow:hidden;
		height:auto;
		width:100%;
		max-width:100%;
		box-sizing:border-box;
	}
	.bloc_sidebar {
		width:100%;
	}
}
@media screen and (max-width: 860px) {
	/* not 2 columns anymore */
	#content,
	#ct_main,
	#mod_ccweb_cine_jeu_large {
		display:block;
		width:100%;
		max-width:100%;
		margin-bottom:1em;
	}
}

/* bloc résa/recharge */
.sb_resa { margin-bottom:.5em;}
.sb_resa a { display:block; padding:.75em .333333em; font-size:15px; }
.sb_resa a.sb_bt_resa { color:#000; background:url(sidebar_resa_express.png) 97% 50% no-repeat; padding:1.15em .333333em; }
.sb_resa a.sb_bt_resa.type_achat { background-image:url(sidebar_achat_express.png); }
.sb_resa a.sb_bt_reload { color:#000; background:url(sidebar_gestion.png) 97% 50% no-repeat; }

/* tags */
.tag { width:46px; height:41px; }

/* menu principal */
.menu_top { 
	background:#eee;
	color:#000;
	font-size:16px;
	text-align:center;
	padding:0;
	margin:0;
	position:relative;
}
.menu_top li { 
	padding:0;
	margin:0;
	list-style:none;
	display:inline-block;
	vertical-align:top;
	position:relative;
}
.menu_top > li > a,
.menu_top > li > strong { 
	display:block;
	padding:0.5em;
	position:relative;
}
.menu_top > li > a:hover,
.menu_top > li > a:visited:hover,
.menu_top > li > a:focus,
.menu_top > li > strong {
	text-decoration:none;
}
/*gestion des menus déroulants*/
.menu_top .sousrubs { 
	position:absolute;
	top:100%;
	left:0;
	margin:0;
	min-width:180px;
	padding:0 0 1em 0;
	display:none;
	text-align:left;
	z-index:500;
	background: #eee;
	font-size:13px;
}
.menu_top .sousrubs li { display:block; margin:0; }
.menu_top .sousrubs li a,
.menu_top .sousrubs li a:visited,
.menu_top .sousrubs li a:link, 
.menu_top .sousrubs li strong { 
	display:block;
	text-align:left;
	width:100%;
	padding:0.25em;
	box-sizing: border-box;
}


@media screen and (min-width: 980px) {
	.menu_top li.sub:hover .sousrubs { display:block; z-index:5; }
}

@media screen and (max-width: 980px) {
	/* le menu est avec un scroll horizontal par défaut * /
	.menu_top {
		overflow-x:auto;
		white-space:nowrap;
		-webkit-overflow-scrolling: touch; /*permet d'avoir l'inertie sur iOS* /
		-ms-overflow-style: -ms-autohiding-scrollbar;
	}
	/* pas de sous rubriques avec un menu horizontal de base * /
	.menu_top li.sub:hover .sousrubs { display:none; }
	/**/
	#show_menu {
		display:inline-block;
		background: #333;
		color:#fff;
		padding: 10px 10px 10px 35px ;
		margin: 0 0 10px 10px; 
		position:relative;
	}
	#show_menu:before,
	#show_menu:after {
		content:'';
		width:13px;
		height:13px;
		margin: 0;
		background: #fff;
		position: absolute;
		top:12px;
		left:12px;
		box-sizing: border-box;
	}
	#show_menu:after {
		border-top: solid 2px #333;
		border-bottom: solid 2px #333;
		height: 7px;
		top:15px;
	}
	.menu_top { height: auto!important; display: none; }
	.menu_top li { display: block; }
	.menu_top .sousrubs { position:static; }
	.menu_top .sousrubs li { display:block; padding-left:20px; }
}

#mod_ccweb_affiches { margin-bottom:10px; }
#alt_content { padding:10px 10px 35px 10px; }

#alt_content .carousel-cell { display:inline-block; vertical-align:top; height:auto; }
#alt_content .carousel-cell .infos_public,
#alt_content .carousel-cell .infos_duree { display:none; }

#alt_content .carousel { list-style:none; padding:0; margin:0; text-align:center; }
#alt_content .ahwm.carousel-cell { position:relative; margin:0 5px; text-align:center; }
#alt_content .ahwm.carousel-cell .filmhover { position:absolute; top:0; left:0; right:0; bottom:0; background:#000; background:rgba(0,0,0,.6); display:none; color:#fff; box-sizing:border-box; padding-top:20px; }
#alt_content .ahwm.carousel-cell:hover .filmhover { display:block; }
#alt_content .ahwm.carousel-cell img { display:block; }



/* evenements */
.evenement { margin-bottom:1em; overflow:hidden; height:auto; }
body.evenement { overflow:auto; }
.evenement .left { margin-right:1em; border:0; float:left; }
.evenement .right { margin-left:1em; border:0; float:right; }
.evenement .img-center { text-align:center; }
.img-center img { max-width:100%!important; height:auto; }
.evenement .introtext { overflow:hidden; height:auto; }
.evenement .introtext .clr { display:none; }

.evt_liens_film { padding-top:10px; clear:both; text-align:left; display: inline-block; vertical-align:top; }
.evt_liens_film a.film,
.evt_liens_film a.resa-link3 {	
	display:inline-block;
	vertical-align:top;
	line-height:1.2;
	background:#ed1b24;
	color:#fff;
	font-size:15px;
    text-align: center;
    padding: 6px 15px;
	margin:0 10px 0 0;
}
.evt_liens_film a.resa-link3 .ext_txt_resa_cont { vertical-align: top; font-weight: 400; }
.evt_liens_film a.film:hover,
.evt_liens_film a.film:visited:hover,
.evt_liens_film a.film:focus,
.evt_liens_film a.resa-link3:hover,
.evt_liens_film a.resa-link3:visited:hover,
.evt_liens_film a.resa-link3:focus { background:#95001a; text-decoration:none; }

.evt_partage { text-align:right; padding:0; clear:both; display:inline-block; vertical-align:top; float:right; }
.evt_partage .evt_ptg_titre,
.evt_partage a { display:inline-block; vertical-align:top; width:30px; height:30px; line-height:30px; margin:0 .5em 0 0; text-decoration:none; border-radius:3px; }
.evt_partage .evt_ptg_titre { width:auto;}
.evt_partage a.evt_fb { background:#3d67a0 url(img/icn_w_fb.png) center center no-repeat; background-size:contain; }
.evt_partage a.evt_gplus { background:#dc4e41 url(img/icn_w_gplus.png) center center no-repeat; background-size:contain; }
.evt_partage a.evt_tw { background:#55acee url(img/icn_w_tw.png) center center no-repeat; background-size:contain; }
.evt_partage a.evt_mail { background:#333 url(img/icn_w_mail.png) center center no-repeat; background-size:contain; }
.evt_partage a.evt_fb:hover,
.evt_partage a.evt_gplus:hover,
.evt_partage a.evt_tw:hover,
.evt_partage a.evt_mail:hover { opacity:.7; }

.evenement a.resa-link3 img,
.evt_txt_pour,
.evt_txt_titre_film,
.ext_txt_mtn,
.evt_partage .evt_ptg_titre { display:none; }

/* navigation dans les events */
#actus_nav p { display:inline-block; padding:0; margin:0; }
#actus_nav a,
#actus_nav strong {
	display:inline-block;
	padding:0.5em 1.25em;
}

@media screen and (max-width: 980px) {
	.evenement .left,
	.evenement .right,
	.evenement .img-center img {
		max-width:100%!important;
		height:auto!important;
	}
}

@media screen and (max-width: 640px) {
	.evt_liens_film,
	.evt_partage { display:block; text-align:center; float:none; }
	.evt_partage { padding-top:.5em; }
}


/* films à l'affiche/prochainement */
.fichefilm-mini-block,
.fichefilm-mini-block .vignette.url,
.fichefilm-mini-block .fichefilm-mini {
	width:50%;
	float:left;
	overflow:hidden;
	height:auto;
	box-sizing:border-box;
}
.fichefilm-mini-block { min-height:180px; }
.fichefilm-mini-block .vignette.url { width:37%; max-width:118px; }
.fichefilm-mini-block .fichefilm-mini { width: 63%; padding: 0 0 0 .5em; box-sizing: border-box; }

.fichefilm-mini-block .vignette img { width:100%; height: auto; }
.fichefilm-mini-block .bt-film-small { display:inline-block; vertical-align:top; padding:3px; margin:0; }
.fichefilm-mini-block .bt-film-small.btinfos { margin-left:0; }

.fichefilm-mini-block h4 { margin-top:0; padding:0; min-height:50px; height:auto; }
.fichefilm-mini-block p { margin:.5em 0; }

@media screen and (max-width: 600px) {
	.fichefilm-mini-block {
		width:100%;
		float:none;
		min-height:0;
		padding-bottom:1em;
	}
	.ct_main h2 { margin:15px 10px 10px; }
	.cadre-in { padding-left:10px; padding-right:10px; }
	.fichefilm-mini-block h4 { min-height:0; }
}



/* horaires */
.fichefilm-small-v3 { overflow:hidden; height:auto; }
.fichefilm-small-v3 .horaires-affiche,
.fichefilm-small-v3 .horaires-infos-film {
	float:left;
	position:relative;
	margin:0;
	width:26%;
}
.fichefilm-small-v3 .horaires-infos-film { width:74%; padding:0 0.5em; box-sizing:border-box; }
.fichefilm-small-v3 .horaires-affiche img { width:100%; height:auto; margin-left:10px; }
.fichefilm-small-v3 span.vote-long { top:-5px; }

.horaires-sortie,
.horaires-duree,
.horaires-genre {
	display:inline-block;
	vertical-align:top;
	padding-right:10px;
}
.horaires-sortie,
.horaires-casting { margin-bottom:5px; }

.horaires-casting,
.horaires-realisateur,
.horaires-public {
	display: block;
}

.fichefilm-small-v3 .comment { padding-top:5px; }

.le-mot-du-cinema {  padding: 0 6px; }
.le-mot-du-cinema p { margin: 0 0 6px 0; }

.horaires table { width:100%; text-align:center; }
.col1,
.col2,
.col3,
.col4,
.col5,
.col6,
.col7 { vertical-align:top;}
.fc { display:block; padding:0.25em; } /* span qui remplace les anciennes cellules */
.fchead { background:#282828; color:#fff; display:block; padding:0.25em 0; } /* span qui remplace les anciennes cellules */


.fc { padding:0 2px; }
.fc em { color:#999;}
.danslanuitde { font-size:11px; font-weight:700; }

.today,
.today .fchead { background:#e8283f; color:#fff;  }
.today .fchead { font-weight:700; }

.fc em,
.fc .hor,
.fc a { padding:4px 5px; display:block; }
.fc a { color:#e8283f; }
.fc a:hover,
.fc a:visited:hover,
.fc a:focus { background:#e8283f; color:#fff; text-decoration:none; }

.today a { color:#fff; padding:3px 5px; }
.today a:hover,
.today a:visited:hover,
.today a:focus { background:#000; color:#fff; text-decoration:none; }

.fchead em { padding:0; }
.fchead {  padding:5px; }

/* séances complètes */
.fc.complet { position: relative; }
.fc.complet em,
.fc.complet span,
.fc.complet a { color:#999; text-decoration: line-through!important; font-weight: 400; font-style: italic; }
.table.horaires .fc.complet a.resa:hover { background: none; border:0; color:#999; cursor:not-allowed; }
.fc.complet:before {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 5px 6px 5px;
	border-color: transparent transparent #222 transparent;
	content:'';
	position: absolute;
	top:18px;
	left:36px;
	display: none;
}
.fc.complet:after {
	content:'complet';
	font-size:11px;
	position: absolute;
	top: 24px;
	left:10px;
	background: #222;
	padding: 5px 7px;
	color:#fff;
	text-transform: uppercase;
	display: none;
}
.fc.complet:hover:before,
.fc.complet:hover:after { display: block; }


/* CSS de base pour les horaires par tags */
.horatags { clear:both; margin:0 38px; position:relative; }
.horatags .rowseances { margin-bottom:10px; border:solid 1px #333; padding-left:117px; box-sizing:border-box; }

.horatags .ftitre,
.horatags .fhead .fcell { background:#3f3f3f; color:#fff; padding:5px; }

.horatags .fcell { width:117px; text-align:center; border-right:solid 1px #fff; box-sizing:border-box; padding-bottom:20px; }
/* fix pour les webkit qui ne savent pas gérer les pixels... */
@media screen and (-webkit-min-device-pixel-ratio:0) { .horatags .fcell { border-right:solid 3px #fff; } }
.horatags .fcell:last-child { border:0; }
.horatags .fcell em { color:#727272; }

.horatags .fcell.cell_tags { text-align:left; }
.horatags .cell_tags .tag { width:46px; height:41px; }

.horatags .static-banner { position:absolute; z-index:1; left:0; top:0; bottom:0; background:#fff; border-right:solid 1px #333; }

.hora { display:block; padding:3px; }
.hora.noseance:before { content:'-'; color:#727272; }

/* horaires par tags - flèches */
.horaires .flickity-viewport { min-height: 100px; }
.horatags .flickity-prev-next-button { width:38px; height:52px; border-radius:5px; cursor:pointer; color:#333; }
.horatags .flickity-prev-next-button .arrow { fill: #333; }
.horatags .flickity-prev-next-button.no-svg { color: #333; }
.horatags .flickity-prev-next-button:hover .arrow{ fill: #ed1b2d; }
.horatags .flickity-prev-next-button.no-svg:hover { color: #ed1b2d; }
.horatags .flickity-prev-next-button.previous { left:-40px; }
.horatags .flickity-prev-next-button.next { right:-40px; }


@media screen and (max-width: 640px) {
	.fichefilm-small-v3 .horaires-affiche,
	.fichefilm-small-v3 .horaires-infos-film {
		float:none;
		width:100%;
		display:block;
	}
	.fichefilm-small-v3 .horaires-affiche {
		text-align:center;
	}
	.fichefilm-small-v3 .horaires-affiche img {
		width:30%;
		height:auto;
	}
	/* 
	pas besoin, il y a flickity
	.horaires table td {
		display:block;
		text-align:left;
		padding:.5em;
	}	
	.horaires table td.passed {
		display:none;
	}
	.fc {
		display:inline-block;
		padding:.15em .25em;
	}
	.fc.fchead {
		min-width:80px;
		box-sizing:border-box;
		padding:.15em .35em;
	} */
}

@media screen and (max-width: 400px) {
	.horatags .fcell { width:100px; display:block; }
	
	.horatags { margin:0 30px; }
	.horatags .rowseances { padding-left:100px; }
	
	.horatags .flickity-prev-next-button { width:32px; height:52px; border-radius:5px; cursor:pointer; color:#333; }
	.horatags .flickity-prev-next-button.previous { left:-34px; }
	.horatags .flickity-prev-next-button.next { right:-34px; }
}

/*boutons sem precedente, suivante et impression horaires */
#horaires_impression_menu .btn .nope { display:block; }

.bt-sem-pro img,
.bt-sem-der img,
.imprime_horaires img {
	display: none;
}
.imprime_horaires,
.bt-sem-pro, 
.bt-sem-der {
	display: inline-block;
	vertical-align: top;
	padding: 0 5px 0 0;
}
.imprime_horaires .btn {
	line-height: 31px;
	height: 31px;
	padding: 0 10px;
}
.bt-sem-pro .btn,
.bt-sem-der .btn,
#bouton_retour_emission .btn {
    position: relative;
	line-height: 31px;
	height: 31px;
	padding: 0 10px;
    padding-right: 18px;
}
.bt-sem-der .btn,
#bouton_retour_emission .btn {
	margin-left:20px;
    padding-right: 10px;
    padding-left: 18px;
}
.bt-sem-pro .btn:after,
.bt-sem-der .btn:after,
#bouton_retour_emission .btn:after { /* make two squares (before and after), looking similar to the button */
    content:"";
    position: absolute;
    top: 5px; /* move it down because of rounded corners */
    width: 22px; /* same as height */
    height: 22px; /* button_outer_height / sqrt(2) */
    background: inherit; /* use parent background */
    border: inherit; /* use parent border */
    border-left-color: transparent; /* hide left border */
    border-bottom-color: transparent; /* hide bottom border */
    border-radius: 0px 4px 0px 0px; /* round arrow corner, the shorthand property doesn't accept "inherit" so it is set to 4px */
    -webkit-border-radius: 0px 4px 0px 0px;
    -moz-border-radius: 0px 4px 0px 0px;
}
.bt-sem-pro .btn:after {
    transform: rotate(45deg); /* rotate right arrow squares 45 deg to point right */
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
}
.bt-sem-der .btn:after,
#bouton_retour_emission .btn:after {
    transform: rotate(225deg); /* rotate left arrow squares 225 deg to point left */
    -webkit-transform: rotate(225deg);
    -moz-transform: rotate(225deg);
    -o-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
}
.bt-sem-pro .btn:after,
.bt-sem-der .btn:after,
#bouton_retour_emission .btn:after { /* align the "after" square to the right */
    right: -9px;
}
.bt-sem-pro .btn:after { /* bring arrow pointers to front */
    z-index: 1;
}
.bt-sem-der .btn:after,
#bouton_retour_emission .btn:after { 
    right: auto;
    left: -9px;
}

/* version sur la page séances */
.seances_print { text-align:center; }

@media screen and (min-width: 980px) {
	.tablehoraireout {
		padding:0 10px;
	}
}
@media screen and (max-width: 900px) {
	/* pas d'impression sur la version tablette/mobile */
	#horaires_impression_menu .imprime_horaires { display:none; }
	/* semaine suivante/précédente inutile si horaires glissants * /
	#horaires_impression_menu { display:none; }/**/
	
	/* version sur la page séances */
	.seances_print { display:none; }
}

/* dans l'heure */
.fichefilm-dans-l-heure {
	text-decoration:none;
	display:inline-block;
	vertical-align:top;
	width:24%;
	padding:0 10px 10px 0;
	box-sizing:border-box;
}
.fichefilm-dans-l-heure img {
	max-width: 100%!important;
}
.fichefilm-dans-l-heure h4 {
	white-space: nowrap;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	padding: 0 0 5px 0;
}
@media screen and (max-width: 900px) {
	.fichefilm-dans-l-heure {
		width:49%;
		text-align:center;
	}
}


/* fiche film */
.ff_titre { margin-bottom:0; }
.fiche_film { padding:10px; overflow:hidden; height:auto; }
.fiche_film .affiche {
	float:left;
	width:26%;
	margin:0 10px 10px 0;
}
.affiche { max-width:100%; height:auto; }

.ff_movie_info { padding-top:0; }
.fiche_film h3 { padding-left:0; }
.ff_infos_1 {
	float:left;
	width:45%;
	margin-right:10px;
}
.ff_director,
.ff_public { margin-bottom:0; }
.ff_cast,
.ff_runtime_genre,
.ff_dates,
.ff_synopsis { margin-top:0; }

.ff_infos_2 {
	float:left;
	width:25%;
	text-align:center;
}
.ff_infos_2 .btn,
.ff_infos_2 .vote { margin-bottom:20px; }

.ff_synopsis,
.ff_synopsis_title,
.ff_pics_title,
.fiche_film .horaires { clear:both; }
.fiche_film .horaires + .horaires { margin-top:10px; }

.ff_pics a { display:inline-block; vertical-align:top; margin:0 10px 10px 0; }
.ff_pics a img { display:block; }

/* autres films */
.other_movies_title { padding:0 10px; margin:30px 0 0 0; }
.autres_films {
	padding:10px;
}
.autres_films a {
	display:inline-block;
	vertical-align:top;
	margin:0 5px 5px 0;
	max-width:15.5%;
}
.autres_films img {
	display:block;
	width:100%;
	height:auto;
}

@media screen and (max-width: 540px) {
	.fiche_film .affiche,
	.ff_infos_1,
	.ff_infos_2 {
		float:none;
		width:100%;
	}
	#maincontent-large .ff_movie_info { margin:0; padding:0; }
	.fiche_film > a:first-of-type {
		display:block;
		text-align:center;
	}
	.ff_tags { margin-bottom:10px; }
	.ff_infos_2 .vote,
	.ff_infos_2 .fb_container {
		display:inline-block;
		vertical-align:middle;
		width:48%;
		margin:0;
	}
	.ff_synopsis,
	.ff_synopsis_title {
		margin-top:10px;
	}
	.autres_films a {
		display:inline-block;
		vertical-align:top;
		margin:0 5px 5px 0;
		max-width:30%;
	}
}

/* bande annonce */
.video .bouton_retour { margin:0 0 10px 0; }
#maincontent_v2 { padding:10px; background:#fff; color:#000; }

#maincontent_v2 .jwplayer {
	display:block;
	max-width:100%;
	min-height:300px;
	vertical-align:top;
	margin:10px auto;
}
.labelfacebook { display:none; }
#video_v2_bas { text-align:center; margin: 0 0 20px 0; }
#video_v2_bas .bloc_facebook,
#video_v2_bas .vote,
#video_v2_bas .info_film, 
#video_v2_bas .info_film span {
	display:inline-block;
	vertical-align:top;
	margin:10px 10px 0 0;
}
#video_v2_bas .info_film span { margin-top:0; }

.lien_autre_video {
	display: inline-block;
	vertical-align: top;
	padding: 5px;
	margin: 0 5px 5px 0;
	width:130px;
	text-decoration:none;
}
.lien_autre_video span {
	display: block;
	text-transform: uppercase;
	white-space: nowrap;
	font-size: 11px;
	text-overflow: ellipsis;
	overflow: hidden;
}

@media screen and (max-width: 980px) {
	#maincontent_v2 .jwplayer { min-height:0; }
	
	#maincontent_v2 .jwplayer { height:auto!important;}
	.jw-media,
	.jwplayer video { position:static!important; }
	
}

/* images dans les pages */
.page.cadre img { max-width: 100%; height: auto; }

/* dans les galeries d'images (full width + centrage) */
.img_galerie { width:100%; }
.img_galerie td { text-align: center; }

@media screen and (max-width: 720px) {
	/* events dans les pages  */
	.page_event table,
	.page_event table tr,
	.page_event table td { display: block; }

	/* players embed */
	.page.cadre .videopanel object {
		max-width: 100%;
		height: 200px;
		margin: .5em 0;
	}
}
	
/* formulaire contact */
#mod_contact { padding: 10px; box-sizing: border-box; }
#mod_contact label { display: block; margin-top:.5em; font-weight:bold; }
#mod_contact input { margin-bottom:.5em; }


/* sous menu */
#sous_menu { margin:0 0 10px 0; background:#fff; color:#000; }
#sous_menu:before {
	content:'Choisissez votre rubrique';
	font-size: 18px;
	display: block;
	padding: 10px;
	background: #222;
	color:#fff;
}
#sous_menu a,
#sous_menu strong { display:inline-block; vertical-align:top; padding:5px; }

/* formulaire newsletter */
/*masquage des champs pour simplifier l'inscription*/
#newsletter-abo #civ,
#newsletter-abo #nom,
#newsletter-abo #prenom,
#newsletter-abo #adresse,
#newsletter-abo #codepostal,
#newsletter-abo #ville,
#newsletter-abo #mobil,
#newsletter-abo #naissance,
#newsletter-abo #genre_film,
#newsletter-abo #offres_cinema,
#newsletter-abo #offres_part,
#newsletter-abo #offres_sms {display:none;}

#newsletter-abo #cinema {
	margin-top:10px;
}
#newsletter-abo #cinemas {
	margin-top:10px;
}
#newsletter-abo #cinemas label {
	display: inline-flex;
}
#newsletter-abo #cinemas .validation_cine {
	margin: 5px 10px;
	float: left;
}

#newsletter-abo #cinemas #changercinema {
	display: inline-block;
	margin: 5px 0 0 10px;
	font-style: italic;
}

/* votes */
.vote { font-size:11px; }

span.vote, 
span.vote-long {
	position:relative;
	width:50px;
	height:10px;
	line-height:20px;
	overflow:hidden;
	margin:0;
	padding:0;
	display:inline-block;
	vertical-align:top;
	background-repeat:repeat-x;
	background-position:left top;
}

/* vote small */
span.vote, 
span.vote-long,
span.vote a:hover,
span.vote a:active,
span.vote a:focus,
span.vote .vote-note {
	background-image:url(img/stars_small-2x.png);
	background-image : url(img/stars_small.png)\9; /* IE8 et versions inférieures (car ne gère pas le background size) */
	*background-image : url(img/stars_small.png); /* IE7 et versions inférieures */
	background-size:10px 30px; /* non géré par IE8 et inférieurs -- la size est définie par la taille du sprite, qu'on divise par 2 */
}
span.vote { top:2px; }
span.vote a:hover, 
span.vote a:active, 
span.vote a:focus, 
.vote-note { background-repeat:repeat-x; background-position:left top; }

/* l'user vote */
span.vote a, 
span.vote .vote-note,
span.vote-long a, 
span.vote-long .vote-note {
	position:absolute;
	top:0;
	left:0;
	text-indent:-1000em;
	height:10px;
	line-height:10px;
	outline:none;
	overflow:hidden;
	border: none;
}
span.vote a:hover, 
span.vote a:active, 
span.vote a:focus,
span.vote-long a:hover, 
span.vote-long a:active,
span.vote-long a:focus { background-position:left center; }
a.n1 { width:20%; z-index:6; }
a.n2 { width:40%; z-index:5; }
a.n3 { width:60%; z-index:4; }
a.n4 { width:80%; z-index:3; }
a.n5 { width:100%; z-index:2; }
.vote-note { z-index:1; background-position: left bottom; }
span.voter { display:none; }
span.vote-leg span.nbvote { font-style:italic; }

/* vote long */
span.vote-long,
span.vote-long a:hover,
span.vote-long a:active,
span.vote-long a:focus,
span.vote-long .vote-note {
	background-image:url(img/stars-2x.png);
	background-image : url(img/stars.png)\9; /* IE8 et versions inférieures (car ne gère pas le background size) */
	*background-image : url(img/stars.png); /* IE7 et versions inférieures */
	background-size:17px 75px; /* non géré par IE8 et inférieurs -- la size est définie par la taille du sprite, qu'on divise par 2 */
}
span.vote-long {
	line-height:25px;
	height:25px;
	width:85px;
	overflow:hidden;
	background-repeat:repeat-x;
	background-position:left center;
	top:-3px;
	margin:0 0 -6px 0;
}
span.vote-long a:hover, 
span.vote-long a:active, 
span.vote-long a:focus { background-repeat:repeat-x; background-position:left top; }
span.vote-long a, 
span.vote-long .vote-note { height:25px; line-height:25px; }
.nbvote.fn { display:inline-block; vertical-align:middle; padding:2px 0 0 4px; }
/* fin vote */



/* ne pas faire dépasser les vidéos du conteneur */
.videopanel,
.videopanel img,
.videopanel object,
.videopanel .jwplayer { max-width: 100%; }
.videopanel { text-align:center; }
.videopanel img { height:auto!important; }

.page_event .videopanel { margin-bottom: 10px; }


/* suppression des flèches automatiques dans chrome sur les input de type=number*/
form input[type='number']::-webkit-outer-spin-button,
form input[type='number']::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}




/* css du slider v2*/
.swipe_cont,
.swipe { position:relative; }
.swipe { overflow: hidden; visibility: hidden; position: relative; }
#mod_slider_v2 .swipe-wrap { height:380px; }
.swipe-wrap { overflow: hidden; position: relative; }
.swipe-wrap > div { /* si on enlève le >, il target les div internes aussi et ça merde*/
	float:left;
	width:100%;
	position: relative;
	overflow:hidden; /* Pour la version responsive */
}

/* gestion des différents templates*/
.slideContent {
	position:absolute;
	top:0;
	right:0;
	width:300px;
	background:#222;
	color:#fff;
	padding:7px;
	box-sizing: border-box;
	height:380px;
}
.gabarit2 .slideContent { left:0; right:auto; }
.gabarit2 img { margin-left:300px; } /* pour la décaler de dessous le .slideContent, positionné en absolute*/
.gabarit2 .slideContent img { margin:0; } /* on ne décale pas les tags */
.gabarit3 .slideContent { display:none; }
.gabarit4 .slideContent { background:none; position:absolute; top:auto; bottom:0; left:0; right:0; height:auto; width:auto; text-align:center; }
.gabarit4 .slideContent h3,
.gabarit4 .slideContent p { display: none; }
.gabarit4 .btn_slider { display:inline-block; width:auto; font-size:18px; padding:1em; }

/*boutons du contenu*/
.btn_slider {
	display:inline-block;
	margin:.25em; 
	padding:.5em; 
	font-weight:bold;
	width:auto; 
	text-decoration:none; 
	border-radius: .25em;
	box-sizing: border-box;
}
.btn_slider,
.btn_slider:visited,
.btn_slider:link { background:#ebebeb; color:#000; }

.btn_slider:hover,
.btn_slider:visited:hover,
.btn_slider:focus,
.btn_slider:active { background:#f8f8f8; text-decoration:none; }

/* puces position*/
.slider_nav {
	position:relative;
	text-align:center;
	font-size:16px;
	line-height:1.3;
	color:#697279;
	display:block;
	margin:0;
	padding:0.25em 0 .35em 0;
	width:100%;
}
	.slider_nav li,
	.slider_nav .bul {
		padding:0 4px;
		height:32px;
		line-height:22px;
		font-size:28px;
		overflow:hidden;
		font-style:normal;
		font-family:sans-serif;
		cursor:pointer;
		display:inline-block;
		vertical-align:middle;
	}
	.slider_nav li:hover,
	.slider_nav .bul:hover { color:#b00; }
	.slider_nav li.on,
	.slider_nav .on.bul { color:#ccc; }
/*boutons prev et next - avec les puces */
.bottom .prev-slide,
.bottom .next-slide	{
	display:inline-block;
	vertical-align:top;
	position:static;
	width:36px;
	height:36px;
	cursor:pointer;
	background-size:contain;
}
/*boutons prev et next - sur les côtés */
.side .prev-slide,
.side .next-slide { position:absolute; width:40px; height:150px; cursor:pointer; top:-270px; left:-40px; /* background-size:contain; */ }
.side .next-slide { left:auto; right:-40px; }

/* hors desktop, les boutons de flèches passent en petit sur les côtés */
@media screen and (max-width: 980px) {
	.side .prev-slide,
	.side .next-slide { display: inline-block; position: static; }
}

@media screen and (max-width: 640px) {
	#mod_slider_v2 .swipe-wrap {
		height: auto;
	}
	#mod_slider_v2 .swipe-wrap img { max-width: 100%!important; }
	#mod_slider_v2 .slideContent {
		position: static;
		width:100%;
		height: auto;
	}
	#mod_slider_v2 .slideContent h3 { padding-bottom:0; margin-bottom:0; }
	.gabarit2 img { margin-left:0; } /* pas de marge sur les images, quel que soit le gabarit */
}



/* Magnific Popup CSS */
.mfp-bg { top: 0; left: 0; width: 100%; height: 100%; z-index: 1042; overflow: hidden; position: fixed; background: #0b0b0b; opacity: 0.8; }
.mfp-wrap { top: 0; left: 0; width: 100%; height: 100%; z-index: 1043; position: fixed; outline: none !important; -webkit-backface-visibility: hidden; }
.mfp-container { text-align: center; position: absolute; width: 100%; height: 100%; left: 0; top: 0; padding: 0 8px; box-sizing: border-box; }
.mfp-container:before { content: ''; display: inline-block; height: 100%; vertical-align: middle; }
.mfp-align-top .mfp-container:before { display: none; }
.mfp-content { position: relative; display: inline-block; vertical-align: middle; margin: 0 auto; text-align: left; z-index: 1045; }
.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content { width: 100%; cursor: auto; }
.mfp-ajax-cur { cursor: progress; }
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor: -moz-zoom-out; cursor: -webkit-zoom-out; cursor: zoom-out; }
.mfp-zoom { cursor: pointer; cursor: -webkit-zoom-in; cursor: -moz-zoom-in; cursor: zoom-in; }
.mfp-auto-cursor .mfp-content { cursor: auto; }
.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter { -webkit-user-select: none; -moz-user-select: none; user-select: none; }
.mfp-loading.mfp-figure { display: none; }
.mfp-hide { display: none !important; }
.mfp-preloader { color: #CCC; position: absolute; top: 50%; width: auto; text-align: center; margin-top: -0.8em; left: 8px; right: 8px; z-index: 1044; }
.mfp-preloader a { color: #CCC; }
.mfp-preloader a:hover { color: #FFF; }
.mfp-s-ready .mfp-preloader { display: none; }
.mfp-s-error .mfp-content { display: none; }
button.mfp-close, button.mfp-arrow { overflow: visible; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; display: block; outline: none; padding: 0; z-index: 1046; box-shadow: none; touch-action: manipulation; }
button::-moz-focus-inner { padding: 0; border: 0; }
.mfp-close { width: 44px; height: 44px; line-height: 44px; position: absolute; right: 0; top: 0; text-decoration: none; text-align: center; opacity: 0.65; padding: 0 0 18px 10px; color: #FFF; font-style: normal; font-size: 28px; font-family: Arial, Baskerville, monospace; }
.mfp-close:hover, .mfp-close:focus { opacity: 1; }
.mfp-close:active { top: 1px; }
.mfp-close-btn-in .mfp-close { color: #333; }
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close { color: #FFF; right: -6px; text-align: right; padding-right: 6px; width: 100%; }
.mfp-counter { position: absolute; top: 0; right: 0; color: #CCC; font-size: 12px; line-height: 18px; white-space: nowrap; }
.mfp-arrow { position: absolute; opacity: 0.65; margin: 0; top: 50%; margin-top: -55px; padding: 0; width: 90px; height: 110px; -webkit-tap-highlight-color: transparent; }
.mfp-arrow:active { margin-top: -54px; }
.mfp-arrow:hover, .mfp-arrow:focus { opacity: 1; }
.mfp-arrow:before, .mfp-arrow:after { content: ''; display: block; width: 0; height: 0; position: absolute; left: 0; top: 0; margin-top: 35px; margin-left: 35px; border: medium inset transparent; }
.mfp-arrow:after { border-top-width: 13px; border-bottom-width: 13px; top: 8px; }
.mfp-arrow:before { border-top-width: 21px; border-bottom-width: 21px; opacity: 0.7; }
.mfp-arrow-left { left: 0; }
.mfp-arrow-left:after { border-right: 17px solid #FFF; margin-left: 31px; }
.mfp-arrow-left:before { margin-left: 25px; border-right: 27px solid #3F3F3F; }
.mfp-arrow-right { right: 0; }
.mfp-arrow-right:after { border-left: 17px solid #FFF; margin-left: 39px; }
.mfp-arrow-right:before { border-left: 27px solid #3F3F3F; }
.mfp-iframe-holder { padding-top: 40px; padding-bottom: 40px; }
.mfp-iframe-holder .mfp-content { line-height: 0; width: 100%; max-width: 900px; }
.mfp-iframe-holder .mfp-close { top: -40px; }
.mfp-iframe-scaler { width: 100%; height: 0; overflow: hidden; padding-top: 56.25%; }
.mfp-iframe-scaler iframe { position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #000; }
/* Main image in popup */
img.mfp-img { width: auto; max-width: 100%; height: auto; display: block; line-height: 0; box-sizing: border-box; padding: 40px 0 40px; margin: 0 auto; }
/* The shadow behind the image */
.mfp-figure { line-height: 0; }
.mfp-figure:after { content: ''; position: absolute; left: 0; top: 40px; bottom: 40px; display: block; right: 0; width: auto; height: auto; z-index: -1; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #444; }
.mfp-figure small { color: #BDBDBD; display: block; font-size: 12px; line-height: 14px; }
.mfp-figure figure { margin: 0; }
.mfp-bottom-bar { margin-top: -36px; position: absolute; top: 100%; left: 0; width: 100%; cursor: auto; }
.mfp-title { text-align: left; line-height: 18px; color: #F3F3F3; word-wrap: break-word; padding-right: 36px; }
.mfp-image-holder .mfp-content { max-width: 100%; }
.mfp-gallery .mfp-image-holder .mfp-figure { cursor: pointer; }
@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/** * Remove all paddings around the image on small screen */
	.mfp-img-mobile .mfp-image-holder { padding-left: 0; padding-right: 0; }
	.mfp-img-mobile img.mfp-img { padding: 0; }
	.mfp-img-mobile .mfp-figure:after { top: 0; bottom: 0; }
	.mfp-img-mobile .mfp-figure small { display: inline; margin-left: 5px; }
	.mfp-img-mobile .mfp-bottom-bar { background: rgba(0, 0, 0, 0.6); bottom: 0; margin: 0; top: auto; padding: 3px 5px; position: fixed; box-sizing: border-box; }
	.mfp-img-mobile .mfp-bottom-bar:empty { padding: 0; }
	.mfp-img-mobile .mfp-counter { right: 5px; top: 3px; }
	.mfp-img-mobile .mfp-close { top: 0; right: 0; width: 35px; height: 35px; line-height: 35px; background: rgba(0, 0, 0, 0.6); position: fixed; text-align: center; padding: 0; }
}
@media all and (max-width: 900px) {
	.mfp-arrow { -webkit-transform: scale(0.75); transform: scale(0.75); }
	.mfp-arrow-left { -webkit-transform-origin: 0; transform-origin: 0; }
	.mfp-arrow-right { -webkit-transform-origin: 100%; transform-origin: 100%; }
	.mfp-container { padding-left: 6px; padding-right: 6px; }
}
/* End Magnific Popup CSS */


/* le bandeau pour les cookies */
#bandeau_cookies {
	background:#fffc9d;
	color:#000;
	height: auto;
	padding: .75em 2.5em .75em .75em;
	padding: .75em;
	line-height:2.2;
	width: auto;
	margin: 0 auto;
	box-sizing:border-box;
	border:solid 1px #aeab62;
	z-index:30000;
	text-align:center;
	display:none;
}
#bandeau_cookies a { color:#c00; }
#bandeau_cookies #close_cnil {
	cursor:pointer;
	background:#288dc9;
	color:#fff;
	border-radius:3px;
	display:inline-block;
	vertical-align:top;
	padding:.5em 1em;
	line-height:1.2;
	margin:0 0 0 1em;
}
/* pas de bandeau sur affichage dynamique et movie touch */
.mtouch #bandeau_cookies,
.affdyn #bandeau_cookies {
	display:none!important;
}
@media screen and (max-width: 640px) {
	#bandeau_cookies { line-height:1.2; padding: .35em; }
	#bandeau_cookies #close_cnil { margin-top:4px; }
}

/* le fil d'arianne de base */
.breadcrumbs { text-align:left; padding:1em 0; color:#666; }
.breadcrumbs .sep { display:inline-block; padding:0 0.5em;}
.breadcrumbs a { color:#666; }
.breadcrumbs span h1 { display:inline; font-size:inherit; }


/* boutons sociaux de base */
#social_buttons a {	display:inline-block; vertical-align:top; margin-right:5px; }
#social_buttons a:last-child { margin-right:0; }
#social_buttons a .s_icon {
	background:url(img/social_sprite.png) 0 0 no-repeat;
	background-size:240px 120px; /* moitié moins que taille de l'image */
	width:36px;
	height:36px;
	display:block;
	margin:0;
	padding:0;
}

#social_buttons a.slink_twitter,
#social_buttons a.slink_facebook,
#social_buttons a.slink_youtube,
#social_buttons a.slink_rss,
#social_buttons a.slink_instagram { background:#999; }

#social_buttons a.slink_twitter:hover,
#social_buttons a.slink_twitter:visited:hover,
#social_buttons a.slink_twitter:focus { background:#2aa9e0; }
#social_buttons a.slink_facebook:hover,
#social_buttons a.slink_facebook:visited:hover,
#social_buttons a.slink_facebook:focus { background:#3b5998; }
#social_buttons a.slink_youtube:hover,
#social_buttons a.slink_youtube:visited:hover,
#social_buttons a.slink_youtube:focus { background:#d52423; }
#social_buttons a.slink_rss:hover,
#social_buttons a.slink_rss:visited:hover,
#social_buttons a.slink_rss:focus { background:#ff6612; }
#social_buttons a.slink_instagram:hover,
#social_buttons a.slink_instagram:visited:hover,
#social_buttons a.slink_instagram:focus { background:#d93175; }

#social_buttons a.slink_twitter .s_icon { background-position:-2px -2px; }
#social_buttons a.slink_facebook .s_icon { background-position:-41px -2px; }
#social_buttons a.slink_youtube .s_icon { background-position:-83px -2px; }
#social_buttons a.slink_rss .s_icon { background-position:-124px -2px; }
#social_buttons a.slink_instagram .s_icon { background-position:-162px -2px; }




/* footer */
#footer { text-align:center; padding:1em 3em 3em; }
#footer ul,
#footer li { display:inline-block; vertical-align:top; list-style:none; padding:0; margin:.25em; }
#footer li a,
#footer li strong { display:block; padding:.25em .5em; }



/* mod pub apps */
.bs_app .app_info { overflow:hidden; height:auto; padding:5px 0;}
.bs_app .app_icon { float:left; margin:0 10px 0 0; border-radius:9px; }
.bs_app .app_info p { padding-top:3px; }

.bs_app .app_liens { text-align:center; }
.bs_app .app_liens a { width:44%; margin:0 5px 5px 5px; display:inline-block; vertical-align:top; text-align:center; }
.bs_app .app_liens a img { width:auto; height:36px; }



/* plan d'accès */
#mod_maps { height:300px; position:relative; z-index:30; }

/* BFS - blocs films semaine */
.les_blocs_film { padding: 5px; box-sizing: border-box; }
.bloc_film {
	float:left;
	width:16.66667%;
	height:auto;
	overflow:hidden;
	position:relative;
	padding:5px;
	box-sizing: border-box;
}
.bloc_film img { max-width: 100%!important; }
.bloc_film h3 { display:none; }
.bloc_film .les_boutons {
	display:none;
	position:absolute;
	top:5px;
	left:5px;
	right:5px;
	bottom:5px;
	background:#000;
	background:rgba(0,0,0,.75);
	text-align:center;
	padding:30% 10px;
}
.bloc_film:hover .les_boutons { display:block; }
@media screen and (max-width: 640px) {
	.les_blocs_film { padding: 0; }
	.bloc_film { width:150px; }
}
.flag_new { position:absolute; top:10px; left:-30px; background:yellow; color:#000; transform:rotate(-30deg); padding:3px 0; font-size:10px; font-weight:bold; width:120px; text-align:center; }

/* compte à rebours skin de base */
.countdown { text-align:center; padding: 1%; border-radius: 10px; }
.ctdn_jours,
.ctdn_heures,
.ctdn_minutes,
.ctdn_secondes {
	display:inline-block;
	vertical-align:top;
	font-size:10px;
	text-align:center;
	padding:6px 7px;
	background: #fff;
	color:#000;
	border-radius: 5px;
	margin:1%;
	width:22%;
	box-sizing: border-box;
	border:solid 2px #ccc;
}
.ctdn_jours strong,
.ctdn_heures strong,
.ctdn_minutes strong,
.ctdn_secondes strong {
	font-size:22px;
	font-weight:700;
	display:block;
	padding:0 0 3px 0;
	color:#000;
}

/* login fid de base */
#onglet_login a { display:block; }
#form_login_fidelite,
#fidelite_user_menu { display:none; position:relative; padding:0; z-index:2; overflow:hidden; height:auto; }
#login_fidelite a.Help,
#login_fidelite a.SignIn,
#login_fidelite a.logout { display:block; }
#form_login_fidelite.active.ouvert,
#fidelite_user_menu.active.ouvert { display:block; }



/* Autocomplete */
.tt-menu { border: solid 1px #a2acb0; border-radius: 4px; padding:5px; width:340px; }
.tt-menu { text-align:left; background-color:#fff; margin:0; padding:8px 0; width:340px; z-index:3000; position:absolute; }
a.tt-suggestion, a.tt-suggestion:hover { text-decoration: none; padding:6px 12px; display: block; }
.tt-suggestion:hover { background-color:#0097cf; color:#fff; cursor:pointer; }
.tt-suggestion.tt-cursor { background-color:#0097cf; color:#fff; }


/* POP UP */
#pop-up-overlay,
.pop-up-overlay { background:#000; background:rgba(56,56,56,0.6); width:100%; height:100%; position:fixed; top:0px; left:0px; z-index:9000; }
#pop-up { display:none; width:757px; height:264px; color:#454545; font-family:Arial, sans-serif; overflow:hidden; background:white; z-index:10000; padding:0 10px; border:2px solid; border-radius:18px; z-index:12000; }

#pop-up header { text-align:center; border-bottom:1px solid #BABABA; padding:24px; }
#pop-up header h2 { margin:0; padding:0; color:#454545; font-size:24px; }

#pop-up #text { background:url(pop-up/img/mail.png) no-repeat 10px 21px; padding:24px 4px 24px 78px; text-align:left; }
#pop-up #text p { padding:0; margin:0; line-height:18px; font-size:16px; }

#pop-up #check { width:100%; }
#pop-up #check a { background-color:#2EC0FE; text-align:left; border:1px solid #A7A7A7; width:374px; color:#333333; border-radius:10px; box-shadow:0px 0px 0px rgba(0,0,0,1), inset 0px 0px 5px rgba(255,255,255,1); cursor:pointer; text-decoration:none; }
#pop-up a:nth-child(1) { float:left; }
#pop-up a:nth-child(2) { float:right; }
#pop-up .check-text { width:268px; display:block; padding:32px 20px 32px 100px; }
#pop-up .check-text strong { font-size:22px; font-weight:700; }
#pop-up .check-text span { font-size:18px; }
#pop-up #check-text-okay { background:url(pop-up/img/okay.png) no-repeat 27px 24px; }
#pop-up #check-text-okay strong { color:#69A61A; }
#pop-up #check-text-not-okay { background:url(pop-up/img/not-okay.png) no-repeat 30px 30px; }

#pop-up #close { cursor:pointer; width:24px; height:24px; display:block; position:absolute; right:8px; top:8px; background-image:url(pop-up/img/close.png); background-repeat:no-repeat; }

/* popup perso */
#pop-up.perso { width:800px; height:538px; border-radius:0; border:0; padding:0; margin:0; }
#pop-up.perso #img-pop-up { width:800px; height:538px; display:block; }
#pop-up.perso #close { top:0; right:0; width:160px; height:43px; background-color:#000; color:#fff; background-position:20px 10px; background-size:20px; }

#pop-up.perso #close:before {
	content:'Fermer';
	font-size:16px;
	font-weight:bold;
	vertical-align:middle;
	display:block;
	text-align:center;
	padding:.75em 0 .75em 1em;
}

/* un peu de marge par défaut sur le recaptcha invisible */
.recaptcha-holder { margin-bottom:5px; }

/* Onglet mon compte */
#onglet_login { position: absolute; top: 10px; right: 225px; }

/* espace client */
#espace-client {  }
#espace-client form { padding:0; width: 300px; max-width:100%; margin: 0 auto;  }
#espace-client label { display:block; font-weight:bold;  }
#espace-client .reg_error { display:block; font-weight:normal; background: #fdd; padding: 1em 0.5em; margin: 2em 0; }
#espace-client label.error { font-weight:normal; color: #c00; }
#espace-client input.error { border: 1px solid #ff0000 !important; background: #FCE8E8; }
#espace-client div.champ,
#espace-client .champ-bt { margin: 0 auto 18px; }
#espace-client .champ-bt {text-align:center; }
#espace-client .legende-de-champ { display:block; }
#espace-client input[type=text],
#espace-client input[type=email],
#espace-client input[type=password] { width: 100%; } 
#espace-client input[type=submit],
#espace-client input[type=button] { margin-right: 0; }
#espace-client #se-connecter #lien-mdp-oublie { text-align: right; padding-top: .5em; } 
#mentions_cnil { font-size:10px; }
#mentions_cnil p { margin:.4em 0; }
.ec-lien-home { text-align:right; padding:10px; }
.ec_boutons_home { display: flex; flex-wrap: wrap; justify-content: center; }
.ec_boutons_home .btn {
	flex:0 0 48%;
	padding:100px 15px 15px;
	text-align: center;
	margin: .5em .5em 0;
	display: block;
	box-sizing: border-box;
	background-size:120px 90px!important;
	background-repeat:no-repeat!important;
	background-position:center 10px!important;
}
.ec_boutons_home .btn.ec_home_data		{ background-image:url(img/ec_icon_data.png); }
.ec_boutons_home .btn.ec_home_resa		{ background-image:url(img/ec_icon_resa.png); }
.ec_boutons_home .btn.ec_home_cartes	{ background-image:url(img/ec_icon_carte.png); }
.ec_boutons_home .btn.ec_home_fid		{ background-image:url(img/ec_icon_fid.png); }
.ec_boutons_home .btn.ec_home_logout	{ background-image:url(img/ec_icon_logout.png); }


.carte-qrcode { display:block; float:left; width: 128px; height:128px; margin-right: 8px; }
.carte-enregistree { clear:both; border: solid 1px #ccc; border-radius: 4px; height: auto; overflow:hidden; padding:8px; margin-bottom:8px; }
#ajouter-carte { clear:both; }
#espace-client .carte-enregistree form { width:auto; margin:5px 0 0 0; }

/* mes résas */
.recap_commande { display: flex; flex-wrap: wrap; border:solid 1px #ccc; padding: 10px; border-radius: 5px; margin: 0 0 20px 0; }
.ec_resa,
.ctn_qr { flex:0 0 60%; margin: 0; padding: 5px; box-sizing: border-box; position:relative; }
.ctn_qr { flex-basis:40%; text-align:center; }
@media screen and (max-width: 640px) {
	.recap_commande,
	.ec_resa,
	.ctn_qr { display:block; }
}

.ec_seance { font-size: 15px; margin-top:0; }
.ec_qr { max-width:200px; width:auto; margin:0 auto; position:relative; }
.infos_qr { margin-bottom:0; color:#666;font-style: italic; padding: 0 20px; }

.ec_qr.qr_mask:before {
	content:'Cliquez ici pour afficher le code';
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:#efefef;
	border:solid 1px #ccc;
	box-sizing:border-box;
	padding:35% 10% 0 10%;
	text-align:center;
}

.ec_past,
.ec_past + .ctn_qr { opacity:.5; }


/* cookies */
.cookie_table,
.cookie_table th,
.cookie_table td { border:solid 1px #ccc; border-collapse:collapse; }
.cookie_table th,
.cookie_table td { padding:5px; }
.cookie_table { text-align:left; }

/* pas de bouton compte client par défaut */
#access_header_espace_client { display: none; }

/* liste des fevt */
.fevt_list { padding:10px 10px 20px 10px; display:flex; flex-wrap:wrap; }
.fevt_list .evenement { position:relative; padding:10px; box-sizing:border-box; overflow:hidden; flex:0 0 50%; }
.fevt_list img { height:auto!important; max-width:100%!important; }
.fevt_list .affiche,
.fevt_list .fevt_aff_ph { display:block; max-width:100%!important; }
.fevt_list .fevt_aff_ph { min-height:200px; background:#ccc; }
.fevt_list .fevt_type { display:block; vertical-align:middle; background:#ddd; color:#222; padding:2px 4px; float:left; }
.fevt_list .fevt_type_sans .fevt_type,
.fevt_list .fevt_type_ .fevt_type { display:none; } /* on affiche pas la catégorie sans/vide */

/* fevt pleine page */
.fevent_full .fevt_type { display:none; } 
.evenement .clr,
#actus_nav { display:none; }
.fevt_film { display:flex; margin:0 20px 20px 20px ; }
.fevt_film img { display:block; }
.desc_fevt { padding:5px 0 5px 0; border-bottom:solid 1px #ccc; margin:0 20px 20px; }
.fevt_infos_film { flex-basis:37%; padding:10px; }
.seances_liees { flex-basis:42%; text-align:left; align-self:center; padding-left:30px; }
.les_films { overflow:hidden; }

.fevt_infos_film p,
.fevt_infos_film h3 { margin:0 0 .333em 0; padding:0; }
.fevt_infos_film p { font-weight:700; }
.fevt_infos_film strong,
.fevt_infos_film .fevt_superbillet_detail { font-weight:400; }
.fevt_film_liens { display:none; }

.seances_liees p { display: inline-block; vertical-align:top; margin:10px 20px; text-align:center; width:auto; }
.seances_liees .seance_a { display:none; }
.seances_liees .jour_texte { color:#da6a18; display:block; padding-bottom:3px }
.seances_liees .hor { background:#fff; display:inline-block; padding:6px 15px; border-radius:5px; border:solid 1px #ccc; }
.seances_liees .passed .hor { color:#999; font-style:italic; }
.seances_liees .passed { display:none } /* finalement non affichées */
.seances_liees .hor { width:120px; font-size:18px; font-weight:700; color:#000; }
.seances_liees .hor:hover,
.seances_liees .hor:visited:hover,
.seances_liees .hor:focus { text-decoration:none; color:#e30015; border-color:#e30015; }
.infos_seance { display:block; }
.infos_seance .tag { width:20px; height:auto; display:inline-block; }

@media screen and (max-width: 980px) {
	.fevt_film { flex-wrap: wrap; }
	.fevt_film > a { flex:1 0 10%; }
	.fevt_film .affiche { max-width:100%!important; }
	.fevt_infos_film { flex:1 0 80%; }
	.seances_liees { flex:1 1 100%; padding:10px 10px 10px 12%;	}
}
@media screen and (max-width: 720px) {
	.fevt_film > a { flex:1 0 15%; }
	.seances_liees { padding-left:15%;	}
}
@media screen and (max-width: 640px) {
	.fevt_film > a { flex:1 0 20%; }
	.seances_liees { padding-left:20%;	}
	.fevt_infos_film { flex:1 0 70%; }
	
	.fevt_list {display:block; }
}
@media screen and (max-width: 320px) {
	.fevt_film { flex-direction:column; }
	.fevt_film > a,
	.fevt_infos_film,
	.seances_liees{ flex:1 1 100%; padding:0 10px; }
	.fevt_film > a { text-align:center; padding:0; max-width: 50%; margin: 10px auto; }
}

.dns_salle { display:flex; width:100%; }
.dns_salle .dns_it { flex:1 1 33%; padding:.25em .5em; }

/*On n'affiche pas le tag pour les avants premières en festival*/
.tag-AVANTPFEST { display: none; }

.lsep { height:0; overflow:hidden; clear:both; margin:15px 0; }
.lsep.lsolid { border-top:solid 1px #000; }
.lsep.ldot { border-top:dotted 1px #000; }
.lsep.ldash { border-top:dashed 1px #000; }

.bppdf { text-align:center; }

/* ajouts nouveaux template */
/* gestion du sticky */
#header.sticky { position:fixed; top:0; left:0; right:0; }
.avechab #header.sticky { position:static; } /* en static pour ne pas bouger */
.avechab #masthead { padding-top:0!important; } /* masthead sans padding vu que le header reste en place */

/* portail - liste cinés fid et autre */
.lc_liste,
.lc_liste .lc_cine { margin:0; padding:0; list-style:none; }
.lc_liste .lc_cine a { display:block; padding:0.25em; margin: .25em 0; border-bottom: solid 1px #ccc; }
.lc_liste .lc_cine:last-child a { border:0; }