/*==================================================
WHERE WE ENGINEER INTELLIGENCE
==================================================*/

.capabilities{

    position:relative;

    padding:180px 0;

    background:#fafaf8;

    overflow:hidden;

}

.capabilities::before{

    content:"";

    position:absolute;

    inset:0;

    background:
    linear-gradient(rgba(0,0,0,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,0,0,.018) 1px,transparent 1px);

    background-size:48px 48px;

    opacity:.45;

    pointer-events:none;

}

.capabilities-container{

    width:min(1500px,92%);

    margin:auto;

    position:relative;

    z-index:2;

}

/*==================================================
HEADER
==================================================*/

.capabilities-header{

    max-width:820px;

    margin-bottom:80px;

}

.capabilities-header h2{

    margin-top:28px;

    font-size:68px;

    line-height:.95;

    letter-spacing:-3px;

    font-weight:800;

    color:#111;

}

.capabilities-header p{

    margin-top:28px;

    font-size:20px;

    line-height:1.9;

    color:#666;

    max-width:720px;

}

/*==================================================
SLIDER
==================================================*/

.capabilities-slider{

    overflow:hidden;

}

.capabilities-track{

    display:flex;

    gap:32px;

    transition:.7s cubic-bezier(.22,1,.36,1);

    will-change:transform;

}

/*==================================================
CARD
==================================================*/

.capability-card{

    position:relative;

    flex:0 0 calc((100% - 64px)/3);

    display:flex;

    flex-direction:column;

    padding:42px;

    min-height:760px;

    background:rgba(255,255,255,.88);

    backdrop-filter:blur(20px);

    border:1px solid #E9E9E9;

    border-radius:28px;

    overflow:hidden;

    transition:
    transform .45s,
    box-shadow .45s,
    border-color .45s;

}

.capability-card::before{

    content:"";

    position:absolute;

    inset:10px;

    border:1px solid rgba(0,0,0,.05);

    border-radius:20px;

    pointer-events:none;

}

.capability-card::after{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:0;

    height:3px;

    background:linear-gradient(
        90deg,
        var(--orange),
        var(--blue)
    );

    transition:.6s;

}

.capability-card:hover{

    transform:translateY(-8px);

    border-color:rgba(255,139,77,.22);

    box-shadow:

    0 30px 80px rgba(20,20,20,.08);

}

.capability-card:hover::after{

    width:100%;

}

/*==================================================
BACKGROUND NUMBER
==================================================*/

.capability-id{

    position:absolute;

    right:28px;

    top:20px;

    font-size:120px;

    font-weight:800;

    line-height:1;

    color:#F3F3F3;

    z-index:0;

    pointer-events:none;

}

.capability-card>*{

    position:relative;

    z-index:2;

}

/*==================================================
TITLE
==================================================*/

.capability-card h3{

    font-size:36px;

    line-height:1.1;

    color:#111;

    margin-bottom:22px;

    transition:.35s;

}

.capability-card:hover h3{

    transform:translateX(6px);

}

.capability-description{

    font-size:17px;

    line-height:1.9;

    color:#666;

}

/*==================================================
BLOCKS
==================================================*/

.card-block{

    margin-top:34px;

    padding-top:28px;

    border-top:1px solid #EFEFEF;

}

.card-block h6{

    margin-bottom:18px;

    font-size:11px;

    letter-spacing:.28em;

    color:#9A9A9A;

    text-transform:uppercase;

}

/*==================================================
LISTS
==================================================*/

.card-block ul{

    margin:0;

    padding:0;

    list-style:none;

}

.card-block li{

    position:relative;

    padding-left:22px;

    margin-bottom:14px;

    font-size:16px;

    color:#444;

    transition:.25s;

}

.card-block li::before{

    content:"";

    position:absolute;

    left:0;

    top:10px;

    width:6px;

    height:6px;

    border-radius:50%;

    background:var(--blue);

}

.capability-card:hover li{

    padding-left:28px;

}

/*==================================================
TAGS
==================================================*/

.tag-list{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

}

.tag-list span{

    padding:10px 16px;

    border-radius:999px;

    background:#F7F7F7;

    border:1px solid #ECECEC;

    font-size:13px;

    color:#555;

    transition:.3s;

}

.capability-card:hover .tag-list span{

    background:#fff;

    border-color:#DCDCDC;

}

/*==================================================
BUSINESS IMPACT
==================================================*/

.impact-list li{

    color:#555;

}

.impact-list li::before{

    content:"✓";

    background:none;

    color:var(--orange);

    font-weight:700;

    font-size:15px;

    top:0;

}

/*==================================================
LINK
==================================================*/

.capability-card a{

    margin-top:auto;

    display:inline-flex;

    align-items:center;

    gap:10px;

    text-decoration:none;

    color:#111;

    font-size:15px;

    font-weight:600;

    transition:.35s;

}

.capability-card a span{

    transition:.35s;

}

.capability-card:hover a{

    color:var(--orange);

}

.capability-card:hover a span{

    transform:translateX(6px);

}

/*==================================================
FOOTER
==================================================*/

.capabilities-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-top:60px;

}

.capability-counter{

    display:flex;

    align-items:center;

    gap:18px;

    font-size:15px;

    font-weight:600;

}

.capability-controls{

    display:flex;

    gap:14px;

}

.capability-controls button{

    width:56px;

    height:56px;

    border-radius:50%;

    background:white;

    border:1px solid #E8E8E8;

    cursor:pointer;

    transition:.35s;

    font-size:18px;

}

.capability-controls button:hover{

    background:#111;

    color:white;

    transform:translateY(-3px);

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:1200px){

    .capability-card{

        flex:0 0 calc((100% - 32px)/2);

    }

    .capabilities-header h2{

        font-size:54px;

        letter-spacing:-2px;

    }

}

@media(max-width:768px){

    .capabilities{

        padding:90px 0;

    }

    .capabilities-header{

        margin-bottom:45px;

    }

    .capabilities-header h2{

        font-size:38px;

        line-height:1.1;

        letter-spacing:-1px;

    }

    .capabilities-header p{

        font-size:16px;

    }

    .capability-card{

        flex:0 0 100%;

        min-height:auto;

        padding:30px;

    }

    .capability-card h3{

        font-size:30px;

    }

    .capability-id{

        font-size:72px;

    }

    .tag-list{

        gap:8px;

    }

    .tag-list span{

        font-size:12px;

        padding:8px 14px;

    }

}