/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.5.1765621712
Updated: 2025-12-13 10:28:32

*/

/* image hover styles */
:root {
   --content-width: min(100%, var(--container-max-width, 1600px !important));
}

a {
   text-decoration: none !important;
}

.hover_effect .elementor-widget-image {
   overflow: hidden;
   border-radius: 95px;
}

.hover_effect img {
   transition: 0.3s;
}

.hover_effect img:hover {
   transform: scale(1.1);
}


.page-header {
   display: none;
}


.banner_main .elementor-background-video-container {
   min-height: 100vh
}

.banner_main .elementor-background-video-container video {
   min-height: 100vh
}

/* General */
#page .e-con>.e-con-inner {
   max-width: 100% !important;
}

.btn a {
   padding: 10px 15px;
   font-size: 18px;
   transition: all 0.225s ease-in;
   text-decoration: none;
   border: 2px solid transparent !important;
   border-radius: 5px !important;
   position: relative;
   overflow: hidden;
   font-weight: 600 !important;
   font-family: "Urbanist", Sans-serif !important;
}

.btn-primary>a {
   background: linear-gradient(90deg, #DB8D38 -39.05%, #F9D47F 57.69%);
   color: black !important;
}

.flex {
   display: flex;
}

.btn>a::before {
   content: '';
   position: absolute;
   top: -100%;
   left: 0;
   width: 100%;
   height: 100%;
   background-color: white !important;
   z-index: 0;
   transition: all 0.225s ease-in;
}

.btn>a>span {
   position: relative;
   z-index: 1;
}

.btn>a:hover>span {
   animation: fadeTop 0.5s ease-in-out;
}

.btn>a:hover:before {
   top: 0%;
}

.btn-outline>a {
   background-color: rgba(255, 255, 255, 0) !important;
   border: 2px solid #fff !important;
   color: #fff !important;
}

.btn-outline>a:hover {
   color: black !important;
}

.img-full img {
   max-width: 100% !important;
   width: 100% !important;
}

.btn-secondary>a {
   background: #131C2E !important;
   color: #fff !important;
   transition: border-color 0s ease-in !important;
}

.btn-secondary>a:hover {
   border-color: white !important;
}

.btn-secondary>a:before {
   background: linear-gradient(90deg, #DB8D38 -39.05%, #F9D47F 57.69%) !important;
}

.btn-outline-blue>a {
   background-color: white !important;
   color: #0A1A2F !important;
   border-color: #0A1A2F !important;
}

.btn-outline-blue>a:before {
   background-color: #0A1A2F !important;
}

.btn-outline-blue>a:hover {
   color: white !important;
}

@keyframes fadeTop {
   0% {
      opacity: 1;
      transform: translateY(0);
   }

   50% {
      opacity: 0.5;
      transform: translateY(100%);
   }

   51% {
      opacity: 0.3;
      transform: translateY(-150%);
   }

   100% {
      opacity: 1;
      transform: translateY(0);
   }
}

/* header styles */
#masthead {
   position: absolute !important;
   z-index: 999;
   top: 0px;
   width: 100%;
   padding-inline: 40px;
}

.request-a-quote {
   background: rgba(221, 160, 91, 1);
   border-radius: 50px;
}

.request-a-quote a {
   color: #fff !important;
   text-transform: capitalize !important;
   padding-inline: 30px !important;
}

.request-a-quote a:hover {
   color: #fff !important;
   background: #131C2E;
   border-radius: 50px;
}

.left_menu .hfe-nav-menu .menu-item-has-children .sub-menu {
   overflow: hidden;
}

#masthead .hfe-nav-menu {
   margin: 0 !important;
   width: 100%;
   display: flex;
   justify-content: space-between;
   flex-wrap: nowrap !important;
}

@media (max-width: 1024px) {
   #masthead {
      top: 16px;
      padding-inline: 24px;
   }

   .header_main .hfe-flyout-overlay {
      height: 100vh !important;
   }

   .header_main .hfe-flyout-left {
      left: 0 !important;
      right: auto !important;
      transform: translate(-100%) !important;
      transition: ease 0.5s;
      display: block !important;
      height: 100vh !important;
   }

   .header_main .hfe-flyout-left.hfe-flyout-show {
      transform: translate(0) !important;
   }

   .header_main .hfe-menu-toggle {
      border: unset !important;
   }

   .request_quote {
      padding-top: 0px;
   }

   .banner_main .elementor-background-video-container {
      min-height: 100%
   }

   .banner_main .elementor-background-video-container video {
      min-height: 100%
   }
}

@media (max-width: 767px) {
   #masthead {
      padding-inline: 4px;
   }

   .hover_effect .elementor-widget-image {
      border-radius: 50px;
   }

   .home_page_form .elementor-widget-shortcode {
      padding: 40px 30px 40px 30px !important;
   }

   .request_quote select {
      padding-block: 15px !important;
   }
}


/* why section */
.video-container-cstm video {
   object-fit: cover;

}

.video-container-cstm {
   padding: 0 !important;
}

.video-container-cstm .e-hosted-video {
   max-height: 450px;
   width: 100%;
   border-radius: 8px;
   overflow: hidden;
}

.buyer-icon-box .elementor-icon-box-icon {
   display: flex;
   justify-content: end;
}

.buyer-icon-box {
   position: relative;
   overflow: hidden;
   height: 100%;
   padding: 30px !important;
   display: flex;
   align-items: start;
   background-color: white;
   border-radius: 8px;
}

.buyer-icon-box .elementor-icon-box-content {
   position: relative;
}

.buyer-icon-box::before {
   content: "";
   position: absolute;
   top: -100%;
   left: 0;
   width: 100%;
   height: 100%;
   background-color: #0A1A2F;
   transition: all 0.3s ease-in-out;

}

.buyer-icon-box:hover::before {
   top: 0;
}

.buyer-icon-box:hover * {
   color: white !important;
}

.buyer-icon-box:hover .elementor-icon-box-icon {
   filter: invert(1);
}



/* Who Section */
.who-box .elementor-image-box-wrapper figure>img,
.shine-anim>img {
   width: 100%;
   transition: all 0.2s ease-in-out;
}

.who-box .elementor-image-box-wrapper figure,
.shine-anim {
   position: relative;
   overflow: hidden;
}

.shine-anim:before {
   content: "";
   position: absolute;
   inset: 0;
   background-color: rgba(19, 28, 46, 0.35);
   transform: scale(0) rotate(45deg);
   transform-origin: center;
   transition: transform 0.4s ease-in-out;
   z-index: 1;
}

.who-box .elementor-image-box-wrapper figure:hover::before,
.shine-anim:hover::before {
   transform: scale(1.5) rotate(45deg);
}

.shine-anim:hover img {
   transform: scale(1.05);
}

.who-box {
   transition: all 0.2s ease-in;
   cursor: pointer;
}

.who-box:hover h3,
.who-box:hover p {
   color: #0a1a2fb8 !important;
}

/* method box */
.method-box .elementor-widget-image-box:nth-child(odd) .elementor-image-box-wrapper {
   display: flex;
   flex-direction: column-reverse;
   gap: 60px;
}

.method-box .elementor-widget-image-box:nth-child(odd) .elementor-image-box-wrapper .elementor-image-box-content {
   padding: 0 0px 0 30px;
   margin-bottom: -150px;
   width: 120%;
}

.method-box .elementor-widget-image-box:nth-child(even) .elementor-image-box-wrapper {
   display: flex;
   flex-direction: column;
   gap: 60px;
   padding-top: 180px;
}

.method-box .elementor-widget-image-box:nth-child(even) .elementor-image-box-wrapper .elementor-image-box-content {
   padding: 0 0px 0 30px;
   margin-top: -150px;
   width: 120%;
}


/* footer */
footer#colophon {
   background: #f2f9ff;
}

.footer-cta {
   max-width: 1500px !important;
   width: 95% !important;
   margin: 0 auto -200px;
}

.footer_link nav li {
   padding-left: 20px;
   position: relative;
}

.footer_link nav li:before {
   content: "";
   position: absolute;
   left: 0;
   top: -5px;
   width: 12px;
   height: 20px;
   background: url(/wp-content/uploads/2025/12/Vector-1.png) 100% 100% no-repeat;
   background-size: contain;
}


/* contact_page */
.contact_us form input,
.contact_us form textarea,
.contact_us form select {
   border: 0;
   border-radius: 4px;
   font-size: 16px;
   outline: unset !important;
   width: 100%;
   border: 1px solid #ddd;
   background-color: #f9f9f9;
}

.contact_us form label {
   font-size: 16px;
   color: #454545 !important;
   width: 100%;
   display: flex;
   flex-direction: column;
   gap: 12px;
}

.contact_us form label br {
   display: none;
}

.contact_us form input::placeholder,
.contact_us form textarea::placeholder {
   color: #848484;
}

.contact_us form label {
   font-size: 16px;
   color: #fff;
   width: 100%;
}

.contact_us form .d-flex label.first {
   padding-right: 10px !important;
   width: 50%;
}

.contact_us form .d-flex label.last {
   padding-left: 10px !important;
   width: 50%;
}

.contact_us form .d-flex {
   display: flex;
   width: 100%;
}

.contact_us form textarea {
   height: 120px;
}

.contact_us form.invalid input {
   border: 1px solid red;
}

.contact_us form input[type="submit"] {
   background: #0A1A2F !important;
   color: #fff !important;
   border: 0 !important;
   font-size: 18px !important;
   border: 2px solid #0A1A2F !important;
}

.contact_us form input[type="submit"]:hover {
   background: #ffffff !important;
   color: #0A1A2F !important;
}

.contact_us form span.wpcf7-not-valid-tip,
.contact_us form .wpcf7-response-output {
   position: absolute;
   bottom: 0;
   font-size: 16px;
   background: red;
   color: #fff;
   border: 0;
   border-radius: 4px;
}

.contact_us form span.wpcf7-not-valid-tip {
   bottom: -25px;
   padding: 0px 6px;
}
.contact_us form .wpcf7-response-output { bottom: -10px; }
.contactpage_inner {
   box-shadow: 0 0 22px rgba(0, 0, 0, 0.06);
   -webkit-box-shadow: 0 0 22px rgba(0, 0, 0, 0.06);
   padding: 0 0 0 30px;
   border-radius: 12px;
   margin-bottom: 40px !important;
}

.cf7-row {
   margin-bottom: 24px;
}

.cf7-row-2 {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 24px;
}

.cf7-col label {
   display: flex;
   flex-direction: column;
   font-size: 14px;
}

/* Mobile: stack everything */
@media (max-width: 768px) {
   .cf7-row-2 {
      grid-template-columns: 1fr;
   }
}

/* Section wrapper */
.targa-accordion-wrap {
   max-width: 1600px;
   margin: 0 auto;
   padding: 80px 40px;
   background-color: #ffffff;
}

/* Mobile spacing */
@media (max-width: 768px) {
   .targa-accordion-wrap {
      padding: 30px 20px;
   }
}

/* Title */
.targa-accordion-title {
   font-family: "Fahkwang", Sans-serif;
   font-size: 40px;
   font-weight: 700;
   color: #0a1a2f;
   margin-bottom: 60px;
   text-align: center;
   letter-spacing: -0.02em;
}

.targa-acc-header:focus .header-text {
   color: #0a1a2f;
}

@media (max-width: 768px) {
   .targa-accordion-title {
      font-size: 32px;
      margin-bottom: 32px;
   }
}

/* Accordion item */
.targa-acc-item {
   padding: 0;
   position: relative;
   transition: background-color 0.3s ease, box-shadow 0.3s ease;
   border-radius: 8px;
   margin-bottom: 8px;
}

/* Subtle hover effect on entire item */
.targa-acc-item:hover {
   background-color: #f0f7ff;
   box-shadow: 0 2px 8px rgba(74, 158, 255, 0.08);
}

/* Active state background */
.targa-acc-item.active {
   background-color: #e6f3ff;
   box-shadow: 0 2px 12px rgba(74, 158, 255, 0.12);
}

/* Header */
.targa-acc-header {
   width: 100%;
   background: none;
   border: 0;
   padding: 24px 20px;
   color: #0a1a2f;
   font-size: 28px;
   font-weight: 500;
   font-family: "Fahkwang", Sans-serif;
   display: flex;
   justify-content: space-between;
   align-items: center;
   cursor: pointer;
   letter-spacing: -0.01em;
   transition: color 0.3s ease, padding 0.3s ease;
   text-align: left;
}

@media (max-width: 768px) {
   .targa-acc-header {
      font-size: 18px;
      padding: 20px 16px;
   }
}

/* Header text wrapper for better control */
.header-text {
   transition: transform 0.3s ease;
}

/* Hover state for header */
.targa-acc-header:hover {
   background-color: transparent !important;
   color: #0a1a2f;
}

.targa-acc-header:hover .header-text {
   transform: translateX(4px);
}

/* Active header state */
.targa-acc-item.active .targa-acc-header {
   color: #0a1a2f;
}

.targa-acc-item {
   border: 1px solid #eee;
   margin-bottom: 20px;
}

/* Icon */
.targa-acc-header .icon {
   width: 20px;
   height: 20px;
   position: relative;
   flex-shrink: 0;
   margin-left: 16px;
}

.targa-acc-header .icon::before,
.targa-acc-header .icon::after {
   content: '';
   position: absolute;
   background: currentColor;
   transition: transform 0.3s ease, opacity 0.3s ease;
}

.targa-acc-header .icon::before {
   width: 100%;
   height: 2px;
   top: 50%;
   left: 0;
   transform: translateY(-50%);
}

.targa-acc-header .icon::after {
   width: 2px;
   height: 100%;
   top: 0;
   left: 50%;
   transform: translateX(-50%);
}

/* Rotate icon on hover */
.targa-acc-header:hover .icon {
   transform: rotate(90deg);
}

/* Open state - hide vertical line */
.targa-acc-item.active .icon::after {
   transform: translateX(-50%) scaleY(0);
}

/* Active icon doesn't rotate on hover */
.targa-acc-item.active .targa-acc-header:hover .icon {
   transform: rotate(0deg);
}

/* Body */
.targa-acc-body {
   overflow: hidden;
   max-height: 0;
   transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
   color: black;
   line-height: 1.75;
   max-width: 720px;
   padding: 0 20px 0 20px;
   font-family: "Urbanist", Sans-serif;
   font-size: 18px;
   font-weight: 400;
}

@media (max-width: 768px) {
   .targa-acc-body {
      font-size: 15px;
      padding: 0 16px 0 16px;
   }
	
	.contact_us form .wpcf7-response-output{    position: unset;
    margin-top: 0;}
	
	
}

/* Body spacing when open */
.targa-acc-item.active .targa-acc-body {
   padding-bottom: 32px;
}

/* Lists */
.targa-acc-body ul {
   padding-left: 20px;
   margin: 0;
   list-style: none;
}

.targa-acc-body li {
   margin-bottom: 14px;
   position: relative;
   padding-left: 0;
}

.targa-acc-body li:last-child {
   margin-bottom: 0;
}

/* Custom bullet points */
.targa-acc-body li::before {
   content: '•';
   color: #2b7fd9;
   font-weight: bold;
   display: inline-block;
   width: 20px;
   margin-left: -20px;
   font-size: 20px;
   line-height: 1.75;
}

/* Focus states for accessibility */
.targa-acc-header:focus {
   outline: 0px solid #2b7fd9;
   outline-offset: -2px;
}

button.targa-acc-header:focus {
   background-color: transparent !important;
}

.targa-acc-header:focus:not(:focus-visible) {
   outline: none;
}

.targa-acc-header:focus-visible {
   outline: 2px solid #2b7fd9;
   outline-offset: -2px;
}


/* Blog Grid */
.targa-blog-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 36px;
}

.targa-blog-meta {
   display: flex;
   gap: 12px;
   font-size: 13px;
   opacity: 0.7;
   margin-bottom: 15px;
}

.targa-blog-meta>span {
   background-color: #000d28;
   padding: 3px 12px;
   border: 1px solid #131c2e6e;
   color: #ffffff !important;
   filter: none;
   border-radius: 4px;
   font-family: "Urbanist", Sans-serif;
   font-weight: 500;
   filter: unset;
   position: relative;
}

@media (max-width: 1024px) {
   .targa-blog-grid {
      grid-template-columns: repeat(2, 1fr);
   }
}

@media (max-width: 640px) {
   .targa-blog-grid {
      grid-template-columns: 1fr;
   }
}

.targa-blog-card {
   background: #ffffff;
   border-radius: 4px;
   overflow: hidden;
   transition: transform 0.3s ease, box-shadow 0.3s ease;
   padding: 15px;
   border: 1px solid #ddd;
}

.targa-blog-link {
   display: block;
   height: 100%;
   text-decoration: none;
}

.targa-blog-image {
   width: 100%;
   height: 220px;
   overflow: hidden;
}

.targa-blog-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
}

.targa-blog-content {
   padding: 20px 0;
}

.targa-blog-title {
   margin-bottom: 10px;
   font-family: "Fahkwang", Sans-serif;
   font-size: 20px;
   font-weight: 700;
   color: var(--e-global-color-primary);
}

.targa-blog-excerpt {
   font-family: "Urbanist", Sans-serif;
   font-size: 18px;
   font-weight: 400;
   color: #50606e !important;
   margin-bottom: 0;
}

section#comments {
   display: none;
}


/* blog sidebar */
.targa-blog-sidebar {
   background: #ffffff;
   border-radius: 14px;
   padding: 28px;
   box-shadow: 0 12px 30px rgba(10, 26, 47, 0.08);
   position: sticky;
   top: 120px;
}

.targa-sidebar-title {
   font-size: 18px;
   font-weight: 600;
   color: #0a1a2f;
   margin-bottom: 18px;
}

.targa-sidebar-list {
   list-style: none;
   padding: 0;
   margin: 0;
}

.targa-sidebar-item+.targa-sidebar-item {
   margin-top: 14px;
}

.targa-sidebar-link {
   font-size: 15px;
   line-height: 1.5;
   color: #5c6470;
   text-decoration: none;
   transition: color 0.2s ease;
}

.targa-sidebar-link:hover {
   color: #0a1a2f;
}


/* blog tabs */
.targa-blog-tabs {
   display: flex;
   justify-content: center;
   gap: 20px;
   margin-bottom: 30px;
}

.targa-blog-tabs .targa-blog-tab {
   border: 0;
   background-color: #ebf4ff;
   padding: 4px 20px;
   text-transform: capitalize;
   font-family: "Urbanist", Sans-serif;
   font-size: 20px;
   color: #0a1a2f !important;
}

.targa-blog-tabs .targa-blog-tab.active {
   background: #0a1a2f !important;
   color: white !important;
}

/* Container animation states */
#targa-blog-posts {
   transition: opacity 0.25s ease, transform 0.25s ease;
}

#targa-blog-posts.is-fading {
   opacity: 0;
   transform: translateY(12px);
}

/* Optional: tab indicator polish */
.targa-blog-tab {
   position: relative;
   transition: color 0.2s ease;
}

.targa-blog-tab.active::after {
   content: '';
   position: absolute;
   left: 0;
   bottom: -6px;
   width: 100%;
   height: 2px;
   background: currentColor;
}

.targa-blog-tags {
   display: flex;
   gap: 10px;
   flex-wrap: wrap;
   margin-top: 20px;
}

.targa-blog-tag {
   padding: 5px 20px;
   border: 1px solid #ddd;
   border-radius: 6px;
   font-size: 16px;
   text-decoration: none;
   transition: all .2s ease;
   text-transform: capitalize;
}


.bg-video-banner {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   z-index: 0;
}

.video-sound-btn {
   position: absolute;
   bottom: 44px;
   right: 24px;
   z-index: 5;
}

.bg-video-banner::before {
   content: "";
   background-image: linear-gradient(180deg, #0a1a2fb8 15%, #0A1A2F59 100%);
   width: 100%;
   height: 100%;
   position: absolute;
   inset: 0;
   z-index: 1;
}

@media(max-width: 1024px) and (min-width: 1024px) {
   .header_main nav a {
    font-size: 16px !important;
    padding-inline: 2px !important;
}
.header_main .btn a {
    padding: 10px 10px !important;
    font-size: 16px;
}
}

@media(max-width: 1024px) {
   #masthead .hfe-nav-menu-icon {
      padding-inline: 0 !important;
   }

   .hfe-flyout-open nav ul {
      display: block !important;
   }

   .hfe-flyout-open nav ul a {
      color: white !important;
   }

   .hfe-flyout-open nav>ul>li ul a {
      font-size: 16px !important;
   }

   .hfe-flyout-open nav>ul>li ul {
      background-color: #ffffff0a !important;
      margin-block: 10px !important;
      border-radius: 6px;
   }

   .hfe-flyout-open .hfe-flyout-content.push {
      background-color: #05173b !important;
   }

   .method-box .elementor-widget-image-box:nth-child(even) .elementor-image-box-wrapper .elementor-image-box-content {
      width: 100%;
      padding: 0 0px 0 20px;
   }

   .method-box .elementor-widget-image-box:nth-child(odd) .elementor-image-box-wrapper .elementor-image-box-content {
      padding: 0 0px 0 20px;
      width: 100%;
   }

   .who-box .elementor-image-box-wrapper figure:hover::before,
   .shine-anim:hover::before {
      transform: scale(1.9) rotate(45deg);
   }

   .targa-blog-tabs {
      flex-wrap: wrap;
   }

   .single-post .banner_main h2 {
      font-size: 42px !important;
      padding-inline: 30px;
   }

   .single-post .banner_main+div {
      padding-inline: 30px;
   }

   .single-post .banner_main+div>.e-con-inner>div {
      padding: 40px 30px;
   }
   .single-post .banner_main+div h2 {
    font-size: 32px !important;
}
.single-post .banner_main+div .elementor-widget-text-editor p {
    font-size: 16px !important;
}
}

@media(max-width: 767px) {
   .method-box .elementor-widget-image-box:nth-child(even) .elementor-image-box-wrapper {
      padding-top: 0px;
   }

   .video-sound-btn span {
      font-size: 0;
      gap: 0 !important;
   }

   .video-sound-btn {
      bottom: 10px;
      right: 10px;
   }

   .single-post .banner_main h2 {
      font-size: 36px !important;
      padding-inline: 20px;
   }

   .single-post .banner_main {
      min-height: 60vh;
   }

   .single-post .banner_main>div>div {
      margin-top: 40px;
   }

   .single-post .banner_main+div {
      padding-inline: 20px;
   }

   .single-post .banner_main+div>.e-con-inner>div {
      padding: 40px 20px;
   }

}


@media(min-width: 991px) {
	#masthead .hfe-nav-menu {justify-content: end;gap: 20px;}
	
}



