/*custom css*/

  :root {
   --primary:#028b8b;;
   --secondary: #43a6dd;
   --transition-speed: 0.6s;
   --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
   /* layout-affecting values: no overshoot */
   --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
   /* paint-only values: gentle overshoot, the "elastic" in ElasticNav */
   
   /*what-we-do */
     --font-display: 'Space Grotesk', sans-serif;
  --font-body: 'Inter', sans-serif;

  --canvas: #FFFFFF;
  --ink: #16171B;
  --ink-soft: #24252B;
  --text-muted: #6E7178;
  --line: #ECEDF0;

  --indigo: #028b8b;
  --indigo-dark: #2E22A8;
  --lilac: #E7E4FC;
  --lilac-text: #E4E1FB;

  color-scheme: light;
   
   /*main css root */
   
    --font-default:
  'Poppins', sans-serif;
  --font-primary:
  'Poppins', sans-serif;
  --font-secondary:
  'Poppins', sans-serif;
  scroll-behavior: smooth;
  --color-bg: #029b9b;
  --color-light: #ffffff;
  --color-dark: #222;
  --color-heading: #222;
  --hero-overlay-color: #000000;
  --menu-color: #ffffff;
  --theme-color: #029b9b;
  --border-color: #e2e2e2;
  --theme-color-dark: #f8f8f8;
  --text-color: #3a3a3a;
  --hero-text-color: #ffffff;
  --text-white-color: #ffffff;
  --text-grey-color: #3a3a3a;
  --text-theme-color: #029b9b;
  --light-color: #ffffff;
  --color-default: #3a3a3a;
  --color-primary-hover: #029b9b;
  --color-secondary-hover: #0c6de0;
  --color-primary: #3a3a3a;
  --color-secondary: #424242;
  --color-start: #3a3a3a;
  --color-end: #3a3a3a;
  --hero-card-bg: rgb(228 227 223 / 17%);
  --box-shadow-color: rgb(82 90 101 / 10%);
   
  }



/*home index page */
.clients .swiper-slide img {
   
  filter: none !important;
    -webkit-filter: none !important;
 
}

  .featured {
    background: var(--theme-color-dark);
    padding: 100px 0;
    position: relative;
    overflow: hidden;
  }
  .featured::before{
    content:"";
    position:absolute;
    top:-140px; right:-140px;
    width:360px; height:360px;
    border-radius:50%;
    background: radial-gradient(circle at 30% 30%, rgba(2,155,155,0.12), transparent 70%);
  }
  .featured::after{
    content:"";
    position:absolute;
    bottom:-160px; left:-120px;
    width:320px; height:320px;
    border-radius:50%;
    background: radial-gradient(circle at 60% 60%, rgba(12,109,224,0.08), transparent 70%);
  }
 
  .featured .section-header { margin: 0 0 56px; position: relative; z-index: 1; }
  .featured .section-header h2 {
    font-size: 2.25rem;
    font-weight: 600;
    color: var(--color-heading);
    margin: 0 0 12px;
    line-height: 1.2;
  }
  .featured .section-header p {
    margin: 0;
    font-size: 1.02rem;
    font-weight: 300;
    color: var(--text-color);
  }
 
  .featured .cards-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
  }
 
  .featured .feature-card {
    background: #fff;
    border: 1px solid var(--border-color);
    border-radius: 16px 16px 6px 6px;
    overflow: hidden;
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
  }
  .featured .feature-card:hover {
    transform: translateY(-8px);
    border-color: var(--theme-color);
    box-shadow: 0 20px 36px -22px rgba(2, 155, 155, .38);
  }
 
  /* editor-window title bar */
  .featured .card-bar {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 12px 16px;
    background: var(--theme-color-dark);
    border-bottom: 1px solid var(--border-color);
  }
  .featured .card-bar .dot { width: 8px; height: 8px; border-radius: 50%; flex: none; }
  .featured .card-bar .dot:nth-child(1) { background: var(--theme-color); }
  .featured .card-bar .dot:nth-child(2) { background: var(--color-secondary-hover); }
  .featured .card-bar .dot:nth-child(3) { background: var(--color-dark); opacity: .3; }
  .featured .card-bar .file {
    margin-left: auto;
    font-family: 'SFMono-Regular', Consolas, monospace;
    font-size: .72rem;
    letter-spacing: .01em;
    color: var(--text-color);
    opacity: .55;
  }
 
  .featured .card-body { padding: 30px 26px 34px; }
 
  .featured .icon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    margin-bottom: 20px;
  }
  .featured .icon img { width: 22px; height: 22px; }
  .featured .icon-teal    { background: var(--theme-color); }
  .featured .icon-dark    { background: var(--color-dark); }
  .featured .icon-outline { background: #029b9b; border: 1.5px solid var(--theme-color); }
  .featured .card-rotated { transform: rotate(45deg); }
  .featured .card-rotated img { transform: rotate(-45deg); }
 
  .featured .card-body h4 {
    margin: 0 0 10px;
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--color-heading);
    transition: color 0.3s ease 0.2s;
  }
  
  .featured .card-body:hover h4 {
      color:#fff;
  }
  
  .featured .card-body p {
    margin: 0;
    font-size: .92rem;
    font-weight: 300;
    line-height: 1.65;
    color: var(--text-color);
    transition: color 0.3s ease 0.2s;
  }
 
 .featured .card-body:hover p {
     color:#fff;
 }
 
 
  @media (max-width: 991px) {
    .featured .cards-grid { grid-template-columns: repeat(2, 1fr); }
  }
  @media (max-width: 599px) {
    .featured { padding: 64px 0; }
    .featured .cards-grid { grid-template-columns: 1fr; }
  }
  

/*header css navbar */



  @property --nav-pad-y {
   syntax: '<length>';
   inherits: false;
   initial-value: 4rem;
  }

  @property --nav-inset {
   syntax: '<percentage>';
   inherits: false;
   initial-value: 10%;
  }

  @property --nav-margin {
   syntax: '<length>';
   inherits: false;
   initial-value: 14px;
  }

  @property --nav-radius {
   syntax: '<length>';
   inherits: false;
   initial-value: 14px;
  }

  @property --nav-shadow-a {
   syntax: '<number>';
   inherits: false;
   initial-value: 0.14;
  }

  body {
   font-family: 'Lato', Arial, sans-serif;
   color: #6b6b6b;
   font-size: 17px;
   line-height: 1.6;
   margin: 0;
  }

@media (min-width: 768px) {
    .navbar-expand-md .navbar-nav .nav-link {
      
        color: #000 !important;
    }
}

  /* ===================================== */
  /* ============ HERO / DEMO ============= */
  /* ===================================== */
  

  .overlay {
   position: absolute;
   z-index: -1;
   inset: 0;
   background: rgba(0, 0, 0, 0.6);
  }

  .main-content {
   background: #f2f2f2;
  }

  .main-content section {
   background: #fff;
   padding: 4rem 0 5rem;
  }

  .main-content section:nth-child(even) {
   background: #f7f7f7;
  }

  h2,
  h3 {
   padding: 2rem 0 .75rem;
   font-weight: 700;
   color: #4b4b4b;
  }

  /* ===================================== */
  /* ===== THE INTERESTING STUFF NOW ===== */
  /* ===================================== */

  .navbar {
   position: fixed;
   top: 0;
   z-index: 1030;

   /* every visual state boils down to five variables */
   left: var(--nav-inset);
   right: var(--nav-inset);
   margin-top: var(--nav-margin);
   padding: var(--nav-pad-y) 0;
   border-radius: var(--nav-radius);
   background-color: transparent;
   box-shadow: 0 10px 30px rgba(0, 0, 0, var(--nav-shadow-a));
   border: none;

   transition:
    background-color var(--transition-speed) var(--ease-spring),
    --nav-pad-y var(--transition-speed) var(--ease-smooth),
    --nav-inset var(--transition-speed) var(--ease-smooth),
    --nav-margin var(--transition-speed) var(--ease-smooth),
    --nav-radius var(--transition-speed) var(--ease-spring),
    --nav-shadow-a var(--transition-speed) var(--ease-spring);
  }
 .navbar--color--ghost .toggler-bars span,
  .navbar--color--white .toggler-bars span {
   background: rgb(3 100 49) !important;
  }

 .navbar--color--ghost .navbar-toggler, .navbar--color--white .navbar-toggler {
     border-color: transparent !important; 
}
  .navbar .container {
   display: flex;
   align-items: center;
   flex-wrap: wrap;
  }

  @media (min-width: 768px) {
   .navbar .container {
    flex-wrap: nowrap;
   }
  }

  .navbar-brand {
   font-size: 2.25rem;
   font-weight: 900;
   color: #4b4b4b;
   transition: color var(--transition-speed) var(--ease-smooth),
    font-size var(--transition-speed) var(--ease-smooth);
  }

  .navbar-text,
  .nav-link {
   transition: color var(--transition-speed) var(--ease-smooth);
  }

  /* --- the three navbar sections: logo | links | cta --- */
  .nav-logo {
   display: flex;
   align-items: center;
  }

  .nav-links {
   display: flex;
   align-items: center;
   min-width: 0;
   /* lets nav-links shrink instead of overflowing on tight widths */
  }

  .nav-cta {
   display: flex;
   align-items: center;
  }

  /* space between the links block and the CTA block (md+ row layout) */
  .navbar-collapse {
   gap: .75rem;
  }

  /* --- nav links --- */
  .navbar-nav {
   align-items: center;
   gap: .25rem;
  }

  .navbar-nav .nav-link {
   font-weight: 700;
   padding: .5rem 1rem;
   white-space: nowrap;
  }

  .navbar-nav .nav-link.active {
   color:#026531 !important;
  }

  /* --- Contact Us CTA button --- */
  .btn-contact {
   display: inline-block;
   font-weight: 700;
   padding: .55rem 1.5rem;
   border-radius: 999px;
   white-space: nowrap;
   text-decoration: none;
   border: 2px solid transparent;
   margin-left: .75rem;
   transition: color var(--transition-speed) var(--ease-smooth),
    background-color var(--transition-speed) var(--ease-smooth),
    border-color var(--transition-speed) var(--ease-smooth);
  }

  /* on the transparent/ghost resting state, make the CTA a solid pill so it
     always reads clearly against the hero image */
  .navbar--color--ghost .btn-contact {
   background-color: var(--primary);
   border-color: var(--primary);
   color: #fff;
  }

  /* once the bar becomes a solid color, flip the CTA to an outline so it
     doesn't fight the bar's own background */
  .navbar--color--primary .btn-contact,
  .navbar--color--secondary .btn-contact,
  .navbar--color--white .btn-contact {
   background-color: #028b8b;
   border-color: #fff;
   color: #fff;
   
  }

  .navbar--color--white .btn-contact {
   border-color: #1a1a1a;
   color: #1a1a1a;
  }

  .btn-contact:hover {
   opacity: .85;
   color: #fff;
  }

  /* --- navbar sizes: just set the two layout variables --- */

  .navbar--size--lg {
   --nav-pad-y: 2rem;
  }

  /* .navbar--size--md{ --nav-pad-y: 1rem; } */
  .navbar--size--sm {
   --nav-pad-y: 0rem;
  }

  /* --- navbar colors --- */
  .navbar--color--white {
   background-color: #fff;
  }

  .navbar--color--primary {
   background-color: var(--primary);
  }
/*sitcky change colorc*/
  .navbar--color--secondary {
   background-color: #fff;
   border-bottom: 1px solid #03642f;
  }

  /* floating pill state — driven by the same variables, so the pill
     grows into the full-width bar as one continuous motion */
  .navbar--color--ghost {
   background-color: #fff;
   --nav-inset: 10%;
   --nav-margin: 14px;
   --nav-radius: 14px;
   --nav-shadow-a: 0.14;
  }

  .navbar--color--secondary,
  .navbar--color--primary,
  .navbar--color--white {
   --nav-inset: 0%;
   --nav-margin: 0px;
   --nav-radius: 0px;
   --nav-shadow-a: 0;
  }

  .navbar--color--ghost .navbar-brand,
  .navbar--color--ghost .navbar-text,
  .navbar--color--ghost .nav-link {
   color: #1a1a1a;
  }

  /* secondary/primary readable text + toggler */
  .navbar--color--secondary .navbar-brand,
  .navbar--color--secondary .navbar-text,
  .navbar--color--secondary .nav-link,
  .navbar--color--primary .navbar-brand,
  .navbar--color--primary .navbar-text,
  .navbar--color--primary .nav-link {
   color: #fff;
  }

  .navbar-toggler {
   border-color: rgba(255, 255, 255, 0.6);
   transition: border-color var(--transition-speed) var(--ease-smooth);
   width: 2.25rem;
   height: 2.25rem;
   padding: 0;
   display: inline-flex;
   align-items: center;
   justify-content: center;
  }

  .navbar--color--ghost .navbar-toggler,
  .navbar--color--white .navbar-toggler {
   border-color: rgba(0, 0, 0, 0.2);
  }

  /* custom 3-bar icon, built from real elements instead of a static SVG
     background so each bar can be transformed independently into an X */
  .navbar-toggler .toggler-bars {
   position: relative;
   width: 1.35rem;
   height: 1rem;
   display: block;
  }

  .navbar-toggler .toggler-bars span {
   position: absolute;
   left: 0;
   width: 100%;
   height: 2px;
   border-radius: 2px;
   background: rgb(3 100 49);
   transition: transform .45s var(--ease-spring),
    opacity .45s var(--ease-spring),
    top .45s var(--ease-spring),
    background-color var(--transition-speed) var(--ease-smooth);
  }

  .navbar-toggler .toggler-bars span:nth-child(1) {
   top: 0;
  }

  .navbar-toggler .toggler-bars span:nth-child(2) {
   top: 50%;
   margin-top: -1px;
  }

  .navbar-toggler .toggler-bars span:nth-child(3) {
   top: 100%;
   margin-top: -2px;
  }

  .navbar--color--ghost .toggler-bars span,
  .navbar--color--white .toggler-bars span {
   background: rgba(0, 0, 0, 0.75);
  }

  /* morph into an X once the menu is open, in sync with the collapse */
  .navbar-toggler[aria-expanded="true"] .toggler-bars span:nth-child(1) {
   top: 50%;
   margin-top: -1px;
   transform: rotate(45deg);
  }

  .navbar-toggler[aria-expanded="true"] .toggler-bars span:nth-child(2) {
   opacity: 0;
   transform: scaleX(0);
  }

  .navbar-toggler[aria-expanded="true"] .toggler-bars span:nth-child(3) {
   top: 50%;
   margin-top: -1px;
   transform: rotate(-45deg);
  }

  /* once the menu is open the bars stay white regardless of navbar
     color, since the open panel always has the dark background */
  .navbar-toggler[aria-expanded="true"] .toggler-bars span {
   background: #fff;
  }

  .ctnBtn {
   display: none;
  }

  /* fit all 6 links + the CTA in the row layout on medium/tighter
     desktop widths, before things get real cramped */
  @media (min-width: 768px) and (max-width: 1199.98px) {
   .navbar-brand {
    font-size: 1.6rem;
   }

   .navbar-nav .nav-link {
    padding: .5rem .6rem;
    font-size: .92rem;
   }

   .btn-contact {
    padding: .5rem 1.1rem;
    font-size: .92rem;
    margin-left: .5rem;
   }
  }

  @media (max-width: 767.98px) {

   .contactBtn {
    display: none;
   }

   .ctnBtn {
    display: block;
   }

   #mobileNav {
    flex-basis: 100%;
    width: 100%;
   }
 
   .navbar-collapse.collapsing {
    transition: height .45s var(--ease-smooth),
     background-color var(--transition-speed) var(--ease-smooth);
   }

   .navbar-collapse.show,
   .navbar-collapse.collapsing {
    background: rgb(5 39 21);
    /*border-radius: 10px;*/
    margin: 0.5rem -0.5rem 0;
    padding: 1rem 0.75rem;
    overflow: hidden;
   }

   .navbar-collapse.show .navbar-text,
   .navbar-collapse.collapsing .navbar-text,
   .navbar-collapse.show .nav-link,
   .navbar-collapse.collapsing .nav-link {
    color: #fff !important;
   }

   /* stack the links, give every item a real touch target, and add
       breathing room instead of the whole menu piling into one blob */
   .navbar-nav {
    align-items: stretch;
    gap: 0;
    width: 100%;
   }

   .navbar-nav .nav-item+.nav-item {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
   }

   .navbar-nav .nav-link {
    padding: .85rem .25rem;
    width: 100%;
   }

   /* each link (and the CTA) fades and slides up into place with a
       short stagger, once the panel has finished opening — gives the
       menu the same "elastic" character as the scroll transition */
   .navbar-collapse.show .nav-item,
   .navbar-collapse.show .btn-contact {
    animation: navItemIn .5s var(--ease-spring) both;
   }

   .navbar-collapse.show .nav-item:nth-child(1) {
    animation-delay: .04s;
   }

   .navbar-collapse.show .nav-item:nth-child(2) {
    animation-delay: .08s;
   }

   .navbar-collapse.show .nav-item:nth-child(3) {
    animation-delay: .12s;
   }

   .navbar-collapse.show .nav-item:nth-child(4) {
    animation-delay: .16s;
   }

   .navbar-collapse.show .nav-item:nth-child(5) {
    animation-delay: .2s;
   }

   .navbar-collapse.show .nav-item:nth-child(6) {
    animation-delay: .24s;
   }

   .navbar-collapse.show .btn-contact {
    animation-delay: .28s;
   }

   @keyframes navItemIn {
    from {
     opacity: 0;
     transform: translateY(10px);
    }

    to {
     opacity: 1;
     transform: translateY(0);
    }
   }

   /* the CTA becomes a full-width block button below the links so it's
       always reachable with a thumb and never gets squeezed */
   .btn-contact {
    display: block;
    width: 100%;
    text-align: center;
    margin: .75rem 0 0;
    padding: .75rem 1.5rem;
   }

   .navbar-collapse.show .btn-contact,
   .navbar-collapse.collapsing .btn-contact {
          background-color: #016531;
        border-color: #046532;
        color: #fff !important;
   }

   /* keep the resting sizes compact on small screens so the hero
       isn't pushed off-screen by desktop-scale padding */
   /*.navbar--size--xl {*/
   /* --nav-pad-y: 1.5rem;*/
   /*}*/

   .navbar--size--lg {
    --nav-pad-y: 1.25rem;
   }

   .navbar--color--ghost {
    --nav-inset: 4%;
   }
  }

  @media (prefers-reduced-motion: reduce) {

   .navbar-collapse.show .nav-item,
   .navbar-collapse.show .btn-contact {
    animation: none;
   }
  }

  /* on md screens (768–991px) the bar is already in row layout, but it's
     still a fairly narrow desktop width — keep the resting size compact
     here too so the ghost pill doesn't dominate the hero */
  @media (min-width: 768px) and (max-width: 991.98px) {
   .navbar--size--xl {
    --nav-pad-y: 1.5rem;
   }

   .navbar--color--ghost {
    --nav-inset: 5%;
   }
  }

  /* small-phone tweak so the inset pill doesn't get uncomfortably narrow */
  @media (max-width: 420px) {
   .navbar--color--ghost {
    --nav-inset: 2.5%;
    --nav-margin: 10px;
   }
  }

  @media (prefers-reduced-motion: reduce) {

   .navbar,
   .navbar-brand,
   .navbar-text,
   .nav-link,
   .navbar-toggler,
   .btn-contact {
    transition: none;
   }
  }

/*what-we-do*/

 .we-do-wrap{
  
  margin: 0 auto;
  padding: 64px 24px 96px;
  background: radial-gradient(120% 140% at 82% 0%, #052d18 0%, var(--ink) 55%);
}

/* ================= HERO ================= */
.whatDo{
  position: relative;
  overflow: hidden;
  max-width: 1180px;
  border-radius: 28px;
  padding: 44px 36px 52px;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  align-items: center;
  gap: 24px;
  isolation: isolate;
  margin:auto;
}

.we-do-hero-pill{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.14);
  color: #EDEEF2;
  font-family: var(--font-body);
  font-size: 0.78rem;
  font-weight: 500;
  padding: 7px 14px 7px 11px;
  border-radius: 999px;
  margin-bottom: 26px;
}
.we-do-hero-pill::before{
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #9C93F7;
  display: inline-block;
}

.whatDo h1{
  font-family: var(--font-display);
  font-weight: 600;
  font-size: clamp(2.1rem, 4vw, 3.15rem);
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: #f3f2df;
  margin: 0 0 18px;
}

.whatDo p{
  font-size: 1.02rem;
  line-height: 1.65;
  color: #B9BAC4;
  max-width: 460px;
  margin: 0;
}

.we-do-hero-art{
  position: relative;
  height: 320px;
  width: 100%;
}
.we-do-hero-art svg{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transition: transform .25s ease-out;
  will-change: transform;
}

@media (max-width: 860px){
  .whatDo{ grid-template-columns: 1fr; padding: 36px 26px 30px; border-radius: 22px; }
  .we-do-hero-art{ height: 220px; order: -1; }
  .whatDo p{ max-width: 100%; }
}

/* ================= FEATURES ================= */
.we-do-features{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 56px;
  text-align: center;
  max-width: 1180px;
  margin: auto;
}

.we-do-feature{
  border-left: 1px solid var(--line);
  transition: transform .25s ease;
}
.we-do-feature:first-child{ border-left: none; padding-left: 2px; }
.we-do-features .we-do-feature-icon {
    margin: auto;
    margin-bottom: 27px;
}
.we-do-feature-icon{
  width: 56px;
  height: 56px;
  border-radius: 15px;
  background: #f3f2df;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--indigo);
  margin-bottom: 22px;
  transition: background .25s ease, color .25s ease, transform .3s cubic-bezier(.34,1.56,.64,1);
}
.we-do-feature-icon svg{
  width: 26px;
  height: 26px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.we-do-feature-icon text{
  fill: currentColor;
  stroke: none;
  font-family: var(--font-display);
}
.we-do-feature-icon .we-do-cube-face{
  fill: currentColor;
  stroke: none;
  opacity: 0.9;
}

.we-do-feature:hover .we-do-feature-icon{
  background: var(--indigo);
  color: #fff;
  transform: translateY(-3px);
}

.we-do-feature h3{
  font-family: var(--font-display);
  font-size: 1.14rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  margin: 0 0 10px;
  color: #fff;
  padding: 0px;
}

.we-do-feature p{
  font-size: 0.92rem;
  line-height: 1.6;
  color: #fff;
  margin: 0;
  padding:15px;
  text-align: center;
}

@media (max-width: 900px){
  .we-do-features{ grid-template-columns: repeat(2, 1fr); row-gap: 40px; }
  .we-do-feature:nth-child(2n+1){ border-left: none; padding-left: 2px; }
  .we-do-feature:nth-child(2){ border-left: 1px solid var(--line); padding-left: 28px; }
}
@media (max-width: 560px){
  .we-do-features{ grid-template-columns: 1fr; row-gap: 34px; }
  .we-do-feature{ border-left: none !important; padding: 0 !important; }
  .we-do-hero-art {
      display: none;
  }
}
 
 
 /*clinets say testimonial */
  :root {
        --c-teal: #029b9b;
        --c-blue: #2563eb;
        --c-purple: #8b5cf6;
        --c-pink: #ec4899;
        --c-orange: #f59e0b;
        --c-green: #10b981;
        --star-color: #ffb400;
    }
 
    .testimonials.section { position: relative; padding: 120px 0 130px; overflow: hidden; isolation: isolate; }
 
    .testimonials .mesh-blob { position: absolute; border-radius: 50%; filter: blur(100px); z-index: -1; }
    .testimonials .mesh-blob.b1 { width: 520px; height: 520px; top: -260px; left: -160px; background: radial-gradient(circle, rgba(2,155,155,.55), transparent 70%); }
    .testimonials .mesh-blob.b2 { width: 460px; height: 460px; top: -120px; right: -140px; background: radial-gradient(circle, rgba(139,92,246,.4), transparent 70%); }
    .testimonials .mesh-blob.b3 { width: 480px; height: 480px; bottom: -240px; left: 30%; background: radial-gradient(circle, rgba(236,72,153,.32), transparent 70%); }
    .testimonials .mesh-blob.b4 { width: 380px; height: 380px; bottom: -160px; right: 5%; background: radial-gradient(circle, rgba(245,158,11,.28), transparent 70%); }
 
    .testimonials .section-header { text-align: center; max-width: 640px; margin: 0 auto 66px; }
 
    .testimonials .eyebrow {
        display: inline-flex; align-items: center; gap: 8px;
        font-size: 12.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
        color: #fff;
        background: linear-gradient(120deg, var(--c-teal), var(--c-blue), var(--c-purple));
        background-size: 200% 200%;
        animation: t-gradient-shift 6s ease infinite;
        padding: 9px 20px; border-radius: 30px; margin-bottom: 24px;
        box-shadow: 0 8px 20px -6px rgba(37,99,235,.45);
    }
 
    @keyframes t-gradient-shift {
        0%, 100% { background-position: 0% 50%; }
        50% { background-position: 100% 50%; }
    }
 
    .testimonials .section-header h2 {
        font-size: 44px; font-weight: 800; line-height: 1.15; letter-spacing: -0.03em;
        margin: 0 0 16px; color: var(--color-heading);
    }
    .testimonials .section-header h2 .grad {
        background: linear-gradient(100deg, var(--c-teal), var(--c-blue) 45%, var(--c-purple) 75%, var(--c-pink));
        background-size: 200% auto;
        -webkit-background-clip: text; background-clip: text; color: transparent;
        animation: t-gradient-shift 8s ease infinite;
    }
    .testimonials .section-header p { font-size: 16.5px; line-height: 1.7; color: var(--text-grey-color); margin: 0; }
 
    .t-slider {
        position: relative;
        /*-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);*/
        /*mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);*/
    }
 
    .t-viewport { cursor: grab; padding: 18px 0 30px; }
    .t-viewport.dragging { cursor: grabbing; }
 
    .t-track { display: flex; gap: 26px; width: max-content; will-change: transform; }
 
    .t-card {
        position: relative; flex: 0 0 auto; width: 380px; padding: 4px; border-radius: 24px;
        background: linear-gradient(150deg, var(--accent, var(--c-teal)), transparent 45%);
        transition: transform .4s cubic-bezier(.2,.7,.3,1);
        user-select: none;
    }
    .t-viewport:not(.dragging) .t-card:hover { transform: translateY(-10px); }
 
    .t-card-inner {
        position: relative; height: 100%;
        background: rgba(255,255,255,.9);
        backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
        border-radius: 21px; padding: 30px 26px 24px;
        box-shadow: 0 20px 45px -16px color-mix(in srgb, var(--accent, #029b9b) 45%, transparent);
        overflow: hidden;
    }
    .t-card-inner::after {
        content: ""; position: absolute; top: -60px; right: -60px; width: 140px; height: 140px;
        border-radius: 50%; background: var(--accent, var(--c-teal)); opacity: .12;
    }
 
    .t-quote-mark {
        position: absolute; top: 2px; right: 20px; font-size: 70px; line-height: 1; font-weight: 900;
        color: var(--accent, var(--c-teal)); opacity: .12; font-family: Georgia, serif; pointer-events: none;
    }
 
    .t-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; position: relative; }
    .t-stars { display: flex; gap: 3px; }
    .t-stars i { color: var(--star-color); font-size: 14px; }
    .t-stars i.bi-star { color: #e6e6e6; }
 
    .t-rating-pill {
        display: flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 700; color: #fff;
        background: var(--accent, var(--c-teal)); padding: 5px 11px; border-radius: 20px;
    }
    .t-rating-pill i { font-size: 12px; }
 
    .t-content p {
        position: relative; font-size: 15px; line-height: 1.75; color: var(--text-color); margin: 0 0 24px;
        display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
    }
 
    .t-profile { display: flex; align-items: center; gap: 14px; position: relative; }
 
    .t-avatar-wrap {
        position: relative; width: 54px; height: 54px; flex-shrink: 0; border-radius: 50%; padding: 2.5px;
        background: linear-gradient(135deg, var(--accent, var(--c-teal)), color-mix(in srgb, var(--accent, var(--c-teal)) 40%, #fff));
    }
    .t-avatar { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; display: block; border: 2.5px solid #fff; }
    .t-verified {
        position: absolute; bottom: -2px; right: -2px; width: 18px; height: 18px; border-radius: 50%;
        background: var(--accent, var(--c-teal)); border: 2px solid #fff;
        display: flex; align-items: center; justify-content: center;
    }
    .t-verified i { color: #fff; font-size: 9px; }
 
    .t-info h3 { font-size: 15.5px; font-weight: 700; color: var(--color-heading); margin: 0 0 1px; }
    .t-info h4 { font-size: 12.5px; font-weight: 600; color: var(--accent, var(--c-teal)); margin: 0; }
    .t-info span { font-size: 12px; color: var(--text-grey-color); opacity: .8; }
 
    .t-hint {
        text-align: center; font-size: 12.5px; color: var(--text-grey-color); opacity: .6;
        margin-top: 20px; display: flex; align-items: center; justify-content: center; gap: 6px;
    }
 
    @media (max-width: 768px) {
        .testimonials .section-header h2 { font-size: 30px; }
        .t-card { width: 300px; }
        .t-card-inner { padding: 24px 20px 20px; }
    }
    
    
    
    /*main index file css*/
   


    /* =========================================================
       SERVICES — EDITORIAL INDEX LAYOUT
    ========================================================= */

    #services {
        position: relative;
        padding: 130px 0 100px;
        background: var(--light-color);
        font-family: var(--font-default);
    }

    #services .container {
        max-width: 1180px;
    }

    /* ---- Header : heading + lead sit side by side, left aligned ---- */

    #services .services-head {
        display: grid;
        grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
        gap: 60px;
        align-items: end;
        padding-bottom: 54px;
        border-bottom: 1px solid var(--color-dark);
    }

    #services .services-head h2 {
        margin: 0;
        color: var(--color-heading);
        font-size: clamp(38px, 4.6vw, 60px);
        line-height: 1.08;
        font-weight: 600;
        letter-spacing: -1.3px;
    }

    #services .services-head .lead {
        margin: 0 0 6px;
        color: var(--text-grey-color);
        opacity: .8;
        font-size: 16.5px;
        line-height: 1.85;
        max-width: 40ch;
    }

    /* ---- List ---- */

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

    .service-row {
        position: relative;
        display: grid;
        grid-template-columns: minmax(0, .95fr) 86px minmax(0, .95fr) 60px;
        align-items: center;
        gap: 34px;
        padding: 30px 22px;
        margin: 0 -22px;
        border-radius: 14px;
        border-bottom: 1px solid var(--border-color);
        text-decoration: none;
        cursor: pointer;
        background: transparent;
        transition: background .35s ease, border-color .35s ease;
    }

    .service-row:last-child {
        border-bottom: 1px solid var(--border-color);
    }

    .service-row:hover {
        background: rgba(2, 155, 155, .06);
        border-bottom-color: transparent;
    }

    .service-row-title {
        margin: 0;
        color: var(--color-heading);
        font-size: clamp(22px, 2.4vw, 30px);
        font-weight: 550;
        letter-spacing: -.4px;
        transition: color .3s ease, transform .35s ease;
    }

    /* Centered image sitting between the title and the description */
    .service-row-media {
        justify-self: center;
        width: 72px;
        height: 72px;
        border-radius: 16px;
        overflow: hidden;
        box-shadow: 0 10px 24px rgba(2, 155, 155, .18);
        transition: transform .4s ease, box-shadow .4s ease;
    }

    .service-row-media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform .5s ease;
    }

    .service-row:hover .service-row-media {
        transform: scale(1.08) rotate(3deg);
        box-shadow: 0 16px 32px rgba(2, 155, 155, .3);
    }

    .service-row:hover .service-row-media img {
        transform: scale(1.1);
    }

    .service-row-desc {
        margin: 0;
        color: var(--text-grey-color);
        opacity: .72;
        font-size: 14.5px;
        line-height: 1.75;
    }

    .service-row-arrow {
        justify-self: end;
        width: 42px;
        height: 42px;
        border-radius: 50%;
        border: 1.5px solid var(--border-color);
        display: flex;
        align-items: center;
        justify-content: center;
        transition: border-color .3s ease, background .3s ease, transform .35s ease;
    }

    .service-row-arrow svg {
        width: 16px;
        height: 16px;
        stroke: var(--color-heading);
        transition: stroke .3s ease, transform .35s ease;
    }

    .service-row:hover .service-row-title {
        color: var(--theme-color);
        transform: translateX(6px);
    }

    .service-row:hover .service-row-arrow {
        background: var(--theme-color);
        border-color: var(--theme-color);
        transform: rotate(45deg);
    }

    .service-row:hover .service-row-arrow svg {
        stroke: #fff;
    }

    /* ---- Cursor-follow preview panel (desktop, hover-capable only) ---- */

    .services-preview {
        position: fixed;
        top: 0;
        left: 0;
        width: 220px;
        height: 150px;
        border-radius: 14px;
        overflow: hidden;
        pointer-events: none;
        opacity: 0;
        transform: translate(-50%, -50%) scale(.92);
        transition: opacity .25s ease, transform .25s ease;
        z-index: 40;
        box-shadow: 0 24px 50px rgba(2, 155, 155, .28);
        background: var(--theme-color-dark);
    }

    .services-preview.is-visible {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
    }

    .services-preview img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    @media (hover: none), (pointer: coarse) {
        .services-preview {
            display: none;
        }
    }

    /* =========================================================
       RESPONSIVE
    ========================================================= */

    @media (max-width: 991px) {
        #services {
            padding: 95px 0 70px;
        }

        #services .services-head {
            grid-template-columns: 1fr;
            gap: 18px;
        }

        .service-row {
            grid-template-columns: 60px 1fr 50px;
            padding: 22px 16px;
            margin: 0 -16px;
        }

        .service-row-media {
            width: 56px;
            height: 56px;
            border-radius: 12px;
        }

        .service-row-desc {
            display: none;
        }
    }

    @media (max-width: 575px) {
        #services {
            padding: 75px 0 55px;
        }

        .service-row {
            padding: 18px 14px;
            gap: 16px;
        }

        .service-row-title {
            font-size: 20px;
        }

        .service-row-media {
            width: 48px;
            height: 48px;
        }

        .service-row-arrow {
            width: 36px;
            height: 36px;
        }
    }
    
    
    
.experienceCard {
    position: relative;
    overflow: hidden;
    background: #fff;
    isolation: isolate;
}

.experienceCard::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('../images/why-choose/experieance.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-size:100% 100%  ;
    opacity: 0;
    transform: scale(1.05);
    transition:
        opacity 1.2s ease-in-out,
        transform 1.8s ease;
    
    z-index: -1;
}

.experienceCard:hover::before {
    opacity: 1;
    transform: scale(1);
}

/*product card */

.productCard {
    position: relative;
    overflow: hidden;
    background: #fff;
    isolation: isolate;
}

.productCard::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('../images/why-choose/products.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-size:100% 100%  ;
    opacity: 0;
    transform: scale(1.05);
    transition:
        opacity 1.2s ease-in-out,
        transform 1.8s ease;
    
    z-index: -1;
}

.productCard:hover::before {
    opacity: 1;
    transform: scale(1);
}


/*Approach  card */

.approachCard {
    position: relative;
    overflow: hidden;
    background: #fff;
    isolation: isolate;
}

.approachCard::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('../images/why-choose/approach.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-size:100% 100%  ;
    opacity: 0;
    transform: scale(1.05);
    transition:
        opacity 1.2s ease-in-out,
        transform 1.8s ease;
    
    z-index: -1;
}

.approachCard:hover::before {
    opacity: 1;
    transform: scale(1);
}


/*pricing  card */

.pricingCard {
    position: relative;
    overflow: hidden;
    background: #fff;
    isolation: isolate;
}

.pricingCard::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('../images/why-choose/pricing.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-size:100% 100%  ;
    opacity: 0;
    transform: scale(1.05);
    transition:
        opacity 1.2s ease-in-out,
        transform 1.8s ease;
    
    z-index: -1;
}

.pricingCard:hover::before {
    opacity: 1;
    transform: scale(1);
}



/*delivery  card */

.deliveryCard {
    position: relative;
    overflow: hidden;
    background: #fff;
    isolation: isolate;
}

.deliveryCard::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('../images/why-choose/deploye.jpeg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-size:100% 100%  ;
    opacity: 0;
    transform: scale(1.05);
    transition:
        opacity 1.2s ease-in-out,
        transform 1.8s ease;
    
    z-index: -1;
}

.deliveryCard:hover::before {
    opacity: 1;
    transform: scale(1);
}


/*support  card */

.supportCard {
    position: relative;
    overflow: hidden;
    background: #fff;
    isolation: isolate;
}

.supportCard::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('../images/why-choose/support-team.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-size:100% 100%  ;
    opacity: 0;
    transform: scale(1.05);
    transition:
        opacity 1.2s ease-in-out,
        transform 1.8s ease;
    
    z-index: -1;
}

.supportCard:hover::before {
    opacity: 1;
    transform: scale(1);
}
 
    
/********************** SERVICES css ****************************/

 /* =========================================================
       SERVICES PAGE
    ========================================================= */

    .srv-pg-page {
        font-family: var(--font-default);
        color: var(--text-color);
        background: #fff;
        overflow: hidden;
    }

    /* =========================================================
       BREADCRUMB
    ========================================================= */

    .srv-pg-breadcrumb {
        background: #f7fafa;
        border-bottom: 1px solid #edf1f1;
        padding: 18px 0;
    }

    .srv-pg-breadcrumb ol {
        margin: 0;
        padding: 0;
        list-style: none;
        display: flex;
        align-items: center;
        gap: 10px;
        flex-wrap: wrap;
    }

    .srv-pg-breadcrumb li {
        font-size: 14px;
        color: #777;
        font-weight: 500;
    }

    .srv-pg-breadcrumb li:not(:last-child)::after {
        content: "/";
        margin-left: 10px;
        color: #aaa;
    }

    .srv-pg-breadcrumb a {
        color: var(--theme-color);
        text-decoration: none;
        transition: .3s ease;
    }

    .srv-pg-breadcrumb a:hover {
        color: #027d7d;
    }


    .srv-pg-hero {
        position: relative;
        padding: 110px 0 100px;
        background:
            radial-gradient(
                circle at 85% 20%,
                rgba(2, 155, 155, .12),
                transparent 30%
            ),
            linear-gradient(
                135deg,
                #ffffff 0%,
                #f6fbfb 100%
            );
    }

    .srv-pg-hero::before {
        content: "";
        position: absolute;
        width: 430px;
        height: 430px;
        right: -160px;
        top: -170px;
        border: 1px solid rgba(2, 155, 155, .13);
        border-radius: 50%;
    }

    .srv-pg-hero::after {
        content: "";
        position: absolute;
        width: 280px;
        height: 280px;
        right: -80px;
        top: -90px;
        border: 1px solid rgba(2, 155, 155, .10);
        border-radius: 50%;
    }

    .srv-pg-hero-content {
        position: relative;
        z-index: 2;
        max-width: 850px;
    }

    .srv-pg-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 22px;
        font-size: 13px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 2px;
        color: #016530;
    }

    .srv-pg-hero h1 {
        margin: 0;
        color: var(--color-heading);
        font-size: clamp(42px, 6vw, 78px);
        line-height: 1.2;
        font-weight: 700;
        letter-spacing: -2.5px;
    }

    .srv-pg-hero h1 span {
        color: var(--theme-color);
    }

    .srv-pg-hero-description {
        max-width: 720px;
        margin: 28px 0 0;
        font-size: 18px;
        line-height: 1.8;
        color: #666;
    }

    .srv-pg-hero-bottom {
        margin-top: 42px;
        display: flex;
        align-items: center;
        gap: 30px;
        flex-wrap: wrap;
    }

    .srv-pg-primary-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        padding: 15px 26px;
        background: var(--theme-color);
        color: #fff;
        border: 1px solid var(--theme-color);
        text-decoration: none;
        font-size: 14px;
        font-weight: 600;
        transition: .3s ease;
    }

    .srv-pg-primary-btn:hover {
        color: #fff;
        background: #027d7d;
        border-color: #027d7d;
        transform: translateY(-2px);
    }

    .srv-pg-primary-btn span {
        font-size: 19px;
        line-height: 1;
    }

    .srv-pg-hero-note {
        display: flex;
        align-items: center;
        gap: 10px;
        color: #777;
        font-size: 14px;
    }

    .srv-pg-hero-note i {
        color: var(--theme-color);
        font-size: 18px;
    }

   

    .srv-pg-intro {
        padding: 80px 0;
        background: #000;
        border-bottom: 1px solid #edf1f1;
    }

    .srv-pg-intro-label {
        color: var(--theme-color);
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 1.8px;
        text-transform: uppercase;
        margin-bottom: 15px;
    }

    .srv-pg-intro-title {
        font-size: 38px;
        line-height: 1.25;
        color: #fff;
        font-weight: 650;
        margin: 0;
        max-width: 600px;
    }

    .srv-pg-intro-text {
        color: #fff;
        line-height: 1.8;
        margin: 0;
        font-size: 16px;
    }

    .srv-pg-stat {
        border-left: 1px solid #dfe7e7;
        padding-left: 25px;
    }

    .srv-pg-stat-number {
        display: block;
        color: var(--theme-color);
        font-size: 36px;
        line-height: 1;
        font-weight: 700;
        margin-bottom: 8px;
    }

    .srv-pg-stat-label {
        color: #666;
        font-size: 13px;
        line-height: 1.5;
    }

 
    .srv-pg-services {
        padding: 100px 0 110px;
        background: #f7fafa;
    }

    .srv-pg-section-heading {
        margin-bottom: 55px;
    }

    .srv-pg-section-label {
        display: block;
        margin-bottom: 15px;
        color: var(--theme-color);
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 2px;
        text-transform: uppercase;
    }

    .srv-pg-section-title {
        margin: 0;
        color: var(--color-heading);
        font-size: clamp(34px, 4vw, 52px);
        line-height: 1.15;
        font-weight: 650;
        letter-spacing: -1.5px;
    }

    .srv-pg-section-description {
        max-width: 650px;
        margin: 20px 0 0;
        color: #666;
        line-height: 1.8;
        font-size: 16px;
    }

    .srv-pg-card {
        position: relative;
        height: 100%;
        min-height: 360px;
        padding: 38px 35px 32px;
        background: #fff;
        border: 1px solid #e4ebeb;
        overflow: hidden;
        transition:
            transform .35s ease,
            box-shadow .35s ease,
            border-color .35s ease;
    }

    .srv-pg-card::before {
        content: "";
        position: absolute;
        width: 0;
        height: 4px;
        left: 0;
        top: 0;
        background: var(--theme-color);
        transition: width .4s ease;
    }

    .srv-pg-card::after {
        content: "";
        position: absolute;
        width: 150px;
        height: 150px;
        right: -75px;
        bottom: -75px;
        border-radius: 50%;
        background: rgba(2, 155, 155, .055);
        transition: transform .4s ease;
    }

    .srv-pg-card:hover {
        transform: translateY(-8px);
        border-color: rgba(2, 155, 155, .35);
        box-shadow: 0 25px 55px rgba(35, 75, 75, .10);
    }

    .srv-pg-card:hover::before {
        width: 100%;
    }

    .srv-pg-card:hover::after {
        transform: scale(1.5);
    }

    .srv-pg-card-top {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 38px;
    }

    /*.srv-pg-card-number {*/
    /*    color: #b9c8c8;*/
    /*    font-size: 13px;*/
    /*    font-weight: 700;*/
    /*    letter-spacing: 1px;*/
    /*}*/

    .srv-pg-icon {
        /*width: 82px;*/
        /*height: 82px;*/
        display: flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(135deg, #04b5b5, #029b9b);
        border: 1px solid #029b9b;
        border-radius: 20px;
        color: var(--theme-color);
        box-shadow: 0 10px 24px rgba(2, 155, 155, .28);
        transition: all .35s ease;
        overflow: hidden;
    }

    .srv-pg-icon:has(i) {
        background: linear-gradient(135deg, #effafa, #e2f5f5);
        border-color: #dceeee;
        box-shadow: 0 8px 20px rgba(2, 155, 155, .08);
    }

    .srv-pg-card:hover .srv-pg-icon {
        transform: rotate(4deg) scale(1.05);
        box-shadow: 0 14px 30px rgba(2, 155, 155, .35);
    }

    .srv-pg-card:hover .srv-pg-icon:has(i) {
        background: var(--theme-color);
        border-color: var(--theme-color);
        color: #fff;
    }

    .srv-pg-icon img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform .35s ease;
    }

    .srv-pg-card:hover .srv-pg-icon img {
        transform: scale(1.08);
    }

    .srv-pg-icon i {
        font-size: 34px;
    }

    .srv-pg-card-content {
        position: relative;
        z-index: 2;
    }

    .srv-pg-card-title {
        margin: 0 0 16px;
        color: var(--color-heading);
        font-size: 22px;
        line-height: 1.3;
        font-weight: 650;
    }

    .srv-pg-card-description {
        color: #707878;
        font-size: 14px;
        line-height: 1.8;
        margin: 0 0 28px;
    }

    .srv-pg-card-link {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        color: var(--color-heading);
        text-decoration: none;
        font-size: 13px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: .8px;
        transition: .3s ease;
    }

    .srv-pg-card-link span {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        border: 1px solid #ccdada;
        transition: .3s ease;
    }

    .srv-pg-card-link:hover {
        color: var(--theme-color);
    }

    .srv-pg-card-link:hover span {
        background: var(--theme-color);
        border-color: var(--theme-color);
        color: #fff;
        transform: translateX(4px);
    }

    .srv-pg-cta {
        position: relative;
        padding: 100px 0;
        background: var(--color-heading);
        overflow: hidden;
    }

    .srv-pg-cta::before {
        content: "";
        position: absolute;
        width: 500px;
        height: 500px;
        right: -220px;
        top: -220px;
        border: 1px solid rgba(255,255,255,.10);
        border-radius: 50%;
    }

    .srv-pg-cta::after {
        content: "";
        position: absolute;
        width: 350px;
        height: 350px;
        right: -145px;
        top: -145px;
        border: 1px solid rgba(2,155,155,.35);
        border-radius: 50%;
    }

    .srv-pg-cta-content {
        position: relative;
        z-index: 2;
    }

    .srv-pg-cta-label {
        display: block;
        color: var(--theme-color);
        text-transform: uppercase;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 2px;
        margin-bottom: 18px;
    }

    .srv-pg-cta h2 {
        color: #fff;
        font-size: clamp(34px, 5vw, 58px);
        line-height: 1.15;
        font-weight: 650;
        max-width: 800px;
        margin: 0 0 22px;
    }

    .srv-pg-cta p {
        max-width: 680px;
        color: #bfc7c7;
        line-height: 1.8;
        font-size: 16px;
        margin-bottom: 32px;
    }

    .srv-pg-cta-btn {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        padding: 15px 25px;
        color: #fff;
        background: var(--theme-color);
        border: 1px solid var(--theme-color);
        text-decoration: none;
        font-weight: 600;
        font-size: 14px;
        transition: .3s ease;
    }

    .srv-pg-cta-btn:hover {
        color: #fff;
        background: transparent;
        border-color: #fff;
    }

    /* =========================================================
       EMPTY STATE
    ========================================================= */

    .srv-pg-empty {
        padding: 70px 30px;
        background: #fff;
        border: 1px solid #e5eded;
        text-align: center;
    }

    .srv-pg-empty h4 {
        color: var(--color-heading);
        margin-bottom: 10px;
    }

    .srv-pg-empty p {
        color: #777;
        margin: 0;
    }

    /* =========================================================
       RESPONSIVE
    ========================================================= */

    @media (max-width: 1199px) {
        .srv-pg-hero {
            padding: 90px 0 80px;
        }

        .srv-pg-services {
            padding: 80px 0 90px;
        }

        .srv-pg-card {
            min-height: 340px;
        }
    }

    @media (max-width: 991px) {
        .srv-pg-hero {
            padding: 75px 0;
        }

        .srv-pg-intro {
            padding: 65px 0;
        }

        .srv-pg-stat {
            margin-top: 25px;
            border-left: 0;
            border-top: 1px solid #dfe7e7;
            padding: 20px 0 0;
        }

        .srv-pg-services {
            padding: 70px 0 80px;
        }

        .srv-pg-cta {
            padding: 75px 0;
        }
    }

    @media (max-width: 767px) {
        .srv-pg-breadcrumb {
            padding: 14px 0;
        }

        .srv-pg-hero {
            padding: 65px 0;
        }

        .srv-pg-hero h1 {
            letter-spacing: -1.5px;
        }

        .srv-pg-hero-description {
            font-size: 15px;
            line-height: 1.7;
        }

        .srv-pg-hero-bottom {
            align-items: flex-start;
            flex-direction: column;
            gap: 18px;
        }

        .srv-pg-intro {
            padding: 55px 0;
        }

        .srv-pg-intro-title {
            font-size: 30px;
        }

        .srv-pg-intro-text {
            margin-top: 20px;
        }

        .srv-pg-stat {
            margin-top: 30px;
        }

        .srv-pg-services {
            padding: 60px 0 70px;
        }

        .srv-pg-section-heading {
            margin-bottom: 35px;
        }

        .srv-pg-section-title {
            font-size: 34px;
        }

        .srv-pg-card {
            min-height: auto;
            padding: 30px 26px;
        }

        .srv-pg-card-top {
            margin-bottom: 30px;
        }

        .srv-pg-icon {
            width: 70px;
            height: 70px;
        }

        .srv-pg-cta {
            padding: 65px 0;
        }
    }

    @media (max-width: 575px) {
        .srv-pg-hero h1 {
            font-size: 42px;
        }

        .srv-pg-hero-description {
            font-size: 14px;
        }

        .srv-pg-primary-btn,
        .srv-pg-cta-btn {
            width: 100%;
        }

        .srv-pg-card {
            padding: 27px 23px;
        }

        .srv-pg-card-title {
            font-size: 20px;
        }

        .srv-pg-cta h2 {
            font-size: 34px;
        }
    }

 
    /* =========================================================
       SCROLL REVEAL (fade-up) — controlled by JS below,
       identical behaviour on desktop and mobile
    ========================================================= */

    .srv-pg-reveal {
        opacity: 0;
        transform: translate3d(0, 34px, 0);
        transition:
            opacity 0.75s cubic-bezier(.22, 1, .36, 1),
            transform 0.75s cubic-bezier(.22, 1, .36, 1);
        will-change: opacity, transform;
    }

    .srv-pg-reveal.srv-pg-is-visible {
        opacity: 1;
        transform: translate3d(0, 0, 0);
        will-change: auto;
    }

    .srv-pg-reveal-delay-1 { transition-delay: .08s; }
    .srv-pg-reveal-delay-2 { transition-delay: .16s; }
    .srv-pg-reveal-delay-3 { transition-delay: .24s; }
    .srv-pg-reveal-delay-4 { transition-delay: .32s; }
    .srv-pg-reveal-delay-5 { transition-delay: .40s; }
    .srv-pg-reveal-delay-6 { transition-delay: .48s; }

    @media (prefers-reduced-motion: reduce) {
        .srv-pg-reveal,
        .srv-pg-reveal.srv-pg-is-visible {
            opacity: 1;
            transform: none;
            transition: none;
            animation: none;
        }

        .srv-pg-card,
        .srv-pg-primary-btn,
        .srv-pg-cta-btn,
        .srv-pg-icon,
        .srv-pg-card-link span {
            transition: none !important;
        }
    }
    
   



