.about-hero {
    padding: 120px 8% 100px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    position: relative;
    background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(1, 119, 191, 0.12));
}
.about-hero .container {
    position: relative;
    z-index: 1;
    width: 100%;
}
.about-hero::before {
    content: '';
    position: absolute;
    top: -80px;
    right: -80px;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(1, 119, 191, 0.10) 0%, transparent 70%);
    pointer-events: none;}
.about-tag {
    display: inline-block;
    margin-bottom: 30px;
    letter-spacing: 1px;
    color: #2B7CFF;  
    font-size: 18px;
    font-weight: 700; }
.about-title {
    font-size: 62px;
    line-height: 1;
    font-weight: 950;
    margin-bottom: 30px; }
.hero-desc {
    font-size: 18px;
    line-height: 1.6;
    color: #666;
    max-width: 750px;
    margin: 0 auto 45px; }
.outline-text {
    color: transparent;
    letter-spacing: 1.5px;
    -webkit-text-stroke: 2px #1a1a1a;
}
.filled-black {
    color: #1a1a1a;
}
.outline-orange {
    color: transparent ;
    letter-spacing: 1.5px;
    -webkit-text-stroke: 2px #ED1B24;   
}
.filled-orange {
    color: #2B7CFF;
}
/* == process-content-heading  animation == */
.hero-content-heading {
    opacity: 0;
    transform: translate3d(0, 70px, 0) scale(0.95);
    filter: blur(10px);
    transition:
        opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1),
        transform 1.2s cubic-bezier(0.16, 1, 0.3, 1),
        filter 1.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.hero-content-heading.active {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
}
@media (max-width: 1200px) {
    .outline-text {
       color: #ffffff;  -webkit-text-stroke: 0px transparent; 
        text-shadow: 
            -0.8px -0.8px 0 #1a1a1a,  
             0.8px -0.8px 0 #1a1a1a,
            -0.8px  0.8px 0 #1a1a1a,
             0.8px  0.8px 0 #1a1a1a; }
    .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; } }
@media (max-width: 1024px) {
    .about-hero {
        padding: 110px 6% 90px;
    }
    .about-title {
        font-size: 52px;
        line-height: 1.05;
    }
    .outline-text {
       color: #ffffff;  -webkit-text-stroke: 0px transparent; 
        text-shadow: 
            -0.8px -0.8px 0 #1a1a1a,  
             0.8px -0.8px 0 #1a1a1a,
            -0.8px  0.8px 0 #1a1a1a,
             0.8px  0.8px 0 #1a1a1a; }
    .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; } 
    .hero-desc { font-size: 17px; max-width: 650px; }
    .about-tag { font-size: 17px;  margin-bottom: 25px; }
    .about-hero::before {
        width: 400px;
        height: 400px;
        top: -60px;
        right: -100px;  } }
@media (max-width: 992px) {
    .about-hero { padding: 100px 6% 80px; }
    .about-title {
        font-size: 48px;
        line-height: 1.05;
        margin-bottom: 28px;
    }
    .about-tag {
        font-size: 17px;
        margin-bottom: 22px;
    }
    .hero-desc {
        font-size: 17px;
        max-width: 680px;
        line-height: 1.6;
        margin-bottom: 40px;
    }
    .outline-text {
       color: #ffffff;  -webkit-text-stroke: 0px transparent; 
        text-shadow: 
            -0.8px -0.8px 0 #1a1a1a,  
             0.8px -0.8px 0 #1a1a1a,
            -0.8px  0.8px 0 #1a1a1a,
             0.8px  0.8px 0 #1a1a1a; }
    .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; } 
    .about-hero::before {
        width: 360px;
        height: 360px;
        top: -50px;
        right: -90px; } }
@media (max-width: 768px) {
    .about-hero {
        padding: 90px 5% 70px;
    }
    .about-title {
        font-size: 42px;
        line-height: 1.08;
        margin-bottom: 25px;
    }
    .about-tag {
        font-size: 16px;
        margin-bottom: 22px;
    }
    .hero-desc {
        font-size: 16px;
        line-height: 1.6;
        max-width: 100%;
        margin-bottom: 35px;
    }
    .outline-text {
       color: #ffffff;  -webkit-text-stroke: 0px transparent; 
        text-shadow: 
            -0.8px -0.8px 0 #1a1a1a,  
             0.8px -0.8px 0 #1a1a1a,
            -0.8px  0.8px 0 #1a1a1a,
             0.8px  0.8px 0 #1a1a1a; }
    .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; } 
    .about-hero::before {
        width: 300px;
        height: 300px;
        top: -50px;
        right: -80px; } }
@media (max-width: 480px) {
    .about-hero {
        padding: 75px 5% 60px;
    }
    .about-title {
        font-size: 34px;
        line-height: 1.12;
        margin-bottom: 22px;
    }
    .about-tag {
        font-size: 15px;
        letter-spacing: 0.8px;
        margin-bottom: 18px;
    }

    .hero-desc {
        font-size: 15px;
        line-height: 1.55;
    }
    .outline-text {
       color: #ffffff;  -webkit-text-stroke: 0px transparent; 
        text-shadow: 
            -0.8px -0.8px 0 #1a1a1a,  
             0.8px -0.8px 0 #1a1a1a,
            -0.8px  0.8px 0 #1a1a1a,
             0.8px  0.8px 0 #1a1a1a; }
    .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; } 
    .about-hero::before {
        width: 220px;
        height: 220px;
        top: -40px;
        right: -60px; } }
@media (max-width: 360px) {
    .about-hero { padding: 65px 4% 50px; }
    .about-title { font-size: 30px;}
    .outline-text {
       color: #ffffff;  -webkit-text-stroke: 0px transparent; 
        text-shadow: 
            -0.8px -0.8px 0 #1a1a1a,  
             0.8px -0.8px 0 #1a1a1a,
            -0.8px  0.8px 0 #1a1a1a,
             0.8px  0.8px 0 #1a1a1a; }
    .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; } 
    .hero-desc { font-size: 14px; }
    .about-tag { font-size: 14px; }
}
.services-area { padding:100px 0;  background: #FAFAFA; }
.section-subtitle { display:block; color:#2B7CFF;  font-size:20px;  font-weight:700;  letter-spacing:2px;  margin-bottom:15px;  text-align: center;  }
.section-title { font-size:60px;  font-weight:900;  line-height:1.2;  margin-bottom:20px;  text-align: center; }
.filled-black { color: #1a1a1a; }
.section-title .outline-orange { color: transparent ; -webkit-text-stroke: 2px #ED1B24; }
.filled-blue { color: #2B7CFF; } 
.header-content-heading { opacity: 0;  transform: translateX(100px) scale(.95); filter: blur(8px); transition: opacity 1s cubic-bezier(.22, .61, .36, 1), transform 1s cubic-bezier(.22, .61, .36, 1), filter 1s cubic-bezier(.22, .61, .36, 1); }
.header-content-heading.active { opacity: 1;  transform: translateX(0) scale(1); filter: blur(0); }
.section-description { text-align: center; font-size: 18px; line-height: 1.3; color: #666;  max-width: 760px;  margin:0 auto 60px; }
.service-card {
    position:relative;
    display:flex;
    flex-direction:column;
    height:100%;
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    border:1px solid #edf2ff;
    box-shadow:0 12px 35px rgba(0,0,0,.07);
    opacity: 0;
    transform: translateY(70px);
    transition: opacity .8s ease, transform .8s ease,  box-shadow .35s ease; }
.service-card.show {  opacity: 1;  transform: translateY(0); }
.service-card:hover { transform: translateY(0) scale(1.03);  box-shadow: 0 18px 40px rgba(0,0,0,.12); }
.service-image {  overflow:hidden;  position:relative; }
.service-image img { width:100%; height:260px;  object-fit:cover; }
.service-content { display:flex; flex-direction:column;  flex:1;  padding:30px; }
.service-category{
    display:inline-block;
    color:#2B7CFF;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
    margin-bottom:10px; }
.service-content strong{ font-size:28px;  font-weight:700;   color:#222;  margin-bottom:15px;  line-height:1.3; }
.service-content p { flex-grow:1; color:#666;  font-size:16px;  line-height:1.7; margin-bottom:25px; }
.service-content a{
    display:inline-flex;
    align-items:center;
    gap:8px;
    width:fit-content;
    margin-top:auto;
    color:#2B7CFF;
    font-weight:700;
    text-decoration:none;
    transition:.3s; }
.service-content a i { transition:transform .3s ease; }
.service-card:hover .service-content a {  color:#2B7CFF; }
.service-card:hover .service-content a i { transform:translateX(6px); }
.services-cta { margin-top:20px;  padding:20px 30px 20px 30px;  background:#FAFAFA; }
.cta-button {
    display:inline-flex;
    align-items:center;
    padding:15px 32px;
    border-radius:50px;
    background: linear-gradient(135deg, #1b6fff, #3b89ff);
    box-shadow: 0 0 20px rgba(59, 137, 255, .55);
    color:white;
    font-weight:700;
    text-decoration:none;
    transition:.3s ease; }
.cta-button:hover {  transform: translateY(-3px); box-shadow: 0 10px 25px rgba(59, 137, 255, .7);  filter: brightness(1.1); }
@media (max-width: 991px) {
    .services-area { padding:80px 0; }
    .section-subtitle { font-size:18px;  letter-spacing:1.5px; }
    .section-title {  font-size:45px;  line-height:1.2; }
    .section-title .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; }
    .section-description {  font-size:17px;  max-width:650px;  margin-bottom:45px; }
    .service-image img { height:230px; }
    .service-content {  padding:25px; }
    .service-content strong { font-size:24px; }
    .service-content p { font-size:15px; line-height:1.6; }
    .services-cta { margin-top:50px; } }
@media (max-width: 768px) {
    .services-area { padding:70px 0; }
    .section-subtitle { font-size:16px; margin-bottom:12px; }
    .section-title { font-size:38px; line-height:1.25;  }
    .section-title .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; }
    .section-description {   font-size:16px; line-height:1.6; padding:0 15px;  margin-bottom:40px; }
    .service-card {  border-radius:18px; }
    .service-image img {  height:220px; }
    .service-content { padding:25px; }
    .service-content strong { font-size:23px; }
    .service-category { font-size:12px; }
    .service-content p { font-size:15px; }
    .services-cta {  padding:20px 0;  margin-top:40px; }
    .cta-button {  padding:14px 28px; font-size:15px; } }
@media (max-width:576px) {
   .services-area { padding:55px 0; }
   .section-subtitle { font-size:14px; letter-spacing:1px; }
   .section-title { font-size:30px;  line-height:1.3; padding:0 10px; }
   .section-title .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; }
   .section-description { font-size:15px; line-height:1.7;  padding:0 20px;  margin-bottom:35px; }
   .service-card {  border-radius:16px; }
   .service-image img { height:200px; }
   .service-content { padding:22px; }
   .service-category {  font-size:11px; }
   .service-content strong {  font-size:21px;  line-height:1.3; }
   .service-content p { font-size:14px; line-height:1.6; margin-bottom:20px; }
   .service-content a { font-size:14px; }
   .services-cta {  margin-top:35px; padding:15px 0; }
   .cta-button { padding:13px 25px;  font-size:14px; } }
@media (max-width:400px) {
   .services-area { padding:45px 0;   }
   .section-title { font-size:28px; }
   .section-subtitle { font-size:13px; }
   .section-title .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; }
   .section-description {  font-size:14px; }
   .service-image img { height:180px; }
   .service-content { padding:20px; }
   .service-content strong{ font-size:19px; }
   .service-content p { font-size:13px; }
   .cta-button { justify-content:center;  padding:13px 20px; } }
@media (max-width:359px) {
   .section-title { font-size:26px; }
   .service-image img { height:160px; }
   .section-title .outline-orange { color: #ffffff; -webkit-text-stroke: 0px transparent;
        text-shadow: 
            -0.8px -0.8px 0 #ED1B24,  
             0.8px -0.8px 0 #ED1B24,
            -0.8px  0.8px 0 #ED1B24,
             0.8px  0.8px 0 #ED1B24; }
   .service-content { padding:18px; }
   .service-content strong { font-size:18px; }
   .service-content p { font-size:12.5px; } }