@import	'./fonts.css';

::selection { background: #9344FF; color: #fff; }

html.lenis,html.lenis body {
	height:auto
}
.lenis.lenis-smooth [data-lenis-prevent]{
	overscroll-behavior:contain
}
.lenis.lenis-stopped{
	overflow:clip
}
.lenis.lenis-smooth iframe {
	pointer-events:none
}

:root {
	--font-primary: 'Feature Deck Web';
	--font-secondary: "archivo-condensed", sans-serif;
	--font-tertiary: "neue-haas-unica", sans-serif;
}
.font-secondary {
	font-family: "archivo-condensed", sans-serif;
	font-variation-settings: "wdth" 100, "wght" 600;
}

body {
	background: #ECEBE7;
	color: #101010;
	font-family: var(--font-primary);
	font-weight: 400;
	cursor: none; 
	z-index: 1000;
	position: relative;
}
body.locked {
	overflow: hidden !important;
	height: 100vh !important;
	position: fixed;
	top: 0;
	left: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 300;
}

h1, .h1 {
/*	font-size: clamp(52px, 5.26vw + .1px, 101px);*/
	font-size: clamp(52px, 7.014vw + .1px, 101px);
	line-height: 1;
}

h2, .h2 {
	font-size: clamp(29.5px, 4.097vw + .1px, 59px);
	line-height: 1.28;
}
h3, .h3 {
	font-size: clamp(25px, 2.778vw + .1px, 40px);
	line-height: 1.14;
}
h4, .h4 {
	font-size: clamp(16px, 1.389vw, 20px);
	font-family: var(--font-secondary);
	font-weight: 700;
	text-transform: uppercase;
}
h5, .h5 {
	font-size: clamp(16px, 1.389vw, 20px);
	font-family: var(--font-primary);
	font-weight: 400;
	letter-spacing: normal;
}
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p  {
	color: #fff;
}
.text-cream h1,
.text-cream h2,
.text-cream h3,
.text-cream h4,
.text-cream h5,
.text-cream h6,
.text-cream p  {
	color: #ECEBE7;
}
p, ul, ul li {
	font-size: clamp(16px, 1.25vw, 18px);
}
.full-width, .container {
	width: 100%;
/*	max-width: 1440px;*/
	margin: 0 auto;
}
.overflow-hidden { overflow: hidden; }
.position-relative { position: relative; }
.hide {
	display: none !important;
}
.container {
	padding-top: clamp(100px, 12.604vw, 242px);
	padding-bottom: clamp(100px, 12.604vw, 242px);
/*	width: 91.666667%;*/
	width: 100%;
	padding-left: 20px;
	padding-right: 20px;
}
ul {
	list-style-type: none;
	padding-left: 0;
}
ul li:before {
	content: url(../images/svg/btn-arrow-black.svg);
	margin-right: 10px;
}

.btn {
	text-decoration: unset;
	font-size: clamp(16px, 1.389vw, 20px);
	transition: .3s ease-out;
	padding: 20px;
	position: relative;
	z-index: 10;
	text-transform: uppercase;
	font-family: var(--font-secondary);
	font-weight: 700;
	color: inherit;
	display: inline-block;
	text-underline-offset: 3px;
	font-feature-settings: 'liga' off, 'clig' off;
}
.btn:after, .btn-icon-before:before  {
	content: url(../images/svg/btn-arrow-black.svg);
	border-radius: 50px;
	border: solid 1px #000;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 23px;
	margin-left: clamp(25px, 2.083vw, 30px);
	transition: .3s ease-out;
	line-height: 0;
}
.text-white .btn {
	color: #fff;
}
.btn-icon-before:before {
	margin-left: 0;
}
.text-white .btn-icon-before:before {
	content: url(../images/svg/btn-arrow.svg);
	border: solid 1px #fff;
}
.btn span {
	font-family: var(--font-primary);
	text-transform: capitalize;
	font-weight: 400;
}
.btn:hover::after, .btn-icon-before:hover::before {
	padding-left: 10px;
}
.btn-icon-before:after { display:none; }
.btn-icon-before:before {
	margin-right: 15px;
}


.cursor-element {
   position: fixed;
   width: 80px;
   height: 80px;
   border-radius: 100%;
   pointer-events: none;
   z-index: 999999;
}
.cursor-element.cursor-element-inverted {
   mix-blend-mode: difference;	
}
.cursor-element span {
   position: fixed;
   background: transparent;
   opacity: 1;
   width: 8px;
   height: 8px;
   display: block;
   z-index: 20;
   transition: 0.62s;
   transform: translateX(-50%) translateY(-50%);
   transform-origin: top left;
   transition-timing-function: cubic-bezier(0.19, 0.58, 0.58, 0.93);
   display: none;
   
   transition: none;
}
.cursor-element span:before,
.cursor-element span:after {
	content: '';
	position: absolute;
}
.cursor-element span:before {
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	height: 100%;
	border-left: solid 2px #000;
}
.cursor-element span:after {
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	border-top: solid 2px #000;
}
 .cursor-element .cursor-glow {
    position: fixed;
    pointer-events: none;
    width: 45px;
    height: 45px;
    background: #000;
    /*border-radius: 100%;*/
    border-radius: 50%;
    z-index: 10;
    opacity: 0;
    /*transform: scale(1) translateX(-50%) translateY(-50%);*/
    transform-origin: top left;
    filter: blur(8px);
    /*transition: all 0.64s, opacity 0.6s, width 0.68s, height 0.68s, left 0s, top 0s;*/
    /*transition-timing-function: cubic-bezier(0.19, 0.58, 0.58, 0.93);*/
    /* transition-delay: 0.2s; */
    pointer-events: none;
    display: block;

    transform: translate(-50%, -50%);
    transition: none;
    z-index: 9999;
    will-change: transform, filter;

}
.cursor-element .cursor-glow.highlight {}
.cursor-element .cursor-glow.highlight.cursor-inverted {
/*	background: #6aff00;*/
/*	background: #9344FF;*/
	background: #fff;
/*	filter: blur(0) !important;*/
	mix-blend-mode: difference;
}
.cursor-element .cursor-glow.highlight.cursor-inverted-purple {
/*	background: #6aff00;*/
	background: #9344FF;
	filter: blur(10px) !important;
	mix-blend-mode: difference;
}
.cursor-element .cursor-glow.highlight.cursor-hyperlink {
    filter: blur(0);
    color: #fff;
    width: 30px;
    height: 30px;
    transition: width .3s ease, height .3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    
    transition: none;
}
.cursor-element .cursor-glow.highlight.cursor-hyperlink + span {
	display: none;
}
.cursor-element .cursor-glow.highlight.cursor-large {
   width: 220px;
   height: 220px;
   filter: blur(30px);
}
.cursor-element .cursor-glow.highlight {
   opacity: 1;
   transition-delay: 0s;
   transition: all 1s, opacity 1.24s, width 0.6s, height 0.6s, left 0s, top 0s, background-color 0s;
   transition: none;
/*   background: rgb(94, 234, 212);*/
}
.cursor-element .cursor-glow.cursor-pointer {
	width: 30px;
	height: 30px;
    background: transparent; 
    opacity: 1;
	backdrop-filter: invert(100%);
	filter: none;
}
.cursor-element .cursor-glow.cursor-pointer + span:before {
	cursor-color: #fff;
}
.cursor-element .cursor-glow.cursor-light {
	background-color: #fff;
}
.cursor-element .cursor-glow.cursor-dark {
	background-color: #000;
}
.cursor-element .cursor-glow.cursor-solid {
	filter: blur(0);
}
.cursor-element .cursor-video {
	display: none;
}
.cursor-element.video-button .cursor-video {
	display: block;
}
.cursor-element.video-button .cursor-pointer,
.cursor-element.video-button .cursor-glow,
.cursor-element.video-button .cursor-glow + span {
	display: none;
}
@media screen and (max-width: 991px) {
	body {
		cursor: auto;
	}
	.cursor-element {
		display: none;
	}
}


.sc-block {
	min-height: 100lvh;
	display: flex;
	flex-direction: column;
	position: relative;
	background: #ECEBE7;
}
.background-transition-wrapper {
	background: #ECEBE7;
	position: relative;
}
.background-transition-wrapper .sc-block {
	background: transparent;
}
.contact-section + .pin-spacer,
.background-transition-wrapper + .pin-spacer {
	pointer-events: none;
}
.above-fold {
	background: #000;
	color: #fff;
	align-items: center;
	justify-content: center;
	position: sticky;
	top: 0;
	margin-top: -74px;
    overflow: hidden;
}
.above-fold__title {
	/*max-width: 20ch;*/
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	color:inherit;
	/*font-size: 5.26vw;*/
	font-size: clamp(52px, 6.5625vw, 10000px);
	z-index: 9;
}
.above-fold__slogan {
	font-size: clamp(16px, 1.04167vw + .1px, 20px);
	font-family: var(--font-secondary);
	font-weight: 700;
	text-transform: uppercase;
	margin-top: 5lvh;
}
.above-fold__change-text {
	transition: .3s ease-in-out;
    white-space: nowrap;
    text-overflow: clip;
    overflow-x: clip;
    overflow-y: visible;
    display: inline-block;
    max-width:fit-content;
}
.above-fold__change-text.type-in {
/*	border-right: .05em solid orange;*/
	animation: 
    typing 1.5s steps(30, end),
    blink-caret .5s step-end infinite;
}
.above-fold__change-text.type-out {
/*    border-right: .05em solid orange;*/
    animation: 
        erasing 1.5s steps(30, end) forwards,
        blink-caret .5s step-end infinite;
    transition-delay: 0;
}
.above-fold__video-mask {
	position: absolute;
	object-fit: cover;
	z-index: 30;
	bottom: 0;
	width: 100%;
	max-width: 1349px;
	margin: 0 auto;
	height: auto;
	aspect-ratio: 1349 / 138;
	/* mask: url(#text-mask);
	-webkit-mask: url(#text-mask);
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: cover;
	-webkit-mask-size: cover;
	mask-position: center bottom;
	-webkit-mask-position: center bottom; */
}
.above-fold__rive-wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100lvh;
	z-index: -1;
	pointer-events: none;
}
.above-fold__rive {
	position: absolute;
    top: 0;
    left: 0;
    width: auto;
    height: auto;
    aspect-ratio: 2543 / 1080;
    min-width: 100vw;
    min-height: 100lvh;
}
.above-fold__text-block {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
@media screen and (max-width: 768px) {
	.above-fold__text-block {
		transform: translateY(-74px);
	}
}

.sc-bounce {
     animation: sc-bounce 1s cubic-bezier(0.280, 0.840, 0.420, 1) forwards;
 }
 .sc-bounce-infinite {
    animation: sc-bounce-seamless 2s ease-out infinite;
}
@-webkit-keyframes sc-bounce-seamless {
	0%   { -webkit-transform:translate(0,-20px); opacity: 0;  }
	75%  { opacity: 1;  }
	100% { -webkit-transform:translate(0,20px); opacity: 0; }
  }
  @-moz-keyframes sc-bounce-seamless {
	0%   { -moz-transform:translate(0,-20px); opacity: 0;  }
	75%  { opacity: 1;  }
	100% { -moz-transform:translate(0,20px); opacity: 0; }
  }
  @keyframes sc-bounce-seamless {
	0%   { transform:translate(0,-20px); opacity: 0;  }
	75%  { opacity: 1;  }
	100% { transform:translate(0,20px); opacity: 0; }
  }

@keyframes sc-bounce {
    0%   { transform: scaleY(.1); }
    10%  { transform: scaleY(1.3); }
    30%  { transform: scaleY(.9); }
    50%  { transform: scaleY(1); }
    /*57%  { transform: scaleY(.95); }
    98%  { transform: scaleY(1); }
    100% { transform: scaleY(1,1); }*/
}

@keyframes erasing {
    from { width: 100%; }
    to { width: 0; }
}
@keyframes typing {
  from { width: 0 }
  to { width: 100% }
}

/* The typewriter cursor effect */
@keyframes blink-caret {
  from, to { border-color: transparent }
  50% { border-color: orange }
}
.flip-out {
    transform: rotateX(90deg);
    opacity: 0;
}

.flip-in {
    transform: rotateX(0deg);
    opacity: 1;
}

body.page-template-page-contact .sc-header {
	position: absolute;
}
.sc-header {
    background: transparent;
    padding: 30px 0 14px;
	position: sticky;
    top: 0;
    left: 0;
    right: 0;
    z-index: 800;
    min-height: 0;
    color: #fff;
    mix-blend-mode: difference;
  }
  
  .sc-header__container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    padding: 0 60px;
  }
  
  .sc-header__logo-link {
    display: block;
    width: 150px;
  }
  
  .sc-header__logo {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: block;
    filter: invert(1);
    mix-blend-mode: difference;
  }

  .sc-header__supernova {
    filter: invert(1);
    mix-blend-mode: difference;
  }
  
  .sc-header__right {
    display: flex;
    align-items: center;
  }
  
  .sc-header__nav {
    display: flex;
    list-style-type: none;
    padding: 0;
    margin: 0;
  }
  
  .sc-header__nav li {
    margin-right: 14px;
	overflow: hidden;
	position: relative;
  }
  .sc-header__nav li a, a[data-cursor="cursor-hyperlink"] {
	cursor: none;
  }
  
  .sc-header__nav li:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	opacity: .7;
	background: currentColor;
  
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.525s ease;
  }
  
  .sc-header__nav li:hover:after {
	transform: scaleX(1);
	transform-origin: left;
  }
  
  .sc-header__nav li:before {
    display: none;
  }
  
  .sc-header__nav li a {
    text-decoration: none;
    color: inherit; /* inherits white, which difference inverts */
	text-shadow: 0 -1.5em currentColor;
    display: block;
	transition: transform .525s cubic-bezier(.625,.05,0,1);
	transform: translateY(100%);
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 700;
	font-family: var(--font-secondary);
  }

  .sc-header__nav li:hover a {
	transform: translateY(0);
  }

  @media screen and (max-width: 768px) {
	.sc-header__container {
		padding-left: 20px;
		padding-right: 20px;
	}
  }
  @media screen and (max-width: 550px) {
	.sc-header__supernova {
		display: none;
	}
  }
  

.help-businesses {
	position: relative;
	min-height: 0;
	padding-top: 20lvh;
	padding-bottom: 10lvh;
}
.help-businesses__container {
	/*position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;*/
}
.help-businesses__title {
	font-size: clamp(26px, 3.59vw + .1px, 69px);
}
@media only screen and (max-width: 768px) {
	.help-businesses__title {
		padding-top: 10lvh;
	}
}
@media only screen and (max-width: 480px) {
	.help-businesses__container {
		width: 100%;
		max-width: 100%;
	}
	.help-businesses h2.help-businesses__title {
		text-align: left;
		max-width: 22ch;
		margin-left: 0;
		margin-right: 0;
	}
	.help-businesses h2.help-businesses__title br {
		display: none;
	}
	.help-businesses .text-block__footnote {
		text-align: left;
		margin-top: 27px;
	}
}

.video-block {
	margin-top: -35lvh;
	align-items: center;
	justify-content: center;
	text-align: center;
	background: transparent;
/*	background: rgb(236,235,231);*/
/*	background: linear-gradient(0deg, rgba(236,235,231,1) 70%, rgba(236,235,231,.8) 80%, rgba(236,235,231,0) 100%);*/
}
.video-block__video-wrap {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}
.video-block__video {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
}
.video-block-scale-spacer {
	background: transparent;
	pointer-events: none;
	min-height: 25lvh;
	background:#101010;
}
.cursor-video__button.cursor-video__button--fixed {
	position: absolute;
    z-index: 99;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
	display: none;
	pointer-events: none;
	background: rgba(255, 255, 255, .1);
    font-weight: 300;
    width: 100%;
    max-width: 225px;
    padding: 13px 5px;
    border-radius: 50px;
    backdrop-filter: blur(10px);
    box-shadow: 1px 1px 1px rgba(255, 255, 255, .3) inset, 1px 1px 1px rgba(255, 255, 255, 0.6);
}
@media screen and (max-width: 991px) {
	.video-block {
		/* margin-top: 0; */
		margin-top: -25lvh;
	}
	.cursor-video__button.cursor-video__button--fixed {
		display: flex;
		justify-content: center;
	}
}
@media screen and (max-width: 540px) {
    .cursor-video__button.cursor-video__button--fixed {
		flex-direction: column;
        align-items: center;
    }
	.cursor-video__button.cursor-video__button--fixed .cursor-video__text {
		height: auto;
		font-size: 24px;
	}
}

/*TEXT BLOCK CSS*/
.text-block {
	align-items: center;
	justify-content: center;
}
.text-block h2 {
	max-width: 32ch;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	color:#000;
}
.text-block__footnote {
	font-family: var(--font-secondary);
	margin-top: clamp(30px, 5.83vh + .1px, 63px);
	font-size: clamp(16px, 1.25vw + .1px, 24px);
	font-weight: 700;
	text-align: center;
	text-transform: uppercase;
}
@media only screen and (max-width: 768px) {
	.text-block {
		padding: 20px;
	}
}


/*IMAGE PARALLAX BLOCK CSS*/
.pixelated-item {
	background: transparent none no-repeat center center / cover scroll;
	filter: blur(100%);
}
.img-parallax .full-width {
/*	padding-bottom: clamp(100px, 12.812vw, 246px);*/
}
.img-with-overlay-text {
	position: relative;
}
.img-with-overlay-text__title {
    /*text-align: center;
    top: 50lvh;
    transform: translateY(-50%);
    right: 0;
    left: 0;
    width: 100%;
    position: absolute;
    z-index: 1;*/
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100lvh;
/*    opacity: 0;*/
    z-index: 9;
}
.img-with-overlay-text .img {
	width: 100%;
}
.img-parallax__top-section .img-with-overlay-text__img-1 {
    text-align: center;
}
.img-with-overlay-text__img-1 {
/*	width: clamp(355px, 49.30556%, 710px);*/
	width: 49.30556%;
	padding-top: clamp(88px, 9.167vw, 176px);
}
.img-with-overlay-text__img-2 {
/*	width: clamp(324.5px, 45.069444%, 649px);*/
	width: 45.069444%;
	padding-top: 50px;
	position: relative;
}
.img-with-overlay-text__img-2 video,
.img-with-overlay-text__img-2 img {
	padding-bottom: 22px;
}
.img-with-overlay-text__img-2 video {
	width: 100%;
	height: auto;
	object-fit: contain;
}

.img-parallax__mid-section {
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.img-parallax__mid-section .img-with-overlay-text__img-1 {
/*	width: clamp(582px, 80.833vw, 1164px);*/
	width: 80.833vw;
	padding-top: clamp(50px, 8.542vw, 164px);
}
.img-parallax__mid-section .img-with-overlay-text__img-1 video {
    margin: 0 auto;
}
.img-parallax__mid-section .img-with-overlay-text__img-2 {
	align-self: flex-start;
	padding-top: 0;
	margin-top: 105px;
/*	width: clamp(300px, 38vw, 545px);*/
	width: 38vw;
}
.img-parallax__bottom-section {
	padding-top: 0;
}
.img-parallax__bottom-section .img-with-overlay-text__img-2 {
	width: clamp(300px, 41.181vw, 593px);
	width: 41.181vw;
}


@media only screen and (max-width: 768px) {
	.img-with-overlay-text__img-1,
	.img-with-overlay-text__img-2 {
		width: 100%!important;
		padding-top: 50px;
	}
}



.min-height-unset {
	min-height: unset !important;
}
.curious-people .container {
	padding-bottom: clamp(80px, 7.448vw, 143px);	
}
.creativity-connected__heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.creativity-connected__heading p {
    padding-bottom: clamp(50px, 6.25vw, 90px);
    max-width: 52ch;
}
.creativity-connected__title {
	padding-bottom: clamp(50px, 6.25vw, 90px);
}
.creativity-connected__list {
	border-top: solid 1px #000;
	gap: 107px;
}
.creativity-connected__item {
	border-bottom: solid 1px #000;
	justify-content: space-between;
	padding: 30px 0 ;
}
.creativity-connected__item-title {
	margin-bottom: 50px;
	width: clamp(250px, 29.167vw, 420px);
}
.creativity-connected__item ul {
	padding-top: clamp(30px, 6.389vw + .21px, 30px);
	padding-bottom: 30px;
}
.creativity-connected__text {
	flex: 1 1 auto;
}
.creativity-connected__item .btn-clm {	
	flex: 0 0 auto;
}
.creativity-connected__item .btn {
	text-decoration: underline;
	padding: 0;
}

@media screen and (max-width: 768px) {
    .creativity-connected__heading {
        flex-direction: column;
        align-items: flex-start;
    }
    .creativity-connected__heading p {
        max-width: unset;
    }
}
.badges {
	min-height: unset;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}
.badges .container {
	padding-top: 0;
	padding-bottom: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: clamp(20px, 5.208333333vw + .1px, 100px);
}
.badges .badge__img {
	padding: 0 10px 50px;
	max-height: 120px;
}
.marquee {
   animation: run 15s linear infinite;
}
.marquee:hover {
/*	animation-play-state: paused;*/
}
@keyframes run {
   from {
      transform: translateX(0%);
   }
   /* Magic is here. This is the width of the elem with text after rendering the page */
   to {
      transform: translateX(-1683.35px);
   }
}
@media screen and (max-width: 991px) {
	.badges .container {
		justify-content: center;
		text-align: center;
	}
	.badges .badge__img {
		padding-left: 20px ;
		padding-right: 20px ;
		margin: 0 auto;
	}
}


.fancy-block {
	overflow: hidden;
}
.fancy-links__list {
    margin: 0 auto;
}
.fancy-links {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.fancy-links__item {
	display: flex;
	align-items: center;
	font-size: 4.208vw;
	text-decoration: none;
	line-height: 1.05;
	letter-spacing: -.02em;
	position: relative;
}
a.fancy-links__item-text {
	text-decoration: none;
	text-decoration-thickness: 3px;
	text-underline-offset: .2em;
	color: inherit;
	z-index: 3;
	font-weight: 300;
	position: relative;
	transition: .3s ease;
	padding: .1em;
	line-height: 1.05;
}
a.fancy-links__item-text:after {
	/*content: '';
	display: block;
	border-bottom: solid 3px currentColor;
	transition: 1s ease;
	width: 0;
	margin: 0 auto;*/
}
.fancty-links--image-follow .fancy-links__item-image {
    position: fixed;
    transform: translate(50px, 0%);
}
.fancy-links__item-image h5 {
    font-weight: 300;
    font-size: 17px;
    line-height: 1.3;
}
.fancty-links--image-follow .fancy-links__item:hover .fancy-links__item-image {
    transform: translate(-5vw, 0%);
}
.fancy-links__item-image {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(50px, -50%);
	pointer-events: none;
	opacity: 0;
	transition: .5s ease;
/*	aspect-ratio: 545 / 658;*/
	height: auto;
/*	width: 37.847vw;*/
	width: 37.847vw;
	object-fit: cover;
	transition-delay: 0s;
	transition: transform 1s ease, opacity 1s ease;
	z-index: 4;
}
.fancy-links__item-image.fancy-links__item-image--video {
	height: auto;
	/*aspect-ratio: 16/9;*/
}
.fancy-links__item-image.fancy-links__item-image--video.fancy-links__item-image--video-portrait {
	width: 20vw;
	height: auto;
	/*aspect-ratio: 9/16;*/
}
.fancy-links__item-image.fancy-links__item-image--video.fancy-links__item-image--video-square {
	width: 30vw;
	height: auto;
	/*aspect-ratio: 1/1;*/
}
.fancy-links__item-image video {
	width: 100%;
	height: 100%;
	/*position: absolute;*/
	position: relative;
	top: 0;
	left: 0;
}
.fancy-links__item-image h4 {
	display: block;
	padding-top: 11px ;
	letter-spacing: .03em;
	font-family: var(--font-secondary);
}
.fancy-links__item:hover {
	z-index: 9;
}
.fancy-links__item:hover .fancy-links__item-text {
	text-decoration: underline;
	text-decoration-thickness: 3px;
	/*mix-blend-mode: difference;
	color:#000;
	background: #ECEBE7;*/
}
.fancy-links__item:hover .fancy-links__item-text:after {
	width: 100%;
}
.fancy-links__item:hover .fancy-links__item-image {
	transform: translate(-5vw, -50%);
	opacity: 1;
	/* transition-delay: .3s; */
}

@media screen and (max-width: 600px) {
	.fancy-links__item-image {
		display: none;
	}	
}


.background-transition-wrapper .column-text {
    z-index: 2;
}
.column-text .container {
	/* padding-top: clamp(100px, 9.792vw, 141px); */
	/* padding-bottom: clamp(100px, 9.792vw, 141px); */
	padding-top: 20lvh;
	padding-bottom: 10lvh;
	column-gap: 5%;
	align-items: flex-start;
}
.column-text__left-heading-icon {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}
.column-text__left-heading-icon:before {
	content: url(../images/svg/icon-bling.svg);
	width: 19px;
	height: 19px;
	display: inline-block;
	line-height: 0;
	margin-right: 14px;
}
.column-text__left {
	position: sticky;
	top: 100px;
}
.column-text__left p {
	margin-bottom: 20px;
	font-size: clamp(20px, 1.806vw, 26px);
}
.column-text__right {
	flex: 0 0 auto;
}
.column-text__right h2 {
	text-align: center;
	font-size: clamp(40px, 5.208vw, 75px);
	font-size: 5.208vw;
	margin-bottom: .2em;
}

@media only screen and (max-width: 768px) {
	.column-text__left {
		text-align: center;
	}
	.column-text__left-heading-icon {
		justify-content: center;
	}
	.column-text__right {
		padding-top: 50px;
	}
}


/*NEW FAQS*/
.column-text-new {
	text-align: center;
/*	max-width: 86ch;*/
	margin: 0 auto;
}
.column-text-new .column-text__left-heading-icon {
	justify-content: center;
	margin-bottom: clamp(45px, 5.926vh, 64px);
}
.column-text-new h2 {
/*	display: inline;*/
	display: block;
	font-size: clamp(45px, 3.906vw, 75px);
}
.column-text-new .img {
	display: inline-block;
	margin-bottom: -20px;
}
/*NEW FAQS*/

.footer-spacer {
	background: transparent;
	pointer-events: none;
}
.footer {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	padding-left: 40px;
	padding-right: 40px;
	overflow: hidden;
}
.footer .container {
	/*padding-top: 53px;*/
	/*padding-bottom: 0; */
	padding: 53px 0 0;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.footer__item-top {
	justify-content: space-between;
	display: flex;
}
.footer__item-top span, .footer__item-top a {
	color: #fff;
	text-decoration: none;
}
.footer__item-top a.phone,
.footer__item-top a.email {
    transition: .3s ease-out;
}
.footer__item-top a.phone:hover,
.footer__item-top a.email:hover {
    opacity: .8;
    text-decoration: underline;
}
.footer__left-item {
	flex-wrap: wrap;
	column-gap: 4.16vw;
}
.footer-new .footer__left-item {
    width: 47%;
}
.footer__item-top p {
	/*font-size: clamp(14px, 1.04vw + .1px, 18px);*/
	font-size: 16px;
	letter-spacing: .03em;
	padding-bottom: 24px;
	line-height: 1.3;
}
.footer__left-item .site-yr {
	width: 100%;
}
.footer__left-item .site-yr,
a.linkedin, a.Instagram {
	text-transform: uppercase;
	font-family: var(--font-secondary);
	/*font-size: clamp(12px, 0.9375vw + .1px, 18px);*/
	font-size: 14px;
	letter-spacing: -.02em;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	padding-bottom: 20px;
	padding-top: 24px;
	display: inline-block;
}
a.linkedin, a.Instagram {
	margin-right: 16px;
}
.footer .sc-footer__logo {
	width: 100%;
	height: auto;
	transition: none;
	transform-origin: bottom;
}
.sc-footer__logo path {
    fill: #ECEBE7;
}
/*.footer .sc-footer__logo svg path {
    fill: #fff;
    stroke-width: 0;
}*/
.footer:before {
	content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    z-index: -1;
    opacity: .6;
}
.footer__video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	z-index: -2;
}
.footer__item-mid {
	text-align: center;
}
.footer__item-mid p {
	font-size: clamp(18px, 1.04vw + .1px, 20px);
	/* font-size: clamp(12px, 0.9375vw + .1px, 18px); */
}
.footer .js-rive-canvas {
    width: 100%;
    max-width: 100%;
    height: auto;
    aspect-ratio: 3760/483;
}
.footer__item-top--mobile {
	display: none;
	padding-top: 20px;
}
.footer__item-top--mobile span.footer-socials {
	display: flex;
	flex-direction: column;
}
.footer__item-top--mobile span.footer-socials a {
	display: block;
	margin: 0;
	padding: 0;
}
.footer__item-top--mobile .footer__left-item .site-yr {
	margin: 0;
	padding: 0;
}
.footer__item-top--mobile .footer__general-enquiries {
	font-size: 14px;
	text-align: right;
	display: block;
}
@media only screen and (max-width: 768px) {
	.footer {
		padding-left: 20px;
		padding-right: 20px;
	}
	.column-text .container {
		padding-top: 10lvh;
	}
	.footer {
		/* min-height: 0;
		height: fit-content; */
		padding-bottom: 20px;
	}
	.footer .container {
		/* height: auto; */
	}
	.footer__item-top--desktop {
		display: none;
	}
	.footer__item-top--mobile {
		display: flex;
	}
	.footer__item-mid {
		/* padding-top: 10lvh;
		padding-bottom: 10lvh; */
	}
}

.carousel-img {
/*	padding-top: 13.14lvh;*/
	padding-top: clamp(100px, 12.604vw, 242px);
	min-height: unset;
	justify-content: center;
}
.carousel-img__container {
/*	padding-left: calc((100% - 945px) / 2);*/
	padding-bottom: clamp(80px, 7.917vw, 154px);
	overflow: hidden;
}
.carousel-img__container .img-wrapper {
	column-gap: 15px;
}
.img-item {
	flex: 0 0 auto;
}
.img-item img {
	height: 42.96lvh;
	width: auto;
}
@media only screen and (max-width: 768px) {
	.carousel-img__container .img-wrapper img {
		width: 100%;
		margin-bottom: 15px;
	} 
}



@media only screen and (min-width: 1440px) {
	.img-with-overlay-text__img-1 {
		padding-top: 176px;
	}
	.img-parallax__mid-section .img-with-overlay-text__img-1 {
		padding-top: 164px;
	}
}
@media only screen and (min-width: 1300px) {
	.column-text__left p {
		padding-right: 18.2vw;
	}
}
@media only screen and (min-width: 769px) {
	.btn {
		padding: 0;
	}
	.btn span {
		margin-left: 13px; 
	}
	.display-flex {
		display: flex;
	}

	.img-with-overlay-text {
		display: flex;
		justify-content: space-between;
	}
	.img-with-overlay-text__img-2 {
		padding-top: 17.5vw;
	}
	.img-parallax__mid-section .img-with-overlay-text__img-2 {
/*		margin-left: 15.694vw;*/
		margin-left: 229px;
	}
	.img-parallax__bottom-section .img-with-overlay-text__img-2 {
		padding-top: 400px;
	}
	.column-text__left {
		width: clamp(400px, 54.375vw, 783px);
	}
}

#vimeo-player-container {
	position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 900;
    background: red;
    object-fit: cover;
    object-position: center;
    display: none;
    align-items: center;
    justify-content: center;
    background: #000;
}
#vimeo-player {
	position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    background: #000;
    object-fit: cover;
    object-position: center;
    pointer-events: none;
}
.vimeo-player-header {
	background: transparent;
	padding: 14px 0;
/*	position: fixed;*/
	top: 0;
	left: 0;
	right: 0;
	min-height: 0;
	height: auto;
	z-index: 99999;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.vimeo-player-header__container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row;
	padding: 0 20px;
}
.vimeo-player-header__logo {
	width: 150px;
	max-width: 100%;
	height: auto;
	display: block;
	filter: brightness(0) invert(1);
}
.vimeo-player-header__supernova {
	filter: brightness(0) invert(1);
}
.cursor-video__button {
	display: flex;
    gap: 13px;
    font-size: 20px;
    line-height: 1;
    position: absolute;
    transform: translate(-50%, -50%);
    cursor: pointer;
}
.cursor-video:not(.playing) .cursor-video__button--pause,
.cursor-video.playing .cursor-video__button--play {
	display: none;
}
.cursor-video__text {
	font-size: 34px;
    height: 1em;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
	white-space: nowrap;
}
.cursor-video__icon {
	color: #fff;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    border: solid 1px currentColor;
}









.cursor-view-project,
.cursor-next-project {
	display: none;
    gap: 13px;
    font-size: 20px;
    line-height: 1;
    position: absolute;
    transform: translate(-50%, -50%);
    cursor: pointer;
	gap: 5px;
}
.cursor-element.view-project-button {
	/* mix-blend-mode: normal; */
}
.cursor-element.view-project-button .cursor-view-project,
.cursor-element.next-project-button .cursor-next-project {
	display: flex;
}
.cursor-element.view-project-button .cursor-glow,
.cursor-element.next-project-button .cursor-glow {
	display: none !important;
}
.cursor-view-project__text,
.cursor-next-project__text {
	font-size: 24px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
	flex: 0 0 auto;
}
.cursor-view-project__icon,
.cursor-next-project__icon {
    display: flex;
    align-items: center;
    justify-content: center;
	flex: 0 0 auto;
}
#debug {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 99999;
	background: #000;
	color: #fff;
}

/* 🎬 VIDEO LOADING OVERLAY STYLES */
.video-loading-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100lvh;
	background: #000000;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1;
	transition: opacity 0.6s ease-out;
	/* Performance optimizations */
	will-change: opacity;
	transform-style: preserve-3d;
	backface-visibility: hidden;
}

.video-loading-overlay.loaded {
	opacity: 0;
	pointer-events: none;
}

.video-loading-content {
	text-align: center;
	color: #fff;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: clamp(30px, 5vh, 60px);
}

.video-loading-progress-container {
	height: 2px;
	width: clamp(200px, 30vw, 300px);
	background: rgba(255, 255, 255, 0.2);
	position: relative;
	border-radius: 1px;
	overflow: hidden;
}

.video-loading-progress-bar {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1%;
	height: 100%;
	background: #9344FF;
	transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	border-radius: 1px;
	/* Performance optimizations */
	will-change: height;
	transform-style: preserve-3d;
	backface-visibility: hidden;
}

.video-loading-text {
	font-family: var(--font-primary);
	text-align: center;
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
@media only screen and (max-width: 768px) {
	.video-loading-text .js-rive-canvas {
		width: 63px;
		height: 88px;
	}
}

#video-loading-percentage {
	font-size: clamp(24px, 4vw, 48px);
	font-weight: 300;
	color: #fff;
	display: block;
	margin-bottom: 12px;
	/* Monospace-like spacing for consistent digit width */
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.05em;
}

.video-loading-subtitle {
	font-family: var(--font-secondary);
	font-size: clamp(12px, 1.2vw, 16px);
	font-weight: 700;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.7);
	letter-spacing: 0.1em;
	margin-top: 8px;
}

/* Smooth progress bar animation */
@keyframes progress-shimmer {
	0% {
		box-shadow: 0 0 0 rgba(151, 71, 255, 0.4);
	}
	50% {
		box-shadow: 0 0 20px rgba(151, 71, 255, 0.8);
	}
	100% {
		box-shadow: 0 0 0 rgba(151, 71, 255, 0.4);
	}
}

.video-loading-progress-bar.active {
	animation: progress-shimmer 2s ease-in-out infinite;
}

/* Hide scrollbars during loading */
.video-loading-overlay + body {
	overflow: hidden;
}

/* Mobile optimizations */
@media (max-width: 768px) {
	.video-loading-content {
		gap: clamp(20px, 4vh, 40px);
	}
}


/*CONTACT PAGE*/
.banner-text {
	text-align: center;
	position: relative;
	z-index: 1;
}
.banner-text .container {
	padding-top: clamp(120px, 23.241vh, 251px);
	padding-bottom: clamp(100px, 19.815vh, 214px);
}
.banner-text h1 {
	max-width: 15ch;
	margin: 0 auto;
}
.contact-section {
	position: relative;
	z-index: 1;
	padding-left: calc((100% - 1350px) / 2);
	padding-right: calc((100% - 1294px) / 2);
}
.contact-section .container {
	padding-top: 0;
	padding-bottom: clamp(100px, 16.019vh, 173px);
	display: flex;
	flex-direction: column-reverse;
	column-gap: 8.333333%;
}
.contact__title {
	max-width: clamp(300px, 27.963vh, 302px);
	flex: 0 0 auto;
	margin-bottom: 50px;
	margin-top: 50px;
}
.contact__title h3 {
	margin-bottom: 48px;
}
.contact__title p {
	font-size: 15px;
	margin-bottom: 33px;
}
.contact__title a {
	color: inherit;
	text-decoration: none;
}
.contact__title a:hover {
	text-decoration: underline;
}
.contact__form {
	flex: 1 1 auto;
}
.contact__form h4 {
	margin-bottom: 24px;
}
.contact__form .btns {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 20px 3.666667%;
	margin-bottom: clamp(50px, 7.593vh, 82px);
	width: 100%;
}
.btn-select {
	border: solid 1px #000;
	border-radius: 50px;
	padding: 9px 37px;
	text-decoration: none;
	color: #000;
	line-height: 1.26;
	letter-spacing: .02em;
	transition: .3s ease-out;
}
.btn-select:hover {
	color: #fff;
	background-color: rgba(151, 71, 255, 1);
	border-color: inherit;
}
.contact__form form .gform_fields {
	display: flex;
	flex: 1 1 auto;
	flex-wrap: wrap;
	margin-left: -18.5px;
	margin-right: -18.5px;
}
.contact__form .gfield.gfield--width-half {
	width: 50%;
}
.contact__form .gfield {
	width: 100%;
	padding: 0 18.5px;
	margin-bottom: 48px;
}
.contact__form .gfield.organisation, .contact__form .gfield.textarea {
	width: 100%;
}
.contact__form .gfield label {
	display: none;
}
.contact__form .gfield input, .contact__form .gfield textarea {
	width: 100%;
	background: transparent;
	border: none;
	border-bottom: solid .25px #000;
	/*font-family: var(--font-secondary);*/
	font-family: var(--font-tertiary);
	padding-top: .5em;
	transition: .3s ease;
}
.contact__form .gfield input:hover, .contact__form .gfield textarea:hover,
.contact__form .gfield input:focus, .contact__form .gfield textarea:focus {
	padding-left: 10px;
	outline: none;
	/* background: #000;
	color: #fff;
	padding-left: 1em;
	padding-right: 1em; */
}
.contact__form .gfield input {
	padding-bottom: 10px;
	/*font-size: 15px;*/
	font-size: 18px;
	color: #000;
}
.contact__form .gfield textarea {
	height: 239px;
	padding-top: 24px;
	/*font-size: 15px;*/
	font-size: 18px;
}
.contact__form .gfield input::placeholder,
.contact__form .gfield textarea::placeholder {
	color: #000;
	font-family: var(--font-tertiary);
}

.contact__form form button {
	border: none;
	background: transparent;
	text-transform: uppercase;
	font-family: var(--font-secondary);
	font-weight: 700;
	font-size: 1.25rem;
	line-height: 1.3;
	padding-right: 18.5px;
	color: #000000;
	overflow: hidden;
	display: inline-flex;
}
.contact__form form button:before {
	content: url(../images/svg/btn-arrow-black.svg);
	margin-right: 10px;
	position: relative;
	top: -2px;
}
.contact__form form button > span:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	opacity: .7;
	background: currentColor;
	display: block;
  
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.525s ease;
  }
  
  .contact__form form button:hover > span:after {
	transform: scaleX(1);
	transform-origin: left;
  }
  .contact__form form button:hover span {
	transform: translate(0);
  }
  
  .contact__form form button > span {
    text-decoration: none;
    color: inherit; /* inherits white, which difference inverts */
	text-shadow: 0 -1.5em currentColor;
    display: block;
	transition: transform .525s cubic-bezier(.625,.05,0,1);
	transform: translateY(100%);
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 700;
	font-family: var(--font-secondary);
  }

.contact__form form button:hover > span {
	transform: translateY(0);
}








h2.gform_submission_error.hide_summary {
    font-size: 16px;
    font-family: var(--font-tertiary);
    margin-bottom: 5lvh;
    color: #c42929;
	font-weight: 400;
}
.gfield_validation_message {
    font-family: var(--font-tertiary);
    color: #c42929;
    font-size: 12px;
    margin-top: 6px;
}
.gform_confirmation_message {
	color: #101010;
    font-size: 24px;
}
.contact-section .text-desktop {
    display: none;
}

@media only screen and (max-width: 767px) {
	.contact-section .contact__title {
		text-align: center;
		margin-left: auto;
		margin-right: auto;
	}
	.banner-text .container {
		padding-bottom: 30px;
	}
}
@media only screen and (min-width: 768px) {
	.contact-section .container {
		flex-direction: row;
	}
	.contact-section .text-mobile {
	    display: none;
	}
	.contact-section .text-desktop {
        display: block;
    }
	.contact__title {
		margin-top: 0;
	}
}
/*CONTACT PAGE*/



section.our-work {
    background: #000;
    color: #ECEBE7;
    /* padding: 15vh 20px 89px; */
    padding: 15vh 40px 89px;
    position: relative;
}
section.our-work .opaque-title.text-block__footnote {
	margin-bottom: 44px;
}
section.our-work .text-block__footnote {
    text-align: left;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 16px;
}
.our-work-wrapper {
    width:100%;
    margin: 0 auto;
	padding-bottom: 10lvh;
}
section.our-work h2 {
    font-size: clamp(25px, 1.875vw, 36px);
    max-width: 40ch;
    margin-bottom: clamp(50px, 9.167vh, 99px);
}
.img-work {
    margin-bottom: 33px;
    display: flex;
    flex-wrap: wrap;
    column-gap: 16px;
    justify-content: space-between;
}
.img-work__item, .img-work__item img, .img-work__item iframe {
    width: 100%;
    max-width: 100%;
}
.img-work__item {
    margin-bottom: clamp(25px, 4.63vh, 50px);  
}
.img-work__item img, .img-work__item video, .img-work__item iframe {
    overflow: hidden;
    /*border-radius: 6px;*/
    object-fit: cover;
	display: block;
}
.img-work__item-text {
    font-family: var(--font-primary);
    /* text-transform: capitalize; */
    font-weight: 400;
    font-size: 17px;
}


@media only screen and (max-width: 768px) {
	section.our-work,
	.our-work-wrapper {
		padding-bottom: 0;
	}
	section.our-work {
		padding: 15vh 20px 0px;
	}
	.img-work__item {
		margin-bottom: 70px;
	}
}
@media only screen and (min-width: 767px) {
    .img-work {
        flex-wrap: unset;
    }
}


section.creative-connected {
    /* padding: 67px 20px 20lvh; */
    padding: 67px 40px 20lvh;
    position: relative;
	z-index: 2;
    overflow-y: visible;
    overflow-x: hidden;
}
section.creative-connected .text-block__footnote {
    text-align: left;
    margin-top: 0;
    margin-bottom: 50px;
    margin-bottom: 16px;
    font-size: 16px;
}
.creative-connected-wrapper {
    width:100%;
    margin: 0 auto;
}
section.creative-connected h2 {
    max-width: 40ch;
    margin-bottom: 5.2lvh;
	font-size: clamp(25px, 2.08vw + .1px, 40px);
}
/* .creative-connected-content {
    display: flex;
    flex-direction: column;
    min-height: 100lvh;
    justify-content: center;
} */
.creative-connected-content-spacer {
    min-height: 100lvh;
}
/*==============creative-connected-v2==================*/
section.creative-connected.creative-connected-v2 .text-block__footnote,
section.creative-connected.creative-connected-v2 ul li {
    color: #fff;
}
.creative-connected__item {
    justify-content: space-between;
    padding-top: 48px;
    padding-bottom: 10lvh;
	position: relative;
    /* border-top: 0.25px solid rgba(255, 255, 255, 1); */
}
.creative-connected__item:before {
	content: "";
	position: absolute;
	top: 0; left: 0; right: 0;
	width: 100%;
	background: rgba(255, 255, 255, .2);
	height: .25px
}
.creative-connected__item-title h3 {
    font-size: clamp(20px, 2.5vw, 36px);
    margin-bottom: clamp(19px, 2.778vh, 30px);
}
.text-desc-desktop {
    display: none;
}
.creative-connected__item-content {
	font-family: var(--font-secondary);
}
.creative-connected__item-content p {
    margin-bottom: 25px;
}
.creative-connected__item-content ul li {
    line-height: 2.111111;
    font-family: var(--font-tertiary);
	display: flex;
}
p.text-desc-mobile {
    font-family: var(--font-tertiary);
}
.creative-connected__item-content ul li:before {
    content: url(../images/svg/btn-arrow.svg)
}
summary {
    position: relative;
    list-style-type: none;
}
summary::-webkit-details-marker {
	display: none;
}
summary::before {
    content: "+";
    display: inline-block;
    transition: transform 0.3s ease;
    color: #ffffff;
    position: absolute;
    right: 8px;
    bottom: 0;
    transform-origin: center;
    font-size: 24px;
    line-height: 1;
}
details[open] summary::before {
    content: "";
    width: 14px;
    height: 1px;
    background: #fff;
    margin-bottom: auto;
    top: 50%;
}


@media only screen and (min-width: 768px) {
    summary::before {
        display: inline-block;
    }
	section.creative-connected {
		padding-bottom: 0;
	}
    .creative-connected__item {
        display: flex;
		justify-content: space-between;
    }
    .creative-connected__item-title p {
        max-width: 35ch;
		font-family: var(--font-tertiary);
    }
    .creative-connected__item-content {
        max-width: 504.29px;
        min-width: clamp(400px, 26.265vw, 504.29px);
        width: 100%;
    }
    .creative-connected__item-content p {
        font-family: var(--font-tertiary);
    }
	details {
		 pointer-events: none; 
	}
	details summary {
		 cursor: default; 
	}
	details:not([open]) {
		display: block!important;
	}
	details > *, .text-desc-desktop {
		display: block !important;
	}  
	.text-desc-mobile, summary::before {
	    display: none;
	}
}
@media only screen and (max-width: 767px) {
	section.creative-connected {
		padding: 67px 20px 20lvh;
	}
    .creative-connected__item-content p br {
        display: none;
    }
    .creative-connected__item {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .creative-connected__item:last-child {
        border-bottom: 0.25px solid rgba(255, 255, 255, .2);
    }
    .creative-connected__item-content {
        padding-bottom: 20px;
    }
}
/*==============creative-connected-v2==================*/
.title-heading .slider-wrapper {
    display: flex;
    width: max-content;
}
section.creative-connected.creative-connected-v2 h2 {
	margin-bottom: clamp(75px, 13.889vh, 150px);
}
.title-heading .title-item {
    flex: none;
    inline-size: 100cqi;
}
section.creative-connected.creative-connected-v2 .text-block__footnote {
	margin-bottom: 44px;	
}
.title-heading h3 {
    font-size: clamp(25px, 1.875vw, 36px);
}
.title-heading, .ft-img, .ft-content {
    width: 100%;
    margin-bottom: 2.08vw;
    container-type: inline-size;
    display: flex;
    justify-content: flex-end;
    overflow: hidden;
}
.ft-img .slider-wrapper,
.ft-content .slider-wrapper {
    display: flex;
    width: max-content;
}
.ft-img img {
    width: 100%;
    border-radius: 6px;
    object-fit: cover;
}
.ft-img .img-item,
.ft-content .content-item,
.title-heading .title-item {
    flex: none;
    inline-size: 100cqi;
}
.ft-content p {
    margin-bottom: 29px; 
}
.ft-content ul {
    border-top: solid 1px #000;
}
.ft-content ul li {
    border-bottom: solid 1px #000;
    padding: 17px 0; 
}

@media only screen and (min-width: 767px)  {
    .ft-img-text {
        display: flex;
        justify-content: flex-start;
        column-gap: 4.71429%;
    }
    .ft-img {
        /*max-width: 648.61px;*/
        /*width: 46.329286%;*/
        max-width: 45.042vw;
    }
    .ft-content {
        /*max-width: 457px;*/
        /*width: 32.642857%;*/
        max-width: 31.736vw; 
        align-self: flex-end;
    }
}
.supercurious-way-background {
	background: #9344FF url(../images/BG_Purple_Gradient_1920x4500px.jpg) no-repeat center center / cover scroll;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.supercurious-way {
	background: #ECEBE7;
}
.supercurious-way-heading {
    text-align : center;
    /* max-width: clamp(320px, 65.278vw, 940px); */
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.supercurious-way-heading h2 {
    /*font-feature-settings: 'liga' off;*/
    /*font-family: "Messina Sans";*/
    font-family: var(--font-secondary);
    text-transform: uppercase;
    font-size: clamp(40px, 9.236vw, 133px);
    /*line-height: 1.39;*/
    line-height: 1;
    font-weight: 700;
    margin: 0 auto clamp(60px, 9.074vh, 98px); 

    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.sc-supercurious__logo {
    width: 100%;
    max-width: 100%;
    margin: 14px auto;
    text-align: center;
    height: auto;
}
.supercurious-way-heading .inline-img {
    display: inline-block;
	overflow: hidden;
	border-radius: 11px;
}
.supercurious-way-heading .inline-img svg {
    width: 100%;
    height: auto;
}
.supercurious-way-heading .inline-img.svg-1,
.supercurious-way-heading .inline-img.svg-2,
.supercurious-way-heading .inline-img.svg-3 {
    border-radius: 0;
}
.supercurious-way-heading .inline-img.svg-1 {
    width: 24.3%;
}  
.supercurious-way-heading .inline-img.svg-3 {
    width: 28.9%;
}
.supercurious-way-heading .inline-img.img-1 {
    max-width: 72.2%;
}
.supercurious-way-heading .inline-img.img-2 {
    max-width: 51.6%;
}
.supercurious-way-heading .inline-img.img-3 {
    width: 13.2%;
}
.supercurious-way-heading .inline-img img {
    border-radius: 6px;
    width: 100%;
}
.supercurious-way-heading p {
    font-size: clamp(17px, 1.389vw, 20px);
    margin: 0 auto clamp(50px, 7.315vh, 79px);
    max-width: 36ch;
    font-weight: 300;
    line-height: 1.36; 
    letter-spacing: 0.2px;
}
.supercurious-way-heading .arrow-down {
    margin: 0 auto;
    text-align: center;
}

@media only screen and (min-width: 767px) {
    .supercurious-way-heading h2 {
        letter-spacing: -5.32px;
    }
}
@media only screen and (max-width: 768px) {
	.supercurious-way-heading .inline-img {
		border-radius: 3px;
	}
}

.column-text .container.bigger-text {
    padding-top: 0!important;
}
.bigger-text .column-text-new h2 {
    font-size: clamp(35px, 7.292vw, 105px)!important;
    line-height: 1.14;
}
.bigger-text .text-block__footnote {
    margin-top: clamp(60px, 12.778vh, 138px);
    color: #ECEBE7;
}

.background-transition-wrapper .sc-blur-section {
	z-index: 3;
    position: relative;
    min-height: 100lvh;
	overflow: visible;
}
.background-transition-wrapper .sc-blur-section .h2 {
	font-size: clamp(35px, 7.292vw, 105px) !important;
}
.background-transition-wrapper .sc-blur-section .container {
	position: relative;
	z-index: 2;
}
@media screen and (max-width: 991px) {
	.background-transition-wrapper .sc-blur-section {
		background: transparent !important;
	}
}
@media screen and (max-width: 768px) {
	.background-transition-wrapper .sc-blur-section {
		min-height: 0;
	}
}

.gradient-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    overflow: hidden;
    z-index: -1;
    /* Performance optimizations */
    will-change: transform;
    transform-style: preserve-3d;
    backface-visibility: hidden;
}
.creative-connected .gradient-container {
	top: unset;
	bottom: 0;
	height: calc(100% + 50vh);
	opacity: 0;
}

.gradient-blob {
    position: absolute;
    width: 100vmax;
    height: 100vmax;
    border-radius: 50%;
    filter: blur(60px);
    opacity: 0.8;
    /* mix-blend-mode: screen; */
    /* Performance optimizations */
    will-change: transform, filter;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    contain: layout style paint;
}

.blob-1 {
    background: radial-gradient(circle at center, #9344FF 0%, transparent 50%);
    animation: float1 20s ease-in-out infinite;
    top: -50vmax;
    left: -50vmax;
}

.blob-2 {
    background: radial-gradient(circle at center, #9344FF 0%, transparent 40%);
    animation: float2 25s ease-in-out infinite reverse;
    top: -30vmax;
    right: -50vmax;
    opacity: 0.6;
}

.blob-3 {
    background: radial-gradient(circle at center, #9344FF 0%, transparent 45%);
    animation: float3 30s ease-in-out infinite;
    bottom: -50vmax;
    left: -30vmax;
    opacity: 0.7;
}

.gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(ellipse at var(--mouse-x, 50%) var(--mouse-y, 50%), 
                               rgba(151, 71, 255, 0.3) 0%, 
                               transparent 50%);
    opacity: 0.5;
    transition: background 0.3s ease;
}

@keyframes float1 {
    0%, 100% {
        transform: translate(0, 0) rotate(0deg) scale(1);
    }
    25% {
        transform: translate(30vmin, 20vmin) rotate(90deg) scale(1.1);
    }
    50% {
        transform: translate(-20vmin, 40vmin) rotate(180deg) scale(0.9);
    }
    75% {
        transform: translate(-40vmin, -10vmin) rotate(270deg) scale(1.05);
    }
}

@keyframes float2 {
    0%, 100% {
        transform: translate(0, 0) rotate(0deg) scale(1);
    }
    20% {
        transform: translate(-25vmin, 35vmin) rotate(72deg) scale(1.08);
    }
    40% {
        transform: translate(15vmin, -20vmin) rotate(144deg) scale(0.95);
    }
    60% {
        transform: translate(40vmin, 25vmin) rotate(216deg) scale(1.12);
    }
    80% {
        transform: translate(-10vmin, -30vmin) rotate(288deg) scale(0.88);
    }
}

@keyframes float3 {
    0%, 100% {
        transform: translate(0, 0) rotate(0deg) scale(1);
    }
    33% {
        transform: translate(25vmin, -25vmin) rotate(120deg) scale(1.06);
    }
    66% {
        transform: translate(-35vmin, 15vmin) rotate(240deg) scale(0.92);
    }
}

/* Additional organic motion */
.blob-1::after {
    content: '';
    position: absolute;
    top: 20%;
    left: 20%;
    width: 60%;
    height: 60%;
    background: radial-gradient(circle, #9344FF 0%, transparent 60%);
    border-radius: 50%;
    animation: pulse1 8s ease-in-out infinite;
}

.blob-2::after {
    content: '';
    position: absolute;
    top: 30%;
    left: 30%;
    width: 40%;
    height: 40%;
    background: radial-gradient(circle, #9344FF 0%, transparent 70%);
    border-radius: 50%;
    animation: pulse2 12s ease-in-out infinite reverse;
}

.blob-3::after {
    content: '';
    position: absolute;
    top: 25%;
    left: 25%;
    width: 50%;
    height: 50%;
    background: radial-gradient(circle, #9344FF 0%, transparent 65%);
    border-radius: 50%;
    animation: pulse3 10s ease-in-out infinite;
}

@keyframes pulse1 {
    0%, 100% { 
        opacity: 0.3; 
        transform: scale(1);
    }
    50% { 
        opacity: 0.7; 
        transform: scale(1.2);
    }
}

@keyframes pulse2 {
    0%, 100% { 
        opacity: 0.2; 
        transform: scale(1);
    }
    50% { 
        opacity: 0.6; 
        transform: scale(0.8);
    }
}

@keyframes pulse3 {
    0%, 100% { 
        opacity: 0.4; 
        transform: scale(1);
    }
    50% { 
        opacity: 0.8; 
        transform: scale(1.1);
    }
}

/* 🚀 Cursor Trail Canvas - OPTIMIZED for High Performance */
.cursor-trail-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100lvh;
    pointer-events: none;
    z-index: -1;
    /* 🚀 Performance optimizations for smooth cursor effects */
    will-change: contents;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    contain: layout style paint;
    /* 🚀 GPU acceleration for canvas operations */
    image-rendering: optimizeSpeed;
    image-rendering: -moz-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
}

@media (max-width: 768px) {    
    .gradient-blob {
        filter: blur(40px);
    }
}


a.arrow-button {
	position: relative;
	overflow: hidden;
	display: inline-flex;
	align-items: center;
	color: inherit;
	text-decoration: none;
}
a.arrow-button > span:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	opacity: .7;
	background: currentColor;
	display: block;
  
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.525s ease;
  }
  
  a.arrow-button:hover > span:after {
	transform: scaleX(1);
	transform-origin: left;
  }
  a.arrow-button:hover span {
	transform: translate(0);
  }
  
  a.arrow-button > span {
    text-decoration: none;
    color: inherit; /* inherits white, which difference inverts */
	text-shadow: 0 -1.5em currentColor;
    display: block;
	transition: transform .525s cubic-bezier(.625,.05,0,1);
	transform: translateY(100%);
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 700;
	font-family: var(--font-secondary);
  }
a.arrow-button {
	color: #000;
	text-decoration: none;
	font-family: var(--font-secondary);
	font-weight: 700;
	text-transform: uppercase;
}
a.arrow-button:before {
	content: url(../images/svg/btn-arrow.svg);
	margin-right: 10px;
	filter: brightness(0);
}

a.arrow-button:hover > span {
	transform: translateY(0);
}

.mini-overlap {
	position: relative;
	z-index: 2;
}


.view-project {
	position: relative;
	z-index: 1;
	display: block;
	cursor: none;
	margin-bottom: 23px;
	border-radius: 11px;
	overflow: hidden;
}
.view-project:after {
	position: absolute;
	/*z-index: 1;*/
	z-index: 0;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	transition: opacity 0.3s ease;
	/*pointer-events: none;*/
	opacity: 0;
}
.view-project:hover:after {
	opacity: .48;
}

@media screen and (min-width: 768px) {
    .view-project:after {
        pointer-events: none;
    }
}
.portrait {
    aspect-ratio: 9 / 16;
    object-fit: cover;
}
.landscape {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}
.square {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.mb-0 {
	margin-bottom: 0 !important;
}

/* ✨ SHINING TEXT EFFECTS FOR VIEW NEXT PROJECT */
.view-next-project {
	position: relative;
	display: block;
	transition: transform 0.3s ease;
}

.view-next-project a:hover {
	transform: translateY(-2px);
}

/* Shining effect for project title */
.view-next-project h2 {
	position: relative;
	overflow: hidden;
	background: linear-gradient(
		90deg,
		currentColor 0%,
		currentColor 30%,
		#9344FF 40%,
		#ffffff 50%,
		#9344FF 60%,
		currentColor 70%,
		currentColor 100%
	);
	background-size: 300% 100%;
	background-position: 300% 0;
	-webkit-background-clip: text;
	background-clip: text;
	transition: background-position 0.8s ease, text-shadow 0.3s ease;
}

.view-next-project:hover h2 {
	/*background-position: -300% 0;*/
	/*text-shadow: */
	/*	0 0 20px rgba(151, 71, 255, 0.6),*/
	/*	0 0 40px rgba(151, 71, 255, 0.4),*/
	/*	0 0 60px rgba(151, 71, 255, 0.2);*/
}

/* Shining effect for breadcrumbs */
.view-next-project__breadcrumbs li {
	position: relative;
	background: linear-gradient(
		90deg,
		currentColor 0%,
		currentColor 40%,
		#9344FF 50%,
		currentColor 60%,
		currentColor 100%
	);
	background-size: 200% 100%;
	background-position: 200% 0;
	-webkit-background-clip: text;
	background-clip: text;
	transition: background-position 0.6s ease, text-shadow 0.3s ease;
}

.view-next-project:hover .view-next-project__breadcrumbs li {
	background-position: -200% 0;
	text-shadow: 
		0 0 15px rgba(151, 71, 255, 0.5),
		0 0 30px rgba(151, 71, 255, 0.3);
}
.horizontal-player {
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: 11px;
	background: #101010;
	height: 100%;
}
.horizontal-player .sc-preview iframe {
	width: auto;
	height: 100%;
	display: block;
	object-fit: contain;
	object-position: center;
}
.sc-preview {
	position: relative;
}
.sc-full-video {
	width: auto;
	height: 100%;
	z-index: 2;
	display: none;
	object-fit: contain;
	pointer-events: auto !important;
}
.h-100 {
	height: 100% !important;
}
.h-75 {
	height: 75% !important;
}
.h-50 {
	height: 50% !important;
}
.h-40 {
	height: 50% !important;
}
.h-25 {
	height: 25% !important;
}
.gradient-background-iframe {
	position: absolute;
	z-index: -1;
	bottom: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	aspect-ratio: 2543 / 1080;
	object-fit: cover;
	transform: translate(-50%,-50%)
}
.spline-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#field_1_8 {
	display: none;
}