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



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

.services-hero{

    padding:160px 0 110px;

    position:relative;

    overflow:hidden;

    background:
    linear-gradient(
        135deg,
        rgba(79,124,255,.08),
        rgba(0,212,255,.05)
    );

}



.services-hero::before{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    border-radius:50%;

    background:rgba(79,124,255,.08);

    top:-260px;

    right:-220px;

}



.services-hero::after{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    border-radius:50%;

    background:rgba(0,212,255,.08);

    left:-150px;

    bottom:-180px;

}



.hero-content{

    position:relative;

    z-index:2;

    max-width:850px;

}



.hero-badge{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:12px 24px;

    border-radius:999px;

    background:var(--surface);

    color:var(--primary);

    box-shadow:var(--shadow);

    font-weight:700;

    margin-bottom:28px;

}



.hero-content h1{

    font-size:clamp(2.8rem,5vw,4.8rem);

    line-height:1.15;

    margin-bottom:25px;

    font-weight:800;

}



.hero-content p{

    max-width:760px;

    color:var(--text-light);

    font-size:1.15rem;

    line-height:1.9;

}



/*==================================================
    SECTION TITLE
==================================================*/

.section-title{

    text-align:center;

    margin-bottom:70px;

}



.section-title span{

    display:inline-block;

    padding:10px 22px;

    border-radius:999px;

    background:rgba(79,124,255,.10);

    color:var(--primary);

    font-weight:700;

    margin-bottom:18px;

}



.section-title h2{

    font-size:2.8rem;

}



/*==================================================
    MAIN SERVICES
==================================================*/

.services-list{

    padding:100px 0 60px;

}



.services-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(300px,1fr));

    gap:30px;

}



.service-card{

    background:var(--surface);

    border:1px solid var(--border);

    border-radius:24px;

    padding:40px 35px;

    text-align:center;

    transition:.35s;

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

}



.service-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 55px rgba(0,0,0,.10);

}



.service-card i{

    width:80px;

    height:80px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin:auto;

    margin-bottom:28px;

    border-radius:50%;

    background:rgba(79,124,255,.12);

    color:var(--primary);

    font-size:2rem;

}



.service-card h3{

    font-size:1.6rem;

    margin-bottom:18px;

}



.service-card p{

    color:var(--text-light);

    line-height:1.8;

}
/*==================================================
    FEATURED SERVICES
==================================================*/

.featured-services{

    padding:60px 0 100px;

}



.service-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(340px,1fr));

    gap:35px;

}



.service-box{

    background:var(--surface);

    border:1px solid var(--border);

    border-radius:26px;

    overflow:hidden;

    transition:.35s;

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

}



.service-box:hover{

    transform:translateY(-12px);

    box-shadow:0 30px 65px rgba(0,0,0,.12);

}



.service-box img{

    width:100%;

    height:240px;

    object-fit:cover;

    transition:.45s;

}



.service-box:hover img{

    transform:scale(1.08);

}



.service-content{

    padding:30px;

}



.service-tag{

    display:inline-block;

    padding:8px 18px;

    border-radius:999px;

    background:rgba(79,124,255,.10);

    color:var(--primary);

    font-size:.85rem;

    font-weight:700;

    margin-bottom:18px;

}



.service-content h3{

    font-size:1.6rem;

    margin-bottom:16px;

}



.service-content p{

    color:var(--text-light);

    line-height:1.8;

    margin-bottom:26px;

}



.service-content a{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:var(--primary);

    font-weight:700;

    transition:.3s;

}



.service-content a:hover{

    gap:16px;

}



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

.why-us{

    padding:100px 0;

    background:var(--surface-2);

}



.why-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(280px,1fr));

    gap:30px;

}



.why-card{

    background:var(--surface);

    border:1px solid var(--border);

    border-radius:24px;

    padding:45px 35px;

    text-align:center;

    transition:.35s;

}



.why-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow);

}



.why-card i{

    width:80px;

    height:80px;

    margin:auto;

    margin-bottom:25px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:rgba(79,124,255,.12);

    color:var(--primary);

    font-size:2rem;

}



.why-card h3{

    font-size:1.5rem;

    margin-bottom:18px;

}



.why-card p{

    color:var(--text-light);

    line-height:1.8;

}
/*==================================================
    CALL TO ACTION
==================================================*/

.services-cta{

    padding:110px 0;

}



.cta-box{

    text-align:center;

    padding:80px 60px;

    border-radius:32px;

    background:
    linear-gradient(
        135deg,
        var(--primary),
        #6C63FF
    );

    color:#fff;

    box-shadow:
        0 25px 60px rgba(79,124,255,.25);

}



.cta-box span{

    display:inline-block;

    padding:10px 22px;

    border-radius:999px;

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

    font-weight:700;

    margin-bottom:22px;

}



.cta-box h2{

    font-size:3rem;

    margin-bottom:22px;

}



.cta-box p{

    max-width:760px;

    margin:auto;

    line-height:1.9;

    opacity:.95;

    margin-bottom:40px;

}



.cta-button{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:18px 34px;

    border-radius:14px;

    background:#fff;

    color:var(--primary);

    font-weight:700;

    transition:.3s;

}



.cta-button:hover{

    transform:translateY(-6px);

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

}



/*==================================================
    FOOTER
==================================================*/

.footer{

    background:var(--surface);

    border-top:1px solid var(--border);

    padding-top:70px;

}



.footer-content{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(260px,1fr));

    gap:50px;

    padding-bottom:50px;

}



.footer-brand img{

    width:70px;

    margin-bottom:18px;

}



.footer-brand h3{

    margin-bottom:15px;

}



.footer-brand p{

    color:var(--text-light);

    line-height:1.8;

}



.footer-links{

    display:flex;

    flex-direction:column;

    gap:14px;

}



.footer-links h4,

.footer-social h4{

    margin-bottom:18px;

}



.footer-links a{

    color:var(--text-light);

    transition:.3s;

}



.footer-links a:hover{

    color:var(--primary);

    padding-left:8px;

}



.social-icons{

    display:flex;

    gap:15px;

}



.social-icons a{

    width:48px;

    height:48px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:var(--surface-2);

    border:1px solid var(--border);

    transition:.3s;

}



.social-icons a:hover{

    background:var(--primary);

    color:#fff;

    transform:translateY(-5px);

}



.footer-bottom{

    border-top:1px solid var(--border);

    padding:25px;

    text-align:center;

    color:var(--text-light);

}



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

@media(max-width:1000px){

    .service-grid{

        grid-template-columns:1fr 1fr;

    }

}



@media(max-width:768px){

    .services-hero{

        padding:120px 0 80px;

    }

    .hero-content h1{

        font-size:2.5rem;

    }

    .section-title h2{

        font-size:2.2rem;

    }

    .services-grid,

    .service-grid,

    .why-grid{

        grid-template-columns:1fr;

    }

    .cta-box{

        padding:55px 30px;

    }

    .cta-box h2{

        font-size:2.2rem;

    }

}



@media(max-width:500px){

    .hero-content h1{

        font-size:2rem;

    }

    .service-card,

    .service-content,

    .why-card{

        padding:24px;

    }

    .cta-box{

        padding:40px 20px;

    }

    .cta-button{

        width:100%;

        justify-content:center;

    }

}