@font-face {
	font-family: Sharp Grotesk;
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url(fonts/sharp/SharpGroteskMedium25.eot);
	src: url(fonts/sharp/SharpGroteskMedium25d41d.eot?#iefix) format("embedded-opentype"), url(fonts/sharp/SharpGroteskMedium25.woff2) format("woff2"), url(fonts/sharp/SharpGroteskMedium25.woff) format("woff")
}

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
	vertical-align: baseline;
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block
}

body {
	line-height: 1
}

ol,
ul {
	list-style: none
}

blockquote,
q {
	quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
	content: "";
	content: none
}

table {
	border-spacing: 0;
	border-collapse: collapse
}

*,
:after,
:before {
	box-sizing: border-box
}

html {
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-tap-highlight-color: transparent;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%
}

body {
	-moz-osx-font-smoothing: grayscale;
	text-rendering: geometricPrecision
}

@media only screen {

	.sm-text-left,
	.text-left {
		text-align: left !important
	}

	.sm-text-center,
	.text-center {
		text-align: center !important
	}

	.sm-text-right,
	.text-right {
		text-align: right !important
	}

	.sm-text-#000,
	.sm-text-#000 a:not(.button),
	.sm-text-#000 p,
	.text-#000,
	.text-#000 a:not(.button),
	.text-#000 p {
		color: #0c0a09 !important
	}

	.sm-text-gray,
	.sm-text-gray a:not(.button),
	.sm-text-gray p,
	.text-gray,
	.text-gray a:not(.button),
	.text-gray p {
		color: #999 !important
	}

	.sm-text-gray-dark,
	.sm-text-gray-dark a:not(.button),
	.sm-text-gray-dark p,
	.text-gray-dark,
	.text-gray-dark a:not(.button),
	.text-gray-dark p {
		color: #666 !important
	}

	.sm-text-gray-light,
	.sm-text-gray-light a:not(.button),
	.sm-text-gray-light p,
	.text-gray-light,
	.text-gray-light a:not(.button),
	.text-gray-light p {
		color: #e6e6e6 !important
	}

	.sm-text-#fff,
	.sm-text-#fff a:not(.button),
	.sm-text-#fff p,
	.text-#fff,
	.text-#fff a:not(.button),
	.text-#fff p {
		color: #fff !important
	}

	.sm-text-alert,
	.sm-text-alert a:not(.button),
	.sm-text-alert p,
	.text-alert,
	.text-alert a:not(.button),
	.text-alert p {
		color: #b11730 !important
	}

	.sm-text-warning,
	.sm-text-warning a:not(.button),
	.sm-text-warning p,
	.text-warning,
	.text-warning a:not(.button),
	.text-warning p {
		color: #b8860b !important
	}

	.sm-text-info,
	.sm-text-info a:not(.button),
	.sm-text-info p,
	.text-info,
	.text-info a:not(.button),
	.text-info p {
		color: #205d86 !important
	}

	.sm-text-success,
	.sm-text-success a:not(.button),
	.sm-text-success p,
	.text-success,
	.text-success a:not(.button),
	.text-success p {
		color: #09830e !important
	}

	.sm-text-primary,
	.sm-text-primary a:not(.button),
	.sm-text-primary p,
	.text-primary,
	.text-primary a:not(.button),
	.text-primary p {
		color: #202d78 !important
	}

	.sm-text-secondary,
	.sm-text-secondary a:not(.button),
	.sm-text-secondary p,
	.text-secondary,
	.text-secondary a:not(.button),
	.text-secondary p {
		color: #ff2203 !important
	}

	.sm-text-third,
	.sm-text-third a:not(.button),
	.sm-text-third p,
	.text-third,
	.text-third a:not(.button),
	.text-third p {
		color: #fff !important
	}

	.sm-text-fourth,
	.sm-text-fourth a:not(.button),
	.sm-text-fourth p,
	.text-fourth,
	.text-fourth a:not(.button),
	.text-fourth p {
		color: #860301 !important
	}

	.bg-#000,
	.sm-bg-#000 {
		background-color: #0c0a09
	}

	.bg-gray,
	.sm-bg-gray {
		background-color: #999
	}

	.bg-gray-dark,
	.sm-bg-gray-dark {
		background-color: #666
	}

	.bg-gray-light,
	.sm-bg-gray-light {
		background-color: #e6e6e6
	}

	.bg-#fff,
	.sm-bg-#fff {
		background-color: #fff
	}

	.bg-alert,
	.sm-bg-alert {
		background-color: #b11730
	}

	.bg-warning,
	.sm-bg-warning {
		background-color: #b8860b
	}

	.bg-info,
	.sm-bg-info {
		background-color: #205d86
	}

	.bg-success,
	.sm-bg-success {
		background-color: #09830e
	}

	.bg-primary,
	.sm-bg-primary {
		background-color: #202d78
	}

	.bg-secondary,
	.sm-bg-secondary {
		background-color: #ff2203
	}

	.bg-third,
	.sm-bg-third {
		background-color: #fff
	}

	.bg-fourth,
	.sm-bg-fourth {
		background-color: #860301
	}
}

@media only screen and (min-width:641px) {
	.md-text-left {
		text-align: left !important
	}

	.md-text-center {
		text-align: center !important
	}

	.md-text-right {
		text-align: right !important
	}

	.md-text-#000,
	.md-text-#000 a:not(.button),
	.md-text-#000 p {
		color: #0c0a09 !important
	}

	.md-text-gray,
	.md-text-gray a:not(.button),
	.md-text-gray p {
		color: #999 !important
	}

	.md-text-gray-dark,
	.md-text-gray-dark a:not(.button),
	.md-text-gray-dark p {
		color: #666 !important
	}

	.md-text-gray-light,
	.md-text-gray-light a:not(.button),
	.md-text-gray-light p {
		color: #e6e6e6 !important
	}

	.md-text-#fff,
	.md-text-#fff a:not(.button),
	.md-text-#fff p {
		color: #fff !important
	}

	.md-text-alert,
	.md-text-alert a:not(.button),
	.md-text-alert p {
		color: #b11730 !important
	}

	.md-text-warning,
	.md-text-warning a:not(.button),
	.md-text-warning p {
		color: #b8860b !important
	}

	.md-text-info,
	.md-text-info a:not(.button),
	.md-text-info p {
		color: #205d86 !important
	}

	.md-text-success,
	.md-text-success a:not(.button),
	.md-text-success p {
		color: #09830e !important
	}

	.md-text-primary,
	.md-text-primary a:not(.button),
	.md-text-primary p {
		color: #202d78 !important
	}

	.md-text-secondary,
	.md-text-secondary a:not(.button),
	.md-text-secondary p {
		color: #ff2203 !important
	}

	.md-text-third,
	.md-text-third a:not(.button),
	.md-text-third p {
		color: #fff !important
	}

	.md-text-fourth,
	.md-text-fourth a:not(.button),
	.md-text-fourth p {
		color: #860301 !important
	}

	.md-bg-#000 {
		background-color: #0c0a09
	}

	.md-bg-gray {
		background-color: #999
	}

	.md-bg-gray-dark {
		background-color: #666
	}

	.md-bg-gray-light {
		background-color: #e6e6e6
	}

	.md-bg-#fff {
		background-color: #fff
	}

	.md-bg-alert {
		background-color: #b11730
	}

	.md-bg-warning {
		background-color: #b8860b
	}

	.md-bg-info {
		background-color: #205d86
	}

	.md-bg-success {
		background-color: #09830e
	}

	.md-bg-primary {
		background-color: #202d78
	}

	.md-bg-secondary {
		background-color: #ff2203
	}

	.md-bg-third {
		background-color: #fff
	}

	.md-bg-fourth {
		background-color: #860301
	}
}

@media only screen and (min-width:1025px) {
	.lg-text-left {
		text-align: left !important
	}

	.lg-text-center {
		text-align: center !important
	}

	.lg-text-right {
		text-align: right !important
	}

	.lg-text-#000,
	.lg-text-#000 a:not(.button),
	.lg-text-#000 p {
		color: #0c0a09 !important
	}

	.lg-text-gray,
	.lg-text-gray a:not(.button),
	.lg-text-gray p {
		color: #999 !important
	}

	.lg-text-gray-dark,
	.lg-text-gray-dark a:not(.button),
	.lg-text-gray-dark p {
		color: #666 !important
	}

	.lg-text-gray-light,
	.lg-text-gray-light a:not(.button),
	.lg-text-gray-light p {
		color: #e6e6e6 !important
	}

	.lg-text-#fff,
	.lg-text-#fff a:not(.button),
	.lg-text-#fff p {
		color: #fff !important
	}

	.lg-text-alert,
	.lg-text-alert a:not(.button),
	.lg-text-alert p {
		color: #b11730 !important
	}

	.lg-text-warning,
	.lg-text-warning a:not(.button),
	.lg-text-warning p {
		color: #b8860b !important
	}

	.lg-text-info,
	.lg-text-info a:not(.button),
	.lg-text-info p {
		color: #205d86 !important
	}

	.lg-text-success,
	.lg-text-success a:not(.button),
	.lg-text-success p {
		color: #09830e !important
	}

	.lg-text-primary,
	.lg-text-primary a:not(.button),
	.lg-text-primary p {
		color: #202d78 !important
	}

	.lg-text-secondary,
	.lg-text-secondary a:not(.button),
	.lg-text-secondary p {
		color: #ff2203 !important
	}

	.lg-text-third,
	.lg-text-third a:not(.button),
	.lg-text-third p {
		color: #fff !important
	}

	.lg-text-fourth,
	.lg-text-fourth a:not(.button),
	.lg-text-fourth p {
		color: #860301 !important
	}

	.lg-bg-#000 {
		background-color: #0c0a09
	}

	.lg-bg-gray {
		background-color: #999
	}

	.lg-bg-gray-dark {
		background-color: #666
	}

	.lg-bg-gray-light {
		background-color: #e6e6e6
	}

	.lg-bg-#fff {
		background-color: #fff
	}

	.lg-bg-alert {
		background-color: #b11730
	}

	.lg-bg-warning {
		background-color: #b8860b
	}

	.lg-bg-info {
		background-color: #205d86
	}

	.lg-bg-success {
		background-color: #09830e
	}

	.lg-bg-primary {
		background-color: #202d78
	}

	.lg-bg-secondary {
		background-color: #ff2203
	}

	.lg-bg-third {
		background-color: #fff
	}

	.lg-bg-fourth {
		background-color: #860301
	}
}

@media only screen and (min-width:1367px) {
	.xlg-text-left {
		text-align: left !important
	}

	.xlg-text-center {
		text-align: center !important
	}

	.xlg-text-right {
		text-align: right !important
	}

	.xlg-text-#000,
	.xlg-text-#000 a:not(.button),
	.xlg-text-#000 p {
		color: #0c0a09 !important
	}

	.xlg-text-gray,
	.xlg-text-gray a:not(.button),
	.xlg-text-gray p {
		color: #999 !important
	}

	.xlg-text-gray-dark,
	.xlg-text-gray-dark a:not(.button),
	.xlg-text-gray-dark p {
		color: #666 !important
	}

	.xlg-text-gray-light,
	.xlg-text-gray-light a:not(.button),
	.xlg-text-gray-light p {
		color: #e6e6e6 !important
	}

	.xlg-text-#fff,
	.xlg-text-#fff a:not(.button),
	.xlg-text-#fff p {
		color: #fff !important
	}

	.xlg-text-alert,
	.xlg-text-alert a:not(.button),
	.xlg-text-alert p {
		color: #b11730 !important
	}

	.xlg-text-warning,
	.xlg-text-warning a:not(.button),
	.xlg-text-warning p {
		color: #b8860b !important
	}

	.xlg-text-info,
	.xlg-text-info a:not(.button),
	.xlg-text-info p {
		color: #205d86 !important
	}

	.xlg-text-success,
	.xlg-text-success a:not(.button),
	.xlg-text-success p {
		color: #09830e !important
	}

	.xlg-text-primary,
	.xlg-text-primary a:not(.button),
	.xlg-text-primary p {
		color: #202d78 !important
	}

	.xlg-text-secondary,
	.xlg-text-secondary a:not(.button),
	.xlg-text-secondary p {
		color: #ff2203 !important
	}

	.xlg-text-third,
	.xlg-text-third a:not(.button),
	.xlg-text-third p {
		color: #fff !important
	}

	.xlg-text-fourth,
	.xlg-text-fourth a:not(.button),
	.xlg-text-fourth p {
		color: #860301 !important
	}

	.xlg-bg-#000 {
		background-color: #0c0a09
	}

	.xlg-bg-gray {
		background-color: #999
	}

	.xlg-bg-gray-dark {
		background-color: #666
	}

	.xlg-bg-gray-light {
		background-color: #e6e6e6
	}

	.xlg-bg-#fff {
		background-color: #fff
	}

	.xlg-bg-alert {
		background-color: #b11730
	}

	.xlg-bg-warning {
		background-color: #b8860b
	}

	.xlg-bg-info {
		background-color: #205d86
	}

	.xlg-bg-success {
		background-color: #09830e
	}

	.xlg-bg-primary {
		background-color: #202d78
	}

	.xlg-bg-secondary {
		background-color: #ff2203
	}

	.xlg-bg-third {
		background-color: #fff
	}

	.xlg-bg-fourth {
		background-color: #860301
	}
}

.text-white a:not(.button) {
	color: #fff !important;
	border-color: #fff
}

[class*=ratio-] {
	position: relative
}

[class*=ratio-] img:not(.no-cover) {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center
}

[class*=ratio-]:before {
	display: block;
	width: 100%;
	content: ""
}

@media only screen and (min-width:1025px) {
	[class*=ratio-] .lg-ratio-content {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%)
	}

	[class*=ratio-] .lg-ratio-content img {
		margin: 0 auto
	}
}

.ratio-1_1:before {
	padding-top: 100%
}

.ratio-3_5:before {
	padding-top: 166.66667%
}

.ratio-3_4:before {
	padding-top: 133.33333%
}

.sm-ratio-4_3:before {
	padding-top: 75%
}

@media only screen and (min-width:641px) {
	.md-ratio-3_4:before {
		padding-top: 133.33333%
	}
}

@media only screen and (min-width:1025px) {
	.lg-ratio-1_1:before {
		padding-top: 100%
	}
}

.mg-auto {
	margin-right: auto;
	margin-left: auto
}

@keyframes a {
	0% {
		transform: rotate(0deg)
	}

	to {
		transform: rotate(1turn)
	}
}

body,
html,
main {
	width: 100%
}

body,
html {
	overflow: hidden;
	height: 100%;
	background-color: #0c0a09;
	overscroll-behavior-x: none
}

html.is-loading,
html.is-loading * {
	cursor: progress;
	pointer-events: none
}

body {
	touch-action: none
}

img {
	max-width: 100%
}

#textLoad {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	font-family: Sharp Grotesk;
	opacity: 0
}

.fond-video {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 0;
	opacity: 1;
	pointer-events: none
}

.fond-video,
.fond-video video {
	object-fit: cover;
	width: 100%;
	height: 100%
}

@keyframes b {

	0%,
	to {
		transform: translate(0)
	}

	10% {
		transform: translate(-5%, -10%)
	}

	20% {
		transform: translate(-15%, 5%)
	}

	30% {
		transform: translate(7%, -25%)
	}

	40% {
		transform: translate(-5%, 25%)
	}

	50% {
		transform: translate(-15%, 10%)
	}

	60% {
		transform: translate(15%)
	}

	70% {
		transform: translateY(15%)
	}

	80% {
		transform: translate(3%, 35%)
	}

	90% {
		transform: translate(-10%, 10%)
	}
}

main:after {
	content: "";
	position: fixed;
	top: -100%;
	left: -50%;
	z-index: 6;
	width: 300%;
	height: 300%;
	background-image: url(../media/site/8eaa32990d-1645300855/paper-pattern-1408x.html);
	opacity: .2;
	pointer-events: none;
	animation: b 8s steps(10) infinite;
	mix-blend-mode: color-burn
}

canvas.a-galleryCanvas {
	transform: scale(1.1) rotate(3deg)
}

a,
button,
canvas {
	cursor: pointer
}

.is-loaded .hide-first {
	opacity: 1
}

.row {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-start;
	width: 100%;
	margin: 0 auto
}

.row.xl {
	max-width: 100%
}

[class*=column-] {
	display: flex;
	flex-direction: column;
	align-items: flex-start
}

[class*=column-],
[class*=column-]:not(.no-width)>* {
	width: 100%;
	max-width: 100%
}

@media only screen {

	.flex,
	.sm-flex {
		display: flex
	}

	.column-0,
	.sm-column-0 {
		flex: 0 0 0%;
		width: 0;
		max-width: 0
	}

	.offset-0,
	.sm-offset-0 {
		margin-left: 0
	}

	.column-1,
	.sm-column-1 {
		flex: 0 0 4.16667%;
		width: 4.16667%;
		max-width: 4.16667%
	}

	.offset-1,
	.sm-offset-1 {
		margin-left: 4.16667%
	}

	.column-2,
	.sm-column-2 {
		flex: 0 0 8.33333%;
		width: 8.33333%;
		max-width: 8.33333%
	}

	.offset-2,
	.sm-offset-2 {
		margin-left: 8.33333%
	}

	.column-3,
	.sm-column-3 {
		flex: 0 0 12.5%;
		width: 12.5%;
		max-width: 12.5%
	}

	.offset-3,
	.sm-offset-3 {
		margin-left: 12.5%
	}

	.column-4,
	.sm-column-4 {
		flex: 0 0 16.66667%;
		width: 16.66667%;
		max-width: 16.66667%
	}

	.offset-4,
	.sm-offset-4 {
		margin-left: 16.66667%
	}

	.column-5,
	.sm-column-5 {
		flex: 0 0 20.83333%;
		width: 20.83333%;
		max-width: 20.83333%
	}

	.offset-5,
	.sm-offset-5 {
		margin-left: 20.83333%
	}

	.column-6,
	.sm-column-6 {
		flex: 0 0 25%;
		width: 25%;
		max-width: 25%
	}

	.offset-6,
	.sm-offset-6 {
		margin-left: 25%
	}

	.column-7,
	.sm-column-7 {
		flex: 0 0 29.16667%;
		width: 29.16667%;
		max-width: 29.16667%
	}

	.offset-7,
	.sm-offset-7 {
		margin-left: 29.16667%
	}

	.column-8,
	.sm-column-8 {
		flex: 0 0 33.33333%;
		width: 33.33333%;
		max-width: 33.33333%
	}

	.offset-8,
	.sm-offset-8 {
		margin-left: 33.33333%
	}

	.column-9,
	.sm-column-9 {
		flex: 0 0 37.5%;
		width: 37.5%;
		max-width: 37.5%
	}

	.offset-9,
	.sm-offset-9 {
		margin-left: 37.5%
	}

	.column-10,
	.sm-column-10 {
		flex: 0 0 41.66667%;
		width: 41.66667%;
		max-width: 41.66667%
	}

	.offset-10,
	.sm-offset-10 {
		margin-left: 41.66667%
	}

	.column-11,
	.sm-column-11 {
		flex: 0 0 45.83333%;
		width: 45.83333%;
		max-width: 45.83333%
	}

	.offset-11,
	.sm-offset-11 {
		margin-left: 45.83333%
	}

	.column-12,
	.sm-column-12 {
		flex: 0 0 50%;
		width: 50%;
		max-width: 50%
	}

	.offset-12,
	.sm-offset-12 {
		margin-left: 50%
	}

	.column-13,
	.sm-column-13 {
		flex: 0 0 54.16667%;
		width: 54.16667%;
		max-width: 54.16667%
	}

	.offset-13,
	.sm-offset-13 {
		margin-left: 54.16667%
	}

	.column-14,
	.sm-column-14 {
		flex: 0 0 58.33333%;
		width: 58.33333%;
		max-width: 58.33333%
	}

	.offset-14,
	.sm-offset-14 {
		margin-left: 58.33333%
	}

	.column-15,
	.sm-column-15 {
		flex: 0 0 62.5%;
		width: 62.5%;
		max-width: 62.5%
	}

	.offset-15,
	.sm-offset-15 {
		margin-left: 62.5%
	}

	.column-16,
	.sm-column-16 {
		flex: 0 0 66.66667%;
		width: 66.66667%;
		max-width: 66.66667%
	}

	.offset-16,
	.sm-offset-16 {
		margin-left: 66.66667%
	}

	.column-17,
	.sm-column-17 {
		flex: 0 0 70.83333%;
		width: 70.83333%;
		max-width: 70.83333%
	}

	.offset-17,
	.sm-offset-17 {
		margin-left: 70.83333%
	}

	.column-18,
	.sm-column-18 {
		flex: 0 0 75%;
		width: 75%;
		max-width: 75%
	}

	.offset-18,
	.sm-offset-18 {
		margin-left: 75%
	}

	.column-19,
	.sm-column-19 {
		flex: 0 0 79.16667%;
		width: 79.16667%;
		max-width: 79.16667%
	}

	.offset-19,
	.sm-offset-19 {
		margin-left: 79.16667%
	}

	.column-20,
	.sm-column-20 {
		flex: 0 0 83.33333%;
		width: 83.33333%;
		max-width: 83.33333%
	}

	.offset-20,
	.sm-offset-20 {
		margin-left: 83.33333%
	}

	.column-21,
	.sm-column-21 {
		flex: 0 0 87.5%;
		width: 87.5%;
		max-width: 87.5%
	}

	.offset-21,
	.sm-offset-21 {
		margin-left: 87.5%
	}

	.column-22,
	.sm-column-22 {
		flex: 0 0 91.66667%;
		width: 91.66667%;
		max-width: 91.66667%
	}

	.offset-22,
	.sm-offset-22 {
		margin-left: 91.66667%
	}

	.column-23,
	.sm-column-23 {
		flex: 0 0 95.83333%;
		width: 95.83333%;
		max-width: 95.83333%
	}

	.offset-23,
	.sm-offset-23 {
		margin-left: 95.83333%
	}

	.column-24,
	.sm-column-24 {
		flex: 0 0 100%;
		width: 100%;
		max-width: 100%
	}

	.size-5,
	.sm-size-5 {
		width: 5%;
		max-width: 5%
	}

	.size-10,
	.sm-size-10 {
		width: 10%;
		max-width: 10%
	}

	.size-15,
	.sm-size-15 {
		width: 15%;
		max-width: 15%
	}

	.size-20,
	.sm-size-20 {
		width: 20%;
		max-width: 20%
	}

	.size-25,
	.sm-size-25 {
		width: 25%;
		max-width: 25%
	}

	.size-30,
	.sm-size-30 {
		width: 30%;
		max-width: 30%
	}

	.size-35,
	.sm-size-35 {
		width: 35%;
		max-width: 35%
	}

	.size-40,
	.sm-size-40 {
		width: 40%;
		max-width: 40%
	}

	.size-45,
	.sm-size-45 {
		width: 45%;
		max-width: 45%
	}

	.size-50,
	.sm-size-50 {
		width: 50%;
		max-width: 50%
	}

	.size-55,
	.sm-size-55 {
		width: 55%;
		max-width: 55%
	}

	.size-60,
	.sm-size-60 {
		width: 60%;
		max-width: 60%
	}

	.size-65,
	.sm-size-65 {
		width: 65%;
		max-width: 65%
	}

	.size-70,
	.sm-size-70 {
		width: 70%;
		max-width: 70%
	}

	.size-75,
	.sm-size-75 {
		width: 75%;
		max-width: 75%
	}

	.size-80,
	.sm-size-80 {
		width: 80%;
		max-width: 80%
	}

	.size-85,
	.sm-size-85 {
		width: 85%;
		max-width: 85%
	}

	.size-90,
	.sm-size-90 {
		width: 90%;
		max-width: 90%
	}

	.size-95,
	.sm-size-95 {
		width: 95%;
		max-width: 95%
	}

	.size-100,
	.sm-size-100 {
		width: 100%;
		max-width: 100%
	}

	.size-33,
	.sm-size-33 {
		width: 33.333333%;
		max-width: 33.333333%
	}

	.size-66,
	.sm-size-66 {
		width: 66.666666%;
		max-width: 66.666666%
	}

	.size-49,
	.sm-size-49 {
		width: 49%;
		max-width: 49%
	}

	.size-auto,
	.sm-size-auto {
		width: auto;
		max-width: auto
	}

	.height-100,
	.sm-height-100 {
		height: 100%
	}

	.align-start-start,
	.sm-align-start-start {
		align-items: flex-start;
		justify-content: flex-start
	}

	.align-start-end,
	.sm-align-start-end {
		align-items: flex-end;
		justify-content: flex-start
	}

	.align-start-center,
	.sm-align-start-center {
		align-items: center;
		justify-content: flex-start
	}

	.align-end-start,
	.sm-align-end-start {
		align-items: flex-start;
		justify-content: flex-end
	}

	.align-end-end,
	.sm-align-end-end {
		align-items: flex-end;
		justify-content: flex-end
	}

	.align-end-center,
	.sm-align-end-center {
		align-items: center;
		justify-content: flex-end
	}

	.align-center-start,
	.sm-align-center-start {
		align-items: flex-start;
		justify-content: center
	}

	.align-center-end,
	.sm-align-center-end {
		align-items: flex-end;
		justify-content: center
	}

	.align-center-center,
	.sm-align-center-center {
		align-items: center;
		justify-content: center
	}

	.align-spacebetween-start,
	.sm-align-spacebetween-start {
		align-items: flex-start;
		justify-content: space-between
	}

	.align-spacebetween-end,
	.sm-align-spacebetween-end {
		align-items: flex-end;
		justify-content: space-between
	}

	.align-spacebetween-center,
	.sm-align-spacebetween-center {
		align-items: center;
		justify-content: space-between
	}

	.layout-column,
	.sm-layout-column {
		flex-direction: column
	}

	.layout-columnreverse,
	.sm-layout-columnreverse {
		flex-direction: column-reverse
	}

	.layout-row,
	.sm-layout-row {
		flex-direction: row
	}

	.layout-rowreverse,
	.sm-layout-rowreverse {
		flex-direction: row-reverse
	}

	.layout-wrap,
	.sm-layout-wrap {
		flex-wrap: wrap
	}

	.layout-nowrap,
	.sm-layout-nowrap {
		flex-wrap: nowrap
	}

	.dp-block,
	.sm-dp-block {
		display: block
	}

	.dp-inlblock,
	.sm-dp-inlblock {
		display: inline-block
	}

	.dp-inl,
	.sm-dp-inl {
		display: inline
	}

	.dp-none,
	.sm-dp-none {
		display: none
	}
}

@media only screen and (min-width:641px) {
	.md-flex {
		display: flex
	}

	.md-column-0 {
		flex: 0 0 0%;
		width: 0;
		max-width: 0
	}

	.md-offset-0 {
		margin-left: 0
	}

	.md-column-1 {
		flex: 0 0 4.16667%;
		width: 4.16667%;
		max-width: 4.16667%
	}

	.md-offset-1 {
		margin-left: 4.16667%
	}

	.md-column-2 {
		flex: 0 0 8.33333%;
		width: 8.33333%;
		max-width: 8.33333%
	}

	.md-offset-2 {
		margin-left: 8.33333%
	}

	.md-column-3 {
		flex: 0 0 12.5%;
		width: 12.5%;
		max-width: 12.5%
	}

	.md-offset-3 {
		margin-left: 12.5%
	}

	.md-column-4 {
		flex: 0 0 16.66667%;
		width: 16.66667%;
		max-width: 16.66667%
	}

	.md-offset-4 {
		margin-left: 16.66667%
	}

	.md-column-5 {
		flex: 0 0 20.83333%;
		width: 20.83333%;
		max-width: 20.83333%
	}

	.md-offset-5 {
		margin-left: 20.83333%
	}

	.md-column-6 {
		flex: 0 0 25%;
		width: 25%;
		max-width: 25%
	}

	.md-offset-6 {
		margin-left: 25%
	}

	.md-column-7 {
		flex: 0 0 29.16667%;
		width: 29.16667%;
		max-width: 29.16667%
	}

	.md-offset-7 {
		margin-left: 29.16667%
	}

	.md-column-8 {
		flex: 0 0 33.33333%;
		width: 33.33333%;
		max-width: 33.33333%
	}

	.md-offset-8 {
		margin-left: 33.33333%
	}

	.md-column-9 {
		flex: 0 0 37.5%;
		width: 37.5%;
		max-width: 37.5%
	}

	.md-offset-9 {
		margin-left: 37.5%
	}

	.md-column-10 {
		flex: 0 0 41.66667%;
		width: 41.66667%;
		max-width: 41.66667%
	}

	.md-offset-10 {
		margin-left: 41.66667%
	}

	.md-column-11 {
		flex: 0 0 45.83333%;
		width: 45.83333%;
		max-width: 45.83333%
	}

	.md-offset-11 {
		margin-left: 45.83333%
	}

	.md-column-12 {
		flex: 0 0 50%;
		width: 50%;
		max-width: 50%
	}

	.md-offset-12 {
		margin-left: 50%
	}

	.md-column-13 {
		flex: 0 0 54.16667%;
		width: 54.16667%;
		max-width: 54.16667%
	}

	.md-offset-13 {
		margin-left: 54.16667%
	}

	.md-column-14 {
		flex: 0 0 58.33333%;
		width: 58.33333%;
		max-width: 58.33333%
	}

	.md-offset-14 {
		margin-left: 58.33333%
	}

	.md-column-15 {
		flex: 0 0 62.5%;
		width: 62.5%;
		max-width: 62.5%
	}

	.md-offset-15 {
		margin-left: 62.5%
	}

	.md-column-16 {
		flex: 0 0 66.66667%;
		width: 66.66667%;
		max-width: 66.66667%
	}

	.md-offset-16 {
		margin-left: 66.66667%
	}

	.md-column-17 {
		flex: 0 0 70.83333%;
		width: 70.83333%;
		max-width: 70.83333%
	}

	.md-offset-17 {
		margin-left: 70.83333%
	}

	.md-column-18 {
		flex: 0 0 75%;
		width: 75%;
		max-width: 75%
	}

	.md-offset-18 {
		margin-left: 75%
	}

	.md-column-19 {
		flex: 0 0 79.16667%;
		width: 79.16667%;
		max-width: 79.16667%
	}

	.md-offset-19 {
		margin-left: 79.16667%
	}

	.md-column-20 {
		flex: 0 0 83.33333%;
		width: 83.33333%;
		max-width: 83.33333%
	}

	.md-offset-20 {
		margin-left: 83.33333%
	}

	.md-column-21 {
		flex: 0 0 87.5%;
		width: 87.5%;
		max-width: 87.5%
	}

	.md-offset-21 {
		margin-left: 87.5%
	}

	.md-column-22 {
		flex: 0 0 91.66667%;
		width: 91.66667%;
		max-width: 91.66667%
	}

	.md-offset-22 {
		margin-left: 91.66667%
	}

	.md-column-23 {
		flex: 0 0 95.83333%;
		width: 95.83333%;
		max-width: 95.83333%
	}

	.md-offset-23 {
		margin-left: 95.83333%
	}

	.md-column-24 {
		flex: 0 0 100%;
		width: 100%;
		max-width: 100%
	}

	.md-size-5 {
		width: 5%;
		max-width: 5%
	}

	.md-size-10 {
		width: 10%;
		max-width: 10%
	}

	.md-size-15 {
		width: 15%;
		max-width: 15%
	}

	.md-size-20 {
		width: 20%;
		max-width: 20%
	}

	.md-size-25 {
		width: 25%;
		max-width: 25%
	}

	.md-size-30 {
		width: 30%;
		max-width: 30%
	}

	.md-size-35 {
		width: 35%;
		max-width: 35%
	}

	.md-size-40 {
		width: 40%;
		max-width: 40%
	}

	.md-size-45 {
		width: 45%;
		max-width: 45%
	}

	.md-size-50 {
		width: 50%;
		max-width: 50%
	}

	.md-size-55 {
		width: 55%;
		max-width: 55%
	}

	.md-size-60 {
		width: 60%;
		max-width: 60%
	}

	.md-size-65 {
		width: 65%;
		max-width: 65%
	}

	.md-size-70 {
		width: 70%;
		max-width: 70%
	}

	.md-size-75 {
		width: 75%;
		max-width: 75%
	}

	.md-size-80 {
		width: 80%;
		max-width: 80%
	}

	.md-size-85 {
		width: 85%;
		max-width: 85%
	}

	.md-size-90 {
		width: 90%;
		max-width: 90%
	}

	.md-size-95 {
		width: 95%;
		max-width: 95%
	}

	.md-size-100 {
		width: 100%;
		max-width: 100%
	}

	.md-size-33 {
		width: 33.333333%;
		max-width: 33.333333%
	}

	.md-size-66 {
		width: 66.666666%;
		max-width: 66.666666%
	}

	.md-size-49 {
		width: 49%;
		max-width: 49%
	}

	.md-size-auto {
		width: auto;
		max-width: auto
	}

	.md-height-100 {
		height: 100%
	}

	.md-align-start-start {
		align-items: flex-start;
		justify-content: flex-start
	}

	.md-align-start-end {
		align-items: flex-end;
		justify-content: flex-start
	}

	.md-align-start-center {
		align-items: center;
		justify-content: flex-start
	}

	.md-align-end-start {
		align-items: flex-start;
		justify-content: flex-end
	}

	.md-align-end-end {
		align-items: flex-end;
		justify-content: flex-end
	}

	.md-align-end-center {
		align-items: center;
		justify-content: flex-end
	}

	.md-align-center-start {
		align-items: flex-start;
		justify-content: center
	}

	.md-align-center-end {
		align-items: flex-end;
		justify-content: center
	}

	.md-align-center-center {
		align-items: center;
		justify-content: center
	}

	.md-align-spacebetween-start {
		align-items: flex-start;
		justify-content: space-between
	}

	.md-align-spacebetween-end {
		align-items: flex-end;
		justify-content: space-between
	}

	.md-align-spacebetween-center {
		align-items: center;
		justify-content: space-between
	}

	.md-layout-column {
		flex-direction: column
	}

	.md-layout-columnreverse {
		flex-direction: column-reverse
	}

	.md-layout-row {
		flex-direction: row
	}

	.md-layout-rowreverse {
		flex-direction: row-reverse
	}

	.md-layout-wrap {
		flex-wrap: wrap
	}

	.md-layout-nowrap {
		flex-wrap: nowrap
	}

	.md-dp-block {
		display: block
	}

	.md-dp-inlblock {
		display: inline-block
	}

	.md-dp-inl {
		display: inline
	}

	.md-dp-none {
		display: none
	}
}

@media only screen and (min-width:1025px) {
	.lg-flex {
		display: flex
	}

	.lg-column-0 {
		flex: 0 0 0%;
		width: 0;
		max-width: 0
	}

	.lg-offset-0 {
		margin-left: 0
	}

	.lg-column-1 {
		flex: 0 0 4.16667%;
		width: 4.16667%;
		max-width: 4.16667%
	}

	.lg-offset-1 {
		margin-left: 4.16667%
	}

	.lg-column-2 {
		flex: 0 0 8.33333%;
		width: 8.33333%;
		max-width: 8.33333%
	}

	.lg-offset-2 {
		margin-left: 8.33333%
	}

	.lg-column-3 {
		flex: 0 0 12.5%;
		width: 12.5%;
		max-width: 12.5%
	}

	.lg-offset-3 {
		margin-left: 12.5%
	}

	.lg-column-4 {
		flex: 0 0 16.66667%;
		width: 16.66667%;
		max-width: 16.66667%
	}

	.lg-offset-4 {
		margin-left: 16.66667%
	}

	.lg-column-5 {
		flex: 0 0 20.83333%;
		width: 20.83333%;
		max-width: 20.83333%
	}

	.lg-offset-5 {
		margin-left: 20.83333%
	}

	.lg-column-6 {
		flex: 0 0 25%;
		width: 25%;
		max-width: 25%
	}

	.lg-offset-6 {
		margin-left: 25%
	}

	.lg-column-7 {
		flex: 0 0 29.16667%;
		width: 29.16667%;
		max-width: 29.16667%
	}

	.lg-offset-7 {
		margin-left: 29.16667%
	}

	.lg-column-8 {
		flex: 0 0 33.33333%;
		width: 33.33333%;
		max-width: 33.33333%
	}

	.lg-offset-8 {
		margin-left: 33.33333%
	}

	.lg-column-9 {
		flex: 0 0 37.5%;
		width: 37.5%;
		max-width: 37.5%
	}

	.lg-offset-9 {
		margin-left: 37.5%
	}

	.lg-column-10 {
		flex: 0 0 41.66667%;
		width: 41.66667%;
		max-width: 41.66667%
	}

	.lg-offset-10 {
		margin-left: 41.66667%
	}

	.lg-column-11 {
		flex: 0 0 45.83333%;
		width: 45.83333%;
		max-width: 45.83333%
	}

	.lg-offset-11 {
		margin-left: 45.83333%
	}

	.lg-column-12 {
		flex: 0 0 50%;
		width: 50%;
		max-width: 50%
	}

	.lg-offset-12 {
		margin-left: 50%
	}

	.lg-column-13 {
		flex: 0 0 54.16667%;
		width: 54.16667%;
		max-width: 54.16667%
	}

	.lg-offset-13 {
		margin-left: 54.16667%
	}

	.lg-column-14 {
		flex: 0 0 58.33333%;
		width: 58.33333%;
		max-width: 58.33333%
	}

	.lg-offset-14 {
		margin-left: 58.33333%
	}

	.lg-column-15 {
		flex: 0 0 62.5%;
		width: 62.5%;
		max-width: 62.5%
	}

	.lg-offset-15 {
		margin-left: 62.5%
	}

	.lg-column-16 {
		flex: 0 0 66.66667%;
		width: 66.66667%;
		max-width: 66.66667%
	}

	.lg-offset-16 {
		margin-left: 66.66667%
	}

	.lg-column-17 {
		flex: 0 0 70.83333%;
		width: 70.83333%;
		max-width: 70.83333%
	}

	.lg-offset-17 {
		margin-left: 70.83333%
	}

	.lg-column-18 {
		flex: 0 0 75%;
		width: 75%;
		max-width: 75%
	}

	.lg-offset-18 {
		margin-left: 75%
	}

	.lg-column-19 {
		flex: 0 0 79.16667%;
		width: 79.16667%;
		max-width: 79.16667%
	}

	.lg-offset-19 {
		margin-left: 79.16667%
	}

	.lg-column-20 {
		flex: 0 0 83.33333%;
		width: 83.33333%;
		max-width: 83.33333%
	}

	.lg-offset-20 {
		margin-left: 83.33333%
	}

	.lg-column-21 {
		flex: 0 0 87.5%;
		width: 87.5%;
		max-width: 87.5%
	}

	.lg-offset-21 {
		margin-left: 87.5%
	}

	.lg-column-22 {
		flex: 0 0 91.66667%;
		width: 91.66667%;
		max-width: 91.66667%
	}

	.lg-offset-22 {
		margin-left: 91.66667%
	}

	.lg-column-23 {
		flex: 0 0 95.83333%;
		width: 95.83333%;
		max-width: 95.83333%
	}

	.lg-offset-23 {
		margin-left: 95.83333%
	}

	.lg-column-24 {
		flex: 0 0 100%;
		width: 100%;
		max-width: 100%
	}

	.lg-size-5 {
		width: 5%;
		max-width: 5%
	}

	.lg-size-10 {
		width: 10%;
		max-width: 10%
	}

	.lg-size-15 {
		width: 15%;
		max-width: 15%
	}

	.lg-size-20 {
		width: 20%;
		max-width: 20%
	}

	.lg-size-25 {
		width: 25%;
		max-width: 25%
	}

	.lg-size-30 {
		width: 30%;
		max-width: 30%
	}

	.lg-size-35 {
		width: 35%;
		max-width: 35%
	}

	.lg-size-40 {
		width: 40%;
		max-width: 40%
	}

	.lg-size-45 {
		width: 45%;
		max-width: 45%
	}

	.lg-size-50 {
		width: 50%;
		max-width: 50%
	}

	.lg-size-55 {
		width: 55%;
		max-width: 55%
	}

	.lg-size-60 {
		width: 60%;
		max-width: 60%
	}

	.lg-size-65 {
		width: 65%;
		max-width: 65%
	}

	.lg-size-70 {
		width: 70%;
		max-width: 70%
	}

	.lg-size-75 {
		width: 75%;
		max-width: 75%
	}

	.lg-size-80 {
		width: 80%;
		max-width: 80%
	}

	.lg-size-85 {
		width: 85%;
		max-width: 85%
	}

	.lg-size-90 {
		width: 90%;
		max-width: 90%
	}

	.lg-size-95 {
		width: 95%;
		max-width: 95%
	}

	.lg-size-100 {
		width: 100%;
		max-width: 100%
	}

	.lg-size-33 {
		width: 33.333333%;
		max-width: 33.333333%
	}

	.lg-size-66 {
		width: 66.666666%;
		max-width: 66.666666%
	}

	.lg-size-49 {
		width: 49%;
		max-width: 49%
	}

	.lg-size-auto {
		width: auto;
		max-width: auto
	}

	.lg-height-100 {
		height: 100%
	}

	.lg-align-start-start {
		align-items: flex-start;
		justify-content: flex-start
	}

	.lg-align-start-end {
		align-items: flex-end;
		justify-content: flex-start
	}

	.lg-align-start-center {
		align-items: center;
		justify-content: flex-start
	}

	.lg-align-end-start {
		align-items: flex-start;
		justify-content: flex-end
	}

	.lg-align-end-end {
		align-items: flex-end;
		justify-content: flex-end
	}

	.lg-align-end-center {
		align-items: center;
		justify-content: flex-end
	}

	.lg-align-center-start {
		align-items: flex-start;
		justify-content: center
	}

	.lg-align-center-end {
		align-items: flex-end;
		justify-content: center
	}

	.lg-align-center-center {
		align-items: center;
		justify-content: center
	}

	.lg-align-spacebetween-start {
		align-items: flex-start;
		justify-content: space-between
	}

	.lg-align-spacebetween-end {
		align-items: flex-end;
		justify-content: space-between
	}

	.lg-align-spacebetween-center {
		align-items: center;
		justify-content: space-between
	}

	.lg-layout-column {
		flex-direction: column
	}

	.lg-layout-columnreverse {
		flex-direction: column-reverse
	}

	.lg-layout-row {
		flex-direction: row
	}

	.lg-layout-rowreverse {
		flex-direction: row-reverse
	}

	.lg-layout-wrap {
		flex-wrap: wrap
	}

	.lg-layout-nowrap {
		flex-wrap: nowrap
	}

	.lg-dp-block {
		display: block
	}

	.lg-dp-inlblock {
		display: inline-block
	}

	.lg-dp-inl {
		display: inline
	}

	.lg-dp-none {
		display: none
	}
}

@media only screen and (min-width:1367px) {
	.xlg-flex {
		display: flex
	}

	.xlg-column-0 {
		flex: 0 0 0%;
		width: 0;
		max-width: 0
	}

	.xlg-offset-0 {
		margin-left: 0
	}

	.xlg-column-1 {
		flex: 0 0 4.16667%;
		width: 4.16667%;
		max-width: 4.16667%
	}

	.xlg-offset-1 {
		margin-left: 4.16667%
	}

	.xlg-column-2 {
		flex: 0 0 8.33333%;
		width: 8.33333%;
		max-width: 8.33333%
	}

	.xlg-offset-2 {
		margin-left: 8.33333%
	}

	.xlg-column-3 {
		flex: 0 0 12.5%;
		width: 12.5%;
		max-width: 12.5%
	}

	.xlg-offset-3 {
		margin-left: 12.5%
	}

	.xlg-column-4 {
		flex: 0 0 16.66667%;
		width: 16.66667%;
		max-width: 16.66667%
	}

	.xlg-offset-4 {
		margin-left: 16.66667%
	}

	.xlg-column-5 {
		flex: 0 0 20.83333%;
		width: 20.83333%;
		max-width: 20.83333%
	}

	.xlg-offset-5 {
		margin-left: 20.83333%
	}

	.xlg-column-6 {
		flex: 0 0 25%;
		width: 25%;
		max-width: 25%
	}

	.xlg-offset-6 {
		margin-left: 25%
	}

	.xlg-column-7 {
		flex: 0 0 29.16667%;
		width: 29.16667%;
		max-width: 29.16667%
	}

	.xlg-offset-7 {
		margin-left: 29.16667%
	}

	.xlg-column-8 {
		flex: 0 0 33.33333%;
		width: 33.33333%;
		max-width: 33.33333%
	}

	.xlg-offset-8 {
		margin-left: 33.33333%
	}

	.xlg-column-9 {
		flex: 0 0 37.5%;
		width: 37.5%;
		max-width: 37.5%
	}

	.xlg-offset-9 {
		margin-left: 37.5%
	}

	.xlg-column-10 {
		flex: 0 0 41.66667%;
		width: 41.66667%;
		max-width: 41.66667%
	}

	.xlg-offset-10 {
		margin-left: 41.66667%
	}

	.xlg-column-11 {
		flex: 0 0 45.83333%;
		width: 45.83333%;
		max-width: 45.83333%
	}

	.xlg-offset-11 {
		margin-left: 45.83333%
	}

	.xlg-column-12 {
		flex: 0 0 50%;
		width: 50%;
		max-width: 50%
	}

	.xlg-offset-12 {
		margin-left: 50%
	}

	.xlg-column-13 {
		flex: 0 0 54.16667%;
		width: 54.16667%;
		max-width: 54.16667%
	}

	.xlg-offset-13 {
		margin-left: 54.16667%
	}

	.xlg-column-14 {
		flex: 0 0 58.33333%;
		width: 58.33333%;
		max-width: 58.33333%
	}

	.xlg-offset-14 {
		margin-left: 58.33333%
	}

	.xlg-column-15 {
		flex: 0 0 62.5%;
		width: 62.5%;
		max-width: 62.5%
	}

	.xlg-offset-15 {
		margin-left: 62.5%
	}

	.xlg-column-16 {
		flex: 0 0 66.66667%;
		width: 66.66667%;
		max-width: 66.66667%
	}

	.xlg-offset-16 {
		margin-left: 66.66667%
	}

	.xlg-column-17 {
		flex: 0 0 70.83333%;
		width: 70.83333%;
		max-width: 70.83333%
	}

	.xlg-offset-17 {
		margin-left: 70.83333%
	}

	.xlg-column-18 {
		flex: 0 0 75%;
		width: 75%;
		max-width: 75%
	}

	.xlg-offset-18 {
		margin-left: 75%
	}

	.xlg-column-19 {
		flex: 0 0 79.16667%;
		width: 79.16667%;
		max-width: 79.16667%
	}

	.xlg-offset-19 {
		margin-left: 79.16667%
	}

	.xlg-column-20 {
		flex: 0 0 83.33333%;
		width: 83.33333%;
		max-width: 83.33333%
	}

	.xlg-offset-20 {
		margin-left: 83.33333%
	}

	.xlg-column-21 {
		flex: 0 0 87.5%;
		width: 87.5%;
		max-width: 87.5%
	}

	.xlg-offset-21 {
		margin-left: 87.5%
	}

	.xlg-column-22 {
		flex: 0 0 91.66667%;
		width: 91.66667%;
		max-width: 91.66667%
	}

	.xlg-offset-22 {
		margin-left: 91.66667%
	}

	.xlg-column-23 {
		flex: 0 0 95.83333%;
		width: 95.83333%;
		max-width: 95.83333%
	}

	.xlg-offset-23 {
		margin-left: 95.83333%
	}

	.xlg-column-24 {
		flex: 0 0 100%;
		width: 100%;
		max-width: 100%
	}

	.xlg-size-5 {
		width: 5%;
		max-width: 5%
	}

	.xlg-size-10 {
		width: 10%;
		max-width: 10%
	}

	.xlg-size-15 {
		width: 15%;
		max-width: 15%
	}

	.xlg-size-20 {
		width: 20%;
		max-width: 20%
	}

	.xlg-size-25 {
		width: 25%;
		max-width: 25%
	}

	.xlg-size-30 {
		width: 30%;
		max-width: 30%
	}

	.xlg-size-35 {
		width: 35%;
		max-width: 35%
	}

	.xlg-size-40 {
		width: 40%;
		max-width: 40%
	}

	.xlg-size-45 {
		width: 45%;
		max-width: 45%
	}

	.xlg-size-50 {
		width: 50%;
		max-width: 50%
	}

	.xlg-size-55 {
		width: 55%;
		max-width: 55%
	}

	.xlg-size-60 {
		width: 60%;
		max-width: 60%
	}

	.xlg-size-65 {
		width: 65%;
		max-width: 65%
	}

	.xlg-size-70 {
		width: 70%;
		max-width: 70%
	}

	.xlg-size-75 {
		width: 75%;
		max-width: 75%
	}

	.xlg-size-80 {
		width: 80%;
		max-width: 80%
	}

	.xlg-size-85 {
		width: 85%;
		max-width: 85%
	}

	.xlg-size-90 {
		width: 90%;
		max-width: 90%
	}

	.xlg-size-95 {
		width: 95%;
		max-width: 95%
	}

	.xlg-size-100 {
		width: 100%;
		max-width: 100%
	}

	.xlg-size-33 {
		width: 33.333333%;
		max-width: 33.333333%
	}

	.xlg-size-66 {
		width: 66.666666%;
		max-width: 66.666666%
	}

	.xlg-size-49 {
		width: 49%;
		max-width: 49%
	}

	.xlg-size-auto {
		width: auto;
		max-width: auto
	}

	.xlg-height-100 {
		height: 100%
	}

	.xlg-align-start-start {
		align-items: flex-start;
		justify-content: flex-start
	}

	.xlg-align-start-end {
		align-items: flex-end;
		justify-content: flex-start
	}

	.xlg-align-start-center {
		align-items: center;
		justify-content: flex-start
	}

	.xlg-align-end-start {
		align-items: flex-start;
		justify-content: flex-end
	}

	.xlg-align-end-end {
		align-items: flex-end;
		justify-content: flex-end
	}

	.xlg-align-end-center {
		align-items: center;
		justify-content: flex-end
	}

	.xlg-align-center-start {
		align-items: flex-start;
		justify-content: center
	}

	.xlg-align-center-end {
		align-items: flex-end;
		justify-content: center
	}

	.xlg-align-center-center {
		align-items: center;
		justify-content: center
	}

	.xlg-align-spacebetween-start {
		align-items: flex-start;
		justify-content: space-between
	}

	.xlg-align-spacebetween-end {
		align-items: flex-end;
		justify-content: space-between
	}

	.xlg-align-spacebetween-center {
		align-items: center;
		justify-content: space-between
	}

	.xlg-layout-column {
		flex-direction: column
	}

	.xlg-layout-columnreverse {
		flex-direction: column-reverse
	}

	.xlg-layout-row {
		flex-direction: row
	}

	.xlg-layout-rowreverse {
		flex-direction: row-reverse
	}

	.xlg-layout-wrap {
		flex-wrap: wrap
	}

	.xlg-layout-nowrap {
		flex-wrap: nowrap
	}

	.xlg-dp-block {
		display: block
	}

	.xlg-dp-inlblock {
		display: inline-block
	}

	.xlg-dp-inl {
		display: inline
	}

	.xlg-dp-none {
		display: none
	}
}

@media only screen and (max-width:1024px) {
	.sm-horizontal {
		flex-wrap: nowrap;
		overflow: auto
	}

	.sm-horizontal li {
		flex: 0 0 auto;
		width: auto
	}
}

html {
	color: #ff2203;
	font-weight: 400;
	font-size: 62.5%;
	font-family: Sharp Grotesk, sans-serif;
	font-variant-numeric: lining-nums
}

.a-h1,
.t-legals__content h1 {
	font-size: 1.8rem;
	line-height: 1.6;
	text-transform: uppercase
}

.a-h2,
.t-legals__content h2 {
	font-size: 3.2rem;
	line-height: 1.23
}

.a-p {
	font-size: 1rem;
	line-height: 1.4
}

.a-p.-bold,
.a-p b,
.a-p strong {
	font-weight: 700
}

.a-p.-italic,
.a-p em,
.a-p i {
	font-style: italic
}

sup {
	vertical-align: super
}

a {
	text-decoration: none
}

a,
button {
	color: inherit
}

button {
	padding: 0;
	border: 0;
	border: initial;
	background: initial;
	font-family: inherit;
	-moz-appearance: none;
	appearance: none
}

button:focus {
	outline: none
}

a,
b,
button,
em,
h1,
h2,
h3,
h4,
h5,
h6,
i,
input,
p,
select,
span,
strong,
textarea {
	font-variant-numeric: inherit
}

.a-footerText {
	font-size: .8rem
}

.copy.a-footerText {
	display: none
}

@media only screen and (min-width:1025px) {
	.a-footerText {
		font-size: .9rem
	}

	.copy.a-footerText {
		display: block
	}
}

.a-burger {
	position: relative;
	width: 4rem;
	height: 4rem;
	padding: 2rem
}
.a-burger-toggle {
	position: relative;
	
	padding: 2rem
}

.a-burger:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	display: block;
	width: 100%;
	height: 100%
}

.a-burger__line {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 40px;
	height: 2px;
	background-color: #fff;
	pointer-events: none;
	transform: translate(-50%, -50%)
}

.a-burger__line:first-child {
	transition: .6s cubic-bezier(.43, .01, .36, 1.27) .15s;
	transform: translate(-50%, -50%);
	transform-origin: left center
}

.a-burger__line:nth-child(2) {
	transition: .6s cubic-bezier(.43, .01, .36, 1.27);
	transform: translate(-50%, calc(-50% - 1rem))
}

.a-burger__line:nth-child(3) {
	transition: .6s cubic-bezier(.43, .01, .36, 1.27);
	transform: translate(-50%, calc(-50% + 1rem))
}

.a-burger__text {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0;
	pointer-events: none
}

.a-burger:hover__line {
	width: 2px
}

.a-burger.-back .a-burger__line:nth-child(2) {
	transform: translate(-78%, -326%) rotate(-35deg) scaleX(.5)
}

.a-burger.-back .a-burger__line:nth-child(3) {
	transform: translate(-78%, 239%) rotate(35deg) scaleX(.5)
}

.a-burger.-cross:hover__line {
	width: 40%
}

.a-burger.-cross .a-burger__line:first-child {
	transition: .6s cubic-bezier(.54, .01, .32, 1);
	transform: translate(-50%, -50%) scaleX(0)
}

.a-burger.-cross .a-burger__line:nth-child(3) {
	transition: .6s cubic-bezier(.43, .01, .36, 1.27) .15s;
	transform: translate(-50%, -50%) rotate(-45deg)
}

.a-burger.-cross .a-burger__line:nth-child(2) {
	transition: .6s cubic-bezier(.43, .01, .36, 1.27) .15s;
	transform: translate(-50%, -50%) rotate(45deg)
}

@media only screen and (min-width:1025px) {
	.a-burger {
		padding: 3rem
	}
}

.a-cursor {
	position: fixed;
	top: -5px;
	left: -5px;
	z-index: 999;
	display: none;
	width: 10px;
	height: 10px;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s ease-in-out
}

.a-cursor.-visible {
	opacity: 1
}

.a-cursor__gallery {
	transition: .2s ease-in-out
}

.a-cursor .a-p {
	position: absolute;
	top: 23px;
	left: 23px;
	display: none;
	text-transform: uppercase;
	white-space: nowrap
}

@media only screen and (max-width:640px) {
	.a-cursor .a-p {
		top: 0;
		left: 0
	}
}

@media only screen and (max-width:640px) {
	.a-cursor.-play {
		opacity: 1;
		transform: none !important;
		top: calc(50% - .5rem);
		left: calc(50% - 1.5rem);
		display: block;
		width: 3.2rem;
		height: 1.2rem
	}
}

.a-cursor.-gallery .a-cursor__gallery,
.a-cursor.-play .a-cursor__play {
	display: block
}

.a-cursor.-hideGallery .a-cursor__gallery {
	opacity: 0
}

@media only screen and (max-width:640px) {
	.a-cursor.-pause {
		opacity: 1;
		display: block;
		top: auto;
		left: calc(50% - 2rem);
		bottom: 3.2rem;
		width: 4.2rem;
		height: 1.2rem
	}
}

.a-cursor.-pause .a-cursor__pause {
	display: none
}

.a-cursor.-home .a-cursor__home {
	display: block
}

.a-cursor.-home .a-cursor__pause,
.a-cursor.-home .a-cursor__play {
	display: none
}

@media only screen and (max-width:640px) {

	.a-cursor.-home.-pause .a-cursor__home,
	.a-cursor.-home.-pause .a-cursor__pause,
	.a-cursor.-home.-pause .a-cursor__play,
	.a-cursor.-home.-play .a-cursor__home,
	.a-cursor.-home.-play .a-cursor__pause {
		display: none
	}

	.a-cursor.-home.-play .a-cursor__play {
		display: block
	}
}

@media only screen and (min-width:768px) {
	.a-cursor {
		display: block
	}
}

.a-iconCircle {
	position: relative;
	display: inline-block;
	flex-shrink: 0;
	width: 2.5rem;
	height: 2.5rem;
	padding: 4px
}

.a-iconCircle:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: #202d78
}

.a-iconCircle__svg {
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	height: 100%
}

.a-iconCircle__svg path {
	fill: inherit
}

.a-iconCircle use {
	fill: #ff2203
}

.a-iconCircle.-arrow use {
	stroke: #202d78
}

.a-iconCircle.-primary.-arrow use {
	stroke: #fff
}

.a-iconCircle.-secondary:before {
	background-color: #ff2203
}

.a-iconCircle.-secondary use {
	fill: #202d78
}

.a-iconCircle.-third:before {
	background-color: #202d78
}

.a-iconCircle.-third use {
	fill: #fff
}

.a-iconCircle.-third.-arrow use {
	stroke: #202d78
}

.a-iconPlay {
	z-index: 2;
	width: 6rem;
	height: 6rem;
	border-radius: 50%;
	background-color: #202d78
}

.a-iconPlay,
.a-iconPlay:before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%)
}

.a-iconPlay:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-width: 9px 0 9px 13px;
	border-style: solid;
	border-color: transparent transparent transparent #ff2203
}

.a-iconPlay.-hover {
	background-color: #ff2203
}

.a-iconPlay.-hover:before {
	border-color: transparent transparent transparent #202d78
}

.a-cross {
	position: relative;
	display: inline-block;
	width: 2rem;
	height: 2rem
}

.a-cross:after,
.a-cross:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 100%;
	height: 1px;
	background-color: #202d78
}

.a-cross:before {
	transform: translate(-50%, -50%) rotate(45deg)
}

.a-cross:after {
	transform: translate(-50%, -50%) rotate(-45deg)
}

.a-spinner {
	position: relative;
	display: inline-block;
	width: 80px;
	height: 80px
}

.a-spinner div {
	transform-origin: 40px 40px;
	animation: a 1.2s cubic-bezier(.5, 0, .5, 1) infinite
}

.a-spinner div:after {
	content: " ";
	position: absolute;
	display: block;
	width: 7px;
	height: 7px;
	margin: -4px 0 0 -4px;
	border-radius: 50%;
	background: #202d78
}

.a-spinner div:first-child {
	animation-delay: -36ms
}

.a-spinner div:first-child::after {
	top: 63px;
	left: 63px
}

.a-spinner div:nth-child(2) {
	animation-delay: -72ms
}

.a-spinner div:nth-child(2):after {
	top: 68px;
	left: 56px
}

.a-spinner div:nth-child(3) {
	animation-delay: -.108s
}

.a-spinner div:nth-child(3):after {
	top: 71px;
	left: 48px
}

.a-spinner div:nth-child(4) {
	animation-delay: -.144s
}

.a-spinner div:nth-child(4):after {
	top: 72px;
	left: 40px
}

.a-spinner div:nth-child(5) {
	animation-delay: -.18s
}

.a-spinner div:nth-child(5):after {
	top: 71px;
	left: 32px
}

.a-spinner div:nth-child(6) {
	animation-delay: -.216s
}

.a-spinner div:nth-child(6):after {
	top: 68px;
	left: 24px
}

.a-spinner div:nth-child(7) {
	animation-delay: -.252s
}

.a-spinner div:nth-child(7):after {
	top: 63px;
	left: 17px
}

.a-spinner div:nth-child(8) {
	animation-delay: -.288s
}

.a-spinner div:nth-child(8):after {
	top: 56px;
	left: 12px
}

.a-image {
	position: relative
}

.a-image img {
	max-width: 100%;
	max-height: 100%
}

.a-image__image {
	opacity: 1
}

.a-image.-entered:before {
	transition: transform .9s cubic-bezier(.6, .01, .3, 1);
	transform: translateY(-100%)
}

.a-image.-entered .a-image__image {
	opacity: 1;
	transition: opacity .01s ease;
	transition-delay: .41s
}

.a-image.-cover {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

.a-image.-cover img {
	object-fit: cover;
	width: 100%;
	max-width: inherit;
	height: 100%;
	max-height: inherit
}

.a-image.-scotch:after,
.a-image.-scotch:before {
	content: "";
	position: absolute;
	display: block;
	width: 180px;
	height: 180px;
	background-position: 50%;
	background-size: cover;
	background-repeat: no-repeat;
	pointer-events: none
}

.a-item {
	position: relative;
	display: block;
	overflow: hidden;
	width: 100%;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	transition: opacity .3s ease-in-out, color .8s cubic-bezier(.43, 0, .22, .96)
}

.a-item:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #fff;
	opacity: .5;
	transition: transform .8s cubic-bezier(.59, 0, .32, .99), opacity .1s cubic-bezier(.59, 0, .32, .99);
	transform: scaleX(0);
	transform-origin: left center
}

.a-item__content {
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
	padding: 1.9rem 0 1.5rem;
	pointer-events: none;
	transition: transform 1s cubic-bezier(.59, 0, .32, .99);
	transform: translateY(100%)
}

.a-item .a-p {
	text-transform: uppercase;
	pointer-events: none
}

.a-item__text {
	display: inline-block;
	overflow: hidden
}

.a-item__text span {
	display: inline-block;
	transition: .8s cubic-bezier(.43, 0, .22, .96)
}

.a-item__category {
	display: block;
	color: #e6e6e6
}

.a-item__left {
	width: 100%;
	margin-right: 3rem;
	text-align: left
}

.a-item__right {
	flex-shrink: 0;
	text-align: right
}

.a-item__video {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	pointer-events: none
}

.a-item__video img,
.a-item__video video {
	object-fit: cover;
	width: 100%;
	height: 100%;
	opacity: 0;
	transform: scale(1.1);
	transition: opacity .8s cubic-bezier(.43, 0, .22, .96), transform 10s cubic-bezier(.43, 0, .22, .96)
}

.a-item__video img.-visible,
.a-item__video video.-visible {
	opacity: 1;
	transform: scale(1)
}

.a-item.-entered {
	pointer-events: auto
}

.a-item.-entered:before {
	transform: scaleX(1)
}

.a-item.-entered .a-item__content {
	transform: translateY(0)
}

@media only screen and (min-width:1025px) {
	.a-item:not(.-notLink):hover .a-item__text span {
		color: #ff2203;
		transition: 0s ease-in-out
	}
}

.a-list {
	padding-left: 15px
}

.a-list li {
	list-style: disc
}

.a-list li:not(:last-child) {
	margin-bottom: 2rem
}

.a-list li::marker {
	display: list-item;
	font-size: 60%
}

.a-loader {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 800;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 1;
	visibility: visible;
	pointer-events: none
}

.a-loader__percent {
	position: absolute;
	bottom: 3rem;
	left: 3rem;
	z-index: 2;
	color: #fff;
	text-transform: uppercase
}

.a-loader__bar {
	position: fixed;
	bottom: 0;
	height: 2px;
	width: 12%;
	background: #ff2203;
	transition: width 1s cubic-bezier(.43, 0, .22, .96)
}

.a-loader__text {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 80%;
	max-width: 400px;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
	transform: translate(-50%, -50%)
}

.a-loader__word {
	overflow: hidden
}

.a-loader__word,
.a-loader__word span {
	display: inline-block
}

.a-loader__word .red-one {
	color: #ff2203
}

.a-loader__video {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	object-fit: contain;
	width: 100%;
	height: 100%
}

@media only screen and (min-width:641px) {
	.a-loader__percent {
		bottom: 6rem;
		left: 6rem
	}
}

.hide-first {
	opacity: 0;
	transition: 1s ease 1s
}

.-initialized .hide-first {
	opacity: 1;
	transition: 1s ease 2s
}

.m-menuSection {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	display: none;
	width: 100%;
	height: 100%;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .3s ease-in-out, visibility .1s ease-in-out .3s
}

.m-menuSection.-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transition: opacity .3s ease-in-out .1s, visibility .1s ease-in-out
}

.m-menuSection.-active .m-menuSection__title span {
	transition-delay: 1s;
	transform: translate(0)
}

.m-menuSection.-active:before {
	top: 0;
	height: 16rem;
	background: #0c0a09;
	background: linear-gradient(180deg, #0c0a09 30%, rgba(12, 10, 9, 0))
}

.m-menuSection.-active:after,
.m-menuSection.-active:before {
	content: "";
	position: fixed;
	left: 0;
	z-index: 1;
	display: block;
	width: 100%;
	pointer-events: none
}

.m-menuSection.-active:after {
	bottom: 0;
	height: 12rem;
	background: #0c0a09;
	background: linear-gradient(0deg, #0c0a09 30%, rgba(12, 10, 9, 0))
}

@media only screen and (min-width:1025px) {

	.m-menuSection.-active:after,
	.m-menuSection.-active:before {
		display: none
	}
}

.m-menuSection__instruction {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 0;
	color: #ff2203;
	pointer-events: none;
	transform: translate(-50%, -50%)
}

@media only screen and (min-width:768px) {
	.m-menuSection__instruction {
		display: none
	}
}

.m-menuSection__scroll {
	width: 100%;
	height: 100vh;
	padding: 12rem 0 6rem
}

.m-menuSection__scroller {
	position: relative;
	display: flex;
	flex-flow: column wrap;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%
}

.m-menuSection__content {
	width: calc(100% - 6rem);
	max-width: 42rem;
	margin: 0
}

.m-menuSection__title {
	position: fixed;
	top: 11rem;
	left: 3rem;
	z-index: 3;
	overflow: hidden;
	opacity: 0;
	pointer-events: none
}

.m-menuSection__title span {
	display: inline-block;
	transition: transform .3s cubic-bezier(.59, 0, .32, .99);
	transform: translateY(100%)
}

.m-menuSection__project {
	display: block
}

.m-menuSection canvas {
	position: relative;
	z-index: 1
}

.m-menuSection.-noScroll {
	display: flex !important
}

.m-menuSection.-noScroll,
.m-menuSection.-noScroll .m-menuSection__scroll {
	flex-flow: column wrap;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%
}

.m-menuSection.-noScroll .m-menuSection__scroll {
	display: flex
}

@media only screen and (min-width:641px) {
	.m-menuSection__content {
		width: calc(100% - 6rem)
	}

	.m-menuSection__title {
		left: 6rem
	}
}

@media only screen and (min-width:1025px) {
	.m-menuSection__title {
		top: 50%;
		left: 6rem;
		transform: translateY(-50%)
	}

	.m-menuSection__instruction {
		top: auto;
		bottom: 10rem;
		left: 6rem;
		transform: none
	}
}

.m-project {
	position: relative;
	display: none;
	width: 0;
	height: 0;
	background-color: #000;
	color: #fff;
	transform: translateY(100%);
	width: 100%;
	height: 100%;
	opacity: 0;
	visibility: hidden
}

.m-project__videosContainer {
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%
}

.m-project__videosContainer>div {
	height: 100%;
	padding: 0 !important;
	pointer-events: none
}

.m-project__videosContainer iframe,
.m-project__videosContainer video {
	object-fit: contain;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity .3s ease-in-out
}

.m-project__infos {
	position: absolute;
	bottom: 8rem;
	left: 3rem;
	z-index: 2;
	width: calc(100% - 6rem);
	text-align: center
}

.m-project__container {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	opacity: 1;
	transition: transform .4s ease-in-out
}

.m-project__title {
	margin-bottom: 0;
	font-size: 1rem
}

.m-project__subtitle span {
	margin-bottom: 3rem;
	font-size: 1rem;
	text-transform: uppercase;
	opacity: .5
}

.m-project__subtitle .trigger-infos {
	margin-left: 3rem;
	opacity: 1
}

.m-project__progress {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 30px;
	cursor: pointer
}

.m-project__progress>* {
	pointer-events: none
}

.m-project__progress progress {
	display: block;
	width: 100%;
	height: .2rem;
	border: 0;
	background: #999;
	color: #fff;
	pointer-events: none;
	-moz-appearance: none;
	appearance: none
}

.m-project__progress progress[data-state=fake] {
	height: 1rem;
	background: #e6e6e6
}

.m-project__progress progress::-moz-progress-bar {
	background: #ff2203
}

.m-project__progress progress::-webkit-progress-value {
	background: #ff2203
}

.m-project__progress progress::-webkit-progress-bar {
	background: #999
}

.m-project__controls {
	position: absolute;
	right: 3rem;
	bottom: 3rem;
	left: 3rem;
	z-index: 9999;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: space-between;
	transition: .6s ease-in-out;
	display: flex
}

@media only screen and (max-width:640px) {
	.m-project__controls {
		flex-flow: row wrap
	}
}

.m-project__controls button {
	flex-shrink: 0;
	margin-left: 3rem
}

@media only screen and (max-width:640px) {
	.m-project__controls button {
		margin-left: 0;
		width: calc(40% - .3rem);
		text-align: left
	}

	.m-project__controls button.txt-right {
		text-align: right
	}
}

.m-project__videoMobile {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 0;
	height: 0;
	background: #000
}

.m-project.-active video {
	opacity: 1
}

.m-project__infosButton {
	transition: opacity .1s ease-in-out, visibility .1s ease-in-out, color .8s cubic-bezier(.43, 0, .22, .96)
}

@media only screen and (max-width:640px) {
	.m-project__infosButton {
		margin-left: 0;
		width: calc(50% - .3rem)
	}
}

.m-project__infosButton.-hidden {
	opacity: 0;
	visibility: hidden;
	transition: opacity .1s ease-in-out .39s, visibility .1s ease-in-out .39s
}

.m-project__infosButton:hover {
	color: #ff2203
}

@media only screen and (min-width:1025px) {
	.m-project__infos {
		bottom: 9rem;
		left: 6rem;
		z-index: 2;
		width: 50%;
		text-align: left
	}

	.m-project__controls {
		right: 6rem;
		bottom: 6rem;
		left: 6rem
	}
}

.m-projectPopin {
	position: fixed;
	z-index: 901;
	color: #fff;
	transition: visibility .1s ease-in-out .4s
}

.m-projectPopin,
.m-projectPopin__backface {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	visibility: hidden
}

.m-projectPopin__backface {
	position: absolute;
	z-index: 2;
	background-color: #0c0a09;
	opacity: 0;
	transition: opacity .3s ease-in-out, visibility .1s ease-in-out .3s
}

.m-projectPopin__popin {
	position: absolute;
	bottom: 0;
	left: 100%;
	z-index: 3;
	width: 100%;
	text-align: left
}

.m-projectPopin__popin .a-h1,
.m-projectPopin__popin .t-legals__content h1,
.t-legals__content .m-projectPopin__popin h1 {
	margin-bottom: 6rem
}

.m-projectPopin__container {
	display: flex;
	align-items: flex-end;
	overflow-y: auto;
	width: 100%;
	height: 100%;
	padding: 6rem 6rem 12rem
}

.m-projectPopin__text {
	color: #fff;
	text-align: right;
	text-transform: uppercase
}

@media only screen and (max-width:640px) {
	.m-projectPopin__text {
		text-align: center
	}
}

.m-projectPopin__text strong {
	color: #ff2203;
	font-weight: 400
}

.m-projectPopin__text strong:not(:first-child) {
	margin-top: 1.2rem
}

.m-projectPopin__close {
	position: absolute;
	right: 3rem;
	bottom: 3rem;
	text-transform: uppercase
}

.m-projectPopin.-open {
	visibility: visible
}

.m-projectPopin.-open .m-projectPopin__backface {
	opacity: .1;
	visibility: visible;
	transition: opacity .3s ease-in-out .1s, visibility .1s ease-in-out
}

.m-projectPopin.-open .m-projectPopin__popin {
	transform: translate(-100%)
}

@media only screen and (min-width:641px) {
	.m-projectPopin__popin {
		width: 54rem
	}

	.m-projectPopin__container {
		padding-left: 0
	}

	.m-projectPopin__close {
		right: 6rem;
		bottom: 6.7rem
	}
}

@media sm-up {

	body.-noControls .m-project__controls,
	body.-noControls .m-project__infos,
	body.-noControls .o-footer,
	body.-noControls .o-header {
		opacity: 0
	}
}

.o-footer {
	position: fixed;
	right: 3rem;
	bottom: 3.1rem;
	z-index: 6;
	display: flex;
	align-items: center;
	color: #fff;
	text-transform: uppercase;
	transition: .6s ease-in-out
}

.o-footer a {
	color: #fff;
	transition: color .6s ease-in-out
}

.o-footer a:hover {
	color: #ff2203
}

@media only screen and (min-width:641px) {
	.o-footer {
		right: 8rem;
		bottom: 6rem;
		transform: rotate(-90deg) translate(100%);
		transform-origin: bottom right
	}
}

.o-form {
	position: fixed;
	bottom: 0;
	left: 50%;
	z-index: 897;
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	max-height: 100%;
	padding-top: 2rem;
	transition: transform .8s cubic-bezier(.54, 0, .52, 1.28) .27s;
	transform: translate(-50%, 100%)
}

.o-form__background {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 34, 3, .8);
	opacity: 0;
	transition: opacity .4s ease-in-out
}

.o-form__popin {
	position: relative;
	z-index: 2;
	overflow: hidden;
	width: 100%;
	max-height: 100%;
	margin-top: 4rem;
	opacity: 0;
	transition: opacity .6s ease-in-out .27s
}

.o-form__content {
	overflow-y: scroll;
	width: 100%;
	height: 100%;
	padding: 3rem 8.33333%;
	background-color: #fff
}

.o-form__entete {
	margin-bottom: 3rem
}

.o-form__entete .a-navText {
	margin-bottom: 1rem;
	opacity: .5
}

.o-form__entete .a-h3,
.o-form__entete .t-legals__content h3,
.t-legals__content .o-form__entete h3 {
	margin-bottom: 2rem
}

.o-form__buttonContainer {
	position: relative;
	z-index: 2;
	flex-shrink: 0
}

.o-form__button {
	transition: .2s ease-in-out
}

.o-form__button .a-iconCircle {
	margin-right: 0
}

.o-form__button .a-iconCircle:after,
.o-form__button .a-iconCircle:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 100%;
	height: 1px;
	background-color: #202d78;
	transition: transform .2s ease-in-out
}

.o-form__button .a-iconCircle:before {
	transform: translate(-50%, -50%) rotate(45deg) scale(0)
}

.o-form__button .a-iconCircle:after {
	transform: translate(-50%, -50%) rotate(-45deg) scale(0)
}

.o-form__button .a-iconCircle__svg {
	transition: opacity .2s ease-in-out
}

.o-form__button .a-buttonField__text {
	overflow: hidden
}

.o-form__button .a-buttonField__textContent {
	white-space: nowrap
}

.o-form__button .a-buttonField__textContent:not(:empty) {
	padding-left: 3rem
}

.o-form__button.-cross {
	padding: 2.2rem;
	background-color: #fff
}

.o-form__button.-cross .a-iconCircle:before {
	transform: translate(-50%, -50%) rotate(45deg) scale(1)
}

.o-form__button.-cross .a-iconCircle:after {
	transform: translate(-50%, -50%) rotate(-45deg) scale(1)
}

.o-form__button.-cross .a-iconCircle__svg {
	opacity: 0
}

.o-form__button.-cross:focus .a-iconCircle:after,
.o-form__button.-cross:focus .a-iconCircle:before {
	background-color: #fff
}

.o-form.-button .o-form__buttonContainer {
	transition: transform .8s cubic-bezier(.54, 0, .52, 1.28) .27s;
	transform: translateY(calc(-100% - 8rem))
}

.o-form.-open {
	transition: transform .8s cubic-bezier(.58, -.21, .33, 1.01);
	transform: translate(-50%)
}

.o-form.-open .o-form__background {
	opacity: 1;
	transition: opacity .4s ease-in-out .62s
}

.o-form.-open .o-form__popin {
	opacity: 1;
	transition: opacity .6s cubic-bezier(.82, .01, .61, 1) .2s
}

.o-form.-open .o-form__buttonContainer {
	transition: transform .8s cubic-bezier(.58, -.21, .33, 1.01);
	transform: translate(0) !important
}

@media only screen and (min-width:641px) {
	.o-form__popin {
		width: 85%;
		max-width: 72rem
	}

	.o-form__content {
		padding: 6rem 10rem
	}

	.o-form__button.-cross:hover .a-iconCircle:after,
	.o-form__button.-cross:hover .a-iconCircle:before {
		background-color: #fff
	}

	.o-form.-button .o-form__buttonContainer {
		transform: translateY(calc(-100% - 12rem))
	}
}

@media only screen and (min-width:1025px) {
	.o-form__popin {
		width: 60%
	}
}

@media only screen and (min-width:1367px) {
	.o-form.-button .o-form__buttonContainer {
		transform: translateY(calc(-100% - 4rem))
	}
}

.o-gallery {
	opacity: 1;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	transition: opacity 1s ease-in-out .6s
}

.o-gallery__instruction {
	position: absolute;
	bottom: 3rem;
	left: 3rem;
	z-index: 1;
	color: #fff
}

.o-gallery__desktop {
	display: none
}

@media only screen and (min-width:641px) {
	.o-gallery__instruction {
		bottom: 6rem;
		left: 6rem
	}

	.o-gallery__mobile {
		display: none
	}

	.o-gallery__desktop {
		display: block
	}
}

.o-header {
	position: fixed;
	z-index: 900;
	color: #fff;
	opacity: 1;
	transition: 1.6s ease
}

.o-header.-hide {
	opacity: 0
}

.o-header__logo {
	position: fixed;
	top: 3rem;
	left: 3rem;
	z-index: 10;
	width: 10.5rem;
	height: 4.8rem
}

.o-header__logo svg {
	width: 100%;
	height: 100%
}

.o-header__logo span {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0
}

.o-header__burger {
	position: fixed;
	top: 3.2rem;
	right: 3rem;
	z-index: 10
}

@media only screen and (min-width:1025px) {
	.o-header__logo {
		position: fixed;
		top: 3rem;
		left: 3rem;
		z-index: 10;
		width: 16rem;
		height: 7rem
	}

	.o-header:before {
		display: none
	}

	.o-header__logo {
		top: 6rem;
		left: 6rem
	}

	.o-header__burger {
		top: 5.2rem;
		right: 6rem
	}
}

.o-menu {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	background-color: rgba(1, 1, 1, .9);
	color: #fff;
	opacity: 0;
	visibility: hidden;
	transform: translateZ(0)
}

.o-menu__nav {
	position: relative;
	z-index: 6;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	text-align: center;
	opacity: 1
}

.o-menu__nav.-disabled {
	pointer-events: none
}

.o-menu__button {
	overflow: hidden
}

.o-menu__button:before {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--background, #0c0a09);
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s ease-in-out
}

.o-menu__button span {
	display: inline-block;
	pointer-events: none;
	transition: transform .8s cubic-bezier(.43, 0, .22, .96), color .8s cubic-bezier(.43, 0, .22, .96) .2s;
	transform: translateY(100%)
}

.o-menu__button.-entered span {
	transform: translateY(0)
}

.o-menu__button.-active {
	cursor: inherit;
	pointer-events: none
}

.o-menu__socials {
	position: absolute;
	bottom: 3rem;
	left: 3rem;
	z-index: 6;
	display: flex;
	flex-flow: row wrap;
	color: #e6e6e6;
	font-size: 1rem;
	text-transform: uppercase
}

.o-menu__socials a {
	display: inline-block
}

.o-menu__socials a:before {
	display: none
}

.o-menu__socials a:not(:last-child) {
	margin-right: 1.5rem
}

.o-menu__socials a:hover .o-menu__svg use {
	fill: #ff2203
}

.o-menu__svg {
	width: 2rem;
	height: 2rem;
	pointer-events: none
}

.o-menu__svg use {
	fill: #fff;
	transition: fill .6s ease-in-out
}

@media only screen and (min-width:641px) {

	.o-menu__back,
	.o-menu__socials {
		bottom: 6rem;
		left: 6rem
	}
}

@media only screen and (min-width:1025px) {
	.o-menu__button.-entered:hover:before {
		opacity: .8
	}

	.o-menu__button.-entered:hover span {
		color: #ff2203;
		transition: color .2s cubic-bezier(.43, 0, .22, .96), transform .8s cubic-bezier(.43, 0, .22, .96);
		transform: translateY(0)
	}
}

.o-project {
	position: fixed;
	top: -100%;
	left: 0;
	z-index: 7;
	width: 100%;
	height: 100%
}

.t-error .m-title__title h1 {
	z-index: 3;
	font-weight: 700;
	font-size: 34rem;
	text-align: center
}

.t-error .m-blockText p {
	padding: 2rem 0 1rem;
	text-align: center
}

.t-error .home-button {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-bottom: 10rem
}

.t-home {
	height: 100%
}

.t-home .a-homeSlide {
	color: #fff
}

.t-home__baseline {
	position: fixed;
	top: 15rem;
	left: 50%;
	z-index: 2;
	width: 18rem;
	height: 6rem;
	text-align: center;
	transform: translate(-50%)
}

.t-home .o-form__buttonContainer .a-button {
	padding: 2.2rem
}

.t-home .o-form__buttonContainer .a-buttonField__text {
	position: absolute;
	opacity: 0
}

.txt-about {
	line-height: 1.4;
	font-size: 1.2rem;
	margin-bottom: 3rem;
	opacity: 0;
	transition: opacity .8s cubic-bezier(.43, 0, .22, .96);
	text-align: center
}

.txt-about.-entered {
	opacity: 1
}

#error {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	text-align: center
}

#error h1 {
	font-size: 30vw
}

#error video {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	mix-blend-mode: luminosity;
	object-fit: cover
}

#error a {
	position: relative;
	z-index: 1;
	color: #fff;
	text-transform: uppercase
}

#error a:hover {
	color: #ff2203
}

.t-legals {
	overflow: auto;
	height: 100%
}

.t-legals__content {
	width: 100%;
	max-width: 92rem;
	margin: 0 auto;
	padding: 20rem 6rem 12rem;
	color: #fff
}

@media only screen and (max-width:640px) {
	.t-legals__content {
		padding: 14rem 3rem 12rem
	}
}

.t-legals__content p {
	font-size: 1.2rem;
	line-height: 1.8;
	font-weight: 400
}

.t-legals__content p strong {
	font-size: 1.4rem;
	margin: 6rem 0 3rem;
	display: block;
	text-transform: uppercase
}

.t-legals__content h1,
.t-legals__content h2,
.t-legals__content h3 {
	margin-bottom: 4rem
}

.t-legals__content h1:not(:first-child),
.t-legals__content h2:not(:first-child),
.t-legals__content h3:not(:first-child) {
	margin-top: 7rem
}

.t-legals__content>ol,
.t-legals__content>p,
.t-legals__content>ul {
	margin-bottom: 2rem
}

.t-legals__content ol,
.t-legals__content ul {
	padding-left: 1.4rem
}

.t-legals__content ul {
	list-style-type: disc
}

.t-legals__content ol {
	list-style: decimal
}

.t-legals__content h1 {
	font-size: 2rem
}

.t-legals__content h3 {
	font-size: 2.5rem
}

.m-archives,
.m-playlist {
	background-color: var(--background)
}

.m-archives .a-item__video {
	z-index: 1
}

.m-archives .a-item:hover {
	z-index: 2;
	cursor: pointer
}

.m-archives .a-item.-entered:hover:before {
	opacity: 0
}

.m-awards {
	background-color: var(--background);
	padding-bottom: 5rem
}

.m-awards .a-item__video {
	opacity: .4
}

.m-contact {
	background-color: var(--background)
}

.m-contact .a-item:before {
	display: none
}

.m-contact .m-menuSection__content {
	max-width: 60rem
}

.m-contact .m-menuSection__content .a-item__content {
	justify-content: center
}

.m-gallery {
	background-color: var(--background)
}

.t-projectitem .m-project {
	position: absolute;
	top: 0;
	display: block;
	height: 100%;
	opacity: 1;
	visibility: visible;
	transform: none
}

.t-projectitem .m-project__videosContainer iframe,
.t-projectitem .m-project__videosContainer video {
	opacity: 1
}

.t-projectitem .o-header {
	z-index: 10
}

@media only screen and (min-width:641px) {
	.t-projectitem .m-projectPopin__close {
		bottom: 6.6rem
	}
}

.t-styleguide {
	background-color: #e5e5e5
}

.t-styleguide__header {
	padding: 60px 0
}

.t-styleguide__header:not(:first-child) {
	border-top: 1px solid #999
}

.t-styleguide__header:not(:last-child) {
	margin-bottom: 60px;
	border-bottom: 1px solid #999
}

.t-styleguide__header p {
	color: #0c0a09;
	font-weight: 400;
	font-size: 1.2rem;
	font-family: Sharp Grotesk, sans-serif;
	line-height: 1.16;
	text-transform: uppercase
}

.t-styleguide__header p span {
	margin-right: 15px;
	color: #ff2203
}

.t-styleguide__section:not(:last-child) {
	margin-bottom: 60px
}

.t-styleguide__element {
	margin-bottom: 30px
}

.t-styleguide__elementTitle {
	margin-bottom: 15px;
	color: #ff2203;
	font-size: 1.2rem;
	font-family: Sharp Grotesk, sans-serif;
	line-height: 1.16;
	text-transform: uppercase
}

.t-styleguide__circles {
	display: flex;
	flex-flow: row wrap;
	align-items: center
}

.t-styleguide__circles li:not(:last-child) {
	margin-right: 16px
}

.t-styleguide__circle {
	display: inline-block;
	width: 95px;
	height: 95px;
	margin-bottom: 10px;
	border-radius: 95px
}

.t-styleguide__circle.-primary {
	background-color: #202d78
}

.t-styleguide__circle.-secondary {
	background-color: #ff2203
}

.t-styleguide__circle.-third {
	background-color: #fff
}

.t-styleguide__circle.-fourth {
	background-color: #860301
}

.t-styleguide__circle+p {
	color: #0c0a09;
	font-size: 1.2rem;
	font-family: Sharp Grotesk, sans-serif;
	line-height: 1.16;
	text-align: center
}

.t-styleguide__form {
	width: 100%;
	padding: 60px 0
}