body{

font-family:'Poppins',sans-serif;

background:var(--background);

color:white;

overflow-x:hidden;

}

.header{

position:fixed;

width:100%;

top:0;

left:0;

z-index:999;

transition:.4s;

}

.navbar{

padding:22px 0;

transition:.4s;

}

.navbar.scrolled{

background:rgba(15,15,15,.8);

backdrop-filter:blur(18px);

border-bottom:1px solid var(--border);

}

.navbar-brand img{

height:55px;

transition:.3s;

}

.navbar-brand:hover img{

transform:scale(1.05);

}

.navbar-nav{

gap:35px;

}

.navbar-nav a{

text-decoration:none;

color:white;

font-weight:500;

position:relative;

}

.navbar-nav a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--primary);

transition:.4s;

}

.navbar-nav a:hover::after{

width:100%;

}



/*  BUTTONS  */

.btn-primary-custom{

background:var(--primary);

padding:15px 32px;

border-radius:50px;

color:white;

font-weight:600;

text-decoration:none;

transition:.35s;

}

.btn-primary-custom:hover{

background:var(--primary-dark);

transform:translateY(-4px);

box-shadow:var(--shadow);

color:white;

}

.btn-outline-custom{

border:2px solid var(--primary);

padding:15px 32px;

border-radius:50px;

text-decoration:none;

color:white;

transition:.35s;

}

.btn-outline-custom:hover{

background:var(--primary);

color:white;

}


/* ================= HERO ================= */

#hero{

    position:relative;

    width:100%;

    height:100vh;

    overflow:hidden;

    padding-top: 140px;

    display:flex;

    align-items:center;

}

/* Background Image */

.hero-slides{

    position:absolute;

    inset:0;

    z-index:1;

}

.hero-slides img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:opacity .8s ease;

    animation:zoomHero 8s linear infinite;

}

/* Overlay */

.hero-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(

        90deg,

        rgba(0,0,0,.85),

        rgba(0,0,0,.65),

        rgba(0,0,0,.45)

    );

    z-index:2;

}

/* Content */

#hero .container{

    position:relative;

    z-index:3;

}

.hero-content{

    max-width:650px;

}

.hero-tag{

    display:inline-block;

    color:#18B956;

    letter-spacing:3px;

    margin-bottom:20px;

    font-weight:600;

}

.hero-content h1{

    font-size:clamp(3rem,6vw,5.5rem);

    color:#fff;

    font-weight:800;

    line-height:1.05;

    margin-bottom:25px;

}

.hero-content p{

    color:#ddd;

    font-size:1.2rem;

    line-height:1.9;

    margin-bottom:35px;

}

.hero-buttons{

    display:flex;

    gap:20px;

    margin-bottom:40px;

}

.hero-tech{

    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:30px;

}

.hero-tech span{

    padding:8px 18px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.15);
    border-radius:30px;
    color:#fff;
    font-size:.85rem;
    font-weight:500;
    backdrop-filter:blur(8px);
    transition:all .3s ease;

}

.hero-tech span:hover{

    background:#18B956;
    border-color:#18B956;
    transform:translateY(-2px);

}

.hero-progress{

    margin-top:35px;

    width:220px;

    height:4px;

    background:rgba(255,255,255,.15);

    border-radius:20px;

    overflow:hidden;

}

.progress-bar{

    width:0;

    height:100%;

    background:#18B956;

}

/* Slow Zoom */

@keyframes zoomHero{

    from{

        transform:scale(1);

    }

    to{

        transform:scale(1.08);

    }

}

.floating-card{

position:absolute;

background:rgba(255,255,255,.06);

backdrop-filter:blur(16px);

padding:18px 24px;

border-radius:18px;

border:1px solid rgba(255,255,255,.08);

box-shadow:var(--shadow);

}

.one{

top:20%;

left:-20px;

}

.two{

top:60%;

right:-10px;

}

.three{

bottom:20px;

left:30px;

}

.four{

top:10%;

right:50px;

}



@keyframes float{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(-20px);

}
}

/*=================================
SERVICES PAGE
==================================*/

.services-wrapper{

    position:relative;

    min-height:100vh;

    padding-top:140px;

    padding-bottom:100px;

}

.services-heading{

    text-align:center;

    max-width:900px;

    margin:0 auto 80px;

}

.services-heading span{

    color:#18B956;

    letter-spacing:4px;

    font-weight:600;

}

.services-heading h1{

    color:#fff;

    font-size:3.3rem;

    font-weight:800;

    margin:20px 0;

}

.services-heading p{

    color:#d0d0d0;

    font-size:1.1rem;

}

.services-scroll{

    display:flex;

    flex-direction:column;

    gap:80px;

}

.service-card{

    width:min(1100px,90%);

    margin:auto;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(25px);

    border:1px solid rgba(255,255,255,.12);

    border-radius:35px;

    padding:70px;

    transition:.6s;

}

.service-card:hover{

    transform:translateY(-10px);

    background:rgba(255,255,255,.12);

}

.service-label{

    display:inline-block;

    width:55px;

    height:55px;

    background:#18B956;

    border-radius:50%;

    text-align:center;

    line-height:55px;

    font-weight:700;

    margin-bottom:30px;

}

.service-card h2{

    font-size:3rem;

    color:#fff;

    margin-bottom:20px;

}

.service-card p{

    color:#ddd;

    font-size:1.1rem;

    line-height:2;

    max-width:700px;

}

.service-card ul{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:15px;

    margin:35px 0;

    list-style:none;

    padding:0;

}

.service-card li{

    color:white;

    background:rgba(255,255,255,.06);

    padding:14px 20px;

    border-radius:30px;

}

.service-card{

    opacity:0;

    transform:translateY(80px);

}

.service-card.active{

    opacity:1;

    transform:translateY(0);

}


/* Service Page Background */

.service-body{

    background:
        linear-gradient(
            rgba(0,0,0,.55),
            rgba(0,0,0,.70)
        ),
        url("../img/service-bg.png");

       background-size:110%;

    background-repeat:no-repeat;

    animation:panBackground 30s ease-in-out infinite alternate;

    

}



.service-body::after{

    content:"";

    position:fixed;

    width:700px;
    height:700px;

    background:#18B956;

    filter:blur(220px);

    opacity:.10;

    top:-150px;
    left:-150px;

    z-index:-1;

    }

@keyframes glowMove{

    from{

        transform:translate(0,0);

    }

    to{

        transform:translate(150px,100px);

    }

}




/*=========================
GLOBAL PAGE BACKGROUND
=========================*/

.page-background{

    position:fixed;

    top:0;
    left:0;

    width:100%;
    height:100%;

    z-index:0;

    overflow:hidden;

    opacity: 100%;

}

.page-background img{

    width:100%;
    height:100%;

    object-fit:cover;

    opacity: .25;

    filter:brightness(.7);

}

.page-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(

        rgba(0,0,0,.45),

        rgba(0,0,0,.65)

    );

}

main{

    position:relative;

    z-index:2;

}

.services-wrapper{

    position:relative;

    z-index:3;

}

.service-card{

    position:relative;

    z-index:7;

}


/* MATRIX PARTICLES */

.matrix-particles{

    position:fixed;

    inset:0;

    pointer-events:none;

    z-index:1;

}

.matrix-particles span{

    position:absolute;

    width:6px;
    height:6px;

    background:#18B956;

    border-radius:50%;

    opacity:.18;

    animation:floatParticle linear infinite;

}

.matrix-particles span:nth-child(1){

    left:8%;
    animation-duration:18s;

}

.matrix-particles span:nth-child(2){

    left:20%;
    animation-duration:24s;

}

.matrix-particles span:nth-child(3){

    left:34%;
    animation-duration:20s;

}

.matrix-particles span:nth-child(4){

    left:48%;
    animation-duration:27s;

}

.matrix-particles span:nth-child(5){

    left:63%;
    animation-duration:22s;

}

.matrix-particles span:nth-child(6){

    left:78%;
    animation-duration:26s;

}

.matrix-particles span:nth-child(7){

    left:88%;
    animation-duration:19s;

}

.matrix-particles span:nth-child(8){

    left:95%;
    animation-duration:30s;

}

@keyframes floatParticle{

    from{

        transform:translateY(110vh);

        opacity:0;

    }

    20%{

        opacity:.18;

    }

    80%{

        opacity:.18;

    }

    to{

        transform:translateY(-20vh);

        opacity:0;

    }

}



/* Footer */

/*==================================
            FOOTER
==================================*/

/*==============================
        COMPACT FOOTER
==============================*/

.footer{

    margin-top:0px;

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(20px);

    border-top:1px solid rgba(255,255,255,.08);

    padding:22px 0 12px;

}

.footer-content{

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:20px;

}

.footer-brand{

    display:flex;

    align-items:center;

    gap:18px;

}

.footer-logo{

    height:45px;

}

.footer-brand span{

    color:#d8d8d8;

    font-size:.9rem;

}

.footer-contact{

    display:flex;

    align-items:center;

    gap:28px;

    flex-wrap:wrap;

}

.footer-contact a,

.footer-contact span{

    color:#d8d8d8;

    text-decoration:none;

    font-size:.9rem;

    display:flex;

    align-items:center;

    gap:8px;

    transition:.3s;

}

.footer-contact a:hover{

    color:#18B956;

}

.footer-contact i{

    color:#18B956;

}

.footer-social{

    display:flex;

    gap:12px;

}

.footer-social a{

    width:42px;

    height:42px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    color:#fff;

    text-decoration:none;

    transition:.3s;

}

.footer-social a:hover{

    background:#18B956;

    transform:translateY(-3px);

}

.footer-bottom{

    margin-top:15px;

    padding-top:12px;

    border-top:1px solid rgba(255,255,255,.08);

    text-align:center;

    color:#9f9f9f;

    font-size:.82rem;

}

/*==================================================
                ABOUT PAGE
==================================================*/

.about-main{

    position:relative;
    z-index:2;

}

/*=========================
        PAGE HEADER
==========================*/

.about-header{

    padding:170px 0 90px;
    text-align:center;

}

.about-tag{

    display:inline-block;

    color:#18B956;

    font-weight:700;

    letter-spacing:4px;

    margin-bottom:20px;

}

.about-title{

    font-size:clamp(2.8rem,5vw,4.6rem);

    color:#fff;

    font-weight:800;

    line-height:1.1;

    margin-bottom:25px;

}

.about-subtitle{

    max-width:760px;

    margin:auto;

    color:#d6d6d6;

    font-size:1.1rem;

    line-height:1.9;

}

/*=========================
        SECTIONS
==========================*/

.about-section{

    padding:90px 0;

}

.about-section-tag{

    display:inline-block;

    color:#18B956;

    font-weight:700;

    letter-spacing:3px;

    margin-bottom:18px;

}

/*=========================
      GLASS CARD
==========================*/

.about-card{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.10);

    border-radius:32px;

    padding:60px;

    position:relative;

    overflow:hidden;

    transition:.4s;

}

.about-card:hover{

    transform:translateY(-8px);

    box-shadow:
        0 20px 60px rgba(24,185,86,.18);

}

/* Emerald glow */

.about-card::before{

    content:"";

    position:absolute;

    width:260px;
    height:260px;

    border-radius:50%;

    background:#18B956;

    filter:blur(120px);

    opacity:.10;

    top:-80px;
    right:-80px;

    pointer-events:none;

}

/*=========================
        IMAGES
==========================*/

.about-image{

    width:100%;

    border-radius:24px;

    transition:.5s;

    box-shadow:
        0 25px 60px rgba(0,0,0,.35);

}

.about-card:hover .about-image{

    transform:scale(1.04);

}

/*=========================
      TYPOGRAPHY
==========================*/

.about-card h2{

    color:#fff;

    font-size:2.5rem;

    font-weight:700;

    margin-bottom:25px;

}

.about-card p{

    color:#d6d6d6;

    line-height:1.9;

    font-size:1.02rem;

}

/*=========================
      FEATURE CHIPS
==========================*/

.about-features{

    display:flex;

    flex-wrap:wrap;

    gap:15px;

    margin-top:35px;

}

.about-features span{

    padding:12px 22px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.08);

    border-radius:30px;

    color:#fff;

    transition:.35s;

}

.about-features span:hover{

    background:#18B956;

    transform:translateY(-4px);

}

/*=========================
   MISSION/VISION CARDS
==========================*/

.about-glass-card{

    height:100%;

    text-align:center;

    padding:45px 35px;

    border-radius:28px;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.10);

    transition:.4s;

}

.about-glass-card:hover{

    transform:translateY(-10px);

    box-shadow:
        0 20px 60px rgba(24,185,86,.18);

}

.about-icon{

    width:85px;

    height:85px;

    margin:auto;

    margin-bottom:30px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:2rem;

    background:rgba(24,185,86,.18);

}

.about-glass-card h3{

    color:#fff;

    margin-bottom:20px;

}

.about-glass-card p{

    color:#d6d6d6;

    line-height:1.8;

}

/*=========================
      TECH STACK
==========================*/

.about-tech-stack{

    display:flex;

    flex-wrap:wrap;

    justify-content:center;

    gap:18px;

}

.about-tech-stack span{

    padding:12px 24px;

    border-radius:35px;

    color:#fff;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.10);

    transition:.35s;

}

.about-tech-stack span:hover{

    background:#18B956;

    transform:translateY(-5px);

}

/*=========================
      STATISTICS
==========================*/

.about-stat-card{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(16px);

    border-radius:24px;

    border:1px solid rgba(255,255,255,.08);

    padding:45px 20px;

    transition:.35s;

}

.about-stat-card:hover{

    transform:translateY(-8px);

    box-shadow:
        0 15px 50px rgba(24,185,86,.18);

}

.about-stat-card h2{

    color:#18B956;

    font-size:3rem;

    font-weight:800;

    margin-bottom:15px;

}

.about-stat-card p{

    color:#d6d6d6;

    margin:0;

}

/*=========================
      CTA
==========================*/

.about-cta{

    padding:110px 0;

}

.about-cta h2{

    color:#fff;

    font-size:3rem;

    font-weight:700;

    margin-bottom:20px;

}

.about-cta p{

    color:#d6d6d6;

    max-width:700px;

    margin:0 auto 35px;

    line-height:1.9;

}

/*=========================
    SCROLL ANIMATIONS
==========================*/

.about-card,
.about-glass-card,
.about-stat-card{

    opacity:1;

    transform:translateY(20px);

    transition:
        opacity .8s ease,
        transform .8s ease;

}

.about-visible{

    transform:translateY(0);

}

.about-body{

    background:
        linear-gradient(
            rgba(0,0,0,.55),
            rgba(0,0,0,.70)
        ),
        url("../img/service-bg.png");

       background-size:110%;

    background-repeat:no-repeat;

    animation:panBackground 30s ease-in-out infinite alternate;

}



/*=========================================
                CONTACT PAGE
=========================================*/

.contact-main{

    position:relative;
    z-index:2;

}

.contact-header{

    padding:170px 0 80px;

    text-align:center;

}

.contact-tag{

    color:#18B956;

    font-weight:700;

    letter-spacing:4px;

}

.contact-title{

    font-size:clamp(2.8rem,5vw,4.6rem);

    color:#fff;

    font-weight:800;

    margin:20px 0;

}

.contact-subtitle{

    max-width:760px;

    margin:auto;

    color:#d7d7d7;

    line-height:1.9;

}

.contact-section{

    padding-bottom:100px;

}

.contact-card{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.12);

    border-radius:30px;

    padding:45px;

    height:100%;

    transition:.35s;

}

.contact-card:hover{

    transform:translateY(-6px);

    box-shadow:0 20px 60px rgba(24,185,86,.15);

}

.contact-card h2{

    color:#fff;

    margin-bottom:25px;

}

.contact-card p{

    color:#d8d8d8;

    margin-bottom:40px;

    line-height:1.9;

}

.contact-item{

    display:flex;

    gap:20px;

    align-items:flex-start;

    margin-bottom:30px;

}

.contact-item i{

    font-size:1.4rem;

    color:#18B956;

}

.contact-item h6{

    color:#fff;

    margin-bottom:5px;

}

.contact-item span{

    color:#d0d0d0;

}

.contact-input{

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.12);

    color:#fff;

    padding:16px 20px;

    border-radius:15px;

}

.contact-input::placeholder{

    color:#bbb;

}

.contact-input:focus{

    background:rgba(255,255,255,.08);

    border-color:#18B956;

    color:#fff;

    box-shadow:none;

}

textarea.contact-input{

    resize:none;

}



/*=====================================
        TRUSTED BRANDS
=====================================*/

.brands-section{

    padding:90px 0;

    background:#ffffff;

    overflow:hidden;

}

.brands-header{

    text-align:center;

    margin-bottom:60px;

}

.brands-tag{

    color:#18B956;

    font-weight:700;

    letter-spacing:4px;

}

.brands-header h2{

    font-size:2.6rem;

    color:#111;

    font-weight:800;

    margin:18px 0;

}

.brands-header p{

    color:#666;

    max-width:650px;

    margin:auto;

    line-height:1.8;

}

/* Slider */

.brands-slider{

    position:relative;

    overflow:hidden;

    width:100%;

}

.brands-track{

    display:flex;

    align-items:center;

    gap:80px;

    width:max-content;

    animation:brandsScroll 35s linear infinite;

}

.brands-track img{

    height:55px;

    width:auto;

    opacity:.90;

    transition:.35s;

    filter:none;

}

.brands-track img:hover{

    opacity:20;

    transform:scale(1.12);

    filter:grayscale(90%);

}

/* Fade edges */

.brands-slider::before,
.brands-slider::after{

    content:"";

    position:absolute;

    top:0;

    width:180px;

    height:100%;

    z-index:2;

}

.brands-slider::before{

    left:0;

    background:linear-gradient(to right,#fff,transparent);

}

.brands-slider::after{

    right:0;

    background:linear-gradient(to left,#fff,transparent);

}

@keyframes brandsScroll{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-50%);

    }

}




/*=====================================
            TEAM SECTION
=====================================*/

.team-section{

    padding:120px 0;

    background:#fff;

}

.team-header{

    text-align:center;

    margin-bottom:70px;

}

.team-tag{

    color:#18B956;

    font-weight:700;

    letter-spacing:4px;

}

.team-header h2{

    font-size:2.8rem;

    color:#111;

    font-weight:800;

    margin:18px 0;

}

.team-header p{

    max-width:700px;

    margin:auto;

    color:#666;

    line-height:1.8;

}

.team-card{

    background:#fff;

    border-radius:30px;

    overflow:hidden;

    border:1px solid #ececec;

    box-shadow:0 20px 50px rgba(0,0,0,.06);

    transition:.4s;

    height:100%;

}

.team-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(24,185,86,.18);

}

.team-image{

    overflow:hidden;

}

.team-image img{

    width:100%;

    height:420px;

    object-fit:cover;

    transition:.5s;

}

.team-card:hover img{

    transform:scale(1.05);

}

.team-content{

    padding:35px;

}

.team-content h3{

    color:#111;

    margin-bottom:8px;

    font-weight:700;

}

.team-position{

    display:block;

    color:#18B956;

    margin-bottom:20px;

    font-weight:600;

}

.team-content p{

    color:#666;

    line-height:1.8;

    margin-bottom:25px;

}

.team-social{

    display:flex;

    gap:15px;

}

.team-social a{

    width:45px;

    height:45px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:#f4f4f4;

    color:#18B956;

    text-decoration:none;

    transition:.3s;

}

.team-social a:hover{

    background:#18B956;

    color:#fff;

    transform:translateY(-3px);

}


/* Portfolio Page  */



/*==================================================
                    PORTFOLIO PAGE
==================================================*/

.portfolio-main{

    position:relative;
    z-index:2;

}

/*==================================
            PAGE HEADER
==================================*/

.portfolio-header{

    padding:170px 0 90px;
    text-align:center;

}

.portfolio-tag{

    display:inline-block;

    color:#18B956;

    font-weight:700;

    letter-spacing:4px;

    margin-bottom:18px;

}

.portfolio-title{

    font-size:clamp(2.8rem,5vw,4.8rem);

    color:#fff;

    font-weight:800;

    line-height:1.1;

    margin-bottom:25px;

}

.portfolio-subtitle{

    max-width:760px;

    margin:auto;

    color:#d8d8d8;

    line-height:1.9;

    font-size:1.05rem;

}

/*==================================
            FILTERS
==================================*/

.portfolio-filter-section{

    padding-bottom:70px;

}

.portfolio-filter{

    display:flex;

    justify-content:center;

    align-items:center;

    flex-wrap:wrap;

    gap:18px;

}

.portfolio-filter-btn{

    background:rgba(255,255,255,.08);

    color:#fff;

    border:1px solid rgba(255,255,255,.12);

    border-radius:35px;

    padding:12px 28px;

    transition:.35s;

    cursor:pointer;

}

.portfolio-filter-btn:hover{

    background:#18B956;

    border-color:#18B956;

}

.portfolio-filter-btn.active{

    background:#18B956;

    border-color:#18B956;

}

/*==================================
        FEATURED PROJECT
==================================*/

.portfolio-featured{

    padding:80px 0;

}

.portfolio-featured .row{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.10);

    border-radius:30px;

    padding:40px;

    overflow:hidden;

}

.portfolio-featured-image{

    overflow:hidden;

    border-radius:22px;

}

.portfolio-featured-image img{

    width:100%;

    display:block;

    border-radius:22px;

    transition:.6s;

}

.portfolio-featured:hover img{

    transform:scale(1.05);

}

.portfolio-project-tag{

    display:inline-block;

    color:#18B956;

    font-weight:700;

    letter-spacing:3px;

    margin-bottom:20px;

}

.portfolio-featured h2{

    color:#fff;

    font-size:2.6rem;

    font-weight:700;

    margin-bottom:20px;

}

.portfolio-featured p{

    color:#d8d8d8;

    line-height:1.9;

    margin-bottom:35px;

}

/*==================================
        TECHNOLOGY CHIPS
==================================*/

.portfolio-tech{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    margin-bottom:35px;

}

.portfolio-tech span{

    padding:10px 18px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.10);

    border-radius:30px;

    color:#fff;

    transition:.35s;

}

.portfolio-tech span:hover{

    background:#18B956;

    transform:translateY(-3px);

}

/*==================================
            GRID
==================================*/

.portfolio-grid-section{

    padding:100px 0;

}

.portfolio-card{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(16px);

    border:1px solid rgba(255,255,255,.10);

    border-radius:26px;

    overflow:hidden;

    transition:.4s;

    height:100%;

}

.portfolio-card:hover{

    transform:translateY(-10px);

    border-color:#18B956;

    box-shadow:0 20px 55px rgba(24,185,86,.18);

}

.portfolio-card img{

    width:100%;

    height:240px;

    object-fit:cover;

    transition:.6s;

}

.portfolio-card:hover img{

    transform:scale(1.08);

}

.portfolio-card-content{

    padding:28px;

}

.portfolio-card-content span{

    display:inline-block;

    color:#18B956;

    font-size:.9rem;

    margin-bottom:15px;

    font-weight:600;

}

.portfolio-card-content h3{

    color:#fff;

    font-size:1.5rem;

    margin-bottom:15px;

}

.portfolio-card-content p{

    color:#d7d7d7;

    line-height:1.8;

    margin-bottom:22px;

}

.portfolio-card-content a{

    color:#18B956;

    text-decoration:none;

    font-weight:600;

}

.portfolio-card-content a:hover{

    letter-spacing:.5px;

}

/*==================================
            CTA
==================================*/

.portfolio-cta{

    padding:70px 0 120px;

}

.portfolio-cta-card{

    text-align:center;

    padding:70px;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border-radius:35px;

    border:1px solid rgba(255,255,255,.10);

}

.portfolio-cta-card h2{

    color:#fff;

    font-size:3rem;

    margin-bottom:20px;

}

.portfolio-cta-card p{

    color:#d8d8d8;

    max-width:700px;

    margin:0 auto 35px;

    line-height:1.9;

}

/*==================================
        REVEAL ANIMATION
==================================*/

.portfolio-card{

    opacity:0;

    transform:translateY(45px);

    transition:
        opacity .8s ease,
        transform .8s ease,
        box-shadow .4s ease;

}

.portfolio-card.portfolio-visible{

    opacity:1;

    transform:translateY(0);

}

/*==================================
            RESPONSIVE
==================================*/

@media(max-width:991px){

.portfolio-header{

    padding:150px 0 70px;

}

.portfolio-title{

    font-size:2.8rem;

}

.portfolio-featured .row{

    padding:25px;

}

.portfolio-featured h2{

    margin-top:30px;

    font-size:2rem;

}

.portfolio-cta-card{

    padding:45px 30px;

}

.portfolio-cta-card h2{

    font-size:2.2rem;

}

}

@media(max-width:768px){

.portfolio-filter{

    gap:10px;

}

.portfolio-filter-btn{

    padding:10px 18px;

    font-size:.9rem;

}

.portfolio-card img{

    height:210px;

}

}


/* News Blog   */


/*==================================================
                    BLOG SECTION
==================================================*/

.blog-section{

    padding:120px 0;

    background:#ffffff;

}

.blog-header{

    text-align:center;

    margin-bottom:70px;

}

.blog-tag{

    display:inline-block;

    color:#18B956;

    font-weight:700;

    letter-spacing:4px;

    margin-bottom:15px;

}

.blog-header h2{

    font-size:2.8rem;

    color:#111;

    font-weight:800;

    margin-bottom:20px;

}

.blog-header p{

    max-width:700px;

    margin:auto;

    color:#666;

    line-height:1.9;

}

.blog-card{

    background:#fff;

    border-radius:28px;

    overflow:hidden;

    border:1px solid #ededed;

    box-shadow:0 15px 45px rgba(0,0,0,.06);

    transition:.4s;

    height:100%;

}

.blog-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(24,185,86,.18);

}

.blog-image{

    position:relative;

    overflow:hidden;

}

.blog-image img{

    width:100%;

    height:240px;

    object-fit:cover;

    transition:.6s;

}

.blog-card:hover .blog-image img{

    transform:scale(1.08);

}

.blog-category{

    position:absolute;

    top:20px;

    left:20px;

    background:#18B956;

    color:#fff;

    padding:8px 16px;

    border-radius:30px;

    font-size:.85rem;

    font-weight:600;

}

.blog-content{

    padding:30px;

}

.blog-date{

    color:#18B956;

    font-size:.9rem;

    font-weight:600;

}

.blog-content h3{

    margin:18px 0;

    font-size:1.5rem;

    color:#111;

    line-height:1.4;

}

.blog-content p{

    color:#666;

    line-height:1.8;

    margin-bottom:25px;

}

.blog-content a{

    color:#18B956;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.blog-content a:hover{

    letter-spacing:.5px;

}



/*  Blog Page*/


/*==================================================
                    BLOG PAGE
==================================================*/

.blog-main{
    position:relative;
    z-index:2;
}

/*==================================
        PAGE HEADER
==================================*/

.blog-page-header{

    padding:170px 0 70px;
    text-align:center;

}

.blog-page-tag{

    display:inline-block;
    color:#18B956;
    font-weight:700;
    letter-spacing:4px;
    margin-bottom:18px;

}

.blog-page-title{

    font-size:clamp(2.8rem,5vw,4.8rem);
    color:#fff;
    font-weight:800;
    line-height:1.1;
    margin-bottom:25px;

}

.blog-page-subtitle{

    max-width:760px;
    margin:auto;
    color:#d7d7d7;
    line-height:1.9;
    font-size:1.05rem;

}

/*==================================
        SEARCH BAR
==================================*/

.blog-search-section{

    padding-bottom:60px;

}

.blog-search-box{

    max-width:650px;
    margin:auto;
    display:flex;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.10);

    backdrop-filter:blur(15px);

    border-radius:60px;

    overflow:hidden;

}

.blog-search-box input{

    flex:1;
    background:transparent;
    border:none;
    color:#fff;
    padding:18px 28px;
    outline:none;

}

.blog-search-box input::placeholder{

    color:#bcbcbc;

}

.blog-search-box button{

    width:70px;

    background:#18B956;

    border:none;

    color:#fff;

    transition:.35s;

}

.blog-search-box button:hover{

    background:#149847;

}

/*==================================
        CATEGORIES
==================================*/

.blog-category-section{

    padding-bottom:70px;

}

.blog-categories{

    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:18px;

}

.blog-category{

    padding:12px 28px;

    background:rgba(255,255,255,.08);

    color:#fff;

    border-radius:40px;

    border:1px solid rgba(255,255,255,.12);

    transition:.35s;

    cursor:pointer;

}

.blog-category:hover{

    background:#18B956;
    border-color:#18B956;

}

.blog-category.active{

    background:#18B956;

}

/*==================================
    FEATURED ARTICLE
==================================*/

.blog-featured{

    padding:40px 0 90px;

}

.blog-featured .row{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border-radius:30px;

    border:1px solid rgba(255,255,255,.10);

    padding:40px;

    overflow:hidden;

}

.blog-featured-image{

    overflow:hidden;

    border-radius:25px;

}

.blog-featured-image img{

    width:100%;

    display:block;

    border-radius:25px;

    transition:.6s;

}

.blog-featured:hover img{

    transform:scale(1.06);

}

.blog-feature-label{

    display:inline-block;

    color:#18B956;

    font-weight:700;

    letter-spacing:3px;

    margin-bottom:20px;

}

.blog-featured h2{

    color:#fff;

    font-size:2.5rem;

    margin-bottom:20px;

    line-height:1.2;

}

.blog-featured p{

    color:#d7d7d7;

    line-height:1.9;

    margin-bottom:30px;

}

.blog-meta{

    display:flex;

    gap:25px;

    flex-wrap:wrap;

    color:#18B956;

    margin-bottom:35px;

}

.blog-meta span{

    display:flex;

    align-items:center;

    gap:8px;

}

/*==================================
        BLOG GRID
==================================*/

.blog-list-section{

    padding:100px 0;

}

.blog-list-card{

    height:100%;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(15px);

    border-radius:28px;

    border:1px solid rgba(255,255,255,.10);

    overflow:hidden;

    transition:.4s;

}

.blog-list-card:hover{

    transform:translateY(-10px);

    border-color:#18B956;

    box-shadow:0 25px 60px rgba(24,185,86,.18);

}

.blog-list-card img{

    width:100%;

    height:240px;

    object-fit:cover;

    transition:.7s;

}

.blog-list-card:hover img{

    transform:scale(1.08);

}

.blog-list-content{

    padding:28px;

}

.blog-list-content span{

    color:#18B956;

    font-weight:600;

    font-size:.9rem;

}

.blog-list-content h3{

    color:#fff;

    font-size:1.45rem;

    margin:18px 0;

    line-height:1.35;

}

.blog-list-content p{

    color:#d7d7d7;

    line-height:1.8;

    margin-bottom:22px;

}

.blog-list-content a{

    color:#18B956;

    text-decoration:none;

    font-weight:600;

}

.blog-list-content a:hover{

    letter-spacing:.6px;

}

/*==================================
        NEWSLETTER
==================================*/

.blog-newsletter{

    padding:20px 0 120px;

}

.blog-newsletter-card{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.10);

    border-radius:35px;

    padding:70px;

    text-align:center;

}

.blog-newsletter-card h2{

    color:#fff;

    font-size:2.8rem;

    margin-bottom:20px;

}

.blog-newsletter-card p{

    max-width:650px;

    margin:auto;

    color:#d7d7d7;

    line-height:1.8;

    margin-bottom:35px;

}

.blog-newsletter-form{

    max-width:650px;

    margin:auto;

    display:flex;

    gap:15px;

}

.blog-newsletter-form input{

    flex:1;

    border:none;

    outline:none;

    padding:18px 25px;

    border-radius:50px;

    background:rgba(255,255,255,.12);

    color:#fff;

}

.blog-newsletter-form input::placeholder{

    color:#cfcfcf;

}

/*==================================
        SCROLL REVEAL
==================================*/

.blog-list-card{

    opacity:0;

    transform:translateY(45px);

    transition:
        opacity .8s ease,
        transform .8s ease,
        box-shadow .35s;

}

.blog-list-card.blog-visible{

    opacity:1;

    transform:translateY(0);

}

/*==================================
        RESPONSIVE
==================================*/

@media(max-width:992px){

.blog-page-header{

    padding:150px 0 60px;

}

.blog-featured .row{

    padding:25px;

}

.blog-featured h2{

    font-size:2rem;

    margin-top:25px;

}

.blog-newsletter-card{

    padding:50px 30px;

}

}

@media(max-width:768px){

.blog-newsletter-form{

    flex-direction:column;

}

.blog-category{

    padding:10px 18px;

    font-size:.9rem;

}

.blog-list-card img{

    height:210px;

}

}