:root {
  --sm: 640px;
  --md: 768px;
  --lg: 1024px;
  --xl: 1280px;
  --xxl: 1536px;
  --xxxl: 1800px;
}  
@font-face {
  font-family: "Gotham-Book";
  src: url("../assets/font/Gotham-Book.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gotham-Medium";
  src: url("../assets/font/Gotham-Medium.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gotham-Bold";
  src: url("../assets/font/Gotham-Bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
} 
@font-face {
    font-family: 'Futura Bold';
    src: url('../assets/font/Futura-Bold.eot');
    src: url('../assets/font/Futura-Bold.eot?#iefix') format('embedded-opentype'),
        url('../assets/font/Futura-Bold.woff2') format('woff2'),
        url('../assets/font/Futura-Bold.woff') format('woff'),
        url('../assets/font/Futura-Bold.ttf') format('truetype'),
        url('../assets/font/Futura-Bold.svg#Futura-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Futura Medium';
    src: url('../assets/font/Futura-Medium.eot');
    src: url('../assets/font/Futura-Medium.eot?#iefix') format('embedded-opentype'),
        url('../assets/font/Futura-Medium.woff2') format('woff2'),
        url('../assets/font/Futura-Medium.woff') format('woff'),
        url('../assets/font/Futura-Medium.ttf') format('truetype'),
        url('../assets/font/Futura-Medium.svg#Futura-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
  font-family: 'ProximaNovaRegular';
  src: url('../assets/font/ProximaNovaRegular.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'ProximaNovaBold';
  src: url('../assets/font/ProximaNovaBold.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MundialNarrow-Regular-BF67624ba586d07';
  src: url('../assets/font/MundialNarrow-Regular-BF67624ba586d07.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MundialNarrow-SemiBold-BF67624ba5a98c1';
  src: url('../assets/font/MundialNarrow-SemiBold-BF67624ba5a98c1.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MundialNarrow-Bold-BF67624ba588290';
  src: url('../assets/font/MundialNarrow-Bold-BF67624ba588290.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MundialNarrow-Black-BF67624ba5a4e5e';
  src: url('../assets/font/MundialNarrow-Black-BF67624ba5a4e5e.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'brandon-grotesque-light-58a8a4b38001d';
  src: url('../assets/font/brandon-grotesque-light-58a8a4b38001d.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'BrandonGrotesque-Bold';
  src: url('../assets/font/BrandonGrotesque-Bold.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'brandon-grotesque-black-58a8a3e824392';
  src: url('../assets/font/brandon-grotesque-black-58a8a3e824392.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
.font-FuturaBold {
  font-family: 'Futura Bold';
}
.font-FuturaMedium {
  font-family: 'Futura Medium';
} 
.font-GothamBook {
  font-family: "Gotham-Book";
}
.font-GothamMedium {
  font-family: "Gotham-Medium";
}
.font-GothamBold {
  font-family: "Gotham-Bold";
}
.font-ProximaNovaBold{
  font-family: 'ProximaNovaBold';
}
.font-ProximaNovaRegular{
  font-family: 'ProximaNovaRegular';
}
.font-MundialRegular{
  font-family: 'MundialNarrow-Regular-BF67624ba586d07';
}
.font-MundialSemiBd{
  font-family: 'MundialNarrow-SemiBold-BF67624ba5a98c1';
}
.font-MundialBd{
  font-family: 'MundialNarrow-Bold-BF67624ba588290';
}
.font-MundialBlack{
  font-family: 'MundialNarrow-Black-BF67624ba5a4e5e';
}
.font-BrandonLight{
  font-family: 'brandon-grotesque-light-58a8a4b38001d';
}
.font-BrandonBd{
  font-family: 'BrandonGrotesque-Bold';
}
.font-BrandonBlack{
  font-family: 'brandon-grotesque-black-58a8a3e824392';
}
body {
  background-color: #fff;
}
html,
body {
  overflow-x: hidden;
}
[type="email"] {
  background-color: transparent;
}
.\[\&\:not\(\[data-te-collapse-collapsed\]\)\]\:text-primary:not(
    [data-te-collapse-collapsed]
  ) {
  color: #000 !important;
}
[type="text"] {
  background-color: transparent;
  height: 50px;
  color: black;
}
input,
select,
textarea {
  color: black;
  font-family: "ProximaNovaBold";
}
input:focus,
select:focus,
textarea:focus {
  border: 1px solid #dc0000 !important;
  --tw-ring-shadow: none !important;
}
input::placeholder,
textarea::placeholder,
textarea::placeholder {
  color: black !important;
  font-family: "ProximaNovaBold";
}

/* Footer */
footer {
  padding-top: 60px;
  padding-bottom: 30px;
}
footer p {
  color: #777777;
}
/* Add your styles for the initial and scrolled navigation bar here */
.navbar {
  background-color: #fff;
  transition: background-color 0.3s;
}
/*.navbar.scrolled {
  background-color: #fff;
  /* Change this to your desired background color
}*/

/* Loader */
@-webkit-keyframes loader {
  0% {
    width: 0;
  }
  20% {
    width: 10%;
  }
  25% {
    width: 24%;
  }
  43% {
    width: 41%;
  }
  56% {
    width: 50%;
  }
  66% {
    width: 52%;
  }
  71% {
    width: 60%;
  }
  75% {
    width: 76%;
  }
  94% {
    width: 86%;
  }
  100% {
    width: 100%;
  }
}
@keyframes loader {
  0% {
    width: 0;
  }
  20% {
    width: 10%;
  }
  25% {
    width: 24%;
  }
  43% {
    width: 41%;
  }
  56% {
    width: 50%;
  }
  66% {
    width: 52%;
  }
  71% {
    width: 60%;
  }
  75% {
    width: 76%;
  }
  94% {
    width: 86%;
  }
  100% {
    width: 100%;
  }
}
.progress-bar {
  width: 95%;
  max-width: 95%;
  left: 50%;
  width: 100%;
  max-width: 100%;
  border-radius: 0;
  margin-top: 30px;
}
.progress {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}
.bar {
  margin-top: 25px !important;
  margin-bottom: 0 !important;
}
.progress-bar {
  border-radius: 0;
  overflow: hidden;
  width: 100%;
  padding: 0;
  display: none;
}
.progress-bar span {
  display: block;
}
.bar {
  background: 0 0;
}
.progress {
  -webkit-animation: loader 8s ease infinite;
  animation: loader 8s ease infinite;
  background: #dc0000;
  color: #fff;
  padding: 5px;
  width: 0;
  margin-top: 25px;
  margin-bottom: 25px;
}
.progress-bar {
  position: relative;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  background-color: transparent;
}
/*custom*/
.reg-color {
  color: #fff;
}

@keyframes pulse-animation {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  33% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(3);
    opacity: 0;
  }
}
.pulse2 {
  position: relative;
}
.pulse2:before,
.pulse2:after {
  content: "";
  position: absolute;
  top: 0;
  left: -18%;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.834);
  border-radius: 50%;
  width: 20px;
  height: 20px;
  opacity: 0;
  margin: auto;
}
.pulse2:before {
  animation: pulse-animation 1.5s infinite linear;
}
.pulse2:after {
  animation: pulse-animation 2s 0.4s infinite linear;
}
.pulse2:hover:before,
.pulse2:hover:after {
  display: none;
}
 
.infinite { 
  animation : 1.5s infinite linear;
}

.animated.delay {
  animation-delay: 0.5s;
}

.animated.delay-1 {
  animation-delay: 1s;
}

.animated.delay-1half {
  animation-delay: 1.5s;
}

.animated.delay-2 {
  animation-delay: 2s;
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev {
    position: absolute;
    top: 30%;
}
.owl-carousel .owl-nav button.owl-prev {
  left: -15%;
}
.owl-carousel .owl-nav button.owl-next {
  right: -15%;
}
.owl-carousel button.owl-dot {
  height: 8px;
  width: 8px;
  border-radius: 50%;
  background: gray;
  margin: 0 5px;
}
.owl-carousel button.owl-dot.active {
  background: #dc0000;
}
.sticky-icons {
  position: fixed;
  bottom: 5%;
  z-index: 10000;
  display: flex;
  flex-direction: row;
  right: 1%;
  background-color: white;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 2px 2px 6px rgb(182, 182, 182);
  -webkit-animation: pulse 1.5s infinite;
  -moz-animation: pulse 1.5s infinite;
  -o-animation: pulse 1.5s infinite;
  animation: pulse 1.5s infinite;
}
.sticky-icons:hover {
  -webkit-animation: none;
  -moz-animation: none;
  -o-animation: none;
  animation: none;
}
.sticky-icons :hover {
  cursor: pointer;
}
.sticky-icon {
  width: 40px;
  height: 40px;
  object-fit: contain;
  background: #0d9f16;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin: 5px;
  position: relative;
  transform: rotate(30deg);
}
.sticky-icon img {
  width: 70%;
  object-fit: contain;
}
.sticky-icons p {
  color: #0a6b10;
  margin-bottom: 0px;
  padding: 0;
  line-height: 1.2;
}
.sticky-icon::after {
  content: "";
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 8px solid #0d9f16;
  position: absolute;
  bottom: -3px;
  left: -17px;
  right: 0;
  margin: 0 auto;
  transform: rotateZ(31deg);
}

@keyframes animate {
  0% {
    opacity: 0;
    transform: rotate(45deg) translate(-20px, -20px);
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: rotate(45deg) translate(20px, 20px);
  }
}
@-webkit-keyframes pulse {
  0% {
    transform: scale(0.9);
  }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 30px rgba(90, 153, 212, 0);
  }
  100% {
    transform: scale(0.9);
    box-shadow: 0 0 0 0 rgba(90, 153, 212, 0);
  }
}
@-moz-keyframes pulse {
  0% {
    transform: scale(0.9);
  }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 30px rgba(90, 153, 212, 0);
  }
  100% {
    transform: scale(0.9);
    box-shadow: 0 0 0 0 rgba(90, 153, 212, 0);
  }
}
@-o-keyframes pulse {
  0% {
    transform: scale(0.9);
  }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 30px rgba(90, 153, 212, 0);
  }
  100% {
    transform: scale(0.9);
    box-shadow: 0 0 0 0 rgba(90, 153, 212, 0);
  }
}
@keyframes pulse {
  0% {
    transform: scale(0.9);
  }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 30px rgba(90, 153, 212, 0);
  }
  100% {
    transform: scale(0.9);
    box-shadow: 0 0 0 0 rgba(90, 153, 212, 0);
  }
}
body {
  font-family: sans-serif;
  overflow-x: hidden;
}
.smooth-scroll {
  overflow: hidden !important;
}

/* .project-card.johor, .project-card.penang{
    display: none;
}
 */

.region-btn {
  background-color: #CF203363;
  color: #fff; 
  opacity: 0.8;
}
.region-btn.active {
  background-color: #CF2033;
  color: white;
  opacity: 1.0; 
} 
#dropdown {
  width: 90%;
}
.container {
  max-width: 100% !important;
}
.pulse-btn {
  -webkit-animation: glowing 1500ms infinite;
  -moz-animation: glowing 1500ms infinite;
  -o-animation: glowing 1500ms infinite;
  animation: glowing 1500ms infinite;
}
@-webkit-keyframes glowing {
  0% {
    background-color: #b20000;
    -webkit-box-shadow: 0 0 3px #b20000;
  }
  50% {
    background-color: #ff0000;
    -webkit-box-shadow: 0 0 20px #ff0000;
  }
  100% {
    background-color: #b20000;
    -webkit-box-shadow: 0 0 3px #b20000;
  }
}
@-moz-keyframes glowing {
  0% {
    background-color: #b20000;
    -moz-box-shadow: 0 0 3px #b20000;
  }
  50% {
    background-color: #ff0000;
    -moz-box-shadow: 0 0 20px #ff0000;
  }
  100% {
    background-color: #b20000;
    -moz-box-shadow: 0 0 3px #b20000;
  }
}
@-o-keyframes glowing {
  0% {
    background-color: #b20000;
    box-shadow: 0 0 3px #b20000;
  }
  50% {
    background-color: #ff0000;
    box-shadow: 0 0 20px #ff0000;
  }
  100% {
    background-color: #b20000;
    box-shadow: 0 0 3px #b20000;
  }
}
@keyframes glowing {
  0% {
    background-color: #b20000;
    box-shadow: 0 0 3px #b20000;
  }
  50% {
    background-color: #ff0000;
    box-shadow: 0 0 20px #ff0000;
  }
  100% {
    background-color: #b20000;
    box-shadow: 0 0 3px #b20000;
  }
}

.project-card, .back, .front{min-height: 600px;}

.project-card.klangvalley:nth-child(7),
.project-card.klangvalley:nth-child(8), .project-card.klangvalley:nth-child(9),
.project-card.klangvalley.active:nth-child(8), .project-card.klangvalley.active:nth-child(9){  
  display: none;
} 

@media (max-width: 1600px) {
  .project-card, .back, .front {
      min-height: 505px;
  }
}
@media (max-width: 1300px) {
  .project-card, .back, .front {
      min-height: 525px;
  }
}
@media (max-width: 960px) {
  html,
  body {
    overflow-x: hidden;
  }

  .project-card, .back, .front{
    height: fit-content;
    min-height: 500px;
  }
  .owl-dots {
    display: flex;
    justify-content: center;
    margin-top: 20px;
  } 
  #logo-navbar {
    display: none !important;
  }  
  .project-card.klangvalley:nth-child(5),
  .project-card.klangvalley:nth-child(6),
  .project-card.klangvalley:nth-child(7),
  .project-card.klangvalley:nth-child(8), 
  .project-card.klangvalley:nth-child(9),
  .project-card.klangvalley.active:nth-child(5),
  .project-card.klangvalley.active:nth-child(6),
  .project-card.klangvalley.active:nth-child(7),
  .project-card.klangvalley.active:nth-child(8), 
  .project-card.klangvalley.active:nth-child(9){  
    display: none;
  } 
}
@media (max-width: 500px) {
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel .owl-nav button.owl-prev {
    top: 25%;
  }
  .owl-carousel .owl-nav button.owl-next{right: -20%;}
  .owl-carousel .owl-nav button.owl-prev{left: -20%;}
  .owl-carousel button.owl-dot {
    width: 10px;
    height: 10px;
    margin: 0 3px;
  }

  .sticky-icons p {
    font-size: 12px;
  }
  .sticky-icon {
    width: 35px;
    height: 35px;
  }
  input::placeholder,
  textarea::placeholder,
  input,
  select {
    font-size: 14px;
  }
  .project-card,
  .back,
  .front {
    height: fit-content;
    min-height: 475px;
  }
  input::placeholder,
  textarea::placeholder,
  select {
    font-size: 14px;
  }
  .region-btn {
    background-color: white;
    color: #CF2033; 
    opacity: 1.0;
  }
}

