body{
     font-family: "Inter Tight", sans-serif;
    overflow-x: clip !important; 
}
html{
    overflow-x: clip !important;
}

h1,h2,h3,h4,h5,h6{
    font-family: "Inter Tight", sans-serif;
   color:#000;
   
}    
img{
    height:auto;
    max-width:100% !important; 
}

p{
    font-size: 17px;
    font-family: "Inter Tight", sans-serif;
    font-weight: 400;
    color: #616C74;
    letter-spacing: 0.3px; 
    line-height: 1.6;
}
a{
    text-decoration:none;
}
ul {
    list-style-type: none;
    margin: 0;
    padding-left: 0;
}


 .our-service-images img {
    width: 100%;}
    
    .spanned-card{
        color: #ed1d24;
    }
    
    
    
    .our-service-box {
    overflow: hidden;}
 
/* --- THE WRAPPER (This locks the box in place) --- */
.hr-global-section {
    position: relative; /* THIS is the magic line that fixes your issue */
    width: 100%;
    background-color: #060e17; /* Or whatever your dark background is */
    padding: 0;
    overflow: hidden; /* Prevents unwanted horizontal scrolling */
}

/* --- THE DESKTOP BOX --- */
.map-info-box {
    position: absolute;
    top: 50%; /* Now this will calculate 50% of the section, not the website */
    left: 5%;
    transform: translateY(-50%);
    background-color: #0b1521;
    border-left: 4px solid #e32028;
    padding: 35px;
    border-radius: 4px;
    max-width: 400px;
    z-index: 20;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.8);
}

.map-info-box h2 {
  color: #ffffff;
  margin-top: 0;
  margin-bottom: 15px;
  line-height: 1.2;
}   

/* Ascentech Red Text */
.text-red {
  color: #e32028; 
}

.map-info-box p {
  color: #8fa6c1;
  
  margin-bottom: 25px;
}

/* 2-Column List Format */
.country-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr; /* Creates the two columns */
  gap: 12px 20px;
}

.country-list li {
  color: #ffffff;
  font-size: 0.95rem;
  display: flex;
  align-items: center;
}

/* Custom Cyan Bullet Points */
.country-list li::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  background-color: #ed1c24; /* Ties back to the map dots */
  border-radius: 50%;
  margin-right: 10px;
}

/* Responsive adjustment so it doesn't break on mobile */
@media (max-width: 900px) {
  .map-info-box {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    max-width: 90%;
    margin: 30px auto;
  }
}

/* Keeps the text readable in the center */
.hr-text-container {
  max-width: 900px;
  margin: 0 auto 50px auto;
  padding: 0 20px;
  text-align: center;
}

.hr-text-container h2 {
  font-size: 2.5rem;
  color: #ed1c24; 
  margin-bottom: 15px;
  letter-spacing: 1px;
}

.hr-text-container p {
  font-size: 1.1rem;
  color: #8fa6c1;
  line-height: 1.6;
}

.world-map-fullwidth {
  position: relative;
  width: 100%;
  max-width: 100%; /* Limits how big it gets on massive desktop screens */
  margin: 0 auto; /* Centers the whole map block nicely on the page */
}

/* 2. Make the image fluid */
.world-map-fullwidth img {
  width: 100%; /* Forces the image to perfectly fill the container with zero gaps */
  height: auto; /* Ensures the map doesn't stretch or distort */
  display: block;
}

.map-base-image {
  width: 100%;
  height: auto;
  display: block;
  opacity: 0.7; /* Dims map slightly so the glowing dots pop */
}

/* --- The Blinking Pins --- */
.map-pin {
  position: absolute;
  width: 12px; /* Slightly larger for visibility on full-width */
  height: 12px;
  background-color: #ed1c24;
  border-radius: 50%;
  transform: translate(-50%, -50%); /* Centers exactly on the coordinate */
  box-shadow: 0 0 12px #ed1c24, 0 0 24px #ed1c24;
  cursor: pointer;
  z-index: 10;
}

/* The expanding blinking ring effect */
.pin-ring {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  border: 2px solid #ed1c24;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: pulse-animation 2s infinite ease-out;
}

/* --- City Tooltips (Hover effect) --- */
.city-tooltip {
  position: absolute;
  bottom: 150%;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgba(6, 14, 23, 0.9);
  border: 1px solid #ed1c24;
  padding: 8px 14px;
  border-radius: 4px;
  font-size: 0.9rem;
  color: #ffffff;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  pointer-events: none; /* Prevents tooltip from interfering with mouse hover */
  box-shadow: 0 4px 10px rgba(0,0,0,0.5);
  font-weight: 500;
}

.map-pin:hover .city-tooltip {
  opacity: 1;
  visibility: visible;
  bottom: 180%;
}

/* --- Repositioned Pin Locations --- */
/* Top is % from top of image, Left is % from left of image */
/* Based exactly on the provided equirectangular dotted map */

.casablanca   { top: 46.5%;
    left: 45.5%; }
.casablanca .pin-ring { animation-delay: 0s; }

.cairo        {     top: 49.5%;
    left: 55%; }
.cairo .pin-ring { animation-delay: 0.3s; }

.uae          {     top: 54.5%;
    left: 61.5%; }
.uae .pin-ring { animation-delay: 0.6s; }

.kenya          {top: 65.5%;
    left: 58%;}
.kenya .pin-ring { animation-delay: 0.6s; }



.lagos        { top: 62%;
    left: 47.5%; }
.lagos .pin-ring { animation-delay: 0.9s; }

.chennai      {top: 59.5%;
    left: 68.5%; }
.chennai .pin-ring { animation-delay: 1.2s; }

.johannesburg {    top: 81.5%;
    left: 54%;
 }
.johannesburg .pin-ring { animation-delay: 1.5s; }


/* --- The Animation Keyframes --- */
@keyframes pulse-animation {
  0% {
    width: 12px;
    height: 12px;
    opacity: 1;
  }
  100% {
    width: 55px;
    height: 55px;
    opacity: 0;
  }
}

/* Responsive adjustments for mobile */
@media (max-width: 768px) {
  .hr-text-container h2 { font-size: 2rem; }
  .map-pin { width: 6px; height: 6px; box-shadow: 0 0 6px #ed1c24; }
  @keyframes pulse-animation {
    0% { width: 6px; height: 6px; opacity: 1; }
    100% { width: 30px; height: 30px; opacity: 0; }
  }
}

.our-header-section  {
    position:relative;
}

.bd-header-top {
    background-color: #004182;
    position: relative;
    padding:10px 0;
}

.bd-header-top-left ul {
      list-style: none;
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 0 41px;
}

.bd-header-top-left ul li:first-child {
    position: relative;
}

.bd-header-top-left ul li:first-child:before {
  position: absolute;
    content: "";
    width: 1px;
    height: 20px;
    inset-inline-end: -22px;
    top: 50%;
    background-color: rgba(255, 255, 255, 0.3);
    transform: translateY(-50%);
}

.bd-header-top-left ul li a ,
.bd-header-top-right ul li a{
       color: #ffffff;
    font-size: 15px;
    transition: all 0.3s linear;
}
.bd-header-top ul li span {
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 14px;
    margin-inline-end:10px;
}


.header-sec-top {
    position: relative;
    padding: 10px 0;
    width: 100%;
    z-index: 99;
    border-bottom: 1px solid #F5F5F5;
}
.header-sec-top .container, 
.hero .container{
    padding-right: 15px;
    padding-left: 15px;
}
.our-navigation{
    margin-left: -2.5rem;
}
.mega-menu-list  {
      display: flex;
    gap: 25px;
    justify-content: center;
    padding: 0;
    align-items: center;
    margin-right: 40px;
    margin: 0;
    list-style: none;
}
.mega-menu-list > li > a {
        position: relative;
    font-size: 13px;
    color: #000;
    transition: .2s linear;
    letter-spacing: 0.7px;
    display: inline;
    padding: 0;
    font-weight: 400;
    text-transform: uppercase;
}
.mega-menu-list > li > a:hover{
    color:#ed1c24;
}
.sticky.header-sec-top {
     background: #fff;
    padding: 10px 0;
    visibility: visible;
    animation: slideDown 0.7s ease-out;
    box-shadow: rgb(100 100 111 / 5%) 0px 7px 29px 0px;
    transform: translateY(0%);
}

.sticky {
    position: fixed;
    width: 100%;
    z-index: 9999;
    top: 0px;
}

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

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

.menu-list-itenms .drop-menulist {
   position: absolute;
    background-color: #ffffff;
    padding: 20px 30px;
    box-shadow: 0px 10px 20px rgba(8, 0, 42, 0.08);
    left: 0;
    top: 38px;
    min-width: 220px;
    width: max-content;
    opacity: 0;
    visibility: hidden;
    z-index: 9;
    border-radius: 0 0 5px 5px;
    text-align: left;
    transition: all 300ms ease;
    transform-origin: top;
    transform: scaleY(0);
}
.drop-menulist li {
    white-space: nowrap;
}
.menu-list-itenms:hover .drop-menulist{
    opacity: 1;
    pointer-events: all;
    transform: scaleY(1);
    visibility: visible;
}
.menu-list-itenms .drop-menulist li {
    position: relative;
}
.menu-list-itenms  {
    position: relative;
    list-style: none;
    padding-right: 17px;
}
.menu-list-itenms .dropn-btnmobile i {
    color: #000;
    font-size: 14px;
}
.menu-list-itenms .drop-menulist li a {
    position: relative;
     border-radius: 50px;
    transition: all 0.5s ease-out;
    font-weight: 400;
    gap: 10px;
    color: #000000;
    display: flex;
    text-align: start;
    align-items: center;
    cursor: pointer;
    line-height: initial;
    padding: 10px 0;
    margin-left: 0;
    font-size: 13px;
    letter-spacing: 0.8px;
    line-height: 1.5;
    transition: all 0.5s;
}
.menu-list-itenms .drop-menulist li a.active {
    color: #ed1c24;
}


.mega-menu-list li > a.active {
    color: #E81217;
    font-weight: 600;
}

.mega-menu-list li.menu-list-itenms > a{
    padding:37px 0;
}
.dropn-btnmobile {
    position: absolute;
    right: -3px;
    top: 3px;
    bottom: 0;
    margin: auto 0;
}

.header-sec-top .comman-btn .btn{
    background:#004182;
    color:#fff;
    border:unset;
}

.opt1-wrap {
      display: flex;
    align-items: center;
    border: 1.5px solid #dbdee1;
    border-radius: 100px;
    overflow: hidden;
    max-width: fit-content;
    justify-content: flex-end;
}
/*.opt1-btn {*/
/*   padding: 9px 22px;*/
/*    font-size: 13.5px;*/
/*    font-weight: 600;*/
/*    text-decoration: none;*/
/*    letter-spacing: 0.3px;*/
/*    display: flex;*/
/*    align-items: center;*/
/*    gap: 7px;*/
/*    transition: background 0.2s, color 0.2s;*/
/*    white-space: nowrap;*/
/*    cursor: pointer;*/
/*    background: none;*/
/*    border: none;*/
/*    color: #fff;*/
/*    background: #2b3944;*/
/*}*/


.opt1-btn {
    padding: 9px 22px;
    font-size: 13.5px;
    font-weight: 600;
    text-decoration: none;
    letter-spacing: 0.3px;
    display: flex;
    align-items: center;
    gap: 7px;
    transition: background 0.2s, color 0.2s;
    white-space: nowrap;
    cursor: pointer;
    background: none;
    border: none;
    color: #000;
    /* background: #2b3944; */
}


.opt1-divider {
    width: 1px;
    height: 20px;
    background: rgba(255, 255, 255, 0.2);
    flex-shrink: 0;
}
.opt1-btn.primary {
    background: #2b3944;
       color: #fff;
    font-weight: 400;
}
.opt1-btn:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #000;
}
.opt1-btn.primary:hover{
    background:#ed1c24;
    color:#fff;
}
.section-title{
        position: relative;
    margin-bottom: 1rem;

}


.sec-big-title {
       font-size: 34px;
    font-weight: 600;
    position: relative;
    line-height: 1.3;
    margin-bottom: 1rem;
    /*margin-bottom: 3rem;*/
}

.small-title {
    font-size: 15px;
    letter-spacing: 2px;
    text-transform: uppercase;
       color: #004181;
    display: block;
      margin-bottom: 6px;
    font-weight: 500;
    letter-spacing: 2.5px;
}



.comman-btn .btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:14px 26px;
  border:1px solid #ed1c24;
  border-radius:50px;
  color:#ed1c24;
  background:transparent;
  text-decoration:none;
  transition:.3s;
  position:relative;
  overflow:hidden;
  font-size: 14px;
}

.comman-btn .btn:hover{
  background:#ed1c24;
  color:#fff;
}

.comman-btn .icon{
  position:relative;
  overflow:hidden;
  display:inline-flex;
  transform:rotate(-45deg);
}

.comman-btn .icon svg{
  width:16px;
  fill:currentColor;
  transition:.3s;
}

.comman-btn .icon svg:last-child{
  position:absolute;
  transform:translateX(-150%);
}

.comman-btn .btn:hover svg:first-child{
  transform:translateX(150%);
}

.comman-btn .btn:hover svg:last-child{
  transform:translateX(0);
}




.our-key-number{
   background: #004180;
    padding: 4rem 0 4rem;
    position: relative;
    overflow: visible;
    max-width: 100%;
}

.counter-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.counter-wrapper .counter-items h4 {
    font-size:45px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1;
    text-decoration: none;
    transition: all 0.4s ease-in-out;
    font-style: italic;
}

.counter-items h5{
      color: #fff;
    line-height: 1.4;
    font-size: 15px;
    margin: 0;
    letter-spacing: 0.5px;
    font-weight:400;
}

.counter-items {
    text-align:center;
    position:relative;
}


/**/

.exper-teamsd{
    position:relative;
    padding:5rem 0;
}
.splu-parae{
    font-size: 22px;
    color: #000;
    font-style: italic;
}
.logo-shapes{
    position:relative;
}
.test-parar{
        font-size: 20px;
    background: #f8f8f9;
    padding: 15px;
    border-left: 5px solid #ed1c24;
    color: #4a4a4a;
    font-style: italic;
}
.testibox-ul{
    display:flex;
    flex-wrap:wrap;
    max-width:500px;
    margin-top: 2rem;
}
.testibox-ul li img{
    margin-bottom:1rem;
}
.testibox-ul li{
       flex: 1;
    text-align: center;
   max-width:220px;
}
.testibox-item .testibox-title{
    font-size:17px;
}
.asect-lot{
       display: flex;
    gap: 13px;
    align-items: center;
}

.asect-lot li::after {
    content: "|";
    margin-left: 10px;
    color: #ffff;
}

.asect-lot li:last-child::after {
    content: "";
}





/* Section Container */
.capability-section {
    padding: 5rem 0;
    background: #f7f7f7;
    position:relative;
}

/* Row spacing for Bootstrap */
.capability-section .row {
    row-gap: 24px;
}

/* Main Card Style */
.capability-card {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    display: flex; 
    cursor: pointer;
    background-color: #0f1941;
}

/* Image - Fixed height with smooth zoom effect */
.capability-card img {
    width: 100%;
    height: 400px;
    display: block;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Normal State */
.capability-card::after {
    content: "";
    position: absolute;
    inset: 0;
       background: linear-gradient(-180deg, rgba(15, 25, 65, 0) 33%, #02101e);
    transition: background 0.5s ease;
    z-index: 1;
}


.capability-card:hover::after {
  
    background: linear-gradient(
        to top, 
        rgba(10, 25, 55, 0.95) 0%,   
        #02101eb5
    );
}
.card-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 30px 25px;
    z-index: 2;
}

.card-title{
    font-size: 19px;
    font-weight: 400;
    color: #ffffff;
    text-decoration: none;
    letter-spacing: 0.5px;
    display: block;
}

.card-para {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.6;
    margin-bottom: 0;
    opacity: 0;
    max-height: 0;
    transform: translateY(25px);
    overflow: hidden;
    transition: opacity 0.5s ease,  transform 0.5s cubic-bezier(0.25, 1, 0.5, 1),  max-height 0.5s ease, margin-top 0.5s ease;
}

.capability-card:hover .card-para {
    opacity: 1;
    max-height: 120px; 
    transform: translateY(0);
    margin-top: 15px;
}


.capability-flextd {
       display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: unset;
}

.label-tag {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #b01c2e;
    text-transform: uppercase;
    display: block;
    margin-bottom: 8px;
}

.card-image {
    width:100%;
}



/* Section Container */
.industries-sectors {
    position:relative;
      padding: 5rem 0;
    background: #f8f8f9;
}

/* Grid Layout Optimized */
.asct-indus {
    display: grid;
    /* Desktop-la 6 columns, Tablet-la 3, Mobile-la 2 */
    grid-template-columns: repeat(6, 1fr); 
    gap: 20px;
}

/* Card Styling */
.asct-card {
    background: #fff;
    padding: 20px 15px;
    border-radius: 12px;
    border: 1px solid #e5e7eb;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 140px; /* fixed height bathila min-height safe */
    cursor: pointer;
}

/* Hover Effect */
.asct-card:hover {
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
    border-color: #004182;
}

/* Icon Styling */
.asct-icon img {
    width: 40px;
    height: 40px;
    object-fit: contain;
    margin-bottom: 12px;
    /* Unga exact blue color filter applied */
    filter: brightness(0) saturate(100%) invert(11%) sepia(61%) saturate(6374%) hue-rotate(199deg) brightness(91%) contrast(102%);
    transition: transform 0.3s ease;
}



/* Red/Maroon Filter for Alternate Cards (2, 4, 6, 8, 10...) */
.asct-indus .asct-card:nth-child(even) .asct-icon img {
    filter: invert(16%) sepia(96%) saturate(6920%) hue-rotate(353deg) brightness(100%) contrast(86%);
}

/* Hover Border Color for Alternate Cards */
.asct-indus .asct-card:nth-child(even):hover {
    border-color: #d11a2a; 
}

/* Optional: Default Hover Border for Blue Cards */
.asct-indus .asct-card:nth-child(odd):hover {
    border-color: #004182;
}
.asct-card:hover .asct-icon img {
    transform: scale(1.1);
}

/* Title Styling */
.asct-card h4 {
  font-size: 16px;
    font-weight: 600;
    margin-top: 0.5rem;
    text-align: center;
}

/* --- Responsive Queries --- */

@media (max-width: 1024px) {
    .asct-indus {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 768px) {
    .asct-indus {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 480px) {
    .asct-indus {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    .asct-card {
        padding: 15px 10px;
        min-height: 120px;
    }
}


/*aboutsection-start*/



.about-section {
    position: relative;
    padding: 80px 0;
    background-color: #fff;
}
.bd-about-shape {
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 137px;
    z-index: 1;
}

.about-badge {
    background-color: #eef7f7;
    color: #006969;
    padding: 6px 18px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 700;
    display: inline-block;
}

.about-title {
    color: #12222d;
    font-size: 34px;
    font-weight: 700;
    margin-top: 15px;
    line-height: 1.2;
}


.experience-number{
       font-size: 200px;
    color: #004182;
    font-weight: 500;
}
.about-section .experience-text {
        display: inline-block;
    text-transform: uppercase;
    position: absolute;
    inset-inline-end: -18;
    inset-block-end: -25px;
       font-size: 13px !important;
    font-weight: 600;
}

/* --- EXPERIENCE SHAPE (LEFT COL) --- */
.exp-shape-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 220px;
    width: 220px;
    z-index: 1;
}

/* The Yellow Crescent Shape */
.exp-shape-wrapper::before {
       content: "";
    position: absolute;
    left: -2rem;
    top: 45%;
    transform: translateY(-50%);
    width: 110px;
    height: 220px;
    background-color: #e5eef6;
    border-radius: 110px 0 0 110px;
    z-index: -1;
}

.exp-val {
       font-size: 179px;
    font-weight: 600;
    color: #004181;
    line-height: 1;
}

.exp-lbl {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #12222d;
    text-align: center;
}

/* CENTER IMAGE */
.center-img {
    /*border-radius:5px;*/
    /*box-shadow: 0 15px 35px rgba(0,0,0,0.1);*/
}

/* RIGHT COLUMN INFO */
.user-info {
       display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 80px;
}


.advantage-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 15px;
    position:relative;
}
.advantage-list li{
  position: relative;
    padding-left: 2rem;
}
/* Bullet icon fix */
.advantage-list li::before {
  content: "\f128";
    position: absolute;
    left: 0;
    top: 0;
    width: 24px;
    height: 24px;
    background: #2b3944;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-family: flaticon_normal-icon !important;
}

/* BUTTON CUSTOM */
.btn-custom {
    display: inline-flex;
    align-items: center;
    background-color: #006969;
    color: #fff;
    padding: 14px 30px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
}

.btn-custom:hover {
    background-color: #004141;
    color: #fff;
}

.icon-wrap {
    margin-left: 10px;
    display: flex;
}

/* RESPONSIVE */
@media (max-width: 991px) {
    .about-title { font-size: 28px; }
    .exp-shape-wrapper { margin-bottom: 30px; }
}




/* Base Section Styling */
.hiring-section {
        background: linear-gradient(135deg, #03396f 60%, #004182 60%);
    padding: 6rem 0 6rem;
    color: #ffffff;
}
.hiring-header-row {
      display: flex;
    justify-content: center;
    margin: 0 0 3rem;
}
.hiring-content {
    margin: auto;
}

.hiring-content p {
    color: #cbd5e0;
    margin: 0;
}
.heiring-images img{
    /*height: 200px;*/
    width: 100%;
    object-fit: cover;
    border-radius: 100px;
}
/* Common Card Styling */
.feature-box {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 15px;
    padding: 35px 25px;
    height: 100%; 
    text-align:center/* All boxes same height */
    /*transition: transform 0.3s ease;*/
}

/*.feature-box:hover {*/
/*    background: rgba(255, 255, 255, 0.06);*/
/*    transform: translateY(-5px);*/
/*}*/

/* Percentage Card Specifics */
.stat-box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.stat-value {
   font-size: 65px;
    font-weight: 800;
    color: #e31e24;
    line-height: 1;
}

.stat-text {
       font-size: 1rem;
    font-weight: 500;
    margin-top: 10px;
    color: #cbd5e0;
}

/* Icon & Labels */
.box-icon {
    color: #e31e24;
    font-size: 1.8rem;
}

.box-label {
    font-size: 1.1rem;
    font-weight: 400;
    margin: 20px 0 10px;
    color: #fff;
}

.box-desc {
  font-size: 0.95rem;
    color: #cbd5e0;
    line-height: 1.6;
    margin: 0;
}

/* Red Banner Styling */
.red-banner-cta {
      background-color: #ed1c24;
    border-radius: 12px;
    padding: 25px 45px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 4rem;
}

.banner-info {
    display: flex;
    align-items: center;
    gap: 20px;
}

.banner-icon {
    font-size: 2.2rem;
    opacity: 0.8;
}

.banner-text {
      font-size: 1.1rem;
    font-weight: 500;
    margin: 0;
    max-width: 63%;
    color: #fff;
}

.banner-btn {
    background-color: #ffffff;
    color: #000;
    text-decoration: none;
    padding: 12px 28px;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.9rem;
    white-space: nowrap;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .red-banner-cta {
        flex-direction: column;
        text-align: center;
        gap: 25px;
    }
    .banner-info {
        flex-direction: column;
    }
}
.feature-box img{
    display:flex;
    margin:auto;
    filter: invert(16%) sepia(96%) saturate(6920%) hue-rotate(353deg) brightness(100%) contrast(86%);
}



/* service style two */

.where-we-value{
       position: relative;
    padding: 4rem 0 4rem;
    background: #004182;
}

.bd-service-tab .bd-service-tab .nav-pills{
  margin-bottom: 50px;
}

.bd-service-tab .nav-pills {
  justify-content: space-evenly;
    padding: 0 30px;
    position: relative;
    z-index: 5;
}

.bd-service-tab .nav-pills::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  inset-inline-start: 0;
  inset-block-start: 50%;
  transform: translateY(-50%);
  z-index: -1;
  background-color: rgba(255, 255, 255, 0.15);
}

.bd-service-tab .nav-link {
   display: block;
    /* padding-top: 0px; */
    padding-inline-end: 25px;
    /* padding-bottom: 0px; */
    padding-inline-start: 40px;
    font-size: 15px;
    text-decoration: none;
    text-transform: capitalize;
    border-radius: 50px;
    transition: all 0.3s ease-in-out;
    color: #fff;
    background-color: #2b3944;
    /* height: 50px; */
    border: 1px solid rgba(255, 255, 255, 0.15);
    position: relative;
    letter-spacing: 1.5px;
}
.bd-service-tab .nav-link::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50px;
  background-color: rgba(255, 255, 255, 0.15);
  inset-inline-start: 26px;
  inset-block-start: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
}
.bd-service-tab .nav-pills .nav-link.active,
.bd-service-tab .nav-pills .show > .nav-link {
  color: #ffff;
  background-color: #ed1c24;
  border-color: #ffff;
}
.bd-service-tab .nav-pills .nav-link.active::before,
.bd-service-tab .nav-pills .show > .nav-link::before {
  background-color: #f9d67b;;
}

.bd-service-two .content .title {
  color: #fff;;
  text-transform: capitalize;
  margin-bottom: 20px;
}
.bd-service-two .content .desc {
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 140px;
}


.bd-service-two .thumb img {
  width: 100%;
  height: 100%;
  border-radius: 16px;
}
.bd-service-two .thumb-chart {
  margin-top: 130px;
}

.bd-service-two .thumb-chart img {
  width: 100%;
  height: 100%;
}

.bd-service-tab .nav-pills::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    inset-inline-start: 0;
    inset-block-start: 50%;
    transform: translateY(-50%);
    z-index: -1;
    background-color: rgba(255, 255, 255, 0.15);
}

.where-we-value .comman-btn .btn {
    border: 1px solid #fff;
    color: #2b3944;
    background: #fff;
}


.where-we-value .content p{
      color: #fff;
    font-style: italic;
}

.where-we-value .content h3 {
        color: #fff;
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.where-we-value .content .advantage-list{
       gap: 26px;
    padding: 1rem 0 0;
}
.where-we-value .content .advantage-list li {
    position: relative;
    padding-left: 35px;
    font-size: 16px;
    color: #fff;
    font-weight: 400;
}


/* --- Banner Main Section --- */
.rs-banner-eight {
    position: relative;
    z-index: 1;

}

/*.rs-banner-content::before {*/
/*   content: "";*/
/*    position: absolute;*/
/*    top: 36%;*/
/*    left: 27%;*/
/*    transform: translate(-50%, -50%) rotate(-15deg);*/
/*    width: 900px;*/
/*    height: 900px;*/
/*    background: url(../images/bg/banner-logo.png) no-repeat center;*/
/*    background-repeat: no-repeat;*/
/*    background-size: contain;*/
/*    opacity: 0.08;*/
/*       z-index: -1;*/
/*}*/


@media only screen and (min-width: 1200px) and (max-width: 1280px) {
    
    .rs-banner-eight .rs-banner-title {
        font-size: 48px; 
        line-height: 1.2;
        max-width: 100%; 
        margin-bottom: 20px;
        font-weight: 600;
    }

}


.rs-banner-eight .comman-btn {
    
}



.rs-banner-eight .banner-shape-one {
    position: absolute;
    bottom: 50px;
    inset-inline-start: 0;
}
/* --- Left Side Content --- */
.rs-banner-eight .rs-banner-content {
       position: relative;
    z-index: 2;
    padding-top: 70px;
            max-width: 600px;
                padding-left: 20px;
}

.rs-banner-eight .rs-banner-subtitle {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    color: #2b3944;
    margin-bottom: 15px;
    display: inline-block;
}

.rs-banner-eight .rs-banner-title {
       font-weight: 600;
    line-height: 1.1;
    color: #2b3944;
        font-size: 60px;
    line-height: 1.3;
    /* max-width: 90%; */
    margin: 0;
}
.rs-banner-eight .rs-banner-title em{
    color:#ed1c24;
}
.rs-banner-eight .rs-banner-line {
    width: 100%;
    max-width: 500px;
    height: 1px;
    background: rgba(97, 108, 116, 0.2);
    position: relative;
    display: block;
    margin: 30px 0;
}

.rs-banner-eight .rs-banner-line::after {
    content: "";
    position: absolute;
    width: 145px;
    background: #ab052d;
    height: 2px;
    top: -1px;
    left: 0;
}

.rs-banner-eight .rs-banner-content .counter-items .counter,
.rs-banner-eight .rs-banner-content .counter-items h4 {
    font-size:50px;
}


.bann-contetns{
    min-width:fit-content;
}
.bann-contetns .counter-items:first-child{
    border-bottom: 1.5px solid #dbdee1;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
/* --- Right Side Swiper Area --- */
.rs-banner-thumb {
    position: relative;
    z-index: 1;
}

.myBannerSwiper {
    width: 100%;
    overflow: hidden;
}

.myBannerSwiper img {
    width: 100%;
    height: 785px;
    display: block;
    object-fit: cover;
    /*border-radius:15px;*/
}
.btn.gbtn{
       color: #fff;
    background: #004182;
    border-color: #004182;
}
.btn.gbtn:hover{
    border-color:#ed1c24;
}


/**/

.rs-banner-eight .rs-banner-feature {
    width: 100%;
    /* max-width: 620px; */
    position: absolute;
    bottom: 0px; /* Slider bottom-la fixed-ah irukum */
    left: -545px; /* Image-ku mela overlap aagura logic */
    z-index: 10; /* Slider layer-a vida mela irukanum */
}
.banner-numbe{
    display: flex;
    gap: 50px;
    margin-top: 50px;
    padding-left: 50px;
}
.rs-banner-eight .rs-banner-feature-inner {
    display: grid;
    grid-template-columns: 233px auto; /* Image and Content side-by-side */
    gap: 30px;
    align-items: center;
    padding: 20px;
    background: #2b3944;
    border-radius: 6px 0px 0px 6px;
    box-shadow: 15px 15px 40px rgba(0,0,0,0.15);
    max-width: 86%;
}
.rs-banner-desc{
        font-size: 20px;
    margin-bottom: 40px;
}
.rs-banner-eight .rs-banner-feature-thumb {
    flex-shrink: 0;
}

/* --- Image Zoom Effect Optimization --- */
.rs-banner-eight .rs-banner-feature-thumb {
    overflow: hidden; /* Image box-a vittu veliya varaama irukka */
    border-radius: 6px; /* Corner smooth-ah irukka */
}

.rs-banner-eight .rs-banner-feature-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* Initial state - normal size */
    transform: scale(1); 
    /* Smooth transition for 0.8 seconds */
    transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1); 
}

/* --- Hover Effect --- */
.rs-banner-eight .rs-banner-feature:hover .rs-banner-feature-thumb img {
    /* Light zoom - 1.08 kudutha subtle-ah modern-ah irukum */
    transform: scale(1.08); 
}
.rs-banner-eight .rs-banner-feature-title {
    color: #ffffff;
    font-size: 18px;
    margin-bottom: 12px;
}

.rs-banner-eight .rs-banner-feature-desc {
    color: rgba(255,255,255,0.8);
    font-size: 14px;
    /* margin-bottom: 20px; */
}

  .text-wrap {
  position: relative;
    display: block;
    font-family: sans-serif;
    font-size: 72px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1.1;
    margin-top: 7px;
  }
 
  /* bottom layer — outline only */
  .stroke {
       color: transparent;
    -webkit-text-stroke: 2px #e02020;
  }
 
  /* top layer — solid fill, wipes up then exits up */
  .fill {
    position: absolute;
    inset: 0;
    color: #e02020;
    -webkit-text-stroke: 2px #e02020;
    clip-path: inset(100% 0 0 0);
    animation: wipeUp 4s cubic-bezier(0.83, 0, 0.17, 1) 3s infinite;
  }
 
  @keyframes wipeUp {
    0%        { clip-path: inset(100% 0 0 0); }   /* hidden below */
    35%, 65%  { clip-path: inset(0% 0 0 0); }     /* fully visible */
    100%      { clip-path: inset(0% 0 100% 0); }  /* exits upward */
  }

/* --- Responsive Adjustments --- */
@media (max-width: 1400px) {
    .rs-banner-eight .rs-banner-feature {
               left: -469px;
         max-width: 550px; 
    }
    
    .rs-banner-eight .rs-banner-feature-inner {
            grid-template-columns: 195px auto;
    }
    .rs-banner-eight .rs-banner-content {
            padding-bottom: unset;
    }
}


@media (max-width: 991px) {
    .rs-banner-eight .rs-banner-content {
        text-align: center;
        margin-bottom: 40px;
    }
    .rs-banner-eight .rs-banner-line {
        margin: 25px auto;
    }
}


.rs-btn.has-border.has-border-white {
    border-color: #fff;
}
.rs-btn.has-text.is-text-white {
    color: #ffffff;
}
.rs-btn.has-text.has-icon {
   gap: 8px;
    font-size: 15px;
}
.rs-btn.has-border {
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    border-color: #ab052d;
    border-radius: 0;
}
.rs-btn.has-icon {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.rs-btn.has-text {
    padding: 0;
    width: unset;
    height: unset;
    background: transparent;
}
.rs-btn {
    font-size: 17px;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 26px;
    transition: all 0.4s ease-out 0s;
    border-radius: 50px;
    font-weight: 500;
    position: relative;
    z-index: 1;
    overflow: hidden;
    background:#ab052d;
}





.asct-client {
  padding: 4rem 0;
  text-align: center;
  overflow: hidden;
}

.client-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-bottom: 40px;
}

.client-title::before,
.client-title::after {
  content: "";
  height: 1px;
  background: #ddd;
  flex: 1;
}

.asct-client .sec-big-title {
   font-size: 24px;
    font-weight: 400;
    margin: 0;
}


/*.client-logo{*/
    /*border: 1px solid rgba(3, 31, 66, 0.08);*/
/*    height: 180px;*/
/*    text-align: center;*/
/*    line-height: 180px;*/
/*    width: 240px;*/
/*    margin-right: -1px;*/
/*    border-bottom: none;*/
/*    background: #fff;*/
/*}*/
.client-logo .clientSwiper {
  padding: 20px 0;
}


.client-logo .swiper-slide {
  width: auto !important;
  display: flex;
  justify-content: center;
  align-items: center;
}

.client-logo .swiper-slide img {
  max-width: 140px;
  opacity: 0.7;
  transition: 0.3s;
}

.client-logo .swiper-slide img:hover {
  opacity: 1;
}

.clientSwiper .swiper-wrapper {
  transition-timing-function: linear !important;
}

.hr-section {
  background: #f8f9f8;
  position:relative;
}


.hr-section .image-box img {
  border-radius: 12px;
    height: 800px;
    object-fit: cover;
    width: 100%;

}
.hr-section .accordion{
    margin-top:30px;
}

/* CALL BOX */
.hr-section .call-box {
  position: absolute;
  bottom: 20px;
  left: 20px;
  background: #ffffff;
 padding: 25px;
  border-radius: 10px;
  box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}

.hr-section .call-box .icon {
 background: #004181;
    color: #fff;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-right: 10px;
}

/* RIGHT CONTENT */
.hr-section .content-box {
     background: #034282;
    padding: 40px;
    border-radius: 12px;
}
.hr-section .content-box .accordion-item, .hr-section .accordion-button:not(.collapsed), .hr-section .accordion-button{
    background:transparent;
}
.hr-section .accordion-button, .hr-section .accordion-button:not(.collapsed), .hr-section .accordion-item{
    border:unset;
    box-shadow:unset;
}
.hr-section .accordion-body p{
       color: #fff;
    font-size: 15px;
    font-weight: 300;
}
.hr-section .accordion-body h4{
    color: #fff;
    font-size: 18px;
    margin-bottom: 10px;
    margin-top: 25px;
}
.hr-section .accordion-body{
    padding:0;
}
.hr-section .accordion-button {
    padding:0;
    color:#fff;
    letter-spacing: 0.4px;
}
.hr-section .accordion-button span{
    border: 1px solid rgba(255, 255, 255, 0.15);
    text-transform: capitalize;
    border-radius: 50px;
    color: #fff;
    padding: 8px 20px;
    margin-right: 25px;
}
.hr-section .accordion-item{
    margin-bottom: 20px;
    border-bottom: 1px solid rgb(255 255 255 / 15%);
    padding-bottom: 20px;
    border-radius: 0;
}
.hr-section .accordion-button::after{
        color: #fff;
    filter: invert(1);
    width: 15px;
    height: 15px;
    font-size: 14px;
    background-size: contain;
}
.hr-section .tag {
  font-size: 14px;
  letter-spacing: 2px;
  color: #0d6b5c;
  font-weight: 600;
}

.hr-section .title {
  font-size: 28px;
  font-weight: 700;
}

.hr-section .list {
  padding-left: 20px;
}

.hr-section .list {
    padding-left: unset !important;
}
.hr-section .list li {
      position: relative;
    padding-left: 22px;
    font-size: 15px;
    color: #fff;
    font-weight: 300;
    margin-bottom: 15px;
}
.hr-section .list li::before {
   content: "\f128";
    position: absolute;
    left: 0;
        top: 9px;
    height: 24px;
    color: #ed1c24;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-family: flaticon_normal-icon !important;
}


/* BUTTON */
.hr-section .btn-contact {
  background: #0d6b5c;
  color: #fff;
  padding: 10px 20px;
  border-radius: 30px;
  text-decoration: none;
  display: inline-block;
}

.hr-section .btn-contact:hover {
  background: #094c42;
}
.hr-section .comman-btn .btn {
    border: 1px solid #fff;
    color: #fff;
    background: transparent;
}
.hr-section .content-box p{
      color: #fff;
    font-size: 15px;
    font-weight: 300;
    margin: 0 0 1.5rem;
}

.account-number h5 a{
    color:#000;
}



.whatsapp-sideicons {
   position: fixed;
    top: 50%;
    right: 17px;
    z-index: 9999;
}

.whatsapp-sideicons .call-icon{
    display:none;
}

 .mobile-menu-top, 
    .mobile-menu-open {
    display:none;
}

.dberttop{
    display: flex;
    justify-content: space-between;
}
.gal-img .section-title{
    display: flex;
   justify-content: space-between;
}
.gal-img .btn{
    padding: 8px 18px;
}
.gal-img .icon{
    transform: rotate(359deg);
}
.client-logo img{
    width: 120px;
}


.benefit-sd{
        background: #004182;
   
    padding: 5rem 0 0;
}
.about-bannersd{
      background-image: url(../images/banner/ascentforce-team-meeting.webp);
    min-height: 600px;
    margin-top: 4.5rem;
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: end;
    height: 100%;
}
.text-flecsd{
  display: flex;
    position: relative;
    flex-direction: column;
    width: 1000px;
    max-width: 1000px;
    margin: 0 auto 60px;
}
.text-flecsd p{
        font-size: 80px;
    color: #fff;
    line-height: 1.2;
    font-weight: 500;
}
.text-flecsd p:nth-child(2){
    text-align:right
}
.about-bannersd:before{
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(0deg, rgba(1, 1, 1, 0) 30%, rgba(1, 1, 1, 0.75) 80%);
   
    transform: rotate(180deg);
}
.abou-para{
    font-size: 20px;
    max-width: 80%;
    text-align: center;
    margin: 0 auto 70px;
    color: #e2e2e2;
    font-weight: 300;
}
.benef-cards{
      position: relative;
    border-top: 2.5px solid #3b82f6;
    padding-top: 30px;
}
.banefit-iconsd img{
    filter: brightness(0) invert(1);
}
.benef-cards h4{
   font-size: 16px;
    color: #fff;
    letter-spacing: 0.3px;
    margin: 1.2rem 0;
    text-transform: uppercase;
}
.benef-cards p{
    color: #fff;
    opacity: 80%;
    font-weight: 200;
    font-size: 15px;
}



/*why-choose*/
.why-choose{
    position:relative;
    padding:5rem 0 0;
    overflow:hidden;
}
.why-choose li{
   position: relative;
    border-radius: 6px;
    background-color: #f7f7f7;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    max-width: 320px;
        z-index: 2;
}
.why-choose li h4{
   font-size: 16px;
    margin: 0;
    line-height: 1.4;
}
.why-choose li  span{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    min-width:50px;
    border-radius: 6px;
    background-color: #e02020;
    color: #fff;
    font-size: 22px;
    transition: background-color .5s ease;
    transition: all .5s ease;
}
.why-choose li span i{
    height:25px;
}
.why-choose li:hover span{
   background:#004182;
}
.why-choose li:nth-child(1) i {
    transform: rotate(45deg);
}
.why-choose li:nth-child(3) i {
    transform: rotate(-45deg);
}
.why-choose ul li+li {
    margin-top: 50px;
}
.why-choose li:nth-child(1), .why-choose li:nth-child(3){
    margin-left:auto;
}
.why-choose .schils-2 li:nth-child(1), .why-choose .schils-2 li:nth-child(3){
    margin-left:unset;
    margin-right:auto;
}
.why-choose .schils-2 li:nth-child(2){
    margin-left:auto;
}
.schils-2 li:nth-child(1) i{
    transform: rotate(135deg);
}
.schils-2 li:nth-child(2) i{
        transform: rotate(180deg);
}
.schils-2 li:nth-child(3) i {
        transform: rotate(230deg);
}
.why-point-topsd{
    margin-top:3rem
}
.why-choose-style1__img {
    position: relative;
    display: block;
    width: 640px;
    height: 640px;
    margin: 0 0 -150px -140px;
    z-index: 1;
}
.why-choose-style1__img .image-sinner {
    position: relative;
    display: block;
    width: 350px;
    margin: 0 auto;
    /*padding-top: 50px;*/
        padding-top: 31px;
    z-index: -2;
}


.why-choose-style1__img:after, .why-choose-style1__img:before {
    content: "";
    position: absolute;
    bottom: 0;
    border-radius: 50%;
    background-color: transparent;
    border: 1px solid #dde6e3;
    margin: 0 auto;
    z-index: -1;
}
.why-choose-style1__img:before {
    top: 10px;
    left: 0;
    right: 10px;
}
.why-choose-style1__img:after {
    top: 0;
    left: 10px;
    right: 0;
}

.grid-image-fancybox {
    padding: 3rem 0 3rem;
}