:root{
    --primary:#2563EB;
    --primary-dark:#1D4ED8;
    --accent:#16C784;

    --hero-bg:#F7FAFF;
    --section:#FFFFFF;
    --section-light:#F4F8FC;

    --heading:#0F172A;
    --text:#64748B;
    --border:#E2E8F0;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Manrope",sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 48px));margin:auto}
/* ===========================
   Header
=========================== */

.site-header{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;

    background: rgba(255,255,255,.96);
    backdrop-filter: blur(14px);

    padding: 18px 0;

    box-shadow: 0 5px 25px rgba(0,0,0,.05);

      transition: transform 0.35s ease, opacity 0.35s ease;
}
.site-header.header-hidden {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
}

.nav-wrap{
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.brand img{
    width:120px;
    max-height:55px;
    object-fit:contain;
}

/* Navigation */

.main-nav{
    display:flex;
    align-items:center;
    gap:30px;
}

.main-nav>a:not(.btn){

    position:relative;

    color:#334155;

    font-size:15px;

    font-weight:600;

    text-decoration:none;

    transition:.3s ease;

}

/* Hover */

.main-nav>a:not(.btn):hover{

    color:#2563EB;

}

/* Active */

.main-nav>a.active{

    color:#2563EB;

}

.main-nav>a.active::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:100%;

    height:3px;

    background:#2563EB;

    border-radius:10px;

}

/* Underline Animation */

.main-nav>a:not(.btn)::after{

    content:"";

    position:absolute;

    left:50%;

    bottom:-8px;

    width:0;

    height:2px;

    background:#2563EB;

    transition:.3s;

    transform:translateX(-50%);

}

.main-nav>a:not(.btn):hover::after{

    width:100%;

}

/* Mobile */

.nav-toggle{

    display:none;

    border:none;

    background:none;

    color:#0F172A;

    font-size:30px;

    cursor:pointer;

}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:7px;padding:14px 22px;font-size:13px;font-weight:700}
.btn-outline {
  border: 1px solid #2563EB;
  color: #2563EB;
  background: transparent;
  padding: 10px 18px;
  border-radius: 7px;
  transition: all 0.25s ease;
}

.btn-outline:hover {
  background: #2563EB;
  border-color: #2563EB;
  color: #FFFFFF;
}
.btn-primary {
  background: #2563EB;
  color: #FFFFFF;
  box-shadow: 0 10px 30px rgba(37, 99, 235, 0.20);
}
.btn-primary:hover {
  background: #1D4ED8;
  color: #FFFFFF;
  transform: translateY(-2px);
}
.hero {
  position: relative;
  overflow: hidden;
  min-height: 720px;

 background: linear-gradient(
  120deg,
  #E8F0FF 0%,
  #D2E2FF 55%,
  #AFCBFF 100%
);

  color: #0F172A;
  padding: 145px 0 82px;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;

  background: linear-gradient(
    135deg,
    transparent 48%,
    rgba(37, 99, 235, 0.04) 48%,
    rgba(37, 99, 235, 0.08) 64%,
    transparent 64%
  );

  pointer-events: none;
}
/* Decorative circles */
.hero-orb {
  position: absolute;
  border-radius: 50%;
  border: 90px solid rgba(37, 99, 235, 0.05);
  width: 520px;
  height: 520px;
}
.orb-one {
  left: 29%;
  top: -260px;
}
.orb-two{left:12%;bottom:-410px}
.hero .eyebrow {
  color: #2563EB;
}

.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.eyebrow{display:block;font-size:11px;letter-spacing:1.8px;font-weight:800;margin-bottom:16px}
.eyebrow.dark{color:#4b5570}
.hero h1{font-size:64px;line-height:.99;letter-spacing:-3px;margin:0 0 24px;font-weight:600}.hero h1 span{color:var(--green)}
.hero-copy>p{
  max-width:610px;
  color: #64748B;
  line-height:1.8;
  font-size:15px
}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:38px 0}.hero-stats div{border-left:1px solid rgba(255,255,255,.2);padding-left:13px}.hero-stats strong{display:block;font-size:19px}.hero-stats small{display:block;color:#aeb7d7;font-size:9px;line-height:1.45;margin-top:7px;text-transform:uppercase}.hero-visual{position:relative}.hero-visual img{width:100%;height:470px;object-fit:cover;border-radius:0 34px 0 34px;display:block}.visual-tag{position:absolute;left:-24px;bottom:24px;background:#fff;color:#111936;padding:15px 18px;border-radius:8px;font-size:12px;font-weight:700;box-shadow:0 15px 40px rgba(0,0,0,.2)}.visual-tag span{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-right:7px}
.section{padding:100px 0}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:46px}.section h2,.cta h2{font-size:42px;line-height:1.15;letter-spacing:-1.8px;margin:0;font-weight:600}.section-intro p,.story-copy>p{color:var(--muted);line-height:1.8;max-width:520px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{min-height:285px;padding:30px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(12,18,34,.08)}
.service-card.featured {
  background: linear-gradient(
    135deg,
    #3B82F6 0%,
    #2563EB 100%
  );
  color: #fff;
  border-color: #3B82F6;
}
.service-no{
  font-size:11px;
  color:#8a92a5;
  margin-bottom:55px
}
.service-card h3{
  font-size:21px
}
.service-card p{
  font-size:13px;
  line-height:1.7;
  color:var(--muted);
  min-height:68px
}
.service-card.featured p{
   color: #E6EFFF;
}
.service-card a {
  color: #2563EB;
  font-size: 12px;
  font-weight: 800;
}

.service-card a:hover {
  color: #1D4ED8;
}

.service-card.featured a {
  color: #FFFFFF;
}

.service-card.featured a:hover {
  color: #E0EAFF;
}
.story {
  background: linear-gradient(
    135deg,
    #F7FAFF 0%,
    #EDF4FF 100%
  );
}.story-grid{
  display:grid;
  grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center
}.story-visual {
  min-height: 440px;
  border-radius: 18px;

  background: linear-gradient(
    145deg,
    #D8E7FF 0%,
    #AFCBFF 55%,
    #7FAAFF 100%
  );

  position: relative;
  overflow: hidden;
}.story-visual:after{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  border:70px solid rgba(255,255,255,.07);
  border-radius:50%;
  right:-150px;
  top:-130px
}
.story-card{
  position:absolute;
  left:36px;
  bottom:36px;
 color: #0F172A;
  max-width:260px
}
.story-card span{
  font-size:12px;
  color: #2563EB;
}
.story-card strong{
  display:block;
  font-size:70px;
  line-height:1;
  color: #16A66A;
}
.story-card p{
  color: #475569;
  line-height: 1.6
}.story-copy h2{margin-bottom:22px}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:30px 0}.check-grid span{font-size:13px;font-weight:700}.text-link{font-size:13px;font-weight:800;color:#102bcf}
.partner {
  background: linear-gradient(
    135deg,
    #EAF2FF 0%,
    #D8E7FF 55%,
    #C7DCFF 100%
  );
  color: #0F172A;
}

.partner-box {
  display: grid;
  grid-template-columns: 1.5fr .5fr;
  align-items: center;
  gap: 80px;
}

.partner-box .eyebrow {
  color: #2563EB;
}

.partner-box h2 {
  color: #0F172A;
}

.partner-box p {
  color: #52627A;
  line-height: 1.8;
  max-width: 700px;
}

.partner-logo {
  background: #FFFFFF;
  border: 1px solid rgba(37, 99, 235, 0.12);
  border-radius: 18px;
  padding: 35px;
  text-align: center;

  box-shadow:
    0 15px 40px rgba(37, 99, 235, 0.10);
}
.partner-logo img {
  max-width: 180px;
  width: 100%;
}
.center-heading {
  text-align: center;
  margin-bottom: 50px;
}
.logo-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 18px;
  align-items: center;
}
.logo-grid img{
  width:100%;
  max-height:55px;
  object-fit:contain;
  filter:grayscale(1);
  opacity:.65;
  transition:.2s
}
.logo-grid img:hover{
  filter:none;
  opacity:1
}
.cta {
  padding: 78px 0;
  background: linear-gradient(
    115deg,
    #4F7FEF 0%,
    #6A96F3 50%,
    #82A9F5 100%
  );
  color: #fff;
}.cta-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;gap:50px
}
.cta h2{
  max-width:720px
}
.footer{
  background:#03051b;
  color:#aab2ce;
  padding:70px 0 24px
}
.footer-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1.3fr;
  gap:60px
}
.footer h4{
  color:#fff;
  font-size:13px;
  margin:0 0 20px
}
.footer a,.footer p{
  display:block;
  font-size:12px;
  line-height:1.8;
  margin:7px 0
}
.footer-about img{
  width:120px;
  margin-bottom:14px
}
.footer-about p{
  max-width:300px
}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);
  margin-top:50px;
  padding-top:22px;
  font-size:11px
}
.chat-button{position:fixed;right:25px;bottom:25px;z-index:50;width:56px;height:56px;border:0;border-radius:50%;background:var(--green);font-size:23px;box-shadow:0 12px 30px rgba(0,0,0,.2);cursor:pointer}.chat-widget{display:none;position:fixed;right:25px;bottom:92px;width:350px;height:480px;background:#fff;z-index:60;border-radius:14px;box-shadow:0 20px 70px rgba(0,0,0,.25);overflow:hidden}.chat-widget.show{display:flex;flex-direction:column}.chat-header{background:var(--navy);color:#fff;padding:18px}.chat-header small{display:block;color:#8fe7bd;margin-top:3px}.chat-body{flex:1;padding:15px;overflow:auto}.chat-input{display:flex;border-top:1px solid var(--line);padding:10px}.chat-input input{flex:1;border:0;outline:0}.chat-input button,.chat-footer button{border:0;background:none;cursor:pointer}.chat-footer{display:flex;justify-content:space-between;padding:10px 14px;background:#f6f7fa;font-size:10px}
/* ==========================================
   FULL WIDTH HOME HERO
========================================== */

.home-hero {

    position: relative;

    width: 100%;

    height: 760px;

    overflow: hidden;

    background: #0F172A;

}


/* Slider */

.home-slider {

    width: 100%;

    height: 100%;

    position: relative;

}


/* Individual slide */

.home-slide {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    opacity: 0;

    visibility: hidden;

    transition:
        opacity .8s ease,
        visibility .8s ease;

}


/* Active slide */

.home-slide.active {

    opacity: 1;

    visibility: visible;

}


/* ==========================================
   DARK IMAGE OVERLAY
========================================== */

.hero-overlay {

    position: absolute;

    inset: 0;

    background:

        linear-gradient(
            90deg,
            rgba(3, 12, 35, .92) 0%,
            rgba(3, 12, 35, .78) 28%,
            rgba(3, 12, 35, .40) 55%,
            rgba(3, 12, 35, .10) 100%
        );

}


/* ==========================================
   CONTENT
========================================== */

.hero-container {

    position: relative;

    height: 100%;

    display: flex;

    align-items: center;

    z-index: 2;

}


.hero-content {

    max-width: 680px;

    padding-top: 30px;

}


.hero-eyebrow {

    display: inline-block;

    color: #8CC8FF;

    font-size: 15px;

    font-weight: 700;

    letter-spacing: 2px;

    margin-bottom: 22px;

}


.hero-content h1 {

    color: #fff;

    font-size: 62px;

    line-height: 1.08;

    font-weight: 700;

    margin: 0 0 28px;

    text-shadow:
        0 3px 12px rgba(0,0,0,.25);

}


.hero-content h1 span {

    color: #5B9CFF;

}


.hero-content p {

    color: rgba(255,255,255,.92);

    font-size: 20px;

    line-height: 1.65;

    max-width: 650px;

    margin-bottom: 35px;

}


/* ==========================================
   BUTTON
========================================== */

.hero-button {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding: 15px 32px;

    border-radius: 30px;

    background: #2563EB;

    color: #fff !important;

    font-size: 17px;

    font-weight: 600;

    text-decoration: none !important;

    box-shadow:
        0 10px 30px rgba(37,99,235,.35);

    transition: all .3s ease;

}


.hero-button:hover {

    background: #1D4ED8;

    transform: translateY(-2px);

}


/* ==========================================
   ARROWS
========================================== */

.hero-arrow {

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    z-index: 5;

    width: 48px;

    height: 48px;

    border-radius: 50%;

    border: 1px solid rgba(255,255,255,.35);

    background: rgba(0,0,0,.20);

    backdrop-filter: blur(8px);

    color: #fff;

    font-size: 20px;

    cursor: pointer;

    transition: .3s;

}


.hero-arrow:hover {

    background: #2563EB;

    border-color: #2563EB;

}


.hero-arrow-prev {

    left: 25px;

}


.hero-arrow-next {

    right: 25px;

}


/* ==========================================
   BOTTOM INDICATORS
========================================== */

.hero-indicators {

    position: absolute;

    bottom: 28px;

    left: 50%;

    transform: translateX(-50%);

    display: flex;

    align-items: center;

    gap: 10px;

    z-index: 5;

}


.hero-indicator {

    width: 45px;

    height: 4px;

    padding: 0;

    border: 0;

    border-radius: 10px;

    background: rgba(255,255,255,.45);

    cursor: pointer;

    transition: .4s;

}


.hero-indicator.active {

    width: 70px;

    background: #38BDF8;

}
/* ==========================================
   FLOATING BOTTOM NAV
========================================== */

.floating-bottom-nav {

    position: fixed;

    left: 50%;

    bottom: 18px;

    transform: translateX(-50%);

    width: calc(100% - 90px);

    max-width: 1480px;

    min-height: 72px;

    background: rgba(255,255,255,.97);

    border-radius: 16px;

    box-shadow:
        0 10px 40px rgba(15,23,42,.16);

    border: 1px solid rgba(15,23,42,.08);

    display: flex;

    align-items: center;

    padding: 10px 18px;

    z-index: 99999;

    backdrop-filter: blur(12px);

}


/* ==========================================
   LOGO
========================================== */

.bottom-brand {

    display: flex;

    align-items: center;

    margin-right: auto;

    text-decoration: none;

}

.bottom-brand img {

    width: 130px;

    max-height: 42px;

    object-fit: contain;

}


/* ==========================================
   MENU
========================================== */

.bottom-menu {

    display: flex;

    align-items: center;

    gap: 8px;

    margin-left: auto;

    margin-right: 35px;

}


.bottom-menu > a,
.bottom-menu-item {

    border: 0;

    background: transparent;

    color: #0F172A;

    padding: 13px 16px;

    border-radius: 9px;

    font-size: 15px;

    font-weight: 700;

    text-decoration: none;

    cursor: pointer;

    white-space: nowrap;

    transition: .25s ease;

}


.bottom-menu > a:hover,
.bottom-menu-item:hover {

    background: #F1F5F9;

}


.bottom-menu-item span {

    color: #2563EB;

    font-size: 20px;

    margin-left: 5px;

    line-height: 0;

}


/* ==========================================
   ACTIVE TAB
========================================== */

.bottom-menu-item.active {

    background: #F1F5F9;

    box-shadow:
        inset 0 0 0 1px #CBD5E1;

}

.bottom-menu-item.active span {

    font-size: 19px;

}


/* ==========================================
   CTA
========================================== */

.bottom-cta {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-height: 52px;

    padding: 0 28px;

    border-radius: 10px;

    background: #2563EB;

    color: #fff !important;

    font-size: 16px;

    font-weight: 700;

    text-decoration: none !important;

    white-space: nowrap;

    transition: .3s ease;

}


.bottom-cta:hover {

    background: #1D4ED8;

    transform: translateY(-1px);

}


/* ==========================================
   DROPDOWN
========================================== */

.bottom-dropdown {

    position: fixed;

    left: 50%;

    bottom: 100px;

    transform: translateX(-50%);

    width: calc(100% - 90px);

    max-width: 1480px;

    background: #fff;

    border-radius: 18px;

    padding: 30px 40px;

    box-shadow:
        0 20px 60px rgba(15,23,42,.18);

    border: 1px solid #E2E8F0;

    z-index: 99998;

    opacity: 0;

    visibility: hidden;

    transform:
        translateX(-50%)
        translateY(15px);

    transition: .25s ease;

}


.bottom-dropdown.open {

    opacity: 1;

    visibility: visible;

    transform:
        translateX(-50%)
        translateY(0);

}


.dropdown-inner {

    display: flex;

    gap: 60px;

}


.dropdown-inner h4 {

    margin: 0 0 20px;

    color: #0F172A;

    font-size: 22px;

}


.dropdown-inner a {

    display: block;

    color: #475569;

    text-decoration: none;

    font-size: 15px;

    font-weight: 600;

    padding: 8px 0;

}


.dropdown-inner a:hover {

    color: #2563EB;

}


/* ==========================================
   TABLET
========================================== */

@media(max-width:1100px) {

    .floating-bottom-nav {

        width: calc(100% - 30px);

    }

    .bottom-menu {

        gap: 0;

        margin-right: 15px;

    }

    .bottom-menu > a,
    .bottom-menu-item {

        padding: 11px 9px;

        font-size: 13px;

    }

    .bottom-cta {

        padding: 0 18px;

        font-size: 14px;

    }

}


/* ==========================================
   MOBILE
========================================== */

@media(max-width:767px) {

    .floating-bottom-nav {

        width: calc(100% - 20px);

        bottom: 10px;

        min-height: 62px;

        padding: 8px 10px;

        border-radius: 14px;

    }

    .bottom-brand {

        display: none;

    }

    .bottom-menu {

        margin: 0;

        width: 100%;

        justify-content: space-between;

    }

    .bottom-menu > a,
    .bottom-menu-item {

        padding: 9px 6px;

        font-size: 11px;

    }

    .bottom-menu-item span {

        font-size: 15px;

    }

    .bottom-cta {

        display: none;

    }

    .bottom-dropdown {

        width: calc(100% - 20px);

        bottom: 82px;

        padding: 25px;

    }

}


/* ==========================================
   TABLET
========================================== */

@media(max-width:991px) {

    .home-hero {

        height: 680px;

    }

    .hero-content {

        max-width: 600px;

        padding-left: 30px;

    }

    .hero-content h1 {

        font-size: 48px;

    }

    .hero-content p {

        font-size: 18px;

    }

}


/* ==========================================
   MOBILE
========================================== */

@media(max-width:767px) {

    .home-hero {

        height: 650px;

    }

    .hero-overlay {

        background:

            linear-gradient(
                90deg,
                rgba(3,12,35,.88),
                rgba(3,12,35,.55)
            );

    }

    .hero-container {

        align-items: flex-end;

        padding-bottom: 90px;

    }

    .hero-content {

        padding: 0 20px;

        max-width: 100%;

    }

    .hero-content h1 {

        font-size: 38px;

        line-height: 1.12;

    }

    .hero-content p {

        font-size: 16px;

        line-height: 1.6;

    }

    .hero-eyebrow {

        font-size: 12px;

    }

    .hero-arrow {

        width: 40px;

        height: 40px;

    }

    .hero-arrow-prev {

        left: 10px;

    }

    .hero-arrow-next {

        right: 10px;

    }

}
@media(max-width:900px){.container{width:min(100% - 32px,1180px)}.main-nav{display:none;position:absolute;top:75px;left:16px;right:16px;background:#080d39;padding:22px;border-radius:10px;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.nav-toggle{display:block}.hero{padding-top:125px}.hero-grid,.story-grid,.partner-box{grid-template-columns:1fr}.hero h1{font-size:50px}.hero-visual img{height:380px}.service-grid{grid-template-columns:1fr 1fr}.logo-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.hero{min-height:auto}.hero h1{font-size:42px;letter-spacing:-2px}.hero-grid{gap:45px}.hero-stats{grid-template-columns:1fr 1fr}.section{padding:70px 0}.section h2,.cta h2{font-size:34px}.section-intro{grid-template-columns:1fr;gap:12px}.service-grid{grid-template-columns:1fr}.story-grid{gap:45px}.story-visual{min-height:330px}.check-grid{grid-template-columns:1fr}.logo-grid{grid-template-columns:repeat(2,1fr)}.cta-inner{display:block}.cta .btn{margin-top:28px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-about{grid-column:1/-1}.chat-widget{right:12px;left:12px;width:auto}
.hero-visual img{height:310px}}


/* Why Choose Us — image + benefit cards layout */
.why-showcase{
  background:#eef8ff;
}
.why-title{
  max-width:690px;
  margin:0 auto 52px;
  text-align:center;
}
.why-title .eyebrow{
  margin-bottom:10px;
}
.why-title h2{
  margin:0;
  color:#071b4a;
}
.title-accent{
  display:block;
  width:48px;
  height:4px;
  margin:13px auto 17px;
  border-radius:5px;
  background:var(--green);
}
.why-title p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.8;
}
.why-showcase-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:54px;
  align-items:stretch;
  max-width:1050px;
  margin:auto;
}
.why-benefits{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
}
.benefit-card{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:18px;
  align-items:start;
  padding:21px 22px;
  background:#fff;
  border:1px solid rgba(16,43,92,.06);
  border-radius:10px;
  box-shadow:0 12px 30px rgba(20,54,96,.07);
  transition:transform .22s ease,box-shadow .22s ease;
}
.benefit-card:hover{
  transform:translateX(6px);
  box-shadow:0 18px 38px rgba(20,54,96,.11);
}
.benefit-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border-radius:9px;
  background:#e6f3ff;
  color:#1675d1;
  font-size:11px;
  font-weight:800;
}
.benefit-icon.purple{background:#f3eaff;color:#8d45d8}
.benefit-icon.coral{background:#fff0eb;color:#e56c52}
.benefit-icon.green{background:#e8fbef;color:#17a35b}
.benefit-card h3{
  margin:1px 0 7px;
  color:#071b4a;
  font-size:16px;
  line-height:1.35;
}
.benefit-card p{
  margin:0;
  color:#758096;
  font-size:12px;
  line-height:1.7;
}
.why-image-wrap{
  position:relative;
  min-height:475px;
  margin:6px 10px 6px 0;
}
.why-image-wrap img{
  position:relative;
  z-index:2;
  width:calc(100% - 15px);
  height:100%;
  min-height:475px;
  object-fit:cover;
  border-radius:85px 10px 85px 10px;
  display:block;
}
.image-frame{
  position:absolute;
  z-index:1;
  top:-10px;
  right:0;
  width:calc(100% - 15px);
  height:100%;
  border:5px solid #1d79db;
  border-radius:85px 10px 85px 10px;
}
.why-image-badge{
  position:absolute;
  z-index:3;
  right:-15px;
  bottom:28px;
  padding:13px 18px;
  background:#071b4a;
  color:#fff;
  border-radius:8px;
  box-shadow:0 15px 35px rgba(0,0,0,.18);
}
.why-image-badge span{
  display:block;
  margin-bottom:4px;
  color:#8fa5d0;
  font-size:8px;
  font-weight:800;
  letter-spacing:1.3px;
}
.why-image-badge strong{
  font-size:12px;
}
.page-banner{

padding:150px 0 70px;

text-align:center;

/* background:linear-gradient(
120deg,
#EEF4FF 0%,
#DDEAFF 55%,
#C7DBFF 100%
); */

}
.about-banner {

    position: relative;

    background-image: url("../images/about-banner.png");

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    min-height: 520px;

}
.product-banner {

    position: relative;

    background-image: url("../images/product-banner.png");

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    min-height: 520px;

}
.career-banner {

    position: relative;

    background-image: url("../images/career-banner.png");

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    min-height: 520px;

}
.blog-banner {

    position: relative;

    background-image: url("../images/blog-banner.png");

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    min-height: 520px;

}
.contact-banner {

    position: relative;

    background-image: url("../images/contact-banner.png");

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    min-height: 520px;

}
.team-banner {

    position: relative;

    background-image: url("../images/team-banner.png");

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    min-height: 520px;

}
/* ==========================================
   SERVICES PAGE BANNER IMAGE
========================================== */

.services-banner {

    position: relative;

    background-image: url("../images/services-banner.png");

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    min-height: 520px;

}


/* Dark overlay */

.services-banner .page-banner-overlay {

    position: absolute;

    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(3, 15, 38, .90) 0%,
        rgba(3, 15, 38, .70) 40%,
        rgba(3, 15, 38, .25) 100%
    );

}


/* Keep content above image */

.services-banner .container {

    position: relative;

    z-index: 2;

}


.page-tag{

display:inline-block;

padding:8px 18px;

background:#fff;

color:#2563EB;

font-weight:700;

border-radius:30px;

margin-bottom:20px;

}

.page-banner h1{

font-size:48px;

font-weight:700;

color:#fff;

margin-bottom:20px;

}

.page-banner p{

max-width:720px;

margin:auto;

color:#E8EEFF;

line-height:1.8;

}

.service-intro{

padding:80px 0 0px;

}

.section-heading{

text-align:center;

max-width:800px;

margin:auto;

}

.section-heading span{

color:#2563EB;

font-weight:700;

letter-spacing:1px;

}

.section-heading h2{

margin:20px 0;

font-size:42px;

}

.section-heading p{

color:#64748B;

}

.service-block{

padding:90px 0;

}

.alt-bg{

background:#F7FAFF;

}

.service-number{

display:inline-flex;

width:50px;

height:50px;

align-items:center;

justify-content:center;

background:#2563EB;

color:#fff;

border-radius:50%;

font-weight:700;

margin-bottom:25px;

}

.service-content h2{

margin-bottom:25px;

font-size:36px;

color:#0F172A;

}

.service-content p{

color:#64748B;

line-height:1.9;

margin-bottom:25px;

}

.service-content ul{

padding:0;

margin:0 0 30px;

list-style:none;

}

.service-content li{

padding:12px 0;

color:#334155;

border-bottom:1px solid #E5E7EB;

}

.service-content li:before{

content:"✓";

color:#16A34A;

font-weight:bold;

margin-right:10px;

}

.service-image{

padding:15px;

background:#fff;

border-radius:18px;

box-shadow:0 20px 40px rgba(0,0,0,.08);

}

.service-image img{

border-radius:12px;

width:100%;

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

.support-list li{
    padding:12px 0;
    color:#334155;
    font-weight:500;
}

.support-list li::before{
    content:"✔";
    color:#22C55E;
    font-weight:700;
    margin-right:10px;
}

.service-cta{
    padding:90px 0;
    background:linear-gradient(
        135deg,
        #4F7FEF 0%,
        #6A96F3 100%
    );
    color:#fff;
    /* border-radius:30px;
    margin:80px 0; */
}

.cta-tag{
    display:inline-block;
    padding:8px 16px;
    background:rgba(255,255,255,.15);
    border-radius:30px;
    margin-bottom:20px;
    font-weight:700;
    letter-spacing:1px;
}

.service-cta h2{
    font-size:42px;
    margin-bottom:20px;
    color:#fff;
}

.service-cta p{
    color:#E8EEFF;
    line-height:1.8;
}

.service-cta .btn-light{
    background:#fff;
    color:#2563EB;
    border-radius:8px;
    padding:15px 32px;
    font-weight:700;
    transition:.3s;
}

.service-cta .btn-light:hover{
    background:#2563EB;
    color:#fff;
    border:1px solid #fff;
}
.breadcrumb-custom{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;

    margin-top:25px;

    background:transparent;
    padding:0;
    border:none;
    box-shadow:none;
}

.breadcrumb-custom a{
    color:#2563EB;
    font-size:15px;
    font-weight:600;
    text-decoration:none;
    transition:.3s;
}

.breadcrumb-custom a:hover{
    color:#1D4ED8;
}

.breadcrumb-custom span{
    color:#fff;
    font-size:15px;
    font-weight:500;
}
.product-links{

    margin-top:25px;

}

.store-buttons{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    margin-top:18px;
    flex-wrap:wrap;
}

.store-buttons a{
    display:inline-flex;
}

.store-buttons img{

    width:130px;      /* Fixed width */
    height:40px;      /* Fixed height */

    object-fit:contain;

    transition:.3s;
}

.store-buttons img:hover{
    transform:translateY(-3px);
}
.products-showcase{

padding:90px 0;

background:#fff;

}

.product-card-new{

height:100%;

background:#fff;

padding:35px;

border-radius:22px;

text-align:center;

box-shadow:0 15px 40px rgba(0,0,0,.08);

transition:.35s;

border:1px solid #E5E7EB;

}

.product-card-new:hover{

transform:translateY(-10px);

box-shadow:0 25px 60px rgba(37,99,235,.15);

}

.product-card-new img{

height:180px;

object-fit:contain;

margin-bottom:25px;

}

.product-card-new h3{

font-size:28px;

margin-bottom:15px;

color:#0F172A;

}

.product-card-new p{

color:#64748B;

line-height:1.8;

margin-bottom:20px;

}

.product-card-new ul{

padding:0;

list-style:none;

margin-bottom:30px;

}

.product-card-new li{

padding:8px 0;

color:#334155;

}

.product-card-new li::before{

content:"✔";

margin-right:8px;

color:#16A34A;

font-weight:bold;

}


.alt-bg{

background:#F7FAFF;

}
.why-products{

padding:90px 0;

background:#F7FAFF;

}

.feature-card{

background:#fff;

padding:35px;

border-radius:18px;

text-align:center;

transition:.35s;

height:100%;

box-shadow:0 12px 35px rgba(0,0,0,.06);

}

.feature-card:hover{

transform:translateY(-8px);

}

.feature-icon{

width:75px;

height:75px;

margin:auto;

margin-bottom:20px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:30px;

background:#EEF4FF;

}

.feature-card h4{

margin-bottom:15px;

color:#0F172A;

}

.feature-card p{

color:#64748B;

}

.product-stats{

padding:80px 0;

background:#fff;

}

.product-stats h2{

font-size:46px;

font-weight:700;

color:#2563EB;

}

.product-stats p{

color:#64748B;

font-weight:600;

}
.job-card{

background:#fff;

border-radius:18px;

padding:35px;

border:1px solid #E5E7EB;

box-shadow:0 15px 40px rgba(0,0,0,.05);

transition:.3s;

}

.job-card:hover{

transform:translateY(-6px);

box-shadow:0 20px 45px rgba(37,99,235,.12);

}

.job-header{

display:flex;

justify-content:space-between;

align-items:flex-start;

margin-bottom:20px;

}

.job-header h3{

font-size:28px;

margin-bottom:15px;

color:#0F172A;

}

.job-meta{

display:flex;

flex-wrap:wrap;

gap:20px;

}

.job-meta span{

color:#64748B;

font-size:15px;

}

.job-meta i{

color:#2563EB;

margin-right:6px;

}

.job-status span{

background:#DCFCE7;

color:#15803D;

padding:8px 16px;

border-radius:30px;

font-size:13px;

font-weight:700;

}

.job-description{

color:#64748B;

line-height:1.8;

margin:25px 0;

}

.job-footer{

display:flex;

justify-content:space-between;

align-items:center;

flex-wrap:wrap;

gap:15px;

}
.team-card{

background:#fff;

border-radius:20px;

overflow:hidden;

box-shadow:0 20px 45px rgba(0,0,0,.06);

transition:.35s;

height:100%;

}

.team-card:hover{

transform:translateY(-8px);

}

.team-photo{

background:#EEF4FF;

padding:40px;

text-align:center;

}

.team-photo img{

width:180px;

height:180px;

border-radius:50%;

object-fit:cover;

border:6px solid #fff;

}

.team-content{

padding:35px;

text-align:center;

}

.team-content h3{

font-size:30px;

margin-bottom:8px;

}

.team-content span{

display:block;

color:#2563EB;

font-weight:600;

margin-bottom:18px;

}

.team-content p{

color:#64748B;

line-height:1.8;

}

.team-skills{

margin-top:25px;

display:flex;

justify-content:center;

gap:10px;

flex-wrap:wrap;

}
.team-values{
    padding:90px 0 140px;
}
.team-intro{
    padding:70px 0 20px;
}

.team-skills span{

background:#EEF4FF;

padding:8px 16px;

border-radius:30px;

font-size:13px;

color:#2563EB;

margin:0;

}
/*==========================================
ABOUT PAGE
==========================================*/

.about-company{
    padding:90px 0;
    background:#fff;
}

.about-company img{
    border-radius:24px;
    box-shadow:0 20px 45px rgba(0,0,0,.08);
}

.section-tag{
    display:inline-block;
    padding:8px 18px;
    background:#EEF4FF;
    color:#2563EB;
    border-radius:30px;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
    margin-bottom:20px;
}

.about-company h2{
    font-size:46px;
    font-weight:700;
    color:#0F172A;
    margin-bottom:25px;
}

.about-company p{
    color:#64748B;
    font-size:17px;
    line-height:1.9;
    margin-bottom:18px;
}


/*==========================================
MISSION & VISION
==========================================*/

.mission-section{
    padding:90px 0;
    background:#E8F0FF;
}

.mission-card{

    height:100%;

    background:#fff;

    padding:40px;

    border-radius:20px;

    border:1px solid #E5E7EB;

    box-shadow:0 15px 40px rgba(0,0,0,.05);

    transition:.35s;
}

.mission-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(37,99,235,.12);

}

.mission-card h3{

    color:#2563EB;

    margin-bottom:20px;

    font-size:28px;

}

.mission-card p{

    color:#64748B;

    line-height:1.9;

}


/*==========================================
WHY CHOOSE
==========================================*/

.why-showcase{

    padding:90px 0;

    background:#fff;

}

.why-card{

    height:100%;

    background:#fff;

    border-radius:20px;

    padding:35px;

    text-align:center;

    border:1px solid #E5E7EB;

    transition:.35s;

    box-shadow:0 15px 40px rgba(0,0,0,.05);

}

.why-card:hover{

    transform:translateY(-8px);

}

.why-icon{

    width:75px;

    height:75px;

    border-radius:50%;

    margin:auto auto 20px;

    background:#EEF4FF;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#2563EB;

    font-size:30px;

}

.why-card h4{

    margin-bottom:15px;

    color:#0F172A;

}

.why-card p{

    color:#64748B;

}


/*==========================================
VALUES
==========================================*/

.values{

    padding:90px 0;

    background:#E8F0FF;

}

.value-card{

    background:#fff;

    padding:35px;

    border-radius:20px;

    text-align:center;

    height:100%;

    border:1px solid #E5E7EB;

    transition:.35s;

    box-shadow:0 12px 35px rgba(0,0,0,.05);

}

.value-card:hover{

    transform:translateY(-8px);

}

.value-card h4{

    color:#2563EB;

    margin-bottom:15px;

}

.value-card p{

    color:#64748B;

}


/*==========================================
JOURNEY
==========================================*/

.about-stats{

    padding:90px 0;

    background:#fff;

}

.stat-card{

    background:#F8FAFC;

    padding:35px;

    text-align:center;

    border-radius:20px;

    transition:.3s;

}

.stat-card:hover{

    background:#EEF4FF;

}

.stat-card h2{

    color:#2563EB;

    font-size:48px;

    font-weight:700;

    margin-bottom:10px;

}

.stat-card p{

    color:#64748B;

    margin:0;

    font-weight:600;

}


/*==========================================
SECTION HEADING
==========================================*/

.section-heading{

    margin-bottom:60px;

}

.section-heading span{

    display:inline-block;

    padding:8px 18px;

    background:#EEF4FF;

    color:#2563EB;

    border-radius:30px;

    font-size:13px;

    font-weight:700;

    letter-spacing:1px;

    margin-bottom:20px;

}

.section-heading h2{

    font-size:32px;

    color:#0F172A;

    margin-bottom:20px;

}

.section-heading p{

    max-width:760px;

    margin:auto;

    color:#64748B;

    line-height:1.9;

}
.featured-blog{

padding:90px 0;

}

.featured-blog img{

border-radius:20px;

box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.latest-blogs{

padding:90px 0;

background:#F8FAFC;

}

.blog-card{

background:#fff;

border-radius:20px;

overflow:hidden;

box-shadow:0 20px 45px rgba(0,0,0,.06);

transition:.35s;

height:100%;

}

.blog-card:hover{

transform:translateY(-8px);

}

.blog-card img{

height:220px;

width:100%;

object-fit:cover;

}

.blog-content{

padding:30px;

}

.blog-content span{

color:#2563EB;

font-size:13px;

font-weight:700;

}

.blog-content h3{

font-size:24px;

margin:15px 0;

}

.blog-content p{

color:#64748B;

line-height:1.8;

}

.blog-content a{

color:#2563EB;

font-weight:700;

text-decoration:none;

}

.blog-categories{

padding:90px 0;

}

.category-list{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

}

.category-list a{

padding:12px 22px;

background:#EEF4FF;

border-radius:30px;

color:#2563EB;

font-weight:600;

text-decoration:none;

}

.newsletter{

padding:90px 0;

background:#F8FAFC;

}

.newsletter-box{

background:#fff;

padding:60px;

border-radius:24px;

text-align:center;

box-shadow:0 15px 40px rgba(0,0,0,.06);

}

.newsletter form{

display:flex;

justify-content:center;

gap:15px;

margin-top:30px;

flex-wrap:wrap;

}

.newsletter input{

width:420px;

padding:15px 20px;

border:1px solid #E5E7EB;

border-radius:10px;

outline:none;

}
/*==========================================
CONTACT PAGE
==========================================*/

.contact-section{

    padding:90px 0;

    background:#fff;

}

.contact-info{

    padding:40px;

    background:#F8FAFC;

    border-radius:24px;

    height:100%;

}

.contact-info h3{

    font-size:32px;

    color:#0F172A;

    margin-bottom:15px;

}

.contact-info > p{

    color:#64748B;

    line-height:1.8;

    margin-bottom:35px;

}


.contact-item{

    display:flex;

    align-items:flex-start;

    gap:18px;

    margin-bottom:28px;

}

.contact-icon{

    width:48px;

    height:48px;

    min-width:48px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:12px;

    background:#EEF4FF;

    color:#2563EB;

    font-size:18px;

}

.contact-item h5{

    margin:0 0 7px;

    color:#0F172A;

    font-size:17px;

}

.contact-item p{

    margin:0;

    color:#64748B;

    line-height:1.7;

}

.contact-item a{

    color:#2563EB;

    text-decoration:none;

}


.contact-form-box{

    padding:45px;

    border:1px solid #E5E7EB;

    border-radius:24px;

    background:#fff;

    box-shadow:0 20px 50px rgba(15,23,42,.06);

}

.contact-form-box h3{

    font-size:30px;

    color:#0F172A;

    margin-bottom:30px;

}

.contact-form-box label{

    display:block;

    margin-bottom:8px;

    color:#334155;

    font-size:14px;

    font-weight:600;

}

.contact-form-box .form-control{

    height:52px;

    border:1px solid #E2E8F0;

    border-radius:10px;

    padding:12px 16px;

    color:#334155;

    box-shadow:none;

}

.contact-form-box textarea.form-control{

    height:auto;

    resize:vertical;

}

.contact-form-box .form-control:focus{

    border-color:#93B4F8;

    box-shadow:0 0 0 3px rgba(37,99,235,.08);

}

.contact-form-box .btn-primary{

    padding:13px 30px;

    border-radius:10px;

    background:#2563EB;

    border-color:#2563EB;

    font-weight:700;

}


/*==========================================
LOCATIONS
==========================================*/

.contact-locations{

    padding:90px 0;

    background:#F8FAFC;

}

.location-card{

    background:#fff;

    padding:35px;

    border-radius:20px;

    height:100%;

    border:1px solid #E5E7EB;

}

.location-card h4{

    color:#0F172A;

    margin-bottom:15px;

}

.location-card p{

    color:#64748B;

    line-height:1.8;

    margin:0;

}
/* ==========================================
   FLOATING SOCIAL MEDIA
========================================== */

.floating-social{

    position:fixed;

    right:14px;

    top:50%;

    transform:translateY(-50%);

    display:flex;

    flex-direction:column;

    gap:5px;

    z-index:9999;

}


.social-link{

    width:52px;

    height:50px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#fff !important;

    text-decoration:none !important;

    font-size:22px;

    box-shadow:0 8px 22px rgba(15,23,42,.18);

    transition:all .3s ease;

}


.social-link:hover{

    transform:scale(1.1);

    color:#fff !important;

}


/* LinkedIn */

.social-link.linkedin{

    background:#0A66C2;

}


/* X */

.social-link.twitter{

    background:#000;

}


/* Facebook */

.social-link.facebook{

    background:#1877F2;

}


/* YouTube */

.social-link.youtube{

    background:#FF0000;

}


/* Email */

.social-link.email{

    background:#F59E0B;

}


.social-link i{

    line-height:1;

}


/*==========================================
RESPONSIVE
==========================================*/
@media (max-width:767px){

    .floating-social{

        right:10px;

        gap:9px;

    }

    .social-link{

        width:44px;

        height:44px;

        font-size:17px;

    }

}

@media(max-width:991px){

    .contact-info{

        margin-bottom:30px;

    }

    .contact-form-box{

        padding:30px;

    }

}


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

@media(max-width:991px){

.about-company h2,
.section-heading h2{

    font-size:34px;

}

.about-company{

    text-align:center;

}

.about-company img{

    margin-bottom:40px;

}

.mission-card{

    margin-bottom:30px;

}

.stat-card{

    margin-bottom:25px;

}


}
@media(max-width:900px){
  .why-showcase-grid{grid-template-columns:1fr;max-width:680px}
  .why-image-wrap{min-height:400px}
  .why-image-wrap img{min-height:400px}
}
@media(max-width:600px){
  .why-showcase{padding-left:0;padding-right:0}
  .why-title{margin-bottom:35px}
  .why-showcase-grid{gap:35px}
  .benefit-card{grid-template-columns:50px 1fr;padding:18px 16px}
  .benefit-icon{width:42px;height:42px}
  .why-image-wrap{min-height:320px;margin-right:4px}
  .why-image-wrap img{min-height:320px;border-radius:55px 8px 55px 8px}
  .image-frame{border-radius:55px 8px 55px 8px}
  .why-image-badge{right:4px;bottom:18px}
}
@media(max-width:991px){

.main-nav{

    position:absolute;

    top:82px;

    left:0;

    width:100%;

    background:#fff;

    display:none;

    flex-direction:column;

    align-items:flex-start;

    gap:20px;

    padding:25px;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.main-nav.active{

    display:flex;

}

.nav-toggle{

    display:block;

}

}