/******************************************************************************\
	- $GENERIC
	- $HEADER
	- $MENUS
	- $HIDDEN_MENUS
	- $SELECT_MENUS
	- $SUB_MENU
	- $CONTENTS
	- $MAP
	- $MAP_CONTROLS
	- $MAP_TOOLTIPS
	- $HEADINGS
	- $BUTTONS
	- $POI
	- $HDPI
\******************************************************************************/

/******************************************************************************\
	- $GENERIC
\******************************************************************************/
@font-face {
	font-family:'Apollon';
	src:url('/assets/fonts/Apollon006.eot');
	src:url('/assets/fonts/Apollon006.eot?#iefix') format('embedded-opentype'),
		url('/assets/fonts/Apollon006.woff') format('woff'),
		url('/assets/fonts/Apollon006.ttf') format('truetype'),
		url('/assets/fonts/Apollon006.svg#Apollon') format('svg');
	font-weight:normal;
	font-style:normal;
}
body {
	position:relative; /* used for secured popin display */
	margin:0; padding:0;
	width:100%;
	background:#fff; color:#000;
	font:normal normal 14px/1.3 Arial, Helvetica, sans-serif;
	-webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; text-size-adjust:100%;
}
a {
	color:#b97a1e;
	text-decoration:underline;
}
a:hover, a:focus {
	text-decoration:none;
	outline:0 none;
}
img {
	display:block;
	width:100%; height:auto;
}
a img { border:none; }
p, ul {
	margin:0 0 .714em;
}

#js .hidden { display:none; }
#js .full { display:block; }
.offscreen { position:absolute; left:-10000px; }
.fl { float:left; }
.fr { float:right; }
.cleared:after {
	display:table;
	clear:both;
	content:'';
}

/******************************************************************************\
	$HEADER
\******************************************************************************/
#header {
	position:relative; z-index:2;
	background:#000;
	-moz-box-shadow:    0px 4px 5px 0px #999;
	-webkit-box-shadow: 0px 4px 5px 0px #999;
	-o-box-shadow:      0px 4px 5px 0px #999;
	box-shadow:         0px 4px 5px 0px #999;
}
.logo .main-logo {
	position:relative; z-index:1;
	display:block;
	padding-bottom:4%; margin:0;
	width:100%; height:0;
	background:#fff;
}
.logo .main-logo img {
	position:absolute; bottom:0; left:50%;
	margin-left:-25%;
	width:50%;
}

.btn-home {
	position:absolute; bottom:0; left:0;
}
.btn-home .i { margin:5px 10px; }

/******************************************************************************\
	$MENUS
\******************************************************************************/
ul.menu, .menu ul {
	margin:0; padding:0;
	list-style-type:none;
}
.menu a {
	color:#8a8a8a;
	text-decoration:none;
}
.menu a:hover, .menu a:hover span,
.menu a:focus, .menu a:focus span { color:#ba9e66; }
.menu a.active, .menu a.active span {
	color:#ba9e66;
	text-decoration:none;
}

/******************************************************************************\
	$HIDDEN_MENUS
\******************************************************************************/
.main-menu,
.sub-menu,
.burger-menu .lang-menu,
#footer .lang-menu {
	display:block;
	overflow:hidden;
	padding:0; margin:0;
	height:0; width:0;
}

/******************************************************************************\
	$SELECT_MENUS
\******************************************************************************/
.menu-label {
	display:block;
	white-space:pre;
	cursor:pointer;
}
.menu-list { background:#fff; }
.menu-list a {
	display:block;
	padding-right:8px;
	text-decoration:none;
}
.menu-list a:hover,
.menu-list a:focus,
.menu-item-focused a {
	color:#000;
	text-decoration:none;
}
.menu-item-selected { display:none; }
.menu-item-highlighted a {
	background:#fff; color:#000;
}
/*with JS*/
#js .select-menu { position:relative; }
#js .menu-list {
	position:absolute; z-index:10; top:0;
	display:none;
}
#js .menu-list-visible { display:block; }


/******************************************************************************\
	$BURGER-MENU
\******************************************************************************/
.burger-menu {
	position:absolute; bottom: 0; right:0; z-index:1;
	overflow:hidden;
	width:40px;
}
.burger-menu-overlay {
	position:fixed; top:0; left:0;
	width:100%; height:100%;
	background: url(/assets/img/common/bg-overlay.png);
}
.menu-handler .i { margin:8px 10px; }
.burger-menu > ul {
	position:absolute; top:100%; right:0; z-index: 1;
	background:#f6f6f6;
	/*
	 -webkit-transition:width .3s ease-out;
		-moz-transition:width .3s ease-out;
	 	 -ms-transition:width .3s ease-out;
	  	  -o-transition:width .3s ease-out;
			 transition:width .3s ease-out;
			 */
	text-align:left;
}
.burger-menu li {
	margin:0 15px;
	text-align:center;
}
.burger-menu li a {
	display:block;
	padding:15px 5px; border-bottom:1px solid #d8d8d8;
	color:#000;
	font:normal normal 14px/1.3 'Apollon', Georgia, Times, serif;
	white-space:nowrap;
}
.burger-menu li.active a { color:#b97a1e; }

.burger-menu li a:hover,
.burger-menu li a:focus{
	color:#b97a1e;
}
.burger-menu li.active a:hover,
.burger-menu li.active a:focus {
	color:#000;
}
.sub-menu-opened .menu-handler {
	position:relative; z-index:1;
	background:#f6f6f6;
}
.sub-menu-opened .burger-menu {
	overflow:visible;
	width:85%;
}
.sub-menu-opened .burger-menu > ul { width:100%; }

/* lang */

/* sub-group */
.sub-group {
	overflow: hidden;
	border-bottom:1px solid #d8d8d8;
}
.sub-group li {
	display:table-cell;
	padding:15px 0;
	margin:0;
}
.sub-group li a {
	padding:0; border-bottom:none;
	width:2.75em;
	text-align:center;
}
.sub-group li:first-child a {
	border-left:none;
}
.burger-menu li.socials-wrapper {
	border-bottom:1px solid #d8d8d8;
}
.burger-menu .socials-menu {
	width: 240px;
	margin: 0 auto; border-bottom:none;
}
.burger-menu .socials-menu a img {
	display:inline-block;
	width:2em; height:auto;
}
/* portal-menu */
.burger-menu .portal-menu a {
	padding:15px 0;
}
.burger-menu .portal-menu span {
	display:block;
	margin:0 auto;
	width:190px;
}

/******************************************************************************\
	$MENU_PANELS
\******************************************************************************/
ul.menu-panels {
	margin:0 0 10px; border-top:1px solid #bababa;
}
.menu-panels li { border-bottom:1px solid #bababa; }
.menu-panels a {
	position:relative;
	display:block;
	padding:15px 20px 15px 10px;
	color:#000;
	font:normal normal 14px/1.5 Georgia, Times, serif;
	letter-spacing:0.02em;
}
.menu-panels a .i {
	position:absolute; top:50%; right:5px;
	height:10px; width:6px;
	background-position:-20px -40px;
	margin-top:-5px;
}

/******************************************************************************\
	$ZONE_MENU
\******************************************************************************/
#map .overlay-container { display:none; }
#map .overlay-container.visible { display:block; }
.overlay-container {
	position:absolute; z-index:1000;
	margin-top:-100px;
	width:0;
}
.overlay-container .wrapper {
	display:table-cell;
	height:200px;
	vertical-align:middle;
}
.overlay-container.active { z-index:1001; }
.zone-menu { position:absolute; left:-10000px; }
.btn-arrow {
	position:relative;
	display:inline-block;
	vertical-align:middle;
	padding:10px;
	background:#fff; color:#000;
	font:normal normal 14px/1.3 'Apollon', Georgia, Times, serif;
	text-align:center; text-decoration:none;
	white-space:nowrap;
	 -webkit-box-shadow:0 -5px 0 0 rgba(0, 0, 0, .15);
		-moz-box-shadow:0 -5px 0 0 rgba(0, 0, 0, .15);
		  -o-box-shadow:0 -5px 0 0 rgba(0, 0, 0, .15);
			 box-shadow:0 -5px 0 0 rgba(0, 0, 0, .15);
}
.btn-arrow-right {
	position:absolute; top:-50%;right:100%;
}
.btn-arrow-right:after,
.btn-arrow-left:before {
	position:absolute;
	margin-top:-5px; border:solid transparent; border-width:5px;
	height:0; width:0;
	content:'';
}
.btn-arrow-left:before {
	top:50%; right:100%;
	border-right-color:#fff;
}
.btn-arrow-right:after {
	top:50%; left:100%;
	border-left-color:#fff;
}
.btn-arrow > span {
	display:block;
	font-size:13px;
}
.btn-arrow:hover, .btn-arrow:focus {
	background:#000; color:#fff;
}
.btn-arrow-left:hover:before { border-right-color:#000; }
.btn-arrow-right:hover:after { border-left-color:#000; }
.btn-arrow:hover .i { background-position:-20px 0; }
.map-menu .btn-explore {
	display:none;
	font-size:14px;
}
#js .active .btn-explore {
	display:block;
	font-size:13px;
}

/******************************************************************************\
	$CONTENTS
\******************************************************************************/
#content {
	position:relative; z-index:1;
	overflow:hidden;
	font-size:14px;
}
#main {
	position:relative; z-index:1;
	background:#fff;
}
.section { padding:0 4.687% 10px; }
.section .visual { display:none; }

/******************************************************************************\
	$MAP
\******************************************************************************/
.map-container {
	position:relative; z-index:0;
	padding-bottom:87.8125%;
	width:100%; height:0;
	background:#000;
}
#map {
	position:absolute !important; /* !important overrides google's inline position:relative */
	top:0; left:0;
	width:100%; height:100%;
}

/******************************************************************************\
	$MAP_CONTROLS
\******************************************************************************/
.map-controls {
	position:absolute; bottom:1.5em; z-index:1;
	margin:3.125%; padding:0;
	list-style-type:none;
}
.map-controls a { display:block; }
.map-controls .change-layer a {
	border:4px solid #fff;
	height:42px; width:42px;
	background:url(/assets/img/common/btn-sat-map.jpg) no-repeat;
}
.change-layer a.hidden { display:none; }
.change-layer a.satellite { background-image:url(/assets/img/common/btn-sat-map.jpg); }
.change-layer a.roadmap { background-image:url(/assets/img/common/btn-road-map.jpg); }

.map-controls .zoom { padding-left:4px; }
.map-controls .zoom .i {
	height:33px; width:33px;
}
.zoom-in .i { background-position:-40px 0; }
.zoom-out .i { background-position:-40px -40px; }

/******************************************************************************\
	$MAP_TOOLTIPS
\******************************************************************************/
.tooltip-container {
	position:relative;
	display:block;
	width:174px;
	padding:14px 20px 10px; margin-bottom:12px;
	background:#fff; color:#000;
	font-size:14px;
	text-align:center; text-decoration:none;
	 -webkit-box-shadow:0 -5px 0 0 rgba(0, 0, 0, .15);
		-moz-box-shadow:0 -5px 0 0 rgba(0, 0, 0, .15);
		  -o-box-shadow:0 -5px 0 0 rgba(0, 0, 0, .15);
			 box-shadow:0 -5px 0 0 rgba(0, 0, 0, .15);
}
.tooltip-container:after {
	position:absolute; bottom:-12px; left:50%; z-index:1;
	margin-left:-12px;
	width:0; height:0;
	border-style:solid;
	border-width:12px 12px 0 12px;
	border-color:#ffffff transparent transparent transparent;
	content:'';
}
.tooltip-container p {
	margin:0;
	font:normal normal 14px/1.3 'Apollon', Georgia, Times, serif;
}

/******************************************************************************\
	$PANEL_POPINS
\******************************************************************************/
.panel-opened .content-wrapper,
.subpanel-opened .content-wrapper,
.panel-opened .menu-panels,
.subpanel-opened .menu-panels,
.subpanel-opened .panel { display:none; }
.subpanel {
	margin-top:-42px;
	z-index:1003;
}
.panel-content {
	position:relative;
	margin:0 1.5625% 10px; padding:30px 4.687%;
	background:#f6f6f6;
}
.panel-content .notice {
	margin:20px 0;
	color:#d60101;
	font-style:italic;
}
.panel-close {
	position:absolute; top:5px; right:5px;
}
#map .panel-close {
	top:1px; right:2px;
}
.panel .visual,
.subpanel .visual {
	padding:10px;
	background:#fff;
}
.mask {
	position:absolute; z-index:1000;
	background:#fff;
}
#subpanel-mask { z-index:1002; }

/******************************************************************************\
	$HEADINGS
\******************************************************************************/
h1, h2, h3, h4 {
	margin:0 0 .33em; padding:0;
	font-weight:normal; font-size:1em;
}
.hmain {
	font:normal normal 14px/1.2 'Apollon', Georgia, Times, serif;
	text-align:center;
}
.hmain > span {
	display:inline-block;
	padding-bottom:.33em;
}
.hmain.current {
	position:relative;
    color:#fff;
}
.hlarge { margin:10px 0; }
.hlarge > span { border-bottom:1px solid #000; }

.hpoi {
	margin-bottom:20px;
	text-align:left;
}
.hsubpoi {
	position:relative;
	padding-left:25px;
}
.hpoi .i {
	position:absolute; top:-5px; left:0;
	margin:0;
	width:20px; height:20px;
	background-position:0 -100px;
}

/******************************************************************************\
	$BUTTONS
\******************************************************************************/
.btn { display:inline-block; }
.i {
	position:relative;
	display:inline-block;
	margin-left:5px;
	background-image:url(/assets/img/common/sprites-btn.png); background-repeat:no-repeat;
}

.btn-home .i {
	height:20px; width:20px;
	background-position:0 -80px;
}
.menu-handler .i,
.panel-close .i { height:17px; width:17px; }
.menu-handler .i { background-position:0 -62px; }
.sub-menu-opened .menu-handler .i,
.panel-close .i { background-position:-22px -62px; }

.btn-explore .i {
	top:5px;
	height:17px; width:17px;
}
.btn-explore-black {
	padding:15px 30px; border:1px solid #fff;
	background:#000; color:#fff;
	font:normal normal 14px/1.8 'Apollon', Georgia, Times, serif;
	text-decoration:none;
}
.btn-explore-black:hover,
.btn-explore-black:focus {
	border-color:#ececec;
	background:#f6f6f6; color:#000;
}
.btn-explore-black .i {
	height:20px; width:20px;
	background-position:0 -20px;
}
.btn-explore-black:hover .i,
.btn-explore-black:focus .i { background-position: -20px -20px; }
.btn-route-link {
	position:relative;
	margin:25px 0; padding:15px 15px 15px 50px;
	background-color:#fff; color:#000;
	font:normal normal 15px Georgia, Times, serif;
	text-decoration:none;
}
.btn-route-link .i {
	position:absolute; top:15px; left:15px;
	width:17px; height:17px;
}

/******************************************************************************\
	$POPIN-MESSAGE
\******************************************************************************/
#alert-popin,
#welcome-popin,
.popin-message .content-map,
.popin-message.welcome .title {
	display: none;
}
.popin-message-overlay {
	position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1000;
	display: block;
	background: url(/assets/img/common/bg-overlay.png);
	cursor:pointer;
}
.popin-message-wrapper {
	position:fixed; top:0; z-index:1000;
	display:table;
	height:100%; width:100%;
}
.popin-message-inner {
	display:table-cell;
	vertical-align:middle;
	padding:1em;
}
.popin-message-inner.welcome {
	vertical-align: top;
}
#welcome-popin .popin-message-overlay {
	background:#fff;
}
#welcome-popin .imgclose {
	position: static;
	width: auto;
}
.popin-message .close, #app-popin .close {
	position: absolute; top:20px; right:20px;
	width:15px;
}

.popin-message.alert .close .i, #app-popin .close .i {
	width: 17px; height: 17px;
	background:url(/assets/img/common/sprites-btn.png) no-repeat -22px -62px;
}
.popin-message {
	position: relative; z-index: 2000;
	display: block;
	overflow:hidden; overflow-y:auto;
	margin:0; padding:25px;
	width: auto; height:360px;
	background-color: white;
	text-align: center;
}
.popin-message:not(*:root) {
	height:75%;
}
.popin-message .logo {
	position: relative;
	color: #575757;
	font-size: 18px; font-weight: 600;
	text-align: center; text-transform: uppercase;
}

.popin-message p {
	position: relative;
	display: block;
	margin: 0;
	font-size: 13px;
	text-align: left;
}
.popin-message .title {
	padding: 15px;
}
.popin-message .title,
.popin-message .title p {
	color: #b97a1e;
	text-align:center; text-transform: uppercase;
}
.popin-message .hlarge {
    padding: 0 0 1em;
    color:#000;
}

/*app popin */
#app-popin{
	display: none;
}

#app-popin .popin-wrapper{
	position: fixed;
	z-index: 1000;
	top: calc(50% - 160px);
	left: calc(50% - 150px);
	min-height: 320px;
	width: 300px;
	background: #fff;
	padding: 25px 35px 0;
	box-sizing: border-box;
	border: solid 5px #fff;
	border-radius: 5px;
}

#app-popin .close {
	width: 17px;
	height: 17px;
	top:10px; right:10px;
}

#app-popin .text-wrapper{
	font-size: 15px;
	line-height: 20px;
	margin:20px 0;
}
#app-popin .download-button{
	width: 220px; height: 45px;
	background: #FFCC08;
	border: 5px solid #FFCC08;
	border-radius: 5px;
	line-height: 35px;
}

#app-popin .exit-button,
#app-popin .download-button{
	width: 220px; height: 45px;
	display: block;
	box-sizing: border-box;
	text-align: center;
}
#app-popin .exit-button{
	line-height: 45px;
}


#app-popin .download-button,
#app-popin .download-button:hover,
#app-popin .download-button:focus,
#app-popin .download-button:visited{
	text-decoration: none;
	color: #000;
}

#app-popin .exit-button,
#app-popin .exit-button:hover,
#app-popin .exit-button:focus,
#app-popin .exit-button:visited{
	text-decoration: none;
	color: #999999;
}

/* welcome */
.popin-message.welcome {
	top:0;
	margin-top:0; padding:1em;
	height:420px;
}
.popin-message.welcome:not(*:root) {
	height:100%;
}
.popin-message .lang-list {
	margin:0 -15px 0.7em;
	padding-left:0;
	list-style:none;
	white-space: nowrap;
}
.popin-message .lang-list li {
	display: inline-block;
	border-left:1px solid #eaeaea;
	font-size:12px;
}
.popin-message .lang-list li:first-child {
	border-left:none;
}
.popin-message .lang-list a {
	display: block;
	padding:.5em 1em;
	color:#8a8a8a;
	text-transform: uppercase; text-decoration: none;
}
.popin-message .lang-list a.active {
	color: #000;
}
.popin-message.welcome .logo {
	clear: right;
	width: 60%;
	margin:0 auto 1.5em ;
}
.popin-message.welcome h3 {
	position:relative;
	margin-bottom: 0; padding-bottom:2.7em;
	line-height: 1.3;
}
.popin-message.welcome h3:after {
	position: absolute; left: 50%; bottom  :1.5em;
	border-bottom:1px solid #bababa;
	margin-left:-10%;
	width   : 20%; height  : 1px;
	content : "";
}
.popin-message.welcome p {
	font-size:14px;
	line-height: 1.5;
}
.popin-message.welcome .btn-explore-wrapper {
	margin-top: 2em;
	text-align: center;
}
.popin-message.welcome .btn-explore-wrapper .btn-explore-black {
	position: relative; top: 0; right: 0;
	width: auto;
	padding:10px 15px;
}

.popin-message.welcome .note {
	margin-top:3em;
	color:#807c81;
	font-size:12px;
	text-align: center;
}
.popin-message.welcome .note .devices {
	display:block;
	margin: 0 auto 0.5em;
	width:auto;
}
/* alert */
.popin-message.alert {
	border: 10px solid #f3f3e7;
}
.popin-message.alert .icon {
	position: relative;
	display: block;
	margin: 5px auto;
	width: 47px; height: 39px;
	background-image: url(/assets/img/common/warning.png);
}

/******************************************************************************\
	$PLAYER (for youtube video)
\******************************************************************************/
.player {
	position: relative;
	width:100%;
	padding-top: 30px; padding-bottom: 56.25%; /*9/16*/
	height: 0;
}
.player.with-img {
	overflow:hidden;
	padding-top:0;
}
.player img {
	position: absolute; top:0; left: 0;
	display:block;
	border:none;
	width: 100%; height:auto; max-width:none;
}
.player iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.player .play-btn {
	position:relative; z-index: 1;
	display:block;
	padding-top:56.25%;
	background: url(/assets/img/common/play.png) 50% 50% no-repeat;
}

/******************************************************************************\
	$diaporama (for slisk carousel)
\******************************************************************************/
.popin-welcome-popin,
.popin-alert-popin,
.popin-diapo-popin {
	overflow:hidden;
}


.popin-welcome-popin #welcome-popin,
.popin-alert-popin #alert-popin {
	display:block;
}
.diaporama {
	position:relative;
	display:block;
}
.diaporama-btn {
	position:absolute; bottom:1em; right:1em; z-index: 1;
	display:block;
	width:26px; height:26px;
	background: url(/assets/img/common/sprite-diapo.png) -100px -3px no-repeat;
}
.popin-message-inner.diapos {
	padding:0;
}
.popin-message.diapos {
	padding:0;
	background:none;
	height:auto;
}
.popin-message.diapos .close {
	position: absolute; top:1em; right:1em; z-index: 1;
	background:url('/assets/img/common/sprite-diapo.png') -65px 0 no-repeat;
	padding:32px 33px 0 0;
	width:0; height:0;
}
.slide-diaporama-wrapper {
	padding-bottom:53.62%;
	height:0;
}
.slick-slide {
	position:relative;
	margin:.5em;
}
.slide-nav-wrapper {
	border: .25em solid transparent;
}
.slick-slide.slick-center .slide-nav-wrapper {
	border-color: white;
}
.slick-slide p {
	position:absolute; top:0; left:0;
	float: left;
	margin:0 45px 0 0; padding:0.5em;
	background: url(/assets/img/common/bg-overlay-bright.png); color:#fff;
}
.slick-loading .slick-list {
	background: #fff url('/assets/img/common/ajax-loader.gif') center center no-repeat;
}
.slick-prev,
.slick-next {
	position: absolute; top: 50%; left:1.5em; z-index: 1;
	display: block;
	overflow:hidden;
	margin-top: -16px; padding:32px 32px 0 0; border: none;
	width:0; height:0;
	background:url('/assets/img/common/sprite-diapo.png') 0 0 no-repeat;
	cursor: pointer;
}
.slick-next {
	left:auto; right:1.5em;
	background-position:-33px 0;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before { opacity: 1; }

.slider-nav {
	display:none;
}

/******************************************************************************\
	$SOCIALS-NETWORK
\******************************************************************************/
.main-container {
	position:relative;
	padding-bottom: 5em;
}
.socials-network {
	position:absolute; top:100%; right:5%;
	margin:0; padding:1em 0 0;
	z-index: 1;
}
.socials-network li {
	display:inline-block;
	list-style:none;
}
.socials-network li +li {
	margin-left:10px;
}
.socials-network li a {
	display:block;
	border:1px solid #d0d0d0;
	width:35px; height:35px;
	background:white url(/assets/img/common/sprites-network.png) no-repeat 0 0;
}
.socials-network li a:hover {
	border-color:#8a8a8a;
	background-position:-35px 0;
}
.socials-network li a.twitter {
	background-position:0 -39px;
}
.socials-network li a.twitter:hover,
.socials-network li a.twitter:focus {
	background-position:-35px -39px;
}
.socials-network li a.google {
	background-position:0 -78px;
}
.socials-network li a.google:hover,
.socials-network li a.google:focus {
	background-position:-35px -78px;
}

/******************************************************************************\
	$HDPI
\******************************************************************************/
@media (min--moz-device-pixel-ratio:1.5), (-webkit-min-device-pixel-ratio:1.5), (min-device-pixel-ratio:1.5) {
	.i {
		background-image:url(/assets/img/common/sprites-btn@2.png);
		background-size:80px 140px;
	}
}
/********************************************
TMP :Hack for symfony debugger
**********************************************/
#sfWebDebug img, #adminedit img, .nlabel-edit-link img, #nuadmin-toolbar-wrapper img {
    width:auto;
}
