@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css");

/* ==========================================================================
   ELEMENTOR LAYOUT PREVENT FLICKER STYLES
   ========================================================================== */
.e-con.e-parent:nth-of-type(n + 4):not(.e-lazyloaded):not(.e-no-lazyload),
.e-con.e-parent:nth-of-type(n + 4):not(.e-lazyloaded):not(.e-no-lazyload) * {
  background-image: none !important;
}

@media screen and (max-height: 1024px) {
  .e-con.e-parent:nth-of-type(n + 3):not(.e-lazyloaded):not(.e-no-lazyload),
  .e-con.e-parent:nth-of-type(n + 3):not(.e-lazyloaded):not(.e-no-lazyload) * {
    background-image: none !important;
  }
}

@media screen and (max-height: 640px) {
  .e-con.e-parent:nth-of-type(n + 2):not(.e-lazyloaded):not(.e-no-lazyload),
  .e-con.e-parent:nth-of-type(n + 2):not(.e-lazyloaded):not(.e-no-lazyload) * {
    background-image: none !important;
  }
}

/* ==========================================================================
   WP CUSTOM GENERAL CSS
   ========================================================================== */
header#site-header {
  display: none;
}

footer#site-footer {
  display: none;
}

body .elementor-star-rating i::before {
  font-family: fontawesome;
  content: "\f005";
}

body .elementor-star-rating i {
  color: transparent;
}

/* header css  */
.menu_menuu ul.elementor-nav-menu li.menu-item:first-child::before {
  position: absolute;
  content: "";
  left: -1px;
  height: 100%;
  width: 1px;
  background: #3b3a3a;
  top: 0;
}

.menu_menuu ul.elementor-nav-menu li.menu-item:last-child::before {
  position: absolute;
  content: "";
  right: 0px;
  height: 100%;
  width: 1px;
  background: #3b3a3a;
  top: 0;
}

.menu_menuu ul.elementor-nav-menu.rtmnn li.menu-item:first-child::before {
  left: 0px;
}

div#header_socials {
  width: fit-content;
  max-width: 100%;
  flex: 0 0 138px;
}

div#header_socials .elementor-social-icons-wrapper svg {
  width: 22px;
  height: 22px;
}

div#header_socials .elementor-social-icons-wrapper {
  display: flex;
  align-items: center;
  gap: 18px;
  justify-content: flex-end;
}

/* parallex effect and smooth scroll css here  */
.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: auto;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

.Link_heading h2.elementor-heading-title a:hover::before {
  width: 100%;
}

.Link_heading h2.elementor-heading-title a::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 0;
  height: 1px;
  bottom: -3px;
  background: #3b3a3a;
  transition: 0.3s ease;
}

.Link_heading h2.elementor-heading-title a {
  transition: 0.3s ease;
  position: relative;
}

/* testimonial section css  */
div#testmonial_slidess
  .elementor-testimonial__footer
  span.elementor-testimonial__title {
  margin-top: 15px;
}

div#testmonial_slidess .elementor-swiper-button {
  width: 42px;
  height: 42px;
  border: 2px solid #baa170;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  transition: 0.3s ease;
}

div#testmonial_slidess .elementor-swiper-button:hover {
  background: #baa170;
}

div#testmonial_slidess .elementor-swiper-button:hover svg {
  fill: #fff;
}

div#testmonial_slidess .elementor-main-swiper {
  padding-bottom: 80px;
}

#article_logo .elementor-image-box-img {
  width: 100%;
  text-align: left;
}

#article_logo .attachment-full {
  max-height: 38px;
  width: auto;
  max-width: unset;
  object-fit: contain;
  display: inline-flex;
}

/* image slider css here  */
div#imgg_caro figure.swiper-slide-inner {
  height: 300px;
  border-radius: 12px;
  overflow: hidden;
  background: #e0e0e0;
  position: relative;
}

div#imgg_caro figure.swiper-slide-inner img.swiper-slide-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

div#imgg_caro figure.swiper-slide-inner::before {
  position: absolute;
  content: "";
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.15;
}

div#imgg_caro .elementor-image-carousel-wrapper {
  padding-bottom: 55px;
}

/* video slider css  */
.vidd_contt * {
  height: 100%;
  object-fit: cover;
}

.vidd_contt .elementor-custom-embed-play {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
}

.vidd_contt img {
  transition: 0.3s ease;
}

.vidd_contt:hover img {
  transform: scale(1.05);
}

.Sliderfor_web .swiper-pagination .swiper-pagination-bullet-active,
#award_sec .swiper-pagination .swiper-pagination-bullet-active,
#award_sec .swiper-pagination-bullet:hover {
  background: #baa170 !important;
}

#award_sec .attachment-large {
  max-height: 110px;
  object-fit: contain;
}

/* Contact page css here social text show on icon hover  */
.HOverable_text {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  min-width: unset;
  transform: translateY(37px);
}

.iconhoverable:hover .HOverable_text {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(48px);
  -ms-transform: translateY(48px);
  transform: translateY(48px);
}

@media (max-width: 1199px) {
  div#blank_col {
    display: none;
  }

  div#left_mnu {
    width: 23%;
  }

  div#LOgo_col {
    width: 27%;
  }

  div#header_socials {
    flex: 0 0 90px;
  }
}

@media (max-width: 1025px) {
  div#left_mnu {
    width: 25%;
  }

  div#LOgo_col {
    width: 35%;
  }
}

@media (max-width: 850px) {
  div#LOgo_col {
    width: 26%;
  }

  div#left_mnu {
    width: 23%;
  }
}

@media (max-width: 767px) {
  div#LOgo_col {
    width: 70%;
  }

  .menu_menuu ul.elementor-nav-menu li.menu-item:first-child::before,
  .menu_menuu ul.elementor-nav-menu li.menu-item:last-child::before {
    display: none;
  }

  div#mb_navy ul.elementor-nav-menu li a {
    padding-left: 0;
    padding-right: 0;
    border-bottom: 1px solid #bca475;
    line-height: 1;
    font-size: 18px;
    padding-top: 18px;
    padding-bottom: 18px;
  }

  div#mb_navy ul.elementor-nav-menu li:last-child a {
    border: 0;
  }

  #process_sec .elementor-element {
    text-align: center;
  }

  #process_sec .elementor-element.e-con-full {
    margin: auto;
  }

  .HOverable_text {
    min-width: fit-content;
  }

  #explore_video .elementor-widget-video {
    min-height: 650px;
  }

  div#testmonial_slidess .elementor-swiper-button {
    display: none;
  }
}

/* ********** */
/* new css here  */
/* ******** */
div#home::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #ffffffd1, #00000000);
}

div#animated_icon {
  animation: bounce 1600ms infinite cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

@keyframes bounce {
  50% {
    transform: translateY(-8px);
  }
}

div#animated_icon svg {
  fill: none;
}

.serv_boxx .elementor-icon-box-icon span.elementor-icon {
  border: 1px solid #58554b4d;
}

.outer_serv_box:hover .elementor-icon-box-icon span.elementor-icon {
  background: #58554b !important;
}

.outer_serv_box:hover .elementor-icon-box-icon span.elementor-icon svg {
  stroke: #fff;
}

.outer_serv_box a.elementor-button span.elementor-button-icon {
  transition: 0.3s ease;
}

.outer_serv_box:hover a.elementor-button span.elementor-button-icon {
  margin-left: 4px;
  transition: 0.3s ease;
}

.contact_list_info .elementor-icon-box-icon .elementor-icon {
  border: 1px solid #dddad5;
}

.Overlay_onhover {
  position: absolute;
  left: 0;
  bottom: -30px;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease;
}

.main_box_prt {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.ACF_image::before {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  width: 100%;
  height: 25%;
  background: linear-gradient(360deg, #fff, transparent);
}

.ACF_image {
  height: 100%;
  position: relative;
}

.main_box_prt:hover .ACF_image {
  transform: scale(1.08);
}

.main_box_prt:hover .visibility_h {
  visibility: hidden;
}

.ACF_image a {
  display: block;
  height: 100%;
}

.main_box_prt:hover .Overlay_onhover {
  bottom: 0;
  opacity: 1;
  visibility: visible;
}

/* ==========================================================================
   FORKLYFT STUDIO NAVBAR OVERRIDES (EXACTLY MATCHING SCREENSHOT)
   ========================================================================== */

/* 1. Header Container - transparent initially, transitioning to white on scroll */
#main_header {
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border-bottom: 1px solid transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition:
    background-color 0.4s cubic-bezier(0.25, 1, 0.5, 1),
    padding 0.4s cubic-bezier(0.25, 1, 0.5, 1),
    box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1),
    border-color 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
  padding-top: 25px !important;
  padding-bottom: 25px !important;
}

/* Scrolled state applied by Elementor JS scroll trigger */
#main_header.elementor-sticky--effects {
  background-color: #ffffff !important;
  border-bottom: 1px solid #e2ded8 !important;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.04) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

/* 2. Logo Alignment & Size */
#main_header .elementor-element-02ee333 img {
  max-width: 195px !important;
  height: auto !important;
  transition:
    transform 0.4s ease,
    max-width 0.4s ease !important;
}
#main_header.elementor-sticky--effects .elementor-element-02ee333 img {
  max-width: 175px !important;
}

/* 3. Navigation Links styling */
#main_header ul.elementor-nav-menu > li.menu-item > a.elementor-item {
  font-family:
    "Century Gothic", "Montserrat", "Segoe UI", sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.8px !important;
  color: #58554b !important;
  text-transform: capitalize !important;
  padding: 12px 22px !important;
  position: relative !important;
  background: transparent !important;
  transition: color 0.3s ease !important;
}

/* Active navigation item and hover styling */
#main_header ul.elementor-nav-menu > li.menu-item > a.elementor-item:hover,
#main_header
  ul.elementor-nav-menu
  > li.menu-item
  > a.elementor-item.elementor-item-active,
#main_header
  ul.elementor-nav-menu
  > li.menu-item
  > a.elementor-item.highlighted {
  color: #baa170 !important; /* Premium brand gold hover color */
}

/* Modern sliding underline indicator for nav menu items */
#main_header ul.elementor-nav-menu > li.menu-item > a.elementor-item::after {
  content: "" !important;
  position: absolute !important;
  bottom: 4px !important;
  left: 22px !important;
  right: 22px !important;
  height: 1px !important;
  background-color: #baa170 !important;
  transform: scaleX(0) !important;
  transform-origin: right !important;
  transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
#main_header
  ul.elementor-nav-menu
  > li.menu-item
  > a.elementor-item:hover::after,
#main_header
  ul.elementor-nav-menu
  > li.menu-item
  > a.elementor-item.elementor-item-active::after {
  transform: scaleX(1) !important;
  transform-origin: left !important;
}

/* 4. Button - Get In Touch (Rectangular matching the screenshot) */
#main_header .elementor-element-23befbe a.elementor-button {
  background-color: #58554b !important;
  color: #ffffff !important;
  font-family:
    "Century Gothic", "Montserrat", "Segoe UI", sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border-radius: 0px !important; /* Perfect sharp corners as in screenshot */
  padding: 13px 26px !important;
  border: none !important;
  box-shadow: none !important;
  transition:
    background-color 0.3s ease,
    transform 0.2s ease,
    box-shadow 0.3s ease !important;
}
#main_header .elementor-element-23befbe a.elementor-button:hover {
  background-color: #434037 !important; /* Slightly darker grey/brown on hover */
  box-shadow: 0 4px 12px rgba(88, 85, 75, 0.15) !important;
  transform: translateY(-1px) !important;
}
#main_header .elementor-element-23befbe a.elementor-button:active {
  transform: translateY(0px) !important;
}

/* 5. Mobile & Tablet Menu Customizations to keep it clean and responsive */
@media (max-width: 1024px) {
  #main_header {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
  #main_header.elementor-sticky--effects {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  /* Mobile drawer toggle */
  #main_header .elementor-menu-toggle {
    color: #58554b !important;
  }
  #main_header .elementor-menu-toggle svg {
    fill: #58554b !important;
  }
  /* Dropdown drawer overlay styles */
  #main_header .elementor-nav-menu--dropdown {
    background-color: #ffffff !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
    border-top: 1px solid #e2ded8 !important;
  }
  #main_header .elementor-nav-menu--dropdown a.elementor-item {
    color: #58554b !important;
    font-family: "Century Gothic", "Montserrat", sans-serif !important;
    font-size: 15px !important;
    padding: 14px 24px !important;
  }
  #main_header .elementor-nav-menu--dropdown a.elementor-item:hover,
  #main_header
    .elementor-nav-menu--dropdown
    a.elementor-item.elementor-item-active {
    color: #baa170 !important;
    background-color: #f9f8f6 !important;
  }
}
