/*OUR EXPERTISE*/

/* LEFT SIDE ALIGNMENT */

/* OUR EXPERTISE SECTION */
.section-expertise {
    padding: 100px 0;
}

/* ADD GAP BETWEEN LEFT & RIGHT */
.section-expertise .row.align-items-start{
    display:flex;
    align-items:flex-start;
    column-gap:80px;   /* increase/decrease gap here */
}

/* LEFT SIDE */
.section-expertise .col-lg-5{
    flex:0 0 42%;
    max-width:42%;
}

/* RIGHT SIDE */
.section-expertise .col-lg-7{
    flex:0 0 50%;
    max-width:50%;
}
.small-heading {
    font-family:Inter, sans-serif;
    font-size: 18px;
    line-height:16px;
    font-weight:400;
    letter-spacing:normal;
    color: #212529;
    letter-spacing: 1px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.pink-box {
    width: 13px;
    height: 13px;
    background: #F30344;
    display: inline-block;
    margin-right: 10px;
}


/*main heading*/
.expertise-heading{
    width: 100%;
    float: left;
    text-align: left;
    color: #060606;
    font-weight: 400;
    font-size: 55px;
    line-height: 120%;
    padding-top: 24px;

    margin-bottom: 30px;   /* ADD THIS */
}

.nowrap{
    white-space:nowrap;   /* keeps "for Every Industry" together */
}

.highlight{
    /*font-weight:700;*/
    display:inline-block;
    white-space:nowrap;

 background: linear-gradient(90deg, #000000, #f30344, #000000);
  background-size: 200% auto; 
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: leftToRightGradient 4s linear infinite;
}

@keyframes leftToRightGradient {
  0% {
    background-position: 0% center;
  }
  100% {
    background-position: 200% center;
  }
}

/*PARAGRAPH*/
.expertise-text {
    margin-top: 20px;
    font-size: 16px;
    color: #555;
    line-height: 1.7;
    max-width: 450px;
        text-align: justify;       /* equal alignment both sides */

}



@keyframes flowText {
    from{
        background-position:0% 0%;
    }
    to{
        background-position:100% 0%;
    }
}



/* Add spacing between cards */
.section-expertise .col-12{
    margin-bottom:30px;
}

/* cards */
.exp-card {
    background: #ffffff;
    padding: 40px;
    border-radius: 16px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s ease;
    border:1px solid #dcdcdc;   /* 🔥 visible grey border */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

/* Left Accent Line */
.exp-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 4px;
    background: linear-gradient(180deg, #ff2c55, #ff4f87, #ff2c55);
    transition: width 0.4s ease;
}

/* Hover Effect */
.exp-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12);
}

/* Expand Accent Line on Hover */
.exp-card:hover::before {
    width: 8px;
}

/* Title */
.exp-card h4 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 15px;
    transition: color 0.3s ease;
}

/* Paragraph */
.exp-card p {
    font-size: 15px;
    color: #666;
    line-height: 1.7;
    margin-bottom: 0;
}

/* Optional Arrow */
.exp-card::after {
    content: "→";
    position: absolute;
    right: 25px;
    bottom: 25px;
    font-size: 18px;
    color: #ff2c55;
    opacity: 0;
    transform: translateX(-10px);
    transition: all 0.3s ease;
}

.exp-card:hover::after {
    opacity: 1;
    transform: translateX(0);
}



/* ================================
   RESPONSIVE DESIGN
================================ */


/* ================= TABLET ================= */
@media (max-width: 992px){

    /* GLOBAL SECTION SPACING */
    .section-expertise,
    .section-infra,
    .section-process{
        padding:80px 0;
    }

    /* EXPERTISE SECTION */
    .section-expertise .row.align-items-start{
        flex-direction:column;
        row-gap:40px;
        column-gap:0;
    }

    .section-expertise .col-lg-5,
    .section-expertise .col-lg-7{
        flex:0 0 100%;
        max-width:100%;
        width:100%;
    }

    .expertise-heading{
        font-size:42px;
        line-height:1.3;
    }

    .expertise-text{
        max-width:100%;
        font-size:15px;
    }

    .exp-card{
        padding:30px;
    }

    .exp-card h4{
        font-size:20px;
    }

    /* INFRASTRUCTURE */
    .infra-title{
        font-size:42px;
        line-height:1.3;
    }

    .infra-text{
        font-size:16px;
        line-height:1.7;
        max-width:100%;
    }

    .infra-img img{
        margin-bottom:30px;
    }

    /* PROCESS */
    .process-heading{
        font-size:42px;
        line-height:1.3;
    }

    .process-para{
        font-size:15px;
        line-height:1.7;
    }

    .process-card{
        padding:30px 25px;
    }

}



/* ================= MOBILE ================= */
@media (max-width: 768px){

    /* GLOBAL */
    .section-expertise,
    .section-infra,
    .section-process{
        padding:70px 0;
    }

    /* EXPERTISE */
    .section-expertise .row.align-items-start{
        flex-direction:column;
        row-gap:35px;
    }

    .expertise-heading{
        font-size:32px;
        line-height:1.3;
    }

    .expertise-text{
        font-size:14px;
        line-height:1.8;
        max-width:100%;
        text-align:justify;
    }

    .nowrap,
    .highlight{
        white-space:normal;
    }

    .exp-card{
        padding:25px;
        margin-bottom:20px;
    }

    .exp-card h4{
        font-size:20px;
    }

    .exp-card p{
        font-size:14px;
        line-height:1.7;
    }

    /* INFRASTRUCTURE */
    .section-infra .col-lg-6{
        width:100%;
        display:block;
    }

    .infra-title{
        font-size:32px;
        line-height:1.3;
        text-align:center;
    }

    .infra-text{
        font-size:15px;
        line-height:1.8;
        max-width:100%;
        text-align:center;
    }

    .infra-img img{
        width:100%;
        height:auto;
        margin-bottom:30px;
    }

    .section-infra .read-more a{
        padding:12px 22px;
        font-size:16px;
    }

    /* PROCESS */
    .process-heading{
        font-size:32px;
        line-height:1.3;
    }

    .process-para{
        font-size:14px;
        line-height:1.7;
        text-align:center;
    }

    .process-card{
        padding:25px 20px;
    }

    .process-card h4{
        font-size:32px;
    }

    .process-card h5{
        font-size:18px;
    }

    .process-card p{
        font-size:14px;
        line-height:1.7;
    }

}



/* ================= SMALL MOBILE ================= */
@media (max-width: 480px){

    /* SECTION SPACING */
    .section-expertise,
    .section-infra,
    .section-process{
        padding:60px 0;
    }

    /* SMALL HEADINGS */
    .small-heading,
    .section-process .stion-allbx h4,
    .section-infra .stion-allbx h4{
        font-size:15px;
    }

    /* MAIN HEADINGS */
    .expertise-heading,
    .infra-title,
    .process-heading{
        font-size:26px;
        line-height:1.4;
    }

    /* PARAGRAPHS */
    .expertise-text,
    .infra-text,
    .process-para{
        font-size:14px;
        line-height:1.8;
    }

    /* CARDS */
    .exp-card,
    .process-card{
        padding:20px;
        border-radius:12px;
    }

    .exp-card h4,
    .process-card h5{
        font-size:17px;
    }

    .process-card h4{
        font-size:28px;
    }

    /* BUTTON */
    .section-infra .read-more a{
        width:100%;
        justify-content:center;
        font-size:15px;
    }

}












/*OUR INFRASTRUCTURE*/
.section-infra{
    width:100%;
    float:left;
    padding:120px 0;
    background:#ffffff;

}


.section-infra .col-lg-6{
    display: flex;
}

.infra-img img{
    width:100%;
    border-radius:12px;
      height:100%;
    object-fit:cover; /* keeps image proper without distortion */
}


/* small heading row */
.section-infra .stion-allbx{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin-bottom:15px;
    white-space:nowrap;   /* prevents text breaking */
}

/* pink square */
.section-infra .allbx{
   
    background:#F30344;
    flex-shrink:0;   /* prevents square from shrinking */
     width: 13px;
    height: 13px;
    display: inline-block;
    margin-right: 10px;
}

/* small heading text */
.section-infra .stion-allbx h4{
    margin:0;
    font-family:Inter, sans-serif;
    font-size:18px;
    color:#212529;
     line-height:16px;
    font-weight:400;
    letter-spacing:normal;
}
/* main heading */
.infra-title{
    width: 100%;
    float: left;
    text-align: left;
    color:#212529;
    margin-bottom: 30px;   /* ADD THIS */
    font-size: 55px;
    font-weight: 400;
    line-height: 116%;
    padding-top: 24px;
}


/*.highlight{*/
/* background: linear-gradient(90deg, #ffffff, #f30344, #ffffff);*/
/*  background-size: 200% auto;*/
/*  -webkit-background-clip: text;*/
/*  -webkit-text-fill-color: transparent;*/
/*  animation: leftToRightGradient 4s linear infinite;*/
/*}*/

/*@keyframes leftToRightGradient {*/
/*  0% {*/
/*    background-position: 0% center;*/
/*  }*/
/*  100% {*/
/*    background-position: 200% center;*/
/*  }*/
/*}*/



/* paragraph */
.infra-text{
    
font-family:Inter,sans-serif;
    width:100%;
    max-width:700px;      /* keeps text neat */
    margin:0 auto 30px;   /* centers block */
    text-align:center;   /* ✅ This centers the text */
    font-size:18px;
    line-height:27.18px;
    color:#212529;
    font-weight:400;
    letter-spacing:normal;
    
}


.section-infra .col-lg-6:last-child{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;   /* ⭐ THIS CENTERS EVERYTHING */
}

/* Default button style */
.section-infra .read-more{
    float:none !important;          /* remove any global float */
    width:100%;
    display:flex;
    justify-content:center;         /* center horizontally */
    align-items:center;
    margin-top:30px;
}

.section-infra .read-more a{
    display:inline-flex;
    align-items:center;
    gap:18px;
    padding:12px 28px;
    border:2px solid #F30344;
    border-radius:50px;
    text-decoration:none;
    
        font-family: Inter, sans-serif;
    font-size: 18px;
    line-height: 27.18px;
    font-weight: 400;
    letter-spacing: normal;
    color: #212529;

    transition:0.3s ease;
    white-space:nowrap;

}




/* optional hover */
.section-infra .read-more a:hover{
    background:#F30344;
    color:#fff;
}


.section-infra .cir{
    width:32px;
    height:32px;
    display:flex;
    align-items:center;
    justify-content:center;
}


/* mobile */
@media(max-width:768px){

.section-infra{
    padding:70px 0;
}

.infra-title{
    font-size:28px;
}

}


/* =========================
   INFRA RESPONSIVE
========================= */

/* TABLET */
@media (max-width: 992px){

    .section-infra{
        padding:90px 0;
    }

    .infra-title{
        font-size:42px;
        line-height:1.3;
    }

    .infra-text{
        font-size:16px;
        line-height:1.8;
        max-width:100%;
    }

    .section-infra .col-lg-6{
        width:100%;
        display:block;
    }

    .infra-img img{
        width:100%;
        height:auto;
        margin-bottom:40px;
    }

    .section-infra .read-more{
        margin-top:25px;
    }

}


/* MOBILE */
@media (max-width:768px){

    .section-infra{
        padding:70px 0;
    }

    /* STACK IMAGE + CONTENT */
    .section-infra .row{
        flex-direction:column;
    }
    


    .section-infra .col-lg-6{
        width:100%;
        display:block;
    }

    /* IMAGE */
  .infra-img{
    width:100%;
    height:250px;   /* reduce height here */
    overflow:hidden;
    margin-bottom:30px;
}

    .infra-img img{
        width:100%;
        height:auto;
        border-radius:10px;
        display:block;
    }

    /* SMALL HEADING */
    .section-infra .stion-allbx h4{
        font-size:15px;
    }

    .section-infra .allbx{
        width:11px;
        height:11px;
    }

    /* MAIN TITLE */
    .infra-title{
        font-size:32px;
        line-height:1.35;
        margin-bottom:18px;
        text-align:center;
    }

    /* PARAGRAPH */
    .infra-text{
        font-size:15px;
        line-height:1.8;
        max-width:100%;
        text-align:center;
        padding:0 10px;
    }

    /* BUTTON */
    .section-infra .read-more{
        margin-top:25px;
    }

     .section-infra .read-more a{
    padding:10px 20px;
    font-size:14px;
    gap:10px;
    border-radius:40px;
}

    .section-infra .cir{
        width:28px;
        height:28px;
    }

}


/* SMALL MOBILE */
@media (max-width:480px){

    .section-infra{
        padding:60px 0;
    }

    .infra-title{
        font-size:26px;
        line-height:1.4;
    }

    .infra-text{
        font-size:14px;
        line-height:1.8;
    }

    /* SMALL BUTTON */
    .section-infra .read-more a{
        width:auto;              /* important */
        justify-content:center;
        font-size:13px;
        padding:8px 16px;
        gap:8px;
        border-radius:35px;
    }

    /* SMALL ICON */
    .section-infra .cir{
        width:22px;
        height:22px;
    }

    .section-infra .stion-allbx{
        gap:6px;
    }

}










/*OUR PROCESS*/

.section-process .allbx{
    width:12px;
    height:12px;
    background:#F30344;
    display:inline-block;
}



/* Center small heading row */ 
.stion-allbx{
    display:flex; justify-content:center;
/* center square + text */
    align-items:center;
    gap:10px; 
    margin-bottom:20px;
}


/* Fix small heading color inside process section */ 
.section-process .stion-allbx h4{
    color:#cccccc;
/* light grey */ 
     margin:0;
    font-family:Inter, sans-serif;
    font-size:18px;
     line-height:16px;
    font-weight:400;
    letter-spacing:normal;
}




.section-process{
    width:100%; float:left;
    padding:140px 0; 
    background:#000000; /* black background */ 
    
}

/* heading */
.process-heading{
    font-size:55px;
    font-weight:500;
    margin-top:35px;
    text-align:center;
    color:#FFFFFF;   /* add this */

    line-height:130%;
    margin-bottom:20px;
        margin-bottom:20px;

    letter-spacing:normal;
    font-family:inter-sans-serif;
}

  

.process-heading span{
    font-weight:700;
     color:#F30344; /* pink highlight */
}

.process-heading-highlight{
    font-weight:700;

    background: linear-gradient(
        90deg,
        #f30344,
        #ffffff,
        #f30344
    );

    background-size:200% auto;

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;

    animation:leftToRightGradient 3s linear infinite;
}

@keyframes leftToRightGradient{
    0%{
        background-position:0% center;
    }

    100%{
        background-position:200% center;
    }
}




/* paragraph */
.process-para{
    font-size:16px;
    width:100%;
    max-width:100%;
    margin-bottom:40px;
    line-height:1.7;
    color:#FFFFFF;   /* add this */
}

/* cards */
.process-card{
     background:#111111; /* dark card */
    padding:40px 30px;
    border-radius:10px;
    box-shadow:0 8px 25px rgba(0,0,0,0.06);
    margin-bottom:30px;
    transition:.3s;
     border:1px solid rgba(255,255,255,0.08);
}

.process-card:hover{
    transform:translateY(-10px);
     border-color:#aaaaaa;
}

/* number */
.process-card h4{
    font-size:40px;
    color:#F30344;
    margin-bottom:10px;
     font-weight:600;
    
}

/* title */
.process-card h5{
    font-size:20px;
    margin-bottom:10px;
     color:#ffffff;
    font-weight:500;
}

/* text */
.process-card p{
    font-size:15px;
  color:#aaaaaa;
}





/*Tablet (992px and below)*/
@media (max-width: 992px){

    /* PROCESS */
    .process-heading{
        font-size:42px;
    }

    .process-para{
        font-size:15px;
        line-height:1.6;
    }

    /* EXPERTISE */
    .expertise-heading{
        font-size:42px;
    }

    .exp-card{
        padding:30px;
    }
}



/*Mobile (768px and below)*/
@media (max-width: 768px){

    /* SECTION SPACING */
    .section-process{
        padding:80px 0;
    }

    .section-expertise{
        padding:80px 0;
    }

    /* HEADINGS */
    .process-heading{
        font-size:32px;
        line-height:1.3;
    }

    .expertise-heading{
        font-size:32px;
        line-height:1.3;
    }

    /* Remove nowrap on mobile so text can break properly */
    .nowrap{
        white-space:normal;
    }

    .highlight{
        white-space:normal;
    }

    /* Paragraphs */
    .process-para,
    .exp-main-para{
        font-size:14px;
        line-height:1.6;
    }

    /* Cards */
    .process-card,
    .exp-card{
        padding:25px;
    }

}


/*Small Mobile (480px and below)*/
@media (max-width: 480px){

    .process-heading{
        font-size:26px;
    }

    .expertise-heading{
        font-size:26px;
    }

    .process-card h4{
        font-size:30px;
    }

    .process-card h5{
        font-size:18px;
    }

}
