/* =========================================
                HERO
========================================= */

.hero{
    min-height:90vh;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:60px;
    padding:80px 8%;
}

.hero-text{
    flex:1;
}

.hero-tag{
    display:inline-block;
    padding:10px 20px;
    border-radius:50px;
    background:rgba(6,182,212,.12);
    color:var(--primary);
    margin-bottom:20px;
    font-weight:500;
}

.hero h1{
    font-size:clamp(2.5rem,5vw,4.5rem);
    line-height:1.2;
    color:var(--text-main);
    margin-bottom:20px;
}

.hero h1 span{
    color:var(--primary);
}

.hero h2{
    color:var(--accent);
    min-height:40px;
    margin-bottom:20px;
}

.hero p{
    color:var(--text-secondary);
    line-height:1.8;
    margin-bottom:30px;
    max-width:650px;
}

.hero-buttons{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

.hero-image{
    flex:1;
    display:flex;
    justify-content:center;
}

.hero-image img{
    width:100%;
    max-width:420px;
    border-radius:50%;
    border:3px solid var(--primary);
    box-shadow:0 0 25px rgba(6,182,212,.25);
    animation:float 4s ease-in-out infinite;
}

/* =========================================
                FEATURES
========================================= */

.features{
    padding:100px 8%;
    text-align:center;
}

.features h2{
    color:var(--text-main);
    margin-bottom:50px;
}

.feature-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:25px;
}

.feature-card{
    background:var(--bg-card);
    border:1px solid var(--border);
    border-radius:20px;
    padding:30px;
    transition:var(--transition);
    box-shadow:var(--shadow-sm);
}

.feature-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--shadow-md);
}

.feature-card h3{
    color:var(--text-main);
    margin-bottom:15px;
}

.feature-card p{
    color:var(--text-secondary);
    line-height:1.7;
}

/* =========================================
            FEATURED PROJECTS
========================================= */

#projects{
    padding:100px 8%;
    text-align:center;
}

#projects h2{
    color:var(--text-main);
    margin-bottom:50px;
}

.projects-container{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:25px;
}

.project-card{
    background:var(--bg-card);
    border:1px solid var(--border);
    border-radius:20px;
    padding:30px;
    transition:var(--transition);
    box-shadow:var(--shadow-sm);
}

.project-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--shadow-md);
}

.project-card h3{
    color:var(--text-main);
    margin-bottom:12px;
}

.project-card p{
    color:var(--text-secondary);
    margin-bottom:20px;
}

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

.cta{
    text-align:center;
    padding:100px 8%;
}

.cta h2{
    color:var(--text-main);
    margin-bottom:20px;
}

.cta p{
    color:var(--text-secondary);
    margin-bottom:30px;
}

/* =========================================
                BUTTONS
========================================= */

.btn{
    display:inline-block;
    padding:12px 24px;
    border-radius:12px;
    background:var(--primary);
    color:var(--text-white);
    transition:var(--transition);
}

.btn:hover{
    background:var(--primary-dark);
    transform:translateY(-2px);
}

.btn.outline{
    background:transparent;
    color:var(--primary);
    border:1px solid var(--primary);
}

.btn.outline:hover{
    background:var(--primary);
    color:var(--text-white);
}

/* =========================================
                ANIMATION
========================================= */

@keyframes float{
    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-15px);
    }

    100%{
        transform:translateY(0);
    }
}

/* =========================================
                RESPONSIVE
========================================= */

@media(max-width:992px){

    .hero{
        flex-direction:column;
        text-align:center;
    }

    .hero-buttons{
        justify-content:center;
    }

    .hero p{
        margin-inline:auto;
    }

}

@media(max-width:576px){

    .hero{
        padding:60px 6%;
    }

    .features,
    #projects,
    .cta{
        padding:80px 6%;
    }

    .hero-buttons{
        flex-direction:column;
    }

}