@charset "UTF-8"; 

/* 
 * CODES COULEURS
 * 
 * Noir d'écriture			:	#353535
 * Noir de fond 1			: 	#222
 * Noir de fond clair		: 	#929191
 * Gris foncé				:	#5e5e5e
 * Gris 					: 	#777
 * Gris très clair			:	#fefefe
 * Couleur					:	#49668f
 * Rouge d'erreur			:	#f00
 */

/* -------------------------------- */
/* Reset							*/
/* -------------------------------- */

/* html5doctor.com/html-5-reset-stylesheet/ */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,time,mark,audio,video {margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;} 
body {line-height:1;}
ol,ul {list-style:none;}
blockquote,q {quotes:none;}
blockquote:before,blockquote:after,q:before,q:after {content:'';content:none;}
ins {text-decoration:none;}
del {text-decoration:line-through;}
table {border-collapse:collapse;border-spacing:0;}

/* -------------------------------- */
/* Styles de base					*/
/* -------------------------------- */

html {
	font-size: 62.5%;
}

body {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: normal;
	color: #353535;
}

header, footer, section, hgroup, aside, nav, article, figure, figcaption, time {display: block;} /* @note: default HTML5 styles, useful to fx 3.6 and IE */
a img {border: 0;}
figure {margin: 0; padding: 0;}
img {max-width: 100%; /* @note: gestion des dépassements */ }
textarea {max-width: 100%;}

a {text-decoration: underline; color: #49668f; cursor: pointer;}

.page-link {
	margin: 18px 0 0 0;
	font-size: 12px;
	font-size: 1.2rem;
	text-transform: uppercase;
}
.skin-classic .page-link {color: #353535;}
.skin-restaurant .page-link {color: #fff;}

p {word-wrap: break-word; hyphens: auto; /* @note: césure */}

/* Classes génériques */
.hidden {display: none;}
.cursor-pointer {cursor: pointer;}

/* -------------------------------- */
/* LIB (Surcharge)					*/
/* -------------------------------- */

/* smartmenus (non surcharge, car import styles, optionnel) */
#main-menu {
	position: relative;
	z-index: 2;
	width: auto;
}

#menu-button {display:none;}
#menu-button:before {content:'▲ Menu';}
#menu-button.collapsed:before {content:'▼ Menu';}

.sm a {
	margin: 0;
	padding: 8px;
	color: #fff;
	text-decoration: none;
}
.sm a.has-submenu {
	padding: 8px 16px 8px 8px;
}

.sm a[href^="#"] {cursor:default;}

.sm ul {background: #5e5e5e;}

.sm a:hover, 
.sm a:focus, 
.sm a:active,
.sm a.highlighted {background: #929191;}

.sm a span.sub-arrow {
	position: absolute;
	right: 4px;
	top: 43%;
	top: calc(50% - 3px);
	height: 8px;
	width: 8px;
	font-size: 0;
	background: url('../img/picto/submenu-sprite-arrows.png') center -9px transparent;
}
.sm a:hover span.sub-arrow,
.sm a.highlighted span.sub-arrow {background-position: center -200px;}

.sm ul a span.sub-arrow {background-position: center -56px;}
.sm ul a:hover span.sub-arrow,
.sm ul a.highlighted span.sub-arrow {background-position: center -248px;}

/* Magnific Popup */
.mfp-container .mfp-content {
	width: auto;
	margin: auto;
	padding: 20px;
	background: #fff;
	text-align: center;
}

/* royalSlider */
.royalSlider {
	width: 100%;
	margin: 0 auto;
	-webkit-user-select: none;
	-moz-user-select: none;  
	user-select: none;
}

.rsGCaption {
	float: none;
	text-align: left;
}

.rsThumbs {padding: 0 0 12px 0;}

.rsDefault .rsThumb {border: solid 1px transparent;}
.rsDefault .rsThumb img {width: auto; margin: 0 auto;}
.rsDefault .rsThumb.rsNavSelected {border-color: #fff; background: #fff;}
.rsDefault .rsThumb.rsNavSelected img {opacity: .5;}

.thumb-number {
	display: block;
	position: absolute;
	width: auto;
	padding: 2px 4px;
	border-radius: 0 0 0 2px;
	top: 0;
	right: 0;
	background: url('/common/resources/img/bg/lte-ie8/ffffff-0.8.png') repeat transparent;
	background: none rgba(255, 255, 255, 0.8);
	font-size: 11px;
	font-size: 1.1rem;
	color: #353535;	
}

/* -------------------------------- */
/* Titres							*/
/* -------------------------------- */

h1, .h1 {
	margin: 0 0 16px 0;
	font-size: 25px;
	font-size: 2.5rem;
	font-weight: normal;
}

h2, .h2 {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: normal;
}

h3, .h3 {
	display: inline-block;
	font-weight: bold;
}

/* -------------------------------- */
/* Formulaires						*/
/* -------------------------------- */

label {
	display: none;
	cursor: pointer;
}
.checkbox-label {display: inline; vertical-align: middle; cursor: pointer;}
input {min-height: 22px;}

input, select, textarea {
	min-width: 240px;
	margin: 0;
	padding: 4px 8px;
	border: solid 1px #ddd;
	border-radius: 4px;
	outline: none;
	font-size: 14px;
	font-size: 1.4rem;
	color: #353535;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;	
}
select option {color: #353535;}

[type="radio"], [type="checkbox"] {
	display: inline-block;
	vertical-align: middle;
	height: auto;
	width: auto;
	min-width: inherit;
	padding: 0;
	border: 0;
	cursor: pointer;	
}

.captcha-img {
	display: block;
	min-width: 256px;
	margin: 0 auto;
	border: solid 1px #ddd;
	border-radius: 4px;
	cursor: pointer;
}

label.error {
	display: block;
	margin: 8px 0 0 0;
	font-size: 13px;
	font-size: 1.337rem;
	color: #f00;
	text-align: center;
}

.placeholder {color: #777;}
::-webkit-input-placeholder {color: #777;}
::-moz-placeholder { color: #777; opacity: 1;}
:-ms-input-placeholder {color: #777;}

/* -------------------------------- */
/* Boutons, pictos					*/
/* -------------------------------- */

/* Boutons */
.button {
	display: inline-block;
	min-width: inherit;
	padding: 4px 8px;
	border: solid 1px #49668f;
	border-radius: 4px;	
	background: #49668f;
	background-image: linear-gradient(rgba(86, 120, 168, 0.8), rgba(60,84,117, 1.0));
	-webkit-box-shadow: 0 1px 2px #000;
	box-shadow: 0 1px 2px #000;	
	color: #fff;
	text-decoration: none;
	cursor: pointer;
}

.button:hover {
	background: #fff;
	color: #49668f;
}

.button.contextual {
	font-size: 12px;
	font-size: 1.2rem;
	text-decoration: none;
}

/* Pictos */

/* -------------------------------- */
/* Layout							*/
/* -------------------------------- */

.grid {
	width: 1100px;
	margin: 0 auto;
}

/* -------------------------------- */
/* Header							*/
/* -------------------------------- */

.page-header-wrapper {
	background: #222;
}

.page-header {position: relative;}
.page-header-part {display: inline-block; vertical-align: bottom;}

.header-logo-link {
	display: block;
	min-height: 40px;
	min-width: 60px;
} 

.logo-img {
	display: block;
	max-height: 82px;
	background: #fff;
}

/* Nav */
.header-nav-button {
	min-height: 20px;
	line-height: 20px;
	padding: 8px;
	color: #fff;
	text-decoration: none;
}

/* Partie contextuelle */
.contextual-part {
	position: absolute;
	top: 12px;
	right: 0;
	text-align: right;
}

/* Liens de langue */
.ln-nav {
	margin: 8px 0 0 0;
}
.ln-nav li {
	display: inline-block; 
	vertical-align: top;
	padding: 0 2px;	
}
.ln-nav a {
	display: block;
	height: 18px;
	width: 18px;
	border-radius: 9px;
	background: url('../img/picto/flags-sprites-18px.png') no-repeat center top transparent;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.ln-nav a:hover {box-shadow: 0 0 4px 4px #fff;}

.ln-nav .ln-fr a {background-position: center 0;}
.ln-nav .ln-en a {background-position: center -36px;}
.ln-nav .ln-es a {background-position: center -72px;}
.ln-nav .ln-de a {background-position: center -108px;}
.ln-nav .ln-br a {background-position: center -144px;}
.ln-nav .ln-it a {background-position: center -180px;}
.ln-nav .ln-zh a {background-position: center -216px;}
.ln-nav .ln-ja a {background-position: center -252px;}
.ln-nav .ln-ru a {background-position: center -288px;}

/* Lien de retour */

/* Message IE... */
.old-browser-message-wrapper {
	padding: 8px 24px;
	background: #f00;
}

.old-browser-message-wrapper p {color: #FFF;}

/* -------------------------------- */
/* Footer							*/
/* -------------------------------- */

.page-footer {
	padding: 24px 0;
	border-top: solid 1px #222;
	clear: both;
	font-size: 11px;
	font-size: 1.1rem;
	text-align: center;
}

.page-footer .go-back-link-wrapper {display: none;}

/* -------------------------------- */
/* Contenu, objets					*/
/* -------------------------------- */

/* Forms */
.form-frame {
	display: inline-block;
	position: relative;
	width: 420px;
	margin: 30px 0 0 0;
	padding: 40px 24px 0 24px;
	background: #fefefe;
	-webkit-box-shadow: 0 0 2px 2px #ddd;
	box-shadow: 0 0 2px 2px #ddd;
}

.form-frame-heading {
	position: absolute;
	top: -30px;
	left: 0;
	right: 0;
	text-align: center;
}

.form-frame-logo {
	display: inline-block;
	height: 48px;
	width: 48px;
	padding: 12px;
	border-radius: 100%;
	-webkit-box-shadow: 0 0 2px 2px #ddd;
	box-shadow: 0 0 2px 2px #ddd;
	background: none no-repeat scroll center center #49668f;
}
.form-frame-logo.key {background-image: url('../img/picto/key.png');}
.form-frame-logo.locked {background-image: url('../img/picto/locked.png');}
.form-frame-logo.question {background-image: url('../img/picto/question.png');}

.form-frame-message-zone {
	padding: 8px 0;
	background: #f00;
	border-radius: 4px;
	color: #fff;
}

.form-frame p {
	margin: 24px 0;
}

.form-footer {
	display: table;
	width: 100%;
	text-align: left;
}

.form-footer-part {display: table-cell;}
.form-footer-button-wrapper {text-align: right;}

.link-forget-password {
	font-size: 11px;
	font-size: 1.1rem;
}

/* RPGD  base common bannière cookies */
.rgpd-banner { 
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 65535; /* 2^16 -1 */
    box-shadow: 0 -1px 5px 5px rgba(0,0,0,0.2);
    border-top: 1px solid rgba(0,0,0,0.3);
}

.rgpd-banner > * { box-sizing: border-box;}

.rgpd-banner a,
.rgpd-banner button {
    display: inline-block;
    font-size: 1em;
}

.rgpd-banner-wrapper {
    padding: 1em 1.5em;
    text-align: left;
}

.rgpd-banner-message { 
    display: inline-block;
    margin-bottom: 0.5em; 
}

.rgpd-banner-footer { text-align: right; }

.rgpd-banner-footer-link-cookie,
.rgpd-banner-button-confirm {
    background: inherit;
    color: inherit;
    font-weight: bold;
}

.rgpd-banner-footer-link-cookie {
    margin-right: 1em;
    margin-bottom: 1em;
    text-decoration: underline;
}

.rgpd-banner-footer-link-cookie:hover,
.rgpd-banner-footer-link-cookie:focus,
.rgpd-banner-footer-link-cookie:active {
    text-decoration-style: dashed;
}

.rgpd-banner-button-confirm {
    text-decoration: none;
    background-color: transparent;
    border: 1px solid;
    border-radius: 1em;
    padding: 0.5em;
}

.rgpd-banner-button-confirm:hover,
.rgpd-banner-button-confirm:focus,
.rgpd-banner-button-confirm:active  {
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff;
}


/* -------------------------------- */
/* Pages							*/
/* -------------------------------- */

.page-content {
	padding: 24px 0; 
}

.page-content {text-align: center;}

.page-content-heading {margin: 0 0 24px 0;}

/* Galeries */
.gallery {
	display: block;
}

.gallery-part {
	display: inline-block;
	text-align: left;
}
.gallery-media {width: 60%; padding: 0 0 0 12px;}
.gallery-text {float: left; width: 37%; padding: 0 12px 0 0;}

.niveau-title {display: inline-block; border-bottom: 1px solid #222;}

/* Zone textuelle */
.picture-description {margin: 8px 0 0 0;}

.picture-notes {margin: 12px 0 0 0;}

.picture-note-text {
	font-size: 12px;
	font-size: 1.2rem;	
}

.picture-note.reference {display: none;}

.download-button-wrapper {
	margin: 8px 0 0 0;
	text-align: right;
}

/* -------------------------------- */
/* Media Queries                    */
/* -------------------------------- */

/* Disable iOS/WinMobile font size changes */
@media screen and (max-device-width: 640px) {
	html {-ms-text-size-adjust: none; -webkit-text-size-adjust: none;} 
}

@media screen and (max-width: 1110px) {

	/* Styles de base */
	
	/* Lib */
	.royalSlider {max-height: 466px;}
	.royalSlider.rsFullscreen {max-height: 100%;}
	
	/* Formulaires */
	
	/* Boutons */
	
	/* Layout */
	.grid {width: auto;}
	
	/* Header */
	.logo-img {
		padding: 8px 8px 0 8px;
		background: transparent;
	}
	
	/* Nav */
	.nav-part {display: block;}
	.header-nav {width: 100%;}
	.contextual-part {right: 12px;}
	
	/* Footer */
	.page-footer {
		margin: 0 18px;
		padding: 18px 0;
	}	
	
	/* Objets */
	.form-frame {padding: 40px 18px 0 18px;}
	.form-frame p {margin: 18px 0;}
	
	/* Page */
	.page-content {padding: 18px;}
	.page-content-heading {margin: 0 0 18px 0;}
	
	/* Galeries */
	.gallery-text, .gallery-media {
		display: block;
		width: auto;
		padding: 0;
		margin: 0 0 18px 0;
	}
	
	.gallery-text {float: none;}
		
}

@media screen and (max-width: 600px) {
	
	/* Styles de base */
	
	/* Lib */
	.sm {display: block; width: 100%; margin: 0; }
	.sm ul{display:none; position:static !important;top:auto !important;left:auto !important;margin-left:0 !important;margin-top:0 !important;width:auto !important;min-width:0 !important;max-width:none !important;}
	.sm li {width: 100%;}
	
	.sm a, .sm a.has-submenu {padding: 8px;}
	.sm ul a, .sm ul a.has-submenu {padding: 8px 8px 8px 24px;}
	.sm ul ul a, .sm ul ul a.has-submenu {padding: 8px 8px 8px 40px; }
	.sm ul ul ul a, .sm ul ul ul a.has-submenu {padding: 8px 8px 8px 56px;}
	.sm ul ul ul ul a, .sm ul ul ul ul a.has-submenu {padding: 8px 8px 8px 72px;}
	.sm ul ul ul ul ul a, .sm ul ul ul ul ul a.has-submenu {padding: 8px 8px 8px 88px;}
	
	.sm a span.sub-arrow {position: relative; background: none; font-size: inherit;}
	
	/* Nav */
	#main-menu {margin: 0;}
	#menu-button {display: block;}
	#main-menu.collapsed {display: none;}
	
	/* Formulaires */
	input {min-height: 22px;}
	
	input, select, textarea {
		display: block;
		width: 100%;
		min-width: inherit;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	
	.captcha-img {width: 100%;}
	
	/* Boutons */
	
	/* Header */
	.page-header-part {display: block;}
	
	.header-logo-link {display: inline-block; max-width: 80%;}
	
	.contextual-part {top: 8px; right: 8px;}
	
	.ln-nav {width: 48px;}
	.ln-nav li {padding: 2px;}	
	.page-header .ln-nav {margin: 0;}
	.page-header .go-back-link-wrapper {display: none;}
	
	/* Footer */
	.page-footer {
		margin: 0 12px;
		padding: 12px 0;
	}
	
	.page-footer .go-back-link-wrapper {display: block; margin: 12px 0 0 0;}
	
	/* Objets */
	.form-frame {
		display: block;
		width: auto;
		margin: 42px 0 0 0;
		padding: 40px 12px 12px 12px;
	}
	.form-frame p {margin: 12px 0;}
	
	.cookie-message {
		position: fixed;
		top: inherit;
		right: 0;
		bottom: 0;
		width: auto;
	}
	
	/* Page */
	.page-content {padding: 12px;}
	.page-content-heading {margin: 0 0 12px 0;}
	
	/* Galeries */
	.gallery-text, .gallery-media {
		margin: 0 0 12px 0;
	}
	
}