*,
*:before,
*:after {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
    }
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
header, footer, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    position: relative;
    margin: 0px;
    padding: 0px;
    font-size: 100%;
    border: 0px;
    outline: 0px;
    }
article, aside, details, figcaption, figure, 
footer, hgroup, menu, nav, section, img, video {
    display: block;
    box-sizing: border-box;
    }
input {
    border: none;
    outline: none;
    -webkit-appearance: none;
    }
html {
    min-height: 100vh;
    -webkit-tap-highlight-color: transparent;
    }
html::-webkit-scrollbar {
    display: none;
    }
body {
    background: var(--white);
    color: var(--black_25);
    font: 500 14px/18px 'Exo', Arial, sans-serif;
    }
a {
    text-decoration: none;
    color: var(--black);
    display: block;
    }
img {
    width: 100%;
    -drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    }
/* MEDIA */
@media screen and (max-width: 1279px) {
    html {
        min-height: initial;
        }
    }
@media screen and (max-width: 767px) and (orientation: landscape) {
    body {
        overflow: hidden;
        height: 100%;
        }
    }

/* VARIABLES */
/* VARIABLES */
/* VARIABLES */
:root {
    /* MENU */
    --menu_largeur: 100vw;
    --menu_largeur_middle: 0px;
    --menu_height: 300px;
    /* GRID */
    --grid: 1200px;
    --grid_middle: calc(50% - 600px);
    /* GRID MARGE */
    --grid_entry_marge: 40px;
    --grid_entry_marge_neg: -40px;
    /* CONTENT */
    --grid_content: 880px;
    --grid_content_middle: calc(50% - 440px);
    --content_h1: 20px/20px 'Bebas Neue', Arial, sans-serif;
    --content_h1_spacing: 1px;
    --content_h2: 14px/18px 'Bebas Neue', Arial, sans-serif;
    --content_h2_spacing: .5px;
    --content_text: 100 20px/30px 'Exo', Arial, sans-serif;
    --content_text_small: 700 12px/16px 'Exo', Arial, sans-serif;
    --content_text_big: 100 30px/40px 'Exo', Arial, sans-serif;
    /* MISC */
    --story_icon: 40px;
    --story_icon_space: 4px;
    --marge: 160px;
    --font_vehel: 26px/26px 'Bebas Neue', Arial, sans-serif;
    --font_vehel_space: 2px;
    /* ICONS */
    --icon_size: 12px;
    /* COLOR */
    --black: rgba(0,0,0,1);
    --black_075: rgba(0,0,0,.075);
    --black_01: rgba(0,0,0,.1);
    --black_25: rgba(0,0,0,.25);
    --black_50: rgba(0,0,0,.5);
    --white: rgba(255,255,255,1);
    --white_25: rgba(255,255,255,.25);
    --white_50: rgba(255,255,255,.5);
    }
/* MEDIA */
@media screen and (max-width: 2559px) {
    :root {
        /* MENU */
        --menu_height: 200px;
        /* GRID */
        --grid: 1120px;
        --grid_middle: calc(50% - 560px);
        /* GRID MARGE */
        --grid_entry_marge: 32px;
        --grid_entry_marge_neg: -32px;
        /* CONTENT */
        --grid_content: 840px;
        --grid_content_middle: calc(50% - 420px);
        --content_text: 100 18px/28px 'Exo', Arial, sans-serif;
        --content_text_big: 100 24px/32px 'Exo', Arial, sans-serif;
        /* MISC */
        --story_icon: 34px;
        --marge: 140px;
        }
    }
@media screen and (max-width: 1919px) {
    :root {
        /* GRID */
        --grid: 980px;
        --grid_middle: calc(50% - 490px);
        /* GRID MARGE */
        --grid_entry_marge: 12px;
        --grid_entry_marge_neg: -12px;
        /* CONTENT */
        --grid_content: 780px;
        --grid_content_middle: calc(50% - 390px);
        /* MISC */
        --marge: 100px;
        }
    }
@media screen and (max-width: 1499px) {
    :root {
        /* GRID */
        --grid: 860px;
        --grid_middle: calc(50% - 430px);
        /* CONTENT */
        --grid_content: 760px;
        --grid_content_middle: calc(50% - 330px);
        }
    }
@media screen and (max-width: 1279px) {
    :root {
        /* MENU */
        --menu_height: 140px;
        /* GRID */
        --grid: 660px;
        --grid_middle: calc(50% - 330px);
        /* GRID MARGE */
        --grid_entry_marge: 6px;
        --grid_entry_marge_neg: -6px;
        /* CONTENT */
        --grid_content: 660px;
        --grid_content_middle: calc(50% - 330px);
        --content_text: 300 16px/22px 'Exo', Arial, sans-serif;
        --content_text_big: 700 16px/22px 'Exo', Arial, sans-serif;
        /* MISC */
        --marge: 80px;
        }
    }
@media screen and (max-width: 1023px) {
    :root {
        /* MENU */
        --menu_height: 180px;
        /* GRID */
        --grid: 100vw;
        --grid_middle: 0px;
        /* GRID MARGE */
        --grid_entry_marge: 1px;
        --grid_entry_marge_neg: -1px;
        /* CONTENT */
        --grid_content: 100vw;
        --grid_content_middle: 0px;
        /* MISC */
        --marge: 80px;
        --font_vehel: 18px/18px 'Bebas Neue', Arial, sans-serif;
        --font_vehel_space: 1px;
        }
    }
@media screen and (max-width: 767px) {
    :root { 
        /* MENU */
        --menu_height: 120px;
        /* CONTENT */
        --content_h1: 18px/18px 'Bebas Neue', Arial, sans-serif;
        --content_h2: 12px/16px 'Bebas Neue', Arial, sans-serif;
        --content_text: 500 14px/20px 'Exo', Arial, sans-serif;
        --content_text_small: 700 10px/14px 'Exo', Arial, sans-serif;
        --content_text_big: 700 14px/20px 'Exo', Arial, sans-serif;
        /* MISC */
        --marge: 40px;
        }
    }

/* ORIENATION */
/* ORIENATION */
/* ORIENATION */
#orientation {
    z-index: 5;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: var(--white);
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    }
#orientation #vehel_ {
    letter-spacing: 4px;
    font: 34px/34px 'Bebas Neue', Arial, sans-serif;
    color: var(--black);
    }
#orientation .title {
    margin: 5px 0px 0px 0px;
    letter-spacing: 1px;
    font: 12px/12px 'Bebas Neue', Arial, sans-serif;
    color: var(--black_25);
    }
/* MEDIA */
@media screen and (max-width: 767px) and (orientation: landscape) {
    .device #orientation {
        display: flex;
        }
    }

/* BASICS */
/* BASICS */
/* BASICS */
.flex {
    flex: 1;
    }
.noscroll {
    overflow: hidden;
    height: 100%;
    }
.onlymobile {
    display: none !important;
    }
.transition {
    transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    }
.transitionBis {
    transition: transform 0.5s ease-in-out, filter 0.5s ease-in-out;
    -webkit-transition: transform 0.5s ease-in-out, filter 0.5s ease-in-out;
    -moz-transition: transform 0.5s ease-in-out, filter 0.5s ease-in-out;
    -o-transition: transform 0.5s ease-in-out, filter 0.5s ease-in-out;
    -ms-transition: transform 0.5s ease-in-out, filter 0.5s ease-in-out;
    }
/* DISABLE */
.disable .transition,
.disable .transitionBis {
    transition: none;
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    -ms-transition: none;
    }
/* MEDIA */
@media screen and (max-width: 1279px) {
    .onlymobile {
        display: block !important;
        }
    .nomobile {
        display: none !important;
        }
    }

/* TWELVE */
/* TWELVE */
/* TWELVE */
#nine {
    width: 100vw;
    left: 0px;
    overflow: hidden;
    }

/* HEADER SCROLL */
/* HEADER SCROLL */
/* HEADER SCROLL */
#header_scroll {
    z-index: 4;
    position: fixed;
    width: 100vw;
    height: 5px;
    top: 0px;
    left: 0px;
    background: var(--black_075);
    pointer-events: none;
    }
#header_scroll .indicator {
    position: absolute;
    width: 0px;
    height: 100%;
    background: var(--black_01);
    }
/* MEDIA */
@media screen and (max-width: 1279px) {
    #header_scroll {
        display: none;
        }
    }

/* BACKGROUND MENU */
/* BACKGROUND MENU */
/* BACKGROUND MENU */
#backgroundMenu {
    z-index: 5;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0px;
    left: 0px;
    pointer-events: none;
    }
#backgroundMenu #panel {
    z-index: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    }
#backgroundMenu #menu_popup {
    z-index: 2;
    position: absolute;
    width: 800px;
    height: 100vh;
    top: 0px;
    right: calc(50% - 500px);
    padding: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    cursor: auto;
    opacity: 0;
    }
#backgroundMenu #menu_popup .button {
    z-index: 3;
    position: fixed;
    width: 100px;
    height: 100px;
    top: 0px;
    right: -10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    }
#backgroundMenu #menu_popup .button img {
    width: calc(var(--icon_size) - 2px);
    }
/* OPEN */
#backgroundMenu.open {
    pointer-events: auto;
    cursor: zoom-out;
    }
#backgroundMenu.open #panel {
    background: var(--white);
    }
#backgroundMenu.open #panel:hover {
    background: rgba(255,255,255,.97);
    }
#backgroundMenu.open #menu_popup {
    right: calc(50% - 400px);
    opacity: 1;
    }
#backgroundMenu.open #menu_popup .button {
    right: 0px;
    opacity: 1;
    }
/* RUBRIC */
#backgroundMenu #menu_popup #composition .rubric,
#backgroundMenu #menu_popup #composition .rubric a {
    width: 100%;
    }
#backgroundMenu #menu_popup #composition .rubric .link {
    width: 100%;
    letter-spacing: 1px;
    font: 14px/30px 'Bebas Neue', Arial, sans-serif;
    color: var(--black_25);
    display: flex;
    align-items: center;
    justify-content: space-between;
    }
#backgroundMenu #menu_popup #composition .rubric .link.big {
    font: 16px/24px 'Bebas Neue', Arial, sans-serif;
    }
#backgroundMenu #menu_popup #composition .rubric .link.big.active {
    align-items: flex-start;
    }
#backgroundMenu #menu_popup #composition .rubric .link.big.huge {
    margin: 0px 0px 10px -1px;
    font: 34px/40px 'Bebas Neue', Arial, sans-serif;
    }
#backgroundMenu #menu_popup #composition .rubric .link.sep {
    margin: 20px 0px 0px 0px;
    }
#backgroundMenu #menu_popup #composition .rubric .link:hover,
#backgroundMenu #menu_popup #composition .rubric .link.active {
    color: var(--black);
    }
#backgroundMenu #menu_popup #composition .rubric .link span {
    font: 300 14px/30px 'Exo', Arial, sans-serif;
    }
#backgroundMenu #menu_popup #composition .rubric .separation {
    width: 100%;
    height: 1px;
    margin: 40px 0px;
    background: var(--black_075);
    }
/* FOOTER */
#backgroundMenu #menu_popup #footer {
    width: max-content;
    margin: 40px 0px 0px 0px;
    }
#backgroundMenu #menu_popup #footer .mention {
    margin: 0px 0px 5px 0px;
    letter-spacing: 2px;
    color: var(--black_25);
    font: 12px/12px 'Bebas Neue', Arial, sans-serif;
    }
#backgroundMenu #menu_popup #footer .mention a {
    color: var(--black);
    display: inline-block;
    }
#backgroundMenu #menu_popup #footer .mention a:hover {
    color: var(--black_25);
    }
#backgroundMenu #menu_popup #footer .social {
    width: 90px;
    margin: 6px 0px -9px -9px;
    display: flex;
    justify-content: space-between;
    }
#backgroundMenu #menu_popup #footer .social .element {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    }
#backgroundMenu #menu_popup #footer .social .element img {
    width: var(--icon_size);
    opacity: 1;
    }
#backgroundMenu #menu_popup #footer .social .element:hover img {
    opacity: .25;
    }
/* MEDIA */
@media screen and (max-width: 1279px) {
    #backgroundMenu #menu_popup {
        width: 100vw;
        height: 100vh;
        top: 0px;
        right: -25%;
        padding: 0px 20vw;
        background: none;
        box-shadow: 0px 0px 0px 0px var(--black_25);
        }
    #backgroundMenu.open #menu_popup {
        right: 0px;
        }
    #backgroundMenu #menu_popup #composition .rubric .link.sepSmall {
        margin: 10px 0px 0px 0px;
        }
    }
@media screen and (max-width: 1023px) {
    #backgroundMenu #menu_popup {
        padding: 80px;
        }
    }
@media screen and (max-width: 767px) {
    #backgroundMenu #menu_popup {
        padding: 40px;
        }
    #backgroundMenu #menu_popup #composition .rubric .link {
        font: 14px/24px 'Bebas Neue', Arial, sans-serif;
        }
    #backgroundMenu #menu_popup #composition .rubric .link span {
        font: 300 14px/24px 'Exo', Arial, sans-serif;
        }
    }

/* SCREENSAVER */
/* SCREENSAVER */
/* SCREENSAVER */
#screensaver {
    z-index: 4;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: -100vh;
    left: 0px;
    background: var(--white);
    flex-direction: column;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    }
#screensaver.open {
    top: 0px;
    opacity: 1;
    }
#screensaver.invert {
    filter: invert(1);
    }
#screensaver #logo {
    width: 160px;
    margin: 160px 0px 20px 0px;
    letter-spacing: 2px;
    font: 40px/40px 'Bebas Neue', Arial, sans-serif;
    color: rgba(0,0,0,1);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    }
#screensaver #logo img {
    width: 100%;
    }
#screensaver #message {
    width: 320px;
    color: rgba(0,0,0,.25);
    letter-spacing: 2px;
    font: 12px/12px 'Bebas Neue', Arial, sans-serif;
    text-align: center;
    }
#screensaver #social {
    margin: 100px;
    display: flex;
    align-items: center;
    }
#screensaver #social .social {
    width: calc(var(--icon_size) * 1.3);
    margin: 0px 7px;
    transition: opacity 0.5s ease-in-out;
    }
#screensaver #social .social:hover {
    opacity: .5;
    }
/* DEVICE */
.device #screensaver {
    display: none;
    }
@media screen and (max-width: 1023px) {
    #screensaver #logo {
        width: 115px;
        }
    }

/* HEADER */
/* HEADER */
/* HEADER */
header {
    z-index: 3;
    position: fixed;
    top: calc(var(--marge) + 60px - 12px);
    right: var(--marge);
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    }
header #trait {
    position: fixed;
    width: 40px;
    height: 3px;
    bottom: var(--marge);
    left: var(--marge);
    background: var(--black);
    border-radius: 100px;
    }
/* MEDIA */
@media screen and (max-width: 1023px) {
    header {
        width: var(--menu_largeur); 
        height: var(--menu_height);
        top: initial;
        left: var(--menu_largeur_middle);
        right: initial;
        padding: 0px var(--marge);
        background: var(--white);
        box-shadow: 0px 1px 0px 0px var(--black_075);
        flex-direction: initial;
        align-items: center;
        }
    header #trait {
        display: none;
        }
    }

/* HEADER CONTAINER */
/* HEADER CONTAINER */
/* HEADER CONTAINER */
header #header_container {
    width: 100%;
    }
header #header_container .vehel {
    position: fixed;
    width: 40px;
    left: var(--marge);
    bottom: calc(var(--marge) + 40px);
    }
header #header_container .vehel img {
    width: 100%;
    }
header #header_container .button_menu {
    position: fixed;
    width: 40px;
    height: 40px;
    top: var(--marge);
    right: var(--marge);
    margin: -12px -12px 0px 0px;
    }
header #header_container .button_menu .button {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    }
header #header_container .button_menu .button img {
    width: var(--icon_size);
    }
header #header_container .button_menu:hover .button img {
    opacity: .5;
    }
/* SPACE */
header #header_container .space {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    }
header #header_container .space .trait {
    width: 1px;
    height: calc(50vh - 84px - var(--marge));
    min-height: var(--marge);
    background: var(--black_01);
    }
header #header_container .space #gotop_alt {
    width: 40px;
    height: 40px;
    margin: 10px -20px 0px 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    }
header #header_container .space #gotop_alt .gotop img {
    width: var(--icon_size);
    cursor: pointer;
    opacity: 1;
    }
header #header_container .space #gotop_alt .gotop:hover img {
    opacity: .5;
    }
/* DEVICE */
.device header #header_container .button_menu:hover .button img {
    opacity: 1;
    }
/* MEDIA */
@media screen and (max-width: 1919px) and (max-height: 850px) {
    header #header_container .space .trait {
        height: calc(100vh - 185px - var(--marge));
        }
    }
@media screen and (max-width: 1499px) {
    header #header_container .space .trait {
        height: calc(50vh - 84px - var(--marge));
        }
    }
@media screen and (max-width: 1023px) {
    header #header_container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        }
    header #header_container .vehel {
        position: relative;
        width: 34px;
        left: initial;
        bottom: initial;
        }
    header #header_container .button_menu {
        position: relative;
        top: initial;
        right: initial;
        }
    header #header_container .flex,
    header #header_container .space {
        display: none;
        }
    }

/* STORY */
/* STORY */
/* STORY */
#story {
    margin: 20px calc(var(--story_icon) / 2 * -1) 0px 0px;
    }
#story.hidden {
    margin: 40px calc(var(--story_icon) / 2 * -1) 0px 0px;
    pointer-events: none;
    opacity: 0;
    }
#story .content .name,
#story .content .stories {
    width: var(--story_icon);
    height: var(--story_icon);
    margin: 0px 0px calc(var(--story_icon) / 2) 0px;
    background: var(--white) !important;
    border-radius: 100px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    }
#story .content .stories .new {
    z-index: 1;
    position: absolute;
    width: 5px;
    height: 5px;
    margin: 80px 0px 0px 0px;
    background: var(--black);
    border-radius: 100px;
    display: none;
    }
#story .content .stories .total {
    z-index: 1;
    position: absolute;
    width: var(--story_icon);
    height: var(--story_icon);
    color: var(--white);
    letter-spacing: 1px;
    text-align: center;
    font: 12px/12px 'Bebas Neue', Arial, sans-serif;
    display: none;
    align-items: center;
    justify-content: center;
    }
#story .content .stories .circle {
    z-index: 1;
    position: absolute;
    width: var(--story_icon);
    height: var(--story_icon);
    box-shadow: 0px 0px 0px 1.5px var(--black_25) !important;
    border-radius: 100px;
    }
#story .content .stories.old .circle {
    box-shadow: 0px 0px 0px 1.5px var(--black_075) !important;
    }
#story .content .stories .image {
    width: calc(var(--story_icon) - var(--story_icon_space));
    height: calc(var(--story_icon) - var(--story_icon_space));
    background: var(--black_01);
    border-radius: 100px;
    overflow: hidden;
    }
#story .content .stories .image img {
    opacity: 0;
    }
#story .content .stories:hover .image img {
    opacity: 1;
    }
#story .content .stories .label {
    z-index: 1;
    position: absolute;
    width: 120px;
    margin: 0px 0px 0px -200px;
    color: var(--black);
    letter-spacing: 1px;
    text-align: right;
    font: 10px/10px 'Bebas Neue', Arial, sans-serif;
    opacity: 0;
    }
#story .content .stories:hover .label {
    margin: 0px 0px 0px -180px;
    opacity: 1;
    }
/* NAME */
#story .content .name {
    overflow: visible;
    cursor: auto;
    }
#story .content .name.reset {
    cursor: pointer;
    }
#story .content .name .label {
    position: absolute;
    width: 120px;
    color: var(--black);
    letter-spacing: 1px;
    text-align: center;
    font: 12px/12px 'Bebas Neue', Arial, sans-serif;
    }
/* DEVICE */
.device #story {
    display: none;
    }
/* MEDIA */
@media screen and (max-height: 520px) {
    #story {
        display: none;
        }
    }
@media screen and (max-width: 1919px) {
    #story {
        margin: -257px calc(var(--story_icon) / 2 * -1 + 2px) 0px 0px;
        }
    #story.hidden {
        margin: -257px calc(var(--story_icon) / 2 * -1 + 2px) 0px 0px;
        pointer-events: auto;
        opacity: 1;
        }
    #story .content .name,
    #story .content .stories {
        width: auto;
        height: auto;
        margin: 0px 0px 20px 0px;
        padding: 10px;
        }
    #story .content .stories .new ,
    #story .content .stories .circle,
    #story .content .stories .image {
        display: none;
        }
    #story .content .stories .label {
        position: relative;
        width: auto;
        margin: 0px;
        text-align: left;
        writing-mode: sideways-lr;
        opacity: .25;
        }
    #story .content .stories:hover .label {
        margin: 0px;
        opacity: 1;
        }
    /* NAME */
    #story .content .name.reset {
        position: fixed;
        width: calc(var(--marge) / 2);
        height: calc(var(--marge) / 2);
        right: 0px;
        bottom: 0px;
        margin: 0px;
        }
    }
@media screen and (max-width: 1279px) {
    #story {
        display: none;
        }
    }

/* NAVIGATION */
/* NAVIGATION */
/* NAVIGATION */
#navigation {
    z-index: 100;
    position: fixed;
    top: 200px;
    left: 80px;
    display: none;
    }

/* FOOTER */
/* FOOTER */
/* FOOTER */
footer {
    width: var(--grid);
    left: var(--grid_middle);
    margin: var(--marge) 0px var(--marge) 0px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    }
footer .bloc {
    width: 120px;
    height: 3px;
    margin: 0px 0px 40px 0px;
    background: var(--black);
    border-radius: 4px;
    }
footer .mention {
    letter-spacing: 1px;
    color: var(--black_50);
    font: 12px/12px 'Bebas Neue', Arial, sans-serif;
    }
footer .links {
    margin: 6px -9px -9px 0px;
    display: flex;
    align-items: center;
    }
footer .social {
    width: 90px;
    display: flex;
    justify-content: space-between;
    }
footer .social .element {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    }
footer .social .element img {
    width: var(--icon_size);
    opacity: 1;
    }
footer .social .element:hover img {
    opacity: .25;
    }
.content footer {
    width: var(--grid_content);
    left: var(--grid_content_middle);
    }
/* MEDIA */
@media screen and (max-width: 1023px) {
    footer {
        width: calc(var(--grid) - var(--marge) - var(--marge));
        margin: var(--marge) 0px var(--marge) var(--marge);
        box-shadow: 0px -1px 0px 0px var(--black_075);
        }
    .content footer {
        width: calc(var(--grid_content) - var(--marge) - var(--marge));
        margin: var(--marge) 0px var(--marge) var(--marge);
        }
    footer .bloc {
        margin: -2px 0px var(--marge) 0px;
        }
    }

/* SCROLLER */
/* SCROLLER */
/* SCROLLER */
#scroller {
    width: 100vw;
    margin:
        0px
        0px
        var(--grid_entry_marge_neg)
        0px;
    }
#scroller.content {
    width: var(--grid_content);
    left: var(--grid_content_middle);
    margin: var(--marge) 0px 0px 0px
    }
@media screen and (max-width: 1023px) {
    #scroller.content {
        margin: 0px;
        }
    }

/* GRID */
/* GRID */
/* GRID */
#scroller #grid {
    width: var(--grid);
    left: var(--grid_middle);
    margin:
        var(--marge)
        0px
        var(--grid_entry_marge_neg)
        0px;
    }
#scroller #grid.content {
    width: 100%;
    left: 0px;
    margin: 0px;
    }
/* MEDIA */
@media screen and (max-width: 1023px) {
    #scroller #grid,
    #scroller #grid.flow,
    #scroller #grid.singe,
    #scroller #grid.category,
    #scroller #grid.summary {
        margin:
            var(--menu_height)
            0px
            var(--grid_entry_marge_neg)
            0px;
        }
    }

/* GRID PANEL */
/* GRID PANEL */
/* GRID PANEL */
#scroller #grid .panel {
    z-index: 1;
    width: 100%;
    margin: var(--marge) 0px 0px 0px;
    padding: var(--marge);
    background: none !important;
    display: flex;
    align-items: center;
    }
#scroller #grid .panel .trait {
    position: absolute;
    width: 120px;
    height: 3px;
    top: 0px;
    background: var(--black);
    border-radius: 100px;
    }
#scroller #grid .panel .content {
    width: 100%;
    }
#scroller #grid .panel .content h1 {
    margin: 0px 0px 10px 0px;
    color: var(--black);
    letter-spacing: var(--content_h1_spacing);
    font: var(--content_h1);
    display: flex;
    align-items: center;
    }
#scroller #grid .panel .content h1 span {
    width: 9px;
    height: 3px;
    margin: 0px 10px 0px 10px;
    background: red;
    border-radius: 100px;
    display: block;
    }
#scroller #grid .panel .content h2 {
    width: 400px;
    max-width: 80%;
    color: var(--black_25);
    letter-spacing: var(--content_h2_spacing);
    font: var(--content_h2);
    }
/* CAT NAVIGATION */
#scroller #grid .panel .content #cat_navigation {
    position: absolute;
    width: 72px;
    margin: 20px 0px 0px 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: auto;
    }
#scroller #grid .panel .content #cat_navigation .item {
    letter-spacing: 1px;
    font: 14px/14px 'Bebas Neue', Arial, sans-serif;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    }
#scroller #grid .panel .content #cat_navigation .item a {
    color: var(--black_25);
    display: flex;
    align-items: center;
    }
#scroller #grid .panel .content #cat_navigation .item:hover a {
    color: var(--black);
    }
#scroller #grid .panel .content #cat_navigation .item .label {
    width: 120px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: none;
    }
#scroller #grid .panel .content #cat_navigation .item img {
    width: calc(var(--icon_size) + 4px);
    margin: 0px 0px 0px 20px;
    opacity: 1;
    }
#scroller #grid .panel .content #cat_navigation .item:hover img {
    opacity: .5;
    }
#scroller #grid .panel .content #cat_navigation .item.previous img {
    margin: 0px 20px 0px 0px;
    transform: rotate(180deg);
    }
/* NEXT */
#scroller #grid .panel .content #cat_navigation .item.next {
    justify-content: flex-end;
    }
#scroller #grid .panel .content #cat_navigation .item.next .label {
    text-align: right;
    }
/* MEDIA */
@media screen and (max-width: 1919px) {
    #scroller #grid .panel {
        padding: calc(var(--marge) * 1.5) var(--marge);
        }
    }
@media screen and (max-width: 1499px) {
    #scroller #grid .panel {
        padding: var(--marge);
        }
    }
@media screen and (max-width: 1023px) {
    #scroller #grid .panel {
        margin: var(--menu_height) 0px 0px 0px;
        padding: calc(var(--marge) * 2) var(--marge);
        display: flex;
        }
    }

/* GRID ENTRY */
/* GRID ENTRY */
/* GRID ENTRY */
#scroller #grid .entry {
    width: 100%;
    margin: 0px 0px var(--grid_entry_marge) 0px;
    overflow: hidden;
    cursor: pointer;
    aspect-ratio: auto 5/7;
    }
#scroller #grid .entry.ajax {
    opacity: 0;
    }
#scroller #grid .entry.single {
    cursor: auto;
    }
#scroller #grid.single .entry.horizontal {
    aspect-ratio: auto 7/5;
    }
/* VARIANT */
#scroller #grid.category .entry {
    margin: 0px 0px var(--grid_entry_marge) 0px
    }
/* MEDIA */
@media screen and (max-width: 1279px) {
    #scroller #grid.category .entry {
        cursor: auto;
        }
    }
@media screen and (max-width: 1023px) {
    #scroller #grid.flow .entry.mobile {
        display: none;
        }
    }

/* GRID ENTRY SEP */
/* GRID ENTRY SEP */
/* GRID ENTRY SEP */
#scroller #grid .sep {
    z-index: 1;
    width: 6px;
    height: 6px;
    margin: 0px 0px var(--grid_entry_marge) calc(50% - 3px);
    background: var(--black) !important;
    box-shadow: 0px 0px 0px 2px var(--white);
    border-radius: 100px;
    }
/* MEDIA */
@media screen and (max-width: 1279px) {
    #scroller #grid .sep {
        display: none;
        }
    }

/* GRID INFO */
/* GRID INFO */
/* GRID INFO */
#scroller #grid .entry .infos {
    z-index: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    padding: var(--marge);
    background: none !important;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    pointer-events: none;
    opacity: 0;
    }
#scroller #grid .entry:hover .infos {
    opacity: 1;
    }
#scroller #grid .entry .infos .number {
    margin: 0px 0px 20px 0px;
    letter-spacing: 2px;
    font: 16px/16px 'Bebas Neue', Arial, sans-serif;
    color: var(--white);
    }
#scroller #grid .entry .infos .number span {
    margin: 0px 0px 0px 3px;
    font: 16px/16px 'Bebas Neue', Arial, sans-serif;
    opacity: .5;
    }
#scroller #grid .entry .infos .bloc {
    z-index: 1;
    width: 50%;
    padding: 20px 0px 0px 0px;
    box-shadow: inset 0px 1px 0px 0px var(--white_25);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    pointer-events: none;
    }
#scroller #grid .entry .infos .bloc .bullet {
    position: absolute;
    width: 0px;
    height: 1px;
    margin: -20px 0px 0px 0px;
    background: var(--white) !important;
    }
#scroller #grid .entry:hover .infos .bloc .bullet {
    width: var(--marge);
    }
#scroller #grid .entry .infos .bloc h3 {
    letter-spacing: 3px;
    font: 12px/12px 'Bebas Neue', Arial, sans-serif;
    color: var(--white);
    }
#scroller #grid .entry .infos .bloc h4 {
    display: none;
    }
/* MEDIA */
@media screen and (max-width: 2559px) {
    #scroller #grid .entry .infos .number {
        display: none;
        }
    }
@media screen and (max-width: 1919px) {
    #scroller #grid .entry .infos .bloc h3 {
        font: 10px/10px 'Bebas Neue', Arial, sans-serif;
        }
    }
@media screen and (max-width: 1279px) {
    #scroller #grid .entry .infos {
        display: none;
        }
    #scroller #grid .entry .infos .number {
        margin: 0px 0px 5px 0px;
        letter-spacing: 2px;
        font: 12px/12px 'Bebas Neue', Arial, sans-serif;
        }
    #scroller #grid .entry .infos .bloc {
        padding: 0px;
        box-shadow: 0px 0px 0px 0px var(--white_25);
        }
    #scroller #grid .entry .infos .bloc h3 {
        opacity: .5;
        }
    #scroller #grid .entry .infos .bloc .bullet {
        display: none;
        }
    }

/* GRID IMAGE */
/* GRID IMAGE */
/* GRID IMAGE */
#scroller #grid .entry .image {
    width: 100%;
    overflow: hidden;
    }
#scroller #grid .entry .image img {
    opacity: 0;
    }
#scroller #grid .entry:hover .image .zoom {
    filter: grayscale(0%) contrast(100%);
    transform: scale(1.0075);
    }
#scroller #grid .entry.single:hover .image .zoom {
    filter: grayscale(0%) contrast(100%);
    transform: scale(1);
    }
/* DEVICE */
.device #scroller #grid .entry:hover .image .zoom {
    filter: grayscale(0%) contrast(100%);
    transform: scale(1);
    }
/* MEDIA */
@media screen and (max-width: 1279px) {
    #scroller #grid .entry:hover .image .zoom {
        filter: grayscale(0%) contrast(100%);
        transform: scale(1);
        }
    }

/* GRID CONTENT */
/* GRID CONTENT */
/* GRID CONTENT */
#scroller.content #banner .content.left {
    z-index: 1;
    width: 100%;
    margin: var(--marge) 0px 0px 0px;
    padding: var(--marge) 0px;
    background: none !important;
    display: flex;
    align-items: center;
    }
#scroller.content #banner .content.left .trait {
    position: absolute;
    width: 120px;
    height: 3px;
    top: 0px;
    background: var(--black);
    border-radius: 100px;
    }
#scroller.content #banner .content.left .bloc {
    width: 100%;
    }
#scroller.content #banner .content.left .bloc h1,
#scroller.content #grid .bloc h3 {
    margin: 0px 0px 10px 0px;
    color: var(--black);
    letter-spacing: var(--content_h1_spacing);
    font: var(--content_h1);
    }
#scroller.content #banner .content.left .bloc h2,
#scroller.content #grid .bloc h4 {
    width: 440px;
    max-width: 80%;
    color: var(--black_25);
    letter-spacing: var(--content_h2_spacing);
    font: var(--content_h2);
    }
/* RIGHT */
#scroller.content #banner .content.right {
    width: calc(100% + var(--marge) + var(--marge));
    margin: 0px 0px var(--marge) calc(var(--marge) * -1);
    border-radius: 4px;
    aspect-ratio: 5/2.5;
    overflow: hidden;
    }
#scroller.content #banner .content.right.nospace {
    margin: 0px 0px 0px calc(var(--marge) * -1);
    }
#scroller.content #banner .content.right img {
    position: absolute;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    top: 50%;
    left: 50%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    }
/* BLOC */
#scroller.content #grid .bloc {
    width: 100%;
    }
#scroller.content #grid .bloc .sep {
    width: 3px;
    height: 80px;
    margin: var(--marge) 0px var(--marge) calc(50% - 1.5px);
    background: var(--black_01) !important;
    border-radius: 100px;
    }
#scroller.content #grid .bloc .text {
    color: var(--black_50);
    font: var(--content_text);
    }
#scroller.content #grid .bloc .space {
    height: 40px;
    }
/* LINK */
#scroller.content #grid .bloc a .link {
    width: 100%;
    padding: 24px 20px;
    background: var(--white);
    color: var(--black);
    letter-spacing: 2px;
    font: var(--content_h2);
    box-shadow: inset 0px 0px 0px 1px var(--black_075);
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    }
#scroller.content #grid .bloc a .link:hover {
    background: var(--black_075);
    }
#scroller.content #grid .bloc a .link img {
    width: 14px;
    margin: 0px 10px 0px 0px;
    }
/* DOWNLOAD */
#scroller.content #grid .bloc .download a .element {
    width: 60px;
    margin: 0px 0px 20px 0px;
    }
#scroller.content #grid .bloc .download a .element:hover {
    opacity: .5;
    }
/* BUY */
#scroller.content #grid .bloc .buy {
    width: 100%;
    }
#scroller.content #grid .bloc .buy:hover {
    opacity: .5;
    }
#scroller.content #grid .bloc .buy a {
    padding: 24px 20px;
    background: var(--black);
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    }
#scroller.content #grid .bloc .buy a .element {
    width: var(--icon_size);
    margin: 0px 10px 0px 0px;
    }
#scroller.content #grid .bloc .buy a h3 {
    margin: 0px;
    letter-spacing: 2px;
    font: var(--content_h2);
    color: var(--white);
    }
#scroller.content #grid .bloc .buy h4 {
    width: 100%;
    max-width: 100%;
    margin: 20px 0px 0px 0px;
    color: var(--black_25);
    text-align: center;
    }
/* PRICE */
#scroller.content #grid .bloc .price {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    }
#scroller.content #grid .bloc .price .offer {
    width: calc(50% - 80px);
    margin: 0px 40px 0px 0px;
    }
#scroller.content #grid .bloc .price .offer.marge {
    margin: 80px 40px 0px 0px;
    }
#scroller.content #grid .bloc .price .offer .bullet {
    width: 40px;
    height: 2px;
    margin: 0px 0px 40px 0px;
    background: var(--black);
    border-radius: 100px;
    }
#scroller.content #grid .bloc .price h3 {
    letter-spacing: 1px;
    font: 20px/30px 'Bebas Neue', Arial, sans-serif;
    color: var(--black_25);
    }
#scroller.content #grid .bloc .price h4 {
    letter-spacing: 0px;
    margin: -10px 0px 10px 0px;
    text-transform: uppercase;
    font: 700 14px/20px 'Exo', Arial, sans-serif;
    color: var(--black);
    }
#scroller.content #grid .bloc .price .text {
    width: 100%;
    margin: 0px;
    text-transform: uppercase;
    font: var(--content_text_small);
    }
#scroller.content #grid .bloc .price .text.opacity {
    opacity: .5;
    }
/* MEDIA */
@media screen and (max-width: 1919px) {
    #scroller.content #banner .content.left {
        padding: calc(var(--marge) * 1.5) 0px;
        }
    }
@media screen and (max-width: 1499px) {
    #scroller.content #banner .content.left {
        padding: var(--marge) 0px;
        }
    #scroller.content #banner .content.right {
        width: 100%;
        margin: 0px 0px var(--marge) 0px;
        }
    #scroller.content #banner .content.right.nospace {
        margin: 0px;
        }
    }
@media screen and (max-width: 1279px) {
    #scroller.content #banner .content.right {
        aspect-ratio: 5/3;
        }
    }
@media screen and (max-width: 1023px) {
    #scroller.content #banner .content.left {
        margin: var(--menu_height) 0px 0px 0px;
        padding: calc(var(--marge) * 2) var(--marge);
        }
    #scroller.content #grid .bloc {
        padding: 0px var(--marge);
        }
    #scroller.content #banner .content.right {
        border-radius: 0px;
        }
    }
@media screen and (max-width: 767px) {
    #scroller.content #banner .content.left .bloc a .link:hover {
        background: var(--black_25);
        }
    #scroller.content #grid .bloc .space {
        height: 20px;
        }
    #scroller.content #grid .bloc a .link {
        padding: 20px 20px;
        }
    #scroller.content #grid .bloc .buy a {
        padding: 20px 20px;
        }
    #scroller.content #grid .bloc .price {
        display: block;
        }
    #scroller.content #grid .bloc .price .offer,
    #scroller.content #grid .bloc .price .offer.marge {
        width: 100%;
        margin: 0px 0px 20px 0px;
        }
    #scroller.content #grid .bloc .price .offer.marge.left {
        margin: 0px 0px -40px 0px;
        }
    #scroller.content #grid .bloc .price .offer .bullet {
        margin: 0px 0px 20px 0px;
        }
    }

/* LOADER */
/* LOADER */
/* LOADER */
#ajax_loader {
    width: 80px;
    height: 80px;
    margin: var(--menu_height) 0px var(--menu_height) calc(50% - 40px);
    }
#ajax_loader_panel {
    z-index: 4;
    position: fixed;
    width: 100vw;
    height: 100vh;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    }
#ajax_loader_panel.open {
    pointer-events: auto;
    opacity: 1;
    }
#ajax_loader_panel.open .panel {
    position: absolute;
    width: 100vw;
    height: 100vh;
    background: rgba(255,255,255,.75);
    opacity: 1;
    }
#ajax_loader_panel .title {
    letter-spacing: 3px;
    font: 14px/14px 'Bebas Neue', Arial, sans-serif;
    color: var(--black);
    }

/* AJAX */
/* AJAX */
/* AJAX */
#ajax {
    z-index: 8;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 100vh;
    left: 0px;
    background: var(--white);
    }
#ajax #close {
    z-index: 5;
    position: absolute;
    width: 50px;
    height: 50px;
    top: calc(5vh - 20px);
    right: calc(5vh - 20px);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    }
#ajax #close img {
    width: 10px;
    }
#ajax #title {
    z-index: 4;
    position: absolute;
    width: 100vw;
    height: 5vh;
    top: 0px;
    left: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    }
#ajax #title .total {
    margin: 0px 10px 0px 0px;
    color: var(--black_25);
    letter-spacing: 2px;
    font: 12px/20px 'Bebas Neue', Arial, sans-serif;
    }
#ajax #title .total span {
    margin: 0px 2px 0px 0px;
    letter-spacing: 1px;
    font: 12px/20px 'Bebas Neue', Arial, sans-serif;
    color: var(--black);
    }
#ajax #title h1 {
    color: var(--black);
    letter-spacing: 1px;
    font: 12px/20px 'Bebas Neue', Arial, sans-serif;
    pointer-events: none;
    }

/* AJAX EXIF */
/* AJAX EXIF */
/* AJAX EXIF */
#ajax #exif {
    z-index: 4;
    position: absolute;
    left: 5vh;
    bottom: 5vh;
    text-align: left;
    display: none;
    }
#ajax #exif .element {
    width: auto;
    }
#ajax #exif .element.cat {
    margin: 20px 0px 0px 0px;
    }
#ajax #exif .element div {
    font: 100 14px/14px 'Exo', Arial, sans-serif;
    color: var(--black_50);
    }
#ajax #exif .element .title {
    margin: 10px 0px 5px 0px;
    text-transform: uppercase;
    font: 700 10px/10px 'Exo', Arial, sans-serif;
    color: rgba(20,20,20,1);
    }
#ajax #exif .element #category {
    color: var(--black);
    text-transform: uppercase;
    font: 700 12px/12px 'Exo', Arial, sans-serif;
    }
#ajax #exif .element #category:hover {
    color: var(--black_075);
    }

/* AJAX ENTRY */
/* AJAX ENTRY */
/* AJAX ENTRY */
#ajax #entry {
    z-index: 3;
    position: absolute;
    width: 44vw;
    height: calc(100vh - 10vh);
    top: 5vh;
    left: 28vw;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    }

/* AJAX IMAGE */
/* AJAX IMAGE */
/* AJAX IMAGE */
#ajax #entry .image {
    z-index: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    perspective: 1500px;
    }
#ajax #entry .image #next {
    z-index: 2;
    position: fixed;
    width: calc(25vw - 5vh);
    height: 100%;
    right: calc(-28vw + 5vh + 25vw);
    display: flex;
    align-items: center;
    justify-content: flex-end;
    cursor: e-resize;
    }
#ajax #entry .image #next img {
    width: 30px;
    opacity: 0;
    display: none;
    }
#ajax #entry .image #next:hover img {
    opacity: .1;
    }
#ajax #entry .image #previous {
    z-index: 2;
    position: fixed;
    width: calc(25vw - 5vh);
    height: 100%;
    left: calc(-28vw + 5vh + 25vw);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    cursor: w-resize;
    }
#ajax #entry .image #previous.inactive {
    pointer-events: none;
    }
#ajax #entry .image #previous img {
    width: 30px;
    opacity: 0;
    display: none;
    }
#ajax #entry .image #previous:hover img {
    opacity: .1;
    }
#ajax #entry .image img#main {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    top: 50%;
    left: 50%;
    object-fit: contain;
    border-radius: 4px;
    transform: translate(-50%, -50%);
    box-shadow: 0px 0px 0px 2px var(--white);
    }
#ajax #entry #main_before img,
#ajax #entry #main_after img {
    position: absolute;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    top: calc(50% - 0vh - 0px);
    left: 50%;
    object-fit: contain;
    border-radius: 4px;
    transform: translate(-50%, -50%);
    }
#ajax #entry #main_before,
#ajax #entry #main_after {
    position: absolute;
    width: 50%;
    height: 50%;
    left: 25%;
    }
#ajax #entry #main_before.action {
    left: calc(25% - 25vh);
    /* transform: rotate(-12deg); */
    }
#ajax #entry #main_after.action {
    left: calc(25% + 25vh);
    /* transform: rotate(12deg); */
    }

/* AJAX RELATED */
/* AJAX RELATED */
/* AJAX RELATED */
#related {
    z-index: 4;
    position: absolute;
    width: 400px;
    top: calc(97.5vh - 7px);
    left: calc(50% - 200px);
    display: flex;
    }
#related .container {
    width: 100%;
    display: flex;
    justify-content: center;
    }
#related .container .entry {
    width: 6px;
    height: 14px;
    padding: 6px 1px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    }
#related .container .entry.active {
    width: 20px;
    }
#related .container .entry .image {
    position: absolute;
    width: 80px;
    height: 100px;
    margin: -120px 0px 0px 0px;
    box-shadow: 0px 0px 0px 1px var(--white_25);
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    opacity: 0;
    }
#related .container .entry:hover .image {
    opacity: 1;
    }
#related .container .entry .image img {
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    border-radius: 4px;
    object-fit: cover;
    }
#related .container .entry .element {
    width: 100%;
    height: 100%;
    background: var(--black_01);
    border-radius: 100px;
    }
#related .container .entry:hover .element,
#related .container .entry.active .element {
    background: rgba(20,20,20,1);
    }