

/*
----------------------------------------------------

Global

----------------------------------------------------
*/

*,
*::before,
*::after {
  box-sizing: border-box;
  outline: none;
}

:root {
  --custom-black: #201d1d;
  --custom-yellow: #e9ae5b;
  --custom-red: #c24229;

  /* --color-background: #ffffff;
  --color-background-secondary: #F1F3F7;
  --color-main: #201d1d;
  --color-sub: rgba(var(--color-main),0.2);
  --color-primary: #4D81E7;
  --color-error: #F04848;
  --color-error-light: rgba(var(--color-error),0.2);
  --color-success: #23AC00;
  --color-success-light: rgba(var(--color-success),0.2); */
}

html{
  overflow-x: hidden;
}

/* Helper */

.mt-6 {
  margin-top: 6rem;
}

@media (max-width: 767.98px) {
  body.project .mt-6 {
    margin-top: 3rem !important;
  }
}

.mt-2 {
  margin-top: 2rem;
}

.mb-0 {
  margin-bottom: 0rem !important;
}

.mb-2 {
  margin-bottom: 2rem;
}

.mb-4 {
  margin-bottom: 4rem;
}

.desktop-full {
  display: block;
  min-height: 100vh;
  position: relative;
}

@media (min-width: 1600px) {
  .desktop-full {
    min-height: 85vh;
  }
}

@media (max-width: 991px) {
  .desktop-full {
    height: unset;
    min-height: unset;
    position: inherit;
  }
}

.mobile-hide {
  display: none;
  min-height: 0;
}

.mobile-show {
  display: block;
}

@media (min-width: 767.98px) {
  .mobile-hide {
    display: block !important;
  }

  .mobile-show {
    display: none !important;
  }
}

.sub-first {
  margin-top: 20vh;
}

.sub-last {
  margin-bottom: 20vh;
}

@media screen and (max-width:767px){
  .sub-first {
    margin-top: 18vh;
  }
  .sub-last {
    margin-bottom: 10vh;
  }
}

/*Typography*/

body {
  font-family: "Poppins", "Arial", sans-serif;
  font-size: 16px;
  line-height: 1.6;
}

@media (max-width: 767.98px){
  body{
    font-size: 14px;
  }
}

/* h1, h2, h3 {
  font-family: "Playfair Display", "Times New Roman", serif;
  color: #201d1d;
} */

h1 {
  font-family: "Playfair Display", "Times New Roman", serif;
  font-size: 4rem;
}

h2 {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 600;
  letter-spacing: 2px;
  font-size: 1.5rem;
}

body.project h2 {
  margin-top: 0 !important;
  font-size: 2.5rem;
}

h3 {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 400;
  margin-bottom: 4px;
}

.sub-title {
  color: var(--custom-red);
  font-size: 1rem;
  margin-top: 0;
  letter-spacing: 2px;
  font-weight: 600;
  display: block;
  position: relative;
  font-style: italic;
  font-family: "Playfair Display", "Times New Roman", serif;
}

@media (max-width: 767.98px) {
  h1 {
    font-size: 2.5rem;
    line-height: 1.2;
  }
 
  body.project h2 {
    font-size: 1.2rem;
  }

  body:not(.project) p.intro {
    font-size: 1.2rem !important;
  }

  button.learn-more .button-text {
    font-size: 1rem;
  }

  .sub-title {font-size: 0.75rem;}
}

@media (max-width: 479.98px) {
  h1 {
    font-size: 2rem;
  }

  body.project h2 {
    font-size: 1rem;
  }

  .contact-detail h2 {
    font-size: 0.8rem;
    margin-top: 0.5rem;
  }

  p.intro {
    font-size: 1rem !important;
  }
}

.sub-title hr{
  position: absolute;
  top: .5rem;
  left: -2.5rem;
  margin-top: 0;
  margin-bottom: 0;
  display: inline-block;
  vertical-align: middle;
  border-top: .1rem solid;
  height:0;
  width: 2rem;
  border-color: var(--custom-red);
  border-width: 0.8px;
}

.sub-title + h1 {
  margin-top: 1.5rem;
}

p.intro {
  font-size: 1.5rem;
  line-height: 1.8;
}

a {
    text-decoration: none;
}

/* Custom Cursor */

.cursor {
  z-index: 1000;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  opacity: 0;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, background-color 0.3s, width 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), height 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  width: 24px;
  height: 24px;
  background-color: var(--custom-yellow);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
}

.cursor div {
  overflow: hidden;
}

.cursor span {
  display: inline-block;
  transition: 0.6s;
  transform: translateY(100%);
  color: white;
}

.cursor.active {
  width: 86px;
  height: 86px;
}

.cursor.active span {
  transform: translateY(0%);
  transition-delay: 0.25s;
}

.cursor.hidden {
  opacity: 0 !important;
}

/* Swipe Link */

a.swipe-text {
  text-decoration: none;
  position: relative;
  z-index: 2;
  color: var(--custom-black);
  cursor: pointer;
}

a.swipe-text:hover:before {
  width: calc(100% + 1rem);
}

a.swipe-text:before {
  z-index: -1;
  height: 10px;
  width: 0%;
  background: var(--custom-yellow);
  content: "";
  position: absolute;
  bottom: 3px;
  left: -8px;
  transition: all 0.4s cubic-bezier(0.7, 0, 0.3, 1);
}

/* Back Button */
.mobile-show.back {
  display: flex;
}

.mobile-show.back img {
  width: 1rem;
  height: auto;
}

.mobile-show.back a {
  font-size: 0.8rem;
}

/* Underline Link */

.link-underline {
  display: inline-block;
  position: relative;
  padding-bottom: 4px;
  transition: all 0.2s linear;
  text-decoration: none;
  color: var(--custom-black)；
}

.link-underline:before {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  height: 2px;
  width: 100%;
  transition: width 0s ease;
}

.link-underline:after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 2px;
  width: 100%;
  background: var(--custom-black);
  transition: width 0.5s ease;
}

.link-underline:hover:before {
  width: 0%;
  background: var(--custom-black);
  transition: width 0.5s ease;
}

.link-underline:hover:after {
  width: 0%;
  background: transparent;
  transition: width 0s ease;
}

/* Learn More Button */

button.learn-more {
  position: relative;
  display: inline-block;
  cursor: pointer;
  outline: none;
  border: 0;
  vertical-align: middle;
  text-decoration: none;
  background: transparent;
  padding: 0;
  font-size: inherit;
  font-family: inherit;
}

button.learn-more {
  width: 12rem;
  height: auto;
}

button.learn-more .circle {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: relative;
  display: block;
  margin: 0;
  width: 3rem;
  height: 3rem;
  background: #0f1312;
  border-radius: 1.625rem;
}

button.learn-more .circle .icon {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #fff;
}

button.learn-more .circle .icon.arrow {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  left: 0.625rem;
  width: 1.125rem;
  height: 0.125rem;
  background: none;
}

button.learn-more .circle .icon.arrow::before {
  position: absolute;
  content: "";
  top: -0.25rem;
  right: 0.0625rem;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 0.125rem solid #fff;
  border-right: 0.125rem solid #fff;
  transform: rotate(45deg);
}

button.learn-more .button-text {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0.75rem 0;
  margin: 0 0 0 1.85rem;
  color: #0f1312;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
  text-transform: uppercase;
}

button.learn-more:hover .circle {
  width: 100%;
}

button.learn-more:hover .circle .icon.arrow {
  background: #fff;
  transform: translate(1rem, 0);
}

button.learn-more:hover .button-text {
  color: #fff;
}

/* Top Nav  */

.navbar {
  position: fixed;
  z-index: 99;
  top: 0;
  right: 0;
  left: 0;
  padding: 1rem;
  transform: translateY(0);
  transition: transform 200ms ease-out;
}

.navbar.scrolled {
  transform: translateY(-100%);
  transition-delay: 200ms;
}

.navbar.reveal {
  transform: translateY(0);
  transition-delay: 200ms;
}

.navbar-nav {
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style: none;
}

.navbar-item {
  display: block;
}

.navbar-item a {
  font-weight: 500;
  letter-spacing: 2px;
}

.navbar-item.logo {
    width: 2rem;
    height: auto;
}

@media (max-width: 767.98px) {
  .navbar-item a {
    font-size: 12px;
  }

  .navbar-item.logo {
    width: 1rem;
    height: auto;
  }

  .navbar {
    padding: 1.6rem 1rem;
  }
}

/* Mobile Nav */

.navbar.mobile-show {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2rem 1.5rem;
  z-index: 9999;
}

.navbar.mobile-show img {
  height: 2.5rem;
  width: auto;
}

.burger_btn{
  background-color:transparent;
  border:0;
  padding:0px;
  cursor:pointer;
}

.btn__line{
  height:2px;
  width:32px;
  display:block;
  background-color:#292929;
  transition: all 0.5s;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  position: relative;
}

.btn__line:nth-child(1){
  left:-4px;
}

.btn__line:nth-child(2){
  left:4px;
}

.btn__line:nth-child(3){
  left:-4px;
}

.btn__line + .btn__line{
  margin-top:6px;
}

.btn:hover .btn__line, .btn--open .btn__line{
  left:0px;
}

.btn--open .btn__line{
  background-color:#fff;
}

.nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
  visibilty: hidden;
  transition: all 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  opacity: 0;
  display: flex;
  flex-direction: row;
  -webkit-transition: all 0.8s cubic-bezier(0.77, 0, 0.175, 1);
  -moz-transition: all 0.8s cubic-bezier(0.77, 0, 0.175, 1);
  -ms-transition: all 0.8s cubic-bezier(0.77, 0, 0.175, 1);
  -o-transition: all 0.8s cubic-bezier(0.77, 0, 0.175, 1);
  transition: all 0.8s cubic-bezier(0.77, 0, 0.175, 1);
}

.nav__item--hover{
  opacity: 0.25;
}

.full-menu {
  z-index: 999;
  position: fixed;
  top:0;
  width: 100%;
  height:0;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
  -webkit-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
  -moz-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
  -ms-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
  -o-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
}

.full-menu:before, .full-menu:after{
  content: '';
  height: 0;
  position: fixed;
  top:0;
  width: 100%;
  height: 0;
}

.full-menu:before{
  z-index: -2;
  background-color:#333;
  transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -webkit-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -moz-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -ms-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -o-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
} 

.full-menu:after{
  z-index: -1;
  background-color:#0f1312;
  transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
  -webkit-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
  -moz-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
  -ms-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
  -o-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) ;
}

.menu--open:before, .menu--open:after{
  height: 100%;
}

.menu--open:before{
  transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1);
  -webkit-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1);
  -moz-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1);
  -ms-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1);
  -o-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1);
} 

.menu--open:after{
  transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -webkit-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -moz-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -ms-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -o-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
}

.menu--open{
  height:100%;
  transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -webkit-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -moz-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -ms-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -o-transition: height 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
}

.nav__item {
  padding: 0 20px;
  visibility: hidden;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
}

.menu--open .nav__item{
  visibility: visible;
}

.menu--open .nav__list{
  visibilty: visible;
  opacity: 1;
  -webkit-transition: all 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -moz-transition: all 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -ms-transition: all 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  -o-transition: all 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
  transition: all 0.9s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;
}

.nav__link {
  text-decoration: none;
  color: #fff;
  font-size: 30px;
  letter-spacing: 1px;
}

.nav__item:hover {
    transform: scale(1.1, 1.1);
}

.nav__item:hover .nav__link{
  font-weight:700;
}

.nav__item-not-hover{
  opacity:0.3;
}

@media screen and (max-width:767px){
  .nav__list{
    flex-direction:column;
    text-align:center;
  }
  .nav__item{
    padding:8px 0;
  }
}

@media screen and (max-width:480px){
  .nav__link{
    font-size:26px;
  }
}

/*scroll sign*/

.scroll-wrapper {
  z-index: 3;
  position: fixed;
  left: 46px;
  bottom: 90px;
  font-size: 9px;
}

.scrollBox {
  position:fixed;
  width: 2px;
  height: 50px;
  overflow:hidden;
  bottom: 50px;
  left: 46px;
}

@media (max-width: 479.98px) {
  .scroll-wrapper, .scrollBox {
    left: 6px;
  }

}

.scrollBox:after {
  content:"";
  position: absolute;
  top: -50px;
  height: 50px;
  width: 4px;
  background: var(--custom-red);
  animation:scrollDrive 2s ease infinite;
}

@keyframes scrollDrive {
  0% {
    top: -50px;
  }
  50% {
    top: 50px;
  }
  100% {
    top: 50px;
  }
}

@keyframes scrollDrive-horizontal {
  0% {
    left: -50px;
  }
  50% {
    left: 50px;
  }
  100% {
    left: 50px;
  }
}

.vertical-text {
    margin: 0 auto 2rem;
    width: 0;
    word-wrap: break-word;
    line-height: 1.4;
    text-align: center;
    text-transform: uppercase;
    font-family: sans-serif;
    opacity: 0.5;
    padding-top: 0;
    margin-top: 0;
}

.scrollBox-horizontal {
  position: relative;
  height: 2px;
  width: 30px;
  overflow: hidden;
  left: 10px;
  vertical-align: middle;
  display: inline-block;
}

.scrollBox-horizontal:after {
  content:"";
  position:absolute;
  height:3px;
  width:30px;
  left:-30px;
  background: var(--custom-red);
  animation:scrollDrive-horizontal 2s ease infinite;
}

/* Scroll Text Reveal */

.tt-text-reveal .tt-tr-line {
	background: linear-gradient(to right, #201d1d 50%, #edecec 50%);
	background-size: 200% 100%;
	background-position-x: 100%;
	color: transparent;
	background-clip: text;
	-webkit-background-clip: text;
}

/* Swipe Block */

.revealIn{
  overflow: hidden;
  display: block;
  position: relative;
}

.revealIn::before,
.revealIn::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    animation-duration:1.5s;
    animation-timing-function: cubic-bezier(.75,0,.15,1);
    animation-fill-mode: forwards;
}

.revealIn::before{
    background: var(--bg-color);
    animation-name: reveal-before;
    transform: translateX(0);
    animation-delay:.5s;
}

.revealIn::after{
    background: var(--custom-yellow);
    animation-name: reveal-after;
    transform: translateX(-101%);
}

@keyframes reveal-after{
    0% {transform: translateX(-100%)}
    100% {transform: translateX(101%);}
}

@keyframes reveal-before{
    0% {transform: translateX(0)}
    100% {transform: translateX(200%);}
}

/* Scroll Block Reveal */
.block.scroll {
  position: relative;
  opacity: 0;
}

/*
----------------------------------------------------

Homepage

----------------------------------------------------
*/

/* Layered Parallax */

.items {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 85vh;
  overflow: visible;
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

.items::-webkit-scrollbar {
  display: none;
}

@media (min-width: 1600px) {
  .items {
    margin-top: 20vh;
    height: 60vh !important;
  }

  .items__inner {
    height: 60vh !important;
  }

  .hp-right {
    padding-top: 10vh;
  }
}

.items__inner {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) !important;
  width: 100%;
  height: 85vh;
}

.items__layer .items__item {
  position: absolute;
  box-shadow: 0 32px 40px -20px rgba(0, 0, 0, 0.25);
}

.items__layer .items__item:after {
  content: attr(data-title);
  position: absolute;
  line-height: 20px;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 2px;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  visibility: hidden;
  opacity: 0;
}

.items__layer .items__item:hover:after {
  visibility: visible;
  opacity: 1;
}

.items__layer:nth-child(1) {
  background-color: #b7302d;
  border-radius: 300px;
  width: 300px;
  height: 410px;
  left: 120px !important;
  top: 140px !important;
}

.items__layer:nth-child(2) {
  top: 80px!important;
  left: 80px !important;
}

.items__layer:nth-child(2) img {
  max-width: 300px;
  height:auto;
}

.items__layer:nth-child(3) a{
  height: 100vh;
  font-family: "Playfair Display", "Times New Roman", serif;
  font-weight: 600;
  font-style: italic;
  font-size: 130px;
  color: var(--custom-yellow);
  white-space: nowrap;
  overflow: hidden;
  text-decoration: none;
}

.items__layer:nth-child(3) a span{
  letter-spacing: 5px;
}

/* About */

.about p {
  max-width: 400px;
}

.row.about + .row.about {
  margin-top: 4rem;
}

/* About Accordion */
.accordion {
  /* border-top: 1px solid #cfcfcf;
  border-bottom: 1px solid #cfcfcf; */
  list-style: none;
  padding-inline-start: 0;
}

.accordion li {
  border-bottom: 0.5px solid #cfcfcf;
  position: relative;
}

.accordion li:last-child {
  border-bottom: none;
}

.accordion li p {
  display: none;
  padding: 12px 1rem;
}

.accordion a {
  width: 100%;
  display: block;
  cursor: pointer;
  line-height: 3;
  text-indent: 1rem;
  user-select: none;
}

.accordion a.active {
  font-weight: 500;
}

.accordion a:after {
  width: 8px;
  height: 8px;
  border-right: 1px solid #b7b8b7;
  border-bottom: 1px solid #b7b8b7;
  position: absolute;
  right: 1rem;
  content: " ";
  top: 17px;
  transform: rotate(-45deg);
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.accordion p {
  padding: 1rem;
}

a.active:after {
  transform: rotate(45deg);
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
} 

/* Horizontal Scroll Section */

@media (max-width: 992px) {
  .horizontal-scroll-section {
    display: none !important;
  }
}

.horizontal-scroll-section {
  position: relative;
  min-height: 100vh;
  opacity: 0;
  transition: 0.2s opacity;
}

.trigger {
  position: absolute;
}

.trigger--one {
  left: 0;
}

.scene {
  position: absolute;
  height: 100vh;
  top: 0;
  left: 0;
  right: 0;
}

.scene--active {
  position: fixed;
}

.scene--ended {
  position: absolute;
  bottom: 0;
  top: auto;
}

.horizontal-scroll-section img {
  display: block;
  height: 65%;
  width: auto;
  border-radius: 40px;
  box-shadow: 12px 40px 40px rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: 12px 40px 40px rgba(0, 0, 0, 0.25);
  transition: ease-in-out .3s;
}

.horizontal-scroll-section img:hover {
  box-shadow: none;
  cursor: pointer;
}

.horizontal-scroll-section--init {
  opacity: 1;
}

.horizontal-scroll-section__content {
  display: flex;
  align-items: center;
}

.horizontal-scroll-section__content-wrapper {
  display: flex;
  height: 100%;
  align-items: center;
  position: relative;
}

.horizontal-scroll-section__content-section {
  position: relative;
  /* min-width: 60vw; */
  text-align: center;
  padding: 0 40px;
  height: 100%;
  display: flex;
  align-items: center;
}

/* Mobile Homepage Portfolio */


.mobile-show.swipe-text.showme,
.portfolio.mobile-show .swipe-text.showme {
  display: block;
  text-align: center;
  max-width: 140px;
  margin-top: 1rem;
  margin-left: auto;
  margin-right: auto;
  font-size: 0.75rem;
}

/* Homepage Contact Section */

.contact.hp {
  background: var(--custom-black);
}

.contact.hp .sub-title,
.contact.hp p,
.contact.hp a {
  color: white;
}

.contact.hp h1 {
  margin-top: 0;
}

.contact a.swipe-text {
  font-size: 1.5rem;
  line-height: 1.8;
}

.contact.hp h1.mobile-hide {
  color: white;
}

.contact.hp .tt-text-reveal .tt-tr-line {
	background: linear-gradient(to right, #FFF 50%, #333 50%);
  background-size: 200% 100%;
	background-position-x: 100%;
	color: transparent;
	background-clip: text;
	-webkit-background-clip: text;
}

.contact.hp {
  padding: 10vh 0 0;
}

.contact.hp {
  border-radius: 40px 40px 0 0;
}

@media (max-width: 992px) {
  .contact.hp {
    border-radius: 24px 24px 0 0;
  }
}

@media (max-width: 767.98px) {
  .contact.hp a.swipe-text {
    font-size: 1rem;
  }
}

.copyright-footer > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  border-top: 1px solid white;
  margin-top: 5vh;
  padding: 2rem 0;
}

.copyright-footer img {
  height: 2.5rem;
  width: auto;
}

@media (max-width: 479.89px) {
  .copyright-footer img {
    height: 1.5rem !important;
  }
}

.copyright-footer span {
  font-weight: 400;
  color: white;
}

/* horizontal scroll text */

.hscroll {
  font-size: 18em;
  font-weight: 900;
  letter-spacing: -0.05em;
  line-height: 1;
  opacity: 0.055;
  font-family: "Poppins", "Arial", sans-serif;
}

/* rotating text */

@keyframes rotate {
  100% {
      transform: rotate(1turn);
  }
}

.ring-text {
  overflow: hidden;
}

.contact.hp .ring-text {
  position: absolute;
  right: 0;
  top: 240px;
}

.contact.hp .rotating-text {
  fill:white;
}

.rotating-text {
  font-family: "Playfair Display", "Times New Roman", serif;
  animation: rotate 2.5s linear infinite;
  transform-origin: 50% 50%;
  transition: 1s fill;
}

.rotating-text:hover {
  animation-play-state: paused;
  fill: lightgray;
  cursor: pointer;
}

.container.mobile-show .ring-text {
  transform: scale(0.5);
  position: absolute;
  /* top: -110px; */
  top: -90px;
  left: -112px;
}

@media (max-width: 1200px) {
  .contact.hp .ring-text {
    right: 80px;
  }
}

/*
----------------------------------------------------

Work

----------------------------------------------------
*/

@media (max-width: 479.89px) {
  body.work .container{
    overflow-x: hidden;
  }
}


.work-wrap {
  cursor: pointer;
  margin-bottom: 6rem;
}

.work-wrap img {
  transition: ease-in-out .3s;
  border-radius: 24px;
  max-width: 100%;
  box-shadow: 16px 16px 40px rgba(0, 0, 0, 0.20);
  -webkit-box-shadow: 16px 16px 40px rgba(0, 0, 0, 0.20);
}

.work-wrap:hover img {
  box-shadow: none;
}

.work-wrap:hover a.swipe-text:before {
  width: calc(100% + 1rem);
}

.work-wrap .title {
  margin-top: 1rem;
  margin-bottom: 1rem;
  font-weight: 600;
  font-size: 1.5rem;
}

@media (max-width: 767.98px) {
  .work-wrap{
    margin-bottom: 3rem;
  }

  .work-wrap .title {
    margin-top: 0.8rem;
    margin-bottom: 0.8rem;
    font-size: 1.2rem;
  }
}

.tag {
  font-size: 0.75rem;
  border-radius: 1rem;
  padding: 4px 12px;
  border: 1px solid var(--custom-black);
}

.tag + .tag {
  margin-left: 0.5rem;
}

.playground-entry {
  max-width: 800px;
  text-align: center;
  margin: 12rem auto 10rem;
  position: relative;
}

.playground-entry img {
  width: 40vw;
  max-width: 300px;
  z-index: -1;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Parallax Background Image */

.parallax-img {
  height: 40vh;
  width: 100%;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (max-width:767.98px) {
  .parallax-img {
    height: 12vh;
  }
}

.parallax-img.work {
  background-image: url('image/about-photo.jpg');
  margin-bottom: -2.5rem;
}

/*
----------------------------------------------------

Project Detail

----------------------------------------------------
*/

.with-radius, .with-radius img{
  border-radius: 24px;
}

@media (max-width: 767.98px) { 
  .with-radius, .with-radius img{
    border-radius: 12px !important;
  }
}

.project-overview ul {
  list-style-type: none;
}

.project-overview ul li {
  margin-bottom: 1rem;
}

.project-overview ul li:last-child {
  margin-bottom: 0;
}

.project-overview ul small {
  display: block;
  opacity: 0.6;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}

.project-overview ul span {
  display: block;
  /* text-transform: uppercase; */
  font-size: 80%;
}

@media (max-width: 992px) { 

  .project-overview ul {
    display: flex;
    padding-inline-start: 0;
    vertical-align: top;
    /* justify-content: space-between; */
    /* padding-right: 6rem; */
    border-top: 1px solid #cfcfcf;;
    margin-top: 2rem;
    padding-top: 2rem;
  }

  .project-overview ul li {
    width: 33%;
  }
}

img.project-showcase,
.project-showcase img {
  width: 100%;
  height: auto;
}

.project-showcase.page {
  border: 1px solid #dbdce8;
  box-shadow: 10px 10px 50px 3px rgba(0, 0, 0, 0.1);
}

.page-w-wrap .project-showcase.page {
  box-shadow: 2px 2px 20px 3px rgba(0, 0, 0, 0.1)!important;
  /* border-radius: 12px !important; */
}

.gif-bg {
  padding: 40px 16vw;
  background: #e3e8f3;
}


/* Image Swipe */

.image-swipe {
  display: block;
  overflow: hidden;
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(150px);
          transform: translateY(150px);
  transition: opacity .35s ease,transform 350ms ease,-webkit-transform 350ms ease;
}

.image-swipe img {
  width: 100%;
}

.image-swipe.is-visible {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.image-swipe.is-visible:before {
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
}

.image-swipe:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f6f6f6;
  content: ' ';
  -webkit-transform-origin: right center;
          transform-origin: right center;
  -webkit-transition: -webkit-transform 320ms cubic-bezier(0.55, 0, 0.095, 0) 0.3s;
  transition: -webkit-transform 320ms cubic-bezier(0.55, 0, 0.095, 0) 0.3s;
  transition: transform 320ms cubic-bezier(0.55, 0, 0.095, 0) 0.3s;
  transition: transform 320ms cubic-bezier(0.55, 0, 0.095, 0) 0.3s, -webkit-transform 320ms cubic-bezier(0.55, 0, 0.095, 0) 0.3s;
}

.image-swipe-2 {
  height: 40vh;
  /* width:100%;
  position: relative;
  margin: 0 auto;
  overflow: hidden; */
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

body.bbvg .image-swipe-2{
  background-image: url('image/work/Big-Brothers/bb-cover.jpg');
}

body.bl .image-swipe-2{
  background-image: url('image/work/Bike-Locker/bl-cover.jpg');
}

body.bk .image-swipe-2{
  background-image: url('image/work/Breakie/bk-cover.jpg');
}

body.ck .image-swipe-2{
  background-image: url('image/work/Cathay-Kids/kd-cover.jpg');
}

body.cq .image-swipe-2{
  background-image: url('image/work/Chongqing/er-cover-mobile.jpg');
}

body.gg .image-swipe-2{
  background-image: url('image/work/Go-Groovy/gg-cover.jpg');
}

body.kf .image-swipe-2{
  background-image: url('image/work/Knives-Forks/kf-cover.jpg');
}

body.bb .image-swipe-2 {
  background-image: url('image/work/Blue-Box/bb-cover.jpg');
}

body.ds .image-swipe-2 {
  background-image: url('image/work/Design-System/ds-0.jpg');
}

@media (max-width: 767.98px) {
  .image-swipe-2, .overlay-container {
    height: 240px !important;
  }
  body.bl .image-swipe-2{
    background-image: url('image/work/Bike-Locker/bl-cover-mobile.jpg');
  }
  body.bk .image-swipe-2{
    background-image: url('image/work/Breakie/bk-cover-mobile.jpg');
  }
  body.bb .image-swipe-2 {
    background-image: url('image/work/Blue-Box/bb-cover-mobile.jpg');
  }
}

.image-swipe-2 img {
  position: absolute;
  width:100%;
  transform:scale(1.6);
  animation: img 1.5s;
  animation-fill-mode: forwards;
}

.overlay-container {
  position:absolute;
  width: 100%;
  /* height: 100%; */
  height: 40vh;
  background-color: #EEB758;
  transform: scaleX(0);
  transform-origin: 0% 50%;
  animation: over 1.5s;
}

@keyframes over {
  0% {
    transform: scaleX(0);
    transform-origin: 0% 50%;
  }
  50% {
    transform: scaleX(1);
    transform-origin: 0% 50%;
  }
  51% {
    transform: scaleX(1);
    transform-origin: 100% 50%;
  }
  100% {
    transform: scaleX(0);
    transform-origin: 100% 50%;
  }
}

@keyframes img {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  51% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform:  scale(1);
  }
}

/* Dark Layout */

body.project.dark {
  background-color: #121212 !important;
}

body.project.dark .image-swipe:before {
  background: var(--custom-black);
}

body.project.dark .navbar a.swipe-text,
body.project.dark h1,body.project.dark h2,body.project.dark small,body.project.dark span {
  color: white;
}

body.project.dark p {
  color: #999;
}

body.project.dark .navbar .btn__line {
  background-color: white;
}

.parallax-img.cq {
  background-image: url('image/work/Chongqing/er-7.jpg');
}

/* Infinite Scroller */

.scroller__inner{
  display:flex;
  gap:1rem;
  padding-block : 1rem;
  flex-wrap:wrap;
  width:max-content;
}

.scroller__inner .icon {
  width: 1.5rem;
}

.scroller__inner .next {
  width: 1.5rem;
  margin: 0 1.5rem;
  opacity: 0.4;
}

.scroller[data-animated="true"]{
  overflow:hidden;
  mask : linear-gradient(90deg,transparent,white 20%,white 90%,transparent);
  -webkit-mask:linear-gradient(90deg,transparent,white 20%,white 90%,transparent);
}

.scroller[data-animated="true"] .scroller__inner{
  flex-wrap:nowrap;
  animation:scroll
    var(--animation-duration , 40s) 
    var(--animation-direction, forwards)
    linear 
    infinite;
}

.scroller[data-direction="right"]{
  --animation-direction : reverse;
}

.scroller[data-direction="left"]{
  --animation-direction : forwards;
}

.scroller[data-speed = "fast"]{
  --animation-duration:20s;
}

.scroller[data-speed = "superfast"]{
  --animation-duration:8s;
}


@keyframes scroll {
  to {
    transform:translate(calc(-50% - .5rem));
  }
}


/*
----------------------------------------------------

Playground

----------------------------------------------------
*/

.sprite, .body, .head, .rainbow span, .feet, .tail span, .stars .star {
  position: absolute;
  background-position: 0 0px,0 5px,0 10px,0 15px,0 20px,0 25px,0 30px,0 35px,0 40px,0 45px,0 50px,0 55px,0 60px,0 65px,0 70px,0 75px,0 80px,0 85px,0 90px,0 95px,0 100px,0 105px,0 110px,0 115px,0 120px,0 125px;
  background-size: 100% 5px;
  background-repeat: no-repeat;
}

.magic-wrapper {
  position: relative;
  width: 100%;
  height: 300px;
  overflow: hidden;
}

.nyan-cat {
  position: relative;
  left: 50%;
  top: 40%;
  width: 165px;
  height: 100px;
  margin-left: -82px;
  -webkit-animation: nyan 400ms step-start infinite;
  animation: nyan 400ms step-start infinite;
}

.body {
  left: 35px;
  top: 0;
  width: 105px;
  height: 90px;
}

.head {
  left: 85px;
  top: 25px;
  width: 80px;
  height: 65px;
  -webkit-animation: head 400ms linear infinite;
  animation: head 400ms linear infinite;
}

.rainbow {
  position: relative;
  left: 0;
  top: 50%;
  width: 50%;
  height: 65px;
  overflow: hidden;
}
.rainbow span {
  display: block;
  position: relative;
  top: 0;
  width: 100%;
  height: 130px;
  background-size: 80px 5px;
  background-repeat: repeat-x;
  -webkit-animation: rainbow 400ms step-start infinite;
  animation: rainbow 400ms step-start infinite;
}

.feet {
  left: 20px;
  top: 75px;
  width: 120px;
  height: 25px;
  -webkit-animation: feet 400ms infinite;
  animation: feet 400ms infinite;
}

.tail {
  position: relative;
  width: 25px;
  height: 30px;
  overflow: hidden;
  top: 30px;
  left: 10px;
}
.tail span {
  width: 25px;
  height: 120px;
  -webkit-animation: tail 200ms step-start infinite alternate;
  animation: tail 200ms step-start infinite alternate;
}

.stars {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-animation: moveleft 1000ms linear infinite;
  animation: moveleft 1000ms linear infinite;
}
.stars .star {
  width: 28px;
  height: 28px;
  overflow: hidden;
}
.stars .star span {
  position: absolute;
  left: 0;
  width: 112px;
  height: 28px;
  background-position: 0 0px,0 2px,0 4px,0 6px,0 8px,0 10px,0 12px,0 14px,0 16px,0 18px,0 20px,0 22px,0 24px,0 26px,0 28px;
  background-size: 112px 2px;
  background-repeat: no-repeat;
  -webkit-animation: star 300ms step-start infinite alternate;
  animation: star 300ms step-start infinite alternate;
}

.star:nth-child(1) {
  top: -10px;
  left: 70px;
}

.star:nth-child(2) {
  top: 30px;
  left: 250px;
}

.star:nth-child(3) {
  top: 70px;
  left: 350px;
}

.star:nth-child(4) {
  top: 100px;
  left: 20px;
}

.star:nth-child(5) {
  top: 200px;
  left: 300px;
}

.star:nth-child(6) {
  top: 250px;
  left: 100px;
}

.star:nth-child(7) {
  top: -10px;
  left: 470px;
}

.star:nth-child(8) {
  top: 30px;
  left: 650px;
}

.star:nth-child(9) {
  top: 70px;
  left: 750px;
}

.star:nth-child(10) {
  top: 100px;
  left: 420px;
}

.star:nth-child(11) {
  top: 200px;
  left: 700px;
}

.star:nth-child(12) {
  top: 250px;
  left: 500px;
}

.body {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px, #000000 95px, rgba(0, 0, 0, 0) 95px, rgba(0, 0, 0, 0) 105px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #f9d28f 10px, #f9d28f 95px, #000000 95px, #000000 100px, rgba(0, 0, 0, 0) 100px, rgba(0, 0, 0, 0) 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 20px, #fe91fe 20px, #fe91fe 85px, #f9d28f 85px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 15px, #fe91fe 15px, #fe91fe 45px, #f90297 45px, #f90297 50px, #fe91fe 50px, #fe91fe 60px, #f90297 60px, #f90297 65px, #fe91fe 65px, #fe91fe 90px, #f9d28f 90px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 20px, #f90297 20px, #f90297 25px, #fe91fe 25px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 80px, #f90297 80px, #f90297 85px, #fe91fe 85px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 40px, #f90297 40px, #f90297 45px, #fe91fe 45px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 25px, #f90297 25px, #f90297 30px, #fe91fe 30px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 45px, #f90297 45px, #f90297 50px, #fe91fe 50px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 15px, #f90297 15px, #f90297 20px, #fe91fe 20px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 10px, #fe91fe 10px, #fe91fe 35px, #f90297 35px, #f90297 40px, #fe91fe 40px, #fe91fe 95px, #f9d28f 95px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 15px, #fe91fe 15px, #fe91fe 20px, #f90297 20px, #f90297 25px, #fe91fe 25px, #fe91fe 90px, #f9d28f 90px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, #000000 0%, #000000 5px, #f9d28f 5px, #f9d28f 20px, #fe91fe 20px, #fe91fe 85px, #f9d28f 85px, #f9d28f 100px, #000000 100px, #000000 105px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #f9d28f 10px, #f9d28f 95px, #000000 95px, #000000 100px, rgba(0, 0, 0, 0) 100px, rgba(0, 0, 0, 0) 105px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px, #000000 95px, rgba(0, 0, 0, 0) 95px, rgba(0, 0, 0, 0) 105px);
}

.head {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px, #000000 20px, rgba(0, 0, 0, 0) 20px, rgba(0, 0, 0, 0) 60px, #000000 60px, #000000 70px, rgba(0, 0, 0, 0) 70px, rgba(0, 0, 0, 0) 105px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px, #9d9d9d 20px, #000000 20px, #000000 25px, rgba(0, 0, 0, 0) 25px, rgba(0, 0, 0, 0) 55px, #000000 55px, #000000 60px, #9d9d9d 60px, #9d9d9d 70px, #000000 70px, #000000 75px, rgba(0, 0, 0, 0) 75px, rgba(0, 0, 0, 0) 80px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px, #9d9d9d 25px, #000000 25px, #000000 30px, rgba(0, 0, 0, 0) 30px, rgba(0, 0, 0, 0) 50px, #000000 50px, #000000 55px, #9d9d9d 55px, #9d9d9d 70px, #000000 70px, #000000 75px, rgba(0, 0, 0, 0) 75px, rgba(0, 0, 0, 0) 80px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px, #9d9d9d 30px, #000000 30px, #000000 35px, #000000 35px, #000000 50px, #9d9d9d 50px, #9d9d9d 70px, #000000 70px, #000000 75px, rgba(0, 0, 0, 0) 75px, rgba(0, 0, 0, 0) 80px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px, #9d9d9d 70px, #000000 70px, #000000 75px, rgba(0, 0, 0, 0) 75px, rgba(0, 0, 0, 0) 80px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 75px, #000000 75px, #000000 80px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 20px, #e9ae5b 20px, #ffffff 25px, #000000 25px, #000000 30px, #9d9d9d 30px, #9d9d9d 55px, #ffffff 55px, #ffffff 60px, #000000 60px, #000000 65px, #9d9d9d 65px, #9d9d9d 75px, #000000 75px, #000000 80px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 20px, #000000 20px, #000000 30px, #9d9d9d 30px, #9d9d9d 45px, #000000 45px, #000000 50px, #9d9d9d 50px, #9d9d9d 55px, #000000 55px, #000000 65px, #9d9d9d 65px, #9d9d9d 75px, #000000 75px, #000000 80px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 10px, #ff9593 10px, #ff9593 20px, #9d9d9d 20px, #9d9d9d 65px, #ff9593 65px, #ff9593 75px, #000000 75px, #000000 80px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 10px, #ff9593 10px, #ff9593 20px, #9d9d9d 20px, #9d9d9d 25px, #000000 25px, #000000 30px, #9d9d9d 30px, #9d9d9d 40px, #000000 40px, #000000 45px, #9d9d9d 45px, #9d9d9d 55px, #000000 55px, #000000 60px, #9d9d9d 60px, #9d9d9d 65px, #ff9593 65px, #ff9593 75px, #000000 75px, #000000 80px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px, #9d9d9d 25px, #000000 25px, #000000 60px, #9d9d9d 60px, #9d9d9d 70px, #000000 70px, #000000 75px, rgba(0, 0, 0, 0) 75px, rgba(0, 0, 0, 0) 80px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px, #000000 15px, #9d9d9d 15px, #9d9d9d 65px, #000000 65px, #000000 70px, rgba(0, 0, 0, 0) 70px, rgba(0, 0, 0, 0) 80px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 15px, #000000 15px, #000000 65px, rgba(0, 0, 0, 0) 65px, rgba(0, 0, 0, 0) 80px);
}

.rainbow > span {
  background-image: -webkit-gradient(linear, left top, right top, from(#fe0000), color-stop(50%, #fe0000), color-stop(50%, rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0))), -webkit-gradient(linear, left top, right top, from(#fe0000), to(#fe0000)), -webkit-gradient(linear, left top, right top, from(#ffa500), color-stop(50%, #ffa500), color-stop(50%, #fe0000), to(#fe0000)), -webkit-gradient(linear, left top, right top, from(#ffa500), to(#ffa500)), -webkit-gradient(linear, left top, right top, from(#ffff00), color-stop(50%, #ffff00), color-stop(50%, #ffa500), to(#ffa500)), -webkit-gradient(linear, left top, right top, from(#ffff00), to(#ffff00)), -webkit-gradient(linear, left top, right top, from(#00fb00), color-stop(50%, #00fb00), color-stop(50%, #ffff00), to(#ffff00)), -webkit-gradient(linear, left top, right top, from(#00fb00), to(#00fb00)), -webkit-gradient(linear, left top, right top, from(#009eff), color-stop(50%, #009eff), color-stop(50%, #00fb00), to(#00fb00)), -webkit-gradient(linear, left top, right top, from(#009eff), to(#009eff)), -webkit-gradient(linear, left top, right top, from(#6531ff), color-stop(50%, #6531ff), color-stop(50%, #009eff), to(#009eff)), -webkit-gradient(linear, left top, right top, from(#6531ff), to(#6531ff)), -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0)), color-stop(50%, #6531ff), to(#6531ff)), -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0)), color-stop(50%, #fe0000), to(#fe0000)), -webkit-gradient(linear, left top, right top, from(#fe0000), to(#fe0000)), -webkit-gradient(linear, left top, right top, from(#fe0000), color-stop(50%, #fe0000), color-stop(50%, #ffa500), to(#ffa500)), -webkit-gradient(linear, left top, right top, from(#ffa500), to(#ffa500)), -webkit-gradient(linear, left top, right top, from(#ffa500), color-stop(50%, #ffa500), color-stop(50%, #ffff00), to(#ffff00)), -webkit-gradient(linear, left top, right top, from(#ffff00), to(#ffff00)), -webkit-gradient(linear, left top, right top, from(#ffff00), color-stop(50%, #ffff00), color-stop(50%, #00fb00), to(#00fb00)), -webkit-gradient(linear, left top, right top, from(#00fb00), to(#00fb00)), -webkit-gradient(linear, left top, right top, from(#00fb00), color-stop(50%, #00fb00), color-stop(50%, #009eff), to(#009eff)), -webkit-gradient(linear, left top, right top, from(#009eff), to(#009eff)), -webkit-gradient(linear, left top, right top, from(#009eff), color-stop(50%, #009eff), color-stop(50%, #6531ff), to(#6531ff)), -webkit-gradient(linear, left top, right top, from(#6531ff), to(#6531ff)), -webkit-gradient(linear, left top, right top, from(#6531ff), color-stop(50%, #6531ff), color-stop(50%, rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to right, #fe0000 0%, #fe0000 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%), linear-gradient(to right, #fe0000 0%, #fe0000 100%), linear-gradient(to right, #ffa500 0%, #ffa500 50%, #fe0000 50%, #fe0000 100%), linear-gradient(to right, #ffa500 0%, #ffa500 100%), linear-gradient(to right, #ffff00 0%, #ffff00 50%, #ffa500 50%, #ffa500 100%), linear-gradient(to right, #ffff00 0%, #ffff00 100%), linear-gradient(to right, #00fb00 0%, #00fb00 50%, #ffff00 50%, #ffff00 100%), linear-gradient(to right, #00fb00 0%, #00fb00 100%), linear-gradient(to right, #009eff 0%, #009eff 50%, #00fb00 50%, #00fb00 100%), linear-gradient(to right, #009eff 0%, #009eff 100%), linear-gradient(to right, #6531ff 0%, #6531ff 50%, #009eff 50%, #009eff 100%), linear-gradient(to right, #6531ff 0%, #6531ff 100%), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, #6531ff 50%, #6531ff 100%), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, #fe0000 50%, #fe0000 100%), linear-gradient(to right, #fe0000 0%, #fe0000 100%), linear-gradient(to right, #fe0000 0%, #fe0000 50%, #ffa500 50%, #ffa500 100%), linear-gradient(to right, #ffa500 0%, #ffa500 100%), linear-gradient(to right, #ffa500 0%, #ffa500 50%, #ffff00 50%, #ffff00 100%), linear-gradient(to right, #ffff00 0%, #ffff00 100%), linear-gradient(to right, #ffff00 0%, #ffff00 50%, #00fb00 50%, #00fb00 100%), linear-gradient(to right, #00fb00 0%, #00fb00 100%), linear-gradient(to right, #00fb00 0%, #00fb00 50%, #009eff 50%, #009eff 100%), linear-gradient(to right, #009eff 0%, #009eff 100%), linear-gradient(to right, #009eff 0%, #009eff 50%, #6531ff 50%, #6531ff 100%), linear-gradient(to right, #6531ff 0%, #6531ff 100%), linear-gradient(to right, #6531ff 0%, #6531ff 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%);
}

.feet {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px, #000000 25px, rgba(0, 0, 0, 0) 25px, rgba(0, 0, 0, 0) 120px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px, #9d9d9d 110px, rgba(0, 0, 0, 0) 110px, rgba(0, 0, 0, 0) 120px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 20px, #000000 20px, #000000 35px, #9d9d9d 35px, #9d9d9d 40px, #000000 40px, #000000 80px, #9d9d9d 80px, #9d9d9d 110px, #000000 110px, #000000 115px, rgba(0, 0, 0, 0) 115px, rgba(0, 0, 0, 0) 120px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 15px, #000000 15px, #000000 20px, rgba(0, 0, 0, 0) 20px, rgba(0, 0, 0, 0) 25px, #000000 25px, #000000 30px, #9d9d9d 30px, #9d9d9d 40px, #000000 40px, #000000 45px, rgba(0, 0, 0, 0) 45px, rgba(0, 0, 0, 0) 75px, #000000 75px, #000000 80px, #9d9d9d 80px, #9d9d9d 90px, #000000 90px, #000000 95px, rgba(0, 0, 0, 0) 95px, rgba(0, 0, 0, 0) 100px, #000000 100px, #000000 105px, #9d9d9d 105px, #9d9d9d 115px, #000000 115px, #000000 120px), linear-gradient(to right, #000000 0%, #000000 15px, rgba(0, 0, 0, 0) 15px, rgba(0, 0, 0, 0) 30px, #000000 30px, #000000 45px, rgba(0, 0, 0, 0) 45px, rgba(0, 0, 0, 0) 80px, #000000 80px, #000000 95px, rgba(0, 0, 0, 0) 95px, rgba(0, 0, 0, 0) 105px, #000000 105px, #000000 120px);
}

.tail > span {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 15px, rgba(0, 0, 0, 0) 15px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 15px, #000000 15px, #000000 20px, rgba(0, 0, 0, 0) 20px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 15px, #000000 15px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px, #000000 20px, #9d9d9d 20px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 15px, #000000 15px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 20px, rgba(0, 0, 0, 0) 20px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 15px, #000000 15px), linear-gradient(to right, #000000 0%, #000000 10px, #9d9d9d 10px, #9d9d9d 25px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px, #000000 20px, #9d9d9d 20px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 20px, #000000 20px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 20px, #000000 20px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 20px, #000000 20px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 20px, #000000 20px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 15px, #000000 15px, #000000 20px, #9d9d9d 20px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10px, #000000 10px, #000000 15px, #9d9d9d 15px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 10px, #9d9d9d 10px, #9d9d9d 20px, #000000 20px), linear-gradient(to right, #000000 0%, #000000 5px, #9d9d9d 5px, #9d9d9d 15px, #000000 15px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5px, #000000 5px, #000000 15px, rgba(0, 0, 0, 0) 15px);
}

.star > span {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 12px, #e9ae5b 12px, #e9ae5b 16px, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 12px, #e9ae5b 12px, #e9ae5b 16px, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 4px, #e9ae5b 4px, #e9ae5b 8px, rgba(0, 0, 0, 0) 8px, rgba(0, 0, 0, 0) 20px, #e9ae5b 20px, #e9ae5b 24px, rgba(0, 0, 0, 0) 24px, rgba(0, 0, 0, 0) 40px, #e9ae5b 40px, #e9ae5b 44px, rgba(0, 0, 0, 0) 44px, rgba(0, 0, 0, 0) 68px, #e9ae5b 68px, #e9ae5b 72px, rgba(0, 0, 0, 0) 72px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 4px, #e9ae5b 4px, #e9ae5b 8px, rgba(0, 0, 0, 0) 8px, rgba(0, 0, 0, 0) 20px, #e9ae5b 20px, #e9ae5b 24px, rgba(0, 0, 0, 0) 24px, rgba(0, 0, 0, 0) 40px, #e9ae5b 40px, #e9ae5b 44px, rgba(0, 0, 0, 0) 44px, rgba(0, 0, 0, 0) 68px, #e9ae5b 68px, #e9ae5b 72px, rgba(0, 0, 0, 0) 72px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 68px, #e9ae5b 68px, #e9ae5b 72px, rgba(0, 0, 0, 0) 72px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 68px, #e9ae5b 68px, #e9ae5b 72px, rgba(0, 0, 0, 0) 72px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, #e9ae5b 0%, #e9ae5b 4px, rgba(0, 0, 0, 0) 4px, rgba(0, 0, 0, 0) 24px, #e9ae5b 24px, #e9ae5b 28px, rgba(0, 0, 0, 0) 28px, rgba(0, 0, 0, 0) 32px, #e9ae5b 32px, #e9ae5b 36px, rgba(0, 0, 0, 0) 36px, rgba(0, 0, 0, 0) 40px, #e9ae5b 40px, #e9ae5b 44px, rgba(0, 0, 0, 0) 44px, rgba(0, 0, 0, 0) 48px, #e9ae5b 48px, #e9ae5b 52px, rgba(0, 0, 0, 0) 52px, rgba(0, 0, 0, 0) 60px, #e9ae5b 60px, #e9ae5b 68px, rgba(0, 0, 0, 0) 68px, rgba(0, 0, 0, 0) 72px, #e9ae5b 72px, #e9ae5b 80px, rgba(0, 0, 0, 0) 80px, rgba(0, 0, 0, 0) 96px, #e9ae5b 96px, #e9ae5b 100px, rgba(0, 0, 0, 0) 100px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, #e9ae5b 0%, #e9ae5b 4px, rgba(0, 0, 0, 0) 4px, rgba(0, 0, 0, 0) 24px, #e9ae5b 24px, #e9ae5b 28px, rgba(0, 0, 0, 0) 28px, rgba(0, 0, 0, 0) 32px, #e9ae5b 32px, #e9ae5b 36px, rgba(0, 0, 0, 0) 36px, rgba(0, 0, 0, 0) 40px, #e9ae5b 40px, #e9ae5b 44px, rgba(0, 0, 0, 0) 44px, rgba(0, 0, 0, 0) 48px, #e9ae5b 48px, #e9ae5b 52px, rgba(0, 0, 0, 0) 52px, rgba(0, 0, 0, 0) 60px, #e9ae5b 60px, #e9ae5b 68px, rgba(0, 0, 0, 0) 68px, rgba(0, 0, 0, 0) 72px, #e9ae5b 72px, #e9ae5b 80px, rgba(0, 0, 0, 0) 80px, rgba(0, 0, 0, 0) 96px, #e9ae5b 96px, #e9ae5b 100px, rgba(0, 0, 0, 0) 100px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 68px, #e9ae5b 68px, #e9ae5b 72px, rgba(0, 0, 0, 0) 72px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 68px, #e9ae5b 68px, #e9ae5b 72px, rgba(0, 0, 0, 0) 72px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 4px, #e9ae5b 4px, #e9ae5b 8px, rgba(0, 0, 0, 0) 8px, rgba(0, 0, 0, 0) 20px, #e9ae5b 20px, #e9ae5b 24px, rgba(0, 0, 0, 0) 24px, rgba(0, 0, 0, 0) 40px, #e9ae5b 40px, #e9ae5b 44px, rgba(0, 0, 0, 0) 44px, rgba(0, 0, 0, 0) 68px, #e9ae5b 68px, #e9ae5b 72px, rgba(0, 0, 0, 0) 72px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 4px, #e9ae5b 4px, #e9ae5b 8px, rgba(0, 0, 0, 0) 8px, rgba(0, 0, 0, 0) 20px, #e9ae5b 20px, #e9ae5b 24px, rgba(0, 0, 0, 0) 24px, rgba(0, 0, 0, 0) 40px, #e9ae5b 40px, #e9ae5b 44px, rgba(0, 0, 0, 0) 44px, rgba(0, 0, 0, 0) 68px, #e9ae5b 68px, #e9ae5b 72px, rgba(0, 0, 0, 0) 72px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 12px, #e9ae5b 12px, #e9ae5b 16px, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0) 112px), linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 12px, #e9ae5b 12px, #e9ae5b 16px, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0) 112px);
}

@-webkit-keyframes rainbow {
  0% {
    top: 0;
  }
  50% {
    top: 0;
  }
  100% {
    top: -65px;
  }
}

@keyframes rainbow {
  0% {
    top: 0;
  }
  50% {
    top: 0;
  }
  100% {
    top: -65px;
  }
}
@-webkit-keyframes moveleft {
  0% {
    left: 0;
  }
  100% {
    left: -400px;
  }
}
@keyframes moveleft {
  0% {
    left: 0;
  }
  100% {
    left: -400px;
  }
}
@-webkit-keyframes star {
  0% {
    left: 0;
  }
  25% {
    left: 0;
  }
  49.99% {
    left: 0;
  }
  50% {
    left: -28px;
  }
  74.99% {
    left: -28px;
  }
  75% {
    left: -56px;
  }
  99.99% {
    left: -56px;
  }
  100% {
    left: -84px;
  }
}
@keyframes star {
  0% {
    left: 0;
  }
  25% {
    left: 0;
  }
  49.99% {
    left: 0;
  }
  50% {
    left: -28px;
  }
  74.99% {
    left: -28px;
  }
  75% {
    left: -56px;
  }
  99.99% {
    left: -56px;
  }
  100% {
    left: -84px;
  }
}
@-webkit-keyframes nyan {
  0% {
    margin-top: -50px;
  }
  10% {
    margin-top: -50px;
  }
  80% {
    margin-top: -53px;
  }
  100% {
    margin-top: -50px;
  }
}
@keyframes nyan {
  0% {
    margin-top: -50px;
  }
  10% {
    margin-top: -50px;
  }
  80% {
    margin-top: -53px;
  }
  100% {
    margin-top: -50px;
  }
}
@-webkit-keyframes feet {
  0% {
    left: 20px;
  }
  100% {
    left: 30px;
  }
}
@keyframes feet {
  0% {
    left: 20px;
  }
  100% {
    left: 30px;
  }
}
@-webkit-keyframes head {
  0% {
    top: 25px;
    left: 85px;
  }
  24.99% {
    top: 25px;
    left: 85px;
  }
  25% {
    top: 22px;
    left: 88px;
  }
  49.99% {
    top: 22px;
    left: 88px;
  }
  50% {
    top: 22px;
    left: 85px;
  }
  74.99% {
    top: 22px;
    left: 85px;
  }
  75% {
    top: 22px;
    left: 82px;
  }
  99.99% {
    top: 22px;
    left: 82px;
  }
  100% {
    top: 25px;
    left: 85px;
  }
}
@keyframes head {
  0% {
    top: 25px;
    left: 85px;
  }
  24.99% {
    top: 25px;
    left: 85px;
  }
  25% {
    top: 22px;
    left: 88px;
  }
  49.99% {
    top: 22px;
    left: 88px;
  }
  50% {
    top: 22px;
    left: 85px;
  }
  74.99% {
    top: 22px;
    left: 85px;
  }
  75% {
    top: 22px;
    left: 82px;
  }
  99.99% {
    top: 22px;
    left: 82px;
  }
  100% {
    top: 25px;
    left: 85px;
  }
}
@-webkit-keyframes tail {
  0% {
    top: 0;
  }
  25% {
    top: 0;
  }
  49.99% {
    top: 0;
  }
  50% {
    top: -30px;
  }
  74.99% {
    top: -30px;
  }
  75% {
    top: -60px;
  }
  99.99% {
    top: -60px;
  }
  100% {
    top: -90px;
  }
}
@keyframes tail {
  0% {
    top: 0;
  }
  25% {
    top: 0;
  }
  49.99% {
    top: 0;
  }
  50% {
    top: -30px;
  }
  74.99% {
    top: -30px;
  }
  75% {
    top: -60px;
  }
  99.99% {
    top: -60px;
  }
  100% {
    top: -90px;
  }
}

.grid-container .item img {
  width: 100%;
  line-height: 0;
  margin: 0;
  padding: 0;
  border-radius: 24px;
}

.grid-container {
  -webkit-column-count: 2;
  column-count: 2;
  -webkit-column-gap: 1rem;
  column-gap: 1rem;
  margin-bottom: 10rem;
}
.grid-container .item {
  display: inline-block;
  margin-bottom: 1rem;
  box-sizing: border-box;
}



/*
----------------------------------------------------

Contact

----------------------------------------------------
*/

/* Conact Detail */
.contact-detail .sub-title {
  color: var(--custom-black);
}

.contact-detail h2{
  display: inline-block;
}

@media (max-width: 992px) {
  .contact-detail .col-md-6:first-child {
    margin-bottom: 2rem;
  }
}

/* Wave Hand */
.hand-container {
  transform-origin: 80% 100%;
}

.mobile-hide .hand-container {
  float: right;
}

.hand-container.wave {
  animation: move 2.5s infinite ease-in-out;
}

.hand {
  display: inline-block;
  transform: rotate(17deg);
  transform-origin: 80% 100%;
}

.hand.wave {
  animation: wave 2.5s infinite linear;
}

@keyframes wave {
  0%, 60%, 100% {
    transform: rotate(17deg);
  }
  7.5%, 22.5%, 37.5%, 52.5% {
    transform: rotate(54deg);
  }
  15%, 30%, 45% {
    transform: rotate(24deg);
  }
  3.75%, 18.75%, 33.75%, 48.75% {
    transform: rotate(27deg);
  }
  11.25%, 26.25%, 41.25%, 56.25% {
    transform: rotate(51deg);
  }
}

@keyframes move {
  0%, 60%, 100% {
    transform: translateX(0);
  }
  5.625%, 20.625%, 35.625%, 50.625% {
    transform: translateX(8px);
  }
  13.125%, 28.125%, 43.125% {
    transform: translateX(-8px);
  }
}

/* Slide up text */

.l1, .l2, .l3 {
  overflow: hidden;
  display: block;
}

.l1 span { 
  animation-delay: 0.4s;
  animation-duration: 1s;
  animation-name: wipe-up;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.l2 span { 
  animation-delay: 0.6s;
  animation-duration: 1s;
  animation-name: wipe-up;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.l3 span {
  opacity: 0;
  animation-delay: 1s;
  animation-duration: 1s;
  animation-name: wipe-up-in;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.l1 span, .l2 span, .l3 span {
  transform: translateY(100%);
  display: block;
}

@keyframes wipe-up {
  0% {
      transform: translateY(100%);
  }
  100% {
      transform: translateY(0);
  }
}

@keyframes wipe-up-in {
  0% {
      opacity: 0;
      transform: translateY(100%);
  }
  100% {
      opacity: 1;
      transform: translateY(0);
  }
}

/* Project Carousel */

.carousel {
  width: 100%;
  cursor: -webkit-grab;
  cursor: grab;
  overflow-x: hidden;
  position: relative;
}

.carousel.dragging {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.carousel--wrap {
  white-space: nowrap;
}

.carousel--item {
  display: inline-block;
  width: 30vw;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.carousel--item figure {
  position: relative;
  z-index: 1;
  display: block;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
}

.carousel--item figure img {
  position: absolute;
  z-index: 1;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: middle;
  transform-origin: center;
}

.carousel--item h2 {
  position: absolute;
  z-index: 1;
  bottom: 1.8vw;
  font-size: 6vw;
  bottom: 1vw;
  color: #fff;
}

.carousel--progress {
  position: absolute;
  z-index: 2;
  pointer-events: none;
  top: 2vw;
  width: 20vw;
  left: 3vw;
  height: 2px;
  background: var(--custom-black);
}

.carousel--progress-bar {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--custom-red);
  transform: scaleX(0);
  transform-origin: 0% 0%;
}

/* Responsive Slider */
.slick-list,
.slick-slider,
.slick-track {
  position: relative;
  display: block;
}

.slider {
  width: 100%;
}

.slick-list,
.slick-slider,
.slick-track {
  position: relative;
  display: block;
}

.slick-slider .slick-list,
.slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-list {
  margin: 0;
  padding: 0;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

.slick-slide {
  margin: 0 20px;
  outline: 0;
}

.slick-initialized .slick-slide {
  display: block;
}

.slider_card {
  width: 520px;
}

@media (max-width: 500px) {
  .slider_card {
    width: 90vw;
  }
}

.slider_card .work-wrap {
  margin-bottom: 0.5rem !important;
}

.slick-next,
.slick-next:focus,
.slick-next:hover,
.slick-prev,
.slick-prev:focus,
.slick-prev:hover {
  background: 0 0;
  color: transparent;
}

.slider_card img {
  box-shadow: 10px 10px 50px 3px rgba(0,0,0, 0.1);
  border-radius: 24px;
}

.slider_img {
  margin-top: 8px;
  position: relative;
  bottom: 2px;
  left: 0;
}

.slick-slider {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: 0;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
  outline: 0;
}

.slick-dots li,
.slick-dots li button {
  cursor: pointer;
  height: 20px;
  width: 20px;
}

.slider_report {
  margin-top: 14px;
}

.slick-slider .slick-list,
.slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  top: 0;
  left: 0;
}

.slick-track:after,
.slick-track:before {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.arrow {
  margin-bottom: 80px;
}
.arrow li {
  list-style: none;
  display: inline-block !important;
  float: left;
}
.arrow ul {
  margin: 0;
  padding: 0;
  margin-top: 24px;
  margin-bottom: 80px;
}
.slick-next:focus,
.slick-prev:focus {
  outline: 0;
}
.slick-next,
.slick-prev {
  font-size: 0;
  line-height: 0;
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  padding: 0;
  cursor: pointer;
  border: none;
  border-radius: 50px;
  border: 1px solid;
}

.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
  opacity: 0.25;
}

.slick-next:before,
.slick-prev:before {
  width: 60px;
  height: 22px;
  margin-top: 5px;
  margin-left: -30px;
  position: relative;
  display: inline-block;
  font-size: 20px;
  line-height: 1;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-next:hover,
.slick-prev:hover {
  opacity: 1;
}

.slick-prev {
  opacity: 0.3;
}

.slick-next {
  opacity: 0.3;
}

[dir="rtl"] .slick-prev {
  right: -25px;
  left: auto;
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

[dir="rtl"] .slick-next {
  right: auto;
  left: -25px;
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 5px;
  padding: 0;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  padding: 5px;
  color: transparent;
  border: 0;
  background: 0 0;
}

.slick-dots li button:focus:before,
.slick-dots li button:hover:before {
  opacity: 1;
}

.slick-dots li button:before {
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: "•";
  text-align: center;
  opacity: 0.25;
  color: #000;
  -moz-osx-font-smoothing: grayscale;
}

.slick-slide img,
.slider {
  width: 100%;
}

.slick-dots li.slick-active button:before {
  opacity: 0.75;
  color: #000;
}

.slider {
  margin: 56px auto 0;
  padding-right: 0;
  padding-left: 2rem;
  margin-top: 0;
}

.slick-slide {
  margin: 0 20px;
  outline: 0;
}

.slick-next:before,
.slick-prev:before {
  color: #000;
}

.slick-current {
  font-size: initial;
}
@media screen and (max-width: 991px) {
  .slider_card {
    margin: 0 !important;
  }
    .arrow li {
    float: none;
  }
}

.project.dark .work-wrap .swipe-text {
  color: white !important;
}

.project.dark .work-wrap .tag {
  border-color: #999;
}

