/**********
* GENERAL 4DV *
**********/
:root {
	/* --4dv-primary: #00ff66; /* Green */
	--4dv-primary: #00FF7F;
	/* Green */
	/* --4dv-primary-dark: #00de6f; /* Green dark */
	--4dv-primary-dark: #00b279;
	/* Green dark */
	--4dv-primary-light: #42ff93;
	/* Green light */

	--4dv-secondary: #6B27FF;
	/* Pink */
	/* --4dv-secondary-dark: #ff0066; */
	/* Pink dark */
	--4dv-secondary-light: #ea3a87;
	/* Pink light */

	--4dv-blue: #32b6ff;
	--4dv-blue-light: #66c9ff;

	--4dv-dark: #1a1e2f;
	/* Deep Dark Blue #262c45 */
	--4dv-dark-light: #232a41;
	/* Deep Dark Blue */
	--4dv-dark-soft: #282a3a;
	/* Deep Dark Blue */
	--4dv-dark-dark: #16171e;
	/* Deep Dark Blue */

	--4dv-light: #353c58;
	/* Light Dark Blue */
	--4dv-light-light: #464f74;
	/* Light Dark Blue */
	--4dv-light-soft: #444d6a;
	/* Light Dark Blue */
	--4dv-light-dark: #353B50;
	/* Light Dark Blue */

	--4dv-white: #f0f0f0;
	--4dv-white-dark: #c0c0c0;

	--4dv-danger: #ff1135;
	--4dv-danger-light: #ff3355;
	--4dv-danger-soft: #e46a7f;

	--4dv-valid: #00f580;
	--4dv-valid-light: #46ffa7;

	--4dv-color4DS: #32b6ff;
	/* same as --4dv-blue */
	--4dv-colorfilter: #32b6ff;
	/* same as --4dv-blue */
	--4dv-colortracking: #32b6ff;
	/* same as --4dv-blue */
	--4dv-coloraudio: #ff0066;
	/* same as --4dv-secondary-dark */
	--4dv-colorinvalid: #ee7241;
	--4dv-colorinvalid-dark: #c76340;

	--4dv-border-dark: #000000;
}

* {
	transition: 150ms ease;
}

html {
	min-height: 100%;
}

html,
body {
	margin: 0;
	padding: 0;
	font-family: 'Lato', sans-serif !important;
	box-sizing: border-box;
}

body {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	min-height: 100%;
	min-height: 100vh;
	/* padding-bottom: 380px /* Footer height */
}

p {
	/*	color: var(--4dv-white);*/
	font-weight: 400;
	font-size: 1.4rem;
}

.bold {
	font-weight: bold;
}

/* section a {
	color: var(--4dv-primary) !important;
}

section a:hover {
	color: var(--4dv-secondary) !important;
} */

sup {
	top: 0.5rem !important;
	vertical-align: text-top !important;
	opacity: 0.75;
	font-weight: 300;
	font-size: 0.6em !important;
}

sup.holosys-tm {
	opacity: 1;
	font-weight: inherit;
	font-size: 0.2em !important;
	text-transform: uppercase;
	top: 2.2em !important;
}

/* *::selection {
	background-color: var(--4dv-secondary);
	color: var(--4dv-primary);
} */

a.link-pink {
	color: var(--4dv-secondary);
}

a:hover.link-pink {
	font-weight: bold;
}

a.link-green {
	color: var(--4dv-primary) !important;
}

a:hover.link-green {
	color: var(--4dv-secondary-light) !important;
}

a.link-white {
	color: var(--4dv-white);
}
a.link-white:hover {
  color: var(--4dv-primary);
}

a.link-dark {
	color: var(--4dv-dark);
}

a.strong {
	font-weight: 900;
}

#renderCanvas {
	width: 100%;
	height: 100%;
	touch-action: none;
}



/*******************************
* GENERAL OVER OTHER FRAMEWORK * 
*******************************/
#page-studios.page-4dv #nav-link-studios.nav-link,
#page-contactus.page-4dv #nav-link-contactus.nav-link,
#page-samples.page-4dv #nav-link-samples.nav-link,
#page-products.page-4dv #nav-link-products.nav-link,
#page-demoweb.page-4dv #nav-link-demoweb.nav-link {
	color: var(--4dv-primary);
}

.page-4dv {
	text-align: center;
}

.page-4dv section {
	position: relative;
	text-align: left;
}

.page-4dv h1,
.page-4dv h2,
.page-4dv h3,
.page-4dv h4,
.page-4dv h5,
.page-4dv h6 {
	font-family: 'Oswald', sans-serif;
}

/*
.page-4dv a {
	color:inherit;
}
*/
.page-4dv button.header-nav-button:focus {
	outline: none;
}

.page-4dv button.header-nav-button:active .fa-bars,
a:active,
.page-4dv #process-panel .process-wrap:active~h3 {
	color: var(--4dv-primary);
}

.page-4dv button.header-nav-button:hover .fa-bars,
.page-4dv a:hover,
.page-4dv #process-panel .process-wrap:hover~h3 {
	color: var(--4dv-primary);
}

.page-content {
	color: var(--4dv-white);
	margin: 96px auto 32px auto;
	font-weight: 300;
}

.page-content h2 {
	font-size: 40px;
	font-weight: 900;
}

.page-content p {
	font-size: 26px;
}

.page-content .share-article {
	margin-top: 64px;
}

.page-content strong {
	font-weight: 900;
}

/** BOOTSTRAP TOOLTIP **/
.tooltip>.tooltip-inner {
	font-size: 12px;
	text-align: left;
}



/******************
* 4Dviews GENERAL *
******************/
.bg-transparent {
	background-color: transparent;
	background-color: rgba(0, 0, 0, 0);
}

.bg-dblue {
	background-color: var(--4dv-dark);
}

.bg-dlblue {
	background-color: var(--4dv-dark-light);
}

.bg-lblue {
	background-color: var(--4dv-light);
}

.bg-pink {
	background-color: var(--4dv-secondary);
}

.bg-green {
	background-color: var(--4dv-primary);
}

/** COLORS **/

.text-dblue {
	color: var(--4dv-dark);
}

.text-lblue {
	color: var(--4dv-light);
}

.text-4dv-secondary {
	color: var(--4dv-secondary);
}

.text-4dv-primary {
	color: var(--4dv-primary);
}

.text-4dv-white {
	color: var(--4dv-white);
}

.text-grey {
	color: #aaa;
}

.text-lgrey {
	color: #d4d4d4;
}

a.text-pink:hover,
a.text-white.hover-green:hover,
a.text-grey.hover-green:hover {
	color: var(--4dv-primary) !important;
	text-decoration: none;
}

a.text-green:hover,
a.text-white.hover-pink:hover,
a.text-grey.hover-pink:hover {
	color: var(--4dv-secondary) !important;
	text-decoration: none;
}

/** Z-INDEX **/
.layer-under {
	z-index: -10;
}

.layer-0 {
	z-index: 0;
}

.layer-1 {
	z-index: 1;
}

.layer-2 {
	z-index: 2;
}

.layer-3 {
	z-index: 3;
}

/** WIDHT & HEIGHT **/
.fullpage {
	height: 100vh;
	max-height: 100vh;
	width: auto;
	margin: 0px auto;
}

.fullscreensection {
	min-height: calc(100vh - 536px);
	width: auto;
	margin: 0px auto;
}

.tallpage {
	min-height: 110vh;
}

.halfpage {
	min-height: 256px;
}

.smallpage {
	height: 232px;
	text-align: center;
}

strong,
strong>a {
	font-weight: 900;
}

/*
a.link-pink {
    color:var(--4dv-secondary);}
*/
.btn.btn-green,
.btn.btn-pink,
.btn.btn-white {
	font-size: 20px;
	padding: 12px 16px;
	font-family: 'Oswald', sans-serif;
	font-weight: 900;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-width: 3px;
	border-style: solid;
	border-radius: 2px;
	margin: 8px;
	background-color: transparent;
	transition: none;
}

.btn.btn-pink {
	border-color: var(--4dv-secondary);
}

.btn.btn-pink:hover {
	border-color: var(--4dv-secondary-light);
	background-color: var(--4dv-secondary);
}

.btn.btn-pink.btn-highlight {
	border-color: var(--4dv-secondary-light);
	background-color: var(--4dv-secondary);
	color: var(--4dv-white);
}

.btn.btn-pink.btn-highlight:hover {
	border-color: var(--4dv-white);
	background-color: var(--4dv-white);
	color: var(--4dv-secondary);
}

.btn.btn-highlight {
	color: var(--4dv-white);
}

.btn.btn-green.btn-highlight:hover {
	border-color: var(--4dv-white);
	background-color: var(--4dv-white);
	color: var(--4dv-primary-dark);
}

.btn.btn-white {
	border-color: var(--4dv-white);
	color: var(--4dv-white);
}

.btn.btn-green {
	border-color: var(--4dv-primary);
}

.btn.btn-green:hover {
	border-color: var(--4dv-primary-light);
	background-color: var(--4dv-primary);
}

.bouton-green,
.bouton-black,
.bouton-purple,
.bouton-white {
	display: inline-block;
	min-height: 2.5rem;
	border: none;
	padding: 0 1rem 0.15rem 1rem;
	font-size: 1rem;
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	vertical-align: bottom;
	border-radius: 0.5rem;
	text-decoration: none;
	align-content: center;
	text-wrap: nowrap;
	filter: drop-shadow(0 0 0.4rem rgb(0 0 0 / 0.2));
}

.bouton-white {
	background-color: white !important;
	color: var(--4dv-secondary) !important;
}

.bouton-white:hover {
	background-color: white !important;
	color: var(--4dv-secondary) !important;
}

.bouton-purple {
	background-color: var(--4dv-secondary) !important;
	color: white !important;
}

.bouton-purple:hover {
	background-color: var(--4dv-secondary);
	color: white;
}

.bouton-black {
	background-color: black !important;
	color: white !important;
}

.bouton-black:hover {
	background-color: black !important;
	color: white !important;
}

.bouton-green {
	background-color: var(--4dv-primary) !important;
	color: black !important;
}

.bouton-green:hover {
	background-color: var(--4dv-primary) !important;
	color: black !important;
}

.bouton-container {
	display: flex;
	margin: 2rem auto;
	gap: 1rem;
	justify-content: center;
}

.page-overlay {
	position: fixed;
	width: 100%;
	height: 100%;
	background-color: transparent;
	top: 0;
	left: 0;
	z-index: 100;
}

.page-overlay-top-shadow {
	display: block;
	width: 100%;
	height: 100%;
	background: rgb(0, 0, 0);
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.25) 0%, rgba(255, 255, 255, 0) 10%);
	position: fixed;
	top: 0;
	left: 0;
}

/*********************
* PAGE COLOR LAYOUTS *
*********************/
/** DARK BACKGROUND & GREEN TEXT COLOR **/
/* PAGE TITLE & BACKGROUND */
.page-4dv>header.bg-dblue .page-title,
.page-4dv>header.bg-lblue .page-title {
	color: var(--4dv-primary);
	text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.5);
}

.page-4dv>header.bg-dblue .page-title-supborder,
.page-4dv>header.bg-lblue .page-title-supborder {
	background-color: var(--4dv-primary);
}

/* LOGO */
.page-4dv>header.bg-dblue .header-logo,
.page-4dv>header.bg-lblue .header-logo,
.page-4dv>header.bg-transparent .header-logo {
	background-image: url(../img/brand/logo_white.svg);
}

/* MENU TEXT COLOR */
.page-4dv>header.bg-dblue #header-nav-elements .nav-link,
.page-4dv>header.bg-lblue #header-nav-elements .nav-link {
	color: var(--4dv-white);
}

/* SCROLLED ON GREEN */
.page-4dv>header.bg-dblue.scroll-green .scrolled #header-nav-elements .nav-link,
.page-4dv>header.bg-lblue.scroll-green .scrolled #header-nav-elements .nav-link {
	color: var(--4dv-dark);
}

.page-4dv>header.bg-dblue.scroll-green .scrolled .header-logo,
.page-4dv>header.bg-lblue.scroll-green .scrolled .header-logo {
	background-image: url(../img/brand/logo_dark.png);
}

/*  BUTTONS */
.bg-lblue .btn.btn-pink,
.bg-dblue .btn.btn-pink,
.bg-lblue .btn.btn-green,
.bg-dblue .btn.btn-green,
.bg-lblue .btn.btn-white,
.bg-dblue .btn.btn-white,
.bg-lblue .btn.btn-pink:hover,
.bg-dblue .btn.btn-pink:hover {
	color: var(--4dv-white);
}

.bg-lblue .btn.btn-pink.btn-highlight:hover,
.bg-dblue .btn.btn-pink.btn-highlight:hover {
	color: var(--4dv-secondary);
}

.bg-lblue .btn.btn-white:hover,
.bg-dblue .btn.btn-white:hover {
	color: var(--4dv-primary-dark);
}

.bg-lblue .btn.btn-green:hover,
.bg-dblue .btn.btn-green:hover {
	color: var(--4dv-dark);
}

/** GREEN BACKGROUND & DARK TEXT COLOR **/
/* PAGE TITLE & BACKGROUND */
.page-4dv>header.bg-green .page-title {
	color: var(--4dv-dark);
	text-shadow: 0px 0px 8px rgba(175, 175, 175, 0.5);
}

.page-4dv>header.bg-green .page-title-supborder {
	background-color: var(--4dv-dark);
}

/* LOGO */
.page-4dv>header.bg-green .header-logo {
	background-image: url(../img/brand/logo_dark.png);
}

/* MENU TEXT COLOR */
.page-4dv>header.bg-green #header-nav-elements .nav-link {
	color: var(--4dv-dark);
}

/*  BUTTONS */
.bg-green .btn.btn-pink {
	color: var(--4dv-white);
}

.bg-green .btn.btn-pink:hover {
	color: var(--4dv-secondary);
}

.bg-green .btn.btn-green:hover {
	color: var(--4dv-dark);
}


/** GREEN BG **/
.bg-green .page-title {
	color: var(--4dv-dark);
}

/** DBLUE BG **/


#product-performancesVideo {
	width: 100%;
	padding: 0px;
}

.videoContainer {
	position: relative;
}

.videoOverlay {
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(26, 30, 37, 0.25);
	top: 0;
	left: 0;
	display: none;
	cursor: pointer;
	box-shadow: 0px 0px 48px rgba(26, 30, 37, 0.9) inset;
	border: 1px solid rgba(26, 30, 37, 0.75);
}

.videoOverlay.active {
	display: block;
}

.videoContainer .videoOverlay .fa,
.videoContainer .videoOverlay .fas {
	top: 50%;
	color: var(--4dv-white);
	position: absolute;
	left: 50%;
	font-size: 52px;
	transform: translate(-50%, -50%);
}

.videoContainer:hover .videoOverlay .fa,
.videoContainer:hover .videoOverlay .fas {
	color: var(--4dv-secondary);
}

.videoContainer .videoOverlay .videoLink {
	display: none;
	width: 100%;
	height: 100%;
}

.videoContainer .videoOverlay.active .videoLink {
	display: block;
}

.videoContainer .videoOverlay.active .videoForbidden {
	display: none;
}

p.features-intro {
	color: var(--4dv-primary);
	font-size: 20px;
	padding: 10px 50px 10px 50px;
	font-style: italic;
}

ul.features-list {
	list-style: none;
	text-align: left;
	font-size: 1.5rem;
	line-height: 2.5rem;
	margin: 10px 40px 60px 40px;
}

li.bullet-cube.bullet-green {
	background-image: url('../img/brand/cube_icon_small.png');
}

li.bullet-cube.bullet-dblue {
	background-image: url('../img/brand/cube_icon_small_dblue.png');
}

li.bullet-cube {
	padding-left: 32px;
	background-repeat: no-repeat;
	background-size: 20px 20px;
	font-weight: 300;
	text-transform: capitalize;
}

li.bullet-cube.align-center {
	background-position: left center;
}

li.bullet-cube.align-top {
	background-position: left top 10px;
}

li.bullet-cube strong {
	font-weight: 900;
}

li.bullet-plus {
	background-image: url('../img/brand/plus32.png');
}

li.bullet-plus {
	background-size: 20px 20px;
	font-weight: 300;
}

li.bullet-plus.align-center {
	background-position: left center;
}

li.bullet-plus.align-top {
	background-position: left top 10px;
}

li.bullet-plus strong {
	font-weight: 900;
}

li.bullet-doubleline {
	line-height: calc(1.25rem + 0.75vw);
	margin: 0px;
}

li.bullet-doubleline span {
	font-weight: 300;
	font-size: 1.25rem;
	font-style: italic;
}

/*********
* NEW capture build deliver *
*********/
.cbd-container {
	display: flex;
	flex-direction: column;
	margin-top: 4rem;
	align-items: center;
	gap: 4rem;
}

@media (min-width:835px) {
	.cbd-container {
		margin-bottom: 3rem;
	}
}

.cbd-item {
	flex: 1 1 0;
	display: flex;
	gap: 8vw;
	flex-wrap: wrap
}

.cbd-img {
	max-height: 20rem;
	max-width: 100vw;
	margin: auto;
}

.cbd-info {
	margin: auto;
	width: 20rem;
}

.cbd-title {
	font-size: 3rem;
	font-weight: 900;
	font-family: Oswald;
}

.homepage-description,
.cbd-description {
	font-size: 1.6rem;
	font-weight: 400;
	font-family: Lato;
	margin: 1rem auto 2rem auto;
}


.intro-title {
	color: white;
	text-shadow: -1px 1px 4px rgba(0, 0, 0, 0.75);
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
	font-size: 2.8rem;
	text-transform: uppercase;
	text-align: left;
	vertical-align: middle;
	padding: 2rem;
	margin: auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

@media (min-width: 800px) {
	.intro-title {
		min-height: calc(20vh);
		text-align: center;
		max-width: 50rem;
		padding: 1rem 2rem 0 2rem;
	}
}

.inline {
	display: inline-block;
}

.section-title {
	font-size: 3rem;
	font-weight: 600;
	font-family: Oswald;
	margin: 4rem auto 2rem auto;
}

@keyframes reveal {
	from {
		opacity: 0;
	}

	5% {
		opacity: 0;
	}

	30% {
		opacity: 1;
	}

	70% {
		opacity: 1;
	}

	95% {
		opacity: 0;
	}

	to {
		opacity: 0;
	}
}

.scroll-reveal,
.cbd-item,
.trusted-carousel,
.use-case {
	animation: reveal;
	animation-timeline: view();
}

.trusted-carousel {
	width: 100%;
	overflow: hidden;
	display: flex;
	margin: 0 0 1rem 0;
	position: relative;
}

.trusted-carousel-items {
	display: flex;
	animation: trusted-carousel-animation 60s linear infinite;
}

.trusted-carousel-items-reversed {
	display: flex;
	flex-direction: row-reverse;
	animation: trusted-carousel-animation 90s linear reverse infinite;
}

.trusted-carousel-logo {
	height: 4rem;
	margin: 0 1rem;
}

.trusted-carousels-container {
	height: 15rem;
	position: relative;
	opacity: 0;
}

.reveal {
	transition: opacity 0.5s ease-in 0.1s;
	opacity: 1;
}

.trusted-gradient-left,
.trusted-gradient-right {
	top: 0;
	width: 5rem;
	height: 15rem;
	content: "";
	position: absolute;
	z-index: 1;
}

.trusted-gradient-left {
	left: 0;
	background: linear-gradient(to right, white, transparent);
}

.trusted-gradient-right {
	right: 0;
	background: linear-gradient(to left, white, transparent);
}

body:active .trusted-carousel-items-reversed,
body:active .trusted-carousel-items {
	animation-play-state: paused;
}

@media (hover: hover) {

	.trusted-carousels-container:hover .trusted-carousel-items-reversed,
	.trusted-carousels-container:hover .trusted-carousel-items {
		animation-play-state: paused;
	}
}

@keyframes trusted-carousel-animation {

	0% {
		transform: translateX(0px);
	}

	100% {
		transform: translateX(-100%);
	}
}

@keyframes trusted-carousel-animation-reversed {

	0% {
		transform: translateX(0px);
	}

	100% {
		transform: translateX(100%);
	}
}

@media (min-width:460px) {

	.cbd-img {
		border-radius: 1rem;
	}


	.cbd-title {
		font-size: 3rem;
		font-weight: 900;
		font-family: Oswald;
	}

	.cbd-description {
		font-size: 1.6rem;
		font-weight: 400;
		font-family: Lato;
		margin: 1rem auto 2rem auto;
	}

}

/* use cases */
.use-cases-container {
	display: flex;
	margin: 0 auto;
	justify-content: center;
	flex-wrap: wrap;
	align-items: flex-start;
	width: 80vw;
}

.use-case {

	flex: 1 0 25%;
	margin: 0 2rem 3rem 2rem;

	display: flex;
	flex-direction: column;
	justify-content: center;
}

.use-case-img,
.use-case-domain,
.use-case-description {
	flex: 1 1 0;
	width: 22rem;
	margin-right: auto;
	margin-left: auto;
}

.use-case-img {
	border-radius: 1rem;
}

.use-case-domain {
	color: black;
	text-transform: uppercase;
	font-weight: 900;
	font-size: 1.4rem;
	margin-top: 1.4rem;
	margin-bottom: 0.8rem;
}

.use-case-description {
	color: var(--4dv-light-soft);
	font-size: 1.4rem;
}

.creators-subtitle {
	background: linear-gradient(to right, #6B27FF, #0EB2ED, #00FE83);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-family: Oswald;
	font-size: 2rem;
	font-weight: 400;
	width: fit-content;
	margin: 1rem auto;
}





/*********
* HEADER *
*********/
#header-nav {
	background: black;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	transition: none;
	text-align: left;
	align-items: flex-start;
	flex-wrap: nowrap !important;
}

/** MENU **/
#header-nav>* {
	height: 4rem;
}

/** MENU - Logo **/
.header-logo {
	display: block;
	height: 4rem;
	min-width: 140px;
	background-size: contain;
	background-repeat: no-repeat;
}

#header-logo-link {
	margin: 0 0 0 40px;
	padding: 0;
	flex-grow: 1;
}

/** MENU - List Items **/
.navbar-brand {
	width: 100%;
}

#header-nav-elements {
	flex-grow: 16;
	flex-basis: auto;
	transition-delay: 0s !important;
	align-items: center;
}

#header-nav-elements .navbar-nav {
	justify-content: flex-end;
	flex-direction: row;
	transition: none;
}

#header-nav-elements .navbar-nav .nav-item {
	display: inline-block;
	list-style-type: none;
	border: 0px;
	vertical-align: middle;
	font-weight: 600;
}

#header-nav-elements .navbar-nav .nav-item .nav-link {
	padding: 1rem;
	color: white;
	font-size: 1.2rem;
	font-weight: 600;
}

#header-nav-elements .navbar-nav .nav-item .nav-link.active {
	color: var(--4dv-primary);
}

#header-nav-elements .navbar-nav .nav-item .nav-link:hover {
	color: var(--4dv-primary);
}


/* Generic */
header #header-nav-elements .dropdown-item:hover {
	background-color: transparent;
}

#header-nav-elements .dropdown-menu {
	background-color: #000000;
	border-bottom-left-radius: 0.3rem;
	border-bottom-right-radius: 0.3rem;
	padding-top: 0.5em;
	margin: 1px 0px 0px 0px;
	padding-bottom: 0;
}

#header-nav-elements .dropdown-menu .dropdown-item {
	text-align: left;
}

.btn-safari-fix:focus {
	outline: none;
	box-shadow: none;
}

#header-nav-elements .dropdown-toggle::after {
	visibility: hidden;
}

#header-nav-elements .dropdown-toggle:hover::after {
	visibility: visible;
}

#header-nav-elements .dropdown-menu .nav-link {
	color: var(--4dv-secondary);
}

/* MENU - Dropdown - Submenu */
#header-nav-elements .dropdown-submenu {
	position: relative;
	text-align: right;
	padding-bottom: 0.75em;
}

#header-nav-elements .dropdown-submenu .dropdown-item {
	color: var(--4dv-white);
	padding: 4px 16px;
	font-size: 1.2rem;
	font-family: 'Oswald', sans-serif;
}

#header-nav-elements .dropdown-submenu a {
	color: var(--4dv-white);
}

#header-nav-elements .dropdown-submenu a:hover {
	color: var(--4dv-primary);
}

header.scroll-transparent-dark #header-nav-elements .dropdown-submenu:first-child {
	border-top: 0px;
	border-bottom: 0px;
}

header.scroll-transparent-dark #header-nav-elements .dropdown-submenu:last-child {
	border-bottom: 0px;
}

#header-nav-elements .dropdown-submenu .dropdown-item:focus,
#header-nav-elements .dropdown-submenu.active>.dropdown-item {
	background-color: transparent;
}

#header-nav-elements .dropdown-submenu .dropdown-menu .dropdown-item a {
	text-decoration: none;
}

#header-nav-elements .dropdown-submenu .dropdown-item.dropdown-toggle::after {
	transform: rotate(-90deg);
	position: absolute;
	right: 0px;
	top: .9em;
	display: none;
}

#header-nav-elements .dropdown-submenu .dropdown-item:hover.dropdown-toggle::after,
#header-nav-elements .dropdown-submenu .dropdown-item.show.dropdown-toggle::after {
	display: block;
}

#header-nav-elements .dropdown-submenu .dropdown-menu {
	position: relative;
	top: 100%;
	right: 0%;
	margin: 0;
	text-align: right;
}


/** MENU - Button Toggler **/
#header-nav-button {
	position: relative;
	border-radius: 0px !important;
	box-sizing: border-box;
	padding: 0px;
	background-color: transparent;
	border: 0px;
	outline: 0px;
	flex-grow: 1;
}

#header-nav-button .header-nav-button-wrapper {
	position: relative;
	width: 48px;
	height: 48px;
	box-sizing: border-box;
	padding: 0px;
	background-color: transparent;
	border: 0px;
	outline: 0px;
}

#header-nav-button .header-nav-button-bar {
	height: 2px;
	width: 36px;
	background-color: var(--4dv-white);
	margin: 0px;
	border-radius: 1px;
	position: absolute;
	left: 6px;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
	transform-origin: center center;
	transform-style: flat;
	transition-duration: 250ms;
	transition-timing-function: ease;
}

#header-nav:not(.opened) #header-nav-button .header-nav-button-bar:nth-of-type(1) {
	top: 12px;
}

#header-nav:not(.opened) #header-nav-button .header-nav-button-bar:nth-of-type(2) {
	top: 23px;
	opacity: 1;
}

#header-nav:not(.opened) #header-nav-button .header-nav-button-bar:nth-of-type(3) {
	top: 34px;
}

#header-nav.opened #header-nav-button .header-nav-button-bar:nth-of-type(1) {
	transform: rotate(45deg);
}

#header-nav.opened #header-nav-button .header-nav-button-bar:nth-of-type(2) {
	opacity: 0;
}

#header-nav.opened #header-nav-button .header-nav-button-bar:nth-of-type(3) {
	transform: rotate(-45deg);
}

#header-nav.opened #header-nav-button .header-nav-button-bar,
#header-nav:not(.opened) #header-nav-button.closed:hover .header-nav-button-bar {
	background-color: var(--4dv-primary);
}


/***********
* HOMEPAGE *
***********/
/* BACKGROUNDS */
.background-video {
	object-fit: cover;
	width: 100%;
	max-height: calc(80vh - 4rem);
	margin-top: 4rem;
	background: black;
}

#backgrounds-list .list-group {
	display: inherit;
	margin-bottom: 0;
	padding-left: 0;
	border-radius: 0;
}

#backgrounds-list .list-group-item {
	position: inherit;
	display: inherit;
	padding: 0;
	background-color: transparent;
	border: 0px solid rgba(0, 0, 0, 0);
	width: 100%;
	height: 100%;
}

#backgrounds-list .list-group-item.active {
	z-index: 0;
	color: inherit;
	background-color: inherit;
	border-color: inherit;
}

#backgrounds-list .list-group-item .backgrounds-img {
	visibility: hidden;
	transition: none;
}

#backgrounds-list .list-group-item.active .backgrounds-img {
	visibility: visible;
}

.backgrounds-container {
	position: fixed;
	top: 0;
	left: 0;
}

.backgrounds-img {
	object-fit: cover;
	flex: 1;
}

.backgrounds-overlay {
	max-width: 100vw;
	text-align: center;
	top: 50%;
	left: 0px;
	padding: 0px;
	margin: 0px;
}

.fullpage-text-layer:hover {
	background-color: rgba(0, 0, 0, 0.85);
}

.backgrounds-overlay.align-left {
	text-align: left;
}

.backgrounds-overlay.align-right {
	text-align: right;
}

.backgrounds-overlay.align-center {
	text-align: center;
}

.backgrounds-overlay-text {
	position: relative;
	display: inline-block;
	max-width: 100vw;
}

.backgrounds-overlay.align-left .backgrounds-overlay-text {
	padding-left: 8%;
	padding-right: 8%;
}

.backgrounds-overlay.align-right .backgrounds-overlay-text {
	padding-left: 8%;
	padding-right: 8%;
}

.backgrounds-overlay-text p strong {
	font-weight: 900;
}

.backgrounds-overlay-text>ul li {
	font-size: 32px;
	color: var(--4dv-white);
	list-style-type: none;
}

#homepage-section-intro {
	position: relative;
}

#homepage-section-intro .backgrounds-overlay p {
	font-weight: 300;
	color: var(--4dv-white);
	font-family: 'Lato', sans-serif;
	font-size: 40px;
	margin: 0px;
	padding: 0px 0px 32px 0px;
	text-shadow: -1px 1px 4px rgba(0, 0, 0, 0.75);
}

/* CBD FLIP CARDS */
.flip-card-backlogo {
	position: relative;
	width: 80%;
	min-width: 256px;
	height: auto;
	min-height: 90px;
	max-height: 256px;
	margin: 30px auto;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.flip-card-backtitle-container {
	position: absolute;
	height: 20%;
	min-height: 60px;
	width: 100%;
	background-color: #232a41;
	bottom: 0;
	left: 0;
	text-align: center;
}

.flip-card-backtitle-wrapper {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.flip-card-backtitle-wrapper h2 {
	color: #f0f0f0;
	font-size: calc(1.325rem + 2vw);
}

/** TRY IT NOW **/
#tryit-panel h1 {
	text-transform: uppercase;
	font-weight: 300;
	font-family: 'Lato', sans-serif;
	font-size: 52px;
	text-align: center;
}

p.tryit-carousel-text {
	font-size: 18px;
	font-weight: 900;
	letter-spacing: 1px;
	color: var(--4dv-secondary);
	text-align: center;
	margin: 16px 0px;
}

/* PROCESS PANEL */
#process-panel {
	padding: 64px 0;
}

#process-panel .row {
	position: relative;
}

#process-panel h3 {
	text-transform: uppercase;
	font-weight: 100;
	color: var(--4dv-white);
	font-family: 'Lato', sans-serif;
	font-size: 42px;
	width: 284px;
	margin: 16px auto;
	box-sizing: border-box;
	text-align: center;
}

#process-panel .process-line-wrapper {
	display: block;
	position: absolute;
	top: 188px;
	left: 50%;
	margin: 0 0;
	padding: 0 128px;
	width: 80%;
	transform: translateX(-50%);
	box-sizing: border-box;
}

#process-panel .process-line {
	background-color: var(--4dv-primary);
	height: 2px;
	width: 100%;
	display: block;
	position: relative;
}

.process-thumbnail {
	position: relative;
	width: 80%;
	height: 460px;
	border: 16px solid var(--4dv-primary);
	margin: 0px auto;
	padding: 0px;
	border-radius: 2px;
	background-color: var(--4dv-light);
	transition: transform 0.8s;
}

.process-thumbnail .process-wrap {
	position: relative;
	width: 100%;
	height: 100%;
	border-radius: 4px;
}

.process-thumbnail-recto {
	position: absolute;
	width: 100%;
	height: 100%;
}

/* SHOWREEL PANEL */
#showreel-panel {
	padding: 96px 0px;
}

.showreel-item {
	max-width: 560px;
	min-width: 296px;
	box-sizing: border-box;
	margin: 20px auto;
}

.showreel-item-thumbnail {
	display: block;
	height: 320px;
	width: 100%;
	background-size: cover;
	background-position: center;
	background-color: transparent;
}

.showreel-item-information {
	color: var(--4dv-white);
}

.showreel-item-information h4 {
	font-weight: 900;
	font-size: 28px;
	margin: 8px 0px 0px 0px;
	color: var(--4dv-white);
}

.showreel-item-information h3 {
	font-weight: 500;
	font-size: 20px;
	margin: 0px 0px 0px 0px;
	color: var(--4dv-white);
}

.showreel-information-studio {
	font-style: italic;
	font-weight: 100;
	float: right;
	margin: 5px 0px;
	font-size: 18px;
	color: var(--4dv-white);
}

.showreel-information-meta {
	margin: 8px 0px 0px 0px;
	padding: 0;
	font-weight: 300;
	font-size: 14px;
	color: #c8c8c8;
}

/* SHOWREEL ARTICLE PAGE */
.showreel-article-meta {
	line-height: 20px;
}

.showreel-article-meta-title {
	font-size: 16px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.showreel-article-meta-content {
	font-size: 16px;
	font-weight: 300;
	text-transform: initial;
	letter-spacing: initial;
	color: var(--4dv-primary);
}

.showreel-article-text {
	margin-top: 64px;
}

a.showreel-article-link-studio {
	color: var(--4dv-primary);
}

/* TRY IT PANEL */
#tryit-panel {
	padding: 64px 0;
}

#tryit-panel .graphic-round h2 {
	text-transform: uppercase;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 24px;
	font-weight: 900;
}

#tryit-panel .carousel-indicators {
	margin-right: 0;
	margin-left: 0;
	position: relative;
}

#tryit-panel .carousel-indicators .graphic-line {
	position: absolute;
	display: block;
	width: 75%;
	height: 4px;
	background-color: var(--4dv-secondary);
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 0;
}

#tryit-panel .carousel-indicators li {
	width: auto;
	height: auto;
	background-color: transparent;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: auto;
	text-indent: inherit;
	z-index: 1;
	opacity: 1;
}

.graphic-round {
	position: relative;
	display: inline-block;
	border: 8px solid #76919a;
	border-radius: 128px;
	width: 128px;
	height: 128px;
	text-align: center;
	margin: 0px;
	background: var(--4dv-primary);
	text-indent: inherit;
}

.graphic-round h2 {
	opacity: 0.75;
}

.active .graphic-round {
	border-color: var(--4dv-secondary);
}

.active .graphic-round h2 {
	opacity: 1;
}

.graphic-round:after {
	position: absolute;
	display: inline-block;
	right: -32px;
	top: 50%;
	content: '';
	border: 0px solid var(--4dv-secondary);
	height: 6px;
	width: 32px;
	background-color: var(--4dv-secondary);
	transform: translateY(-50%);
}

.graphic-round:last-of-type:after {
	height: 0px;
	width: 0px;
}

.tryit-line-wrapper {
	display: block;
	margin: 0 0;
	width: 100%;
	box-sizing: border-box;
	position: relative;
}

.tryit-main-line {
	background-color: var(--4dv-dark);
	height: 174px;
	width: 2px;
	margin: 0 auto 56px auto;
	display: block;
	position: relative;
}

.tryit-main-label {
	position: absolute;
	bottom: -56px;
	font-size: 38px;
	font-weight: 100;
	text-align: center;
	left: -32px;
}

.tryit-second-line-wrapper {
	position: absolute;
	top: 50%;
	margin: 0 0;
	padding: 0 128px;
	width: 100%;
	box-sizing: border-box;
}

.tryit-second-line {
	background-color: var(--4dv-dark);
	height: 2px;
	width: 100%;
	display: block;
	position: relative;
}

.tryit-left-line {
	background-color: var(--4dv-dark);
	height: 86px;
	width: 2px;
	display: block;
	position: relative;
	float: left;
}

.tryit-right-line {
	background-color: var(--4dv-dark);
	height: 86px;
	width: 2px;
	display: block;
	position: relative;
	float: right;
}

/* PRODUCT PANEL */
.fullpage-floating-panel {
	max-width: 920px !important;
	border-radius: 8px;
	position: relative;
	margin: 15% auto;
	text-align: center;
	padding: 32px;
	box-sizing: border-box;
	border: 1px solid var(--4dv-dark);
	box-shadow: -1px 1px 8px 1px rgba(26, 30, 47, .25);
}

#product-panel h5 {
	font-family: 'Lato', sans-serif;
	font-weight: 900;
	text-transform: uppercase;
	font-size: 38px;
	margin: 96px auto 64px auto;
	color: var(--4dv-primary);
	font-size: 42px;
	font-weight: 900;
}

#product-panel .fullpage-floating-panel p {
	color: var(--4dv-white);
	font-size: 28px;
	font-weight: 100;
	font-family: 'Lato', sans-serif;
	margin: 32px 5%;
}


/**********
* STUDIOS *
**********/
#studios-panel {
	padding-bottom: 68px;
}

#studios-panel h2 {
	color: #ea3a87;
	font-weight: 700;
	font-size: 84px;
	text-transform: uppercase;
	margin: 0px auto;
	padding: 64px 0;
	text-align: center;
}

.studios-wrapper #studioNext,
.studios-wrapper #studioPrev {
	position: absolute;
	top: 0px;
	width: 64px;
	font-size: 64px;
	height: 100%;
	color: #f0f0f0;
	opacity: .25;
}

.studios-wrapper #studioNext:hover,
.studios-wrapper #studioPrev:hover {
	opacity: 1;
}

.studios-wrapper #studioNext {
	right: 0px;
}

.studios-wrapper #studioPrev {
	left: 0px;
}

.studios-wrapper #studioNext,
.studios-wrapper #studioPrev,
.studios-wrapper #studioNext:focus,
.studios-wrapper #studioPrev:focus {
	border: 0px;
	background-color: transparent;
	outline: 0px;
}

.studios-wrapper #studioNext:hover::before,
.studios-wrapper #studioPrev:hover::before {
	border-color: rgba(26, 30, 47, 0.7);
}

.studios-wrapper #studioNext::before {
	left: -0px;
	transform: rotate(45deg);
}

.studios-wrapper #studioPrev::before {
	right: -0px;
	transform: rotate(-135deg);
}

.studios-wrapper .studios-list {
	padding: 0px;
	margin: 0px;
}

.studios-wrapper .studios-list a {
	text-decoration: none;
}

.studios-wrapper .studios-carousel {
	width: 960px !important;
	overflow: hidden;
	white-space: nowrap;
	font-size: 0px;
	box-sizing: border-box;
	padding: 0px !important;
}

.studios-wrapper #studios-mover {
	transition: 1000ms ease;
}

.studios-wrapper .studios-container {
	border: 2px solid #03e7ae;
	border-radius: 4px;
	color: #f0f0f0;
	min-width: 288px;
	min-height: 288px;
	width: 288px;
	height: 288px;
	text-overflow: ellipsis;
	position: relative;
	box-sizing: border-box;
	margin: 0px 16px;
	display: inline-block;
}

.studios-wrapper .studios-container:hover {
	background: #03dda7;
	cursor: pointer;
}

.studios-wrapper .studios-container:hover .studios-name * {
	color: #f0f0f0;
}

.studios-wrapper .studios-container:hover .studios-continent,
.studios-wrapper .studios-container:hover .studios-country,
.studios-wrapper .studios-container:hover .studios-city {
	color: #ea3a87;
}

.studios-wrapper .studios-continent,
.studios-wrapper .studios-country,
.studios-wrapper .studios-city {
	padding-left: 16px;
}

.studios-wrapper .studios-continent {
	font-weight: 700;
	font-size: 48px;
	font-family: 'Lato', sans-serif;
	line-height: 48px;
	margin-top: 16px;
	z-index: 1;
}

.studios-wrapper .studios-country {
	font-weight: 300;
	font-size: 32px;
	font-family: 'Lato', sans-serif;
	line-height: 32px;
	z-index: 1;
}

.studios-wrapper .studios-city {
	font-weight: 300;
	font-size: 28px;
	font-family: 'Lato', sans-serif;
	line-height: 28px;
	z-index: 1;
}

.studios-wrapper .studios-name {
	text-align: right;
	text-transform: uppercase;
	font-weight: 900;
	letter-spacing: -2px;
	font-family: 'Lato', sans-serif;
	vertical-align: baseline;
	position: absolute;
	bottom: 2px;
	right: 2px;
	margin: 0px;
}

.studios-wrapper .studios-name * {
	color: #ea3a87;
	filter: brightness(1.15);
}

.studios-wrapper .studios-name:hover {
	text-decoration: none;
}

.studios-wrapper .studios-name p {
	margin: 0;
	padding: 0;
}

.studios-wrapper .studios-name-line1 {
	font-size: 56px;
	line-height: 39px;
	font-weight: 900;
}

.studios-wrapper .studios-name-line1.name-xl {
	font-size: 72px;
	line-height: 50px;
}

.studios-wrapper .studios-name-line2 {
	font-size: 42px;
	line-height: 28px;
	font-weight: 900;
	margin-top: 12px !important;
}

.studios-wrapper .studios-name-line2.name-xs {
	font-size: 28px;
	line-height: 16px;
	/*	margin-top: 12px !important;*/
}

.studios-wrapper .studios-carousel-selectors {
	color: #f0f0f0;
	text-align: center;
	vertical-align: middle;
	position: absolute;
	bottom: -48px;
	margin: 0 auto;
	margin-right: 0px;
	padding: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}

.studios-wrapper .studios-carousel-selectors li {
	display: none;
	height: 12px;
	width: 12px;
	background-color: rgba(255, 255, 255, 0.5);
	border-radius: 6px;
	margin: 0px;
	transition: margin-right 500ms cubic-bezier(1.000, -0.600, 0.000, 1.650);
	/* custom */
	cursor: pointer;
}

.studios-wrapper .studios-carousel-selectors li:hover {
	background-color: rgba(234, 58, 135, 1);
}

.studios-wrapper .studios-carousel-selectors li.active {
	background-color: rgba(255, 255, 255, 1);
	margin-right: 32px;
}

.studios-wrapper .studios-carousel-selectors li.visible {
	display: inline-block;
}

@media (min-width:993px) and (max-width: 1320px) {
	.studios-wrapper .studios-carousel {
		width: 960px !important;
	}
}

@media (min-width:845px) and (max-width: 992px) {
	.studios-wrapper .studios-carousel {
		width: 640px !important;
	}
}

@media (max-width: 844px) {
	.studios-wrapper .studios-carousel {
		width: 320px !important;
	}
}

* {
	transition: initial;
	box-sizing: border-box;
}

/* SITE LAYOUT & GLOBAL STYLES */
body {
	font-family: sans-serif;
	background-color: var(--4dv-dark);
	color: var(--4dv-white);
}

h1 {
	font-family: 'Oswald', sans-serif;
	font-size: 2.5rem;
	text-align: center;
}

#studioPageApp {
	margin: 2rem 0;
}

#studioPageApp button {
	cursor: pointer;
}

#studioPageApp>.map__image {
	max-width: 1900px;
	margin: 0 auto;
}

#studioPageApp .region-section .map__image {
	max-width: 380px;
	margin: 0 auto;
}


/* SVG MAP / MOBILE */
#studioPageApp .map__image {
	width: 100%;
}

#studioPageApp svg {
	height: 100%;
	width: 100%;
	object-fit: contain;
	object-position: center;
}

#studioPageApp .map__image path {
	fill: var(--4dv-white);
	stroke: var(--4dv-dark);
	stroke-width: .6px;
	transition: .15s ease;
}

#studioPageApp .map__image .active {
	color: var(--4dv-white);
}

#studioPageApp .marker.open {
	fill: var(--4dv-secondary);
}

#studioPageApp .marker.closed {
	fill: var(--4dv-white-dark);
}

#studioPageApp .marker.active {
	fill: var(--4dv-primary);
}

#studioPageApp .marker-line.open {
	stroke: var(--4dv-secondary);
}

#studioPageApp .marker-line.active {
	stroke: var(--4dv-primary);
}

#studioPageApp .marker-line.closed {
	stroke: var(--4dv-white-dark);
}

#studioPageApp .marker-line.active {
	stroke: var(--4dv-primary);
}

#studioPageApp .map__image path.country {
	stroke: var(--4dv-dark);
	stroke-width: .6px;
}

#studioPageApp .map__image path.country.has-studio,
#studioPageApp .map__image path.country.show {
	display: inline;
	/* fill: chocolate; */
}


/* STUDIO LIST */
#studioPageApp .region-section {
	max-width: 800px;
	margin: 0 auto;
	padding: 1rem;
}

#studioPageApp .region-section h3 {
	text-transform: uppercase;
	font-family: 'Oswald', sans-serif;
	font-weight: 700;
	font-size: 2rem;
}

#studioPageApp .region-section .region-div {
	margin-bottom: 3rem;
}

#studioPageApp .studio-table {
	display: grid;
	gap: 0.6rem;
	margin: auto;
	font-size: 22px;
	width: 95%;
}

#studioPageApp .studio-table .studio-table-cell[role="columnheader"],
#studioPageApp .studio-table .studio-table-cell {
	text-align: left;
	padding: 8px;
}

#studioPageApp .studio-table .studio-table-cell[role="cell"] {
	font-size: 18px;
}

#studioPageApp .studio-table .studio-table-row .row-content .studio-table-cell:last-child {
	display: none;
}

#studioPageApp .studio-table .studio-table-row {
	background-color: #232A41;
	cursor: pointer;
	border-radius: 0.375rem;
}


#studioPageApp .studio-table .studio-table-row[role="rowheader"] {
	font-family: 'Oswald';
	font-weight: 700;
	background-color: inherit;
	color: var(--4dv-secondary);
	text-transform: uppercase;
	cursor: initial;
}

#studioPageApp .studio-table .studio-table-row .row-content {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-areas: "studio location";
	position: relative;
}


#studioPageApp .studio-table .studio-table-row .row-content .icon-container {
	position: absolute;
	left: -26px;
	top: 11px;
	cursor: pointer;
	margin: auto;
}

#studioPageApp .studio-table .studio-table-row .row-content .icon-container svg {
	display: none;
}

#studioPageApp .studio-table-row:not([role="rowheader"]) .row-content .icon-container .triangle-right {
	display: inline;
}

#studioPageApp .studio-table-row:not([role="rowheader"]).active .row-content .icon-container .triangle-right {
	display: none;
}

#studioPageApp .studio-table-row:not([role="rowheader"]).active .row-content .icon-container .triangle-down {
	display: inline;
}

#studioPageApp .triangle-right,
#studioPageApp .triangle-down {
	width: 24px;
	height: 24px;
}

#studioPageApp .triangle-right {
	fill: var(--4dv-white);
}

#studioPageApp .triangle-down {
	fill: var(--4dv-primary);
}




#studioPageApp .studio-table-row.active {
	font-weight: bold;
}

#studioPageApp a {
	color: var(--4dv-primary);
}

#studioPageApp a:hover {
	color: var(--4dv-secondary);
}

/* STUDIO MORE INFO */
#studioPageApp .more-info-wrapper {
	cursor: initial;
}

#studioPageApp .more-info {
	max-height: 0;
	grid-area: more-info;
	overflow: hidden;
	padding-left: 1rem;
}

#studioPageApp .studio-table-row.active .more-info {
	max-height: 500px;
	margin-bottom: 0.8em;

}

#studioPageApp .more-info div[role="table"] div[role="row"] {
	/* display: flex; */
	flex-wrap: wrap;
	align-items: flex-end;
}

#studioPageApp .more-info div[role="table"] div[role="row"]>div:first-child {
	font-weight: 700;
	margin-right: 1ch;
}



/* UTILS */
.outline {
	outline: 2px solid red;
}

.fill-with-color {
	fill: var(--4dv-primary);
}


@media screen and (min-width: 660px) {
	#studioPageApp .region-section {
		display: grid;
		grid-template-columns: 400px 1fr;
		gap: 1rem;
	}

}


/* MEDIA QUERIES */
@media screen and (min-width: 820px) {

	#studioPageApp {
		margin: 0;
	}

	h1 {
		font-size: 4rem;
		margin-top: 4rem;
	}

	/* STUDIO LIST */
	#studioPageApp .region-section {
		display: block;
		padding: 0;
	}

	#studioPageApp .studio-table .studio-table-row .row-content .studio-table-cell:last-child {
		display: block;
	}

	#studioPageApp .studio-table .studio-table-row .row-content {
		display: grid;
		grid-template-columns: 3fr 3fr 1fr;
		grid-template-areas: "studio location actions";
		padding-left: 0.3em;
	}

	#studioPageApp .studio-table .studio-table-row .studio-table-cell.actions {
		display: flex;
		margin-left: auto;
		align-items: start;
	}

	#studioPageApp .studio-table-row:not([role="rowheader"]):not(.active):hover {
		background-color: var(--4dv-secondary);
		/* #474A58 */
	}

	#studioPageApp button.show-on-map {
		background: none;
		border: none;
		color: inherit;
		transition: transform 0.1s;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 0.2em;
		margin-bottom: 0.2em;
	}

	#studioPageApp button.show-on-map svg {
		width: 1.5rem;
		height: 1.5rem;
		stroke: currentColor;
	}

	/* Ajoute un effet de mise à l'échelle lors du survol */
	#studioPageApp button.show-on-map:hover {
		transform: scale(1.3);
		fill: var(--4dv-primary);
	}

	/* Ajoute un effet de clic lors de l'activation */
	#studioPageApp button.show-on-map:active {
		transform: scale(0.9);
	}

	#studioPageApp .shape {
		fill: currentColor;
		;
	}

	/* SVG MAP / DESKTOP */
	#studioPageApp .map__image {
		position: relative;
		padding: 2rem;
		display: grid;
		justify-items: center;
		width: 100%;
	}

	#studioPageApp .map__image path.region {
		fill: #677179;
		stroke: var(--4dv-dark);
		stroke-width: .8px;
		transition: .15s ease;
	}

	/* MAP POPUP */
	#studioPageApp .popup {
		position: absolute;
		display: none;
		z-index: 100;
		background-color: #232A41;
		/* Ajoute une transparence à la couleur d'arrière-plan : */
		background-color: rgba(35, 42, 65, 0.9);
		color: var(--4dv-white);
		border: 2px solid var(--4dv-primary);
		padding: 1rem;
		border-radius: 0.375rem;
		box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
		/* Augmente la taille et l'intensité de l'ombre */
		font-size: 1.1rem;
	}

	#studioPageApp .popup-title {
		text-align: left;
	}

	#studioPageApp .popup-content .popup-title-link {
		color: var('--4dv-white')
	}

	#studioPageApp #popup-location {
		text-align: left;
	}
}

/***********
* PARTNERS *
***********/
.partner-name {
	font-weight: 900;
}

.partner-highlight {
	color: var(--4dv-secondary);
}

.partner-link {
	text-decoration: none !important;
	color: var(--4dv-primary) !important;
}


/*********
* FOOTER *
**********/
footer {
	text-align: left;
	width: 100%;
	box-sizing: border-box;
}


/** FOOTER GENERAL **/
.footer-lg {
	background-color: #000000;
}

footer h5 {
	color: var(--4dv-secondary);
	font-family: 'Lato', sans-serif;
	font-weight: 900;
	text-transform: uppercase;
	font-size: 38px;
}

footer h6 {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 28px;
	padding: 0px;
}

.footer-logo {
	margin: 3vh auto;
	height: 10vh;
	max-width: 80vw;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

footer a.link-network {
	font-size: 2rem;
	margin-right: 1rem;
	color: white;
}

footer a.link-network:hover {
	color: var(--4dv-secondary);
}

#footer-nav {
	background-color: transparent;
}

footer #footer-nav ul {
	padding: 0px;
	list-style-type: none;
	color: #B0B0B0;
	text-wrap: nowrap;
}

footer #footer-nav ul li {
	padding: 4px 0px;
}

footer #footer-nav ul .title {
	text-decoration: underline;
	color: white;
	font-weight: 600;
}


footer #footer-nav ul li a {
	text-decoration: none;
	color: #B0B0B0;
}

footer.footer-xs {
	padding: 0px;
	line-height: 0px;
	white-space: nowrap;
	font-size: 0px;
}

.copyright {
	max-width: 100vw;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

footer.footer-xs #hologalleryControllers,
footer.footer-xs #copyright {
	font-size: initial;
	line-height: initial;
}

.newsletter {
	white-space: nowrap;
	font-size: 0px;
}

#newsletterFooterForm {
	font-size: 0px;
}

.newsletter .news-input-email {
	display: inline-block;
	background-color: var(--4dv-white-dark);
	font-size: 1rem;
	border: none;
	height: 2.5rem;
	border-radius: 0.6rem;
	margin-right: 1rem;
}

footer .newsletter .news-input-email {
	color: #222222;
	background-color: var(--4dv-white-dark);
	padding-left: 1rem;
}

footer .newsletter .news-input-email:focus {
	outline: 0px;
}

.newsletter .news-submit {
	display: inline-block;
	height: 2.5rem;
	border: none;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	font-size: 1rem;
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	vertical-align: bottom;
	border-radius: 0.5rem;
	background-color: var(--4dv-secondary);
	color: white;
}


footer.bg-green .newsletter .news-submit:hover {
	background-color: var(--4dv-secondary);
	color: var(--4dv-white);
}

/** COPYRIGHT **/
#copyright {
	font-weight: 300;
	font-size: 14px;
	text-align: center;
	margin: 0px;
	bottom: 0;
	left: 0;
}

#copyright p {
	display: inline-block;
	margin: 0px 96px 0px 0px;
	padding: 0;
	font-size: 14px;
}

footer.bg-green #copyright p {
	color: var(--4dv-white);
}

footer.bg-dblue #copyright p {
	color: var(--4dv-dark);
	font-weight: 700;
}

#copyright ul {
	padding: 0;
	margin: 0;
}

#copyright ul li {
	margin: 0px 8px
}

.copyright-wrapper {
	margin: auto;
	position: relative;
	text-align: left;
}

footer.bg-dblue #copyright {
	background-color: var(--4dv-primary);
	color: var(--4dv-dark);
}

footer.bg-green #copyright {
	background-color: var(--4dv-dark);
	color: #aaa;
}

/*************
* NARROWPAGE *
*************/
.narrowpage {
	max-width: 790px !important;
}


/*************
* PAGE TITLE *
*************/
.halfpage .page-title,
.smallpage .page-title {
	position: absolute;
	padding: 0;
	margin: 0;
	bottom: -20px;
	font-weight: 900;
	margin-left: 0px;
	font-size: 128px;
	text-transform: uppercase;
	font-family: 'Lato', sans-serif;
	z-index: 2;
}

.halfpage .page-title-supborder,
.smallpage .page-title-supborder {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 8px;
	z-index: 2;
}


/********************
* HALFPAGE TEMPLATE *
********************/
.halfpage.bg-green {
	border-bottom: 0px solid var(--4dv-dark);
}

.halfpage.bg-dblue {
	border-bottom: 0px solid var(--4dv-primary);
}


/*********************
* SMALLPAGE TEMPLATE *
*********************/
.smallpage~.page-illustration {
	position: relative;
	max-width: 946px;
	margin: 0px auto;
}

.smallpage .bg-text {
	position: absolute;
	right: 32px;
	top: -72px;
	margin: 0;
	padding: 0;
	font-family: 'Bebas Neue', sans-serif;
	font-weight: 900;
	color: rgba(0, 0, 0, 0.05);
	font-size: 20em;
	z-index: 0;
}

.smallpage .bg-logo {
	background-size: 720px;
	background-repeat: no-repeat;
	background-position: calc(100% + 32px) calc(100% + 32px) !important;
	background-position: 125% 125%;
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
}

footer>.bg-logo {
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 0% 100%;
	height: 150%;
	display: block;
	position: absolute;
	top: -150%;
	overflow: hidden;
	z-index: -1;
}

.smallpage.bg-green {
	border-bottom: 8px solid var(--4dv-dark);
}

.smallpage.bg-green .page-title {
	color: var(--4dv-dark);
}

.smallpage.bg-green .bg-logo {
	background-image: url('../img/brand/logo_simple_green.png');
}

.smallpage.bg-dblue {
	border-bottom: 8px solid var(--4dv-primary);
}

.smallpage.bg-dblue .bg-logo,
.page-4dv.bg-dblue footer>.bg-logo {
	background-image: url('../img/brand/logo_simple_dblue.png');
}

.smallpage.bg-dblue .page-title,
.smallpage.bg-lblue .page-title {
	color: var(--4dv-primary);
}

.smallpage.bg-lblue .bg-logo,
.page-4dv.bg-lblue footer>.bg-logo {
	background-image: url('../img/brand/logo_simple_lblue.png');
}



/***************
* PRODUCT PAGE *
***************/

.bg-product {
	width: 100%;
	max-width: 80em;
	margin-top: 1.5em;
	margin-bottom: 1.5em;
	border-radius: 0.5em;
	filter: drop-shadow(0 25px 25px rgb(0 0 0 / 0.15));
}

@media (max-width: 1300px) {
	.bg-product {
		border-radius: 0em;
	}
}

h1.holosys-title.dark {
	color: var(--4dv-dark);
}

h1.holosys-title {
	font-size: 8em;
	color: var(--4dv-primary);
	font-weight: 900;
	text-align: left;
}

li.product-description-part h3,
div.product-description-part h3 {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 3em;
	text-transform: capitalize;
}

li.product-description-part table {
	color: var(--4dv-white);
	font-weight: 400;
}

ul.bullet-cube.product-aside-right {
	padding-right: 24px
}

ul.bullet-plus.product-aside-right {
	padding-right: 24px
}

.product-aside-left {
	flex-grow: 12;
	color: var(--4dv-white);
}

.product-aside-right {
	flex-grow: 6;
	color: var(--4dv-white);
	padding-left: 64px;
	padding-top: 32px;
	box-sizing: border-box;
	vertical-align: top;
}

.share-article p {
	color: var(--4dv-primary);
}

.share-article .link-network {
	font-size: 28px;
	margin: 0px 8px;
}

.share-article span {
	color: var(--4dv-white);
	font-weight: 300;
}

.shareon-btn {
	display: inline-block;
	vertical-align: middle;
	margin: 4px 2px;
	height: 28px;
}

.product-smallblock {
	width: 100%;
	height: 96px;
}

.product-border-right-smallblock {
	width: 100%;
	height: 96px;
}

.product-border-left-top-medblock {
	display: inline-block;
	vertical-align: top;
	margin-left: 11px;
}

.product-border-left-smallblock {
	width: 100%;
	height: 96px;
}

section.bg-lblue ul.bullet-cube {
	list-style-image: url(../img/brand/cube_icon_small_lblue.png);
}

section.bg-dblue ul.bullet-cube {
	list-style-image: url(../img/brand/cube_icon_small_dblue.png);
}

section.bg-green ul.bullet-cube {
	list-style-image: none;
}

section.bg-green ul.bullet-cube li {
	background-image: url(../img/brand/cube_icon_small_dark.png);
	background-repeat: no-repeat;
	padding-left: 32px;
	background-position: 0px 6px;
}

section.bg-lblue ul.bullet-plus {
	list-style-image: url(../img/brand/plus32.png);
}

section.bg-dblue ul.bullet-plus {
	list-style-image: url(../img/brand/plus32.png);
}

section.bg-green ul.bullet-plus {
	list-style-image: none;
}

section.bg-green ul.bullet-plus li {
	background-image: url(../img/brand/plus32.png) no-repeat left 5px;
	padding-left: 32px;
	background-size: 0.5em;
}

/** PRODUCT DESCRIPTION **/
#holosys-gif.product-aside-img {
	position: relative;
	background-image: url('../img/illustration/holosys.gif');
	min-height: 320px;
	min-width: 320px;
	margin: 32px auto;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
}

#product-description .product-border-left-bottom {
	margin-left: 16px;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 0;
}

.product-description-part p {
	font-weight: 300;
	font-size: calc(1rem + 0.5vw);
	margin-bottom: 2em;
}

#product-description h2 {
	font-family: 'Oswald', sans-serif;
	text-transform: uppercase;
	color: var(--4dv-white);
	font-size: calc(1rem + 2vw);
}

#product-description ul.product-description-block,
#product-tools ul.product-description-block {
	margin-left: -8px;
	padding-top: 32px;
}

#product-description ul.product-description-block li,
#product-tools ul.product-description-block li {
	padding-left: 16px;
	padding-bottom: 32px;
	text-align: justify;
}

#product-description ul.product-description-block li p,
#product-tools ul.product-description-block li p {
	font-family: 'Lato', sans-serif;
	color: var(--4dv-white);
	font-weight: 300;
}

#product-description ul.product-description-block li p strong,
#product-tools ul.product-description-block li p strong {
	font-weight: 900;
}

/** PRODUCT TOOLS **/
#product-tools .product-border-left-top {
	margin-left: 16px;
	padding-top: 32px;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 0px;
}

#holosys-plugin {
	display: inline-block;
	height: 100%;
	min-height: 220px;
	height: 100%;
	min-width: 20px;
	max-width: 100%;
	background-image: url('../img/illustration/holosys_plugin.png');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	flex-grow: 12;
	margin: 0 auto 32px auto;
	vertical-align: middle;
}

@media (max-width: 1200px) {

	#product-description ul.product-description-block,
	#product-tools ul.product-description-block {
		max-width: 100%;
	}
}

/** PRODUCT PERFORMANCE **/
#holosys-video {
	line-height: 0px;
}

#product-performances .product-border-right {
	margin-left: 16px;
	margin-right: 0px;
}

#product-performances,
#product-package {
	padding: 0px;
}

#product-performances .product-aside-right {
	padding: 32px 24px;
	width: 100%;
}

#product-performances .product-aside-right .product-description-part {
	transform: rotateY(180deg);
	padding-left: 16px;
}

#product-performances .product-aside-right .product-description-part h3 {
	text-align: right;
	transform: rotateY(180deg);
	-webkit-transform: rotateY(180deg);
}

#product-performances .product-aside-right .product-description-part table {
	transform: rotateY(180deg);
	-webkit-transform: rotateY(180deg);
}

#product-performances table {
	font-size: calc(1rem + 0.5vw);
	line-height: 1.85em;
}

#product-performances table tr td:nth-of-type(1) {
	font-weight: 300;
	padding-right: 12px;
	color: #fff;
}

/** PRODUCT PACKAGE **/
#product-package .product-border-all {
	background-color: var(--4dv-primary);
	padding: 0px 8px;
	list-style-type: none;
	margin-left: 16px;
}

#product-package .product-border-all>li {
	background-color: var(--4dv-primary);
	padding: 0px 32px 32px 32px;
}

#product-package .product-border-all h3 {
	margin-top: -24px;
	margin-left: -8px;
	background-color: var(--4dv-primary);
	color: var(--4dv-dark);
	display: inline-block;
	padding: 0px 32px;
}

#product-package .bullet-cube {
	padding: 0;
	column-count: 2;
	column-width: 248px;
}


#product-package .bullet-plus {
	padding: 0;
	column-count: 2;
	column-width: 248px;
}

.package-list-plus {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	border-spacing: 1em;
}

.package-list-plus ul {
	filter: drop-shadow(0 0 18px rgb(0 0 0 / 0.3));
	flex: 1;
	background-color: var(--4dv-dark);
	color: var(--4dv-white) !important;
	padding: 1.5em !important;
	border-radius: 1em;
	font-size: medium;
}

.package-list-plus li {
	background: url(../img/brand/plus32.png) no-repeat left 6px;
	background-size: 1em;
	list-style: none;
	padding-left: 1.5em;
	font-weight: 300;
	font-size: calc(1rem + 0.5vw);
}

.package-list-plus h3 {
	margin-top: 0 !important;
	margin-bottom: 0.5em !important;
	width: 100% !important;
	color: var(--4dv-white) !important;
	background-color: var(--4dv-dark) !important;
	font-size: 2em !important;
	text-align: center !important;
}

.package-list-cube {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	border-spacing: 1em;
}

.package-list-cube ul {
	filter: drop-shadow(0 0 18px rgb(0 0 0 / 0.3));
	flex: 1;
	background-color: var(--4dv-dark);
	color: var(--4dv-white) !important;
	padding: 1.5em !important;
	border-radius: 1em;
	font-size: medium;
}

.package-list-cube li {
	background: url(../img/brand/cube_icon.png) no-repeat left 6px;
	background-size: 1em;
	list-style: none;
	padding-left: 1.5em;
	font-weight: 300;
	font-size: calc(1rem + 0.5vw);
}

.package-list-cube h3 {
	margin-top: 0 !important;
	margin-bottom: 0.5em !important;
	width: 100% !important;
	color: var(--4dv-white) !important;
	background-color: var(--4dv-dark) !important;
	font-size: 2em !important;
	text-align: center !important;
}

#product-package .bullet-cube li {
	display: list-item;
	vertical-align: top;
	list-style-type: none;
	color: var(--4dv-dark);
	font-size: calc(1.15rem + 0.5vw);
	margin-bottom: 8px;
	line-height: calc(1.85rem + 0.5vw);
}

#product-package .bullet-cube li p {
	line-height: 32px;
	margin: 0px;
}

#product-package .bullet-cube li span.second-line {
	background-image: none;
	font-size: calc(0.8rem + 0.5vw);
	line-height: inherit;
	margin: 0px;
}

#product-package .bullet-plus li {
	display: list-item;
	vertical-align: top;
	list-style-type: none;
	color: var(--4dv-white);
	font-size: calc(1.15rem + 0.5vw);
	margin-bottom: 8px;
	line-height: calc(1.85rem + 0.5vw);
}

#product-package .bullet-plus li p {
	line-height: 32px;
	margin: 0px;
}

#product-package .bullet-plus li span.second-line {
	background-image: none;
	font-size: calc(0.8rem + 0.5vw);
	line-height: inherit;
	margin: 0px;
}

.product-pricing-cell {
	margin: 30px auto;
	width: 248px;
	height: 320px;
	display: block;
	position: relative;
	border: 4px solid var(--4dv-secondary);
	border-radius: 4px;
}

.product-pricing-price-wrapper {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	text-align: center;
}

.product-pricing-price {
	font-family: 'Oswald', sans-serif;
	font-weight: 900;
	font-size: 3rem;
}

.product-pricing-periodicity {
	font-family: 'Oswald', sans-serif;
	font-weight: 500;
	font-size: 1.5rem;
}


/***********
* DOWNLOAD *
***********/
.download-list {
	position: relative;
	width: auto;
	list-style: none;
	padding: 0;
}

.download-button {
	width: 196px;
	display: block;
	background: var(--4dv-dark);
	margin: 32px auto;
	padding-left: 48px;
	padding-top: 16px;
	padding-bottom: 16px;
	font-size: 20px;
	line-height: 20px;
	background-image: url(../img/icon/download_sample.png);
	background-size: contain;
	background-repeat: no-repeat;
	border-radius: 8px;
	color: #fff;
	font-weight: 900;
	text-transform: uppercase;
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.5);
}

.download-item {
	display: inline-block;
	margin: 32px auto;
	text-align: center;
}

.download-thumbnail {
	display: block;
	position: relative;
	width: 272px;
	height: 272px;
	margin: 0px auto;
	padding: 0px;
	box-sizing: border-box;
	border-width: 3px;
	border-style: solid;
	border-top-right-radius: 3px;
	border-top-left-radius: 3px;
	background-size: cover;
	background-color: var(--4dv-dark);
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.5);
}

.download-thumbnail:hover {
	cursor: pointer;
}

.download-thumbnail-static,
.download-thumbnail-dynamic,
.download-thumbnail-icon,
.download-thumbnail-opacity {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	border-top-right-radius: 6px;
	border-top-left-radius: 6px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.download-thumbnail:hover .download-thumbnail-icon {
	opacity: .90;
}

.download-thumbnail:hover .download-thumbnail-opacity {
	opacity: 1;
}

.download-item .download-select {
	position: relative;
	margin: 0px auto;
	border-top-width: 0px;
	border-left-width: 3px;
	border-right-width: 3px;
	border-bottom-width: 3px;
	padding: 6px 20px 6px 48px;
	font-weight: 900;
	font-family: 'Lato', sans-serif;
	letter-spacing: 1px;
	font-size: 20px;
	text-align-last: center;
	border-bottom-left-radius: 3px;
	border-bottom-right-radius: 3px;
	width: 272px;
	height: 64px;
	cursor: pointer;
}

.download-item.item-green .download-select {
	background-color: var(--4dv-primary);
}

.download-item.item-pink .download-select {
	background-color: var(--4dv-secondary);
}

.download-item .download-select option {
	text-align: center;
	background-color: var(--4dv-dark);
	color: var(--4dv-white);
	font-weight: 900;
}

.download-item .download-select option:hover {
	background-color: var(--4dv-secondary);
}

.download-item .download-select.sample-format {
	background-image: url('../img/icon/small/logo_4ds_22px_b.png');
	background-size: auto;
	background-repeat: no-repeat;
	background-position: 16px center;
}

.download-item .download-select.sample-format option[value="4ds"] {
	background-image: url('../img/icon/small/logo_4ds_22px_b.png');
}

.download-item .download-select.sample-format option[value="abc"] {
	background-image: url('../img/icon/small/logo_alembic_22px_b.png');
}

.download-item .download-select:focus {
	outline: 0px;
}

.download-icon {
	background-color: var(--4dv-dark);
	cursor: pointer;
}

.download-section {
	margin-top: 2px;
}

.download-item-meta,
.sampledata-meta {
	position: absolute;
	bottom: 0;
	color: var(--4dv-dark);
	width: 100%;
	background-color: var(--4dv-primary);
	margin: 0px auto;
}

.download-item-meta p,
.sampledata-meta p {
	margin: 4px auto;
	color: var(--4dv-dark);
	padding: 0 5px;
	text-align: right;
}

p.download-item-title,
.sampledata-meta-title {
	font-size: 18px;
	opacity: .85;
	font-weight: 900;
	text-transform: uppercase;
}

p.download-item-date,
.sampledata-meta-date {
	font-size: 14px;
	opacity: 1;
}

a.sampledata-download-btn {
	position: relative;
	text-align: right;
	font-weight: 900;
	text-transform: uppercase;
	background-color: var(--4dv-primary);
	padding: 8px 16px 8px 48px !important;
	display: inline-block;
	border-radius: 4px;
	box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
	margin: 10px 0px;
	width: 168px;
	color: var(--4dv-dark);
	transition: none;
}

a.sampledata-download-btn.inactive {
	background-color: var(--4dv-dark-light);
	opacity: 0.5;
}

a.sampledata-download-btn span {
	transition: none;
}

a.sampledata-download-btn:hover {
	color: var(--4dv-white) !important;
	background-color: var(--4dv-secondary);
	text-decoration: none;
}

.sampledata-front-meta {
	width: 100%;
	height: 48px;
	position: absolute;
	bottom: 0;
	left: 0;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	background: #464f74;
	color: var(--4dv-white);
	padding: 10px;
}

a.sampledata-front:hover .sampledata-front-meta {
	background-color: var(--4dv-primary);
}

a.sampledata-front:hover .sampledata-front-meta .fas.fa-download {
	opacity: 1 !important;
}

a.sampledata-front:hover .sampledata-front-meta p {
	color: var(--4dv-dark);
}

a.sampledata-download-btn:hover .fas.fa-download {
	color: var(--4dv-white) !important;
}

.download-thumbnail-opacity {
	background-image: url('../img/icon/download_sample_opacity.png');
	opacity: 0;
}

.item-green .download-thumbnail-icon {
	background-image: url('../img/icon/download_sample_pink.png');
	opacity: 0;
}

.item-pink .download-thumbnail-icon {
	background-image: url('../img/icon/download_sample_pink.png');
	opacity: 0;
}

.download-item.os-format {
	position: relative;
}

.download-item.os-format::before {
	content: '';
	position: absolute;
	margin: auto;
	width: 8px;
	height: 8px;
	background-color: transparent;
	border: 3px solid var(--4dv-dark);
	border-right: none;
	border-top: none;
	top: 11px;
	right: 11px;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	box-sizing: content-box;
	pointer-events: none;
	z-index: 1;
}

.download-item.os-format .download-select {
	background-image: url('../img/icon/small/logo_windows_22px.png');
	background-size: auto;
	background-repeat: no-repeat;
	background-position: 16px center;
	background-color: transparent;
	border-top-width: 3px;
	border-left-width: 3px;
	border-right-width: 32px;
	border-bottom-width: 3px;
}

.download-item.os-format .download-os-format-overlay {
	display: block;
	width: calc(100% - 32px);
	height: 39px;
	position: absolute;
	top: 0;
	left: 0;
	cursor: pointer;
}

.download-item.os-format.item-green .download-select {
	color: #fff;
	-moz-appearance: none;
	/* Firefox */
	-webkit-appearance: none;
	/* Safari and Chrome */
	appearance: none;
}

.download-item.os-format .download-select option[value="win"] {
	background-image: url('../img/icon/small/logo_windows_22px.png');
}

.download-item.os-format .download-select option[value="mac"] {
	background-image: url('../img/icon/small/logo_macos_22px.png');
}

.download-item.os-format .download-select option[value="linux"] {
	background-image: url('../img/icon/small/logo_ubuntu_22px.png');
}

.os-format .download-select,
.os-format .download-icon {
	text-transform: uppercase;
}

#player-4ds,
#partners-studios,
#contact-section,
#newsletter-subscription,
#showreel-article {
	padding-top: 72px;
}

.page-single {
	padding-top: 72px;
	padding-bottom: 72px;
}

#player-4ds .download-item {
	margin: 8px 0px 16px 32px;
}

#plugins .download-item .download-select {
	text-transform: uppercase;
	font-size: 18px;
	padding: 6px 20px 6px 20px;
}

/** GREEN **/
.download-item.item-green .download-thumbnail,
.download-item.item-green .download-select {
	border-color: var(--4dv-primary);
	color: var(--4dv-dark);
}

/** PINK **/
.download-item.item-pink .download-thumbnail,
.download-item.item-pink .download-select {
	border-color: var(--4dv-secondary);
	color: var(--4dv-white);
}

#sample-data .share-article p {
	font-size: 18px;
}

#sample-data .share-article p .link-network {
	font-size: 20px;
}




/**********
* CONTACT *
**********/
.contact-intro {
	line-height: 1em;
	text-align: center;
}

.contact-success {
	text-align: center;
	background: var(--4dv-dark);
	border-radius: 12px;
	color: var(--4dv-primary);
	font-weight: 900;
	padding: 18px 8px;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
	max-width: 480px;
	margin: 96px auto;
}

.contact-intro>span {
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 4px;
	font-size: 32px;
}

#contact-form {
	margin-top: 68px;
	opacity: 1;
	max-width: 540px;
	transition: all 500ms ease;
	margin: auto;
}

#newsletter-form {
	opacity: 1;
	max-width: 540px;
	transition: all 500ms ease;
	margin: 0px auto 64px auto;
}

#contact-form.hidden {
	opacity: 0;
}

#contactTo {
	text-transform: uppercase;
}

.solid-borders {
	border: solid !important;
	border-color: var(--4dv-danger-light) !important;
}

.solid-outline {
	outline: solid !important;
	outline-color: var(--4dv-danger-light) !important;
}

#contact-not-filled {
	font-size: 1.3rem;
	color: var(--4dv-danger);
}

#error-area {
    text-align: center;
    margin: 0 auto 1rem auto;
    font-size: larger;
    color: var(--4dv-danger-light);
    font-weight: normal;
	min-height: 3rem;
}

/********
* FORMS *
********/
.list-subtitle {
	margin: 16px 0px 32px 0px;
	padding: 0px;
	text-align: center;
}

.list-subtitle li {
	display: inline;
	text-transform: uppercase;
	margin: 0px 4px;
	font-weight: 300;
	font-style: italic;
}

.form-section .form-group {
	position: relative;
}

.form-section .form-item-wrapper {
	margin: 16px auto;
}

.form-section .form-error-wrapper {
	background-color: var(--4dv-light-light);
	border-radius: 4px;
	border-left: 4px solid var(--4dv-secondary);
}

.form-section .form-error,
.devarea form p.formError {
	color: var(--4dv-danger);
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 900;
	text-align: center;
	padding: 16px;
	text-shadow: -1px 0px 2px rgba(0, 0, 0, 0.5);
}

.page-content p.contactError,
.page-content p.formError,
.devarea form p.formError {
	position: absolute;
	right: 0px;
	bottom: -18px;
	letter-spacing: 1px;
	margin: 0px 0px 0px 0px;
	padding: 0px 15px 0px 0px;
	vertical-align: top;
	text-align: right;
	font-size: 15px;
	color: #ff3355;
	font-weight: 900;
	text-transform: lowercase;
	text-shadow: -1px -1px 2px rgba(0, 0, 0, 0.5);
}

.form-section label {
	text-transform: uppercase;
	font-weight: 300;
	font-size: 24px;
	letter-spacing: 4px;
	margin: 0px;
	margin-left: 4px;
	margin-bottom: 3px;
	color: var(--4dv-white);
	font-family: 'Lato', sans-serif;
	opacity: 1;
}

.form-section .form-control {
	border: 0px solid var(--4dv-dark-light);
	border-radius: 3px;
	background-color: var(--4dv-dark-light) !important;
	margin-top: -11px;
	box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.5);
}

.form-section .form-control:focus {
	background-color: #232a41;
}

.form-section .form-submit,
.btn-form-submit {
	background-color: var(--4dv-valid);
	color: var(--4dv-dark);
	margin: 0px auto;
	border-radius: 2px;
	text-transform: uppercase;
	font-weight: 900;
	padding: 8px 18px;
	position: relative;
	transition: none;
}

a.btn-form-cancel {
	background-color: var(--4dv-danger);
	color: var(--4dv-dark);
	margin: 24px auto;
	border-radius: 2px;
	text-transform: uppercase;
	font-weight: 900;
	padding: 8px 18px;
	position: relative;
	transition: none;
}

.form-section .form-submit *,
.btn-form-submit *,
a.btn-form-cancel * {
	transition: none;
}

.form-section .form-submit:hover,
a.btn-form-submit:hover {
	background-color: var(--4dv-valid-light);
	color: var(--4dv-dark);
}

a.btn-form-cancel:hover {
	background-color: var(--4dv-danger-light);
	color: var(--4dv-white);
}

.form-section .form-control.item-pink {
	color: var(--4dv-secondary-light);
}

.form-section .form-control.item-green {
	color: var(--4dv-primary);
}

.form-section .form-control.item-pink::placeholder {
	color: var(--4dv-secondary-light) !important;
	opacity: 0.25 !important;
}

.form-section .form-control.item-pink::-webkit-input-placeholder {
	color: var(--4dv-secondary-light) !important;
	opacity: 0.25 !important;
}

.form-section .form-control.item-pink:-ms-input-placeholder {
	color: var(--4dv-secondary-light) !important;
	opacity: 0.25 !important;
}

.form-section .form-control.item-green::placeholder {
	color: var(--4dv-primary) !important;
	opacity: 0.25 !important;
}

.form-section .form-control.item-green::-webkit-input-placeholder {
	color: var(--4dv-primary) !important;
	opacity: 0.25 !important;
}

.form-section .form-control.item-green:-ms-input-placeholder {
	color: var(--4dv-primary) !important;
	opacity: 0.25 !important;
}

.form-section input[type="submit"],
.btn-form-cancel {
	width: 100%;
	border-radius: 8px !important;
}

/** FORM **/
.page-4dv.bg-dblue form label,
.page-4dv.bg-lblue form label {
	color: var(--4dv-white);
}

#contact-form select.custom-select,
.form-section select.custom-select {
	font-family: 'Lato', sans-serif;
}

#contact-form select.custom-select option,
.form-section select.custom-select option {
	background-color: var(--4dv-dark) !important;
	font-weight: 700 !important;
	color: var(--4dv-white) !important;
	text-transform: capitalize;
	line-height: 20em !important;
}

#contact-form .form-group.row .contactError {
	margin-right: 15px;
}

.contactSuccess {
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	width: 80%;
	transform: translate(-50%, -50%);
	padding: 8px 16px;
	font-size: 1.5em;
	font-style: italic;
	color: var(--4dv-primary);
	font-weight: 500;
	background: var(--4dv-secondary);
	border-radius: 32px;
	border: 1px solid var(--4dv-primary);
}

.contactSuccessWrapper {
    position: relative;
    min-height: 25vh;
    text-align: center;
    margin: 20vh auto;
    font-size: x-large;
    font-weight: 700;
}
.contactSuccessWrapper img {
    height: 7rem;
    margin-bottom: 3rem;
}

/**********
* NETWORK *
**********/
ul.partners-list {
	padding: 0;
	list-style: none;
	margin: 10px 0px;
}

ul.partners-list li {
	padding: 0px 0px 0px 40px;
	list-style: none;
	background-size: 40px;
	background-repeat: no-repeat;
	background-position: top 0px left 0px;
	line-height: 40px;
	margin: 8px 0px;
	font-size: 24px;
}

h3.partners-title {
	padding: 10px 10px;
	margin: 0px;
	text-align: center;
	vertical-align: middle;
	font-size: 24px;
	text-align: center;
	font-weight: 300;
}

div.partners-content {
	padding: 10px;
}

div.partners-wrapper {
	background-color: var(--4dv-dark-light);
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.5);
	border-radius: 8px;
	height: 100%;
}

ul.partners-multi-columns {
	columns: 3;
}

#webgl-lowfps-advertisement {
	display: none;
	color: var(--4dv-white);
	padding-top: 80px;
	height: 100%;
}

#webplayer-homepage-controls-wrapper {
	position: absolute;
	bottom: 0px;
	left: 0;
	z-index: 2;
	display: block;
	background: transparent;
	width: 100%;
	min-height: 64px;
	max-height: 380px;
	height: 35%;
	cursor: pointer;
}

#webplayer-homepage-controls {
	position: absolute;
	padding-top: 64px;
	bottom: 0;
	left: 0;
	background: transparent;
	width: 100%;
	opacity: 0;
	height: 50%;
	visibility: hidden;
	transition: 250ms ease;
}

.button4D {
	background: transparent;
	color: #fff;
	border: 0px solid #fff;
	border-radius: 4px;
	margin: 16px 8px;
	font-family: 'Lato', sans-serif;
	font-size: 20px;
	font-weight: 300;
	opacity: 1;
	height: 40px;
	width: 40px;
	background-size: contain !important;
	vertical-align: middle;
	box-shadow: 0px 0px 0px;
	cursor: pointer;
	transition: none;
}

.button4D.large {
	padding: 12px 16px;
	border: 1px solid #fff;
	box-shadow: -1px 1px 4px 0px rgba(0, 0, 0, .25);
	text-transform: uppercase;
	font-size: 32px;
	height: auto;
	min-height: 96px;
	width: auto;
}

.button4D.optionPanel input {
	margin: 0 8px 0 0;
	position: relative;
}

.button4D:not(.optionPanel):hover {
	border-color: var(--4dv-primary);
	color: var(--4dv-primary);
	cursor: pointer;
	text-decoration: none;
}

.button4D ul {
	padding: 0;
	min-width: 136px;
}

.button4D ul li {
	list-style-type: none;
	text-align: right;
	margin: 8px 0px;
}

.button4D ul li span {
	color: var(--4dv-secondary);
}

#btn-webplayer-playPause.play {
	background-image: url('../img/icon/playback/play.png') !important;
}

#btn-webplayer-playPause.play:hover {
	background-image: url('../img/icon/playback/playHovered.png') !important;
}

#btn-webplayer-playPause.pause {
	background-image: url('../img/icon/playback/pause.png') !important;
}

#btn-webplayer-playPause.pause:hover {
	background-image: url('../img/icon/playback/pauseHovered.png') !important;
}

#btn-webplayer-audio {
	background-image: url('../img/icon/playback/audio.png');
}

#btn-webplayer-audio.muted {
	background-image: url('../img/icon/playback/audioMuted.png');
}

#btn-webplayer-audio:hover {
	background-image: url('../img/icon/playback/audioHovered.png') !important;
}

#btn-webplayer-fullScreen {
	background-image: url('../img/icon/playback/fullscreen.png');
}

#btn-webplayer-fullScreen:hover {
	background-image: url('../img/icon/playback/fullscreenHovered.png');
}

#btn-webplayer-fullScreen.fullscreen {
	background-image: url('../img/icon/playback/minimize.png');
}

#btn-webplayer-fullScreen.fullscreen:hover {
	background-image: url('../img/icon/playback/minimizeHovered.png') !important;
}

#btn-webplayer-quality:hover {
	background-image: url('../img/icon/playback/settingsHovered.png')
}

#btn-webplayer-quality {
	background: transparent;
	border: 0px solid transparent;
	outline: 0px;
	color: var(--4dv-white);
	background-image: url('../img/icon/playback/settings.png')
}

#btn-webplayer-quality-list {
	position: absolute;
	background: rgba(0, 0, 0, 0.5);
	left: 0;
	list-style: none;
	padding: 16px;
	bottom: 100%;
	margin: 0;
	color: #fff;
	border-radius: 4px;
	text-align: right;
	font-size: 12px;
	font-weight: 300;
	display: none;
}

#btn-webplayer-quality-list button {
	background-color: transparent;
	color: var(--4dv-white);
	border: 0px;
	outline: 0px;
	cursor: pointer;
	transition: none;
}

#btn-webplayer-quality-list button:hover,
#btn-webplayer-quality-list button.active:hover {
	color: var(--4dv-secondary);
}

#btn-webplayer-quality-list li.active button {
	color: var(--4dv-primary);
}

.btn-webplayer-quality-list-elem {
	margin: 2px 0px;
	padding: 2px 0px;
}

#text-webplayer-quality {
	display: inline-block !important;
	color: var(--4dv-white-dark);
	vertical-align: middle;
}

#elem-webplayer-timeline {
	display: inline-block;
	width: 100%;
	max-width: 320px;
	font-size: 0px;
	height: 4px;
	background-color: var(--4dv-primary);
	border-radius: 2px;
}

#elem-webplayer-timeline-fill {
	width: 50%;
	height: 100%;
	background-color: var(--4dv-secondary);
}

label {
	text-transform: capitalize;
	font-family: sans-serif;
	font-size: 11px;
	font-weight: 100;
	color: #fff;
	min-width: 120px;
	cursor: pointer;
}

.optionPanel {
	text-align: left;
}

.optionPanel h1 {
	text-transform: uppercase;
	font-family: sans-serif;
	font-size: 12px;
	font-weight: 100;
	margin: 0px 0px 16px 0px;
}

.optionTypeRadio {
	display: block;
	margin: 8px;
}

progress,
.timeline {
	position: fixed;
	bottom: 37px;
	left: 0;
	border-radius: 0px;
	height: 8px;
	width: 100%;
	cursor: pointer;
}

progress::-webkit-progress-bar,
.timeline {
	background-color: var(--4dv-primary);
}

progress::-moz-progress-bar {
	background-color: var(--4dv-primary);
}

progress::-webkit-progress-value {
	background-color: var(--4dv-secondary);
}

#orbit-controller {
	position: absolute;
	width: 100%;
	min-height: calc(100% - 125px);
	background-color: transparent;
	top: 80px;
	left: 0px;
}

#hologalleryLoadHelper {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 100;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	font-size: 3em;
	font-weight: 900;
	text-align: center;
	background-color: rgba(0, 0, 0, 0.5);
	border: 0px;
	padding: 8px 32px;
	border-radius: 64px;
	box-shadow: -2px 2px 4px rgba(30, 30, 30, 0.5);
	cursor: pointer;
}

#hologalleryLoadHelper * {
	transition: all 0s ease 0s;
}

#hologalleryLoadHelper:hover p {
	color: var(--4dv-secondary);
}

#hologalleryLoadHelper p {
	/*    text-shadow: -1px 1px 2px rgba(0,0,0,1);*/
	color: #fff;
	font-size: .5em;
	margin: 0;
	padding: 0;
}

#hologalleryLoadHelper span {
	margin: 0;
	padding: 0;
}

#hologalleryMenu {
	position: absolute;
	top: 96px;
	right: 0px;
	background: transparent;
	box-sizing: border-box;
	padding: 0px 22px;
	height: 100%;
	max-height: calc(100% - 205px);
	width: 320px;
	overflow: hidden;
}

#hologalleryMenu-toggler {
	position: relative;
	float: right;
	margin: 0px 0px 0px 0px;
	box-sizing: border-box;
	width: 36px;
	height: 36px;
	border-radius: 18px;
	background: transparent;
	outline: 0;
	border: 3px solid rgba(234, 58, 135, 1.0);
	transition: 250ms ease;
	transition-delay: 0ms;
}

#hologalleryMenu-toggler:hover {
	border: 3px solid #f96aa9;
}

#hologalleryMenu-toggler:hover .hologalleryMenu-togglerBar {
	background: #f96aa9;
}

.navbar-toggler:focus {
	box-shadow: 0 0 0 0rem !important;
}

.hologalleryMenu-togglerBar {
	position: absolute;
	top: 50%;
	left: 50%;
	padding: 0;
	margin: 0;
	background-color: rgba(234, 58, 135, 1.0);
	;
	height: 2px;
	width: 16px;
	margin-left: -8px;
	margin-top: -1px;
	transform-origin: center center;
	transform-style: flat;
	border-radius: 8px;
	border: 0px solid transparent;
}

.hologalleryMenu-togglerBar:last-child {
	transform: rotateZ(90deg);
}

#hologalleryMenu-container {
	display: flex;
	position: absolute;
	visibility: hidden;
	top: 0px;
	height: 0%;
	flex-direction: column;
	justify-content: flex-start;
	list-style-type: none;
	background-color: rgba(0, 0, 0, 0.15);
	padding: 0px 8px 0px 14px;
	margin: 64px 0px;
	max-height: calc(100% - 64px);
	overflow-y: scroll;
	overflow-x: hidden;
}

.hologalleryMenu-itemWrapper {
	padding: 0;
	margin: 0px 0px 16px 0px;
	transition-property: opacity;
}

.hologalleryMenu-itemWrapper:last-of-type {
	margin: 0px;
}

.hologalleryMenu-item {
	padding: 0;
	margin: 0;
}

.hologalleryMenu-itemThumbnail {
	max-width: 100%;
	height: 128px;
	background-color: aqua;
	background-size: cover;
	border-top-left-radius: 3px;
	border-top-right-radius: 3px;
	cursor: pointer;
}

.hologalleryMenu-itemMeta {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	color: var(--4dv-white);
	padding: 4px 8px;
	background-color: rgba(26, 30, 47, 1.0);
	border-top: 2px solid rgba(82, 92, 135, 1);
	border-bottom-left-radius: 3px;
	border-bottom-right-radius: 3px;
}

.hologalleryMenu-itemMeta>p {
	font-size: 15px;
	margin: 0;
	opacity: 0.75;
}

.hologalleryMenu-itemMeta>p:first-child {
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	max-width: 128px;
}

.hologalleryMenu-itemMeta>p:last-child {
	text-align: right;
}

.hologalleryMenu-itemMeta>div.hologalleryItem-downloadIcon {
	opacity: 1;
	width: 20px;
	height: 20px;
	display: inline-block;
	background-color: red;
}

#hologalleryMenu ::-webkit-scrollbar {
	width: 6px;
}


.hologalleryBtnSmall {
	width: 30px;
	height: 30px;
	box-sizing: border-box;
	display: inline-block;
	/* float: left; */
	margin: 0px 0px 0px 8px;
	background-color: transparent;
	border: 0px solid transparent;
	outline: 0px solid transparent;
	color: var(--4dv-white);
	background-size: contain;
	background-repeat: no-repeat;
}

/* .hologalleryBtnSmall.hidden {
	visibility: ;
} */

#hologalleryMenu #hologalleryMenu-playback {
	position: sticky;
	position: -webkit-sticky;
	top: 0;
	background-color: rgba(26, 30, 47, 1.0);
	padding: 8px 0px;
	z-index: 10;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

#hologalleryMenu-sequenceRate {
	color: var(--4dv-white);
	font-size: 13px;
	vertical-align: middle;
	display: inline-block;
	/* float: right; */
	margin: 4px 8px;
}

#sizeRate {
	color: var(--4dv-white);
	display: inline-block;
}

/* HOLOGALLERY Open Menu */
#hologalleryMenu.opened #hologalleryMenu-toggler .hologalleryMenu-togglerBar {
	transform: rotateZ(45deg);
}

#hologalleryMenu.opened #hologalleryMenu-toggler {
	transform: rotateZ(-45deg);
}

#hologalleryMenu.opened #hologalleryMenu-container {
	visibility: visible;
	height: 100%;
}

#hologalleryMenu:not(.opened) .hologalleryMenu-itemWrapper {
	transition-duration: 0ms;
	transition-delay: 0ms;
	opacity: 0;
}

#hologalleryMenu.opened .hologalleryMenu-itemWrapper:not(#hologalleryMenu-playback) {
	transition-duration: 500ms;
	transition-timing-function: ease;
	opacity: 0.9;
	filter: brightness(95%)
}

#hologalleryMenu.opened .hologalleryMenu-itemWrapper:not(#hologalleryMenu-playback):hover {
	transition-duration: 0ms !important;
	transition-timing-function: ease;
	opacity: 1;
	filter: brightness(125%);
}


/* Track */
#hologalleryMenu ::-webkit-scrollbar-track {
	width: 16px;
	background: rgba(26, 30, 47, 1.0);
	border-radius: 16px;
	box-shadow: inset 0px 0px 2px 1px rgba(53, 60, 88, 1);
}

/* Handle */
#hologalleryMenu ::-webkit-scrollbar-thumb {
	background: rgba(234, 58, 135, 0.75);
	border-radius: 16px;
}

#hologalleryControllers {
	width: 100%;
	background-color: transparent;
	height: 80px;

}

#hologalleryControllers #hologalleryControllersWrapper {
	width: 100%;
	background-color: var(--4dv-light);
}

#hologalleryControllers #hologalleryControllersWrapper.pinned {
	top: auto;
	bottom: 44px;
}

#hologalleryControllers:hover #hologalleryControllersWrapper {
	bottom: 44px;
}

#hologalleryControllers #hologalleryControllersWrapper>ul {
	margin: 0px;
}

#hologalleryControllers .hologalleryBtn {
	display: inline-block;
	vertical-align: text-bottom;
	color: var(--4dv-white);
	margin: 0px 8px;
	padding: 3px 0px;
}

#hologalleryControllers .hologalleryBtn .btn {
	color: transparent;
}

#hologalleryControllers .hologalleryBtn .btn-img {
	min-height: 38px;
	min-width: 38px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

p.hologalleryBtn-label {
	display: inline;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	color: var(--4dv-primary);
	vertical-align: middle;
	padding-left: 16px;
	padding-right: 8px;
}

/* Button Play/Pause */
.hologalleryBtn-playPauseBtn:not(.initPlayBtn) {
	background-image: url(../img/icon/playback/play.png);
}

.hologalleryBtn-playPauseBtn:not(.initPlayBtn):hover {
	background-image: url(../img/icon/playback/playHovered.png);
}

.hologalleryBtn-playPauseBtn:not(.initPlayBtn).playing {
	background-image: url(../img/icon/playback/pause.png);
}

.hologalleryBtn-playPauseBtn:not(.initPlayBtn).playing:hover {
	background-image: url(../img/icon/playback/pauseHovered.png);
}

/* Button Mute/Unmute */
.hologalleryBtn-audioOnOffBtn {
	background-image: url(../img/icon/playback/audio.png);
	opacity: 1;
}

.hologalleryBtn-audioOnOffBtn:hover {
	background-image: url(../img/icon/playback/audioHovered.png);
}

.hologalleryBtn-audioOnOffBtn.inactive {
	opacity: 0.3;
}

.hologalleryBtn-audioOnOffBtn.inactive:hover {
	opacity: 1;
}

/* Camera Rotation/Stop */
.hologalleryBtn-cameraRotationBtn {
	background-image: url(../img/icon/playback/cameraRotation.png);
	opacity: 1;
}

.hologalleryBtn-cameraRotationBtn:hover {
	background-image: url(../img/icon/playback/cameraRotationHovered.png);
}

.hologalleryBtn-cameraRotationBtn.inactive {
	opacity: 0.3;
}

.hologalleryBtn-cameraRotationBtn.inactive:hover {
	opacity: 1;
}

/* Texture On/Off */
.hologalleryBtn-textureBtn:not(.hologalleryBtn-toggler) {
	background-image: url(../img/icon/playback/texture.png);
	opacity: 0.3;
}

.hologalleryBtn-textureBtn:not(.hologalleryBtn-toggler):hover {
	opacity: 1;
	background-image: url(../img/icon/playback/textureHovered.png);
}

.hologalleryBtn-textureBtn:not(.hologalleryBtn-toggler).active {
	opacity: 1;
}

/* Relight On/Off */
.hologalleryBtn-relightBtn:not(.hologalleryBtn-toggler) {
	background-image: url(../img/icon/playback/relight.png);
	opacity: 0.3;
}

.hologalleryBtn-relightBtn:not(.hologalleryBtn-toggler):hover {
	opacity: 1;
	background-image: url(../img/icon/playback/relightHovered.png);
}

.hologalleryBtn-relightBtn:not(.hologalleryBtn-toggler).active {
	opacity: 1;
}

/* Stats On/Off */
.hologalleryBtn-statsBtn:not(.hologalleryBtn-toggler) {
	background-image: url(../img/icon/playback/info.png);
	opacity: 0.3;
}

.hologalleryBtn-statsBtn:not(.hologalleryBtn-toggler):hover {
	opacity: 1;
	background-image: url(../img/icon/playback/infoHovered.png);
}

.hologalleryBtn-statsBtn:not(.hologalleryBtn-toggler).active {
	opacity: 1;
}

/* Button Pin/Unpin */
.hologalleryBtn-pinBtn {
	background-image: url(../img/icon/playback/pin.png);
	opacity: 1;
}

.hologalleryBtn-pinBtn:hover {
	background-image: url(../img/icon/playback/pinHovered.png);
}

.hologalleryBtn-pinBtn.pinned {
	background-image: url(../img/icon/playback/pinActive.png);
}

.hologalleryBtn-pinBtn.pinned:hover {
	background-image: url(../img/icon/playback/pinActiveHovered.png);
}

.hologalleryBtn-togglerBar {
	display: inline-block;
	position: relative;
	width: 40px;
	height: 2px;
	margin: 0;
	padding: 0;
	background-color: #fff;
	vertical-align: middle;
}

.hologalleryBtn-togglerThumb {
	display: block;
	position: absolute;
	top: -5px;
	left: 19px;
	width: 13px;
	height: 13px;
	margin: 0px 4px;
	padding: 0;
	background-color: var(--4dv-light);
	border-radius: 3px;
	border: 2px solid #fff;
}

.hologalleryBtn-toggler.active .hologalleryBtn-togglerThumb {
	left: 0px;
	background-color: var(--4dv-secondary);
}





/***********
* ARTICLES *
***********/
.articles-video {
	width: 100%;
	min-height: 256px;
	height: 100vh;
	max-height: 480px;
	margin-bottom: 48px;
	background-color: #000;
}

#articles-more-btn {
	margin: 64px auto 16px auto;
	width: 256px;
}


/*************
* DEVELOPPER *
*************/
.floatbox {
	margin: auto;
	margin-top: 90px;
	margin-bottom: 90px;
	padding: 32px 40px !important;
	color: var(--4dv-white);
	border-radius: 12px;
	box-shadow: 0px 2px 12px 2px rgba(0, 0, 0, 0.5);
}

.floatbox.bg-lblue {
	background-color: var(--4dv-light);
}


/*************
* RESPONSIVE *
*************/
/******************** 
	* BOOTSTRAP 5.0 XXL *
	********************/


.homepage-description {
	margin: 0 auto;
	text-align: left;
}

@media (min-width: 960px) {

	.homepage-description {
		max-width: 70vw;
	}

	.homepage-description .text-dblue,
	.homepage-description .text-lgrey {
		text-align: center;
	}

}

/******************* 
	* BOOTSTRAP 5.0 XL *
	*******************/
@media (min-width: 1200px) and (max-width: 1399px) {

	/* HOMEPAGE XL */

	.btn.btn-green,
	.btn.btn-pink,
	.btn.btn-white {
		padding: 10px 10px;
		margin: 4px;
	}

	p.features-intro {
		font-size: 18px;
		padding: 0px 10px 6px 10px;
		margin-bottom: 0px;
	}

	ul.features-list {
		font-size: 20px;
		line-height: 32px;
		margin: 4px 10px 10px 10px;
	}

	ul.features-list li span {
		font-size: 18px;
	}

	.flip-card-backlogo {
		margin: 10px auto;
	}

	li.bullet-cube.align-top {
		background-position: left top 3px;
	}

	li.bullet-plus.align-top {
		background-position: left top 3px;
	}

	.backgrounds-overlay-text>ul li {
		font-size: 24px;
	}
}

/******************* 
	* BOOTSTRAP 5.0 LG *
	*******************/
@media (min-width: 992px) and (max-width: 1199px) {

	/* HOMEPAGE XL */

	.btn.btn-green,
	.btn.btn-pink,
	.btn.btn-white {
		padding: 10px 10px;
		margin: 4px;
	}

	p.features-intro {
		font-size: 18px;
		padding: 0px 10px 6px 10px;
		margin-bottom: 0px;
	}

	ul.features-list {
		font-size: 20px;
		line-height: 32px;
		margin: 4px 10px 10px 10px;
	}

	ul.features-list li span {
		font-size: 18px;
	}

	.flip-card-backlogo {
		margin: 10px auto;
	}

	li.bullet-cube.align-top {
		background-position: left top 3px;
	}

	li.bullet-plus.align-top {
		background-position: left top 3px;
	}

	.backgrounds-overlay-text>ul li {
		font-size: 24px;
	}

	.navbar-dark .navbar-collapse .navbar-nav .nav-link {
		font-size: 20px;
	}

	.studios-wrapper .studios-carousel {
		width: 960px !important;
	}
}

/* SIZE UP-TO LG */
@media (max-width: 1199px) {

	.halfpage .page-title,
	.smallpage .page-title {
		font-size: 4em !important;
		margin-left: 0px !important;
		bottom: -8px !important;
	}
}

/* SIZE FROM LG TO MORE */
@media (min-width: 992px) {
	.navbar-dark .navbar-collapse .navbar-nav .nav-item:not(:first-child) .nav-link:before {
		display: inline-block;
	}
}

/******************* 
	* BOOTSTRAP 5.0 MD *
	*******************/
@media (min-width: 768px) and (max-width: 991px) {
	.studios-wrapper .studios-carousel {
		width: 640px !important;
	}
}

/* SIZE UP-TO MD */
@media (max-width: 991px) {

	.header-logo {
		background-position: center;
	}

	#header-nav-elements {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
	}

	#header-nav-elements .navbar-nav {
		margin-top: 4rem;
		flex-direction: column;
	}

	#header-nav-elements .navbar-nav .nav-item {
		background-color: #000000;
	}

	#header-nav-elements .navbar-nav .nav-item .nav-link {
		padding: 12px 8px;
		text-align: center;
		font-size: 1rem;
	}

	#header-nav-elements .dropdown-menu {
		background-color: var(--4dv-primary-light) !important;
		border: 0px !important;
	}

	#header-nav-elements .dropdown-submenu>.dropdown-item {
		color: var(--4dv-dark) !important;
		padding: 0.3rem 4px !important;
		text-align: center;
	}

	#header-nav-elements .dropdown-submenu a:hover {
		color: var(--4dv-secondary) !important;
	}

	#header-nav-elements .dropdown-submenu.active>.dropdown-item {
		color: var(--4dv-secondary) !important;
	}

	#header-nav-elements .dropdown-submenu .dropdown-menu {
		background-color: var(--4dv-white) !important;
		border: 0px !important;
		margin: 0px !important;
	}

	#header-nav-elements .dropdown-submenu .dropdown-menu>.dropdown-item {
		border-bottom: 1px solid var(--4dv-white);
		color: var(--4dv-dark);
		text-align: center;
		transition: none;
	}

	#header-nav-elements .dropdown-submenu .dropdown-menu>.dropdown-item a {
		width: 100%;
		height: 100%;
		display: block;
		padding: 11px 4px;
	}

	#header-nav-elements .dropdown-toggle::after,
	#header-nav-elements .dropdown-submenu .dropdown-item.dropdown-toggle::after {
		display: none !important;
	}

	.navbar-dark .navbar-collapse .navbar-nav .nav-item {
		text-align: center;
	}

	.navbar-dark .navbar-collapse .navbar-nav .nav-item:not(:first-child) .nav-link:before {
		display: block;
		text-align: center;
		margin: 8px auto;
	}

	.navbar-dark .nav-pills {
		background-color: var(--4dv-light);
		padding: 32px 0px;
	}

	#process-panel .process-line {
		display: none;
	}

	#footer-left,
	#footer-right {
		margin: 32px auto;
	}

	#footer-links {
		margin: 32px auto 0px auto;
	}

	#hologalleryControllers {
		display: none;
	}

	.hologalleryBtnSmall.hidden {
		visibility: visible;
	}

	.studios-wrapper .studios-carousel {
		width: 320px !important;
	}
}

#volumetric-video-demo {
	width: 100%;
	height: 100%;
	border-radius: 0em;
	/* filter: drop-shadow(0 0 0.75rem #00000070); */
	/* padding: 10vh 7vw 5vh 7vw; */
	padding-top: 80px;
}

#volumetric-video-demo-homepage {
	width: 100%;
	height: 70vh;
	border-radius: 0em;
	background-color: var(--4dv-dark);
	filter: drop-shadow(0 0 0.75rem #00000070);
	margin: 0 auto;
}

@media (min-width:769px) {

	#volumetric-video-demo-homepage {
		/* width: 70vw; */
		border-radius: 1em;
		transform: translate(0, 0);
	}

	#volumetric-video-demo-homepage-container {
		width: 70vw;
		margin: 2rem auto auto auto;
	}

	.trusted-carousels-container {
		width: 70vw;
		margin: auto;
	}

}

/* scroll driven animations */
.switch-bg {
	background-color: var(--4dv-dark);
	transition: background-color 0.3s;
}

.switch-bg.go-white {
	background-color: white;
}

.switch-color {
	color: white;
	transition: color 0.3s;
}

.switch-color.go-dark {
	color: var(--4dv-dark);
}

/* SIZE UP-TO SM */
@media (max-width:720px) {

	#homepage-section-intro .backgrounds-overlay p {
		font-size: 22px;
	}
}

/******************* 
	* BOOTSTRAP 5.0 XS *
	*******************/
/* SIZE UP-TO XS */
@media (max-width: 575px) {

	p {
		font-size: 20px;
	}

	/* HOMEPAGE XS */
	.btn.btn-green,
	.btn.btn-pink,
	.btn.btn-white {
		padding: 8px 8px;
		margin: 4px;
	}

	p.features-intro {
		font-size: 14px;
		padding: 0px 10px 6px 10px;
		margin-bottom: 0px;
	}

	ul.features-list {
		font-size: 14px;
		line-height: 1.75rem;
		margin: 2px 10px 10px 10px;
	}

	ul.features-list li span {
		font-size: 12px;
	}

	.flip-card-backlogo {
		margin: 10px auto;
	}

	li.bullet-cube.align-top {
		background-position: left top 3px;
	}

	li.bullet-plus.align-top {
		background-position: left top 3px;
	}

	.backgrounds-overlay-text>ul li {
		font-size: 24px;
	}

	/* PRODUCT - HOLOSYS */
	h1.holosys-title {
		font-size: calc(1.25rem + 15vw);
	}

	#homepage-section-intro .backgrounds-overlay p {
		font-size: 20px;
	}

	.fullpage-floating-panel {
		border-radius: 0px;
		margin: 75% auto 0% auto;
	}

	#product-panel.fullpage {
		height: auto;
	}

	.carousel-item {
		margin-right: 0;
	}

	.halfpage .page-title,
	.smallpage .page-title {
		font-size: 3em !important;
		margin-left: 0px !important;
	}

	.newsletter {
		display: none;
	}

	#header-nav-button {
		right: 0;
	}

	#hologalleryControllers {
		display: none;
	}

	#hologalleryMenu-playback .hologalleryBtnSmall {
		width: 48px;
		height: 48px;
		margin: auto 8px;
	}

	#hologalleryMenu {
		width: 100%;
	}

	#hologalleryMenu-container {
		position: relative;
		width: 100%;
	}

	.hologalleryMenu-itemThumbnail {
		width: 100%;
		height: 256px;
	}

	#footer-links {
		margin: 16px auto 0px auto;
	}

	.backgrounds-overlay-text>ul li {
		font-size: 24px;
	}

	.btn.btn-green,
	.btn.btn-pink,
	.btn.btn-white {
		font-size: 16px;
	}

	#footer-left,
	#footer-right {
		margin: 16px auto;
		padding: 0px 16px;
		width: 100%;
		text-align: center;
	}

	.footer-sm {
		background-color: #000;
	}

	.footer-sm #footer-right .link-network {
		font-size: 1.5rem;
		margin-right: 36px;
	}

	.footer-sm #footer-right ul {
		height: initial;
	}

	.footer-sm #footer-right ul li {
		font-size: 20px;
		padding: 6px 0px;
		margin-right: 18px;
		width: 100%;
		text-transform: uppercase;
	}

	.footer-sm #footer-right ul li a {
		color: var(--4dv-secondary);
		font-weight: 400;
		letter-spacing: 1px;
	}

	.footer-sm h5 {
		font-size: 36px;
	}

	.footer-sm h6 {
		font-size: 28px;
	}

	.footer-sm #footer-left .address {
		font-size: 16px;
	}

	.footer-sm #footer-left .phone-email {
		font-size: 20px;
		margin: 12px 0px;
	}

}

/***************************
	* LANDSCAPE - BOOTSTRAP XS *
	***************************/
@media screen and (max-height: 575px) and (orientation: landscape) {
	#hologalleryControllers {
		display: none;
	}
}