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

HEADER

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

header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:999;

padding:18px 8%;

transition:.4s;

}

header.sticky{

background:rgba(8,17,31,.85);

backdrop-filter:blur(18px);

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

}

.container{

display:flex;

justify-content:space-between;

align-items:center;

}

.logo{

font-size:30px;

font-weight:700;

color:#fff;

}

.logo span{

color:#00bfff;

}

.nav-links{

display:flex;

list-style:none;

gap:35px;

}

.nav-links a{

color:#fff;

font-weight:500;

position:relative;

transition:.3s;

}

.nav-links a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:#00bfff;

transition:.3s;

}

.nav-links a:hover::after,

.nav-links a.active::after{

width:100%;

}

.nav-links a:hover{

color:#00bfff;

}

.header-right{

display:flex;

align-items:center;

gap:18px;

}

.resume-btn{

padding:11px 22px;

background:#00bfff;

border-radius:8px;

color:#fff;

font-weight:600;

transition:.3s;

}

.resume-btn:hover{

transform:translateY(-3px);

box-shadow:0 10px 20px rgba(0,191,255,.4);

}

#theme-toggle{

width:45px;

height:45px;

border:none;

border-radius:50%;

cursor:pointer;

background:rgba(255,255,255,.08);

color:#fff;

font-size:18px;

}

#menu-btn{

display:none;

font-size:28px;

cursor:pointer;

color:#fff;

}

/* Mobile */

@media(max-width:991px){

.navbar{

position:absolute;

top:90px;

right:-100%;

width:270px;

background:#08111f;

border-radius:12px;

transition:.4s;

padding:20px;

}

.navbar.active{

right:20px;

}

.nav-links{

flex-direction:column;

gap:20px;

}

#menu-btn{

display:block;

}

.resume-btn{

display:none;

}

}

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

Google Font

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

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

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

Reset

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

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

body{
    font-family:'Poppins',sans-serif;
    background:#08111f;
    color:#fff;
    overflow-x:hidden;
}

a{
    text-decoration:none;
}

img{
    max-width:100%;
    display:block;
}

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

Hero

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

#hero{

    width:100%;
    min-height:100vh;

    background:linear-gradient(135deg,#07162f,#0b2447,#123d73);

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

    padding:80px 10%;

    position:relative;

    overflow:hidden;

}

/* Background Glow */

#hero::before{

    content:"";

    position:absolute;

    width:450px;
    height:450px;

    background:#00bfff;

    filter:blur(180px);

    opacity:.25;

    top:-120px;
    left:-120px;

}

#hero::after{

    content:"";

    position:absolute;

    width:400px;
    height:400px;

    background:#0066ff;

    filter:blur(180px);

    opacity:.25;

    bottom:-100px;
    right:-100px;

}

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

Container

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

.hero-container{

    width:100%;
    max-width:1300px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:70px;

    position:relative;

    z-index:2;

}

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

Left

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

.hero-left{

    flex:1;

}

.hero-badge{

    display:inline-block;

    padding:10px 22px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.15);

    border-radius:50px;

    margin-bottom:25px;

    color:#6dc7ff;

    font-size:.9rem;

}

.hero-left h1{

    font-size:4rem;

    line-height:1.2;

    font-weight:800;

}

.hero-left h1 span{

    color:#39b6ff;

}

.hero-left h2{

    margin-top:18px;

    font-size:2rem;

    color:#d9e8ff;

    min-height:55px;

}

.hero-left p{

    margin-top:25px;

    font-size:1.08rem;

    line-height:1.9;

    color:#cfd8e6;

    max-width:650px;

}

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

Buttons

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

.hero-buttons{

    display:flex;

    gap:20px;

    margin-top:40px;

}

.btn{

    padding:15px 32px;

    border-radius:10px;

    font-weight:600;

    transition:.35s;

}

.btn-primary{

    background:#00aaff;

    color:#fff;

}

.btn-primary:hover{

    transform:translateY(-5px);

    box-shadow:0 10px 25px rgba(0,170,255,.45);

}

.btn-secondary{

    border:2px solid #00aaff;

    color:#00aaff;

}

.btn-secondary:hover{

    background:#00aaff;

    color:#fff;

}

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

Social Icons

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

.hero-social{

    display:flex;

    gap:18px;

    margin-top:40px;

}

.hero-social a{

    width:55px;

    height:55px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:rgba(255,255,255,.08);

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

    color:#fff;

    font-size:22px;

    transition:.35s;

}

.hero-social a:hover{

    background:#00aaff;

    transform:translateY(-6px);

}

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

Profile Card

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

.hero-right{

    flex:1;

    display:flex;

    justify-content:center;

}

.profile-card{

    width:380px;

    height:380px;

    border-radius:50%;

    padding:12px;

    background:linear-gradient(135deg,#00bfff,#0066ff);

    box-shadow:0 0 50px rgba(0,170,255,.5);

    animation:float 4s ease-in-out infinite;

}

.profile-card img{

    width:100%;

    height:100%;

    object-fit:cover;

    border-radius:50%;

    border:6px solid #08111f;

}

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

Scroll Down

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

.scroll-down{

    position:absolute;

    bottom:30px;

    left:50%;

    transform:translateX(-50%);

    color:#fff;

    font-size:28px;

    animation:bounce 2s infinite;

}

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

Animations

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

@keyframes float{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-18px);

    }

}

@keyframes bounce{

    0%,100%{

        transform:translate(-50%,0);

    }

    50%{

        transform:translate(-50%,10px);

    }

}

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

Responsive

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

@media(max-width:991px){

.hero-container{

flex-direction:column-reverse;

text-align:center;

}

.hero-left h1{

font-size:3rem;

}

.hero-left h2{

font-size:1.6rem;

}

.hero-buttons{

justify-content:center;

}

.hero-social{

justify-content:center;

}

.profile-card{

width:300px;

height:300px;

}

}

@media(max-width:600px){

.hero-left h1{

font-size:2.4rem;

}

.hero-left h2{

font-size:1.3rem;

}

.hero-buttons{

flex-direction:column;

}

.btn{

width:100%;

text-align:center;

}

.profile-card{

width:240px;

height:240px;

}

}

/* Reveal Animation */

.hidden{

opacity:0;

transform:translateY(60px);

transition:all .8s ease;

}

.show{

opacity:1;

transform:translateY(0);

}

/* Typing Cursor */

.typing{

color:#00bfff;

font-weight:700;

}

.typing::after{

content:"|";

animation:blink .7s infinite;

}

@keyframes blink{

50%{

opacity:0;

}

}

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

ABOUT SECTION

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

#about{

padding:120px 8%;

background:#0b1629;

}

.section-title{

text-align:center;

margin-bottom:70px;

}

.section-title span{

color:#00bfff;

font-weight:600;

letter-spacing:2px;

}

.section-title h2{

font-size:42px;

margin-top:10px;

}

.about-container{

display:grid;

grid-template-columns:1fr 1.2fr;

gap:70px;

align-items:center;

}

.about-left{

position:relative;

}

.about-image{

border-radius:20px;

overflow:hidden;

box-shadow:0 20px 50px rgba(0,0,0,.4);

}

.about-image img{

width:100%;

display:block;

}

.experience-box{

position:absolute;

bottom:-30px;

right:-30px;

background:#00bfff;

padding:25px;

border-radius:15px;

text-align:center;

color:#fff;

box-shadow:0 15px 35px rgba(0,191,255,.35);

}

.experience-box h2{

font-size:42px;

margin-bottom:5px;

}

.about-right h3{

font-size:34px;

margin-bottom:25px;

}

.about-right p{

color:#cfd8e6;

line-height:1.9;

margin-bottom:22px;

}

.about-info{

display:grid;

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

gap:20px;

margin:35px 0;

}

.about-info div{

background:rgba(255,255,255,.05);

padding:18px;

border-radius:12px;

border:1px solid rgba(255,255,255,.08);

}

.about-info strong{

display:block;

color:#00bfff;

margin-bottom:8px;

}

.about-buttons{

display:flex;

gap:20px;

margin-top:25px;

}

@media(max-width:991px){

.about-container{

grid-template-columns:1fr;

}

.about-info{

grid-template-columns:1fr;

}

.about-buttons{

flex-direction:column;

}

.experience-box{

position:relative;

right:0;

bottom:0;

margin-top:20px;

}

}



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

Experience

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

#experience{

padding:120px 8%;

background:#08111f;

}

#experience p{

color:#b8c8df;

margin-top:10px;

}

.timeline{

position:relative;

max-width:1000px;

margin:70px auto 0;

}

.timeline::before{

content:"";

position:absolute;

left:25px;

top:0;

width:4px;

height:100%;

background:#00bfff;

border-radius:10px;

}

.timeline-item{

position:relative;

padding-left:80px;

margin-bottom:60px;

}

.timeline-dot{

position:absolute;

left:12px;

top:18px;

width:28px;

height:28px;

border-radius:50%;

background:#00bfff;

box-shadow:0 0 20px #00bfff;

}

.telecom-dot{

background:#8b5cf6;

box-shadow:0 0 20px #8b5cf6;

}

.timeline-content{

background:rgba(255,255,255,.05);

padding:30px;

border-radius:18px;

border:1px solid rgba(255,255,255,.08);

backdrop-filter:blur(12px);

transition:.4s;

}

.timeline-content:hover{

transform:translateY(-8px);

border-color:#00bfff;

box-shadow:0 20px 40px rgba(0,191,255,.15);

}

.timeline-date{

display:inline-block;

padding:8px 15px;

background:#00bfff;

color:#fff;

border-radius:30px;

font-size:14px;

margin-bottom:15px;

}

.timeline-content h3{

font-size:26px;

margin-bottom:5px;

}

.timeline-content h4{

color:#00bfff;

margin-bottom:18px;

font-weight:500;

}

.timeline-content ul{

padding-left:20px;

}

.timeline-content li{

margin:12px 0;

color:#d9e5f7;

line-height:1.7;

}

.telecom .timeline-date{

background:#8b5cf6;

}

@media(max-width:768px){

.timeline::before{

left:15px;

}

.timeline-item{

padding-left:55px;

}

.timeline-dot{

left:2px;

}

.timeline-content{

padding:20px;

}

}


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

Skills

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

#skills{

padding:120px 8%;

background:#0b1629;

}

.skills-grid{

display:grid;

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

gap:30px;

margin-top:70px;

}

.skill-card{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:20px;

padding:35px;

text-align:center;

transition:.4s;

backdrop-filter:blur(12px);

}

.skill-card:hover{

transform:translateY(-10px);

border-color:#00bfff;

box-shadow:0 20px 40px rgba(0,191,255,.2);

}

.skill-card i{

font-size:55px;

color:#00bfff;

margin-bottom:20px;

}

.skill-card img{

width:55px;

height:55px;

margin:auto;

margin-bottom:20px;

}

.skill-card h3{

margin-bottom:15px;

font-size:24px;

}

.skill-card p{

color:#cfd8e6;

line-height:1.8;

font-size:15px;

}


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

Projects

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

#projects{

padding:120px 8%;

background:#08111f;

}

.projects-grid{

display:grid;

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

gap:35px;

margin-top:70px;

}

.project-card{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

padding:35px;

border-radius:20px;

transition:.4s;

backdrop-filter:blur(12px);

}

.project-card:hover{

transform:translateY(-12px);

border-color:#00bfff;

box-shadow:0 25px 50px rgba(0,191,255,.18);

}

.project-icon{

width:70px;

height:70px;

border-radius:18px;

display:flex;

justify-content:center;

align-items:center;

background:#00bfff;

font-size:30px;

margin-bottom:25px;

}

.project-card h3{

font-size:24px;

margin-bottom:18px;

}

.project-card p{

color:#cfd8e6;

line-height:1.8;

margin-bottom:25px;

}

.tech-stack{

display:flex;

flex-wrap:wrap;

gap:10px;

}

.tech-stack span{

background:rgba(0,191,255,.12);

color:#00bfff;

padding:8px 14px;

border-radius:50px;

font-size:14px;

border:1px solid rgba(0,191,255,.25);

}




/*==========================
Achievements
==========================*/

#achievements{

padding:120px 8%;

background:#0b1629;

}

.counter-grid{

display:grid;

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

gap:25px;

margin-top:60px;

}

.counter-card{

padding:35px;

background:rgba(255,255,255,.05);

border-radius:18px;

text-align:center;

border:1px solid rgba(255,255,255,.08);

}

.counter-card h2{

font-size:50px;

color:#00bfff;

margin-bottom:10px;

}

.counter-card p{

color:#d8e4f5;

}

.achievement-grid{

display:grid;

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

gap:30px;

margin-top:70px;

}

.achievement-card{

padding:35px;

background:rgba(255,255,255,.05);

border-radius:20px;

border:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.achievement-card:hover{

transform:translateY(-10px);

border-color:#00bfff;

}

.achievement-card i{

font-size:50px;

color:#00bfff;

margin-bottom:20px;

}

.achievement-card h3{

margin-bottom:15px;

}

/*==========================
Certificates
==========================*/

#certifications{

padding:120px 8%;

background:#08111f;

}

.certificate-grid{

display:grid;

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

gap:30px;

margin-top:60px;

}

.certificate-card{

padding:35px;

text-align:center;

background:rgba(255,255,255,.05);

border-radius:20px;

border:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.certificate-card:hover{

transform:translateY(-8px);

border-color:#00bfff;

}

.certificate-card i{

font-size:55px;

color:#00bfff;

margin-bottom:20px;

}




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

Contact

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

#contact{

padding:120px 8%;

background:#0b1629;

}

.contact-container{

display:grid;

grid-template-columns:1fr 1.3fr;

gap:50px;

margin-top:70px;

}

.contact-card{

display:flex;

gap:20px;

align-items:center;

margin-bottom:25px;

padding:25px;

background:rgba(255,255,255,.05);

border-radius:15px;

border:1px solid rgba(255,255,255,.08);

}

.contact-card i{

font-size:28px;

color:#00bfff;

}

.contact-social{

display:flex;

gap:18px;

margin-top:35px;

}

.contact-social a{

width:55px;

height:55px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

background:#00bfff;

color:#fff;

font-size:22px;

transition:.4s;

}

.contact-social a:hover{

transform:translateY(-8px);

}

.contact-form form{

display:flex;

flex-direction:column;

gap:20px;

}

.contact-form input,

.contact-form textarea{

padding:18px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:10px;

color:#fff;

outline:none;

}

.contact-form textarea{

resize:none;

}

footer{

padding:40px 8%;

text-align:center;

background:#08111f;

}

.footer-content h2{

margin-bottom:10px;

}

.footer-social{

display:flex;

justify-content:center;

gap:20px;

margin:30px 0;

}

.footer-social a{

color:#00bfff;

font-size:24px;

}

#topBtn{

position:fixed;

bottom:30px;

right:30px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:#00bfff;

color:#fff;

cursor:pointer;

display:none;

font-size:20px;

box-shadow:0 10px 25px rgba(0,191,255,.35);

}

@media(max-width:991px){

.contact-container{

grid-template-columns:1fr;

}

}




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

Large Tablets

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

@media (max-width:1200px){

.hero-container,
.about-container,
.contact-container{

gap:40px;

}

.hero-left h1{

font-size:3.5rem;

}

.section-title h2{

font-size:38px;

}

}

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

Tablet

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

@media (max-width:992px){

section{

padding:90px 6%;

}

.hero-container,
.about-container,
.contact-container{

grid-template-columns:1fr;

display:flex;

flex-direction:column;

text-align:center;

}

.hero-left{

order:2;

}

.hero-right{

order:1;

}

.hero-buttons,
.hero-social,
.about-buttons{

justify-content:center;

}

.about-info{

grid-template-columns:1fr;

}

.profile-card{

width:300px;

height:300px;

margin:auto;

}

.experience-box{

position:relative;

right:0;

bottom:0;

margin:20px auto 0;

}

.projects-grid,
.skills-grid,
.achievement-grid,
.certificate-grid,
.counter-grid{

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

}

}

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

Mobile

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

@media (max-width:768px){

section{

padding:80px 20px;

}

.section-title h2{

font-size:30px;

}

.hero-left h1{

font-size:2.4rem;

}

.hero-left h2{

font-size:1.4rem;

}

.hero-left p{

font-size:15px;

}

.hero-buttons{

flex-direction:column;

gap:15px;

}

.hero-buttons .btn{

width:100%;

}

.hero-social{

justify-content:center;

}

.profile-card{

width:230px;

height:230px;

}

.projects-grid,
.skills-grid,
.achievement-grid,
.certificate-grid,
.counter-grid{

grid-template-columns:1fr;

}

.timeline::before{

left:10px;

}

.timeline-item{

padding-left:40px;

}

.timeline-dot{

left:-1px;

width:22px;

height:22px;

}

.timeline-content{

padding:20px;

}

.about-image img{

height:350px;

object-fit:cover;

}

.contact-card{

flex-direction:column;

text-align:center;

}

.contact-social{

justify-content:center;

}

}

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

Small Mobile

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

@media (max-width:480px){

.hero-left h1{

font-size:2rem;

}

.hero-left h2{

font-size:1.2rem;

}

.section-title h2{

font-size:26px;

}

.logo{

font-size:24px;

}

.profile-card{

width:180px;

height:180px;

}

.btn{

padding:14px 18px;

font-size:15px;

}

.contact-form input,
.contact-form textarea{

font-size:15px;

padding:14px;

}

.counter-card h2{

font-size:38px;

}

.project-card,
.skill-card,
.achievement-card,
.certificate-card{

padding:25px;

}

}


@media(max-width:992px){

.navbar{

position:fixed;

top:80px;

right:-100%;

width:260px;

height:auto;

background:#08111f;

padding:25px;

border-radius:15px;

box-shadow:0 20px 40px rgba(0,0,0,.4);

transition:.4s;

}

.navbar.active{

right:20px;

}

.nav-links{

display:flex;

flex-direction:column;

gap:20px;

}

#menu-btn{

display:block;

}

}

img{

max-width:100%;

height:auto;

display:block;

}

.container{

width:100%;

max-width:1280px;

margin:auto;

padding:0 20px;

}



/*==========================
Light Theme
==========================*/

body.light-theme{

background:#f4f7fb;

color:#222;

}

body.light-theme section{

background:#f4f7fb !important;

}

body.light-theme header.sticky{

background:rgba(255,255,255,.9);

}

body.light-theme .logo,
body.light-theme .nav-links a,
body.light-theme h1,
body.light-theme h2,
body.light-theme h3{

color:#222;

}

body.light-theme p{

color:#555;

}

body.light-theme .skill-card,
body.light-theme .project-card,
body.light-theme .achievement-card,
body.light-theme .certificate-card,
body.light-theme .timeline-content,
body.light-theme .contact-card{

background:#ffffff;

border:1px solid #ddd;

color:#222;

}