@charset "UTF-8";
/* CSS Document */
/* latin-ext */
@font-face {
  font-family: 'Libre Baskerville';
  font-style: italic;
  font-weight: 400;
  src: local('noLocal-Libre Baskerville Italic'), local('noLocal-LibreBaskerville-Italic'), url(https://fonts.gstatic.com/s/librebaskerville/v7/kmKhZrc3Hgbbcjq75U4uslyuy4kn0qNcWx8QDO-WyrubOA.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Libre Baskerville';
  font-style: italic;
  font-weight: 400;
  src: local('noLocal-Libre Baskerville Italic'), local('noLocal-LibreBaskerville-Italic'), url(https://fonts.gstatic.com/s/librebaskerville/v7/kmKhZrc3Hgbbcjq75U4uslyuy4kn0qNcWxEQDO-Wyrs.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 400;
  src: local('noLocal-Libre Baskerville'), local('noLocal-LibreBaskerville-Regular'), url(https://fonts.gstatic.com/s/librebaskerville/v7/kmKnZrc3Hgbbcjq75U4uslyuy4kn0qNXaxMaC82U-ro.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 400;
  src: local('noLocal-Libre Baskerville'), local('noLocal-LibreBaskerville-Regular'), url(https://fonts.gstatic.com/s/librebaskerville/v7/kmKnZrc3Hgbbcjq75U4uslyuy4kn0qNZaxMaC82U.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 700;
  src: local('noLocal-Libre Baskerville Bold'), local('noLocal-LibreBaskerville-Bold'), url(https://fonts.gstatic.com/s/librebaskerville/v7/kmKiZrc3Hgbbcjq75U4uslyuy4kn0qviTgY5KcC-wLOjAUw.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 700;
  src: local('noLocal-Libre Baskerville Bold'), local('noLocal-LibreBaskerville-Bold'), url(https://fonts.gstatic.com/s/librebaskerville/v7/kmKiZrc3Hgbbcjq75U4uslyuy4kn0qviTgY3KcC-wLOj.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


body {
	font-family: 'Montserrat';
	font-weight: 400;
	color:#000;
	font-size: 24px;
	background:#FFF;
	line-height: 1.58;
}

body.noScroll {
	overflow:hidden;
}

body.loadingPage {
	overflow:hidden;
	height:auto;
}

body, body * {
	box-sizing: border-box;
	border: none;
	margin: 0;
	padding: 0;
	outline: none;
	color: inherit;
	text-decoration: none;
	
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	
	-webkit-tap-highlight-color: rgba(0,0,0,0);

	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
}

.libre {
	font-family: 'Libre Baskerville';
}

a {
	transition: color 0.3s;
}

div, ul, li, img, a {
	display: block;
}

.pageTitle { display:none; }

.page-content {
	visibility:visible;
	opacity:1;
}

.page-content.newPage {
	position:absolute;
	top:0;
	height:100vh;
	overflow:hidden;
	visibility:hidden;
	width:100%;
}

#cssImagesLoader {
	width:0;
	height:0;
	overflow:hidden;
	visibility:hidden;
	position:fixed;
	left:-100px;
}

.FH {
	height:100vh;
}

.clear {
	clear: both;
}

#firstLoading {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2000;
	background: #FA4E56;
}

#firstLoading svg {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100px;
	height: 100px;
}

#firstLoading svg rect {
	fill:#FFF;
}

.btn {
	font-size: 18px;
	line-height: 48px;
	height: 50px;
	font-weight: 700;
	letter-spacing: 0.52px;
	border: 2px solid #FA4E56;
	border-radius: 25px;
	display: inline-block;
	color: #FA4E56;
	position: relative;
	overflow: hidden;
	white-space: nowrap;
	cursor: pointer;
}

.btn.white {
	color: #FFF;
	border-color: #FFF;
}

.btn.black {
	color: #000;
	border-color: #000;
}


.btn .hover .inner,
.btn .default {
	padding: 0 40px;
}

.btn .hover {
	position: absolute;
	left: 0;
	top: 0;
	background: #FA4E56;
	color: #FFF;
	overflow: hidden;
	width: 0%;
	transition: width 0.3s ease-out;
}

.btn.white .hover {
	color: #FA4E56;
	background: #FFF;
}
.btn.black .hover {
	color: #FFF;
	background: #000;
}

.btn:hover .hover,
.btn.selected .hover{
	width: 100%;
}

.table {
	display:table;
	position:relative;
	z-index:2;
}

.table .cell {
	display:table-cell;
	vertical-align:middle;
}

.w {
	max-width:1278px;
	margin:auto;
	padding: 0 19px;
}

.tar {
	text-align: right;
}

#blend {
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:#25282B;
	display:none;
	z-index:10;
}

section {
	position:relative;
}

section.VM {
	margin: 100px 0;
}

#loadingBlend {
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	width:0%;
	background:#1c1d1f;
	z-index:40;
}

.innerWrapper {
	position: relative;
	overflow: hidden;
}

.innerWrapper.workIND {
	overflow: initial;
}

.innerWrapper.dark {
	background: #202020;
}

.tac {
	text-align: center;
}

.freeText {
	font-size: 18px;
	line-height: 1.3;
}

.freeText p,
.freeText ul,
.freeText h2,
.freeText h3 {
	margin: 35px 0 0 0;
}

.freeText > p:first-child,
.freeText > ul:first-child {
	margin-top: 0!important;
}

.freeText ul,
.freeText ol {
	padding-left: 40px;
}

.freeText ul li,
.freeText ol li {
	position: relative;
}

.freeText ul li:before,
.freeText ol li:before{
	content: " ";
	position: absolute;
	left: -40px;
	width: 30px;
	height: 1px;
	background: #000;
	margin-top: 1.37em;
}

.freeText h1:not(.textTitle),
.freeText h2,
.freeText h3,
.freeText h4,
.freeText h5 {
	color: #000000;
	font-family: 'Libre Baskerville';
	letter-spacing: 0.78px;
}

.freeText h1 {
	font-size: 28px;
}
.freeText h2 {
	font-size: 25px;
}

.freeText h3 {
	font-size: 23px;
}

.freeText h4 {
	font-size: 21px;
}

.freeText h5 {
	font-size: 18px;
}

.freeText a {
	display: inline;
	transition: color 0.3s;
	text-decoration: underline;
}

.freeText a:hover {
	color: #FA4E56;
}

/* ANIMATION */

.splitInRows .row {
	overflow: hidden;
	padding-bottom: 0.2em;
	margin-bottom: -0.2em;
}

.splitInRows .word {
	white-space: nowrap;
	display: inline-block;
}

.splitInRows .row .word {
	transform: translateY(120%);
	display: inline-block;
}


/* FORM THANK YOU PAGE */

.form-thankyou {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 50;
	background: rgba(255,255,255,0.5);
	display: none;
	opacity: 0;
}
/*
body.canBackdrop .form-thankyou {
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

body.canBackdrop .blurred {
	filter: none;
}
*/
.form-thankyou table {
	width: 100%;
	height: 100%;
}

.form-thankyou p {
	font-size: 46px;
	line-height: 1.17;
	letter-spacing: 1.1px;
	font-weight: 700;
}

.form-thankyou p strong {
	font-weight: 700;
	color: #FA4E56;
}


.form-thankyou .btn {
	margin-top: 50px;
}

*.blurred {
	filter: blur(5px);
}

.wpcf7-mail-sent-ok {
	display: none!important;
}

/* COOKIE BANNER */

#cookieBanner {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 50;
	padding: 100px 0;
	background: rgba(255,255,255,0.95);
	line-height: 0;
	display: none;
	color: #000;
}
/*
body.canBackdrop #cookieBanner {
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	background: rgba(255,255,255,0.2);
}
*/

#cookieBanner .text {
	padding: 25px 0 45px;
	font-size: 14px;
	line-height: 1.57;
	letter-spacing: 1.17px;
}

#cookieBanner h1 {
	font-size: 28px;
	line-height: 1;
	letter-spacing: 2.33px;
	font-weight: 700;
}


/* VIDEO PLAYER */

.vjs-poster:before {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.5);
}

.video-js .vjs-big-play-button {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	border:none;
	background: url(../images/play.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 33px auto;
	background-color: transparent;
	opacity: 0.8;
}
.video-js:hover .vjs-big-play-button,
.video-js .vjs-big-play-button:focus {
	border:none;
	opacity: 1;
	background-color: transparent;
}

.video-js .vjs-big-play-button .vjs-icon-placeholder {
	display: none;
}

/* PAGE COLORSCHEME */

body.dark {
	background: #202020;
	color: #FFF;
}

body.white {
	background: #FFF;
	color: #000;
}

/* ANIMATIONS & PARALLAX */

*[data-animation-style=wPerc100] {
	width: 0%;
}

*[data-animation-style=opacity] {
	opacity: 0;
}

*[data-animation-style=opacityBottomToTop] {
	opacity: 0;
}

.splitInRows {
	visibility: hidden;
}
.splitInRows.parsed {
	visibility: visible;
}

*[data-animation-style=opacityY] {
	opacity: 0;
	transform: translateY(30px);
}

/* HEADER Toggler */

section.header {
	position: fixed;
	top: 35px;
	left: 0;
	right: 0;
	z-index: 50;
}

section.header .togglerContainer {
	float: right;
	position: relative;
}

section.header .togglerContainer .menuToggler {
	position: absolute;
	right: 0;
	top: 0;
	width: 30px;
	height: 26px;
	cursor: pointer;
	background: transparent;
}

body.dark section.header .togglerContainer .menuToggler div {
	background: #FFF;
}

section.header.dark .togglerContainer .menuToggler div {
	background: #FFF;
}

section.header .togglerContainer .menuToggler div {
	position: absolute;
	left: 0;
	right: 0;
	height: 3px;
	background: #000;
	opacity: 0;
	transition: color 0.3s;
}

section.header .togglerContainer .menuToggler div.visible {
	opacity: 1;
	transition: all 0.1s;
}

section.header .togglerContainer .menuToggler:hover div {
	background: #FA4E56!important;
}

section.header .togglerContainer .menuToggler div:nth-child(1) {
	top: 0;
}

section.header .togglerContainer .menuToggler div:nth-child(2) {
	top: 11px;
}

section.header .togglerContainer .menuToggler div:nth-child(3) {
	top: 22px;
}

body.menuOpened section.header .togglerContainer .menuToggler div:nth-child(1) {
	top: 11px;
	transform: rotate(45deg);
	background: #FFF!important;
}

body.menuOpened section.header .togglerContainer .menuToggler div:nth-child(2) {
	transform: translateX(50%);
	opacity: 0;
	background: #FFF!important;
}

body.menuOpened section.header .togglerContainer .menuToggler div:nth-child(3) {
	top: 11px;
	transform: rotate(-45deg);
	background: #FFF!important;
}

/* HEADER logo */

section.headerLogo {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 3;
	display: none;
	pointer-events: none;
	padding: 25px 0;
}

body.logoOnTop section.headerLogo {
	display: block;
}

section.headerLogo .logo {
	width: 40px;
	height: 40px;
	position: relative;
	pointer-events: auto;
	opacity: 0;
}

section.headerLogo .blend {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #FFF;
	opacity: 0;
	z-index: 1;
	transition: all 0.3s;
}

section.headerLogo.dark .blend,
body.dark section.headerLogo .blend {
	background: #202020;
}

section.headerLogo.notOnTop .blend {
	opacity: 1;
}

section.headerLogo .w {
	position: relative;
	z-index: 2;
}

section.headerLogo.full .logo {
	height:40px;
	width: 265px;
}

section.headerLogo.full .logo .red {
	background-image: url(../images/logo-superhumans-black.svg);
}

section.headerLogo .logo .white,
section.headerLogo .logo .red {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-size: contain;
	background-position: left center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.3s;
}

section.headerLogo .logo .white img,
section.headerLogo .logo .red img {
	width: 1px;
	visibility: hidden;
}

section.headerLogo .logo .white {
	background-image: url(../images/logo-s-white.svg);
}

body.dark section.headerLogo .logo .white,
body.dark section.headerLogo.dark .logo .white,
body.white section.headerLogo.dark .logo .white {
	opacity: 1;
}

body.dark section.headerLogo .logo .red,
body.dark section.headerLogo.dark .logo .red,
body.white section.headerLogo.dark .logo .red {
	opacity: 0;
}

body.white section.headerLogo .logo .white {
	opacity: 0;
}
body.white section.headerLogo .logo .red {
	opacity: 1;
}

section.headerLogo .logo .red {
	background-image: url(../images/logo-s.svg);
}

/* FOOTER */

#footer {
	margin-top: 70px;
	padding-top: 70px;
	padding-bottom: 70px;
	background: #fafafa;
	color: #000000;
}

#footer.noTopMargin {
	margin-top: 0!important;
}

#footer .logo.mobile {
	display: none;
}

#footer .innerW {
	position: relative;
}

#footer .right {
	float: right;
	text-align: right;
}

#footer .right ul {
	font-size: 0;
}

#footer .right ul li.col {
	display: inline-block;
	font-size: 18px;
	line-height: 1.23;
	font-weight: 700;
	text-align: right;
	float: none;
	white-space: nowrap;
}

#footer .right ul li.col a:hover {
	color: #FA4E56;
}

#footer .right .disclaimer {
	margin-top: 30px;
	font-size: 14px;
	line-height: 1.23;
}

#footer .right .disclaimer a {
	display: inline;
}

#footer .left {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
}

#footer .left .wrapper {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

#footer .left .wrapper .grid {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
}

#footer .logo {
	position: absolute;
	top: 0;
	bottom: 0;
	background: url(../images/logo-s.svg);
	background-size: contain;
	background-position: left top;
	background-repeat: no-repeat;
}

#footer .left .po {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.23;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
}

#footer .left .po div {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

#footer .left .disclaimer {
	display: none;
}

/* TOP CTA */

section.moreCTA.home {
	margin: 0;
	position: fixed;
	bottom: 0;
	right: 0;
	left: 0;
}

section.topCTA {
	margin: 100px 0;
}

section.moreCTA {
	position: relative;
	z-index: 2;
}



section.topCTA .topContainer,
section.moreCTA .moreContainer {
	float: right;
	position: relative;
	height: 1px;
}

section.topCTA .topContainer {
	height: 85px;
}

section.topCTA .topContainer .top,
section.moreCTA .moreContainer .more {
	font-size: 14px;
	line-height: 1;
	white-space: nowrap;
	position: absolute;
	bottom: 0;
	right: 0;
	transform-origin: bottom right;
	transform:rotate(90deg) translateY(100%);
	cursor: pointer;
	transition: color 0.3s;
}

section.moreCTA.disabled .moreContainer .more {
	pointer-events: none;
}

section.topCTA .topContainer .top:hover,
section.moreCTA .moreContainer .more:hover {
	color: #FA4E56!important;
}


section.topCTA .topContainer .top:before,
section.moreCTA .moreContainer .more:after {
	content: " ";
	display: inline-block;
	vertical-align: bottom;
	background: #FFF;
	height: 1px;
	width: 50px;
	margin-right: 10px;
	transition: background 0.3s;
}

body.white section.topCTA .topContainer .top:before {
	background: #000;
}

section.moreCTA .moreContainer .more:after {
	margin-right: 0;
	margin-left: 10px;
}

section.topCTA .topContainer .top:hover:before,
section.moreCTA .moreContainer .more:hover:after {
	background: #FA4E56!important;
}

section.moreCTA .moreContainer .more:after {
	background: #FFF!important;
}

section.topCTA.mag .topContainer .top:hover:before,
section.moreCTA.mag .moreContainer .more:hover:after {
	background: #AAC5C2!important;
}

section.topCTA.mag .topContainer .top:hover,
section.moreCTA.mag .moreContainer .more:hover {
	color: #AAC5C2!important;
}

section.moreCTA.mag .moreContainer .more {
	color: #FFF;
}


/* MENU */

menu {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #FA4E56;
	z-index: 40;
	color: #FFF;
	transform: translateX(-100%);
	overflow: auto;
}

menu .contents .navContainer {
	padding-top: 150px;
}

menu .contents .navContainer .logo img {
	width: 70px;
	height: 70px;
	display: inline-block;
	vertical-align: bottom;
}

menu .navContainer ul li:last-child {
	margin-bottom: 0!important;
}

menu .navContainer ul li a {
	font-size: 50px;
	font-weight: 700;
	letter-spacing: 1.19px;
	line-height: 1;
	display: inline-block;
}

menu .navContainer a .line {
	display: inline-block;
	vertical-align: bottom;
	height: 4px;
	width: 0px;
	transform: translateY(-0.14em) translateX(-10px);
	position: relative;
}

menu .navContainer a .line:after {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 10px;
	right: 0;
	bottom: 0;
	background: #FFF;
}

menu .w .innerW {
	height: 100vh;
	position: relative;
}

menu .w .socialContainer {
}

menu .w .socialContainer ul {
	text-align: right;
	font-size: 0;
	letter-spacing: 0;
	line-height: 1;
}

menu .w .socialContainer ul li {
	margin: 35px 0;
	opacity: 0;
}

menu .w .socialContainer ul li:first-child {
	margin-top: 0;
}

menu .w .socialContainer ul li:last-child {
	margin-bottom: 0;
}

menu .w .socialContainer ul li a {
	display: inline-block;
	width: 50px;
	height: 50px;
	border-radius: 100%;
	background:#202020;
	font-size: 28px;
	color: #FA4E56;
	position: relative;
	opacity: 0.3;
	transition: opacity 0.3s;
}

menu .w .socialContainer ul li a:hover {
	opacity: 1;
}

menu .w .socialContainer ul li a i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

/* INNER COMMON PAGE */

.innerWrapper.innerCommonPage {
	padding-top: 150px;
}

.innerWrapper.innerCommonPage .title {
	padding-bottom: 100px;
}

.innerWrapper.innerCommonPage .indText {
	padding-bottom: 140px;
}

/* HOME */

section.moreCTA.home .moreContainer .more {
	color: #52545D;
}
section.moreCTA.home .moreContainer .more:after {
	background: #52545D!important;
}
section.moreCTA.home:hover .moreContainer .more:after {
	background: #FA4E56!important;
}

section.homeIntro {
	padding: 90px 0;
}

section.homeIntro .contents {
	padding: 8vh 0;
}

section.homeIntro .contents .w .innerW .weAre {
	font-size: 72px;
	font-weight: 900;
	-webkit-transform: translateZ(0);
   -moz-transform: translateZ(0);
   -ms-transform: translateZ(0);
   -o-transform: translateZ(0);
   transform: translateZ(0);
}

section.homeIntro .contents .w .innerW p {
	font-size: 24px;
	line-height: 40px;
	letter-spacing: 0.92px;
}

section.homeIntro .contents .w .innerW p .inner,
section.homeIntro .contents .w .innerW .weAre .inner {
	display: block;
	opacity: 0;
}

section.homeIntro .contents .w .innerW .weAre #strings {
	display: none;
}

section.homeIntro .contents .w .innerW .weAre .typed {
	display: inline-block;
	color: #FA4E56;
}

section.homeGrid .tar {
	text-align: right;
}

section.homeGrid .item.big {
	clear: both;
	padding-bottom: 50px;
}

section.homeGrid .item,
section.magazineGrid .item {
	padding-top: 50px;
	opacity: 0;
}

section.homeGrid .item:first-child, section.magazineGrid .item:first-child {
	padding-top: 0;
}

section.homeGrid .item.imageRight .imageWrapper {
	float: right;
}

section.homeGrid .item a,
section.magazineGrid .item a {
	height: auto!important;
}

section.homeGrid .item .imageWrapper,
section.magazineGrid .item .imageWrapper {
	position: relative;
	overflow: hidden;
}

section.homeGrid .item .imageWrapper .image,
section.magazineGrid .item .imageWrapper .image {
	max-height: 400px;
	overflow: hidden;
	height: 1000px;
}

section.homeGrid .item .imageWrapper .image {
	transition: transform 0.3s;
}

section.homeGrid .item a:hover .imageWrapper .image {
	transform: scale(1.1);
}


section.homeGrid .item.magazine .imageWrapper .blend {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	background: #CAE0D2;
	mix-blend-mode: multiply;
	opacity: 0;
}

section.homeGrid .item .imageWrapper .blend {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	background: rgba(0,0,0,0.35);
	opacity: 0;
	transition: opacity 0.3s;
}

section.homeGrid .item .imageWrapper .blend .logo {
	width: 50%;
	height: 70%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background-size: contain;
	background-repeat: no-repeat;
}

section.homeGrid .item .imageWrapper .blend .logo.landscape {
	width: 70%;
}

section.homeGrid .item a:hover .imageWrapper .blend {
	opacity: 1;
}

section.homeGrid .item .imageWrapper .image img,
section.magazineGrid .item .imageWrapper .image img{
	width: 100%;
	height: auto;
	visibility: hidden;
}

section.homeGrid .item .imageWrapper .image.imageMobile {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	max-height: none!important;
	visibility: hidden;
	height: auto!important;
}

section.homeGrid .item .imageWrapper .date {
	display: none;
}

section.homeGrid .item.magazine .imageWrapper .date {
	display: block;
	position: absolute;
	right: 20px;
	top: 30px;
	text-align: center;
	z-index: 1;
	color: #FFF;
}

section.homeGrid .item.magazine.imageRight .imageWrapper .date {
	right: auto;
	left: 20px;
}

section.homeGrid .item.magazine .imageWrapper .date .day {
	display: block;
	font-size: 48.3px;
	line-height: 1;
}

section.homeGrid .item.magazine .imageWrapper .date .month {
	display: block;
	font-size: 23.1px;
	letter-spacing: 0.55px;
	line-height: 1;
}

section.homeGrid .item.magazine .imageWrapper .date hr {
	display: block;
	margin: 14px auto 14px;
	height: 1px;
	background: #FFF;
	border: none;
	max-width: 46px;
}

section.homeGrid .item .caption {
	font-size: 20px;
}

section.homeGrid .item.squared .caption {
	padding-top: 30px;
}

section.homeGrid .item .caption .lineContainer:before {
	content: "\00a0";
	display: block;
}

section.homeGrid .item .caption .lineContainer .line {
	position: relative;
	height: 1px;
	margin-top: -4px;
}

section.homeGrid .item .caption .lineContainer .line span {
	display: block;
	background: #FA4E56;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 0%;
}

section.homeGrid .item.magazine .caption .lineContainer .line span {
	background: #CAE0D2;
}

section.homeGrid .item .caption .postType,
section.homeGrid .item .caption .lineContainer:before {
	font-weight: 700;
	letter-spacing: 0.33px;
	color: #FA4E56;
	line-height: 1.29;
	display: block;
}

section.homeGrid .item .caption .postType {
	margin-bottom: 28px;
	display: none;
}

section.homeGrid .item.magazine .caption .postType {
	color: #CAE0D2;
}

section.homeGrid .item .caption .brand {
	text-transform: uppercase;
	margin-bottom: 5px;
	font-weight: 700;
}

section.homeGrid .item .caption .title {
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0.62px;
	line-height: 1.23;
	margin-bottom: 20px;
	display: none;
}

section.homeGrid .item.magazine .caption .title {
	font-family: 'Libre Baskerville';
	font-size: 28px;
	font-weight: 400;
}

section.homeGrid .item.magazine .caption .brand {
	display: none;
}

section.homeGrid .item .caption .excerpt {
	line-height: 2;
	font-weight: 400;
	transition: color 0.3s;
	font-size: 20px;
}

section.homeGrid .item a:hover .caption .excerpt {
	color: #FA4E56;
}

section.homeGrid .item .caption .arrow,
section.magazineGrid .item .caption .arrow {
	width: 42px;
	height:20px;
	background-image: url(../images/arrow-right-white.svg);
	background-size: contain;
	background-position: left center;
	margin-top: 25px;
	opacity: 0;
	margin-left: -21px;
	transition: all 0.2s ease-out;
}

section.homeGrid .item .caption .arrow,
section.magazineGrid .item .caption .arrow {
	background-image: url(../images/arrow-right-black.svg);
}

section.homeGrid .item a:hover .caption .arrow,
section.magazineGrid .item a:hover .caption .arrow {
	opacity: 1;
	margin-left: 0;
}

section.homeGrid .item .caption.tar .arrow {
	float: right;
	margin-right: 21px;
	margin-left: 0;
}

section.homeGrid .item a:hover .caption.tar .arrow {
	margin-right: 0;
}




section.homeGrid.newLayout .item.big {
	clear: none;
	padding-bottom: 19px;
}

section.homeGrid .item, 
section.magazineGrid .item {
	padding-top: 0;
	padding-bottom: 19px;
}

section.homeGrid.newLayout .item .blend {
	background: rgba(0,0,0,0.65);
	z-index: 2;
}

section.homeGrid.newLayout .item .imageWrapper .image {
	max-height: none;
}

section.homeGrid.newLayout .item a:hover .imageWrapper .image {
	transform: none;
}


section.homeGrid.newLayout .item .imageWrapper .image .mouseoverGallery {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	opacity: 0;
}

section.homeGrid.newLayout .item.hovered .imageWrapper .image .mouseoverGallery {
	opacity: 1;
}

section.homeGrid.newLayout .item .imageWrapper .image .mouseoverGallery .hoverImage {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	visibility: hidden;
}

section.homeGrid.newLayout .item .imageWrapper .image .mouseoverVideo {
	visibility: hidden;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	transition: opacity 0.3s;
}

section.homeGrid.newLayout .item .imageWrapper .image .mouseoverVideo iframe {
	width: 100%;
	height: 100%;
}

section.homeGrid.newLayout .item.hovered .imageWrapper .image .mouseoverVideo {
	visibility: visible;
	opacity: 1;
}


section.homeGrid.newLayout .caption {
	display: none;
	padding: 30px 17.5px 0;
}

section.homeGrid.newLayout .item .blend .contents {
	position: absolute;
	top: 60px;
	left: 60px;
	bottom: 60px;
	right: 60px;
	color: #FFF;
}

section.homeGrid.newLayout .item .blend .contents .top {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

section.homeGrid.newLayout .item .blend .contents .bottom {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

section.homeGrid.newLayout .item .blend .contents .cutter {
	position: relative;
}

section.homeGrid.newLayout .item .blend .contents h2 span {
	display: inline-block;
}

section.homeGrid.newLayout .item .blend .contents h4,
section.homeGrid.newLayout .item .caption h4 {
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.33px;
	line-height: 18px;
	margin-bottom: 5px;
}

section.homeGrid.newLayout .item .blend .contents h2,
section.homeGrid.newLayout .item .caption h2 {
	letter-spacing: 0.95px;
	line-height: 1;
	display: block;
	font-weight: normal;
}

section.homeGrid.newLayout .item .blend .contents .excerpt,
section.homeGrid.newLayout .item .caption .excerpt {
	font-size: 18px;
	line-height: 28px;
	letter-spacing: normal;
}

section.homeGrid.newLayout .item .blend .arrow {
	width: 42px;
	height:20px;
	background-image: url(../images/arrow-right-white.svg);
	background-size: contain;
	background-position: left center;
	margin-top: 25px;
	margin-left: -21px;
	transition: all 0.2s ease-out;
}

section.homeGrid.newLayout .item a:hover .blend .arrow {
	opacity: 1;
	margin-left: 0;
}

@media all and (max-width: 1280px) {
	section.homeGrid.newLayout .item .blend .contents {
		top: 30px;
		left: 30px;
		bottom: 30px;
		right: 30px;
	}
	
	section.homeGrid.newLayout .item .blend .contents .excerpt,
	section.homeGrid.newLayout .item .caption .excerpt {
		font-size: 16px;
		line-height: 22px;
	}
	
	section.homeGrid.newLayout .item .blend .arrow {
		margin-top: 15px;
	}
}

@media all and (max-width: 767px) {
	
	section.homeGrid .item .imageWrapper .image.imageMobile {
		visibility: visible;
	}
}

/* main items grid */

.mainItemsGrid .innerW {
	display: flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: space-between;
	margin: -9.5px;
}

.mainItemsGrid .innerW .item {
	width: calc(100% / 3);
	position: relative;
	opacity: 0;
}

.mainItemsGrid .innerW .item.big {
	width: calc(100% / 3 * 2);
}

.mainItemsGrid .innerW .item.squared {
	padding-bottom: calc(100% / 3);
	overflow: hidden;
	position: relative;
}

.mainItemsGrid .innerW .item a {
	position: absolute;
	top: 9.5px;
	left: 9.5px;
	right: 9.5px;
	bottom: 9.5px;
	overflow: hidden;
}

.mainItemsGrid .innerW .item .frame,
.mainItemsGrid .innerW .item .frame .backgrounds,
.mainItemsGrid .innerW .item .frame .backgrounds .image,
.mainItemsGrid .innerW .item .frame .backgrounds .mouseoverGallery,
.mainItemsGrid .innerW .item .frame .blend {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.mainItemsGrid .innerW .item.big .frame .backgrounds .mouseoverVideo {
	position: absolute;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	padding-bottom: 100%;
}

.mainItemsGrid .innerW .item.squared .frame .backgrounds .mouseoverVideo {
	position: absolute;
	height: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 178%;
}

.mainItemsGrid .innerW .item .frame .backgrounds .mouseoverVideo iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.mainItemsGrid .innerW .item .frame .backgrounds .mouseoverGallery,
.mainItemsGrid .innerW .item .frame .backgrounds .mouseoverVideo {
	opacity: 0;
	transition: opacity 0.3s;
}

.mainItemsGrid .innerW .item.hovered .frame .backgrounds .mouseoverGallery,
.mainItemsGrid .innerW .item.hovered .frame .backgrounds .mouseoverVideo {
	opacity: 1;
}

.mainItemsGrid .innerW .item .frame .backgrounds .image img {
	width: 1px;
	height: auto;
	visibility: hidden;
}

.mainItemsGrid .innerW .item .frame .backgrounds .image {
	opacity: 0;
	transition: opacity 0.5s linear;
}

.mainItemsGrid .innerW .item .frame .image.loaded {
	opacity: 1;
}

.mainItemsGrid .innerW .item .frame .backgrounds .image.mobile {
	visibility: hidden;
}

.mainItemsGrid .caption {
	display: none;
	padding: 30px 17.5px 0;
}

.mainItemsGrid .item .blend {
	background: rgba(0,0,0,0.65);
	z-index: 2;
	opacity: 0;
	transition: opacity 0.3s;
}

.mainItemsGrid .item.hovered .blend {
	opacity: 1;
}

.mainItemsGrid .item .blend .contents {
	position: absolute;
	top: 60px;
	left: 60px;
	bottom: 60px;
	right: 60px;
	color: #FFF;
}

.mainItemsGrid .item .blend .contents .top {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

.mainItemsGrid .item .blend .contents .bottom {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.mainItemsGrid .item .blend .contents .cutter {
	position: relative;
	overflow: hidden;
	padding-bottom: 0.2em;
}

.mainItemsGrid .item .blend .contents h2 span {
	display: inline-block;
}

.mainItemsGrid .item .caption .postType {
	display: none;
}

.mainItemsGrid .item .blend .contents h4,
.mainItemsGrid .item .caption h4 {
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.33px;
	line-height: 18px;
	margin-bottom: 5px;
}

.mainItemsGrid .item .blend .contents h2,
.mainItemsGrid .item .caption h2 {
	letter-spacing: 0.95px;
	line-height: 1;
	display: block;
	font-weight: normal;
}

.mainItemsGrid .item .blend .contents .excerpt,
.mainItemsGrid .item .caption .excerpt {
	font-size: 18px;
	line-height: 28px;
	letter-spacing: normal;
}

.mainItemsGrid .item .blend .arrow {
	width: 42px;
	height:20px;
	background-image: url(../images/arrow-right-white.svg);
	background-size: contain;
	background-position: left center;
	margin-top: 25px;
	margin-left: -21px;
	transition: all 0.2s ease-out;
}

.mainItemsGrid .item a:hover .blend .arrow {
	opacity: 1;
	margin-left: 0;
}

@media all and (max-width: 1280px) {
	section.mainItemsGrid .item .blend .contents {
		top: 30px;
		left: 30px;
		bottom: 30px;
		right: 30px;
	}
	
	section.mainItemsGrid .item .blend .contents .excerpt,
	section.mainItemsGrid .item .caption .excerpt {
		font-size: 16px;
		line-height: 22px;
	}
	
	section.mainItemsGrid .item .blend .arrow {
		margin-top: 15px;
	}
}

@media all and (max-width: 1023px) {
	
	.mainItemsGrid .innerW .item .frame {
		position: relative;
	}
	
	.mainItemsGrid .innerW .item a {
		position: relative;
		top: auto;
		left: auto;
		bottom: auto;
		right: auto;
		padding: 9.5px;
	}
	
	.mainItemsGrid .innerW .item.squared {
		padding-bottom: 0;
	}
	
	.mainItemsGrid .innerW .item.squared .frame {
		padding-bottom: 100%;
	}
	
	.mainItemsGrid .innerW .item.big .frame .backgrounds {
		position: relative;
	}
	
	.mainItemsGrid .innerW .item.big .frame .backgrounds::after {
		display: block;
		content: " ";
		padding-bottom: calc(50% - 9.5px);
	}
	
	.mainItemsGrid .caption {
		display: block;
		padding: 30px 17.5px 0;
	}
	
	.mainItemsGrid .item .caption h4 {
		text-transform: uppercase;
	}
	.mainItemsGrid .item .caption h2 {
		font-size: 28px;
		margin-bottom: 20px;
	}
	
	.mainItemsGrid .item .caption .arrow {
		width: 42px;
		height:20px;
		background-image: url(../images/arrow-right-black.svg);
		background-size: contain;
		background-position: left center;
		margin-top: 25px;
		opacity: 0;
		margin-left: -21px;
		transition: all 0.2s ease-out;
	}

	.mainItemsGrid .item a:hover .caption .arrow {
		opacity: 1;
		margin-left: 0;
	}

	.mainItemsGrid .innerW .item .frame .backgrounds .mouseoverVideo {
		display: none!important;
	}
	
}

@media all and (max-width: 767px) {
	
	.mainItemsGrid .innerW {
		display: block;
		margin: 0;
	}
	
	.mainItemsGrid .innerW .item {
		margin-bottom: 19px;
		width: auto!important;
		padding-bottom: 0!important;
	}
	
	.mainItemsGrid .innerW .item .frame {
		position: relative;
		padding-bottom: 100%;
	}
	
	.mainItemsGrid .innerW .item a {
		position: relative;
		top: auto;
		left: auto;
		bottom: auto;
		right: auto;
		padding: 0;
	}
	
	.mainItemsGrid .innerW .item .frame .backgrounds .image.mobile {
		visibility: visible;
	}
	
	.mainItemsGrid .innerW .item.big .frame .backgrounds {
		position: absolute;
	}
	
	.mainItemsGrid .innerW .item.big .frame .backgrounds::after {
		display: none;
	}
	
}

/* WORKS */

section.bgVideo {
	position: relative;
	overflow: hidden;
	height: 61vh;
	background: #000;
}

section.bgVideo h1 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 72px;
	font-weight: 900;
	width: 90vw;
	text-align: center;
	color: #FFF;
	z-index: 1;
	line-height: 1.1!important;
}

section.bgVideo.blended .showreel:after {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background:rgba(0,0,0,0.3);
	z-index: 1;
}

section.bgVideo.blended .showreel .loading {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	background: #FA4E56;
}

section.bgVideo.blended .showreel .loading svg {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100px;
	height: 100px;
}

section.bgVideo.blended .showreel .loading svg rect {
	fill:#FFF;
}

section.works .heading,
section.magazine .heading,
section.aboutParagraph .heading,
.backToParentSection {
	font-size: 50px;
	letter-spacing: 1.19px;
	line-height: 1;
	font-weight: 700;
	padding-top: 75px;
	padding-bottom: 70px;
}

section.magazine .heading {
	padding: 0;
	font-size: 20px;
	line-height: 1.3;
	letter-spacing: 0.48px;
	color: #FFF;
}

.backToParentSection {
	padding-top: 27px;
	padding-bottom: 27px;
	font-size: 36px;
	letter-spacing: 0.86px;
}

section.works .heading .lineContainer {
	
}

section.works .heading .lineContainer .line,
section.magazine .heading .lineContainer .line,
section.aboutParagraph .heading .lineContainer .line,
section.postInnerNav .heading .lineContainer .line,
.backToParentSection .lineContainer .line {
    height: 3px;
    display: inline-block;
    vertical-align: bottom;
	position: relative;
	width: 100%;
	transform: translateY(-230%);
}

section.magazine .heading .lineContainer .line,
.backToParentSection .lineContainer .line,
section.aboutParagraph .heading .lineContainer .line {
	height: 2px;
	transform: translateY(-250%);
}

section.magazine .heading .lineContainer .line {
	transform: translateY(-380%);
}

section.works .heading .lineContainer .line span,
section.magazine .heading .lineContainer .line span,
.backToParentSection .lineContainer .line span,
section.postInnerNav .heading .lineContainer .line span,
section.aboutParagraph .heading .lineContainer .line span {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width:100%;
	background: #000;
	transition: background 0.3s;
}

section.magazine .heading .lineContainer .line span,
section.aboutParagraph .heading .lineContainer .line span {
	background: #FFF;
}

.backToParentSection a:hover .lineContainer .line span {
	background: #FA4E56;
}

.backToParentSection a .sectionTitle {
	transition: color 0.3s;
}

.backToParentSection a:hover .sectionTitle {
	color: #FA4E56;
}

section.works .items {
	margin-bottom: -19px;
}

section.works .items .clear {
	clear: both;
}

section.works .items .item {
	position: relative;
	margin-bottom: 45px;
}

section.works .items .item a .image,
section.works .items .item a .blend,
section.works .items .item a .blend:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

section.works .items .item a .blend .logo {
	width: 50%;
	height: 70%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background-size: contain;
	backround-repeat: no-repeat;
}

section.works .items .item a .blend .logo.landscape {
	width: 70%;
}

section.works .items .item a {
}

section.works .items .item a .image {
	background-size: cover;
	background-position: center center;
	display: none;
	opacity: 0;
	overflow: hidden;
	transition: opacity 0.5s;
}

section.works .items .item a .image.canShow {
	opacity: 1;
}

section.works .items .item a .image img {
	width: 1px;
	height: auto;
	visibility: hidden;
	pointer-events: none;
}

section.works .items .item.w4 a .image.squared {
	display: block;
}

section.works .items .item:not(.w4) a .image.landscape {
	display: block;
}

section.works .items .item a .blend {
	background:rgba(250,78,86,0.65);
	opacity: 0;
}
/*
section.works .items .item a .blend:before {
	content: " ";
	display: block;
	background-image: linear-gradient(-90deg, rgba(238,238,238,0.00) 45%, #FFFFFF 100%);
	opacity: 0.7;
}
*/
section.works .items .item a .imageContainer {
	position: relative;
	background: #202020;
}

section.works .items .item a .textContainer {
	padding-top: 35px;
	position: relative;
}

section.works .items .item a .textContainer h4 {
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	line-height: 1.29;
}

section.works .items .item a .textContainer p {
	font-size: 18px;
	font-weight: 400;
}

section.works .items .item a .textContainer h2 {
	font-size: 26px;
	font-weight: 700;
	line-height: 1.23;
	letter-spacing: 0.62px;
	display: block;
	padding-right: 55px;
	padding-top: 6px;
}

section.works .items .item a .textContainer .arrow {
	width: 42px;
	height:20px;
	background-image: url(../images/arrow-right-black-bold.svg);
	background-size: contain;
	background-position: left center;
	opacity: 0;
	transform: translateX(-30px);
	position: absolute;
	right: 0;
	top: calc(100% + 5px);
}

/* WORK IND */

section.workHero {
	position: relative;
	min-height: 41vw;
	max-height: 1200px;
	color: #FFF;
	overflow: hidden;
}

section.workHero .backToParentSection .lineContainer .line span {
	background: #FFF;
}
section.workHero .backToParentSection a:hover .lineContainer .line span {
	background: #FA4E56;
}

section.workHero .heroBg {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	transition: opacity 0.3s;
}

section.workHero .heroBg.loaded {
	opacity: 1;
}

section.workHero .heroBg img {
	width: 1px;
	height: auto;
	visibility: hidden;
	pointer-events: none;
}

section.workHero .workClient {
	padding: 30px 0;
	line-height: 1;
	display: none;
}

section.workHero .workClient h2 {
	font-size: 46px;
	font-weight: lighter;
}

section.workHero .workClient h1 {
	font-size: 72px;
	margin-top: 14px;
}

section.workIntro .introTexts {
	padding-top: 120px;
}

section.workIntro .introTexts .client h1 {
	font-weight: 400;
	text-transform: uppercase;
	font-size: 26px;
	line-height: 36px;
	letter-spacing: 0.67px;
}

section.imageAndText .textContainer h2,
section.workIntro .introTexts .text h1.title,
section.indText h1.textTitle {
	font-size: 34px;
	line-height: 1.1;
	letter-spacing: 0.86px;
	font-weight: 700;
}

section.workIntro .introTexts .text h1.title {
	margin-bottom: 35px;
}

section.workIntro .introTexts .text .freeText {
	font-size: 22px;
	line-height: 1.3;
	letter-spacing: 0.38px;
}

section.workIntro .introTexts .text .freeText p {
	margin: 45px 0 0 0;
}

/* IMAGE AND TEXT */

section.imageAndText {
	
}

section.imageAndText .textContainer,
section.imageAndText .imageContainer{
	vertical-align: top;
}

section.imageAndText .textContainer .grid.sticky,
section.imageAndText .imageContainer .image.sticky {
	position: -webkit-sticky;
	position: sticky;
	top: 100px;
}

section.imageAndText tr.mobile {
	display: none;
}

section.imageAndText .imageContainer img {
	width: 100%;
}

section.imageAndText .table .cell {
	vertical-align: middle;
}

section.imageAndText.imageLeft .textContainer {
	/*padding-top: 100px;*/
}

section.imageAndText .textContainer .freeText {
	font-size: 24px;
	line-height: 1.3;
	font-weight: 400;
	letter-spacing: 0.38px;
}

section.imageAndText .textContainer .freeText.topSpaced {
	margin-top: 35px;
}

section.imageAndText .textContainer .freeText p {
	margin: 50px 0;
}

section.imageAndText .textContainer .freeText p:last-child {
	margin-bottom: 0;
}

/*
	Gallery / imagesInBoxes
*/

section.imagesInBoxes {
	overflow: hidden;
}

section.imagesInBoxes .grid {
	position: relative;
}



section.imagesInBoxes.count1 .item img,
section.imagesInBoxes.count2 .item:nth-child(1) img,
section.imagesInBoxes.count3 .item:nth-child(1) img {
	width: 100%;
}

section.imagesInBoxes .item,
section.videoPlayer .wrapper,
*[data-animation-style=imageBlend] {
	overflow: hidden;
	position: relative;
}

section.imagesInBoxes .item img {
	visibility: hidden;
}

*[data-animation-style=imageBlend] .blend {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: solid 100vw #FFF;
}

section.imagesInBoxes.count2 .item:nth-child(2) {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
}

section.imagesInBoxes.count3 .item:nth-child(2) {
	position: absolute;
	right: 0;
	top: 0;
	bottom: calc(50% + 9.5px);
}

section.imagesInBoxes.count3 .item:nth-child(3) {
	position: absolute;
	right: 0;
	top: calc(50% + 9.5px);
	bottom: 0;
}

section.imagesInBoxes.moreThan3 .item img {
	width: 100%;
}
section.imagesInBoxes.moreThan3 .item:nth-child(2) {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
}

section.imagesInBoxes.moreThan3 .grid .grid {
	margin-bottom: 19px;
}

section.imagesInBoxes.moreThan3 .grid .grid:last-child {
	margin-bottom: 0;
}

section.videosInBoxes .grid {
	margin-top: -19px;
}
section.videosInBoxes .grid .item {
	margin-top: 19px;
}



/* GALLERY - SINGLE FRAME */

section.gallerySingleFrame {
	
}

section.gallerySingleFrame .imagesWrapper {
	position: relative;
}

section.gallerySingleFrame .imagesWrapper .canvas {
	overflow: hidden;
	position: relative;
	background: #000;
}

section.gallerySingleFrame .imagesWrapper .item {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-size: cover;
	background-position: center center;
	display: none;
}

section.gallerySingleFrame .imagesWrapper .canvas .item:nth-child(1) {
	display: block;
}

section.gallerySingleFrame .navContainer {
	vertical-align: top;
	text-align: right;
	letter-spacing: 0.67px;
	position: relative;
}

section.gallerySingleFrame .navContainer .nav .current {
	font-size: 28px;
	line-height: 35px;
	color: #FA4E56;
	display: inline-block;
	position: relative;
}

section.gallerySingleFrame .navContainer .nav .current:before {
	content: "0";
	visibility: hidden;
	display: inline;
}

section.gallerySingleFrame .navContainer .nav .current span {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
}

section.gallerySingleFrame .navContainer .nav .current span:first-child {
	opacity: 1;
}

section.gallerySingleFrame .navContainer .nav .total {
	font-size: 16px;
	line-height: 35px;
	color: #52545D;
	display: inline-block;
}

section.gallerySingleFrame .navContainer .arrows {
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
}

section.gallerySingleFrame .navContainer .arrows .arrow.arrowRight {
	text-align: right;
}

section.gallerySingleFrame .navContainer .arrows .arrow.arrowLeft {
	text-align: left;
}

section.gallerySingleFrame .navContainer .arrows .arrow {
	cursor: pointer;
}

section.gallerySingleFrame .navContainer .arrows .arrow svg .path {
	transition: fill 0.3s;
}

section.gallerySingleFrame .navContainer .arrows .arrow:hover svg .path {
	fill: #FA4E56;
}

/* QUOTE */

section.quote {
	
}

section.quote .wrapper {
	position: relative;
}

section.quote .wrapper .item {
	text-align: right;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	display: none;
}

section.quote .wrapper .item:first-child {
	display: block;
}

section.quote .wrapper .item h5 {
	text-align: center;
	font-size: 28px;
	line-height: 1.72;
	font-weight: normal;
	letter-spacing: 0.67px;
	opacity: 0;
}

section.quote .wrapper .item label {
	margin-top: 40px;
	color: #52545D;
	font-size: 22px;
	line-height: 1.23;
	font-style: italic;
	letter-spacing: 0.52px;
	display: inline-block;
	opacity: 0;
}

section.quote .wrapper .item:nth-child(1) h5,
section.quote .wrapper .item:nth-child(1) label {
	opacity: 1;
}

section.quote .navContainer {
	text-align: center;
}

section.quote .navContainer .bull {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 100%;
	background: #F0F0F0;
	margin: 0 9.5px;
	cursor: pointer;
	transition: background 0.3s;
}

section.quote .navContainer .bull.current {
	background: #FA4E56;
}

section.image {
	overflow: hidden;
}

section.image.d_mantainAR {
	background-image: none!important;
}

section.image.d_mantainAR img {
	width: 100%;
	height: auto;
}

section.image.d_100vh {
	height: 100vh;
}

section.image.d_100vh img {
	display: none;
}

/* POST INNER NAV */

section.postInnerNav {
	font-size: 16px;
	line-height: 1;
}

section.postInnerNav .mobile {
	display: none;
}

section.postInnerNav .col:nth-child(2) {
	text-align: left;
}

section.postInnerNav .col:nth-child(3) {
	text-align: right;
}

section.postInnerNav a {
	display: inline-block;
}

section.postInnerNav a .title {
	display: block;
	margin-bottom: 25px;
}

section.postInnerNav .arrow {
	display: inline-block;
}

section.postInnerNav a .arrow .path {
	fill: #000;
	transition: all 0.3s;
}

section.postInnerNav a:hover .arrow .path {
	fill: #FA4E56;
}

/* MAGAZINE */

section.magazine {
	height: 100vh;
	position: relative;
}

section.magazine .wrapper {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 90px;
	overflow: hidden;
}

section.magazine .bg {
	width: 100%;
	height: 100%;
	background-size: cover;
}

section.magazine .bg:after {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.2);
}

section.magazine .bread {
	position: absolute;
	top: 150px;
	left: 0;
	right: 0;
}

section.magazine .bottom {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

section.magazine .bottom .col {
	background: #FFF;
	padding: 70px 70px 64px 70px;
}

section.magazine .bottom .col .catDate {
	display: block;
	color: #AAC5C2;
	font-size: 20px;
	line-height: 1;
	letter-spacing: 0.3px;
	margin-bottom: 25px;
}

section.magazine .bottom .col .catDate span {
	font-size: 14px;
}

section.magazine .bottom .col h2 {
	font-size: 32px;
	line-height: 1.19;
	letter-spacing: 1px;
	margin-bottom: 20px;
}

section.magazine .bottom .col .excerpt {
	color: #777777;
	font-size: 18px;
	line-height: 1.33;
	margin-bottom: 30px;
}

section.magazine .bottom .col .more {
	display: inline-block;
	font-size: 14px;
	line-height: 19px;
	letter-spacing: 0.33px;
}

section.magazine .bottom .col .more .arrow {
	display: inline-block;
	vertical-align: top;
	margin-left: 11px;
	opacity: 0;
	transition: all 0.3s;
	transform: translateX(-10px);
}

section.magazine .bottom .col:hover .more .arrow {
	opacity: 1;
	transform: translateX(0px);
}

section.magazine .heading {
	transition: all 0.3s ease-out;
	opacity: 1;
}
section.magazine .heading.hidden {
	opacity: 0;
	transform: translateY(30px);
}

section.magazineGrid .item .imageWrapper {
	transition: opacity 0.3s;
}

section.magazineGrid .item .imageWrapper .image {
	max-height: 550px;
}

section.magazineGrid .item a:hover .imageWrapper {
	opacity: 0.8;
}

section.magazineGrid .item .caption {
	padding-top: 45px;
}

section.magazineGrid .item .caption span.date {
	font-size: 20px;
	color: #AAC5C2;
	letter-spacing: 0.33px;
	line-height: 1;
	margin-bottom: 20px;
	display: block;
}

section.magazineGrid .item .caption span.date span {
	font-size: 14px;
}

section.magazineGrid .item .caption h2.title {
	font-size: 28px;
	line-height: 1.22;
	letter-spacing: 0.8px;
	margin-bottom: 25px;
}

section.magazineGrid .item .caption .excerpt {
	color: #777777;
	font-size: 16px;
	line-height: 1.5;
}

section.magazineGrid .item .caption .arrow {
    background-image: url(../images/arrow-right-black.svg);
}

section.magazineGrid .item .catContainer {
	font-size: 20px;
	color: #AAC5C2;
	letter-spacing: 0.33px;
	padding-top: 45px;
}

section.magazineGrid .item .catContainer .cat {
	position: absolute;
	right: 100%;
	transform-origin: top right;
	transform: rotate(-90deg);
}

/* RELATED MAGS */

section.relatedMags {
	
}

section.relatedMags h3 {
	font-size: 28px;
	line-height: 26px;
	letter-spacing: 0.67px;
	margin-bottom: 40px;
}

section.relatedMags .wrapper {
	position: relative;
}

section.relatedMags .wrapper .item {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	display: none;
}

section.relatedMags .wrapper .item:first-child {
	display: block;
}

section.relatedMags .navContainer {
	text-align: center;
	padding-top: 40px;
}

section.relatedMags .navContainer.mobile {
	display: none;
}

section.relatedMags .navContainer .bull {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 100%;
	background: #F0F0F0;
	margin: 0 9.5px;
	cursor: pointer;
	transition: background 0.3s;
}

section.relatedMags .navContainer .bull.current {
	background: #AAC5C2;
}

section.relatedMags .item .grid .col a {
	position: relative;
	display: block;
}

section.relatedMags .item .contents {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	overflow: hidden;
}

section.relatedMags .item .bg {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	filter: blur(8px);
	-webkit-filter: blur(8px);
	overflow: hidden;
}

section.relatedMags .item .texts {
	background: rgba(255,255,255,0.8);
	position: relative;
	padding: 35px 50px;
	min-height: 80px;
}

section.relatedMags .item .texts .heading {
	color: #AAC5C2;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0.33px;
	font-weight: normal;
	margin-bottom: 12px;
}

section.relatedMags .item .texts .heading .date span {
	font-size: 14px;
}

section.relatedMags .item .texts h1 {
	font-size: 22px;
	line-height: 1.19;
	letter-spacing: 0.63px;
	font-weight: 700;
}

section.relatedMags .item .texts .arrowContainer {
	height: 0px;
	overflow: visible;
	transition: all 0.3s ease-out;
	opacity: 0;
}

section.relatedMags .item .grid .col a:hover .texts .arrowContainer {
	height:35px;
	opacity: 1;
}

section.relatedMags .item .grid .col a .texts .arrowContainer .arrow {
	height: 20px;
	background-image: url(../images/arrow-right-black.svg);
	background-size: auto 100%;
	background-position: left center;
	background-repeat: no-repeat;
	transform: translateY(15px);
	transition: all 0.3s ease-out;
}

section.relatedMags .item .grid .col a:hover .texts .arrowContainer .arrow {
	/*transform: translateY(15px) translateX(0px);*/
}



/* MAG IND */

section.magIndIntro {
	
}

section.magIndIntro .backToParentSection a:hover .lineContainer .line span {
	background: #AAC5C2;
}

section.magIndIntro .backToParentSection a:hover .sectionTitle {
	color: #AAC5C2;
}

section.magIndHero {
	position: relative;
}

section.magIndHero .bg {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-size: cover;
	background-position: center center;
}

section.magIndHero .bg:before {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.3);
}

section.magIndHero .contents {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
	padding-bottom: 50px;
	color: #FFF;
}

section.magIndHero .contents .cat {
	opacity: 0.6;
	display: block;
	font-size: 20px;
	line-height: 1.8;
	margin-bottom: 20px;
	letter-spacing: 0.48px;
}

section.magIndHero .contents h1 {
	font-size: 48px;
	line-height: 1;
	letter-spacing: 1.14px;
}

section.magIndHero .contents .date {
	display: block;
	margin-top: 20px;
	font-size: 14px;
	line-height: 1.25;
	letter-spacing: 0.23px;
}

section.indText .freeText {
	/*color: #4A4A4A;*/
	font-size: 22px;
}

section.indText.cols .freeText {
	margin-top: 35px;
}

section.indText.cols .col.noTitle .freeText {
	margin-top: 0;
}

section.indText.cols.outcome .freeText {
	margin-top: 15px;
}

section.indText.cols:not(.outcome) .innerW .col:nth-child(odd) {
	clear: both;
}

section.indText.cols.outcome.count4 .innerW .col:nth-child(odd) {
	clear: both;
}

section.indText.cols.outcome.moreThan3:not(.count4) .innerW .col:nth-child(3n+1) {
	clear: both;
}



section.indText.cols .innerW .col {
	margin-top: 35px;
}

section.indText.cols:not(.outcome) .innerW .col:nth-child(1),
section.indText.cols:not(.outcome) .innerW .col:nth-child(2) {
	margin-top: 0;
}

section.indText .freeText a:hover {
	color: #AAC5C2;
}

/* DRAGGABLE GALLERY */

section.draggableGallery {
	overflow: hidden;
}

section.draggableGallery .items {
	margin: 0 -19px;
}

section.draggableGallery .items .item {
	padding: 0 9.5px;
}

section.draggableGallery .items .item .image {
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	opacity: 0;
	transition: opacity 0.5s;
}

section.draggableGallery .items .item .image.canShow {
	opacity: 1;
}

section.draggableGallery .item img {
	max-height: 90vh;
	max-width: 60vw;
	visibility: hidden;
}

section.draggableGallery .arrows {
	text-align: right;
	padding-top: 50px;
}

section.draggableGallery .arrows .arrow {
	display: inline-block;
	cursor: pointer;
}

section.draggableGallery .arrows .arrowLeft {
	float: left;
}

section.draggableGallery .arrows .arrow .path {
	transition: all 0.3s;
}

section.draggableGallery .arrows .arrow:hover .path {
	fill: #FA4E56;
}

.magInd section.draggableGallery .arrows .arrow:hover .path {
	fill: #AAC5C2;
}

section.draggableGallery.fake {
	pointer-events: none;
}

section.draggableGallery.fake .w,
section.draggableGallery.fake .slick-cloned {
	display: none;
}

/* DRAGGABLE GALLERY MEDIA */

section.draggableGallery .items .item > .videoContainer {
	width: 60vw;
	height: auto;
	min-height: 90vh;
    display: flex;
    align-items: center;
}

section.draggableGallery .items .item .mobileCanvas {
	background: url(../images/phone_mockup.png);
	background-size: 100% auto;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
	height: 90vh;
}

section.draggableGallery .items .item .mobileCanvas .videoContainer {
	position: absolute;
	top: 10.5%;
    width: 75%;
    left: 49.5%;
	transform: translateX(-50%);
}


/* CONTACT */

section.contact {
	
}

section.contact table {
	width: 100%;
	height: 100vh;
}

section.contact table .bigText {
	font-size: 46px;
	line-height: 1.17;
	font-weight: 700;
	letter-spacing: 1.1px;
	padding-top: 145px;
}

section.contact table .bigText a {
	display: inline;
	color: #FA4E56;
}

section.contact table .location {
	padding-top: 145px;
}

section.contact table .location a {
	display: inline;
	transition: all 0.3s;
}

section.contact table .location a:hover {
	color: #FA4E56;
}

section.contact table .location h3 {
	font-size: 18px;
	line-height: 2;
	font-weight: 700;
	letter-spacing: 0.43px;
	margin-bottom: 25px;
}

section.contact table .location p {
	font-size: 14px;
	line-height: 2;
}

/* ABOUT US */

.innerWrapper.about section.aboutIntroText:nth-child(1) .freeText {
	padding-top: 280px;
}

.innerWrapper.about .noSpacing {
	letter-spacing: 0;
}

.innerWrapper.about .strongLibre strong,
.strongLibre strong {
	font-family: 'Libre Baskerville';
}

.innerWrapper.about .libre .noSpacing,
.innerWrapper.about .strongLibre strong .noSpacing{
	letter-spacing: -0.15em;
}

section.aboutIntroText .freeText {
	font-size: 46px;
	line-height: 1.23;
	letter-spacing: 1.1px;
}

section.aboutIntroText .freeText strong {
	font-weight: 700;
}

section.aboutIntroText .freeText p {
	margin-top: 55px;
	opacity: 0;
	transform: translateY(50px);
}

section.aboutIntroText .freeText i,
section.aboutIntroText .freeText em {
	font-weight: 700;
	color: #FA4E56;
	font-style: normal;
}

section.aboutParagraph .heading {
	font-size: 36px;
	line-height: 1;
	letter-spacing: 0.86px;
	padding: 0;
}

section.aboutParagraph .paragraph {
	margin-top: 130px;
}

section.aboutParagraph .paragraph .titleContainer {
	height: 1px;
	position: relative;
}
section.aboutParagraph .paragraph .title {
	position: absolute;
	transform-origin: top right;
	transform: rotate(-90deg);
	white-space: nowrap;
	text-align: right;
	right: 100%;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.23;
}

section.aboutParagraph .paragraph .title strong {
	color: #FA4E56;
}

section.aboutParagraph .paragraph .freeText {
	margin-top: -11px;
	font-size: 16px;
	line-height: 1.75;
}

section.aboutParagraph .paragraph .freeText p {
	margin-top: 30px;
}

section.aboutIntroText:first-child {
	margin-top: 0;
}

section.aboutImage img {
	width: 100%;
}

section.aboutImage .blend {
	border-color: #202020;
}

section.aboutImage .wrapper {
	position: relative;
}

section.aboutImage .wrapper .title {
	position: absolute;
	right: 100%;
	transform-origin: top right;
	transform: rotate(-90deg);
	font-size: 30px;
	line-height: 1;
	letter-spacing: 1.1px;
	font-weight: 700;
}

section.aboutImage .wrapper .overlayText {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	padding-top: 50px;
	
	font-size: 46px;
	line-height: 1.25;
	font-weight: 700;
	letter-spacing: 1.1px;
}

section.aboutImage .wrapper .image {
	padding-left: 145px;
}

section.aboutImage .wrapper .image img {
	width: 100%;
}

section.indText.columns .col {
	column-count: 2;
	column-gap: 90px;
	font-size: 22px;
	line-height: 1.35;
	letter-spacing: 0.52px;
}

section.indText.columns .col p[data-animation-style] {
	opacity: 0;
}

/* CAREERS */

section.openPositions .openPositionsHero {
	position: relative;
}

section.openPositions .openPositionsHero:before {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.15);
}

section.openPositions .openPositionsHero .w {
	position: relative;
	z-index: 1;
}

section.openPositions .openPositionsHero .background,
section.openPositions .openPositionsHero .background .image {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
	background-color: #fa4e56;
}

section.openPositions .openPositionsHero .background .image {
	opacity: 0;
	transition: opacity 0.5s;
}

section.openPositions .openPositionsHero .background .image.loaded {
	opacity: 1;
}

section.openPositions .openPositionsHero .background .image img {
	width: 1px;
	height: auto;
	visibility: hidden;
}

section.openPositions .sectionPhrase {
	font-size: 70px;
	line-height: 1.17;
	letter-spacing: 1.1px;
	font-weight: 700;
	padding-top: 200px;
	padding-bottom: 200px;
	color: #FFF;
}

section.openPositions .sectionPhrase strong {
	color: #FA4E56;
}

section.openPositions .heading {
	padding-top: 100px;
	font-size: 28px;
	line-height: 1.57;
	letter-spacing: 0.67px;
}

section.openPositions.columnsWrapper {
	padding-top: 135px;
}

section.openPositions .leftColumn h2 {
	font-size: 36px;
	line-height: 1;
	letter-spacing: 0.86;
	margin-bottom: 85px;
}

section.openPositions .leftColumn ul li {
	padding: 12px 0;
	font-size: 22px;
	letter-spacing: 0.52;
	text-transform: lowercase;
	font-weight: 400;
}

section.openPositions .leftColumn ul li span[data-career-area] {
	cursor: pointer;
	transition: color 0.3s;
}

section.openPositions .leftColumn ul li span[data-career-area]:hover {
	color: #FA4E56;
}

section.openPositions .leftColumn ul li span[data-career-area]:hover span.count:before {
	background-color: #FA4E56;
}

section.openPositions .leftColumn ul li span.libre {
	color: #FA4E56;
}

section.openPositions .leftColumn ul li span.count:before {
	content: " ";
	height: 1px;
	width: 20px;
	background: #000;
	margin-right: 1px;
	display: inline-block;
	vertical-align: baseline;
	transition: all 0.3s;
}
section.openPositions .leftColumn ul li span.count {
	font-size: 14px;
	letter-spacing: 0.27;
}

section.openPositions .rightColumn .item {
	padding-top: 80px;
	font-size: 22px;
	line-height: 1.82;
	font-weight: 400;
	color: #4A4A4A;
	padding-bottom: 20px;
	position: relative;
}

section.openPositions .rightColumn .item .line {
	position: absolute;
	top: 110px;
	left: 0;
	bottom: 20px;
}

section.openPositions .rightColumn .item .line span {
	display: block;
	position: absolute;
	height: 0%;
	bottom: 0;
	left: 50%;
	width: 2px;
	margin-left: 8px;
	background: #FA4E56;
}

section.openPositions .rightColumn .item:first-child {
	padding-top: 0;
}

section.openPositions .rightColumn .item .title {
	position: relative;
	color: #000;
}

section.openPositions .rightColumn .item .title span {
	position: absolute;
	right: 50%;
	top: -14px;
	transform: rotate(-90deg);
	transform-origin: right 50%;
	text-transform: lowercase;
	font-weight: 700;
	font-size: 30px;
	letter-spacing: 0.31;
	background: #FFF;
	padding-left: 10px;
}

section.openPositions .rightColumn .item .description {
	padding-bottom: 30px;
}

section.openPositions .rightColumn .item .noPosition {
	font-weight: 500;
	color: #000;
}

section.openPositions .rightColumn .item .pos {
	margin: 20px 0;
	font-size: 22px;
	line-height: 1.37;
	letter-spacing: 0.52px;
}

section.openPositions .rightColumn .item .pos a {
	display: inline-block;
	transition: color 0.3s;
	color: #000;
	text-decoration: underline;
}

section.openPositions .rightColumn .item .pos a:hover {
	color: #FA4E56;
}

section.openPositions .rightColumn .item .pos a .arrow {
	display: inline-block;
	vertical-align: sub;
	opacity: 0;
	margin-left: 35px;
	transform: translateX(-30px);
	transition: all 0.3s ease-out;
}

section.openPositions .rightColumn .item .pos a:hover .arrow {
	transform: translateX(0px);
	opacity: 1;
}

section.openPositions .rightColumn .item .pos a .arrow .path {
	transition: all 0.3s ease-out;
}
section.openPositions .rightColumn .item .pos a:hover .arrow .path {
	fill: #FA4E56;
}

section.openPositions .btn {
	margin-top: 40px;
}

section.openPositions .spontaneous {
	position: relative;
	margin-top: 200px;
	margin-bottom: 0;
}

section.openPositions .spontaneous:after {
	content: " ";
	display: block;
	clear: both;
}

section.openPositions .spontaneous .image {
	position: relative;
}

section.openPositions .spontaneous .image:after {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #FFFF;
	opacity: 0.5;
	mix-blend-mode: soft-light;
}

section.openPositions .spontaneous .image img {
	width: 100%;
	height: auto;
}

section.openPositions .spontaneous .text {
	font-size: 46px;
	letter-spacing: 1.1;
	line-height: 1.17;
}

section.openPositions .spontaneous .text p {
	font-size: 28px;
	line-height: 1.55;
	font-weight: 400;
	color: #000000;
	letter-spacing: normal;
	margin-top: 25px;
}


.careersOuter section.openPositionForm {
    padding-top: 0;
    margin-top: 100px;
    padding-bottom: 0;
    background: #FFF;
}

/* OPEN POSITION */

section.openPositionHero {
	position: relative;
	color: #FFF;
	min-height: 200px;
	max-height: 470px;
}

section.openPositionHero .backToParentSection .lineContainer .line span {
	background: #FFF;
}

section.openPositionHero .backToParentSection a:hover .lineContainer .line span {
	background: #FA4E56;
}

section.openPositionHero .background,
section.openPositionHero .background .image {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	overflow: hidden;
}

section.openPositionHero .background .image {
	opacity: 0;
	transition: opacity 0.5s;
}

section.openPositionHero .background .image.loaded {
	opacity: 1;
}

section.openPositionHero .background .image img {
	width: 1px;
	height: auto;
	visibility: hidden;
}

section.openPositionHero .bg:after {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.3);
}

section.openPosition .position {
	padding-top: 90px;
}

section.openPositionForm {
	padding-top: 100px;
	margin-top: 100px;
	padding-bottom: 200px;
	background: #fafafa;
}

section.openPositionForm h1 br.mobile {
	display: none;
}

section.openPosition .position h1,
section.openPositionForm h1 {
	display: block;
	font-weight: 700;
	font-size: 36px;
	line-height: 1;
	letter-spacing: 0.86px;
	margin-bottom: 90px;
}

section.openPosition .position .description {
	font-size: 20px;
	line-height: 1.6;
	letter-spacing: 0.91px;
}

section.openPosition .position .skills {
	margin-top: 65px;
}

section.openPosition .position .skills h4 {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.43px;
	line-height: 1;
	margin-bottom: 55px;
}

section.openPosition .position .skills .freeText {
	font-size: 16px;
	line-height: 2.25;
	letter-spacing: 1px;
}

section.openPosition .position .moreContents {
	margin-top: 55px;
	font-size: 16px;
	letter-spacing: 0.56px;
}

section.openPosition .position .btnContainer {
	margin-top: 100px;
}

section.openPosition .location {
	font-size: 18px;
	line-height: 21px;
	color: #52545D;
	letter-spacing: 0.43px;
	font-weight: 700;
	padding-top: 14px;
}

section.openPosition .location img {
	display: inline-block;
	vertical-align: baseline;
	transform: translateY(1px);
	margin-right: 10px;
}

section.openPositionForm .tabOptions {
	font-size: 0;
	letter-spacing: 0;
	padding-bottom: 70px;
}

section.openPositionForm .tabOptions label {
	display: block;
	font-size: 14px;
	color: #52545D;
	letter-spacing: 0.88px;
	margin-bottom: 20px;
}

section.openPositionForm .tabOptions .btn {
	margin-right: 20px;
}


section.openPositionForm .tabOptions .btnsContainer {
	white-space: nowrap;
	position: relative;
	overflow: scroll;
	width: 100vw;
	 -ms-overflow-style: none;
    scrollbar-width: none;
}

section.openPositionForm .tabOptions .btnsContainer::-webkit-scrollbar {
    width: 0px;  /* Remove scrollbar space */
    background: transparent;  /* Optional: just make scrollbar invisible */
	display: none;
}
/* Optional: show position indicator in red */
section.openPositionForm .tabOptions .btnsContainer::-webkit-scrollbar-thumb {
    background: #fafafa;
}

section.openPositionForm.overlay.hidden {
	visibility: hidden;
	z-index: -1000;
	transform: translateX(-300%);
	pointer-events: none;
}
section.openPositionForm.overlay {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background: #202020;
	
	margin: 0;
	z-index: 55;
	max-height: calc(100vh - 33px);
	overflow: auto;
}

section.openPositionForm.overlay > .w {
	overflow: hidden;
}

section.openPositionForm.overlay > .w .innerW {
	padding: 70px 0 50px;
}

section.openPositionForm.overlay form label {
	margin-bottom: 20px;
	padding-top: 30px;
}

section.openPositionForm.overlay form .right label {
	padding-top: 36px;
}

section.openPositionForm.overlay form label:last-child {
	margin-bottom: 0;
}

section.openPositionForm.overlay form label span:nth-child(1):not(.wpcf7-form-control-wrap) {
	color: #a4a4a4;
}

section.openPositionForm.overlay form label input {
	color: #FFF;
}

section.openPositionForm.overlay .tabOptions {
	padding-bottom: 20px;
}

section.openPositionForm.overlay .tabOptions .btn {
	font-size: 13px;
}

section.openPositionForm.overlay form:after {
	content: " ";
	clear: both;
	display: block;
}

section.openPositionForm.overlay form .left {
	width: calc(100% - 305px);
	float: left;
	margin-bottom: 30px;
}

section.openPositionForm.overlay form .right {
	width: 305px;
	float: right;
	padding-left: 55px;
	margin-bottom: 30px;
	padding-top: 15px;
}

section.openPositionForm.overlay form .right label:nth-child(1) {
	padding-top: 15px;
	margin-bottom: 0;
}

section.openPositionForm.overlay form label .wpcf7-acceptance input[type="checkbox"] {
	margin-top: -5px;
}

section.openPositionForm.overlay form .wpcf7-acceptance span {
	font-size: 10px!important;
	line-height: 1.2!important;
	color: #FFF!important;
}

section.openPositionForm.overlay form .wpcf7-acceptance span label {
	padding-top: 0!important;
}

section.openPositionForm.overlay form .wpcf7-acceptance span {
	display: block;
}

section.openPositionForm.overlay form .attach-drop {
	position: relative;
}

section.openPositionForm.overlay form .drop_uploader.drop_zone {
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

section.openPositionForm.overlay form .wpcf7-form-control-wrap {
	position: relative!important;
}

section.openPositionForm.overlay form .drop_uploader.drop_zone .text_wrapper {
	margin: 0!important;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
}

section.openPositionForm.overlay form .drop_uploader a {
	text-decoration: underline;
}

section.openPositionForm.overlay form .submitContainer {
	margin-top: 34px;
	margin-bottom: 0;
}

section.openPositionForm.overlay form .submitContainer .btn.submit {
	display: block;
	text-align: center;
	margin: 0;
}

section.openPositionForm.overlay div.wpcf7 .ajax-loader {
	display: none!important;
}

section.openPositionForm.overlay span.wpcf7-not-valid-tip {
    font-size: 13px;
    line-height: 28px;
}

section.openPositionForm.overlay .drop_uploader.drop_zone .text_wrapper i {
	display: block;
	font-size: 30px;
	color: #dbdbdb;
	margin: 0;
	top: auto;
	vertical-align: top;
}

section.openPositionForm.overlay .drop_uploader.drop_zone ul.files li i.action-delete {
	padding-top: 4px;
	padding-bottom: 0px;
	top: 0;
}

section.openPositionForm.overlay .drop_uploader.drop_zone ul.files li .du_progress {
	margin: 0;
}

section.openPositionForm.overlay .drop_uploader.drop_zone ul.files li .du_progress canvas {
	display: block;
}

section.openPositionForm.overlay .drop_uploader.drop_zone .text {
	color: #a5a5a5!important;
	letter-spacing: 1.2px;
	line-height: 1.1;
	display: block;
	padding-top: 10px;
	max-width: 190px;
	margin: auto;
}

section.openPositionForm.overlay .drop_uploader.drop_zone ul.files {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	text-align: center;
	margin: 0 !important;
}

section.openPositionForm.overlay .drop_uploader.drop_zone ul.files li {
	background: #202020;
	width: 100%;
	text-align: center;
	margin: 0 !important;
	padding: 50px 30px!important;
	border: none;
	color: #FFF!important;
}

section.openPositionForm.overlay .drop_uploader.drop_zone ul.files li span {
	display: block;
	word-break: break-all;
	max-height: 130px;
	overflow: hidden;
}

section.openPositionForm.overlay .drop_uploader.drop_zone ul.files li i,
section.openPositionForm.overlay .drop_uploader.drop_zone ul.files li .du_progress {
	display: inline-block;
	float: none;
}

section.openPositionForm.overlay .wpcf7-response-output {
	clear: both;
	color: #ffffff;
	margin-bottom: 30px;
}

section.openPositionForm.overlay .tabOptions .btn {
	margin-right: 27px;
}

section.openPositionForm.overlay .tabOptions label {
	color: #FFF;
	font-size: 11px;
	margin-bottom: 15px;
}

section.openPositionForm.overlay h2 {
	color: #FFF;
	font-size: 40px;
	line-height: 50px;
	margin-bottom: 30px;
}

section.openPositionForm.overlay .close {
	position: absolute;
	top: 50px;
	right: 45px;
	width: 33px;
	height: 33px;
	background-image: url(../images/overlay-close.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	cursor: pointer;
}
 
/* TABS */

.tabs {
	position: relative;
}

.tabs .tab {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: none;
	pointer-events: none;
}

.tabs .tab.current {
	display: block;
	pointer-events: auto;
}

/* FORM */

#fake_form {
	display: none;
}

form {
	
}

span.wpcf7-not-valid-tip {
	color: #FA4E56;
	font-size: 16px;
	line-height: 50px;
	position: absolute;
}



form label {
	display: block;
	padding-top: 35px;
	position: relative;
	margin-bottom: 40px;
}

form label span:nth-child(1):not(.wpcf7-form-control-wrap) {
	position: absolute;
	z-index: 1;
	font-size: 18px;
	line-height: 38px;
	color: #52545D;
	letter-spacing: 1.12px;
	transition: all 0.3s ease-out;
	top: 35px;
}

form label .wpcf7-acceptance input[type=checkbox] {
	position: absolute;
	z-index: 1;
	width: 20px;
	height: 20px;
	margin-top: 9px;
}

form label .wpcf7-acceptance,
form label .wpcf7-acceptance .wpcf7-list-item {
	position: relative!important;
	top: auto!important;
	margin-left: 0;
}

form label .wpcf7-acceptance .wpcf7-list-item label {
	margin: 0;
	padding: 0;
}

form label .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label {
	display: block;
	padding-left: 30px;
}

form label .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label a {
	display: inline;
	text-decoration: underline;
}

form label.focused span:nth-child(1) {
	top: 0;
	font-size: 14px;
	letter-spacing: 0.88px;
}

form label input[type=text],
form label input[type=tel],
form label input[type=email] {
	border-bottom: 1px solid #e0e0e0;
	border-radius: 0;
	line-height: 38px;
	font-family: 'Montserrat';
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 1.25px;
	background: transparent;
	width: 100%;
}

form .wpcf7-form-control-wrap {
	display: block;
	position: relative;
	z-index: 2;
}

form input[type="submit"] {
	display: none;
}

form .submitContainer {
	text-align: right;
	margin-bottom: 40px;
	margin-top: 70px;
}

form .submitContainer .btn {
	vertical-align: middle;
	margin-left: 15px;
}

div.wpcf7-response-output {
	margin: 0;
	font-size: 16px;
	line-height: 30px;
	letter-spacing: 0.56px;
}

.wpcf7-form-control-wrap.openPositionField {
	display: none;
}

.drop_uploader.drop_zone .text {
	font-size: 18px!important;
	color: #52545D!important;
}

.drop_uploader a {
	display: inline;
}

.drop_uploader.drop_zone .text_wrapper {
    margin-top: 20px!important;
}

.drop_uploader.drop_zone .errors p {
	color: #FA4E56!important;
	font-size: 18px!important;
	padding-top: 25px;
}

.drop_uploader.drop_zone ul.files {
	margin-top: 25px!important;
}

@media all and (max-width: 1328px) {
	
	section.openPositionForm.overlay {
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		max-width: none;
		max-height: none;
		transform: none;
	}
	
	.w {
		padding: 0 50px;
	}
	
	section.VM {
		margin: 80px 0;
	}
	
	section.topCTA {
		margin-top: 80px;
		margin-bottom: 80px;
	}
	
	section.workIntro .introTexts .text .freeText,
	.freeText {
		font-size: 16px;
		line-height: 1.5;
	}
	
	.freeText h1 {
		font-size: 24px;
	}
	
	.freeText h2 {
		font-size: 20px;
	}
	
	.freeText h3 {
		font-size: 18px;
	}
	
	.freeText h4 {
		font-size: 16px;
	}
	
	.freeText h5 {
		font-size: 15px;
	}
	
	.freeText p, 
	.freeText ul,
	.freeText h2,
	.freeText h3 {
		margin: 25px 0 0 0;
	}

	section.homeIntro .contents .w .innerW .weAre,
	section.bgVideo h1 {
		font-size: 50px;
	}
	
	#cookieBanner {
		padding: 50px 0;
	}
	
	#footer {
		padding-bottom: 50px;
		padding-top: 50px;
		margin-top: 50px;
	}
	
	#footer .left .po {
		position: relative;
		top: auto;
		left: auto;
		bottom: auto;
		font-size: 16px;
		padding-top: 11px;
	}
	
	#footer .left,
	#footer .left .po div,
	#footer .left .logo,
	#footer .left .wrapper {
		position: relative;
		top: auto;
		left: auto;
		bottom: auto;
		right: auto;
		transform: none;
	}
	
	#footer .left .logo {
		width: 40px;
		height: 40px;
	}
	
	#footer .right .disclaimer {
		display: none;
	}
	
	#footer .left .disclaimer {
		display: block;
		font-size: 14px;
		letter-spacing: 0;
		line-height: 18px;
		padding-top: 11px;
	}
	
	#footer .left .disclaimer a {
		display: inline;
		transition: all 0.3s;
	}
	
	#footer .left .disclaimer a:hover {
		color: #FA4E56;
	}
	
	#footer .right ul li.col:last-child {
		margin-bottom: 0!important;
	}
	
	menu .navContainer ul li a {
		font-size: 40px;
	}
	
	menu .w .socialContainer ul li a {
		width: 40px;
		height: 40px;
		font-size: 20px;
	}
	
	menu .contents .navContainer .logo img {
		width: 60px;
		height: 60px;
	}
	
	.innerWrapper.about section.aboutIntroText:nth-child(1) .freeText {
		padding-top: 200px;
	}
	
	section.indText.columns .col {
		column-gap: 60px;
	}
	
	section.aboutIntroText .freeText {
		font-size: 34px;
		line-height: 42px;
		letter-spacing: 0.81px;
	}
	
	section.aboutParagraph .heading {
		font-size: 26px;
		letter-spacing: 0.62px;
	}
	
	section.aboutParagraph .paragraph:nth-child(2) {
		margin-top: 90px;
	}
	
	section.aboutParagraph .paragraph {
		margin-top: 140px;
	}
	
	section.aboutParagraph .paragraph .title,
	section.aboutImage .wrapper .title {
		font-size: 20px;
		line-height: 22px;
		letter-spacing: 1px;
	}
	
	section.header {
		top: 33px;
	}
	
	section.works .heading, 
	section.magazine .heading, 
	section.aboutParagraph .heading, 
	section.postInnerNav .heading,
	.backToParentSection {
		font-size: 30px;
		letter-spacing: 0.71px;
		line-height: 1;
		font-weight: 700;
		padding-top: 60px;
		padding-bottom: 60px;
	}
	
	.backToParentSection {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	
	section.works .heading .lineContainer .line, 
	section.magazine .heading .lineContainer .line, 
	section.aboutParagraph .heading .lineContainer .line, 
	section.postInnerNav .heading .lineContainer .line,
	.backToParentSection .lineContainer .line {
		height: 2px;
		transform: translateY(-190%);
	}
	
	section.workIntro .introTexts {
		padding-top: 40px;
	}
	
	section.workIntro .introTexts .client h1 {
		font-size: 18px;
		line-height: 22px;
		letter-spacing: 0.43px;
		margin-bottom: 5px;
	}
	
	section.workIntro .introTexts .text h1.title {
		font-size: 26px;
		letter-spacing: 0.62px;
		margin-bottom: 25px;
	}
	
	section.workIntro .introTexts .text .freeText {
		font-size: 16px;
	}
	
	section.workIntro .introTexts .text .freeText p {
		margin: 30px 0 0 0;
	}
	
	section.imageAndText .textContainer h2,
	section.indText h1.textTitle {
		font-size: 26px;
		letter-spacing: 0.62px;
	}
	
	section.imageAndText.outcome .textContainer h2 {
		font-size: 46px;
		letter-spacing: 0.82px;
		line-height: 1;
		margin-bottom: 0px;
	}
	
	section.imageAndText.outcome .textContainer label {
		font-size: 26px;
		letter-spacing: 1px;
		line-height: 1;
	}
	
	section.imageAndText.outcome .textContainer .col {
		margin: 45px 0;
	}
	
	section.imageAndText .textContainer .freeText {
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		letter-spacing: 0.33px;
	}
	
	section.imageAndText .textContainer .freeText.topSpaced,
	section.indText.cols .freeText {
		margin-top: 25px;
	}
	
	section.indText.cols.outcome .freeText {
		margin-top: 5px;
	}
	
	section.indText .freeText {
		font-size: 16px;
	}
	
	section.indText.columns .col {
		font-size: 16px;
		line-height: 1.5;
		letter-spacing: normal;
	}
	
	section.quote .wrapper .item h5 {
		font-size: 24px;
		line-height: 38px;
		letter-spacing: 0.57px;
	}
	
	section.quote .wrapper .item label {
		margin-top: 20px;
		font-size: 16px;
		line-height: 19px;
		letter-spacing: 0.38px;
	}
	
	section.magazine .wrapper {
		bottom: 50px;
	}
	
	section.magazine .bread {
		top: 60px;
	}
	
	section.magazine .bottom .col {
		padding: 50px 50px 44px 50px;
	}
	
	section.magazine .bottom .col .catDate {
		font-size: 15px;
		margin-bottom: 15px;
	}
	
	section.magazine .bottom .col .catDate span {
		font-size: 12px;
	}
	
	section.magazine .bottom .col h2 {
		font-size: 20px;
		line-height: 23px;
		letter-spacing: 0.62px;
	}
	
	section.magazine .bottom .col .excerpt {
		font-size: 15px;
		margin-bottom: 5px;
	}
	
	section.magazine .bottom .col .more {
		font-size: 12px;
	}
	
	section.magazine .bottom .col .more .arrow {
		vertical-align: sub;
	}
	
	section.magazine .bottom .col .more .arrow svg {
		height: 14px;
		width: auto;
	}
	
	section.magazineGrid .item .catContainer {
		font-size: 15px;
	}
	
	section.magazineGrid .item .caption h2.title {
		font-size: 22px;
		margin-bottom: 20px;
	}
	
	section.magazineGrid .item .caption span.date {
		font-size: 15px;
		margin-bottom: 15px;
	}
	
	section.magazineGrid .item .caption .excerpt {
		font-size: 15px;
	}
	
	section.relatedMags .item .texts {
		padding: 30px 35px;
	}
	
	section.relatedMags .item .texts h1 {
		font-size: 15px;
	}
	
	section.relatedMags .item .texts .heading {
		font-size: 14px;
	}
	
	section.relatedMags .item .texts .heading .date span {
		font-size: 12px;
	}
	
	section.relatedMags .item .grid .col a .texts .arrowContainer .arrow {
		height: 14px;
	}
	
	section.relatedMags .item .grid .col a:hover .texts .arrowContainer {
		height: 30px;
	}
	
	section.magIndHero .contents .cat {
		font-size: 18px;
		line-height: 1;
		margin-bottom: 15px;
		letter-spacing: 0.43px;
	}
	
	section.magIndHero .contents h1 {
		font-size: 36px;
		line-height: 38px;
		letter-spacing: 0.86px;
	}
	
	section.draggableGallery .arrows {
		padding-top: 25px;
	}
	
	section.relatedMags h3 {
		font-size: 20px;
		line-height: 26px;
		letter-spacing: 0.48px;
		margin-bottom: 25px;
	}
	
	section.openPositions .sectionPhrase {
		font-size: 34px;
		line-height: 42px;
		letter-spacing: 0.81px;
		padding-top: 170px;
		padding-bottom: 170px;
	}
	
	section.openPositions .spontaneous {
		margin-top: 150px;
		margin-bottom: 150px;
	}
	
	section.openPositions .spontaneous .text {
		font-size: 36px;
	}
	
	section.openPositions .btn {
		margin-top: 50px;
	}
	
	section.openPositions .heading {
		font-size: 22px;
		padding-top: 80px;
	}
	
	section.openPositions.columnsWrapper {
		padding-top: 80px;
	}
	
	section.openPositions .leftColumn h2 {
		font-size: 26px;
		margin-bottom: 50px;
	}
	
	section.openPositions .leftColumn ul li {
		padding: 8px 0;
	}
	
	section.openPositions .rightColumn .item .title span {
		font-size: 26px;
	}
	
	section.openPositions .rightColumn .item,
	section.openPositions .spontaneous .text p {
		font-size: 20px;
	}
	
	section.openPositions .rightColumn .item .pos {
		font-size: 20px;
		line-height: 30px;
		letter-spacing: 0.48px;
		margin: 20px 0;
	}
	
	section.openPosition .position {
		padding-top: 50px;
		padding-bottom: 85px;
	}
	
	section.openPositionForm {
		margin-top: 0;
		padding-top: 85px;
		padding-bottom: 100px;
	}
	
	section.openPosition .position h1,
	section.openPositionForm h1 {
		font-size: 34px;
		line-height: 42px;
		letter-spacing: 0.81px;
		margin-bottom: 80px;
	}
	
	section.openPosition .position .description {
		font-size: 18px;
		line-height: 26px;
		letter-spacing: 0.82px;
	}
	
	section.openPosition .position .skills h4 {
		margin-bottom: 45px;
	}
	
	section.openPosition .position .skills .freeText {
		font-size: 14px;
		line-height: 22px;
		letter-spacing: 0.88px;
	}
	
	.freeText ul,
	.freeText ol {
		padding-left: 30px;
	}
	
	.freeText ul li::before,
	.freeText ol li::before {
		left: -30px;
		width: 19px;
		margin-top: 1em;
	}
	
	section.openPosition .position .moreContents {
		margin-top: 50px;
		font-size: 14px;
	}
	
	section.openPosition .location {
		text-align: right;
	}
	
	section.contact table .bigText {
		font-size: 34px;
		line-height: 42px;
		letter-spacing: 0.61px;
	}
	
	.innerWrapper.innerCommonPage .title {
		padding-bottom: 50px;
	}
	
	.innerWrapper.innerCommonPage .indText {
		padding-bottom: 0;
	}
}

@media all and (max-width: 1280px) {

	section.works .items .item a .textContainer h2 {
		font-size: 20px;
		padding-top: 4px;
	}
	/*
	section.works .items .item a .textContainer .arrow {
		bottom: 2px;
	}
	*/
}

@media all and (max-width: 1023px) {
	
	section.imagesInBoxes.moreThan3 .grid .grid {
		margin-bottom: 15px;
	}

	section.headerLogo.full .logo {
		width: 259px;
		height: 40px;
	}
	
	section.works .items .item {
		margin-bottom: 70px;
	}
	
	menu .navContainer ul li a {
		font-size: 50px;
	}
	
	.socialContainer ul li a {
		width: 50px;
		height: 50px;
		font-size: 28px;
	}
	
	section.topCTA,
	section.moreCTA {
		display: none;
	}
	
	section.homeIntro .contents .w .innerW .weAre,
	section.bgVideo h1 {
		font-size: 34px;
		letter-spacing: -0.17px;
		line-height: 50px;
	}
	
	section.homeIntro .contents .w .innerW p {
		font-size: 28px;
		line-height: 44px;
	}
	
	section.homeGrid .item.magazine .imageWrapper .date {
		top: 20px;
	}
	
	section.homeGrid .item.magazine .imageWrapper .date .day {
		font-size: 39px;
	}
	
	section.homeGrid .item.magazine .imageWrapper .date .month {
		font-size: 18px;
	}
	
	section.homeGrid .item.magazine .imageWrapper .date hr {
    	margin: 9px auto 11px;
	}
	
	#footer .right ul li.col {
		font-size: 16px;
		line-height: 19px;
	}
	
	menu .contents .navContainer .logo img {
		width: 70px;
		height: 70px;
	}
	
	.socialContainer ul li a {
		width: 50px;
		height: 50px;
		font-size: 28px;
	}
	
	.navContainer ul li a {
		font-size: 50px;
	}
	
	section.headerLogo .logo {
		width: 40px;
		height: 40px;
	}
	
	section.works .heading, 
	section.magazine .heading, 
	section.aboutParagraph .heading, 
	section.postInnerNav .heading,
	.backToParentSection {
		padding-top: 55px;
		padding-bottom: 55px;
	}
	
	.backToParentSection {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	
	section.works .heading, 
	section.magazine .heading, 
	section.aboutParagraph .heading, 
	section.postInnerNav .heading
	.backToParentSection {
		font-size: 26px;
		letter-spacing: 0.62px;
	}
	
	section.imageAndText .textContainer h2 {
		
	}
	
	section.imageAndText .textContainer .freeText.topSpaced {
		margin-top: 25px;
	}
	
	section.gallerySingleFrame table,
	section.gallerySingleFrame table tbody,
	section.gallerySingleFrame table tbody tr,
	section.gallerySingleFrame table tbody tr td {
		display: block;
	}
	
	section.gallerySingleFrame table.grid {
		margin-left: 0;
		width: 100%;
		border-spacing: 0;
	}
	
	section.gallerySingleFrame .navContainer {
		text-align: center;
		font-size: 0;
		margin-top: 35px;
	}
	
	section.gallerySingleFrame .navContainer .nav .current {
		font-size: 23px;
		line-height: 28px;
	}
	
	section.gallerySingleFrame .navContainer .nav .total {
		font-size: 13px;
		line-height: 28px;
	}
	
	section.gallerySingleFrame .navContainer .arrows {
		overflow: hidden;
		top: 50%;
		bottom: auto;
		transform: translateY(-50%);
	}
	
	section.gallerySingleFrame .navContainer .arrows .arrow.arrowRight {
		float: right;
	}
	
	section.quote {
		margin: 290px 0 280px;
	}
	
	section.quote .wrapper .item {
		text-align: center;
	}
	
	section.quote .wrapper .item label {
    	margin-top: 30px;
	}
	
	section.quote .navContainer {
		padding-top: 30px;
	}
	
	section.quote .navContainer .bull,
	section.relatedMags .navContainer .bull {
		width: 6px;
		height: 6px;
		margin: 0 6px;
	}
	
	section.magazine .heading {
		display: none;
	}
	
	section.magazine .bottom .col {
		padding: 32px 40px 22px 40px;
	}
	
	section.magazine .bottom .col .catDate {
		font-size: 12px;
		letter-spacing: 0.21px;
		line-height: 12px;
		margin-bottom: 11px;
	}
	
	section.magazine .bottom .col h2 {
		margin-bottom: 16px;
	}
	
	section.magazine .bottom .col .catDate span {
		font-size: 9px;
	}
	
	section.magazine .bottom .col .excerpt {
		font-size: 12px;
		margin-bottom: 9px;
		letter-spacing: 0;
		line-height: 15px;
	} 
	
	section.magazine .bottom .col .more {
		font-size: 10px;
	}
	
	section.magazine .bottom .col .more .arrow svg {
		height: 12px;
	}
	
	section.magazineGrid .item {
		padding-top: 40px;
	}
	
	section.magazineGrid .item .catContainer {
		font-size: 11px;
		line-height: 9px;
		letter-spacing: 0.18px;
		padding-top: 22px;
	}
	
	section.magazineGrid .item .caption span.date {
		font-size: 11px;
		margin-bottom: 10px;
		line-height: 1;
		letter-spacing: 0.18px;
	}
	
	section.magazineGrid .item .caption span.date span {
		font-size: 8px;
	}
	
	section.magazineGrid .item .caption h2.title {
		font-size: 15px;
		margin-bottom: 16px;
		line-height: 18px;
		letter-spacing: 0.43px;
	}
	
	section.magazineGrid .item .caption .excerpt {
		font-size: 12px;
		letter-spacing: 0;
		line-height: 16px;
	}
	
	section.magazineGrid .item .caption .arrow {
		width: auto;
		height: 11px;
		margin-top: 20px;
	}
	
	section.relatedMags {
		margin: 120px 0 170px;
	}
	
	section.relatedMags .navContainer {
		padding-top: 30px;
	}
	
	section.relatedMags .item .texts .heading {
		font-size: 11px;
		letter-spacing: 0.18px;
		margin-bottom: 7px;
	}
	
	section.relatedMags .item .texts .heading .date span {
		font-size: 8px;
	}
	
	section.relatedMags .item .texts h1 {
		font-size: 12px;
		line-height: 14px;
		letter-spacing: 0.34px;
	}
	
	section.relatedMags .item .texts {
		padding: 19px 25px;
	}
	
	section.relatedMags .item .grid .col a .texts .arrowContainer .arrow {
    	transform: translateY(10px);
	}
	
	section.draggableGallery .item img {
		max-height: 500px;
		max-width: 440px;
	}
	
	section.openPositions .rightColumn .item {
		padding-top: 50px;
		padding-bottom: 10px;
	}
	
	section.openPositions .rightColumn .item .description {
		padding-bottom: 10px;
	}
	
	section.openPositions .heading,
	section.openPositions .leftColumn ul li,
	section.openPositions .rightColumn .item,
	section.openPositions .rightColumn .item .pos,
	section.openPositions .spontaneous .text p {
		font-size: 16px;
	}
	
	section.openPositions .spontaneous {
		margin-top: 100px;
		margin-bottom: 100px;
	}

	section.openPositions .spontaneous .text {
		font-size: 26px;
	}
	
	section.openPositions .spontaneous .text div {
		transform: none!important;
	}
	
	section.openPosition .position h1,
	section.openPositionForm h1 {
		margin-bottom: 50px;
	}
	
	section.openPosition .tabOptions .btn {
		margin-right: 24px;
	}
	
	section.openPosition .position .heading br {
		display: block;
	}
	
	section.indText.columns .col {
		column-count: 1;
		column-gap: 0;
	}
	
	section.aboutIntroText .freeText {
		
	}
	
	section.aboutParagraph .paragraph:nth-child(2) {
		margin-top: 40px;
	}
	
	section.aboutParagraph .paragraph {
		margin-top: 150px;
	}
	
	section.aboutParagraph .paragraph .freeText {
		font-size: 14px;
		line-height: 24px;
		letter-spacing: 0.33px;
	}
	
	section.aboutParagraph .paragraph .title p {
		margin-left: -4px;
		margin-right: -4px;
	}
	
	section.aboutImage .wrapper .overlayText {
		font-size: 30px;
		line-height: 32px;
		letter-spacing: 0.71px;
	}
	
	section.aboutImage .wrapper .image {
		padding-left: 110px;
	}
	
	section.contact table .bigText br {
		display: none;
	}
	
	section.bgVideo,
	section.magazine,
	section.magIndHero {
		height: 500px !important;
	}
	
	section.bgVideo {
		max-height: 100vh;
	}
	
	section.magazine .wrapper {
		bottom: 0;
	}
	
	#cookieBanner h1 {
		font-size: 26px;
		letter-spacing: 0.62px;
	}
	
	#cookieBanner .text {
		padding: 20px 0 35px;
		font-size: 14px;
		line-height: 26px;
		letter-spacing: 0.33px;
	}
	
	.innerWrapper.innerCommonPage {
		padding-top: 120px;
	}
	
	.innerWrapper.innerCommonPage .title {
		padding-bottom: 30px;
	}
	
}

@media all and (max-width: 767px) { /* MOBILE */
	
	section.openPositionForm.overlay > .w .innerW {
		padding: 21px 0 30px;
	}
	
	section.openPositionForm.overlay .tabOptions .btn {
		margin-right: 20px;
	}
	
	section.openPositionForm.overlay h2 {
		font-size: 30px;
		padding-right: 60px;
		line-height: 40px;
	}
	
	section.openPositionForm.overlay .close {
		width: 30px;
		height: 30px;
		top: 30px;
		right: 30px;
	}
	
	section.openPositionForm.overlay form .left {
		width: auto;
		float: none;
	}
	
	section.openPositionForm.overlay form .right {
		float: none;
		width: auto;
		padding-left: 0;
	}
	
	section.openPositionForm.overlay form .wpcf7-form-control-wrap {
		max-height: 240px;
	}
	
	section.imagesInBoxes.moreThan3 .grid .grid {
		margin-bottom: 0;
	}
	
	section.imagesInBoxes .item {
		position: relative!important;
		top: auto!important;
		left: auto!important;
		right: auto!important;
		bottom: auto!important;
		margin-bottom: 15px;
	}
	
	section.imagesInBoxes .item img {
		width: 100%;
	}
	
	section.imagesInBoxes.moreThan3 .grid .grid:last-child .item:last-child {
		margin-bottom: 0;
	}
	
	section.indText.cols .innerW .col,
	section.indText.cols .innerW .col:nth-child(2) {
		margin-top: 25px;
	}
	
	section.indText.cols .innerW .col:nth-child(1) {
		margin-top: 0;
	}
	
	section.indText.cols .col.noTitle h1.textTitle {
		display: none;
	}
	
	section.indText.cols .col.noTitle .freeText {
		margin-top: 0;
	}
	
	section.homeIntro .contents {
		padding: 0;
	}
	
	section.homeGrid .item .caption.tar {
		text-align: left;
	}
	section.homeGrid .item .caption.tar .arrow {
		float: none;
		margin-left: -21px;
		margin-right: 0;
	}

	section.homeGrid .item a:hover .caption.tar .arrow {
		margin-left: 0;
	}
	
	.w {
		padding: 0 25px;
	}
	
	section.headerLogo.full .logo {
		width: 191px;
		height: 40px;
	}
	
	section.header .togglerContainer .menuToggler div:nth-child(2) {
		top: 9px;
	}
	
	section.header .togglerContainer .menuToggler div:nth-child(3) {
		top: 18px;
	}
	
	section.header .togglerContainer .menuToggler {
		width: 25px;
		height: 22px;
	}
	
	section.homeIntro {
		padding-bottom: 40px;
	}
	
	section.homeIntro .contents .w .innerW .logo img {
		transform: none;
	}
	
	section.homeIntro .contents .w .innerW .weAre,
	section.bgVideo h1 {
		font-size: 24px;
		letter-spacing: -0.1px;
		line-height: 40px;
	}
	
	section.homeIntro .contents .w .innerW p {
		font-size: 18px;
		line-height: 28px;
	}
	
	section.homeGrid .item a {
		transform: none!important;
	}
	
	section.homeGrid .item .caption .excerpt {
		line-height: 24px;
	}
	
	section.homeGrid .item .caption .arrow,
	section.magazineGrid .item .caption .arrow {
		margin-top: 19px;
	}
	
	#footer .right {
		text-align: left;
		float: none;
		clear: both;
		margin-bottom: 40px;
	}
	
	#footer .right ul li.col {
		text-align: left;
	}
	
	#footer .left .logo {
		display: none;
	}
	
	#footer .logo.mobile {
		display: block;
		width: 40px;
		height: 40px;
		margin-bottom: 13px;
		position: relative;
	}
	
	#footer .right ul li.col {
		margin-top: 24px;
	}
	
	#footer .left .disclaimer .cop {
		display: block;
	}
	
	#footer .left .disclaimer .splice:nth-child(1) {
		display: none;
	}
	
	menu .contents .navContainer .logo img {
		width: 50px;
		height: 50px;
	}
	
	menu .navContainer ul li a {
		font-size: 30px;
		letter-spacing: 0.71px;
	}
	
	menu .contents .navContainer {
		padding-top: 125px;
	}
	
	#cookieBanner {
		padding: 25px 0;
	}
	
	#cookieBanner h1 {
    	font-size: 18px;
	}
	
	#cookieBanner .text {
		padding: 15px 0 20px;
		font-size: 12px;
		line-height: 1.5;
		letter-spacing: 0;
	}
	
	section.works .items .item a .image.squared {
		display: block!important;
	}
	
	section.works .items .item a .image.landscape {
		display: none!important;
	}
	
	section.works .items .item a .textContainer h2 {
		font-size: 26px;
		padding-right: 55px;
		padding-top: 6px;
	}
	/*
	section.works .items .item a .textContainer .arrow {
		bottom: 5px;
	}
	*/
	section.works .heading {
    	padding-top: 65px;
		padding-bottom: 28px;
	}
	
	section.imageAndText table,
	section.imageAndText tbody,
	section.imageAndText tr,
	section.imageAndText td {
		display: block;
	}
	
	section.imageAndText tr.mobile {
		display: none;
	}
	
	section.imageAndText table {
		margin-left: 0;
		width: 100%;
		border-spacing: 0;
	}
	
	section.imageAndText tr.mobile.title {
		font-size: 26px;
		font-weight: 700;
		line-height: 1.1;
		letter-spacing: 0.62px;
		padding-bottom: 30px;
		display: block;
	}
	
	section.imageAndText tr.mobile.text {
		display: block;
	}

	section.imageAndText .textContainer {
		display: none;
	}
	
	section.imageAndText tr.mobile.text {
		padding-top: 30px!important;
		font-size: 14px;
		line-height: 26px;
		letter-spacing: 0.33px;
	}
	
	section.imageAndText tr.mobile.text h2 {
		font-size: 20px;
	}
	
	section.imageAndText tr.mobile.text .goal {
		margin-bottom: 15px;
	}
	
	section.imageAndText tr.mobile.text .goal:last-child {
		margin-bottom: 0;
	}
	
	section.imageAndText tr.mobile.text label {
		font-size: 18px;
	}
	
	section.gallerySingleFrame .imagesWrapper {
		margin: 0 -25px;
	}
	
	section.gallerySingleFrame .navContainer {
		margin-top: 30px;
	}
	
	section.quote {
		margin: 190px 0 210px;
	}
	
	section.postInnerNav .mobile {
		display: block;
	}
	
	section.postInnerNav .heading,
	section.aboutParagraph .heading {
		padding-bottom: 4px;
		padding-top: 0;
	}
	
	section.postInnerNav .heading,
	section.aboutParagraph .heading {
		font-size: 20px;
		letter-spacing: 0.48px;
	}
	
	section.postInnerNav .heading .lineContainer .line,
	section.aboutParagraph .heading .lineContainer .line {
    	transform: translateY(-160%);
	}
	
	
	
	section.postInnerNav .col {
		text-align: left!important;
	}

	section.postInnerNav .arrow {
		display: none;
	}
	
	section.postInnerNav a .title {
		margin-bottom: 0;
		margin-top: 42px;
	}
	
	.innerWrapper.innerCommonPage .title h1 {
		font-size: 24px;
	}
	
	.innerWrapper.innerCommonPage .indText {
		font-size: 24px;
	}
	
	section.contact table .bigText {
		padding-top: 240px;
		font-size: 22px;
		line-height: 32px;
		letter-spacing: 0.57px;
		padding-bottom: 145px;
	}
	
	section.contact table .location {
		padding-top: 110px;
	}
	
	.innerWrapper.about section.aboutIntroText:nth-child(1) .freeText {
		padding-top: 150px;
	}
	
	section.aboutIntroText .freeText {
		font-size: 24px;
		line-height: 32px;
		letter-spacing: 0.57px;
	}
	
	section.aboutIntroText .freeText p {
		margin-top: 30px;
	}
	
	section.aboutParagraph .paragraph:nth-child(2) {
		margin-top: 50px;
	}
	
	section.aboutParagraph .paragraph {
		margin-top: 100px;
	}
	
	section.aboutImage .wrapper .image {
		padding-left: calc((100% / 12) * 2);
	}
	
	section.aboutImage .wrapper .overlayText {
		font-size: 24px;
		line-height: 26px;
		letter-spacing: 0.57px;
	}
	
	section.magazine .wrapper,
	section.magazine .bottom {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
	}
	
	section.magazine {
		height: auto!important;
	}
	
	section.magazine .bg {
		height: 500px;
		position: relative;
	}
	
	section.magazine .bottom .col {
		padding: 0;
		padding-top: 50px;
	}
	
	section.magazineGrid .item .caption {
		padding-top: 30px;
	}
	
	section.relatedMags .wrapper {
		height: auto!important;
	}
	
	section.relatedMags .innerW {
		margin: 0 -7.5px;
	}
	
	section.relatedMags .wrapper:after {
		content: " ";
		display: block;
		clear: both;
	}
	
	section.relatedMags .wrapper .item {
		position: relative;
		transform: none!important;
		float: left;
		display: block!important;
		opacity: 1!important;
	}
	
	section.relatedMags .wrapper .item .grid {
		margin: 0;
		display: block;
	}
	
	section.relatedMags .wrapper .item .grid .col {
		width: 210px;
		height: 210px;
	}
	
	section.relatedMags .navContainer.default {
		display: none;
	}
	
	section.relatedMags .navContainer.mobile {
		display: block;
	}
	
	.backToParentSection {
		font-size: 20px;
		letter-spacing: 0.48px;
		padding-top: 39px;
		padding-bottom: 31px;
	}
	
	section.magIndHero .contents .cat {
		font-size: 16px;
		margin-bottom: 20px;
		letter-spacing: 0.38px;
	}
	
	section.magIndHero .contents h1 {
		font-size: 30px;
		line-height: 32px;
		letter-spacing: 0.71px;
	}
	
	section.draggableGallery .item img {
		max-width: 90vw;
	}
	
	section.draggableGallery .arrows {
		padding-top: 5px;
	}
	
	section.openPositions .sectionPhrase {
		font-size: 24px;
		line-height: 29px;
		letter-spacing: 0.57px;
	}
	
	section.openPositions .sectionPhrase br {
		display: none;
	}
	
	section.openPositions.columnsWrapper .leftColumn {
		display: none;
	}
	
	section.openPositions .rightColumn .item .title span {
		position: relative;
		transform: none;
		right: auto;
		top: auto;
		padding: 0;
	}
	
	section.openPositions .rightColumn .item .line {
		display: none;
	}
	
	section.openPositions .heading, 
	section.openPositions .leftColumn ul li, 
	section.openPositions .rightColumn .item, 
	section.openPositions .rightColumn .item .pos,
	section.openPositions .spontaneous .text p {
		font-size: 18px;
	}
	
	section.openPositions .heading,
	section.openPositions .rightColumn .item,
	section.openPositions.columnsWrapper {
		padding-top: 30px;
	}
	
	section.openPositions .list .pos {
		font-size: 18px;
		line-height: 30px;
		letter-spacing: 0.43px;
	}
	
	section.openPositions .spontaneous {
		margin-top: 50px;
		margin-bottom: 10px;
	}
	
	section.openPositions .btn {
		margin-top: 20px;
	}
	
	section.openPositions .btn .default,
	section.openPositions .btn .inner {
		padding: 0 36px;
	}
	
	section.openPositions .spontaneous .text {
		position: relative;
		top: auto;
		transform: none!important;
	}
	
	section.openPositions .spontaneous .image {
		display: none;
	}
	
	section.openPosition .position h1,
	section.openPositionForm h1 {
		font-size: 24px;
		line-height: 29px;
		letter-spacing: 0.57px;
		margin-bottom: 5px;
	}
	
	section.openPosition .position {
		padding-top: 36px;
	}	
	
	section.openPosition .location {
		text-align: left;
	}
	
	section.openPosition .position .heading {
		margin-bottom: 55px;
	}
	
	section.openPosition .position .heading br {
		display: block;
	}
	
	.freeText ul li:before,
	.freeText ol li:before{
		width: 30px;
		left: -40px;
	}
	
	.freeText ul,
	.freeText ol {
		padding-left: 40px;
	}
	
	form label .wpcf7-acceptance input[type=checkbox] {
		margin-top: 1px;
	}
	
	form label span:nth-child(1):not(.wpcf7-form-control-wrap) {
		line-height: 22px;
	}
	
	.drop_uploader.drop_zone .text_wrapper i {
		display: block;
		margin: 0 0 15px 0;
	}
	
	.drop_uploader.drop_zone .text {
		font-size: 15px!important;
	}
	
	.drop_uploader.drop_zone ul.files li {
		font-size: 14px!important;
	}
	
	.drop_uploader.drop_zone ul.files li span {
		display: inline-block;
		max-width: calc(100% - 90px);
	}
	
	.form-thankyou p {
		font-size: 24px;
		line-height: 29px;
		letter-spacing: 0.57px;
		font-weight: 700;
	}
	
	.form-thankyou .btn {
		margin-top: 30px;
	}
	
	section.openPositionForm .tabOptions .btn {
		font-size: 16px;
		letter-spacing: 0.38px;
	}
	
	section.openPositionForm .tabOptions .btn .hover .inner, 
	section.openPositionForm .tabOptions .btn .default {
		padding: 0 15px;
	}

	section.openPositionForm .tabOptions {
		margin-top: 30px;
		padding-bottom: 0;
	}
	
	section.openPositionForm h1 br.mobile {
		display: block;
	}

}