/* ---------- */
/* GLOBAL CSS */
/* ---------- */

/* Works on Firefox */
* {scrollbar-width:thin;scrollbar-color:var(--site-color-scrollbar-thumb) var(--site-color-scrollbar-track);}
/* Works on Chrome, Edge, and Safari */
*::-webkit-scrollbar {width:4px;}
*::-webkit-scrollbar-track {background:var(--site-color-scrollbar-track);}
*::-webkit-scrollbar-thumb {background-color:var(--site-color-scrollbar-thumb);border-radius:10px;border:1px solid var(--site-color-scrollbar-track);}
body.onmenu 			   {overflow-y:hidden;}

/* ------- */
/* Default */
/* ------- */

/* content sections */

h1 {font-family:var(--site-font-family);}
h2 {font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:32px;line-height:38px;font-weight:700;letter-spacing:0.1px;padding:0;margin:0 0 18px 0;color:var(--site-main-color);transition:all 0.3s;text-transform:uppercase;}
h3 {font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:20px;line-height:23px;font-weight:600;letter-spacing:0.1px;padding:0;margin:20px 0 20px 0;color:var(--site-main-color);transition:all 0.3s;}
h4 {}
h5 {}
h6 
adress {}
article {}
aside {}
footer {}
header {}
main {}
nav {}
section {}

/* textual contents */

blockquote {}
dd {}
div {}
dl {}
dt {}
figcation {}
figure {}
hr {}
ul {}
ol {}
li {}
p {font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:13.5px;line-height:28px;font-weight:300;letter-spacing:0.5px;padding:0;margin:12px 0 18px 0;color:var(--site-main-color);transition:all 0.3s;}

/* inline contents */

a {font-weight:900;text-decoration:underline;color:#996565;transition:all 0.3s;}
a:hover {color:var(--site-link-hover-color);}
a:active {color:#979797;}
abbr {}
b {font-weight:900;}
br {}
cite {}
code {}
data {}
dfn {}
em {font-style:italic;}
i {font-style:italic;}
mark {}
q {}
s {}
samp {}
small {}
span {}
strong {font-weight:900;}
sub {font-variant-position:sub;}
sup {font-variant-position:super;}
time {}
u {text-decoration:underline; }
var {}
wbr {}

/* images and medias */

area {}
audio {}
img {display:block;width:100%;height:auto;object-fit:cover;}
map {}
track {}
video {}

/* embed contents */

embed {}
iframe {}
object {}
param {}
picture {}
source {}

/* scripts */

canvas {}
noscript {}
script {}

/* edition */

del {}
ins {}

/* tabs */

caption {}
col {}
colgroup {}
table {}
tbody {}
td {}
tfoot {}
th {}
thread {}
tr {}

/* forms */

button {}
datalist {}
fieldset {}
form {}
input {border-radius:0;}
input[type="search"] {-webkit-appearance:none;}
label {}
legend {}
meter {}
optgroup {}
progress {}
select {}
textarea {border-radius:0;-webkit-appearance:none;}


/* interactive elements */

details {}
dialog {}
menu {}
summary {}

/* -------- */
/* Document */
/* -------- */

body {width:100%;height:100vh;overflow:hidden;overflow-y:auto;background:#eee;}

body > .position {position:fixed;top:0;left:0;}

body {}
body > .site {position:relative;width:100%;height:auto;padding:0;box-sizing:border-box;margin-left:auto;margin-right:auto;transition:all 0.3s;} /* Contain size of page */
body > .site > .site-container {position:relative;width:100%;height:100%;}
body > .site > .site-container > .site-content {position:relative;width:100%;height:100%;}

.wrapper {}

/* ------ */
/* Header */
/* ------ */

.header {position:absolute;width:100%;height:0;top:0;left:0;margin:0;}
.header .header-container {position:relative;width:100%;height:0;}
.header .header-container .header-content {position:fixed;width:100%;height:40px;z-index:99999;transition:all 0.6s;} /* Contain size of header */

.header .header-content div.background {position:absolute;height:100%;max-height:436px;width:100%;padding:16px 0;margin-top:-72px;background:rgba(255,255,255,1);box-shadow:0 0 5px 0 rgba(0,0,0,0);transition:all 0.6s;}
	.header .header-content div.background .background-container {}
	.header .header-content div.background .background-content {}
.header .header-content div.areas {position:absolute;height:100%;width:100%;padding:16px 0;}
	.header .header-content div.areas .areas-container {position:relative;width:100%;height:100%;}
	.header .header-content div.areas .areas-content {width:100%;height:100%;}

		.header .header-content section {position:absolute;top:0;height:100%;}
			.header .header-content section .components {display:block;height:100%;}
			.header .header-content section .components .component {display:inline-block;vertical-align:middle;height:100%;}
			.header .header-content section .components .component .component-container {height:100%;}
			.header .header-content section .components .component .component-content {height:100%;display:table;}
			.header .header-content section .components .component .component-content > a {height:100%;display:table-cell;vertical-align:middle;width:auto;}

		.header .header-content section.left-area {left:4vw;transition:all 0.3s;}
			.header .header-content section.left-area .left-area-container {height:100%;}
			.header .header-content section.left-area .left-area-content {height:100%;}
			.header .header-content section.left-area .left-area-content .components {}
			.header .header-content section.left-area .left-area-content .components .component {margin-right:24px;}
			.header .header-content section.left-area .left-area-content .components .component .component-container {}
			.header .header-content section.left-area .left-area-content .components .component .component-content {}
			.header .header-content section.left-area .left-area-content .components .component .component-content > a {}
			.header .header-content section.left-area .left-area-content .components .component.hamburger-menu {}
			.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-container {}
			.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content {}
			.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a {}
			.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture {display:block;width:22px;height:22px;}
			.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg {display:block;width:100%;height:100%;}
			.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
			.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:#000;transition:all 0.6s;}
			.header .header-content section.left-area .left-area-content .components .component.brand {}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-container {}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content {}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a {}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended {display:inline-block;width:auto;height:40px;}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg {display:block;width:auto;height:100%;}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg rect,
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg path {fill:#000;transition:all 0.6s;}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture {display:none;width:33px;height:33px;}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg {display:block;width:100%;height:100%;}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg rect,
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg path {fill:#000;transition:all 0.6s;}
			.header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-text {display:none;font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:10px;line-height:12px;font-weight:400;color:#000;text-transform:uppercase;transition:all 0.6s;}

		.header .header-content section.center-area {display:none;transition:all 0.3s;}
			.header .header-content section.center-area .center-area-container {height:100%;}
			.header .header-content section.center-area .center-area-content {height:100%;}
			.header .header-content section.center-area .center-area-content .components {}
			.header .header-content section.center-area .center-area-content .components .component {display:inline-block;vertical-align:middle;margin-right:12px;margin-left:12px;height:100%;}
			.header .header-content section.center-area .center-area-content .components .component .component-container {}
			.header .header-content section.center-area .center-area-content .components .component .component-content {}
			.header .header-content section.center-area .center-area-content .components .component .component-content > a {}

		.header .header-content section.right-area {right:4vw;transition:all 0.3s;}
			.header .header-content section.right-area .right-area-container {height:100%;}
			.header .header-content section.right-area .right-area-content {height:100%;}
			.header .header-content section.right-area .right-area-content .components {}
			.header .header-content section.right-area .right-area-content .components .component {margin-left:24px;}
			.header .header-content section.right-area .right-area-content .components .component .component-container {}
			.header .header-content section.right-area .right-area-content .components .component .component-content {}
			.header .header-content section.right-area .right-area-content .components .component .component-content > a {}			
			.header .header-content section.right-area .right-area-content .components .component.nav {display:none;}
			.header .header-content section.right-area .right-area-content .components .component.nav .nav-container {}
			.header .header-content section.right-area .right-area-content .components .component.nav .nav-content {}
			.header .header-content section.right-area .right-area-content .components .component.nav .nav-content ul.categories {}
			.header .header-content section.right-area .right-area-content .components .component.nav .nav-content ul.categories li.category  {}
			.header .header-content section.right-area .right-area-content .components .component.nav .nav-content ul.categories li.category a {}
			.header .header-content section.right-area .right-area-content .components .component.lang {}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-container {}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-content {}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-content a {}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text {height:100%;display:table-cell;vertical-align:middle;}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .lang-option a {font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:15px;line-height:15px;font-weight:300;color:#000;text-transform:uppercase;text-decoration:none;transition:all 0.6s;}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .lang-option.active a {font-weight:700;}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .lang-option.inactive a {font-weight:300;}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .space {font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:15px;line-height:15px;font-weight:300;color:#000;text-transform:uppercase;transition:all 0.6s;letter-spacing:-1px;}
			.header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .separator {font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:15px;line-height:15px;font-weight:300;color:#000;text-transform:uppercase;transition:all 0.6s;}
			.header .header-content section.right-area .right-area-content .components .component.search {}
			.header .header-content section.right-area .right-area-content .components .component.search .search-container {}
			.header .header-content section.right-area .right-area-content .components .component.search .search-content {}
			.header .header-content section.right-area .right-area-content .components .component.search .search-content a {width:22px;}
			.header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture {display:inline-block;width:17px;height:17px;}
			.header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg {display:block;width:100%;height:100%;}
			.header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg rect,
			.header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg path {fill:#000;transition:all 0.6s;}
			.header .header-content section.right-area .right-area-content .components .component.hamburger-menu {}
			.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-container {display:table;}
			.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content {display:table-cell;vertical-align:middle;;}
			.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a {position:relative;display:block;width:22px;height:22px;box-sizing:border-box;}
			.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture {position:absolute;width:22px;height:22px;display:none;}
			.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg {display:block;width:100%;height:100%;}
			.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
			.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:#000;transition:all 0.6s;}
			.header .header-content section.right-area .right-area-content .components .component.header-menu {display:none;}
			.header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-container {}
			.header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content {}
			.header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list {display:table;height:100%;}
			.header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list li.header-menu-list-item {display:table-cell;vertical-align:middle;transition:all 0.3s;}
			.header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list li.header-menu-list-item > a {display:inline-block;padding:8px 12px;vertical-align:middle;font-family:var(--site-font-family);font-weight:600;font-size:14px;line-height:14px;color:#fff;text-decoration:none;transition:all 0.6s;}
			.header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list li.header-menu-list-item ul {}
			.header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list li.header-menu-list-item ul li > a {}

body.consult .header .header-container .header-content {margin-top:0;}
body.consult .header .header-content div.background {margin-top:0;box-shadow:0 0 5px 0 rgba(0,0,0,0.2);}
body.consult .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
body.consult .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:var(--site-main-color);}
body.consult .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg rect,
body.consult .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg path {fill:var(--site-main-color);}
body.consult .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg rect,
body.consult .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg path {fill:var(--site-main-color);}
body.consult .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-text {color:var(--site-main-color);}
body.consult .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
body.consult .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:var(--site-main-color);}
body.consult .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .lang-option a {color:var(--site-main-color);}
body.consult .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .space {color:var(--site-main-color);}
body.consult .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .separator {color:var(--site-main-color);}
body.consult .header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg rect,
body.consult .header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg path {fill:var(--site-main-color);}
body.consult .header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list li.header-menu-list-item > a {color:var(--site-main-color);}

body.view-project .header .header-content div.background {margin-top:-100px;}
body.view-project .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
body.view-project .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:#fff;}
body.view-project .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg rect,
body.view-project .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg path {fill:#fff;}
body.view-project .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg rect,
body.view-project .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg path {fill:#fff;}
body.view-project .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-text {color:#fff;}
body.view-project .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
body.view-project .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:#fff;}
body.view-project .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .lang-option a {color:#fff;}
body.view-project .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .space {color:#fff;}
body.view-project .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .separator {color:#fff;}
body.view-project .header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg rect,
body.view-project .header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg path {fill:#fff;}
body.view-project .header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list li.header-menu-list-item > a {color:#fff;}

/* Optional, for menu's scroll-up event */

/*
	body.consult .header .header-container .header-content {margin-top:-100px;}
	body.consult .header .header-content div.background {margin-top:-100px;}

	body.scroll-up .header .header-container .header-content {margin-top:0;}
	body.scroll-up .header .header-content div.background {margin-top:0;}
	body.scroll-up .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
	body.scroll-up .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:var(--site-main-color);}
	body.scroll-up .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg rect,
	body.scroll-up .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg path {fill:var(--site-main-color);}
	body.scroll-up .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg rect,
	body.scroll-up .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg path {fill:var(--site-main-color);}
	body.scroll-up .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-text {color:var(--site-main-color);}
	body.scroll-up .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
	body.scroll-up .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:var(--site-main-color);}
	body.scroll-up .header .header-content section.right-area .right-area-content .components .component.lang .lang-content a .lang-text .lang-option {color:var(--site-main-color);}
	body.scroll-up .header .header-content section.right-area .right-area-content .components .component.lang .lang-content a .lang-text .space {color:var(--site-main-color);}
	body.scroll-up .header .header-content section.right-area .right-area-content .components .component.lang .lang-content a .lang-text .separator {color:var(--site-main-color);}
	body.scroll-up .header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg rect,
	body.scroll-up .header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg path {fill:var(--site-main-color);}
	body.scroll-up .header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list li.header-menu-list-item > a {color:var(--site-main-color);}

	body.hamburger-menu-open.consult .header .header-container .header-content {margin-top:0;}
*/ 

/* -------------------------------- */
/* Hamburger management and content */
/* -------------------------------- */

.header .header-content .menu-panel {position:absolute;pointer-events:none;height:calc(70vh - 74px);max-height:calc(436px - 74px);top:74px;width:100%;overflow:hidden;/*overflow-y:auto;*/transition:height 0.6s;}
.header .header-content .menu-panel .menu-panel-container {position:relative;display:table;width:100%;height:100%;}
.header .header-content .menu-panel .menu-panel-content {position:relative;width:100%;height:auto;opacity:0;padding:8px 8vw;box-sizing:border-box;display:table-cell;vertical-align:middle;transition:all 0.15s 0s ease-out;}
.header .header-content .menu-panel .menu-panel-sections {position:relative;width:100%;height:auto;box-sizing:border-box;}
.header .header-content .menu-panel .menu-panel-section {display:block;width:100%;height:auto;box-sizing:border-box;}
.header .header-content .menu-panel .menu-panel-section.section-menu {border-left:1px solid rgba(0,0,0,0.25);}
.header .header-content .menu-panel .menu-panel-section.section-browse {margin-top:36px;}
.header .header-content .menu-panel .menu-panel-list {width:100%;padding:0;margin:0;box-sizing:border-box;overflow-y:hidden;}
.header .header-content .menu-panel .menu-panel-list:hover {overflow-y:auto;}
.header .header-content .menu-panel .menu-panel-list-item {padding:8px;margin-left:16px;padding-bottom:1.8vh;}
.header .header-content .menu-panel .menu-panel-list-item a {text-decoration:none;color:#000;font-family:var(--site-font-family);font-weight:300;font-size:23px;}
.header .header-content .menu-panel .component.search {display:none !important;}
.header .header-content .menu-panel .wrapper-search {position:relative;min-width:100px;}
.header .header-content .menu-panel .wrapper-search .search-icon {position:absolute;width:20px;top:12px;left:8px;}
.header .header-content .menu-panel .wrapper-search input.search {padding:2px 23px 2px 45px;outline:0;font-family:var(--site-font-family);font-weight:300;border:0;font-size:23px;background:rgba(255,255,255,0);border-bottom:1px solid rgba(0,0,0,0.25);transition:all 0.3s;box-sizing:border-box;width:100%;max-width:390px;}
.header .header-content .menu-panel .wrapper-search input.search:focus {border-bottom:1px solid rgba(0,0,0,0.9);}

.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture.open {display:block;opacity:1;pointer-events:all;}
.header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture.close {display:none;opacity:0;pointer-events:none;}
.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture.open {display:block;opacity:1;pointer-events:all;}
.header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture.close {display:none;opacity:0;pointer-events:none;}

body.hamburger-menu-open .header .header-content .menu-panel {pointer-events:all;}
body.hamburger-menu-open .header .header-content .menu-panel .menu-panel-content {opacity:1;transition:all 0.15s 0.3s ease-in;}
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture.open {display:none;opacity:0;pointer-events:none;}
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture.close {display:block;opacity:1;pointer-events:all;}
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture.open {display:none;opacity:0;pointer-events:none;}
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture.close {display:block;opacity:1;pointer-events:all;}

body.hamburger-menu-open .header .header-content div.background {margin:0;height:70vh;padding:0;box-shadow:0 0 5px 0 rgba(0,0,0,0.2);}
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg rect,
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture-extended svg path {fill:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg rect,
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-picture svg path {fill:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.left-area .left-area-content .components .component.brand .brand-content a .brand-text {color:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg rect,
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.hamburger-menu .hamburger-menu-content a .hamburger-menu-picture svg path {fill:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .lang-option a {color:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .space {color:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.lang .lang-content .lang-text .separator {color:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg rect,
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.search .search-content a .search-picture svg path {fill:var(--site-main-color);}
body.hamburger-menu-open .header .header-content section.right-area .right-area-content .components .component.header-menu .header-menu-content ul.header-menu-list li.header-menu-list-item > a {color:var(--site-main-color);}

/* ------- */
/* Wrapper */
/* ------- */

.wrapper {width:100%;height:auto;overflow:hidden;z-index:0;}

.projects {position:relative;height:100% !important;padding-top:170px;}
.projects .projects-container {height:100% !important;}
.projects .projects-container .projects-content {height:100% !important;}

.topview {position:relative;width:100%;height:100%;z-index:2;}
.topview .topview-container {height:100%;padding:0;}
.topview .topview-container .topview-content {height:100%;}

.overview {position:relative;width:100%;background:#fff;z-index:3;}
.overview .overview-container {padding:0 4vw;}
.overview .overview-container .overview-content {}

/* ------ */
/* Footer */
/* ------ */

.footer {position:relative;background:#fff;width:100%;height:auto;overflow:hidden;padding:100px 0 0 0;box-sizing:border-box;background:#F7F7F7;}
.footer .footer-container {padding:0;}
.footer .footer-content {}

.footer .footer-content p {}

.footer .footer-content .brand {position:relative;width:100%;height:auto;padding:0 4vw;box-sizing:border-box;}
.footer .footer-content .brand .brand-container {width:100%;height:auto;}
.footer .footer-content .brand .brand-content {width:100%;height:auto;}
.footer .footer-content .brand .brand-content a {display:block;position:relative;width:190px;height:auto;margin-left:auto;margin-right:auto;}
.footer .footer-content .brand .brand-content a .brand-picture {display:block;width:100%;height:auto;}
.footer .footer-content .brand .brand-content a .brand-picture svg {display:block;width:100%;height:auto;}
.footer .footer-content .brand .brand-content a .brand-picture svg path {fill:#262626;}
.footer .footer-content .brand .brand-content a .brand-text {display:none;font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:14px;line-height:22px;font-weight:400;color:#262626;text-align:center;}

.footer .footer-content .infos {position:relative;display:none;width:100%;height:auto;padding:0 4vw;box-sizing:border-box;}
.footer .footer-content .infos .infos-container {width:100%;height:auto;}
.footer .footer-content .infos .infos-content {width:100%;height:auto;}

.footer .footer-content .social-medias {position:relative;width:100%;height:auto;margin-top:58px;padding:0 4vw;box-sizing:border-box;}
.footer .footer-content .social-medias .social-medias-container {width:100%;height:auto;}
.footer .footer-content .social-medias .social-medias-content {width:100%;height:auto;}
.footer .footer-content .social-medias .social-medias-list {width:100%;height:auto;text-align:center;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item {display:inline-block;text-align:left;margin:0 5px;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item a {display:block;width:35px;height:35px;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item a .social-media {display:block;width:100%;height:100%;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item a .social-media .social-media-picture {display:block;width:100%;height:100%;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item a .social-media .social-media-picture svg {display:block;width:100%;height:auto;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item a .social-media .social-media-picture svg path {fill:#262626;transition:fill 0.3s ease-out;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item a .social-media .social-media-text {display:none;}

.footer .footer-content .social-medias .social-medias-list .social-medias-list-item.email a:hover .social-media .social-media-picture svg path {fill:#4a78e6;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item.phone a:hover .social-media .social-media-picture svg path {fill:#1bd441;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item.skype a:hover .social-media .social-media-picture svg path {fill:#00aff0;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item.linkedin a:hover .social-media .social-media-picture svg path {fill:#0a66c2;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item.facebook a:hover .social-media .social-media-picture svg path {fill:#1877f2;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item.twitter a:hover .social-media .social-media-picture svg path {fill:#1da1f2;}
.footer .footer-content .social-medias .social-medias-list .social-medias-list-item.youtube a:hover .social-media .social-media-picture svg path {fill:#ff0000;}

.mentions  {position:relative;width:100%;height:auto;margin-top:64px;padding:12px 4vw;padding-bottom:calc(12px + env(safe-area-inset-bottom));box-sizing:border-box;background:#F1F1F1;}
.mentions .mentions-container {width:100%;height:auto;display:table;}
.mentions .mentions-content {height:auto;text-align:center;display:table-cell;vertical-align:middle;}
.mentions .mentions-content .mentions-links {display:block;text-align:center;margin:0 0 32px 0;}
.mentions .mentions-content .mentions-links-list {display:block;}
.mentions .mentions-content .mentions-links-list-item {display:block;margin:0 0 8px 0;}
.mentions .mentions-content .mentions-links-list-item .text {display:block;padding:0;margin:0;font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:13px;line-height:20px;font-weight:400;color:rgba(20, 20, 20, 1);}
.mentions .mentions-content .mentions-links-list-item .text a {display:inline;padding:2px 0px;font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:13px;line-height:20px;font-weight:400;color:rgba(20, 20, 20, 1);text-decoration:none;border-bottom:1px dotted transparent;transition:all 0.3s;}
.mentions .mentions-content .mentions-links-list-item .text a:hover {color:rgba(20, 20, 20, 1);border-bottom:1px dotted rgba(20, 20, 20, 1);}
.mentions .mentions-content .mentions-links-list-item .text a:active {color:rgba(20, 20, 20, 0.75);border-bottom:1px dotted rgba(20, 20, 20, 0.75);}
.mentions .mentions-content .mentions-infos {display:block;text-align:center;margin:0;}
.mentions .mentions-content .mentions-infos .credits {display:block;padding-left:12px;}
.mentions .mentions-content .mentions-infos .credits .text {display:block;padding:0;margin:0;font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:13px;line-height:20px;font-weight:400;color:rgba(20, 20, 20, 1);}
.mentions .mentions-content .mentions-infos .credits .text a {display:inline;padding:4px 0;font-family:var(--site-font-family);font-feature-settings:var(--site-font-feature-settings);font-size:13px;line-height:20px;font-weight:400;color:rgba(20, 20, 20, 1);text-decoration:none;transition:all 0.3s;}
.mentions .mentions-content .mentions-infos .credits .text a:hover {color:rgba(20, 20, 20, 1);}
.mentions .mentions-content .mentions-infos .credits .text a:active {color:rgba(20, 20, 20, 0.75);}

/* ------- */
/* Methods */
/* ------- */

.hidden {opacity:0;overflow:hidden;pointer-events:none;}
.not-display {display:none;}

/* ----------- */
/* New section */
/* ----------- */



/* ------------- */
/* ------------- */
/* ------------- */
/* Media queries */
/* ------------- */
/* ------------- */
/* ------------- */

/* ------ */
/* Header */
/* ------ */

@media screen and (min-width:1200px) {
	.header .header-content section.left-area {left:8vw;}
	.header .header-content section.right-area {right:8vw;}
}

/* ------- */
/* Wrapper */
/* ------- */

@media screen and (min-width:1200px) {
	.overview .overview-container {padding:0 8vw;}
}

/* ------ */
/* Footer */
/* ------ */

@media screen and (min-width:1200px) {
	.mentions .mentions-content .mentions-links {display:inline-block;text-align:left;vertical-align:top;margin:0;}
	.mentions .mentions-content .mentions-links-list-item {display:inline-block;vertical-align:top;margin:0;}
	.mentions .mentions-content .mentions-links-list-item .text:after {content:"•";padding-left:12px;padding-right:12px;}
	.mentions .mentions-content .mentions-links-list-item:last-child .text:after {content:"";}
	.mentions .mentions-content .mentions-infos {display:inline-block;text-align:left;vertical-align:top;margin:0;}
	.mentions .mentions-content .mentions-infos .credits {display:inline-block;}
}

@media screen and (min-width:640px) and (max-width:1200px) {
	.mentions .mentions-content .mentions-links {margin:0 0 24px 0;}
	.mentions .mentions-content .mentions-links-list-item {display:inline-block;vertical-align:top;margin:0;}
	.mentions .mentions-content .mentions-links-list-item .text:after {content:"•";padding-left:12px;padding-right:12px;}
	.mentions .mentions-content .mentions-links-list-item:last-child .text:after {content:"";}
}

@media screen and (min-width:640px) {
	.header .header-content div.background {max-height:400px;}
	.header .header-content .menu-panel {max-height:calc(400px - 74px);}

	.header .header-content .menu-panel .menu-panel-sections {}
	.header .header-content .menu-panel .menu-panel-section {display:inline-block;width:50%;height:auto;vertical-align:top;padding-right:16px;box-sizing:border-box;}
	.header .header-content .menu-panel .menu-panel-section.section-menu {}
	.header .header-content .menu-panel .menu-panel-section.section-browse {margin-top:0;}
}

/* ---------- */
/* Error code */
/* ---------- */

.error-code-container {position:relative;font-family:var(--site-font-family);text-align:center;background:#fff;width:100%;height:100%;}
.error-code-container .error-code-content {width:100%;height:100%;display:table;}
.error-code-container .error-code {width:100%;height:100%;display:table-cell;vertical-align:middle;overflow:hidden;}
.error-code-container .error-code h1 {color:#333;font-weight:700;font-size:56px;}
.error-code-container .error-code p {color:#333;font-weight:400;font-size:18px;}