/*==========================================
APPLICATION DEVELOPMENT HERO
==========================================*/

.appdev-hero{

    background:linear-gradient(135deg,#f8fbff,#eef4ff);

    padding:90px 0;

    overflow:hidden;

}

.appdev-hero .service-title{

    font-size:52px;

    font-weight:700;

    color:#0f172a;

}

.appdev-hero .service-title span{

    color:#2563eb;

}

.appdev-hero .service-description{

    margin-top:25px;

    line-height:1.9;

    color:#64748b;

    font-size:18px;

}

/*================================*/

.app-architecture{

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    box-shadow:0 20px 60px rgba(0,0,0,.10);

    max-width:470px;

    margin:auto;

}

.app-header{

    background:linear-gradient(90deg,#2563eb,#4f46e5);

    color:#fff;

    padding:18px 24px;

    font-size:18px;

    font-weight:600;

}

.app-header i{

    margin-right:10px;

}

.architecture-body{

    padding:30px;

    text-align:center;

}

/*================================*/

.app-node{

    width:145px;

    height:90px;

    margin:auto;

    background:#f8fbff;

    border:2px solid #dbeafe;

    border-radius:18px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    transition:.35s;

}

.app-node:hover{

    transform:translateY(-6px);

    border-color:#2563eb;

    box-shadow:0 10px 25px rgba(37,99,235,.15);

}

.app-node i{

    font-size:28px;

    color:#2563eb;

    margin-bottom:8px;

}

.users{

    width:160px;

}

.api{

    width:180px;

}

.database{

    width:190px;

}

.app-row{

    display:flex;

    justify-content:center;

    gap:25px;

    margin:18px 0;

}

.app-connector{

    width:3px;

    height:22px;

    background:#93c5fd;

    margin:10px auto;

}

@media(max-width:992px){

.app-architecture{

margin-top:50px;

}

.app-row{

flex-direction:column;

align-items:center;

}

.appdev-hero .service-title{

font-size:40px;

}

}

/*==========================================
BUSINESS NEEDS
==========================================*/

.business-needs{

    background:#ffffff;

}

.needs-image{

    display:flex;

    flex-direction:column;

    align-items:center;

}

.idea-card{

    width:260px;

    background:#fff;

    border-radius:18px;

    padding:25px;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.35s;

}

.idea-card:hover{

    transform:translateY(-8px);

}

.idea-icon{

    width:70px;

    height:70px;

    border-radius:50%;

    background:#e0e7ff;

    margin:auto;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:18px;

}

.idea-icon i{

    font-size:30px;

    color:#2563eb;

}

.middle .idea-icon{

    background:#dbeafe;

}

.success .idea-icon{

    background:#dcfce7;

}

.success .idea-icon i{

    color:#16a34a;

}

.flow-arrow{

    font-size:28px;

    color:#2563eb;

    margin:15px 0;

}

.need-item{

    display:flex;

    gap:18px;

    margin-bottom:30px;

}

.need-item i{

    color:#2563eb;

    font-size:28px;

    margin-top:5px;

}

.need-item h5{

    font-weight:700;

    margin-bottom:8px;

}

.need-item p{

    color:#64748b;

    line-height:1.8;

}

/*==========================================
SOLUTIONS SECTION
==========================================*/

.solutions-section{

    background:#f8fbff;

}

.solution-card{

    background:#fff;

    border-radius:20px;

    padding:35px;

    height:100%;

    transition:.35s;

    border-top:4px solid transparent;

    box-shadow:0 10px 30px rgba(0,0,0,.06);

}

.solution-card:hover{

    transform:translateY(-10px);

    border-top:4px solid #2563eb;

    box-shadow:0 20px 45px rgba(37,99,235,.18);

}

.solution-icon{

    width:75px;

    height:75px;

    border-radius:18px;

    background:#dbeafe;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:22px;

    transition:.35s;

}

.solution-icon i{

    font-size:32px;

    color:#2563eb;

}

.solution-card:hover .solution-icon{

    background:#2563eb;

}

.solution-card:hover .solution-icon i{

    color:#fff;

}

.solution-card h4{

    font-weight:700;

    margin-bottom:15px;

}

.solution-card p{

    color:#64748b;

    line-height:1.8;

}

.solution-card ul{

    margin-top:20px;

    padding-left:18px;

}

.solution-card li{

    margin-bottom:10px;

    color:#475569;

}

/*======================================
SDLC
======================================*/

.sdlc-section{

    background:#ffffff;

}

.sdlc-wrapper{

    width:700px;

    height:700px;

    margin:auto;

    position:relative;

}

/*========================*/

.sdlc-center{

    position:absolute;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

    width:180px;

    height:180px;

    border-radius:50%;

    background:linear-gradient(135deg,#2563eb,#4f46e5);

    color:#fff;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    box-shadow:0 20px 60px rgba(37,99,235,.35);

    z-index:10;

}

.sdlc-center i{

    font-size:50px;

    margin-bottom:12px;

}

/*========================*/

.sdlc-step{

    position:absolute;

    width:120px;

    height:120px;

    background:#fff;

    border-radius:50%;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

    transition:.35s;

    z-index:5;

}

.sdlc-step:hover{

    transform:scale(1.08);

    background:#2563eb;

    color:#fff;

}

.sdlc-step i{

    font-size:30px;

    color:#2563eb;

    margin-bottom:10px;

}

.sdlc-step:hover i{

    color:#fff;

}

.sdlc-step h6{

    font-size:15px;

    margin:0;

    font-weight:600;

}

/*========================*/

.top{

left:290px;
top:20px;

}

.top-right{

right:80px;
top:100px;

}

.right{

right:20px;
top:290px;

}

.bottom-right{

right:80px;
bottom:100px;

}

.bottom{

left:290px;
bottom:20px;

}

.bottom-left{

left:80px;
bottom:100px;

}

.left{

left:20px;
top:290px;

}

.top-left{

left:80px;
top:100px;

}

/*========================*/

.sdlc-lines{

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    z-index:1;

}

.circle-path{

    fill:none;

    stroke:#bfdbfe;

    stroke-width:3;

    stroke-dasharray:12 10;

    animation:rotateCircle 20s linear infinite;

}

@keyframes rotateCircle{

    from{

        stroke-dashoffset:0;

    }

    to{

        stroke-dashoffset:440;

    }

}

/*========================*/

@media(max-width:992px){

.sdlc-wrapper{

width:100%;

height:auto;

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

}

.sdlc-center{

position:relative;

left:auto;

top:auto;

transform:none;

grid-column:1/3;

margin:auto;

margin-bottom:20px;

}

.sdlc-step{

position:relative;

left:auto;

right:auto;

top:auto;

bottom:auto;

margin:auto;

}

.sdlc-lines{

display:none;

}

}


/*==========================================
TECH ARCHITECTURE
==========================================*/

.tech-architecture{

    background:#f8fbff;

}

.architecture-stack{

    max-width:1100px;

    margin:auto;

}

.tech-layer{

    background:#ffffff;

    border-radius:20px;

    overflow:hidden;

    margin-bottom:28px;

    box-shadow:0 15px 35px rgba(0,0,0,.06);

    transition:.35s;

}

.tech-layer:hover{

    transform:translateY(-6px);

}

.layer-header{

    color:#fff;

    font-size:20px;

    font-weight:600;

    padding:18px 25px;

}

.layer-header i{

    margin-right:12px;

}

.frontend{

    background:linear-gradient(90deg,#2563eb,#3b82f6);

}

.backend{

    background:linear-gradient(90deg,#7c3aed,#8b5cf6);

}

.database{

    background:linear-gradient(90deg,#059669,#10b981);

}

.cloud{

    background:linear-gradient(90deg,#0284c7,#0ea5e9);

}

.layer-body{

    display:flex;

    flex-wrap:wrap;

    gap:15px;

    padding:25px;

}

.layer-body span{

    background:#f1f5f9;

    border-radius:40px;

    padding:12px 22px;

    font-weight:600;

    transition:.3s;

}

.layer-body span:hover{

    background:#2563eb;

    color:#fff;

    transform:translateY(-4px);

}

.layer-body i{

    margin-right:8px;

}

/*==========================================
INDUSTRY SOLUTIONS
==========================================*/

.industry-solutions{

    background:#ffffff;

}

.industry-hub{

    position:relative;

    width:800px;

    height:800px;

    margin:auto;

}

.industry-center{

    position:absolute;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

    width:200px;

    height:200px;

    border-radius:50%;

    background:linear-gradient(135deg,#2563eb,#4f46e5);

    color:#fff;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    z-index:5;

    box-shadow:0 20px 60px rgba(37,99,235,.35);

}

.industry-center i{

    font-size:54px;

    margin-bottom:15px;

}

.industry-node{

    position:absolute;

    width:150px;

    height:150px;

    background:#fff;

    border-radius:50%;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.35s;

    border:2px solid #dbeafe;

    z-index:5;

}

.industry-node:hover{

    transform:scale(1.08);

    background:#2563eb;

    color:#fff;

    border-color:#2563eb;

}

.industry-node i{

    font-size:34px;

    color:#2563eb;

    margin-bottom:10px;

}

.industry-node:hover i{

    color:#fff;

}

.industry-node h6{

    font-weight:700;

    margin-bottom:5px;

}

.industry-node small{

    font-size:12px;

    line-height:1.5;

}

/* Positions */

.banking{left:325px;top:20px;}
.healthcare{right:90px;top:110px;}
.education{right:20px;top:325px;}
.retail{right:90px;bottom:110px;}
.manufacturing{left:325px;bottom:20px;}
.logistics{left:90px;bottom:110px;}
.hospitality{left:20px;top:325px;}
.enterprise{left:90px;top:110px;}

/* SVG */

.industry-lines{

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    z-index:1;

}

.industry-circle{

    fill:none;

    stroke:url(#industryGradient);

    stroke-width:3;

    stroke-dasharray:10 10;

    animation:industryRotate 18s linear infinite;

}

@keyframes industryRotate{

    from{

        stroke-dashoffset:0;

    }

    to{

        stroke-dashoffset:500;

    }

}

@media(max-width:992px){

.industry-hub{

    width:100%;

    height:auto;

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:20px;

}

.industry-center{

    position:relative;

    left:auto;

    top:auto;

    transform:none;

    grid-column:1/3;

    margin:auto;

}

.industry-node{

    position:relative;

    left:auto;

    right:auto;

    top:auto;

    bottom:auto;

    margin:auto;

}

.industry-lines{

    display:none;

}

}

/*==========================================
CLIENT BENEFITS
==========================================*/

.client-benefits{

    background:#f8fbff;

}

.benefit-item{

    display:flex;

    gap:20px;

    margin-bottom:35px;

}

.benefit-icon{

    width:70px;

    height:70px;

    min-width:70px;

    border-radius:18px;

    background:#dbeafe;

    display:flex;

    justify-content:center;

    align-items:center;

}

.benefit-icon i{

    color:#2563eb;

    font-size:30px;

}

.benefit-item h5{

    font-weight:700;

    margin-bottom:10px;

}

.benefit-item p{

    color:#64748b;

    line-height:1.8;

}

/*===========================*/

.value-panel{

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.value-header{

    background:linear-gradient(90deg,#2563eb,#4f46e5);

    color:#fff;

    padding:18px 25px;

    font-size:20px;

    font-weight:600;

}

.value-header i{

    margin-right:10px;

}

.value-body{

    padding:30px;

}

.value-item{

    display:flex;

    align-items:center;

    gap:15px;

    padding:15px 0;

    border-bottom:1px solid #edf2f7;

    font-weight:600;

}

.value-item:last-child{

    border:none;

}

.value-item i{

    color:#2563eb;

    font-size:18px;

}

/*==========================================
APPLICATION FAQ
==========================================*/

.application-faq{

    background:#f8fbff;

}

.app-faq .accordion-item{

    border:none;

    border-radius:18px;

    overflow:hidden;

    margin-bottom:20px;

    box-shadow:0 10px 30px rgba(0,0,0,.06);

}

.app-faq .accordion-button{

    background:#fff;

    font-weight:600;

    font-size:17px;

    padding:22px 25px;

    color:#0f172a;

}

.app-faq .accordion-button:not(.collapsed){

    background:linear-gradient(90deg,#2563eb,#4f46e5);

    color:#fff;

}

.app-faq .accordion-button:focus{

    box-shadow:none;

}

.app-faq .accordion-body{

    padding:25px;

    color:#64748b;

    line-height:1.9;

    background:#fff;

}

