#hero {		
width:100%;
height:auto;
position:relative;
z-index:0;		
}
#hero.fixed-hero {
z-index:0;
position:fixed;
height:100%;
}
#hero-styles {
position: relative;
width: 100%;
height:100%;
display: block;
margin: 0 auto;
}
#hero-caption {
display: flex;
align-items: center;
justify-content:flex-start;
width: 100%;
height:100%;
padding-top:120px;
padding-bottom:120px;
margin: 0 auto;
position: relative;
box-sizing: border-box;
pointer-events:initial;	
}
#hero-caption.hero-full-caption {
height:100vh;
}
#hero-caption.text-align-center {
justify-content:center;
text-align:center;
}
#hero-caption.text-align-right {
justify-content:flex-end;
text-align:right;
}
#hero #hero-caption .inner {
display: block;
width: auto;
height: auto;
margin-top:60px;
margin-bottom:100px;
}
.show-loader #hero #hero-caption .inner {
pointer-events:none;
} .hero-title { 		
font-size: clamp(48px, 8.5vw, 130px); 
line-height: clamp(48px, 8.5vw, 130px);
font-weight: 500;
position: relative;
display:block;
width:auto;		
color:#000;
margin-top:40px;
margin-bottom:0;
letter-spacing: -0.2vw;
}
.light-content .hero-title {
color:#fff;		
}
.landing-page-title .hero-title { 
font-size: calc(1rem + 8.5vw);
line-height: calc(1rem + 8.5vw);
}
.hero-title span {
display: flex;
align-items: center;
justify-content: center;
opacity:0;
}
.hero-subtitle {
font-size: 24px;		
line-height:32px;
font-weight:400;
position:relative;
display:block;
overflow:hidden;
color:#000;
margin-top:40px;
opacity:0.6;
}
.light-content .hero-subtitle {
color: #fff;
}
.landing-page-title .hero-subtitle {
margin-top:20px;
}
.hero-subtitle span {
display:block;
opacity:0;
}
.load-next-project .hero-title span, .load-next-page .hero-title span {
transform: translateY(0px)!important;
-webkit-transform: translateY(0px)!important;
opacity:1!important;
}
.load-next-project .hero-subtitle span, .load-next-page .hero-subtitle span {
transform: translateY(0px)!important;
-webkit-transform: translateY(0px)!important;
opacity:1!important;
} #hero.has-image {
height:auto;
overflow:hidden;
}
.hero-below-caption #hero.has-image {
z-index: 2;
height: auto;
overflow: hidden;
}
#hero.has-image #hero-caption {
align-items: center;
justify-content:center;
padding-top:180px;
padding-bottom:180px;
text-align:center;
}
#hero.has-image #hero-caption .inner {
margin-top: 0px;
margin-bottom: 0px;
}
#hero.has-image .hero-title {
margin-bottom:20px;	
}
#hero.has-image .hero-subtitle {
font-size: 24px;		
line-height:32px;
margin-top:0px;
} #hero-image-wrapper {
position: relative;
width: 100vw;
height: 100vh;
z-index: 0;
margin: 0 auto;
left: 0;
top:0;
right: 0;
}
#hero-background-layer {
position:absolute;
width:100%;
height:100%;
top:0;
left:0;
z-index:0;
overflow:hidden;
}
#hero-bg-image {
background-size:cover;
position:absolute;
background-position:center center;
width:100%;
height:100%;
z-index:0;
opacity:0;
overflow:visible;
}
.load-project-page #hero-bg-image, .load-next-project #hero-bg-image, .load-project-thumb-with-title #hero-bg-image, .load-project-thumb-from-slider1 #hero-bg-image {
opacity:1!important;
-webkit-transform: scale(1.02);
transform: scale(1.02);	
} #hero-description {
position:relative;
display: table;
width: 100%;
height: auto;
padding-top:80px;
padding-bottom: 300px;
margin: 0 auto;
box-sizing: border-box;
pointer-events: initial;
opacity:0;
z-index:10;
}
#hero-description .inner {
display:block;
width:100%;
max-width:800px;
margin:0 auto;
text-align:center;
}
#hero-description p {
color:#000;
}
.light-content #hero-description p {
color: #fff;
} .hero-arrow {
width: 44px;
height: 44px;
position: absolute;
bottom: 40px;
left: 0;
right: 0;
margin: 0 auto;
cursor:pointer;
}
.hero-arrow span {
position:relative;
display:block;
opacity:0;
transform: translateY(50%);
-webkit-transform: translateY(50%);
}
@keyframes occasional-arrow-bounce {
0% { transform: translateY(3px); }
100% { transform: translateY(-3px); }
}
.hero-arrow span:after {
font: var(--fa-font-solid);
content: "\f078";
font-size: 12px;
text-align:center;
color:#fff;
line-height:20px;
width:20px;
height:20px;
position: absolute;
top: 50%;
margin-top: -14px;
left: 50%;
margin-left: -10px;
animation: occasional-arrow-bounce 0.5s infinite alternate ease-out;
}
.circle {
height: 44px;
width: 44px;
}
.background {
fill: transparent;
stroke: rgba(255, 255, 255, 0.4);
transition: all 200ms ease;
}
.foreground {
fill: transparent;
stroke-dasharray: 377;
stroke-dashoffset: 377;
stroke: #fff;
transform-origin: 50% 50%;
transform: rotate(-90deg);
transition: all 800ms ease;
}
.hero-arrow span:hover .foreground {
stroke-dashoffset: 0;
transform: rotate(90deg);
}
@keyframes arrow-bounce {
0% { transform: translateY(0); }
100% { transform: translateY(0); }
}
.hero-arrow span:hover:after {
animation: arrow-bounce 0.5s infinite alternate ease-out;
} #hero-footer {
position: absolute;
width: 100%;
padding: 30px 80px;
box-sizing: border-box;
bottom: 0;
left: 0;
line-height:60px;
color:#000;
}
.light-content #hero-footer {
color:#fff;
}
#hero-footer.has-border::after {
content:"";
position:absolute;
left:0;
right:0;
bottom:0;
width:100%;
height:1px;
opacity:0;
background-color:rgba(0,0,0,0.1);
transform: scaleX(0);
transform-origin: center;
transition: all 0.3s ease-out 0s;
}
.light-content #hero-footer.has-border::after {
background-color:rgba(255,255,255,0.15);
}
#hero-footer.has-border.visible::after {
opacity:1;
transform: scaleX(1);
}
#hero-footer:after {
content: "";
clear: both;
display: table;
}
.hero-footer-left {
float:left;
opacity:0;
cursor:pointer;
transform: translateY(20px);
-webkit-transform: translateY(20px);
}
.hero-footer-right {
float:right;
opacity:0;		
transform: translateY(20px);
-webkit-transform: translateY(20px);
}
#share {
top:-3px;
right: -10px;
position: relative;
font-size:16px;
}
#share::before {
position: absolute;
top: 0;
left: -140px;
content: attr(data-text);
width: 120px;
text-align:right;
}
#share .parallax-wrap {
width: 50px;
height: 60px;
display: flex;
position: relative;
justify-content: center;
align-items: center;
float: left;
}
.light-content a.jssocials-share-link, .dark-content a.jssocials-share-link {
color:inherit;
}
.jssocials-share-link i {
opacity:0;
}
.jssocials-share-facebook a:before {
content:"Fb";
position:absolute;
}
.jssocials-share-linkedin a:before {
content:"Li";
position:absolute;
}
.jssocials-share-twitter a:before {
content:"Tx";
position:absolute;
}
.jssocials-share-pinterest a:before {
content:"Pn";
position:absolute;
}
.jssocials-share-stumbleupon a:before {
content:"St";
position:absolute;
}
.jssocials-share-whatsapp a:before {
content:"Wa";
position:absolute;
}
.jssocials-share-viber a:before {
content:"Vb";
position:absolute;
}
.jssocials-share-email a:before {
content:"Em";
position:absolute;
}
.jssocials-share-vkontakte a:before {
content:"Vk";
position:absolute;
} .hero-gradient {
position: absolute;
height: 350px;
width: 100%;
bottom: -2px;
background-color: #000;
z-index:0;
-webkit-mask-image: linear-gradient(transparent, black 75%);
mask-image: linear-gradient(transparent, black 75%);
} #main {
position:relative;
opacity:1;
user-select: none; 
-webkit-user-select: none; 
-khtml-user-select: none; 
-moz-user-select: none; 
-ms-user-select: none;
}
.load-project-page #main, .load-next-project #main, .load-next-page #main {
opacity:1;
}
#main-content, #main-content-bg {
position:relative;
opacity:1;
z-index:10;		
-webkit-transition: all 0.4s ease-in-out 0s;
transition: all 0.4s ease-in-out 0s;
}
#main-page-content {
position: relative;
box-sizing:border-box;
opacity: 0;
width:100%;
margin:0 auto;
margin-bottom: 0;
overflow:hidden;
max-width:none;
}
#main-page-content::after {
clear: both;
content: " ";
display: table;
}
#main-page-content.project-page {
margin-bottom: calc(100vh - 120px);
}
#main-page-content.no-overflow {		
overflow:visible;		
}
#main-content.portfolio-page {		
overflow:hidden;		
}
#main-content.portfolio-page #main-page-content {
overflow:visible;
width:100%;
max-width:none;
padding:0;
} #page-nav {
height: auto;
width: 100%;
color: #000;
position: relative;
margin-bottom: 0;
opacity:0;
overflow:hidden;
}
.page-nav-wrap {
position: relative;
left: 0;
bottom: 0;
width: 100%;
height: 100%;
z-index: 3;
transform: translateY(0px);
-webkit-transform: translateY(0px);
}
.page-nav-caption {
display: flex;
align-items: center;
justify-content: flex-start;
width: 100%;
margin: 0 auto;
padding-top: 120px;
padding-bottom: 0px;
margin: 0 auto;
height: calc(100vh - 120px);
top:-20%;
opacity:0;
position: relative;
box-sizing: border-box;
}
.page-nav-caption.text-align-center {
justify-content:center;
text-align:center;
}
.page-nav-caption.text-align-right {
justify-content:flex-end;
text-align:right;
}
#page-nav .inner {
display: block;
width: auto;
height: auto;
margin-top:60px;
margin-bottom:100px;
}
.next-hero-title {
font-size: clamp(48px, 8.5vw, 130px); 
line-height: clamp(48px, 8.5vw, 130px);
font-weight: 500;
position: relative;
display:block;
width:auto;
color:#000;
margin-top:40px;
margin-bottom:0px;
letter-spacing: -0.2vw;		
}
.light-content .next-hero-title {
color:#fff;		
}
.next-hero-title span {
display:block;
}
.next-hero-subtitle {
font-size: 24px;		
line-height:32px;
font-weight:400;
position:relative;
display:block;
overflow:hidden;
color:#000;
margin-top:40px;
opacity: 0.6;	
}
.light-content .next-hero-subtitle {
color: #fff;
}
.next-hero-subtitle span {
display:block;
} #project-nav {
height: 100vh;
width: 100%;
color: #fff;
position: absolute;
margin-bottom: 0;
bottom: -100vh;
overflow:hidden;
}
#project-nav.pinned-nav-caption {
height: 200vh;
bottom: -200vh;
}
.next-project-wrap {
width: 100%;
margin: 0 auto;
height: 100%;
position: absolute;
box-sizing: border-box;
opacity:1;
z-index:10;
}
#project-nav.pinned-nav-caption .next-project-wrap {
height: 50%;
} .next-project-image-wrapper {
position: relative;
width: 100vw;
height: 100%;
top:0;
left:0;
opacity:1;
overflow:hidden;
}
.next-project-image-wrapper.temporary {
position:fixed;
}
.next-project-image-wrapper.active {
opacity:1;
}
.next-project-image {
position: absolute;
opacity:1;
top:0;		
left: 0;
right:0;
margin:0 auto;
height: 100%;
width: 100%;
}
.next-project-image-effects {
top: 5%;
clip-path: inset(0 10% round 10px);
-webkit-transform: scale(0.75);
transform: scale(0.75);
}
.load-project-thumb-with-title .next-project-image {
z-index:10;
}
.next-project-image.temporary {
top:0px!important;
}
.next-project-image.visible {
opacity:1!important;
top:0px!important;
clip-path: inset(0 0% round 0px)!important;
-webkit-transform: scale(1.02) rotate(0) translateY(0)!important;
transform: scale(1.02) rotate(0) translateY(0)!important;	
}
.next-project-image-bg {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;
background-size: cover;
background-position:center center;
background-repeat: no-repeat;
z-index:1;
-webkit-transform: scale(1);
transform: scale(1);	
}
.next-project-image.visible .next-project-image-bg {
opacity:1!important;
top: 0!important;	
} #next-project-caption {
position:absolute;
display: flex;
align-items: center;
justify-content:center;
text-align:center;
left:0;
right:0;
margin: 0 auto;
width: 100%;
height: 100%;
box-sizing: border-box;
padding-top:40px;
padding-bottom: 40px;
}
.hero-below-caption #next-project-caption {
height: auto;
padding-top:180px;
padding-bottom: 180px;
}
.next-caption-wrapper {
position:relative;
z-index:10;
top:0%;
opacity:1;
}
#project-nav .next-ajax-link-project {
display: block;
margin: 0;
width: 100%;
height: 100%;
position: absolute;
z-index: 10;
top: 0;
left: 0;
pointer-events:none;
}
#project-nav.auto-trigger .next-ajax-link-project {
pointer-events:none;
}
#project-nav.active-link .next-ajax-link-project {
pointer-events:initial;
}
.disable-ajaxload #project-nav.auto-trigger .next-ajax-link-project {
pointer-events:initial;
}
#project-nav .next-hero-title {
margin-bottom:52px;
}
#project-nav .next-hero-title div {
position:relative;
display:block;
overflow:hidden;
mask-image: linear-gradient(#0003, black 5%, black 95%, #0003 100%);
-webkit-mask-image: linear-gradient(#0003, black 5%, black 95%, #0003 100%);
}
#project-nav .next-hero-title span {
opacity:0;
}
.temporary-hero .next-hero-title span {
opacity:1!important;
-webkit-transform: translateY(0%)!important;
transform: translateY(0%)!important;
} #project-nav .next-hero-title, #project-nav .next-hero-subtitle {
color:#000;
} .light-content #project-nav .next-hero-title, .light-content #project-nav .next-hero-subtitle {
color:#fff;
}  .next-hero-counter {
position: absolute;
height: 20px;
width:30px;
text-align:right;
top:6px;
right:-45px;
overflow:hidden;
opacity:1;		
color:#000;
}
.next-hero-counter span {
position:absolute;
display:block;
font-size: 14px;
font-weight:500;
line-height:20px;
}
.change-header .next-hero-counter {
color: #000;
}
.light-content .next-hero-counter {
color: #fff;
}
.light-content .change-header .next-hero-counter {
color: #000;
}
.dark-content .change-header .next-hero-counter {
color: #fff;
} .next-hero-progress {
position: absolute;
top:0;
right:0;
height: 6px;
width: 100%;
z-index:100;
display: flex;
justify-content: center;
display:none;
}
.next-hero-progress span {
position: absolute;
height: 6px;
width: 0;
background-color: #000;
}
.change-header .next-hero-progress span {
background-color: #000;
}
.light-content .next-hero-progress span {
background-color: #fff;
}
.light-content .change-header .next-hero-progress span {
background-color: #000;
}
.dark-content .change-header .next-hero-progress span {
background-color: #fff;
} .all-works {
position: absolute;
top: 20px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: auto;
margin: 0 auto;
margin-top: 25px;
display: table;
z-index:100;
}
.all-works span, .all-works span::before {
padding:0 5px;
}
#project-nav.change-header .all-works, #project-nav.change-header .all-works .link-text {
color:#000;
}
.light-content #project-nav .all-works, .light-content #project-nav .all-works .link-text {
color:#fff;
}
.light-content #project-nav.change-header .all-works, .light-content #project-nav.change-header .all-works .link-text {
color:#000;
}
.dark-content #project-nav.change-header .all-works, .dark-content #project-nav.change-header .all-works .link-text {
color:#fff;
} .temporary-hero {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 99999;
pointer-events: none;
z-index:10;
}
.temporary-hero .outer {
width: 100%;
padding-top: 40px;
padding-bottom: 40px;
height: 100%;
position: relative;
margin: 0 auto;
box-sizing: border-box;
z-index:10;
display: flex;
align-items: center;
justify-content:center;
text-align:center;
}
.hero-below-caption .temporary-hero .outer {
height: auto;
padding-top:180px;
padding-bottom: 180px;
}
.temporary-hero .outer.text-align-center {
justify-content:center;
text-align:center;
}
.temporary-hero .outer.text-align-right {
justify-content:flex-end;
text-align:right;
}
.temporary-hero .inner {
display: block;		
}
.temporary-hero .inner .next-caption {
position: relative;
width: auto;
height: auto;
margin-top:0px;
margin-bottom:0px;
} .content-max-width {
box-sizing:border-box;
padding-left:80px;
padding-right:80px;
max-width:1320px;
}
.content-full-width {
box-sizing:border-box;
padding-left:80px;
padding-right:80px;
max-width:100%;
} @media only screen and (max-width: 1537px) {
#hero.has-image #hero-caption {
padding-top:130px;
padding-bottom: 130px;
}
.hero-below-caption #next-project-caption {
padding-top:130px;
padding-bottom: 130px;
}
.hero-below-caption .temporary-hero .outer {
padding-top:130px;
padding-bottom: 130px;
}
}
@media only screen and (max-width: 1466px) {
#hero-caption {
padding-top: 100px;
padding-bottom: 100px;
}
.page-nav-caption {
padding-top: 100px;
height: calc(100vh - 100px);
}
.hero-subtitle, .next-hero-subtitle {
margin-top:40px;
}
#hero-footer {
padding: 20px 60px;
}
.content-max-width, .content-full-width {
padding-left:60px;
padding-right:60px;
}
}
@media only screen and (max-width: 1024px) {
#hero-caption.hero-full-caption {
height:100dvh;
}
.hero-subtitle, .next-hero-subtitle {
font-size: 22px;
line-height: 30px;
margin-top:30px;
}
#hero.has-image .hero-subtitle {
font-size: 22px;
line-height: 30px;
}
#project-nav .next-hero-title {
margin-bottom:50px;
}
#hero-footer {
padding: 20px 40px;
}
.content-max-width, .content-full-width {
padding-left:40px;
padding-right:40px;
}
}
@media only screen and (max-width: 767px) {		
#hero-caption {
padding-top: 80px;
padding-bottom: 80px;
}
.page-nav-caption {
padding-top: 80px;
height: calc(100vh - 80px);
}
.hero-subtitle, .next-hero-subtitle {
font-size: 20px;
line-height: 28px;
margin-top:20px;
}
#hero.has-image .hero-subtitle {
font-size: 20px;
line-height: 28px;
}
#project-nav .next-hero-title {
margin-bottom:48px;
}
#hero-footer {
padding: 20px 30px;
}
.content-max-width, .content-full-width {
padding-left:30px;
padding-right:30px;
}
}
@media only screen and (max-width: 479px) {
#hero.has-image .hero-title {
margin-bottom: 10px;
}
.hero-subtitle, .next-hero-subtitle {
font-size: 18px;
line-height: 26px;
}
#hero.has-image .hero-subtitle {
font-size: 18px;
line-height: 26px;
}
#project-nav .next-hero-title {
margin-bottom:36px;
}
#hero-footer {
padding: 20px 20px;
}
#hero #hero-footer .button-text {
display:none;
}
.content-max-width, .content-full-width {
padding-left:20px;
padding-right:20px;
}
}