/* ==========================================================
   SERVICES
========================================================== */

.services{

    padding:160px 0;

    position:relative;

}

.section-title{

    max-width:760px;

    margin:0 auto 90px;

    text-align:center;

}

.section-title span{

    display:inline-flex;

    padding:10px 18px;

    border-radius:999px;

    background:rgba(124,58,237,.10);

    color:#8B5CF6;

    font-size:13px;

    font-weight:600;

    letter-spacing:.12em;

    margin-bottom:24px;

}

.section-title h2{

    margin-bottom:24px;

    font-size:clamp(2.8rem,4vw,4.6rem);

}

.section-title p{

    font-size:20px;

    color:#AAB6C8;

}

.services-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:34px;

}

/* CARD */

.service-card{

    position:relative;

    overflow:hidden;

    border-radius:32px;

    padding:42px;

    background:linear-gradient(180deg,#14161C,#0F1015);

    border:1px solid rgba(255,255,255,.06);

    transition:.45s;

}

.service-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:radial-gradient(circle at top right,

    rgba(124,58,237,.22),

    transparent 60%);

    opacity:0;

    transition:.45s;

}

.service-card:hover{

    transform:translateY(-12px);

    border-color:rgba(124,58,237,.45);

    box-shadow:

    0 40px 90px rgba(0,0,0,.35);

}

.service-card:hover::before{

    opacity:1;

}

.service-number{

    font-size:14px;

    color:#7C3AED;

    font-weight:700;

    margin-bottom:26px;

}

/* ICONO */

.service-icon{

    width:72px;
    height:72px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:20px;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.06);

}

.service-icon svg,
.service-icon img{

    width:38px;
    height:38px;

    color:#FFFFFF;

    stroke:#FFFFFF;

}

.service-card:hover .service-icon img{

    transform:scale(1.12);

}

.service-card h3{

    margin-bottom:20px;

}

.service-card p{

    margin-bottom:30px;

    min-height:110px;

}

.service-card ul{

    display:flex;

    flex-direction:column;

    gap:14px;

    margin-bottom:36px;

}

.service-card li{

    color:#C2CBD8;

}

.service-card a{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:white;

    font-weight:600;

    transition:.35s;

    position:relative;

    z-index:10;

}

.service-card a:hover{

    transform:translateX(8px);

}

.featured{

    transform:scale(1.03);

    border-color:#7C3AED;

}

.featured:hover{

    transform:scale(1.03) translateY(-12px);

}

/* RESPONSIVE */

/*==========================================================
TABLET
==========================================================*/

@media (max-width:1200px){

    .services-grid{

        grid-template-columns:repeat(2,1fr);

        gap:28px;

    }

    .featured{

        transform:none;

    }

    .featured:hover{

        transform:translateY(-10px);

    }

}

/*==========================================================
TABLET PEQUEÑA
==========================================================*/

@media (max-width:992px){

    .services{

        padding:110px 0;

    }

    .section-title{

        margin-bottom:60px;

    }

    .section-title h2{

        font-size:clamp(2.2rem,5vw,3.2rem);

    }

    .section-title p{

        font-size:18px;

    }

    .services-grid{

        grid-template-columns:1fr;

        gap:24px;

    }

}

/*==========================================================
MÓVIL
==========================================================*/

@media (max-width:576px){

    .services{

        padding:80px 0;

    }

    .section-title{

        margin-bottom:45px;

    }

    .section-title span{

        font-size:12px;

        padding:8px 16px;

    }

    .section-title h2{

        font-size:2rem;

        line-height:1.15;

    }

    .section-title p{

        font-size:16px;

    }

    .service-card{

        padding:28px;

        border-radius:24px;

    }

    .service-number{

        margin-bottom:18px;

    }

    .service-icon{

        width:60px;

        height:60px;

        border-radius:16px;

    }

    .service-icon svg,

    .service-icon img{

        width:30px;

        height:30px;

    }

    .service-card h3{

        font-size:24px;

        margin-bottom:16px;

    }

    .service-card p{

        min-height:auto;

        margin-bottom:22px;

        font-size:16px;

        line-height:1.7;

    }

    .service-card ul{

        gap:10px;

        margin-bottom:24px;

    }

    .service-card li{

        font-size:15px;

    }

}