@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    scroll-behavior:smooth;
    font-family:'Poppins',sans-serif;  
}

body{
    background:#0b1120;
    color:#fff;
    overflow-x:hidden;
    transition:.4s;
}

header{
position:fixed;
top:0;
width:100%;
z-index:1000;
padding:18px 8%;
transition:.4s;
}

nav{
display:flex;
justify-content:space-between;
align-items:center;
background:rgba(255,255,255,.08);
backdrop-filter:blur(20px);
padding:15px 35px;
border-radius:60px;
border:1px solid rgba(255,255,255,.15);
}

.logo{
font-size:28px;
font-weight:700;
background:linear-gradient(to right,#00c6ff,#8a2be2);
background-clip:text;
color:transparent;
}

nav ul{
display:flex;
gap:35px;
list-style:none;
}

nav ul li a{
text-decoration:none;
color:white;
font-weight:500;
transition:.3s;
}

nav ul li a:hover{
color:#00c6ff;
}

#mode-btn{
width:45px;
height:45px;
border:none;
border-radius:50%;
background:#00c6ff;
color:white;
cursor:pointer;
font-size:20px;
transition:.3s;
}

#mode-btn:hover{
transform:rotate(180deg);
box-shadow:0 0 20px #00c6ff;
}

.hero{
height:100vh;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
padding:0 10%;
}

.hero-content h1{
font-size:70px;
font-weight:700;
margin-bottom:15px;
}

.hero-content span{
background:linear-gradient(to right,#00c6ff,#8a2be2);
background-clip:text;
color:transparent;
}

.hero-content h3{
height:45px;
font-size:28px;
color:#00c6ff;
margin-bottom:20px;
}

.hero-content p{
font-size:20px;
color:#d1d5db;
max-width:700px;
margin:auto;
line-height:1.8;
}

.profile-img {
    width: 200px;
    height: 200px;
    border-radius: 50%; /* Perfect circle shape */
    object-fit: cover;
    border: 4px solid var(--accent);
    box-shadow: 0 0 25px var(--border-glow);
    margin-bottom: 1.5rem;
    margin-top: 1vh;
}

.btn{
display:inline-block;
margin-top:35px;
padding:15px 40px;
border-radius:50px;
text-decoration:none;
background:linear-gradient(to right,#00c6ff,#8a2be2);
color:white;
font-weight:600;
transition:.4s;
box-shadow:0 0 25px rgba(0,198,255,.4);
}

.btn:hover{
transform:translateY(-8px);
box-shadow:0 0 35px #00c6ff;
}

section{
    padding:100px 8%;
}

.title{
    text-align:center;
    font-size:42px;
    margin-bottom:60px;
    font-weight:700;
    background:linear-gradient(to right,#00c6ff,#8a2be2);
    background-clip:text;
    color:transparent;
}

.about_paragraph{
    font-size: 24px;
    margin-left: 80px;
    margin-right: 80px;
    justify-content: center;
    text-align: center;

}


.cards{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:35px;
}

.card{
    position:relative;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(20px);
    border:1px solid rgba(255,255,255,.15);
    border-radius:25px;
    padding:30px;
    text-align:center;
    overflow:hidden;
    transition:.45s ease;
    box-shadow:0 15px 35px rgba(0,0,0,.25);
}

.card::before{
    content:"";
    position:absolute;
    width:180%;
    height:180%;
    background:linear-gradient(
        135deg,
        transparent,
        rgba(255,255,255,.12),
        transparent
    );
    top:-120%;
    left:-120%;
    transform:rotate(25deg);
    transition:.8s;
}

.card:hover::before{
    top:100%;
    left:100%;
}

.card:hover{
    transform:translateY(-12px);
    box-shadow:0 0 30px rgba(0,198,255,.45);
}

.card img{
    width:140px;
    height:140px;
    object-fit:cover;
    border-radius:50%;
    border:5px solid #00c6ff;
    transition:.4s;
}

.card:hover img{
    transform:scale(1.08);
    box-shadow:0 0 25px #00c6ff;
}

.card h3{
    margin-top:20px;
    font-size:24px;
    font-weight:600;
}

.card p{
    margin:12px 0 25px;
    color:#d1d5db;
}

.card a{
    display:inline-block;
    padding:12px 28px;
    border-radius:30px;
    text-decoration:none;
    color:white;
    background:linear-gradient(90deg,#00c6ff,#8a2be2);
    transition:.3s;
    font-weight:600;
}

.card a:hover{
    transform:scale(1.05);
    box-shadow:0 0 20px #00c6ff;
}

.tech-container{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
    gap:30px;
}

.tech{
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(18px);
    border-radius:20px;
    padding:35px 20px;
    text-align:center;
    transition:.4s;
    border:1px solid rgba(255,255,255,.12);
}

.tech:hover{
    transform:translateY(-10px);
    box-shadow:0 0 25px rgba(0,198,255,.35);
}

.tech i{
    font-size:55px;
    color:#00c6ff;
    margin-bottom:18px;
    display:block;
}

.tech p{
    font-size:18px;
    font-weight:600;
}

.contact-box{
    max-width:700px;
    margin:auto;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(20px);
    border-radius:25px;
    padding:45px;
    border:1px solid rgba(255,255,255,.12);
}

.contact-box p{
    display:flex;
    align-items:center;
    gap:15px;
    font-size:19px;
    margin:18px 0;
}

.contact-box i{
    color:#00c6ff;
    font-size:28px;
}

footer{
    padding:30px;
    text-align:center;
    border-top:1px solid rgba(255,255,255,.12);
    margin-top:70px;
}

footer p{
    color:#cbd5e1;
    letter-spacing: 1px;
}
/*
   RESPONSIVE DESIGN
*/
@media(max-width:992px){
nav{
    padding:15px 20px;
}
nav ul{
    gap:18px;
}

.hero-content h1{
    font-size:54px;
}

.hero-content h3{
    font-size:24px;
}

}

@media(max-width:768px){
nav{
    flex-direction:column;
    gap:15px;
    border-radius:20px;
}

.hero{
    padding:0 6%;
}

.hero-content h1{
    font-size:42px;
}

.hero-content h3{
    font-size:22px;
}

.hero-content p{
    font-size:17px;
}

.title{
    font-size:34px;
}

.card img{
    width:120px;
    height:120px;
}

.contact-box{
    padding:30px;
}

}

@media(max-width:480px){
.hero-content h1{
    font-size:34px;
}

.hero-content h3{
    font-size:18px;
}

.btn{
    padding:12px 28px;
}

.logo{
    font-size:24px;
}

.title{
    font-size:30px;
}

}

body.light-mode{
    background:#f4f7fc;
    color:#1f2937;
}

body.light-mode::before{
    background:
    radial-gradient(circle at top left,#60a5fa55,transparent 35%),
    radial-gradient(circle at bottom right,#a78bfa55,transparent 35%);
}

body.light-mode::after{
    background:linear-gradient(135deg,#ffffff,#edf2ff,#f8fafc);
}

body.light-mode nav{
    background:rgba(255,255,255,.75);
    border:1px solid rgba(0,0,0,.08);
}

body.light-mode nav ul li a{
    color:#111827;
}

body.light-mode .hero p,
body.light-mode .card p,
body.light-mode footer p{
    color:#4b5563;
}

body.light-mode .card,
body.light-mode .tech,
body.light-mode .contact-box{
    background:rgba(255,255,255,.75);
    border:1px solid rgba(0,0,0,.08);
}

body.light-mode .card:hover,
body.light-mode .tech:hover{
    box-shadow:0 15px 35px rgba(59,130,246,.25);
}

body.light-mode footer{
    border-top:1px solid rgba(0,0,0,.08);
}

.hero::before{
content:"";
position:absolute;
width:320px;
height:320px;
background:#00c6ff22;
border-radius:50%;
filter:blur(90px);
top:120px;
left:10%;
animation:blob1 12s infinite alternate;
}

.hero::after{
content:"";
position:absolute;
width:350px;
height:350px;
background:#8a2be222;
border-radius:50%;
filter:blur(100px);
bottom:80px;
right:8%;
animation:blob2 14s infinite alternate;
}

@keyframes blob1{
0%{
transform:translateY(0) translateX(0);
}

100%{
transform:translateY(70px) translateX(40px);
}

}

@keyframes blob2{
0%{
transform:translateY(0);
}

100%{
transform:translateY(-80px);
}
}

.card::after{
content:"";
position:absolute;
inset:0;
border-radius:25px;
border:1px solid transparent;
background:linear-gradient(
45deg,
transparent,
#00c6ff55,
transparent,
#8a2be255,
transparent
);

opacity:0;
transition:.45s;
pointer-events:none;
}

.card:hover::after{
opacity:1;
}

.tech:hover i{
transform:scale(1.2) rotate(10deg);
transition:.4s;
}

.contact-box p{
transition:.3s;
cursor:pointer;
}

.contact-box p:hover{
transform:translateX(10px);
color:#00c6ff;
}

@keyframes floating{
0%{
transform:translateY(0);
}

50%{
transform:translateY(-10px);
}

100%{
transform:translateY(0);
}

}

.card{
animation:floating 5s ease-in-out infinite;
}

.card:nth-child(2){
animation-delay:.5s;
}

.card:nth-child(3){
animation-delay:1s;
}

.card:nth-child(4){
animation-delay:1.5s;
}

.card:nth-child(5){
animation-delay:2s;
}

.card:nth-child(6){
animation-delay:2.5s;
}

nav a.active{
color:#00c6ff;
font-weight:600;
}

::selection{
background:#00c6ff;
color:#fff;
}
