/*==================================================
SERVICES HERO
==================================================*/

body{
    padding-top:104px;
}

.services-hero{
    position:relative;
    min-height:680px;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:
        linear-gradient(
            90deg,
            rgba(14,24,43,.95) 0%,
            rgba(18,30,52,.86) 48%,
            rgba(18,30,52,.48) 100%
        ),
        url("../images/1.jpg") center center / cover no-repeat;
}

.services-hero-content{
    position:relative;
    z-index:2;
    max-width:860px;
    padding:110px 0 90px;
}

.services-hero-label{
    display:inline-block;
    margin-bottom:22px;
    color:#b9dc55;
    font-size:12px;
    line-height:18px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
}

.services-hero h1{
    max-width:850px;
    margin:0 0 26px;
    color:#ffffff;
    font-size:66px;
    line-height:1.06;
    letter-spacing:-2px;
}

.services-hero p{
    max-width:700px;
    margin:0;
    color:rgba(255,255,255,.82);
    font-size:17px;
    line-height:30px;
}

.services-hero-buttons{
    display:flex;
    gap:16px;
    margin-top:34px;
}

.services-primary-btn,
.services-secondary-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 27px;
    border-radius:28px;
    font-size:11px;
    line-height:17px;
    font-weight:800;
    letter-spacing:.8px;
    text-transform:uppercase;
    text-decoration:none;
    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease,
        border-color .3s ease;
}

.services-primary-btn{
    background:#95c11f;
    color:#ffffff;
}

.services-primary-btn:hover{
    color:#ffffff;
    background:#7ea617;
    transform:translateY(-3px);
}

.services-secondary-btn{
    border:1px solid rgba(255,255,255,.42);
    background:rgba(255,255,255,.08);
    color:#ffffff;
}

.services-secondary-btn:hover{
    background:#ffffff;
    border-color:#ffffff;
    color:#172033;
    transform:translateY(-3px);
}

.services-breadcrumb{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:40px;
    font-size:13px;
}

.services-breadcrumb a{
    color:#b9dc55;
    text-decoration:none;
}

.services-breadcrumb span{
    color:rgba(255,255,255,.35);
}

.services-breadcrumb strong{
    color:#ffffff;
}

@media only screen and (max-width:750px){

    body{
        padding-top:86px;
    }

    .services-hero{
        min-height:auto;
        background-position:62% center;
    }

    .services-hero-content{
        padding:95px 22px 75px;
    }

    .services-hero h1{
        font-size:42px;
        line-height:1.1;
        letter-spacing:-1px;
    }

    .services-hero p{
        font-size:15px;
        line-height:27px;
    }

    .services-hero-buttons{
        flex-direction:column;
        align-items:flex-start;
    }
}

/*==================================================
ENGINEERING SECTION
==================================================*/

.engineering-section{

    padding:110px 0;

    background:#fff;

}

.engineering-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.engineering-image img{

    width:100%;

    display:block;

    border-radius:22px;

    box-shadow:0 25px 60px rgba(0,0,0,.12);

}

.engineering-content h2{

    margin:18px 0 25px;

    color:#172033;

    font-size:48px;

    line-height:1.18;

}

.engineering-content p{

    margin-bottom:20px;

    color:#666;

    line-height:31px;

    font-size:17px;

}

.engineering-list{

    margin-top:35px;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:18px;

}

.engineering-list div{

    display:flex;

    align-items:center;

    gap:12px;

    font-weight:600;

}

.engineering-list i{

    color:#95C11F;

}

@media(max-width:991px){

.engineering-grid{

grid-template-columns:1fr;

}

.engineering-content h2{

font-size:36px;

}

.engineering-list{

grid-template-columns:1fr;

}

}

/*==================================================
WHY CHOOSE TRADESTONE
==================================================*/

.why-tradestone{

    position:relative;
    padding:125px 0 115px;
    overflow:hidden;
    background:#f6f8fb;
}

.why-heading{

     max-width:820px;
    margin:0 auto 55px;
    padding:0 20px;
    text-align:center;

}

.why-heading .section-tag{
    display:inline-block;
    margin-bottom:18px;
    color:#95c11f;
    font-size:12px;
    line-height:18px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
}

.why-heading h2{

    max-width:780px;
    margin:0 auto 20px;
    color:#172033;
    font-size:48px;
    line-height:1.12;
    letter-spacing:-1px;
}

.why-heading p{

    max-width:760px;
    margin:0 auto;
    color:#687080;
    font-size:16px;
    line-height:29px;
}

.why-grid{

    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:26px;

}

.why-card{

    min-height:345px;
    padding:38px 28px 34px;
    border:1px solid rgba(23,32,51,.06);
    border-radius:22px;
    background:#ffffff;
    text-align:center;
    box-shadow:0 18px 45px rgba(23,32,51,.08);
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;


}

.why-card:hover{

    transform:translateY(-9px);
    border-color:rgba(149,193,31,.50);
    box-shadow:0 28px 60px rgba(23,32,51,.14);
}

.why-icon{

    width:72px;
    height:72px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 26px;
    border-radius:19px;
    background:linear-gradient(135deg,#453e8e,#6961c4);
    color:#ffffff;
    font-size:27px;
    box-shadow:0 13px 28px rgba(69,62,142,.20);
}

.why-card h3{

    min-height:58px;
    margin:0 0 16px;
    color:#172033;
    font-size:25px;
    line-height:1.2;
}

.why-card p{

    margin:0;
    color:#687080;
    font-size:14px;
    line-height:26px;

}

@media(max-width:1100px){

.why-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:650px){

.why-grid{

grid-template-columns:1fr;

}

}

/*==================================================
CORE SERVICES
==================================================*/

.core-services{
    position:relative;
    padding:115px 0;
    overflow:hidden;
    background:#ffffff;
}

.core-services::before{
    content:"";
    position:absolute;
    width:400px;
    height:400px;
    left:-220px;
    top:-190px;
    border-radius:50%;
    background:rgba(149,193,31,.08);
}

.core-services-heading{
    position:relative;
    z-index:2;
    max-width:850px;
    margin:0 auto 60px;
    text-align:center;
}

.core-services-heading h2{
    margin:14px 0 20px;
    color:#172033;
    font-size:48px;
    line-height:1.14;
    letter-spacing:-1px;
}

.core-services-heading h2 span{
    display:block;
    color:#95c11f;
}

.core-services-heading p{
    max-width:720px;
    margin:0 auto;
    color:#687080;
    font-size:16px;
    line-height:29px;
}

.core-services-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:24px;
}

.core-service-card{
    position:relative;
    min-height:340px;
    padding:32px 30px;
    overflow:hidden;
    border:1px solid #e7ebf1;
    border-radius:22px;
    background:#f8f9fc;
    color:inherit;
    text-decoration:none;
    box-shadow:0 15px 38px rgba(23,32,51,.06);
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease,
        background .35s ease;
}

.core-service-card::after{
    content:"";
    position:absolute;
    width:120px;
    height:120px;
    right:-60px;
    bottom:-60px;
    border-radius:50%;
    background:rgba(149,193,31,.14);
    transition:transform .35s ease;
}

.core-service-card:hover{
    transform:translateY(-9px);
    border-color:rgba(149,193,31,.55);
    background:#ffffff;
    box-shadow:0 28px 60px rgba(23,32,51,.13);
}

.core-service-card:hover::after{
    transform:scale(1.4);
}

.core-service-number{
    position:absolute;
    top:26px;
    right:28px;
    color:rgba(23,32,51,.12);
    font-size:35px;
    line-height:1;
    font-weight:800;
}

.core-service-icon{
    width:60px;
    height:60px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:27px;
    border-radius:18px;
    background:linear-gradient(135deg,#453e8e,#6961c4);
    color:#ffffff;
    font-size:23px;
    box-shadow:0 13px 28px rgba(69,62,142,.21);
}

.core-service-card h3{
    margin:0 0 15px;
    color:#172033;
    font-size:23px;
    line-height:1.27;
}

.core-service-card p{
    margin:0 0 28px;
    color:#687080;
    font-size:14px;
    line-height:25px;
    text-align:left;
}

.core-service-link{
    position:absolute;
    left:30px;
    bottom:29px;
    z-index:2;
    color:#453e8e;
    font-size:11px;
    line-height:16px;
    font-weight:800;
    letter-spacing:.5px;
    text-transform:uppercase;
}

.core-service-featured{
    background:linear-gradient(145deg,#453e8e,#172033);
}

.core-service-featured .core-service-number{
    color:rgba(255,255,255,.12);
}

.core-service-featured .core-service-icon{
    background:#95c11f;
}

.core-service-featured h3{
    color:#ffffff;
}

.core-service-featured p{
    color:rgba(255,255,255,.72);
}

.core-service-featured .core-service-link{
    color:#d9ef86;
}

@media only screen and (max-width:1100px){

    .core-services-grid{
        grid-template-columns:repeat(2, minmax(0,1fr));
    }
}

@media only screen and (max-width:650px){

    .core-services{
        padding:80px 20px;
    }

    .core-services-heading h2{
        font-size:36px;
    }

    .core-services-grid{
        grid-template-columns:1fr;
    }

    .core-service-card{
        min-height:315px;
    }
}

/*==================================================
PREMIUM PROJECT PROCESS TIMELINE
==================================================*/

.process-section{
    position:relative;
    padding:120px 0 125px;
    overflow:hidden;
    background:
        radial-gradient(
            circle at 12% 18%,
            rgba(149,193,31,.10),
            transparent 28%
        ),
        #121b30;
}

.process-section::after{
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    right:-210px;
    bottom:-240px;
    border-radius:50%;
    background:rgba(98,89,184,.16);
}

.process-heading{
    position:relative;
    z-index:2;
    max-width:820px;
    margin:0 auto 75px;
    text-align:center;
}

.process-heading .section-tag{
    color:#b9dc55;
}

.process-heading h2{
    margin:14px 0 20px;
    color:#ffffff;
    font-size:50px;
    line-height:1.12;
    letter-spacing:-1px;
}

.process-heading p{
    max-width:720px;
    margin:0 auto;
    color:rgba(255,255,255,.66);
    font-size:16px;
    line-height:29px;
}

.process-timeline{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(6, minmax(0,1fr));
    gap:22px;
    padding-top:16px;
}

.process-timeline::before{
    content:"";
    position:absolute;
    top:56px;
    left:7%;
    right:7%;
    height:3px;
    border-radius:3px;
    background:
        linear-gradient(
            90deg,
            #95c11f 0%,
            #95c11f 25%,
            #6259b8 55%,
            #95c11f 100%
        );
}

.process-item{
    position:relative;
    z-index:2;
    min-height:255px;
    padding:0 12px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    text-align:center;
    transition:transform .35s ease;
}

.process-item:hover{
    transform:translateY(-8px);
}

.process-item span{
    position:relative;
    width:82px;
    height:82px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 28px;
    border:7px solid #121b30;
    border-radius:50%;
    background:linear-gradient(135deg,#453e8e,#7168cf);
    color:#ffffff;
    font-size:18px;
    line-height:1;
    font-weight:800;
    box-shadow:0 0 0 2px rgba(149,193,31,.55);
    transition:
        transform .35s ease,
        background .35s ease,
        box-shadow .35s ease;
}

.process-item span::after{
    content:"";
    position:absolute;
    inset:-11px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:50%;
}

.process-item:hover span{
    transform:scale(1.06);
    background:linear-gradient(135deg,#95c11f,#7ca617);
    box-shadow:0 0 0 6px rgba(149,193,31,.13);
}

.process-item h3{
    min-height:30px;
    margin:0 0 13px;
    color:#ffffff;
    font-size:21px;
    line-height:1.25;
}

.process-item p{
    max-width:190px;
    margin:0 auto;
    color:rgba(255,255,255,.58);
    font-size:13px;
    line-height:23px;
    text-align:center;
}

/* Tablet */

@media only screen and (max-width:1100px){

    .process-timeline{
        grid-template-columns:repeat(3, minmax(0,1fr));
        gap:48px 24px;
    }

    .process-timeline::before{
        display:none;
    }

    .process-item{
        min-height:230px;
    }
}

/* Mobile */

@media only screen and (max-width:650px){

    .process-section{
        padding:80px 20px;
    }

    .process-heading{
        margin-bottom:50px;
    }

    .process-heading h2{
        font-size:36px;
    }

    .process-timeline{
        grid-template-columns:1fr;
        gap:30px;
    }

    .process-item{
        display:grid;
        grid-template-columns:82px 1fr;
        column-gap:20px;
        align-items:center;
        min-height:0;
        padding:0;
        text-align:left;
    }

    .process-item span{
        grid-row:1 / span 2;
        margin:0;
    }

    .process-item h3{
        min-height:0;
        margin-bottom:8px;
        text-align:left;
    }

    .process-item p{
        max-width:none;
        margin:0;
        text-align:left;
    }
}

/*==================================================
SERVICES CTA
==================================================*/

.services-cta{
    position:relative;
    padding:120px 0;
    overflow:hidden;
    background:
        url("../images/1.jpg") center center / cover no-repeat;
}

.services-cta-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(15,25,45,.96) 0%,
            rgba(29,37,66,.90) 58%,
            rgba(69,62,142,.72) 100%
        );
}

.services-cta-content{
    position:relative;
    z-index:2;
    max-width:850px;
    margin:0 auto;
    text-align:center;
}

.services-cta .section-tag{
    color:#b9dc55;
}

.services-cta h2{
    margin:15px 0 24px;
    color:#ffffff;
    font-size:52px;
    line-height:1.12;
    letter-spacing:-1px;
}

.services-cta p{
    max-width:720px;
    margin:0 auto;
    color:rgba(255,255,255,.75);
    font-size:16px;
    line-height:30px;
}

.services-cta-buttons{
    display:flex;
    justify-content:center;
    gap:16px;
    margin-top:36px;
}

.services-cta-primary,
.services-cta-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:54px;
    padding:0 28px;
    border-radius:28px;
    font-size:11px;
    line-height:17px;
    font-weight:800;
    letter-spacing:.8px;
    text-transform:uppercase;
    text-decoration:none;
    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease,
        border-color .3s ease;
}

.services-cta-primary{
    background:#95c11f;
    color:#ffffff;
}

.services-cta-primary:hover{
    background:#7fa817;
    color:#ffffff;
    transform:translateY(-3px);
}

.services-cta-secondary{
    border:1px solid rgba(255,255,255,.40);
    background:rgba(255,255,255,.08);
    color:#ffffff;
}

.services-cta-secondary:hover{
    border-color:#ffffff;
    background:#ffffff;
    color:#172033;
    transform:translateY(-3px);
}

@media only screen and (max-width:650px){

    .services-cta{
        padding:85px 20px;
    }

    .services-cta h2{
        font-size:38px;
    }

    .services-cta-buttons{
        flex-direction:column;
        align-items:center;
    }

    .services-cta-primary,
    .services-cta-secondary{
        width:100%;
        max-width:290px;
    }
}