/* TWELVE */
/* TWELVE */
/* TWELVE */
#nine {
	width: 100vw;
	left: 0px;
	background: var(--white);
	overflow: hidden;
	}


/* PUSH TO SCROLL */
/* PUSH TO SCROLL */
/* PUSH TO SCROLL */
#push_to_scroll {
    z-index: 1;
    position: fixed;
    width: 24px;
    height: 40px;
    left: calc(50% - 12px);
    top: calc(var(--marge) * 2 + 50px - 20px);
    background: var(--white);
    box-shadow: inset 0px 0px 0px 2px var(--black_01), 0px 0px 0px 3px var(--white);
    pointer-events: none;
    display: none;
    border-radius: 100px;  
    }
#push_to_scroll .bullet {
    position: absolute;
    width: 4px;
    height: 7px;
    left: calc(50% - 2px);
    top: 10px;
    background: var(--black_01);
    border-radius: 100px;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-name: scroll;
    animation-timing-function: ease-in-out;
    }
@keyframes scroll {
    30% {
        opacity: 1;
        }
    40% {
        top: 8px;
        }
    50% {
        opacity: 1;
        }
    70% {
        top: 28px;
        opacity: 0;
        }
    85% {
        top: 8px;
        opacity: 0;
        }
    }
/* FLOW */
body:not(.flow):not(.summary) #push_to_scroll {
	display: none;
	}
/* MEDIA */
@media screen and (max-width: 1023px) {
    #push_to_scroll {
	    top: initial;
	    bottom: var(--marge);
	    background: none;
	    box-shadow: inset 0px 0px 0px 2px var(--white);
	    display: flex;
	    }
	#push_to_scroll .bullet {
	    background: var(--white);
	    }
    }


/* HEADER */
/* HEADER */
/* HEADER */
header {
	z-index: 2;
	position: fixed;
	width: 50vw;
	height: auto;
	top: var(--marge);
	right: var(--space);
	display: flex;
	align-items: center;
	}
header.hidden {
	pointer-events: none;
	}
/* MEDIA */
@media screen and (max-width: 1023px) {
	header {
		width: 100vw;
		height: var(--menu_height);
		top: 0px;
		left: 0px;
		padding: 0px var(--marge);
		background: var(--white);
		/* JS */
		margin: 0px !important;
		opacity: 1 !important;
		}
	#header {
		z-index: 2;
		position: fixed;
		width: 100vw;
		height: 1px;
		top: var(--menu_height);
		left: 0px;
		padding: 0px var(--marge);
		background: var(--white);
		}
	#header.border {
		box-shadow: 0px 1px 0px 0px var(--black_01);
		}
	}


/* HEADER CONTAINER */
/* HEADER CONTAINER */
/* HEADER CONTAINER */
header #header_container {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: flex-end;
	}
/* LOGO */
header #header_container .vehel {
	width: 44px;
	margin: 0px 10px 0px 0px;
	/* MOBILE HACK */
	-webkit-tap-highlight-color: transparent;
	}
header #header_container .vehel img {
	width: 100%;
	}
/* MENU BURGER */
header #header_container .button_menu {
	width: 50px;
	height: 50px;
	margin: -18px -16px 12px 0px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	/* MOBILE HACK */
	-webkit-tap-highlight-color: transparent;
	}
header #header_container .button_menu .lines {
	width: 18px;
	height: 14px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}
header #header_container .button_menu .lines .trait {
	width: 100%;
	height: 2px;
	background: var(--black);
	border-radius: 100px;
	}
/* MEDIA */
@media screen and (max-width: 1023px) {
	header #header_container {
		align-items: center;
		}
	header #header_container .vehel {
		margin: 0px;
		}
	header #header_container .button_menu {
		margin: 0px -16px 0px 0px;
		}
	}


/* HEADER NAV */
/* HEADER NAV */
/* HEADER NAV */
#header_nav {
	z-index: 3;
	position: fixed;
	width: 50vw;
	top: calc(var(--marge) + 40px);
	right: var(--space);
	display: flex;
	justify-content: flex-end;
	}
#header_nav.hidden {
	pointer-events: none;
	}
#header_nav .rubric {
	display: flex;
	justify-content: flex-end;
	}
#header_nav .rubric .link {
	margin: 0px 0px 0px 12px;
	letter-spacing: 2px;
	font: 100 10px/10px 'Bebas Neue', Arial, sans-serif;
	color: var(--black_25);
	}
#header_nav .rubric .link:hover,
#header_nav .rubric .link.active {
	color: var(--black);
	}
/* MEDIA */
@media screen and (max-width: 1023px) {
	#header_nav {
		display: none;
		}
	}


/* RIGHT */
/* RIGHT */
/* RIGHT */
#right {
	z-index: 2;
	position: fixed;
	top: var(--marge);
	right: var(--marge);
	margin: -18px -14px 0px 0px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	opacity: 0;
	}
#right.visible {
	pointer-events: auto;
	opacity: 1;
	}
/* MENU */
#right .button_menu {
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	}
#right .button_menu .lines {
	width: 18px;
	height: 14px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}
#right .button_menu .lines .trait {
	width: 100%;
	height: 2px;
	background: var(--white);
	border-radius: 100px;
	}
/* MISC */
#right #gotop_alt {
	z-index: 2;
	position: fixed;
	height: 40px;
	left: var(--marge);
	bottom: calc(var(--marge) - 18px);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	/* MOBILE HACK */
	-webkit-tap-highlight-color: transparent;
	}
#right #gotop_alt .element {
	width: 40px;
	height: var(--trait);
	background: var(--white);
	border-radius: 100px;
	}
#right #gotop_alt .element.red {
	background: red;
	}
#right #gotop_alt:hover .element {
	opacity: 0;
	}
/* MEDIA */
@media screen and (max-width: 1023px) {
	#right {
		display: none;
		}
	}


/* BACKGROUND MENU */
/* BACKGROUND MENU */
/* BACKGROUND MENU */
#backgroundMenu {
	z-index: 5;
	position: fixed;
	width: 100vw;
	height: 100dvh;
	top: 0px;
	left: 0px;
	pointer-events: none;
	}
#backgroundMenu #panel {
	z-index: 1;
	position: absolute;
	width: 100%;
	height: 100%;
	}
/* MENU POPUP */
#backgroundMenu #menu_popup {
	z-index: 2;
	position: fixed;
    width: 800px;
    height: auto;
    top: calc(50dvh - calc(571px / 2) - 60px);
    right: calc(50vw - 400px);
    padding: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    cursor: auto;
    opacity: 0;
	}
#backgroundMenu #menu_popup .button {
	z-index: 3;
	position: absolute;
	width: 40px;
	height: 40px;
	top: 60px;
	right: 60px;
	margin: -14px -14px 0px 0px;
	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 #menu_popup {
	top: calc(50dvh - calc(571px / 2));
	opacity: 1;
	}
#backgroundMenu.open #menu_popup .button {
	opacity: 1;
	}
/* RUBRIC */
#backgroundMenu #menu_popup #composition .rubric a {
	width: 100%;
	box-shadow: 0px 1px 0px 0px var(--black_01);
	display: flex;
	align-items: center;
	justify-content: space-between;
	/* MOBILE HACK */
	-webkit-tap-highlight-color: transparent;
	}
#backgroundMenu #menu_popup #composition .rubric a.first {
	margin: 80px 0px 0px 0px;
	}
#backgroundMenu #menu_popup #composition .rubric a.nope {
	box-shadow: 0px 0px 0px 0px transparent;
	}
#backgroundMenu #menu_popup #composition .rubric a img {
	margin: 0px -5px 0px 0px;
	width: calc(var(--icon_size) + 8px);
	height: calc(var(--icon_size) + 8px);
	opacity: .25;
	}
#backgroundMenu #menu_popup #composition .rubric a:hover img {
	opacity: 1;
	}
#backgroundMenu #menu_popup #composition .rubric .link {
	width: 100%;
	padding: 12px 0px;
	font: 700 12px/1.5 'Quicksand', Arial, sans-serif;
	color: var(--black_25);
	}
#backgroundMenu #menu_popup #composition .rubric .link:hover,
#backgroundMenu #menu_popup #composition .rubric .link.active,
#backgroundMenu #menu_popup #composition .rubric .link.active:hover {
	color: var(--black);
	}
#backgroundMenu #menu_popup #composition .rubric .separation {
	width: calc(100% + 120px);
	height: 1px;
	margin: 18px 0px 18px -60px;
	}
#backgroundMenu #menu_popup #composition .rubric .separation.second {
	margin: 18px 0px 58px -60px;
	display: none;
	}
/* FOOTER */
#backgroundMenu #menu_popup #footer {
	width: max-content;
    margin: 40px 0px 0px 0px;
	}
#backgroundMenu #menu_popup #footer .mention {
	margin: 0px 0px 5px 0px;
	color: var(--black_25);
	text-transform: uppercase;
	font: 700 10px/1.5 'Quicksand', Arial, sans-serif;
	/* MOBILE HACK */
	-webkit-tap-highlight-color: transparent;
	}
#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;
	/* MOBILE HACK */
	-webkit-tap-highlight-color: transparent;
	}
#backgroundMenu #menu_popup #footer .social .element img {
	width: var(--icon_size);
	opacity: 1;
	}
#backgroundMenu #menu_popup #footer .social .element img:hover {
	opacity: .25;
	}
/* MEDIA */
@media screen and (max-width: 1919px) {
	#backgroundMenu #menu_popup {
		width: 600px;
		right: calc(50vw - 300px);
	    }
	}
@media screen and (max-width: 1279px) {
	#backgroundMenu #menu_popup {
		width: 440px;
		right: calc(50vw - 220px);
	    }
	}
@media screen and (max-width: 767px) {
	#backgroundMenu #menu_popup {
		width: 320px;
		right: calc(50vw - 160px);
		top: calc(50dvh - calc(531px / 2) - 60px);
		padding: var(--marge);
		}
	#backgroundMenu #menu_popup .button {
		top: 40px;
		right: 40px;
		}
	/* OPEN */
	#backgroundMenu.open #menu_popup {
		top: calc(50dvh - calc(531px / 2));
		}
	/* RUBRIC */
	#backgroundMenu #menu_popup #composition .rubric .separation,
	#backgroundMenu #menu_popup #composition .rubric .separation.second {
		width: calc(100% + 80px);
		margin: 18px 0px 18px -40px;
		}
	}


/* SCREENSAVER */
/* SCREENSAVER */
/* SCREENSAVER */
#screensaver {
	z-index: 4;
	position: fixed;
	width: 100vw;
	height: 100dvh;
	top: -100dvh;
	left: 0px;
	background: var(--white);
	pointer-events: none;
	overflow: hidden;
	opacity: 0;
	}
#screensaver.open {
	top: 0px;
	pointer-events: auto;
	opacity: 1;
	}
/* ELEMENT */
#screensaver .element {
	z-index: 1;
	position: absolute;
	width: 100vw;
	height: 100dvh;
	flex-direction: column;
	display: flex;
	justify-content: center;
	align-items: center;
	filter: invert(1);
	}
#screensaver .element #logo {
	width: 92px;
	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 .element #logo img {
	width: 100%;
	}
#screensaver .element #message {
	width: 320px;
	color: rgba(0,0,0,.25);
	letter-spacing: 2px;
	font: 12px/12px 'Bebas Neue', Arial, sans-serif;
	text-align: center;
	}
#screensaver .element #social {
	margin: 40px;
	display: flex;
	align-items: center;
	}
#screensaver .element #social .social {
	width: var(--icon_size);
	margin: 0px 7px;
	transition: opacity 0.5s ease-in-out;
	}
#screensaver .element #social a:hover .social {
	opacity: .25;
	}
/* PANEL */
#screensaver .panel {
	position: absolute;
	width: 100%;
	height: 100%;
	}
#screensaver .panel .slide {
	position: absolute;
	width: calc(100% + 120px);
	height: calc(100% + 120px);
	top: -60px;
	left: -60px;
	object-fit: cover;
	}
/* INVERT */
#screensaver.invert .element {
	filter: invert(0);
	}
#screensaver.invert .panel {
	opacity: 0;
	}


/* SCROLLER */
/* SCROLLER */
/* SCROLLER */
#scroller {
	width: 100vw;
	}


/* GRID */
/* GRID */
/* GRID */
#scroller #grid {
	width: var(--grid);
	left: var(--grid_middle);
	margin: calc(var(--marge) * 2 + 50px) 0px 0px 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	}
#scroller #grid.content {
	width: 100vw;
	left: 0px;
	margin: var(--marge) 0px 0px 0px;
	}
/* MEDIA */
@media screen and (max-width: 1023px) {
	#scroller #grid,
	#scroller #grid.content {
		margin: var(--menu_height) 0px 0px 0px;
		}
	}


/* GRID PANEL */
/* GRID PANEL */
/* GRID PANEL */
#scroller #grid .panel {
	width: calc(100vw - var(--space) - var(--space));
	margin:
		0px
		0px
		0px
		calc(var(--grid_middle) * -1 + var(--space));
	padding: var(--marge) 0px;
	pointer-events: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	}
#scroller #grid .panel .trait {
	position: absolute;
	width: 100%;
	height: 2px;
	top: 0px;
	background: var(--black_01);
	border-radius: 100px;
	}
#scroller #grid .panel .content {
	width: 100%;
	}
#scroller #grid .panel .content .infos {
	width: 100%;
	}
#scroller #grid .panel .content .infos h1 {
	margin: 0px 0px 10px 0px;
	color: var(--black);
	letter-spacing: var(--content_h1_spacing);
	font: var(--content_h1);
	pointer-events: none;
	}
#scroller #grid .panel .content .infos h2 {
	color: var(--black_25);
	letter-spacing: var(--content_h2_spacing);
	font: var(--content_h2);
	pointer-events: none;
	}
/* CAT NAVIGATION */
#scroller #grid .panel .content #cat_navigation {
	position: absolute;
	width: 32px;
	margin: 20px 0px 0px 0px;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: auto;
	}
#scroller #grid .panel .content #cat_navigation .item {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	}
#scroller #grid .panel .content #cat_navigation .item a {
	display: flex;
	align-items: center;
	}
#scroller #grid .panel .content #cat_navigation .item img {
	width: calc(var(--icon_size) + 8px);
	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 {
	transform: rotate(180deg);
	}
#scroller #grid .panel .content #cat_navigation .item.next {
	justify-content: flex-end;
	}
/* VARIATIONS */
#scroller.content #grid .panel .trait {
	width: 40px;
	height: var(--trait);
	background: var(--black);
	}
/* MEDIA */
@media screen and (min-width: 1023px) and (max-width: 1919px) {
	body:is(.flow, .summary, .category) #scroller #grid .panel {
		z-index: 2;
		position: fixed;
		width: 46vw;
		left:  27vw;
		bottom: calc(var(--marge) / 2);
		margin: 0px;
		padding: 60px;
		background: var(--white);
		box-shadow: 0px 0px 100px 0px var(--black_01);
		border-radius: 8px;
		}
	body:is(.flow, .summary, .category) #scroller #grid .panel .trait {
		display: none;
		}
	body:is(.flow, .summary, .category) #scroller #grid .panel .content {
		display: flex;
		align-items: center;
		}
	body:is(.flow, .summary, .category) #scroller #grid .panel .content .infos h1 {
		margin: 0px 0px 2px 0px;
		}
	body:is(.flow, .summary, .category) #scroller #grid .panel .content #cat_navigation {
		margin: 0px;
		}
	/* MEDIA */
	@media screen and (max-width: 2559px) {
		body:is(.flow, .summary, .category) #scroller #grid .panel {
			padding: 40px;
			}
		}
	@media screen and (max-width: 1279px) {
		body:is(.flow, .summary, .category) #scroller #grid .panel {
			width: 56vw;
			left:  22vw;
			padding: 30px;
			}
		}
	}
@media screen and (max-width: 1023px) {
	#scroller #grid .panel,
	#scroller.content #grid .panel {
		width: 100vw;
		height: calc(60dvh - var(--menu_height));
		margin: 0px;
		padding:
			0px
			var(--marge)
			var(--marge)
			var(--marge);
		justify-content: flex-end;
		}
	#scroller #grid .panel .trait {
		display: none;
		}
	#scroller #grid .panel .content #cat_navigation {
		margin: 20px 0px 0px 0px;
		}
	}


/* STORY */
/* STORY */
/* STORY */
#scroller #grid .panel #story {
	position: absolute;
	width: 50%;
	margin: 40px 0px 0px 0px;
	display: flex;
	align-items: center;
	}
#scroller #grid .panel #story .stories {
	margin: 0px 12px 0px 0px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	}
#scroller #grid .panel #story .stories .label {
	z-index: 1;
	color: var(--black);
	letter-spacing: 1px;
	text-align: left;
	font: 10px/10px 'Bebas Neue', Arial, sans-serif;
	opacity: .25;
	}
#scroller #grid .panel #story .stories:hover .label {
	opacity: 1;
	}
/* MEDIA */
@media screen and (min-width: 1023px) and (max-width: 1919px) {
	body:is(.flow, .summary, .category) #scroller #grid .panel #story {
		z-index: 2;
		width: 100%;
		margin: 0px;
		justify-content: flex-end;
		}
	body:is(.flow, .summary, .category) #scroller #grid .panel #story .stories {
		margin: 0px 0px 0px 12px;
		}
	}
@media screen and (max-width: 1023px) {
	#scroller #grid .panel #story {
		position: relative;
		}
	}
	

/* GRID ENTRY */
/* GRID ENTRY */
/* GRID ENTRY */
#scroller #grid .entry {
	width: calc(100% / 3);
	overflow: hidden;
	cursor: pointer;
	}
#scroller #grid .entry::before {
    z-index: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    box-shadow: inset -.75px -.75px 0px 0px var(--white_50);
    pointer-events: none;
    content: '';
    }
/* MEDIA */
@media screen and (max-width: 1279px) {
	#scroller #grid .entry {
		width: 100%;
		}
	#scroller #grid .entry::before {
	    box-shadow: inset 0px -.5px 0px 0px var(--white_50);
	    }
	#scroller #grid.flow .entry.mobile {
		display: none;
		}
	}


/* GRID VARIANT */
/* GRID VARIANT */
/* GRID VARIANT */
#scroller #grid.single .entry,
#scroller #grid.category .entry {
	width: 100% !important;
	}
#scroller #grid.single .entry::before,
#scroller #grid.category .entry::before {
    box-shadow: inset 0px -.5px 0px 0px var(--white_50);
    }


/* GRID INFO */
/* GRID INFO */
/* GRID INFO */
#scroller #grid .entry .infos {
	z-index: 1;
	position: absolute;
	width: 100%;
	height: 100%;
	bottom: 0px;
	padding: calc(var(--marge) / 1.5);
	background: var(--black_infos) !important;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	pointer-events: none;
	opacity: 0;
	}
#scroller #grid .entry:hover .infos {
	opacity: 1;
	}
#scroller #grid .entry .infos .name {
	margin: 0px 0px 5px 0px;
	letter-spacing: 3px;
	font: 34px/34px 'Bebas Neue', Arial, sans-serif;
	color: var(--white);
	display: inline-flex;
	align-items: baseline;
	white-space: nowrap;
	opacity: 1;
	}
#scroller #grid .entry .infos .name span {
	position: absolute;
	width: 100px;
	left: calc(50% - 50px);
    margin: 80px 0px 0px 0px;
    text-align: center;
    letter-spacing: 1px;
    font: 700 12px/12px 'Quicksand', Arial, sans-serif;
    opacity: 1;
	}
#scroller #grid .entry .infos .value {
	margin: 0px 0px -20px 0px;
	letter-spacing: 4px;
	font: 12px/12px 'Bebas Neue', Arial, sans-serif;
	color: var(--white);
	text-align: center;
	opacity: .5;
	}
#scroller #grid .entry:hover .infos .value {
	margin: 0px;
	}
/* MEDIA */
@media screen and (max-width: 2559px) {
	#scroller #grid .entry .infos .name {
		font: 24px/24px 'Bebas Neue', Arial, sans-serif;
		}
	#scroller #grid .entry .infos .name span {
		margin: 60px 0px 0px 0px;
	    }
	}
@media screen and (max-width: 1279px) {
	#scroller #grid .entry .infos {
		padding: var(--marge);
		}
	}
@media screen and (max-width: 767px) {
	#scroller #grid .entry .infos .name span {
		margin: -20px 0px 0px 0px;
	    }
	}


/* GRID IMAGE */
/* GRID IMAGE */
/* GRID IMAGE */
#scroller #grid .entry .image_container {
	width: 100%;
	overflow: hidden;
	aspect-ratio: auto 4/5;
	}
#scroller #grid .entry .image_container .image {
	width: 100%;
	display: block;
	}
#scroller #grid .entry .image_container .image img {
	position: absolute;
	width: 101%;
	height: 101%;
	max-width: 101%;
	max-height: 101%;
	top: 50%;
	left: 50%;
	object-fit: cover;
	transform: translate(-50%, -50%);
	opacity: 0;    
	}
/* ZOOM */
#scroller #grid .entry:hover .image_container .image .zoom {
	transform: translate(-50%, -50%) scale(1.01);
	}
#scroller #grid.single .entry:hover .image_container .image .zoom {
	transform: translate(-50%, -50%) scale(1);
	}
/* VARIATIONS */
#scroller #grid.museum .entry .image_container {
	aspect-ratio: auto 1/1;
	}
#scroller #grid.category .entry .image_container {
	aspect-ratio: auto 5/7 !important;
	}
/* MEDIA */
@media screen and (max-width: 1279px) {
	#scroller #grid .entry .image_container {
		aspect-ratio: auto 5/7;
		}
	#scroller #grid .entry:hover .image_container .image .zoom {
		transform: translate(-50%, -50%) scale(1);
		}
	}


/* IPHONE */
/* IPHONE */
/* IPHONE */
#iphone {
	z-index: 3;
	position: fixed;
	width: calc(80px * 3);
	height: calc((((80px * 3) * 7) / 5) + 20px); 
	left: calc(50vw - calc(80px * 3) / 2);
	bottom: calc(var(--marge) + 80px);
	padding: 5px;
	background: var(--white);
	box-shadow: 0px 0px 0px 1px var(--black_01), 0px 0px 150px 0px var(--black_01);
	border-radius: 8px;
	overflow: hidden;
	pointer-events: none;
	opacity: 0;
	}
#iphone.visible {
	bottom: var(--marge);
	pointer-events: auto;
	opacity: 1;
	}
#iphone #iphone_border {
	width: 100%;
	height: 100%;
	border-radius: 5px;
	overflow: hidden;
	}
#iphone #iphone_content {
	width: calc(100% + 1px);
	height: calc((((80px * 3) * 7) / 5) + 20px); 
	left: -1px;
	overflow: hidden;
	overflow-y: scroll;
	display: flex;
	flex-wrap: wrap;
	scroll-snap-type: y mandatory;
	}
#iphone #iphone_content::-webkit-scrollbar {
	display: none;
	}
#iphone #iphone_content .entry {
	width: calc(100% / 3 - 1px);
	margin: 0px .5px 1px .5px;
	cursor: pointer;
	scroll-snap-align: start;
	}
/* MEDIA */
@media screen and (max-width: 1279px) {
	#iphone {
		display: none;
		}
	}


/* FOOTER */
/* FOOTER */
/* FOOTER */
footer {
	width: 60vw;
	left: 20vw;
	margin: var(--marge) 0px;
	padding: calc(var(--marge) / 1.5) 0px;
	box-shadow: 0px 1px 0px 0px var(--black_01), 0px -1px 0px 0px var(--black_01);
	display: flex;
	flex-direction: column;
	}
footer .trait {
	width: 1px;
	min-width: 1px;
	height: auto;
	background: var(--black_01);
	margin: 0px calc(var(--marge) / 1.5) 0px 0px;
	border-radius: 100px;
	display: flex;
	}
footer .content {
	display: flex;
	}
/* LEFT x RIGHT */
footer .content .left,
footer .content .right {
	margin: 0px calc(var(--marge) / 1.5) 0px 0px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	}
footer .content .right {
	margin: 0px;
	width: 700px;
	}
footer .content img {
	width: 100px;
	margin: 0px 0px 10px 0px;
	}
footer .content h3 {
	width: max-content;
	letter-spacing: var(--content_h2_spacing);
	font: var(--content_h2);
	}
/* SOCIAL */
footer .content .links {
	width: 90px;
	margin: 26px 0px -20px -9px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	}
footer .content .links .element {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	}
footer .content .links .element img {
	width: var(--icon_size);
	margin: 0px;
	opacity: 1;
	}
/* TEXT */
footer .content .text {
	color: var(--black_50);
	font: 500 14px/1.5 'Quicksand', Arial, sans-serif;
	}
footer .content .space {
	height: 40px;
	}
/* LINK */
footer .content a .link {
	z-index: 1;
	width: 180px;
	bottom: 0px;
	padding: 20px;
	background: var(--black);
	color: var(--white);
	letter-spacing: 2px;
	font: 10px/10px 'Bebas Neue', Arial, sans-serif;
	box-shadow: inset 0px 0px 0px 1px var(--black_01);
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	}
footer .content a .link h4 {
	position: absolute;
	width: 100%;
	max-width: 100%;
	margin: 100px 0px 0px 0px;
	letter-spacing: 1px;
	font: 10px/10px 'Bebas Neue', Arial, sans-serif;
	color: var(--black_25);
	text-align: center;
	}
/* MENTION */
footer .mention {
	letter-spacing: var(--content_h2_spacing);
	font: var(--content_h2);
	}
/* CONTENT */
.content footer {
	width: 100vw;
	margin: 0px;
	left: 0px;
	padding: calc(var(--marge) * 1.5) var(--space);
	background: var(--black_01);
	box-shadow: 0px 0px 0px 0px transparent;
	justify-content: flex-end;
	align-items: center;
	}
.content footer .trait {
	width: 40px;
	height: var(--trait);
	margin: 80px 0px;
	background: var(--black);
	}
.content footer .content {
	flex-direction: column;
	align-items: center;
	}
.content footer .content .left,
.content footer .content .right {
	width: 100%;
	margin: 0px;
	align-items: center;
	}
.content footer .content .links {
	margin: 26px 0px -20px 0px;
	}
/* MEDIA */
@media screen and (max-width: 1919px) {
	footer .content .right {
		width: 600px;
		}
	}
@media screen and (max-width: 1279px) {
	footer {
		width: 80vw;
		left: 10vw;
		}
	/* CONTENT */
	.content footer {
		padding: var(--marge) var(--space);
		}	
	}
@media screen and (max-width: 1023px) {
	footer {
		width: 100vw;
		left: 0px;
		margin: 0px;
		padding: calc(var(--marge) * 3) var(--marge);
		background: var(--black);
		box-shadow: 0px 0px 0px 0px transparent;
		align-items: center;
		}
	footer .explain {
		display: none;
		}
	footer .trait {
		width: 40px;
		height: var(--trait);
		margin: 60px 0px;
		background: var(--white);
		}
	footer .content {
		flex-direction: column;
		align-items: center;
		}
	footer .content img {
		width: 60px;
		}
	footer .content img,
	footer .content h3 {
		display: none;
		}
	footer .content .links {
		margin: 26px 0px -20px 0px;
		}
	footer .content .links .element img {
		display: flex;
		}
	footer .content .left,
	footer .content .right {
		margin: 0px;
		align-items: center;
		}
	footer .content .left {
		min-width: initial;
		}	
	footer .content img,
	footer .content h3,
	footer .content .links,
	footer .content .links .element,
	footer .content .links .element img,
	footer .content .text,
	footer .content a .link,
	footer .content a .link h4,
	footer .mention {
		filter: invert(1);
		}
	/* CONTENT */
	.content footer {
		padding: calc(var(--marge) * 3) var(--marge);
		background: var(--black);
		}
	.content footer .trait {
		margin: 60px 0px;
		background: var(--white);
		}	
	}


/* GRID RELATED */
/* GRID RELATED */
/* GRID RELATED */
#grid_related {
	width: calc(60vw + 12px);
	left: calc(20vw - 6px);
	margin: 0px 0px var(--marge) 0px;
	display: flex;
	justify-content: center;
	}
#grid_related .entry {
	width: calc(100% / 3 - 12px);
	height: fit-content;
	margin: 0px 6px;
	background: var(--black_01);
	border-radius: 6px;
	aspect-ratio: 5/7;
	overflow: hidden;
	}
#grid_related .entry a {
	width: 100%;
    height: 100%;
	}
#grid_related .entry.first {
	aspect-ratio: 5/6;
	}
#grid_related .entry.third {
	aspect-ratio: 5/4;
	}
/* INFOS */
#grid_related .entry .infos {
	z-index: 1;
	position: absolute;
	width: 100%;
	height: 100%;
	background: var(--black_infos);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	opacity: 0;
	}
#grid_related .entry:hover .infos {
	opacity: 1;
	}
#grid_related .entry .infos .title {
	letter-spacing: 3px;
	font: 16px/16px 'Bebas Neue', Arial, sans-serif;
	color: var(--white);
	}
#grid_related .entry .infos .link {
	width: calc(var(--icon_size) * 1.5);
	margin: 10px 0px 0px 0px;
	}
#grid_related .entry .infos .link img {
	width: calc(var(--icon_size) * 1.5);
	filter: invert(1);
	}
/* IMAGE */
#grid_related .entry .image {
	width: 100%;
	display: block;
	}
#grid_related .entry .image img {
	position: absolute;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	top: 50%;
	left: 50%;
	object-fit: cover;
	transform: translate(-50%, -50%);
	}
/* MEDIA */
@media screen and (max-width: 1279px) {
	#grid_related {
		width: calc(80vw + 12px);
		left: calc(10vw - 6px);
		}
	}
@media screen and (max-width: 1023px) {
	#grid_related {
		display: none;
		}
	}


/* GRID CONTENT */
/* GRID CONTENT */
/* GRID CONTENT */
#scroller.content #content {
	width: 100%;
	display: flex;
	flex-direction: column;
	}
#scroller.content #content #banner {
	width: 100vw;
	height: 0px;
	background: var(--black_01);
	aspect-ratio: 5/7;
	overflow: hidden;
	}
#scroller.content #content #banner 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 #content #grid .bloc {
	width: var(--grid_content);
	left: var(--space);
	margin: calc(var(--marge) * -1 + 80px) 0px calc(var(--marge) * 1.5) 0px;
	text-align: justify;
	}
#scroller.content #content #grid .bloc h3 {
	margin: 0px 0px 2px 0px;
	color: var(--black);
	letter-spacing: 2px;
	font: 16px/16px 'Bebas Neue', Arial, sans-serif;
	}
#scroller.content #content #grid .bloc h4 {
	width: 100%;
	color: var(--black_25);
	letter-spacing: var(--content_h2_spacing);
	font: var(--content_h2);
	}
#scroller.content #content #grid .bloc .text {
	color: var(--black_50);
	font: var(--content_text);
	}
#scroller.content #content #grid .bloc .space {
	height: 20px;
	}
/* LINK */
#scroller.content #content #grid .bloc a .link {
	z-index: 1;
	width: 180px;
	bottom: 0px;
	padding: 20px;
	background: var(--black);
	color: var(--white);
	letter-spacing: 2px;
	font: 10px/10px 'Bebas Neue', Arial, sans-serif;
	box-shadow: inset 0px 0px 0px 1px var(--black_01);
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	}
#scroller.content #content #grid .bloc a .link h4 {
	position: absolute;
	width: 100%;
	max-width: 100%;
	margin: 100px 0px 0px 0px;
	letter-spacing: 1px;
	font: 10px/10px 'Bebas Neue', Arial, sans-serif;
	color: var(--black_25);
	text-align: center;
	}
/* DOWNLOAD */
#scroller.content #content #grid .bloc .download {
	margin: 0px 0px 0px -5px;
	display: flex;
	align-items: center;
	}
#scroller.content #content #grid .bloc .download a {
	display: flex;
	}
#scroller.content #content #grid .bloc .download a .element {
	width: 30px;
	}
#scroller.content #content #grid .bloc .download .title {
	margin: 0px 0px 0px 12px;
	}
/* PRICE */
#scroller.content #content #grid .bloc .price {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px;
	}
#scroller.content #content #grid .bloc .price .offer .bullet {
	width: 40px;
	height: var(--trait);
	margin: 0px 0px 20px 0px;
	background: var(--black);
	border-radius: 100px;
	}
#scroller.content #content #grid .bloc .price h3 {
	letter-spacing: .5px;
	text-align: left;
	font: 18px/20px 'Bebas Neue', Arial, sans-serif;
	color: var(--black_25);
	}
#scroller.content #content #grid .bloc .price h4 {
	letter-spacing: 0px;
	margin: -5px 0px 10px 0px;
	text-transform: uppercase;
	font: 700 12px/18px 'Quicksand', Arial, sans-serif;
	color: var(--black);
	}
#scroller.content #content #grid .bloc .price .text {
	width: 100%;
	margin: 0px;
	text-transform: uppercase;
	text-align: left;
	font: var(--content_text_small);
	}
#scroller.content #content #grid .bloc .price .text.opacity {
	opacity: .5;
	}
/* MEDIA */
@media screen and (max-width: 1023px) {
	#scroller.content #content #banner {
		height: calc((100vw * 7) / 5); 
		}
	#scroller.content #content #grid .bloc {
		margin: var(--marge) 0px calc(var(--marge) * 3) 0px;
		}
	}
@media screen and (max-width: 767px) {
	#scroller.content #content #grid .bloc {
		left: 0px;
		margin: 0px;
		padding: var(--marge) var(--marge) calc(var(--marge) * 3) var(--marge);
		} 
	#scroller.content #content #grid .bloc a .link {
		width: calc(100vw - var(--marge) - var(--marge));
		}
	#scroller.content #content #grid .bloc a .link h4 {
		display: none;
		}
	#scroller.content #content #grid .bloc .price {
		gap: 20px;
		display: block;
		}
	#scroller.content #content #grid .bloc .price .offer,
	#scroller.content #content #grid .bloc .price .offer.marge {
		width: 100%;
		margin: 20px 0px 0px 0px;
		}
	#scroller.content #content #grid .bloc .price .offer:first-child {
		margin: 0px;
		}
	}


/* LOADER PANEL */
/* LOADER PANEL */
/* LOADER PANEL */
#ajax_loader_panel {
	z-index: 4;
	position: fixed;
	width: 100vw;
	height: 100dvh;
	top: 100dvh;
	pointer-events: none;
	display: flex;
	align-items: center;
	justify-content: center;
	}
#ajax_loader_panel .panel {
	position: absolute;
	width: 100vw;
	height: 100dvh;
	background: var(--black);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1;
	}
#ajax_loader_panel img {
	z-index: 3;
	position: fixed;
	width: 80px;
	}
/* OPEN */
#ajax_loader_panel.open {
	top: 0px;
	}


/* AJAX */
/* AJAX */
/* AJAX */
#ajax {
	z-index: 8;
	position: fixed;
	width: 100vw;
	height: 100dvh;
	top: 100dvh;
	left: 0px;
	background: var(--white);
	}
#ajax #close {
	z-index: 5;
	position: absolute;
	width: 50px;
	height: 50px;
	top: calc(4dvh - 20px);
	right: calc(4dvh - 20px);
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	}
#ajax #close img {
	width: 10px;
	}
/* MEDIA */
@media screen and (max-width: 1599px) {
	#ajax #close {
		width: 40px;
		height: 40px;
		top: 75px;
		right: 75px;
		background: var(--black);
		mix-blend-mode: screen;
		box-shadow: 0px 0px 0px 1.5px var(--white_25);
		border-radius: 100px;
		}
	#ajax #close img {
		filter: invert(1);
		}
	}


/* AJAX EXIF */
/* AJAX EXIF */
/* AJAX EXIF */
#ajax #exif {
	z-index: 4;
	position: absolute;
	height: 400px;
	left: 4dvh;
	top: calc(50dvh - 240px);
	text-align: left;
	display: flex;
	flex-direction: column;
	justify-content: center;
	opacity: 0;
	}
#ajax #exif.open {
	top: calc(50dvh - 200px);
	opacity: 1;
	}
/* ELEMENT */
#ajax #exif .element {
	width: auto;
	}
#ajax #exif .element div {
	font: 100 14px/14px 'Quicksand', Arial, sans-serif;
	color: var(--black_50);
	}
#ajax #exif .element .title {
	margin: 10px 0px 5px 0px;
	text-transform: uppercase;
	font: 700 10px/10px 'Quicksand', Arial, sans-serif;
	color: var(--black);
	}
/* FIRST */
#ajax #exif .element .position {
	margin: 0px 0px 5px 0px;
	font: 700 10px/10px 'Quicksand', Arial, sans-serif;
	}
#ajax #exif .element .model {
	margin: 0px 0px 20px 0px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font: 700 16px/16px 'Quicksand', Arial, sans-serif;
	color: var(--black);
	}
/* CATEGORY */
#ajax #exif .element.cat {
	margin: 20px 0px 0px 0px;
	display: none;
	}
#ajax #exif .element.cat #category {
	color: var(--black);
	text-transform: uppercase;
	font: 700 12px/12px 'Quicksand', Arial, sans-serif;
	}
/* MEDIA */
@media screen and (max-width: 1599px) {
	#ajax #exif {
		display: none;
		}
	}


/* AJAX ENTRY */
/* AJAX ENTRY */
/* AJAX ENTRY */
#ajax #entry {
	z-index: 3;
	position: absolute;
	width: calc((92dvh * 5) / 7);
	height: 92dvh;
	top: 4dvh;
	left: calc(50vw - ((92dvh * 5) / 7) / 2);
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	}
/* MEDIA */
@media screen and (max-width: 1599px) {
	#ajax #entry {
		width: 100vw;
		height: 100dvh;
		top: 0px;
		left: 0vw
		}
	}


/* AJAX IMAGE */
/* AJAX IMAGE */
/* AJAX IMAGE */
#ajax #entry .image {
	z-index: 1;
	position: absolute;
	width: 100%;
	height: 100%;
	perspective: 1500px;
	}
/* NEXT */
#ajax #entry .image #next {
	z-index: 2;
	position: fixed;
	width: calc(((92dvh * 5) / 7) / 2);
	height: 100%;
	right: 0vw;
	padding: calc(var(--marge) / 4);
	filter: invert(1);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	cursor: e-resize;
	}
#ajax #entry .image #next img {
	width: 30px;
	opacity: .1;
	}
#ajax #entry .image #next:hover img {
	opacity: 1;
	}
/* PREVIOUS */
#ajax #entry .image #previous {
	z-index: 2;
    position: fixed;
    width: calc(((92dvh * 5) / 7) / 2);
    height: 100%;
    left: 0vw;
    padding: calc(var(--marge) / 4);
    filter: invert(1);
    display: flex;
    align-items: center;
    justify-content: flex-start;
	cursor: w-resize;
	}
#ajax #entry .image #previous.inactive {
	pointer-events: none;
	opacity: .5;
	}
#ajax #entry .image #previous img {
	width: 30px;
	opacity: .1;
	}
#ajax #entry .image #previous:hover img {
	opacity: 1;
	}
/* MAIN */
#ajax #entry .image img#main {
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	top: 50%;
	left: 50%;
	object-fit: cover;
	border-radius: 6px;
	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: 50%;
	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% - 25dvh);
	/* transform: rotate(-12deg); */
	}
#ajax #entry #main_after.action {
	left: calc(25% + 25dvh);
	/* transform: rotate(12deg); */
	}
/* MEDIA */
@media screen and (max-width: 1599px) {
	#ajax #entry .image #next {
		width: 50vw;
		}
	#ajax #entry .image #previous {
		width: 50vw;
	    }
	#ajax #entry .image img#main {
		border-radius: 0px;
		}
	}


/* AJAX RELATED */
/* AJAX RELATED */
/* AJAX RELATED */
#related {
	z-index: 4;
	position: absolute;
	width: calc((92dvh * 5) / 7 - var(--marge));
	bottom: calc(4dvh + calc(var(--marge) / 4));
	left: calc(50vw - calc(((92dvh * 5) / 7 - var(--marge)) / 2));
	filter: invert(1);
	pointer-events: none;
	display: flex;
	}
#related .container {
	width: 100%;
	display: flex;
	justify-content: center;
	}
#related .container .entry {
	width: 20px;
	min-width: 8px;
	height: 14px;
	padding: 6px 1px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	}
#related .container .entry.active {
	min-width: 60px;
	}
#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 .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_25);
	border-radius: 100px;
	}
#related .container .entry.active .element {
	background: var(--black);
	}