/*
==================================================
ABOUT PAGE
==================================================
*/

.about-section,
.about-values,
.about-process,
.cta-section{
    padding:120px 0;
}

.about-section,
.about-process{
    background:#f8fafc;
}

.about-values{
    background:#ffffff;
}


/* ==========================================
MISSION
========================================== */

.about-section .section-heading{
    max-width:900px;
    margin:0 auto;
    text-align:center;
}

.about-section h2{
    margin:20px 0 30px;
}

.about-section p{
    font-size:1.15rem;
    line-height:1.9;
    color:#667085;
}



/* ==========================================
VALUES
========================================== */

.values-grid{

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:35px;

}

.value-card{

    position:relative;

    background:#fff;

    border-radius:28px;

    padding:55px;

    overflow:hidden;

    transition:.35s;

    box-shadow:
        0 20px 60px rgba(15,23,42,.08);

}

.value-card:before{

    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:6px;

    background:#d62c1a;

}

.value-card:hover{

    transform:translateY(-10px);

    box-shadow:
        0 35px 90px rgba(15,23,42,.15);

}

.value-icon{

    font-size:2.2rem;

    margin-bottom:24px;

}

.value-card h3{

    font-size:2rem;

    margin-bottom:18px;

}

.value-card p{

    color:#667085;

    line-height:1.8;

    font-size:1.05rem;

}



/* ==========================================
PROCESS
========================================== */

.process-grid{

    position:relative;

    max-width:850px;

    margin:70px auto 0;

    display:flex;

    flex-direction:column;

    gap:35px;

}

.process-grid:before{

    content:"";

    position:absolute;

    left:42px;

    top:15px;

    bottom:15px;

    width:3px;

    background:#d62c1a;

    opacity:.25;

}

.process-item{

    position:relative;

    background:#fff;

    border-radius:28px;

    padding:42px 42px 42px 120px;

    box-shadow:
        0 20px 60px rgba(15,23,42,.08);

    transition:.35s;

}

.process-item:hover{

    transform:translateY(-8px);

    box-shadow:
        0 35px 90px rgba(15,23,42,.15);

}

.process-item:before{

    content:"";

    position:absolute;

    left:28px;

    top:50%;

    transform:translateY(-50%);

    width:28px;
    height:28px;

    border-radius:50%;

    background:#d62c1a;

    box-shadow:0 0 0 8px #fff;

}

.process-item span{

    display:inline-block;

    font-size:3rem;

    font-weight:800;

    color:#d62c1a;

    margin-bottom:12px;

    line-height:1;

}

.process-item h3{

    font-size:1.6rem;

    margin-bottom:12px;

}

.process-item p{

    color:#667085;

    line-height:1.8;

}



/* ==========================================
CTA
========================================== */

.cta-section{

    background:#ffffff;

}

.cta-box{

    position:relative;

    max-width:900px;

    margin:auto;

    background:#fff;

    border-radius:30px;

    padding:80px 60px;

    overflow:hidden;

    text-align:center;

    box-shadow:
        0 25px 80px rgba(15,23,42,.08);

}

.cta-box:before{

    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:6px;

    background:#d62c1a;

}

.cta-box h2{

    margin-bottom:25px;

}

.cta-box p{

    max-width:650px;

    margin:0 auto 40px;

    color:#667085;

    line-height:1.9;

    font-size:1.1rem;

}



/* ==========================================
ANIMATIONS
========================================== */

.value-card,
.process-item,
.cta-box{

    animation:fadeUp .7s ease both;

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(25px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}



/* ==========================================
TABLET
========================================== */

@media (max-width:992px){

.values-grid{

    grid-template-columns:1fr;

}

.about-section,
.about-values,
.about-process,
.cta-section{

    padding:100px 0;

}

.cta-box{

    padding:60px 40px;

}

}



/* ==========================================
MOBILE
========================================== */

@media (max-width:768px){

.about-section,
.about-values,
.about-process,
.cta-section{

    padding:90px 0;

}

.value-card{

    padding:40px;

}

.value-card h3{

    font-size:1.6rem;

}

.process-grid{

    margin-top:55px;

}

.process-grid:before{

    left:28px;

}

.process-item{

    padding:35px 30px 35px 85px;

}

.process-item:before{

    left:15px;

    width:24px;
    height:24px;

}

.process-item span{

    font-size:2.2rem;

}

.cta-box{

    padding:50px 30px;

    border-radius:24px;

}

}