body, * {
    margin: 0;
    padding: 0;
    font-family: 'Poppins', 'Roboto', sans-serif;
    font-display: swap;
    line-height: 1.6;
}

/* Fixed @font-face - properly target existing fonts */
@font-face {
    font-family: 'Poppins';
    font-display: swap;
}

section {
    padding: 20px;
}
@media (max-width: 768px) {
    body {
            font-family: 'Poppins', 'Roboto', sans-serif !important;
    }
	/*.elementor-heading-title{
		font-size:21px !important;
		
	}*/
	.elementor-widget-container p{
		font-size:14px !important;
		  /*text-align: justify !important;*/
		  word-spacing: 2px !important;
		  line-height: 1.6 !important;
		  letter-spacing: -0.5px !important;
  hyphens: auto !important;

	}
 
     .elementor-409 .elementor-element.elementor-element-32739cb,  .elementor-heading-title {
 
		font-size:20px;
	}
	.elementor-409 .elementor-element.elementor-element-80de081 .elementor-heading-title{
		font-size:18px;
	}
	 .elementor-409 .elementor-element.elementor-element-41d86ea .elementor-heading-title{
		font-size:18px;
	}
	.elementor-409 .elementor-element.elementor-element-bb8065e .elementor-heading-title{
		font-size:18px;
	}
	.elementor-409 .elementor-element.elementor-element-ad2bbf2 .elementor-heading-title{
		font-size:18px;
	}
	body {
        line-height: 1.6; /* Adjust line spacing */
        letter-spacing: 0.5px; /* Adjust letter spacing */
        word-spacing: 2px; /* Adjust word spacing */
        margin-bottom: 1em; /* Adjust paragraph spacing */
    }

    h1, h2, h3, h4, h5, h6 {
        line-height: 1.4;
        margin-bottom: 0.5em; /* Add spacing between headings */
    }
	h1{
		font-size:21px !important;
	}
	h2{
		font-size:18px !important;
	}
	h3{
		font-size:16px !important;
	}
	p{
		font-size:14px !important;
		        line-height: 1.6; /* Slightly tighter line spacing for smaller screens */
        letter-spacing: 0.3px; /* Adjust for smaller devices */
        word-spacing: 1.5px;
justify-content: space-between; 
  flex-wrap: wrap;
  gap: 10px; 
	}
 	ul li span{
		font-size:14px !important;
		text-align: justify !important;
		  word-spacing: 2px !important;
		  line-height: 1.6 !important;
		    letter-spacing: -0.5px
 !important;
  hyphens: auto !important;
		
	} 
}

#menu-infogenx li a{
	    font-family: 'Poppins', 'Roboto', sans-serif;
    font-weight: 600;
	 font-size:1px !important;
		     line-height: 1.6;
	
    color: #01041f!important;
	text-decoration: none;
}
.site-navigation ul.menu li ul{
	    width: 352px!important;
	    margin-top: 1px!important;
}

div.wpforms-container-full input[type=submit]:not(:hover):not(:active), div.wpforms-container-full button[type=submit]:not(:hover):not(:active), div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) {
    background-color: #EB1D02;
    color: var(--wpforms-button-text-color);
    font-family: 'Poppins';
    font-size: 16px;
    border-radius: 7px;
    padding: 2% 4% 2% 4%;
}


ul#menu-1-8120d48 li a {
    padding: 15px;
}

.image-position-left {
    position: relative;
}


section.blog-hero {
    padding: 4rem 0;
    background-image: url(https://infogenx.com/wp-content/uploads/AdobeStock_524039911.webp);
    background-position: center;
    background-repeat: no-repeat;
    margin-bottom: 4rem;
    height: 350px;
    display: flex;
    align-items: center;
}

a.btn.btn-primary {
    background-color: #EB1D02;
    border-color: #EB1D02;
    font-size: 16px;
}

img.card-img-top.wp-post-image {
    
    object-fit: cover;
    height: 350px;
}

header.page-header h1 {
    color: #333;

}


.product-content {padding: 1rem;margin-bottom: 1rem;}

.product-container {
    position: relative;
	transition: all ease-in 0.5s;
}

.product-content img {width: 70px;}

.product-content h3 {
    font-size: 26px;
    line-height: 35px;
	min-height: 80px;
}

.product-content p {
    font-size: 16px;
    line-height: 26px;
}

.product-button a {
    background-color: red;
    color: #fff;
    padding: 0.6rem;
    display: inline-block;
    width: 40%;
    margin: 1rem;
    text-align: center;
    text-decoration: none;
    font-size: 18px;
    border-radius: 7px;
}
.product-button{
	display:none;
}

.product-container:hover .product-content .product-button{
		transition: all ease-out 0.5s;

	background-color: #000000b3;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    justify-content: center;
}

a.btn.btn-primary {
    background-color: #EB1D02;
    border-color: #EB1D02;
    font-size: 16px;
    display: inline-block;
    margin-top: 1rem;
}

section.space-p {
    padding-bottom: 4rem;
}


.left-align a {
    color: #fff;
    display: block;
    line-height: 35px;
}

.text-justify p {
    text-align: justify;
}

/* Navbar */

.custom-logo-link {
    padding-top: .3125rem;
    padding-bottom: .3125rem;
    margin-right: 1rem;
    font-size: 1.25rem;
    text-decoration: none;
    white-space: nowrap;
}

.dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 0; /* remove the gap so it doesn't close */
}

ul.dropdown-menu li a {
    border-bottom: 1px solid #E5E5E5;
    padding: 1rem;
}
.dropdown-menu {
	padding: 0rem ;
    width: 350px;
	border-radius: 0px;
}

.nav-link {
    font-size: 18px !important;
    font-family: "Poppins", Sans-serif;
    font-size: 18px;
    font-weight: 600 !important;
    color: #01041F !important;
	padding: 0.5rem 1.5rem !important;
}

.current-menu-item a {
    color: #EB1D02 !important;
}

nav.navbar.navbar-expand-lg.navbar-light.bg-light {
    background-color: #FFF;
    height: 90px;
}

.cta-button-header a {
    background-color: #EB1D02;
    color: #fff !important;
    border-radius: 5px;
}

@media screen and (max-width:767px){

	nav.navbar.navbar-expand-lg.navbar-light.bg-light{
		height: auto;
	}
	
	.cta-button-header a {

    width: 200px;
    text-align: center;
}
	
}

@media screen and (max-width:1024px){

	nav.navbar.navbar-expand-lg.navbar-light.bg-light{
		height: auto;
	}
	
	.cta-button-header a {

    width: 200px;
    text-align: center;
}
	
	button.navbar-toggler.collapsed:hover{
		background-color: #fff !important;
	}	
}

.footer-top {
    padding: 0 0 4rem;
}

.footer-top p {
    color: #FFFFFF82;
    font-family: "Poppins", Sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 50px;
}

.footer-top h3 {
    color: #FFFFFF;
    font-family: "Poppins", Sans-serif;
    font-size: 30px;
    font-weight: 500;
}

.second-footer {
    padding: 4rem 0;
}

.main-footer {
    padding: 4rem 6rem 0;
  
    background-color: #01041F;
    background-image: url(https://infogenx.com/wp-content/uploads/2024/05/Group-45.png);
    background-position: -2rem 9rem;
    background-repeat: no-repeat;
    background-size: 100% auto;
    color: #fff;
}

.footer-widget p {
    color: #FFFFFFA1;
    font-family: "Poppins", Sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 26px;
	margin:0;
	    text-align: justify;
}

.socal-links svg {
    width: 24px;
	fill: #fff;
}
.socal-links span {
    margin-right: 1rem;

}

.socal-links {
    margin: 1rem 0;
}

.socal-links span a:hover svg{
	fill: #EB1D02;
}


.footer-widget ul {
    list-style: none;
    padding: 0;
}

.footer-widget ul li a {
    color: #FFFFFFA1;
    text-decoration: none;
    margin-bottom: 0.7rem !important;
    display: block;
	text-transform: capitalize;
    font-size: 16px;
}

.copy-rights {
    border-top: 1px solid #ffffff52;
    padding: 1rem 0;
    text-align: center;
}
.copy-rights p{
	 text-align: center;
	margin:0;
}

/* .elementor-element-4c0acb3 {
	width: 12%;
} */

.elementor-element-3e3b72a {
	width: 14% !important
}

.elementor-element-75738d0 {
	width: 74% !important;
}

.elementor-element-4c0acb3 {
	width: 12% !important;
}

.elementor-element-bee9e42 {
	width: 100% !important;
}

.elementor-element-1c5be69 {
	background-color: #fff !important;
}

a[href^="tel:"] {
    text-decoration: none !important;
}

.breadcrumb.flat {
  background: #f3f3f3;
  padding: 5px 10px !important;
  border-radius: 8px;
  margin: 10px 0;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.05);
  display: inline-block;
  height: auto;
}

.breadcrumb.flat > span {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 !important;
  margin: 0 !important;
}

.breadcrumb.flat a {
  background: linear-gradient(#EB1D02, #EB1702);
  color: white;
  padding: 5px 12px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
  font-size: 14px;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.1);
  transition: 0.3s;
  display: inline-block;
}

.breadcrumb.flat a::after,
.breadcrumb.flat span:not(.breadcrumb_last)::after {
  content: none;
}

.breadcrumb.flat .breadcrumb_last {
  color: #23264B;
  font-weight: bold;
  font-size: 14px;
  padding: 4px 10px;
}

.breadcrumb.flat,
.breadcrumb.flat p,
.breadcrumb.flat .yoast-breadcrumb {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

.breadcrumb-section .e-con-inner {
  --padding-block-start: 5px;
  --padding-block-end: 5px;
}

.banner-section .e-con-inner {
  --padding-block-start: 0px !important;
  --padding-block-end: 0px !important;
}


@media (min-width: 1025px) {
  .custom-content, .why-choose-us {
    padding-left: 100px !important;
    padding-right: 100px !important;
  }
}

@media (max-width: 1024px) {
  .custom-content, .why-choose-us {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

.custom-sub-menu1
{
	width:304px;
}
.custom-sub-menu1_1
{
	width:385px;
}
.custom-sub-menu2
{
	width:280px;
}

.custom-sub-menu3
{
	width:215px;
}


a.hfe-sub-menu-item {
    padding-left: 10px !important;
}

/* Targeting all submenus */
.sub-menu {
    width: auto !important;
    padding-right: 0 !important;
}

/* Or more specific to your Elementor menu structure */
.elementor-nav-menu--dropdown .elementor-item {
    padding-right: 10px !important; /* Match padding with left */
}
.sub-menu {
    min-width: 200px !important; /* Adjust value as needed */
}

.heading, .elementor-icon-box-title, .elementor-image-box-title {
  color: #EB1702;
}


.equal-icon {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.equal-icon .elementor-icon-box-description {
  text-align: justify;
	padding:10px;
	color:#23264B;
}

.logo-carousel .slick-slide {
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.logo-carousel img {
  width: auto;
  height: 60px;   /* force same height for all logos */
  max-width: 100%;
  object-fit: contain;
  display: block;
}
.logo-carousel .slick-slide {
  background: #fff; /* or a light gray */
  border-radius: 8px;
}

.why-us-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: 30px;
  justify-content: center;
  padding: 30px 0;
}

.icon-box {
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  border-radius: 12px;
  padding: 20px;
  text-align: center;
  color: var(--e-global-color-1461dc2); /* description and title color */
  box-shadow: 0 0 10px rgba(0,0,0,0.1);
  transition: transform 0.3s;
}

.icon-box:hover {
  transform: translateY(-5px);
}

.icon-box i {
  font-size: 36px;
  margin-bottom: 15px;
  color: var(--e-global-color-82b097a); /* icon color */
}

.icon-box h4 {
  font-size: 18px;
  margin-bottom: 10px;
  color: var(--e-global-color-1461dc2); /* title color */
}

.icon-box p {
  font-size: 14px;
  line-height: 1.6;
  color: var(--e-global-color-1461dc2); /* description color */
}

@media (max-width: 767px) {
  .why-us-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 768px) {
  .large-mobile-text p {
    font-size: 18px !important;
  }

  .small-mobile-text p {
    font-size: 14px !important;
  }
}

/* Default desktop styles */
.my-heading {
  font-size: 48px;
  font-weight: bold;
}

.my-subheading {
  font-size: 30px;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .my-heading {
    font-size: 32px !important;
  }

  .my-subheading {
    font-size: 18px !important;
  }
}
.elementor-2582
{
	top: 50px !important;
}

.full-fit-image {
  height: 100%;
  display: flex;
  align-items: stretch;
}


.elementor-sticky--effects {
    margin-bottom: 0 !important;
}

.elementor-header {
    margin-bottom: 0 !important;
}

body.elementor-header-sticky {
    padding-top: 0 !important;
}
.elementor-sticky--effects + .elementor {
    margin-top: 0 !important;
}
/* Remove top margin/padding from Smart Slider section on homepage */
.home .elementor-element-90a1e8d {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Also check the main container of the page */
.home .elementor-section-wrap {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


.delivery-framework {
  padding: 40px 20px;
  max-width: 900px;
  margin: auto;
}

.section-title {
  font-size: 24px;
  margin-bottom: 30px;
  text-align: center;
}

.framework-step {
  display: flex;
  align-items: flex-start;
  margin-bottom: 30px;
}

.step-icon {
  font-size: 20px;
  background-color: #004f83;
  color: #fff;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  border-radius: 50%;
  margin-right: 15px;
  flex-shrink: 0;
  font-weight: bold;
}

.step-content h4 {
  margin: 0 0 5px;
  color: #1a1a1a;
}

.step-content p {
  margin: 0;
  color: #444;
}

.cta-button {
  text-align: center;
  margin-top: 40px;
}

.book-button {
  background-color: #0073e6;
  color: white;
  padding: 12px 25px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  transition: background 0.3s;
}

.book-button:hover {
  background-color: #005bb5;
}

.cta-banner {
  background: linear-gradient(90deg, #EB1D02, #EB1702);
  color: #fff;
  padding: 5px 0px;
  border-radius: 10px;
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  margin: 5px 0;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

/* Make images in user-generated content full width */
.elementor-widget-theme-post-content img,
.wpuf-post-content img,
.post-content img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block;
    margin: 20px 0;
}

/* Alternative selector if above doesn't work */
.elementor-post-content img,
.entry-content img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
}