/* @import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;800&display=swap'); */

/* <link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;800&display=swap" rel="stylesheet"> */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;600;900&amp;display=swap');
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&amp;display=swap');

html, body {
    height: 100%;
}
body{
    /* font-family: 'Poppins', sans-serif; */
    font-family: 'Space Grotesk', sans-serif;
    font-size:18px;
    background:#141316;
    background-image: url(../images/noisy-texture.png);
}
a{
    font-weight:300;
}
a:hover{
    text-decoration: none;
}

/* colors */
.blk{
    color:#141316;
}
.blk_85{
    color:#333234;
}
.blk_65{
    color:#5C5B5D;
}

.wht{
    color:#ffffff;
}
.wht_85{
    color:#DCDCDC;
}
.wht_65{
    color:#ADADAE;
}

/* btns */
.btn_pill{
    border:1px solid #5C5B5D;
    padding: 15px 50px;
    border-radius: 35px;
    color: white;
    font-weight:300;
    }
.btn_pill:hover{
    color: white;
}

.magnet_btn {
    display: inline-block;
    /*border:1px solid #5C5B5D;
    font-weight:300 !important;
    padding: 15px 50px;
    border-radius: 35px;
    color: white;
    background-color: transparent;*/
    transform-style: preserve-3d;
    backface-visibility: hidden;
    transition: all .5s ease;
    border-radius: 50%;
    /* padding: 15px */
}
.magnet-mouse-active {
    /* background: linear-gradient(90deg,#8086f3,#ffb9a2); */
    background: linear-gradient(24deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    animation: hue 8s linear infinite;
    -webkit-animation: hue 8s linear infinite;
    color:#141316 !important;
    font-weight:300 !important;
    border:0px;
    padding: 15px;
    border-radius: 50%;
}

.text_link, .footer_email{
    position: relative;
    display: inline-block;
}
.text_link:before, .footer_email:before{
    position: absolute;
    content: "";
    bottom: -10px;
    left: 0;
    width: 100%;
    height: 2px;
    /* background: linear-gradient(90deg,#FF1438,#FFB701); */
    background: linear-gradient(24deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    transform: scaleX(0);
    transition: transform .3s cubic-bezier(.25,.85,.57,1);
}
.text_link:hover:before, .footer_email:hover:before{
    transform: scaleX(1);
}


.follow {
  position: absolute;
  left: 0;
  top: 0;
  width: 25px;
  height: 25px;
  background-color: #f0d647;
  border-radius: 100%;
  transition: transform .1s ease;
}

@-webkit-keyframes hue {
    0% {
        filter: hue-rotate(0deg);
    }
    to {
        filter: hue-rotate(-1turn);
    }
}
.b-w-gradient{
    background: linear-gradient(137deg,#cbcbcb,#444444 50%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke: 0;
}
.ui-designer{
    /* color:transparent;
    -webkit-text-stroke:1px #5C5B5D; */
    background: linear-gradient(24deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    /* background: linear-gradient(30deg,#FF1438,#FFB701 140px, #FFB701, #FF1438 180px); */
    /* background: linear-gradient(90deg,#FF1438,#FFB701); */
    background-clip:text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke:0px;
    animation: hue 3s linear infinite;
    -webkit-animation: hue 3s linear infinite;
    height:100px;
    text-transform: uppercase;
    font-size: 65px;
}
.ui-designer:hover{
    /* background: linear-gradient(90deg,#8086f3,#ffb9a2); */
    background: linear-gradient(24deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    /* background: linear-gradient(90deg,#FF1438,#FFB701); */
    background-clip:text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke:0px;
    animation: hue 8s linear infinite;
    -webkit-animation: hue 8s linear infinite;
    /* -webkit-animation-delay: 1s;
    animation-delay: 1s; */
}

@media (max-width: 1440px){
    .ui-designer{
        font-size:90px;
        line-height: normal !important;
    }
}
@media (max-width: 1024px){
    .ui-designer{
        font-size: 62px;
        line-height: normal !important;
        height: 70px;
    }
}
@media (max-width: 375px){
    .ui-designer{
        font-size: 48px;
        line-height: normal !important;
        height: 70px;
    }
}
/* typography */

h1{
    font-family: 'Space Grotesk', sans-serif;
    font-weight:300;
    font-size:88px;
    line-height:100px;
    letter-spacing: -0.5px;
}
h2{
    font-family: 'Space Grotesk', sans-serif;
    font-size:64px;
    font-weight:300;
    line-height:80px;
    letter-spacing: -1px;
}
h3{
    font-family: 'Space Grotesk', sans-serif;
    font-size:44px;
    font-weight:300;
    line-height:60px;
    letter-spacing: -1px;
}
h4{
    font-family: 'Space Grotesk', sans-serif;
    font-size:28px;
    font-weight:300;
    line-height:40px;
    letter-spacing: 0px;
}

p, .list-inline li{
    font-size:20px;
    /* font-size:24px; */
    line-height:36px;
    font-weight:300;
    /* letter-spacing: 0.5px; */
    position: relative;    
}

@media (max-width: 1024px){
    p, .list-inline li{
        font-size:18px;
        line-height:32px;
    }
}

@media (max-width: 375px) {
    p, .list-inline li{
        line-height:28px;
        font-size: 18px;
    }
}

/* media break points */
@include media-breakpoint-down(lg) {
h3{
    font-size:28px;
}

}

.small-heading, .small-text, .small-sub-heading{
    font-family: 'Space Grotesk', sans-serif;
    position: relative;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;
    display: inline-block;
    width: 100%;
}
.small-text{
    letter-spacing:3px;
}
@media (max-width: 768px) {
    .small-text{
        letter-spacing:1px;
    }
}
.listing:before, .small-heading:before, .small-sub-heading:before{
    content: '';
    /* background: linear-gradient(90deg,#FF1438,#FFB701); */
    background: linear-gradient(68deg,#ffedd4,#ffb9a2 0px, #c6edff, #ce9ef2 60px, #ffcef3, #e9e0ed 85px, #D8FF7D, #97E7A2 100px);    
    height: 2px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 12px;
}
.listing:before{
    width: 16px;
}
.small-heading:before{
    width: 64px;
}
.small-sub-heading:before{
    width: 24px;
}
@media (max-width: 1440px) {
    h1{font-size:56px; line-height:64px;}
    h1 img{width: 35px;}
    h3{font-size:32px; line-height:48px;}
    h2{font-size:22px; line-height:30px;}
    h4{font-size:22px;}
    /* p{font-size:14px;} */
    h4{line-height:24px;}
    br{display:none;}
}

@media (max-width: 768px) {
    h1{font-size:32px; line-height:40px;}
    h1 img{width: 35px;}
    h2{font-size:26px; line-height:32px;}
    h3{font-size:22px; line-height: 32px;}
    h4{ font-size:18px;}
    
}

@media (max-width: 375px) {
    h3{font-size:20px; line-height: 32px;}
}

/* spacings */

/* margins */
.mt-xl{
	margin-top: 80px;
}
.mt-lg{
    margin-top: 80px;
}
.mt-s{
    margin-top: 40px;
}
.mt-xs{
    margin-top: 24px;
}
.mb-xl{
    margin-bottom: 160px;
}
.mb-lg{
    margin-bottom: 80px;
}
.mb-s{
    margin-bottom: 40px;
}
.mb-xs{
    margin-bottom: 24px;
}

@media (max-width: 768px) {
    .mt-xl{
        margin-top: 160px;
    }
    .mt-lg{
        margin-top: 80px;
    }
    .mt-s{
        margin-top: 40px;
    }
    .mt-xs{
        margin-top: 16px;
    }
    .mb-xl{
        margin-bottom: 160px;
    }  
}
@media (max-width: 450px) {
    p, .list-inline li {
        font-size: 16px;
        line-height: 24px;
    }
    .mt-xl{
        margin-top: 40px;
    }
    .mb-xl{
        margin-bottom: 40px;
    } 
    .mb-lg{
        margin-bottom: 40px;
    } 
}

/* padding */
.pt-xl{
    padding-top: 160px;
}
.pt-lg{
    padding-top: 80px;
}
.pt-s{
    padding-top: 40px;
}
.pt-xs{
    padding-top: 24px;
}
.pb-xl{
    padding-bottom: 160px;
}
.pb-lg{
    padding-bottom: 80px;
}
.pb-s{
    padding-bottom: 40px;
}
.pb-xs{
    padding-bottom: 24px;
}

@media (max-width: 768px) {
    .pt-xl{
        padding-top: 96px !important;
    }   
}

@media (max-width: 450px) {
    .pt-lg{padding-top: 40px;}
    .pb-lg{padding-bottom: 40px;}
}

/* positions */
.top-0{top:0;}
.bottom-0{bottom:0;}
.left-0{left:0;}
.right-0{right:0;}

.navbar{
    /* background: rgba(20,19,22,0.05); */
    /* background: linear-gradient(180deg, rgba(20,19,22,0.0), transparent); */
    /* background-image: linear-gradient(180deg,rgba(20,19,22,0.2),rgba(20,19,22,0)),url(../images/noisy-texture.png); */
    backdrop-filter: saturate(125%) blur(8px) !important;
    -webkit-backdrop-filter: saturate(125%) blur(8px) !important;
    height: 100px;
}
.navbar .container{
    max-width: 960px;
}

.nav-link{
    font-size:14px;
    font-weight: 700;
    letter-spacing: 4px;
    color: white;
    text-transform: uppercase;
    font-family: 'Space Grotesk', sans-serif;
}
.nav-link.active, .nav-link:hover{
    background: linear-gradient(30deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    /* background: -webkit-linear-gradient(left,#ff8a00,#e52e71); */
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition:ease all 0.5s;
    font-weight: 700;
    
}
.nav-seperator{
    background: linear-gradient(30deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    /* background: -webkit-linear-gradient(left,#ff8a00,#e52e71); */
    width: 10px;
    height: 2px;
}
.button_line a{
    border: 1px solid white;
    border-radius: 50px;
    color: white;
}
.casestudy_button{
    bottom:50px;
}
.gradient_text{
    background: linear-gradient(30deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    /* background: -webkit-linear-gradient(left,#ff8a00,#e52e71); */
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition:ease all 0.5s;
}
.gradient_text:hover{
    background: -webkit-linear-gradient(right,#ff8a00,#e52e71);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition:ease all 0.5s;
}
.list-inline li .nav-seperator{
    display: inline-block;
    background: white;
    vertical-align: middle;
}
.subpages_container{
    min-height: calc(100vh - 170px);
}

.photo img{
    border-radius: 32px;
}

.steps .step_counter{
    right: 24px;
    bottom: 24px;
    background-color:#5C5B5D;
    width: 48px;
    height: 48px;
    line-height: 48px;
    border-radius: 50%;
}
.steps:hover .step_counter{
    background: linear-gradient(141deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    animation: hue 8s linear infinite;
    -webkit-animation: hue 8s linear infinite;
    color: #141316 !important;
    box-shadow: 0px 20px 60px rgb(255 0 0 / 40%);
    transition: transform 0.30s ease-in-out;
}
.process_steps{
    display:inline-block;
}
.process_steps .row > .process_steps_flex_main{
    height: 100vh !important;
}
@media (max-width: 1024px) {
    .process_steps .row > .process_steps_flex_main{
        height: auto !important;
    }   
}

.process_steps .steps{
    background-color:#201F22;
    background-image: url(../images/noisy-texture.png);
    border-radius: 32px;
}

.process_steps .steps h3{
    /* font-weight: 500; */
}
.process_steps .steps:hover h3{
    background: linear-gradient(30deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    /* background: linear-gradient(30deg,#FF1438,#FFB701 140px, #FFB701, #FF1438 180px); */
    /* background: linear-gradient(90deg,#FF1438,#FFB701); */
    background-clip:text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke:0px;
    animation: hue 8s linear infinite;
    -webkit-animation: hue 8s linear infinite;
    /* font-weight: 500; */
}
.VI_colors_section .color_block span{
    height: 64px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
}
.work_thumb{
    transition: transform 0.30s ease-in-out;
}
.work_thumb:hover{
    transform: scale(0.99);
}
@keyframes banner_mockup_anim
    {
        0%{transform:translateY(0)}
        to{transform:translateY(-3%)}
    }

.work_detail_banner img.banner-bg-img{
    width: 100%;
    height: auto;
    object-fit: cover;
}

.work_detail_banner_mockup{
    animation:banner_mockup_anim 2s ease-in-out .75s infinite alternate
}
.feeling-friendly, .next-project{
    /* border-top: 2px solid #201F22 !important;
    border-bottom: 2px solid #201F22 !important; */
    background-color: #201F22;
    background-image: url(../images/noisy-texture.png);
    border-radius: 32px;
}
@-webkit-keyframes spin {
    0% { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); }
  }
  
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
.chk_work_btn_anim{
    -webkit-animation: spin 12s linear infinite;
    animation: spin 20s linear infinite;
}

.chk_my_work{
    transform: scale(1.0);
    transition: all .5s ease;
    border-radius: 50%;
}
.chk_my_work:hover{
    transform: scale(1.10);
    transition: 0.30s cubic-bezier(.57,-0.01,0,1);
    background: linear-gradient(24deg,#ffedd4,#ffb9a2 57px, #c6edff, #ce9ef2 160px, #ffcef3, #e9e0ed 190px, #D8FF7D, #97E7A2 231px);
    animation: hue 8s linear infinite;
    -webkit-animation: hue 8s linear infinite;
    padding: 15px;
    border-radius: 50%;
}
.next-project h1, .feeling-friendly h1, .text-outline{
    color: transparent;
    -webkit-text-stroke: 1px #5C5B5D;
}
.next-project a{
    font-size: 24px;
}

.abt-photo{
    max-width: 13%;
    border-radius: 50%;
}
@media (max-width: 1024px){
    .abt-photo{
        max-width: 25%;
    }
}
@media (max-width: 375px) {
    .abt-photo{
        max-width: 80%;
    }
}
