@CHARSET "UTF-8";



@font-face {
	font-family: 'Geogrotesque-Regular';
	src: url('../fonts/Geogrotesque-Regular.eot');
	src: url('../fonts/Geogrotesque-Regular.eot?#iefix')
		format('embedded-opentype'),
		url('../fonts/Geogrotesque-Regular.woff2') format('woff2'),
		url('../fonts/Geogrotesque-Regular.woff') format('woff'),
		url('../fonts/Geogrotesque-Regular.ttf') format('truetype'),
		url('../fonts/Geogrotesque-Regular.svg#geogrotesque_regular')
		format('svg');
	font-weight: normal;
	font-style: normal;
            	-moz-font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	-webkit-font-smoothing: subpixel-antialiased;
        -moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: none;
}

@font-face {
	font-family: 'Geogrotesque-Medium';
	src: url('../fonts/Geogrotesque-Medium.eot');
	src: url('../fonts/Geogrotesque-Medium.eot?#iefix')
		format('embedded-opentype'),
		url('../fonts/Geogrotesque-Medium.woff2') format('woff2'),
		url('../fonts/Geogrotesque-Medium.woff') format('woff'),
		url('../fonts/Geogrotesque-Medium.ttf') format('truetype'),
		url('../fonts/Geogrotesque-Medium.svg#geogrotesque_medium')
		format('svg');
	font-weight: normal;
	font-style: normal;
            	-moz-font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	-webkit-font-smoothing: subpixel-antialiased;
        -moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: none;
        
}

@font-face {
	font-family: 'Geogrotesque-Thin';
	src: url('../fonts/Geogrotesque-Thin.eot');
	src: url('../fonts/Geogrotesque-Thin.eot?#iefix')
		format('embedded-opentype'),
		url('../fonts/Geogrotesque-Thin.woff2') format('woff2'),
		url('../fonts/Geogrotesque-Thin.woff') format('woff'),
		url('../fonts/Geogrotesque-Thin.ttf') format('truetype'),
		url('../fonts/Geogrotesque-Thin.svg#geogrotesque_thin')
		format('svg');
	font-weight: normal;
	font-style: normal;
            	-moz-font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	-webkit-font-smoothing: subpixel-antialiased;
        -moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: none;
}


html,body {
/* text-rendering: optimizeLegibility; */
margin:0px; padding:0px; position:relative;
    font:18px Geogrotesque-Regular,Helvetica,Sans-Serif;
            	-moz-font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	-webkit-font-smoothing: subpixel-antialiased;
        -moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: none;
}

#footer { position:relative; }

body.body_start_0 { margin-top:0px; }

.header-page-pic {
   margin:0px auto;
   display:block;
   width:100%;
}



a.news {
	background:#0077BE;
	color:white;
	position:absolute;
	z-index:123;
	top:0px;
	right:0px;
	text-transform:uppercase;
	padding:2px 5px;
	display:table;
	width:auto;
	text-decoration:none;
	padding:2px 37px;
	font:20px Geogrotesque-Regular,Helvetica,Sans-Serif;
}

a.news:hover {
	background:#EFB632;
}


.container {
        max-width:1180px;
        margin:0px auto;
}

.hideminimal,
.seo { display:none; }

#window { 
    position:relative;
    top:145px;
    -webkit-transition: top 0.8s;
    -moz-transition: top 0.8s;
    transition: top 0.8s;
}

/*
body.reduceMenu {
    top:0px;
}

body.reduceMenu #header {
    position:relative;
} */

.smallheader body {
    top:100px;
}

#header {
    line-height:normal;
    position:fixed;
    top:0px;
    left:0px;
    right:0px;
    bottom:auto;
    width:100%;
    z-index:1000;
    padding:0px;
    margin:0px auto;
    background:white;
}

#header .container { 
    position:relative;
    margin:0px auto;
    padding:0px 10px;
    height:145px;
    -webkit-transition: height 0.8s;
    -moz-transition: height 0.8s;
    transition: height 0.8s;
}

.smallheader #header .container {
    height:100px;
}

#header h1 {
    position:relative;
    display:inline-block;
    min-width:200px;
    width:100%;
    height:50px;
    max-width:376px;
    top:40px;
    margin:0px;
    padding:0px;
    left:0px;
    -webkit-transition: top 0.8s;
    -moz-transition: top 0.8s;
    transition: top 0.8s;
}

.smallheader #header h1 {
    top:0px;
}

#header .iconbar ul li span#menu-collapse {
    height:26px;
    width:31px;
    display:block;
    cursor:pointer;
    background-position:-62px 0px;
}


#menu {
    position:absolute;
    top:145px;
    right:0px;
    z-index:2000;
    background:rgba(255,255,255,0.92);
    -webkit-transition: all 0.8s;
    -moz-transition: all 0.8s;
    transition: all 0.8s;
    list-style:none;
    margin:0px;
    padding:0px;
    width:260px;
}

#menu li {
    display:block;
    padding:0px;
    margin:0px;
}

#menu li a {
    color:#385f78;
    font:20px Geogrotesque-Medium,Helvetica,Sans-Serif;
    text-transform: uppercase;
    display:block;
    padding:21px 20px;
}


#menu .sub-menu {
    margin:0px auto;
    padding:0px;
    background:rgba(238, 242, 245,0.82);
}

#menu .sub-menu li {
    padding:0px;
    margin:0px;
}

#menu .current-menu-item a {
    color:#84a6d0;
    color:#0077BE;
}

#menu a:focus,
#menu a:active {
    text-decoration: none;
}


#menu .sub-menu {
    display:none;
}

#header .iconbar ul li span#menu-collapse.menu-open {
    background-position:-93px 0px;
}

#menu li.menu-item-has-children > a,
#menu li a:hover {
    background:#3376b9;
    color:white;
    text-decoration: none;
}

#menu li.menu-item-has-children > a {
    background:#3376b9 url(../img/BG-menu-icon-white.png) no-repeat 95% center;
}

#menu li.menu-item-has-children > a.rotate {
    background-image:url(../img/BG-menu-icon-white-rotate.png);
}

.smallheader #menu {
    top:100px;
}

#extra_nav_area {
    min-height:48px;
    max-width:1180px;
    position:relative;
    margin:0px auto 50px auto;
}

.breadcrumbs {
    margin:0px 0px 0px 0px;
    text-transform: uppercase;
    font-size:20px;
    background:rgba(0%, 47%, 75%,0.8);
    color:white;
    display:block;
    padding:10px 20px;
    max-width:1180px;
    position:absolute;
    bottom:0px;
    left:0px;
    right:0px;
    z-index:5;
}

.breadcrumbs a {
    color:white;
    text-decoration: none;
}
.breadcrumbs a:hover {
    text-decoration: underline;    
}


.display_block { display:block; }
.display_none { display:none; }

#header .logo a { display:block; border:0px; }
#header .logo a img {
    width:100%;
    display:block;
    margin:0px;
    padding:0px;
    border:0px;
}

.insidebar #header .logo a img {
	height:100px;
}


#header .logo a img[src*="haut"] {
    z-index:3;
    position:relative;
}

#header .logo a img[src*="bas"] {
    margin-top:-23px;
    position:relative;
    z-index:2;
    -webkit-transition:all 0.5s;
    -moz-transition:all 0.5s;
    transition:all 0.5s;
}

.smallheader #header .logo a img[src*="bas"] {
    margin-top:-100px;
} 

#header .iconbar {
    position:relative;
    display:table;
    top:30px;
    left:auto;
    margin:0px 0px 0px auto;
    padding:0px;
    right:0px;
    -webkit-transition:all;
    -moz-transition:all;
    transition:all;
    top:0px;
}

.smallheader #header .iconbar {
    -webkit-transition: top 0.8s;
    -moz-transition: top 0.8s;
    transition: top 0.8s;
    top:0px;
}

#header .iconbar label {
    font:26px Geogrotesque-Regular,Helvetica,Sans-Serif;
    text-transform: uppercase;
    color:#0074b9;
    vertical-align: middle;
    display:table-cell;
    padding-right:60px !important;
}
#header .iconbar ul li > span,
#header .iconbar ul li a {
    height:26px;
    width:31px;
    display:block;
    margin:0px auto;
    background-color:transparent;
    background-image:url(../img/BG-icons-bar.png);
    background-repeat:no-repeat;
    background-position:0px 0px;
}

#header .iconbar ul li.login a {
    background-position:-31px 0px;
}

#header .iconbar ul li.logout a {
    background-position:-124px 0px;
}

#header .iconbar ul li.contact a {
    background-position:right 0px;
}

#header .iconbar ul li.menu a {
    background-position:0px 31px;
}


#header .iconbar ul { list-style:none; margin:0px auto; padding:0px;  vertical-align: middle;     display:table-cell; }
#header .iconbar ul li { display:table-cell; padding:0px 5px; vertical-align:bottom; }
#header .iconbar ul li span,
#header .iconbar ul li a { margin:0px auto; padding:0px;  }

#header .iconbar ul li:first-child {
    padding-left:0px;
}

#header .iconbar ul li:last-child {
    padding-right:0px;
}

#overlay{
    height: 100%;
    width: 100%;
    background:transparent url(../img/BG-overlay.png) repeat center center;
    position: fixed;
    z-index: 998;
    bottom:0px;
    left:0px;
    right:0px;
    display:none;
}

#overlay .modalbox {
    display: table;
    background-color: #FFFFFF;
    background-repeat:no-repeat;
    background-position: top center;
    background-size:100% auto;
    position: fixed;
    top: 200px;
    left:0px;
    right:0px;
    z-index: 999;
    padding:0px;
    color:#333;
}

#overlay form {
    margin:0px;
    padding:0px;
}

#overlay .container {
    width:auto;
}

form#login {
    width:90%;
    max-width: 350px;
}

form#login h1 {
    text-transform: uppercase;
    margin:0px auto 30px auto;
    padding:0px;
}

form#login .content {
    padding:20px;
}

.modalbox .close {
    top:0px;
    right:0px;
    color:white;
    background:#1e5799;
    font-weight: normal;
    width:40px;
    text-align:center;
    line-height:40px;
    opacity:1;
    z-index:999;
    height:40px;
    margin:0px;
    padding:0px;
    position:relative;
}

form#login .submit_button {
        display:table;
        padding:10px;
        color:white;
        margin:30px auto 10px auto;
        text-decoration: none;
        width:100%;
        text-transform: lowercase;
        font:20px Geogrotesque-Medium,Helvetica,Sans-Serif;
        text-align: center;
        border:1px solid white;
        background:#1e5799;
        color:#fff;
}

form#login .submit_button:hover {
        background:#fff;
        color:#1e5799;
        border-color:#1e5799;
}

form#login input[type="text"],
form#login input[type="password"] {
    border:1px solid #ccc;
    padding:2px 5px;
    height:40px;
    line-height:40px;
    width:100%;
}

form#login p.status{
    display: none;
}

#other_projects ul {
    list-style:none;
    margin:0px;
    display:table;
    width:100%;
    padding:0px;
}

#other_projects ul li {
    margin:0px auto;
    padding:2px;
} 

#other_projects ul li img {
    display:table;
    width:100%;
    height:150px;
}

#other_projects ul li:first-of-type {
    padding-left:0px;
}

#other_projects ul li:last-of-type {
    padding-right:0px;
}

#newsletter {
    position:absolute;
    right:0px;
    top:0px;
    z-index:2;
}


#list_of_projects {
    list-style:none;
    margin:0px auto;
    padding:0px;
}

#list_of_projects li {
    min-height:150px;
    padding:0px;
    font:13px/22px "Helvetica Neue",Helvetica,Arial,sans-serif;
    color:#666666;
    background: #ccc;
    padding:0px;
    margin:0px auto;
}

.cred{margin-top:20px;font-size:11px;}

.galleria{ width:100%; margin:0px; padding:0px; height:100vh; background: #000 }

.galleria-fscr{
    width:20px;
    height:20px;
    position:absolute;
    bottom:0px;
    right:10px;
    background:url('../js/lib/galleria/themes/twelve/fullscreen.png');
    z-index:4;
    cursor: pointer;
    opacity: .3;
}
.galleria-fscr:hover{
    opacity:1;
}

#footer .container {
        border-top:1px solid #7b7a7a;
    margin:20px auto 20px auto;
}

#footer .address {
    margin:0px;
    padding:0px;
    padding-top:10px;
    text-align:right;
    font:16px Geogrotesque-Regular,Helvetica,Sans-Serif;
/*    text-transform: uppercase; */
    color:#7b7a7a;
}


#footer .links {
    margin:0px;
    padding:0px;
    padding-top:10px;
    font:16px Geogrotesque-Regular,Helvetica,Sans-Serif;
    text-transform: uppercase;
    color:#7b7a7a;
}


#footer .links p {
    margin:0px;
    padding:0px;
}

#footer .links ul {
    margin:0px;
    padding:0px;
    list-style:none;
}

#footer .links li {
    display:inline;
    padding:0px 10px;
    display:inline;
    text-align: left;
}

#footer .links li:first-child {
    padding-left:0px;
}

#footer .links li:last-child {
    padding-right:0px;
}

#footer .links li a {
    font:16px Geogrotesque-Regular,Helvetica,Sans-Serif;
    text-transform: uppercase;
    color:#7b7a7a;
}

form#login p.status{
    display: none;
}

@media (max-width:720px) {

	.insidebar #header .logo a img {
		height:auto;
	}


    #header .iconbar label {
        text-align:center;
        padding:0px;
    }
    
    #header .iconbar {
        position:relative;
        top:10px;
    }
    
    .smallheader #header .iconbar {
        top:-30px;
    }
    
    #menu { background:rgba(255,255,255,1); }

    #extra_nav_area {
        margin:0px auto 10px auto;
    }
    
    #footer .address {
        text-align:left;
    }
    
}
/*
.mobileFormat #header {
    position:fixed;
}
*/

body.visible_menu #header
{
    position:fixed;
}

body.visible_menu.menu_enlarge #window {
    top:0px;
}

body.visible_menu.menu_enlarge #header {
    position:relative;
}



@media (max-width:650px) {

    #header .logo a img {
        margin-top:-2px;
    }
    
    
    #header .logo a img[src*="bas"] {
        margin-top:-10px;
    }
    
    .smallheader   #header .logo a img[src*="bas"] {
        display:none;
    }
    
    .smallheader #menu,
    #menu {
        top:45px;
        width:100%;
    }
    
    #header .seo { display:none;} 
    
    .smallheader #header .container,
    #header .container { 
        height:45px;
    }
    
    .smallheader,
    #window {
        top:45px;
    }
    
    #header .iconbar label { display:none; }
    
    #header h1 {
        top:0px;
        max-width:150px;
        min-width: 0px;
        height:20px;
    }
 
    #header .iconbar {
        top:-15px;
    }
  

    #header .iconbar ul li.menu {
        padding-right:0px;
    }
    
    .smallheader #header .iconbar {
        top:-15px;
    }
	a.news { 
	top:45px;
	}

}


@media (max-width:467px) {
    #footer .links li {
        display:block;
        padding-left:0px;
        padding-right:0px;
    }
}
