/* ==========================================================
   GOOGLE FONT
========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

/* ==========================================================
   ROOT VARIABLES
========================================================== */

:root{

    --bg-color:#0B1120;
    --section-color:#111827;
    --card-color:#1E293B;

    --primary:#3B82F6;
    --primary-hover:#2563EB;

    --accent:#06B6D4;

    --white:#F8FAFC;
    --text:#CBD5E1;
    --muted:#94A3B8;

    --border:#334155;

    --shadow:
    0 10px 30px rgba(0,0,0,.30);

    --radius:14px;

    --transition:.35s ease;

    --container:1200px;

}

/* ==========================================================
   RESET
========================================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Inter',sans-serif;

    background:var(--bg-color);

    color:var(--white);

    line-height:1.6;

}

a{

    text-decoration:none;

    color:inherit;

}

ul{

    list-style:none;

}

img{

    max-width:100%;

    display:block;

}

/* ==========================================================
   CONTAINER
========================================================== */

.container{

    width:90%;

    max-width:var(--container);

    margin:auto;

}

/* ==========================================================
   NAVBAR
========================================================== */

.navbar{

    position:fixed;

    top:0;

    width:100%;

    height:72px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:0 8%;

    backdrop-filter:blur(16px);

    background:rgba(11,17,32,.75);

    border-bottom:1px solid rgba(255,255,255,.05);

    z-index:1000;

}

.logo{
    width:52px;
    height:52px;
    border-radius:50%;
    background:linear-gradient(135deg,#3B82F6,#06B6D4);
    display:flex;
    align-items:center;
    justify-content:center;

    color:#fff;
    font-size:22px;
    font-weight:800;
    letter-spacing:1px;

    box-shadow:
        0 0 0 3px rgba(59,130,246,.15),
        0 10px 25px rgba(59,130,246,.35);

    transition:.3s ease;
}

.logo:hover{
    transform:scale(1.08);
    box-shadow:
        0 0 0 4px rgba(6,182,212,.25),
        0 15px 35px rgba(59,130,246,.45);
}


.nav-links{

    display:flex;

    gap:35px;

}

.nav-links a{

    color:var(--text);

    transition:var(--transition);

}

.nav-links a:hover{

    color:var(--primary);

}

.resume-btn{

    background:var(--primary);

    color:white;

    padding:12px 22px;

    border-radius:10px;

    transition:var(--transition);

}

.resume-btn:hover{

    background:var(--primary-hover);

}

/* ==========================================================
   HERO
========================================================== */
.hero{
    position:relative;
    overflow:hidden;

    min-height:100vh;

    display:flex;
    justify-content:center;
    align-items:center;

    text-align:center;
    padding:120px 20px;
}

.hero-content{
    max-width:950px;
    width:100%;
}

.intro{
    color:var(--primary);
    font-size:1.1rem;
    margin-bottom:10px;
}

.hero h1{
    font-size:clamp(3rem,7vw,5rem);
    font-weight:800;
    margin-bottom:15px;
    line-height:1.1;
}

.hero h2{
    color:var(--text);
    font-size:2rem;
    font-weight:600;
    margin-bottom:25px;
}

.hero-description{
    color:var(--muted);
    font-size:1.1rem;
    line-height:1.8;
    max-width:700px;
    margin:0 auto;
}



/*==========================================================

HERO BACKGROUND

==========================================================*/

.hero{

    position:relative;

    overflow:hidden;

}

.hero-bg{

    position:absolute;

    inset:0;

    z-index:-1;

}

.blur{

    position:absolute;

    border-radius:50%;

    filter:blur(140px);

    opacity:.35;

}

.blur-one{

    width:420px;

    height:420px;

    background:#2563EB;

    top:-80px;

    left:-120px;

}

.blur-two{

    width:380px;

    height:380px;

    background:#06B6D4;

    right:-100px;

    bottom:-60px;

}

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

.hero-buttons{

    margin-top:40px;

    display:flex;

    justify-content:center;

    gap:24px;

}

.primary-btn{

    background:var(--primary);

    color:white;

    padding:15px 32px;

    border-radius:12px;

    transition:var(--transition);

}

.primary-btn:hover{

    background:var(--primary-hover);

    transform:translateY(-3px);

}

.secondary-btn{

    border:1px solid var(--border);

    padding:15px 32px;

    border-radius:12px;

    transition:var(--transition);

}

.secondary-btn:hover{

    border-color:var(--primary);

    color:var(--primary);

}

/* ==========================================================
   SOCIAL ICONS
========================================================== */

.social-links{

    display:flex;

    justify-content:center;

    gap:28px;

    margin-top:45px;

}

.social-links i{

    font-size:1.8rem;

    color:var(--text);

    transition:var(--transition);

}

.social-links i:hover{

    color:var(--primary);

    transform:translateY(-5px);

}



/*==========================================================
                    ABOUT SECTION
==========================================================*/

.about{

    padding:140px 0;

    background:var(--section-color);

}

.section-title{

    text-align:center;

    margin-bottom:70px;

}

.section-title span{

    color:var(--primary);

    font-size:.9rem;

    font-weight:600;

    letter-spacing:2px;

}

.section-title h2{

    margin-top:12px;

    font-size:2.6rem;

}

.about-wrapper{

    display:grid;

    grid-template-columns:350px 1fr;

    gap:60px;

    align-items:center;

}

.about-card{

    background:var(--card-color);

    border:1px solid var(--border);

    border-radius:20px;

    padding:40px 30px;

    text-align:center;

    box-shadow:var(--shadow);

}

.profile-circle{

    width:120px;

    height:120px;

    margin:auto;

    border-radius:50%;

    background:linear-gradient(135deg,var(--primary),var(--accent));

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:2.6rem;

    font-weight:800;

    color:#fff;

    margin-bottom:25px;

}

.about-card h3{

    font-size:1.6rem;

    margin-bottom:10px;

}

.role{

    color:var(--muted);

    margin-bottom:20px;

}

.location{

    color:var(--text);

    margin-bottom:20px;

}

.location i{

    color:var(--primary);

    margin-right:8px;

}

.status{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 18px;

    border-radius:50px;

    background:rgba(34,197,94,.12);

    color:#22C55E;

    font-weight:600;

}

.status-dot{

    width:10px;

    height:10px;

    border-radius:50%;

    background:#22C55E;

}

.about-content h3{

    font-size:2rem;

    margin-bottom:25px;

}

.about-content p{

    color:var(--text);

    line-height:1.9;

    margin-bottom:40px;

}

.highlights{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:20px;

    margin-bottom:45px;

}

.highlight-card{

    background:var(--card-color);

    border:1px solid var(--border);

    border-radius:16px;

    padding:28px;

    text-align:center;

    transition:.3s;

}

.highlight-card:hover{

    transform:translateY(-8px);

    border-color:var(--primary);

}

.highlight-card i{

    font-size:2rem;

    color:var(--primary);

    margin-bottom:15px;

}

.stats{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:20px;

}

.stat{

    text-align:center;

}

.stat h3{

    font-size:2rem;

    color:var(--primary);

    margin-bottom:8px;

}

.stat p{

    margin:0;

    color:var(--muted);

    font-size:.95rem;

}




/*==========================================================
                    SKILLS
==========================================================*/

.skills{

    padding:140px 0;

    background:var(--bg-color);

}

.skills-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

}

.skill-card{

    background:var(--card-color);

    border:1px solid var(--border);

    border-radius:20px;

    padding:35px;

    transition:.35s;

}

.skill-card:hover{

    transform:translateY(-8px);

    border-color:var(--primary);

    box-shadow:var(--shadow);

}

.skill-icon{

    width:65px;

    height:65px;

    border-radius:16px;

    background:rgba(59,130,246,.12);

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:25px;

}

.skill-icon i{

    color:var(--primary);

    font-size:1.8rem;

}

.skill-card h3{

    margin-bottom:20px;

    font-size:1.4rem;

}

.skill-card ul{

    display:flex;

    flex-direction:column;

    gap:14px;

}

.skill-card li{

    color:var(--text);

    position:relative;

    padding-left:22px;

}

.skill-card li::before{

    content:"";

    width:8px;

    height:8px;

    border-radius:50%;

    background:var(--primary);

    position:absolute;

    left:0;

    top:9px;

}



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

.projects{

    padding:140px 0;

    background:var(--section-color);

}

.project-card{

    background:var(--card-color);

    border:1px solid var(--border);

    border-radius:24px;

    padding:45px;

    box-shadow:var(--shadow);

}

.project-header{

    display:flex;

    justify-content:space-between;

    gap:40px;

    align-items:flex-start;

    margin-bottom:40px;

}

.project-header h3{

    font-size:2rem;

    margin-bottom:15px;

}

.project-header p{

    line-height:1.8;

    color:var(--text);

}

.project-buttons{

    display:flex;

    gap:15px;

    flex-wrap:wrap;

}

.project-btn{

    padding:14px 26px;

    border-radius:12px;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.project-btn.primary{

    background:var(--primary);

    color:#fff;

}

.project-btn.secondary{

    border:1px solid var(--border);

    color:var(--text);

}

.project-btn:hover{

    transform:translateY(-3px);

}

.project-features{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

    margin:45px 0;

}

.feature{

    background:rgba(59,130,246,.08);

    border:1px solid rgba(59,130,246,.15);

    border-radius:12px;

    padding:18px;

    font-weight:500;

}

.tech-stack{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    margin-bottom:40px;

}

.tech-stack span{

    padding:10px 18px;

    background:var(--bg-color);

    border-radius:999px;

    border:1px solid var(--border);

    font-size:.9rem;

}

.tech-stack span{
    transition:var(--transition);
}

.tech-stack span:hover{
    background:var(--primary);
    color:#fff;
    transform:translateY(-3px);
}

.deployment-box{

    border-left:4px solid var(--primary);

    padding-left:25px;

}

.deployment-box h4{

    margin-bottom:15px;

}

.deployment-box p{

    line-height:1.8;

    margin-bottom:15px;

}


/*==========================================================
        CURRENT FLAGSHIP PROJECT
==========================================================*/

.progress-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin:45px 0;

}

.progress-column{

    background:var(--bg-color);

    border:1px solid var(--border);

    border-radius:16px;

    padding:28px;

}

.progress-column h4{

    margin-bottom:18px;

}

.progress-column ul{

    display:flex;

    flex-direction:column;

    gap:12px;

}

.progress-column li{

    line-height:1.6;

}


/*==========================================================
                    JOURNEY
==========================================================*/

.journey{

    padding:140px 0;

    background:var(--section-color);

}

.timeline{

    position:relative;

    max-width:850px;

    margin:auto;

}

.timeline::before{

    content:"";

    position:absolute;

    left:18px;

    top:0;

    width:3px;

    height:100%;

    background:var(--primary);

}

.timeline-item{

    position:relative;

    padding-left:70px;

    margin-bottom:60px;

}

.timeline-dot{

    position:absolute;

    left:8px;

    top:8px;

    width:22px;

    height:22px;

    border-radius:50%;

    background:var(--primary);

    border:4px solid var(--section-color);

}

.timeline-content{

    background:var(--card-color);

    border:1px solid var(--border);

    border-radius:16px;

    padding:30px;

}

.timeline-content h3{

    margin-bottom:12px;

}

.timeline-content p{

    line-height:1.8;

}


/*==========================================================
                    CONTACT
==========================================================*/

.contact{

    padding:140px 0;

    background:var(--bg-color);

}

.contact-intro{

    max-width:700px;

    margin:20px auto 0;

    text-align:center;

    line-height:1.8;

}

.contact-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

    gap:30px;

    max-width:800px;

    margin:60px auto 0;

}

.contact-card{

    background:var(--card-color);

    border:1px solid var(--border);

    border-radius:20px;

    padding:35px;

    text-align:center;

    text-decoration:none;

    color:inherit;

    transition:.3s;

}

.contact-card:hover{

    transform:translateY(-8px);

    border-color:var(--primary);

}

.contact-card i{

    font-size:2.2rem;

    color:var(--primary);

    margin-bottom:18px;

}

.contact-card h3{

    margin-bottom:12px;

}

.contact-card p{

    color:var(--text);

    word-break:break-word;

}

.resume-center{

    text-align:center;

    margin-top:60px;

}


/*==========================================================
                    FOOTER
==========================================================*/

.footer{

    padding:80px 0 40px;

    background:#050B16;

    border-top:1px solid var(--border);

}

.footer-content{

    max-width:700px;

    margin:auto;

    text-align:center;

}

.footer-logo{

    width:70px;

    height:70px;

    margin:auto;

    border-radius:18px;

    background:linear-gradient(135deg,var(--primary),var(--accent));

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:1.8rem;

    font-weight:700;

    color:#fff;

    margin-bottom:25px;

}

.footer-content h3{

    margin-bottom:15px;

}

.footer-content p{

    line-height:1.8;

    color:var(--text);

}

.footer-social{

    display:flex;

    justify-content:center;

    gap:25px;

    margin:40px 0;

}

.footer-social a{

    width:52px;

    height:52px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:var(--card-color);

    color:var(--text);

    transition:.3s;

}

.footer-social a:hover{

    background:var(--primary);

    color:#fff;

    transform:translateY(-5px);

}

.footer-bottom{

    margin-top:30px;

    border-top:1px solid var(--border);

    padding-top:25px;

}



/*==========================
    PREMIUM NAVBAR
==========================*/

header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:1000;
    transition:all .35s ease;
}

header.scrolled{
    background:rgba(8,15,30,.75);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid rgba(255,255,255,.08);
    box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.nav-links a{
    position:relative;
    transition:.3s;
}

.nav-links a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-6px;

    width:0;

    height:2px;

    background:var(--primary);

    transition:.3s;

}

.nav-links a:hover::after,
.nav-links a.active::after{

    width:100%;

}

.nav-links a.active{

    color:var(--primary);

}


/* ===========================
   CUSTOM SCROLLBAR
=========================== */

::-webkit-scrollbar{
    width:10px;
}

::-webkit-scrollbar-track{
    background:#0B1120;
}

::-webkit-scrollbar-thumb{
    background:var(--primary);
    border-radius:20px;
}

::-webkit-scrollbar-thumb:hover{
    background:var(--primary-hover);
}